devise-activity 0.0.1 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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