rails_guardian 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/lib/generators/rails_guardian/install/install_generator.rb +13 -0
- data/lib/lib/generators/rails_guardian/install/templates/rails_guardian.rb +5 -0
- data/lib/lib/generators/rails_guardian/model/model_generator.rb +13 -0
- data/lib/lib/generators/rails_guardian/views/views_generator.rb +13 -0
- data/lib/rails_guardian/models/adicional.rb +17 -0
- data/lib/rails_guardian/models/confirmable.rb +28 -0
- data/lib/rails_guardian/models/database_authenticatable.rb +22 -0
- data/lib/rails_guardian/models/lockable.rb +17 -0
- data/lib/rails_guardian/models/omniauthable.rb +21 -0
- data/lib/rails_guardian/models/recoverable.rb +17 -0
- data/lib/rails_guardian/models/registerable.rb +21 -0
- data/lib/rails_guardian/models/rememberable.rb +17 -0
- data/lib/rails_guardian/models/timeoutable.rb +13 -0
- data/lib/rails_guardian/models/trackable.rb +19 -0
- data/lib/rails_guardian/models/validatable.rb +15 -0
- data/lib/rails_guardian/version.rb +1 -1
- data/lib/rails_guardian.rb +20 -7
- metadata +16 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db8e4adc6aee33146a71c000b7b2c0ae250f52440e7a856bf2cf305e44e816be
|
4
|
+
data.tar.gz: 1b453a078ab82f0887aeb422ab95475c53b3de0c891643b3585a8ef834b7f5f8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ffc3fab14ce71138e2c5991a150a00076342bb2f6d1f680b9af751df2ddc4f04d2ac9b7df2a7f308713620fdb372f5c07d3c622f8788b3eb6f04808bae902f65
|
7
|
+
data.tar.gz: 35a5f80f2ccde9442b3f339a0fb139e7619df9637aee6beb840f0cd5d1552477fadab41f122507e3e1c254116e2d40be885922e00fdbc62a66ebaa7407f9c861
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# lib/generators/rails_guardian/install/install_generator.rb
|
2
|
+
module RailsGuardian
|
3
|
+
module Generators
|
4
|
+
class InstallGenerator < Rails::Generators::Base
|
5
|
+
source_root File.expand_path('templates', __dir__)
|
6
|
+
|
7
|
+
def copy_initializer
|
8
|
+
template 'rails_guardian.rb', 'config/initializers/rails_guardian.rb'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# lib/generators/rails_guardian/model/model_generator.rb
|
2
|
+
module RailsGuardian
|
3
|
+
module Generators
|
4
|
+
class ModelGenerator < Rails::Generators::NamedBase
|
5
|
+
source_root File.expand_path('templates', __dir__)
|
6
|
+
|
7
|
+
def create_model_file
|
8
|
+
template 'model.rb', File.join('app/models', class_path, "#{file_name}.rb")
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# lib/generators/rails_guardian/views/views_generator.rb
|
2
|
+
module RailsGuardian
|
3
|
+
module Generators
|
4
|
+
class ViewsGenerator < Rails::Generators::Base
|
5
|
+
source_root File.expand_path('templates', __dir__)
|
6
|
+
|
7
|
+
def copy_views
|
8
|
+
directory 'views', 'app/views/users'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# lib/guardian/models/adicional.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Adicional
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
included do
|
8
|
+
# Aquí puedes agregar cualquier lógica que necesites cuando se incluya este módulo
|
9
|
+
end
|
10
|
+
|
11
|
+
module ClassMethods
|
12
|
+
# Aquí puedes agregar métodos de clase que sean necesarios para este módulo
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# lib/guardian/models/confirmable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Confirmable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
included do
|
8
|
+
before_create :generate_confirmation_token
|
9
|
+
after_create :send_confirmation_instructions
|
10
|
+
end
|
11
|
+
|
12
|
+
def confirm!
|
13
|
+
# Implementa la lógica para confirmar la cuenta del usuario aquí
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def generate_confirmation_token
|
19
|
+
# Genera un token de confirmación único aquí
|
20
|
+
end
|
21
|
+
|
22
|
+
def send_confirmation_instructions
|
23
|
+
# Envía las instrucciones de confirmación por correo electrónico aquí
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module RailsGuardian
|
2
|
+
module Models
|
3
|
+
module DatabaseAuthenticatable
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
|
6
|
+
|
7
|
+
included do
|
8
|
+
before_save :encrypt_password
|
9
|
+
end
|
10
|
+
|
11
|
+
def valid_password?(password)
|
12
|
+
#Implementa la lógica para encriptar la contraseña aquí
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def encrypt_password
|
18
|
+
#Implementa la lógica para encriptar la contraseña aquí
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# lib/guardian/models/lockable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Lockable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
def lock_access!
|
8
|
+
# Implementa la lógica para bloquear el acceso del usuario aquí
|
9
|
+
end
|
10
|
+
|
11
|
+
def unlock_access!
|
12
|
+
# Implementa la lógica para desbloquear el acceso del usuario aquí
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module RailsGuardian
|
2
|
+
module Models
|
3
|
+
module Omniauthable
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
|
6
|
+
included do
|
7
|
+
#Aquí puedes agregar cualquier lógica que necesites cuando se incluya este módulo
|
8
|
+
end
|
9
|
+
|
10
|
+
module ClassMethods
|
11
|
+
def from_omniauth(auth)
|
12
|
+
# Aquí es donde manejarías la respuesta de OmniAuth y encontrarías o crearías un usuario basado en los datos de autenticación.
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# lib/guardian/models/recoverable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Recoverable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
def reset_password!
|
8
|
+
# Implementa la lógica para restablecer la contraseña del usuario aquí
|
9
|
+
end
|
10
|
+
|
11
|
+
def send_reset_password_instructions
|
12
|
+
# Envía las instrucciones para restablecer la contraseña por correo electrónico aquí
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# lib/guardian/models/registerable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Registerable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
def register
|
8
|
+
# Implementa la lógica para registrar un nuevo usuario aquí
|
9
|
+
end
|
10
|
+
|
11
|
+
def update
|
12
|
+
# Implementa la lógica para actualizar la cuenta del usuario aquí
|
13
|
+
end
|
14
|
+
|
15
|
+
def destroy
|
16
|
+
# Implementa la lógica para eliminar la cuenta del usuario aquí
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# lib/guardian/models/rememberable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Rememberable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
def remember_me!
|
8
|
+
# Implementa la lógica para recordar al usuario aquí
|
9
|
+
end
|
10
|
+
|
11
|
+
def forget_me!
|
12
|
+
# Implementa la lógica para olvidar al usuario aquí
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# lib/guardian/models/trackable.rb
|
2
|
+
module Guardian
|
3
|
+
module Models
|
4
|
+
module Trackable
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
included do
|
8
|
+
before_save :update_tracked_fields
|
9
|
+
end
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
def update_tracked_fields
|
14
|
+
# Implementa la lógica para rastrear los campos relevantes aquí
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module RailsGuardian
|
2
|
+
module Models
|
3
|
+
module Validatable
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
|
6
|
+
included do
|
7
|
+
validates_presence_of :email, message: 'El correo es obligatorio'
|
8
|
+
validates_uniqueness_of :email, message: 'Este correo electrónico ya está en uso'
|
9
|
+
|
10
|
+
#Agrega aquí más validaciones según sea necesario
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
data/lib/rails_guardian.rb
CHANGED
@@ -2,13 +2,26 @@ require "rails_guardian/version"
|
|
2
2
|
require "rails_guardian/railtie"
|
3
3
|
|
4
4
|
module RailsGuardian
|
5
|
-
require 'rails_guardian/engine' if defined?(Rails)
|
6
5
|
|
7
|
-
|
8
|
-
@@model = 'User'
|
6
|
+
require 'rails_guardian/engine' if defined?(Rails)
|
9
7
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
8
|
+
mattr_accessor :model
|
9
|
+
@@model = 'User'
|
10
|
+
|
11
|
+
def self.setup
|
12
|
+
yield self
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.included(base)
|
16
|
+
base.extend ClassMethods
|
17
|
+
end
|
18
|
+
|
19
|
+
module ClassMethods
|
20
|
+
def rails_guardian(*modules)
|
21
|
+
modules.each do |mod|
|
22
|
+
include "RailsGuardian::Models::#{mod.to_s.camelize}".constantize
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
14
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_guardian
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- fabiantorresm
|
@@ -36,8 +36,23 @@ files:
|
|
36
36
|
- MIT-LICENSE
|
37
37
|
- README.md
|
38
38
|
- Rakefile
|
39
|
+
- lib/lib/generators/rails_guardian/install/install_generator.rb
|
40
|
+
- lib/lib/generators/rails_guardian/install/templates/rails_guardian.rb
|
41
|
+
- lib/lib/generators/rails_guardian/model/model_generator.rb
|
42
|
+
- lib/lib/generators/rails_guardian/views/views_generator.rb
|
39
43
|
- lib/rails_guardian.rb
|
40
44
|
- lib/rails_guardian/engine.rb
|
45
|
+
- lib/rails_guardian/models/adicional.rb
|
46
|
+
- lib/rails_guardian/models/confirmable.rb
|
47
|
+
- lib/rails_guardian/models/database_authenticatable.rb
|
48
|
+
- lib/rails_guardian/models/lockable.rb
|
49
|
+
- lib/rails_guardian/models/omniauthable.rb
|
50
|
+
- lib/rails_guardian/models/recoverable.rb
|
51
|
+
- lib/rails_guardian/models/registerable.rb
|
52
|
+
- lib/rails_guardian/models/rememberable.rb
|
53
|
+
- lib/rails_guardian/models/timeoutable.rb
|
54
|
+
- lib/rails_guardian/models/trackable.rb
|
55
|
+
- lib/rails_guardian/models/validatable.rb
|
41
56
|
- lib/rails_guardian/railtie.rb
|
42
57
|
- lib/rails_guardian/version.rb
|
43
58
|
- lib/tasks/guardian_tasks.rake
|