0.0
No commit activity in last 3 years
No release in over 3 years
Store devise user session and page visiting history with duration and date/time in rails
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

>= 3
 Project Readme

DeviseActivity¶ ↑

Keep history of user page views and time spent on different pages in rails. This gem depends on devise gem and uses devise ‘current_user’ helper method which can be configured.

Installation¶ ↑

Simply add trackstamps gem to your Gemfile.

gem 'devise-activity'

Install bundler gems

bundle install

Install trackstamps

rails generate devise_activity:install

You can change sessions and navigations table names from generated configuration file (config/initializers/devise_activity.rb) before generating migration. Generate migration on required model’s table

rails generate devise_activity:migration

Include DeviseActivity module to application controller or admin etc for which you want to track user activities

class ApplicationController
    include DeviseActivity

    .....

end

Execute migrations

rake db:migrate

And now you are ready to track changes

Usage¶ ↑

It will automatically keep of sign in’s, sign out’s and page views history in sessions and navigations table i.e.

DeviseActivity::Session.all

will return last account was created by which user. Similarily

DeviseActivity::Session.last.navigations

DeviseActivity::Session.where(user_id: 12).all

DeviseActivity::Session.where(user_id: 12).last.navigations

DeviseActivity::Navigation.count

DeviseActivity::Navigation.last.action

DeviseActivity::Navigation.last.controller

DeviseActivity also provide few handy model methods for Statistics

DeviseActivity::Stats.most_visits_by

DeviseActivity::Stats.least_visits_by

DeviseActivity::Stats.most_popular_controller

DeviseActivity::Stats.least_popular_controller

DeviseActivity::Stats.most_popular_action

DeviseActivity::Stats.least_popular_action

DeviseActivity::Stats.most_visited_page

DeviseActivity::Stats.least_visited_page

DeviseActivity::Stats.most_sign_ins_by

DeviseActivity::Stats.total_sign_ins(user)

TODO¶ ↑

  • Mongoid ORM support

Contributing¶ ↑

  1. Fork it

  2. Create your feature branch (‘git checkout -b my-new-feature`)

  3. Commit your changes (‘git commit -am ’Added some feature’‘)

  4. Push to the branch (‘git push origin my-new-feature`)

  5. Create new Pull Request