devise-activity 0.0.1 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d4a9b4160c71803649c1842b2589a42c46b438c3137c16b83f227506c954422
4
- data.tar.gz: 19198b9d96d2b95a829f166d0e060b5c7a588cb5b43fe421862c3ed5b20f5206
3
+ metadata.gz: 11b74f54908a949e1fd7f77824b911847162465692517b1593127440f0e802ca
4
+ data.tar.gz: 89582a91b0f7e5070d0f42a83027af79f3134c6c107278103f78af09c79bf173
5
5
  SHA512:
6
- metadata.gz: 2f47910f7df39d69f7a489b3c0b6a45e2db2878e2196a8b811f155b96e4e143d41096e9084547538df1fb19621be6ddfcac68313ab8ba15004adc7386d88ce23
7
- data.tar.gz: 48f5a8cee4bad76a8cb443cc3765b4a4a80cba61c535648542a801251f1684202cd1a5e04350bc143b2a41b0f48837d02333ead267e557bf821ac03724972b49
6
+ metadata.gz: e14f5b7c687c90c2347e805e00e9e8ba42b930f977915fd01ef345474d89afdcd18920cbe1c897b12ec20b8314b817ef457994750043410ef712789462157769
7
+ data.tar.gz: d699cdb824ce163a8de475b3939138eb6b0d4a97bf911ce3a4a94e9699b8319a4587bccd604bedd123d5dcc1cea7f0f92865093f548231e7fc002bac83800dbf
@@ -1,25 +1,32 @@
1
+ require 'devise_activity/configuration'
2
+ require 'active_record'
3
+
4
+
1
5
  module DeviseActivity
6
+ require 'devise_activity/session'
7
+ require 'devise_activity/navigation'
8
+
2
9
  extend ActiveSupport::Concern
3
10
 
4
11
  included do
5
12
 
6
- before_save :set_updater
7
- before_create :set_creator
8
-
9
- belongs_to :updater, class_name: "User", foreign_key: "updated_by"
10
- belongs_to :creator, class_name: "User", foreign_key: "created_by"
13
+ before_action :track_user_activity
11
14
 
12
15
  protected
13
16
 
14
- def set_updater
15
- return unless Trackstamps.current_user
16
- self.send("#{:updated_by}=", Trackstamps.current_user.id)
17
+ def track_user_activity
18
+ DeviseActivity::Session.create
19
+ DeviseActivity::Navigation.create
17
20
  end
18
21
 
19
- def set_creator
20
- return unless Trackstamps.current_user
21
- self.send("#{:created_by}=", Trackstamps.current_user.id)
22
- end
22
+ end
23
+
24
+ class << self
25
+ attr_accessor :configuration
26
+ end
23
27
 
28
+ def self.configure
29
+ self.configuration ||= Configuration.new
30
+ yield(configuration)
24
31
  end
25
32
  end
@@ -0,0 +1,11 @@
1
+ module DeviseActivity
2
+ class Configuration
3
+ attr_accessor :sessions_table_name,
4
+ :navigations_table_name,
5
+ :devise_model_name
6
+
7
+ def initialize
8
+
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,5 @@
1
+ module DeviseActivity
2
+ class Navigation < ApplicationRecord
3
+ #self.table_name = DeviseActivity.configuration.session_navigations_table_name
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ module DeviseActivity
2
+ class Session < ApplicationRecord
3
+ #self.table_name = DeviseActivity.configuration.session_activities_table_name
4
+
5
+ end
6
+ end
@@ -1,3 +1,3 @@
1
1
  module DeviseActivity
2
- VERSION = "0.0.1"
2
+ VERSION = "0.1.4"
3
3
  end
@@ -1,26 +1,14 @@
1
- =begin
2
1
  module DeviseActivity
3
2
  module Generators
4
3
  class InstallGenerator < Rails::Generators::Base
5
- desc "Add devise activity functionality to Rails based web applications"
6
4
  source_root File.expand_path("../templates", __FILE__)
5
+ desc "Creates DeviseActivity initializer for your application"
7
6
 
7
+ def copy_initializer
8
+ template "devise_activity_initializer.rb", "config/initializers/devise_activity.rb"
8
9
 
9
- def inject_before_filter_for_current_user
10
- path = File.join("app", "controllers", "application_controller.rb")
11
- inject_into_file(path, :after => "class ApplicationController < ActionController::Base\n") do
12
- <<-RUBY
13
- before_filter :set_trackstamps_user
14
- def set_trackstamps_user
15
- Thread.current[:current_user] = current_user
16
- ensure
17
- # to address the thread variable leak issues in Puma/Thin webserver
18
- Thread.current[:current_user] = nil
19
- end
20
- RUBY
21
- end
10
+ puts "Install complete! Truly Outrageous!"
22
11
  end
23
12
  end
24
13
  end
25
14
  end
26
- =end
@@ -3,23 +3,23 @@ require 'rails/generators/active_record'
3
3
  class DeviseActivity::MigrationGenerator < ::Rails::Generators::Base
4
4
  include Rails::Generators::Migration
5
5
  source_root File.expand_path('../templates', __FILE__)
6
- argument :table, :type => :string, :default => "application"
6
+ # argument :table, :type => :string, :default => "application"
7
7
  desc 'Generate migration file required for devise_activity'
8
8
 
9
9
  def install
10
- migration_template 'migration.rb', "db/migrate/create_devise_activities.rb"
10
+ migration_template 'migration.rb', "db/migrate/create_devise_activities_tables.rb"
11
11
  end
12
12
 
13
- def session_activities_table_name
14
- 'activities'
13
+ def sessions_table_name
14
+ DeviseActivity.configuration.sessions_table_name
15
15
  end
16
16
 
17
- def session_navigations_tables_name
18
- 'navigations'
17
+ def navigations_table_name
18
+ DeviseActivity.configuration.navigations_table_name
19
19
  end
20
20
 
21
21
  def devise_activity_model
22
- 'user'
22
+ DeviseActivity.configuration.devise_model_name
23
23
  end
24
24
 
25
25
  def self.next_migration_number(dirname)
@@ -0,0 +1,8 @@
1
+ require 'devise_activity'
2
+ require 'securerandom'
3
+
4
+ DeviseActivity.configure do |config|
5
+ config.sessions_table_name = 'sessions'
6
+ config.navigations_table_name = 'navigations'
7
+ config.devise_model_name = 'user'
8
+ end
@@ -1,7 +1,7 @@
1
1
  class CreateDeviseActivitiesTables < ActiveRecord::Migration<%= [Rails::VERSION::STRING.to_f] if Rails::VERSION::MAJOR >= 5 -%>
2
2
 
3
3
  def change
4
- create_table :<%= session_activities_table_name -%> do |t|
4
+ create_table :<%= sessions_table_name -%> do |t|
5
5
  t.integer :<%= devise_activity_model -%>_id
6
6
  t.datetime :signed_in_at
7
7
  t.datetime :signed_out_at
@@ -11,8 +11,8 @@ class CreateDeviseActivitiesTables < ActiveRecord::Migration<%= [Rails::VERSION:
11
11
  t.timestamps null: false
12
12
  end
13
13
 
14
- create_table :<%= session_navigations_table_name -%> do |t|
15
- t.integer :<%= session_activities_table_name.singularize -%>_id
14
+ create_table :<%= navigations_table_name -%> do |t|
15
+ t.integer :<%= sessions_table_name.singularize -%>_id
16
16
 
17
17
  t.string :page_url
18
18
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devise-activity
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - M Shahzad Tariq
@@ -36,9 +36,13 @@ files:
36
36
  - README.rdoc
37
37
  - Rakefile
38
38
  - lib/devise_activity.rb
39
+ - lib/devise_activity/configuration.rb
40
+ - lib/devise_activity/navigation.rb
41
+ - lib/devise_activity/session.rb
39
42
  - lib/devise_activity/version.rb
40
43
  - lib/generators/devise_activity/install_generator.rb
41
44
  - lib/generators/devise_activity/migration_generator.rb
45
+ - lib/generators/devise_activity/templates/devise_activity_initializer.rb
42
46
  - lib/generators/devise_activity/templates/migration.rb
43
47
  - lib/tasks/devise_activity_tasks.rake
44
48
  - test/dummy/README.rdoc