eac_rails_base0 0.36.0 → 0.38.1

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: 8d7fa88cb36806bcf8ad71688d160e44ef49790e758d19f3b9bd8e6ca1ae7e16
4
- data.tar.gz: 10459334d6c04a82bc6aeb3a7b60081ff357660886d7db98ee36baac3c70a033
3
+ metadata.gz: 9a640112c919c9a6822fe216b409ccca154016ea899670b9650a9a5ba7df5154
4
+ data.tar.gz: 51fab398c2c39c8f647ec08eec774840eb8fbee3654aef9d2e3caa314f2d3008
5
5
  SHA512:
6
- metadata.gz: 167574d13695693cc8f66e6a937e0c639f317bd0b0577ad87637783eb491c046ab37d04df90c6f564e3dd7748e324b2ef0963c3651b2c11f41e46ba5c1f09f29
7
- data.tar.gz: 64597ee88092b76ac119d810262e0cee623e58b73c1b64041249007be1249962d14e535fd090922b0e166abc261763d1175be010a3dc072310286186216a8931
6
+ metadata.gz: e294db00be3e9c80991d6ac1615b3505dfdc0746b3d23bba19eef9d08f6af06d2bb99b01f4c20744c946644f2dc327bb5a38d7ae9201cac2e09d8d9b620141bb
7
+ data.tar.gz: 40415fdbf162a74aec5493e1afa7a1dc1d0a2bb1905b8b981dae16bd7c58b5e00e19d6a6029daea8a83ae10a5dcffaa29c636b34d02a037c9aedf4cdb6015c28
@@ -5,6 +5,7 @@ module EacRailsBase0
5
5
  include ::CanCanDry::ControllerAuthorization
6
6
 
7
7
  layout 'eac_rails_base0/application'
8
+ helper ::EacRailsBase0::AppVersionHelper
8
9
  helper ::EacRailsBase0::LayoutHelper
9
10
  helper ::EacRailsUtils::FormatterHelper
10
11
  helper ::EacRailsUtils::LinksHelper
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EacRailsBase0
4
+ module AppVersionHelper
5
+ def base0_app_version
6
+ base0_app_version_by_environment_variable ||
7
+ base0_app_version_by_version_file ||
8
+ ::I18n.t('eac_rails_base0.app_version.unsetted')
9
+ end
10
+
11
+ def base0_app_version_by_environment_variable
12
+ ENV['APP_VERSION'].to_s.strip.presence
13
+ end
14
+
15
+ def base0_app_version_by_version_file
16
+ ::Rails.root.children.find { |file| file.basename.to_path.downcase == 'version' }
17
+ .if_present { |file| file.read.presence }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EacRailsBase0
4
+ module PanelDefaultHelper
5
+ def panel_default(title, &block)
6
+ content_tag(:div, class: 'container') do
7
+ content_tag(:div, class: 'panel panel-default') do
8
+ panel_heading(title) << panel_body(block)
9
+ end
10
+ end
11
+ end
12
+
13
+ private
14
+
15
+ def panel_heading(title)
16
+ content_tag(:div, class: 'panel-heading') do
17
+ content_tag(:h2, class: 'panel-title') do
18
+ title
19
+ end
20
+ end
21
+ end
22
+
23
+ def panel_body(block)
24
+ content_tag(:div, class: 'panel-body') do
25
+ block ? block.call : ''
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,11 @@
1
+ <!--
2
+ f.email_field :email, autofocus: true, autocomplete: "email",
3
+ value: (resource.pending_reconfirmation? ? resource.unconfirmed_email : resource.email)
4
+ -->
5
+ <%= panel_default t('devise.confirmation_resend') do %>
6
+ <%= common_form(resource, as: resource_name, url: confirmation_path(resource_name),
7
+ html: { method: :post }, :submit_label => t('devise.confirmation_resend_submit')) do |f| %>
8
+ <%= f.email_field :email, required: true %>
9
+ <% end %>
10
+ <%= render "devise/shared/links" %>
11
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <p>Olá <%= @email %>!</p>
2
+ <p>Você pode confirmar sua conta de usuário através do link abaixo:</p>
3
+ <p>
4
+ <%= link_to 'Confirmar minha conta', confirmation_url(@resource, confirmation_token: @token) %>
5
+ </p>
@@ -0,0 +1,9 @@
1
+ <p>Olá <%= @resource.email %>!</p>
2
+ <p>Alguém solicitou a recuperação de sua senha. Você pode fazer isso
3
+ através do link abaixo.</p>
4
+ <p><%= link_to 'Alterar minha senha',
5
+ edit_password_url(@resource, reset_password_token: @token) %></p>
6
+ <p>Se você não efetuou esta solicitação, por favor, ignore este
7
+ e-mail.</p>
8
+ <p>Sua senha não será alterada até que você acesse o link acima e
9
+ recadastre-a.</p>
@@ -0,0 +1,10 @@
1
+ <%= panel_default t('devise.update_password') do %>
2
+ <%= common_form(resource, as: resource_name,
3
+ url: password_path(resource_name), submit_label: t('devise.update_password_submit'),
4
+ html: { method: :put }
5
+ ) do |f| %>
6
+ <%= f.hidden_field :reset_password_token %>
7
+ <%= f.password_field :password, label: t('devise.new_password'), required: true %>
8
+ <%= f.password_field :password_confirmation, required: true %>
9
+ <% end %>
10
+ <% end %>
@@ -0,0 +1,7 @@
1
+ <%= panel_default t('devise.forgot_password') do %>
2
+ <%= common_form(resource, as: resource_name, url: password_path(resource_name),
3
+ submit_label: t('devise.forgot_password_submit'),
4
+ html: { method: :post }) do |f| %>
5
+ <%= f.email_field :email, class: 'form-control' %>
6
+ <% end %>
7
+ <% end %>
@@ -0,0 +1,9 @@
1
+ <%= panel_default t('devise.update_password') do %>
2
+ <%= common_form(resource, as: resource_name, url: registration_path(resource_name),
3
+ submit_label: t('devise.update_password_submit'), html: { method: :put, role: "form" }) do |f| %>
4
+ <p>Preencha os campos abaixo se deseja alterar sua senha.</p>
5
+ <%= f.password_field :current_password, label: 'Senha atual', required: true %>
6
+ <%= f.password_field :password, label: 'Nova senha', required: false %>
7
+ <%= f.password_field :password_confirmation, label: 'Confirmação de senha' %>
8
+ <% end %>
9
+ <% end %>
@@ -0,0 +1,9 @@
1
+ <%= panel_default t('devise.sign_up') do %>
2
+ <%= common_form(resource, as: resource_name, url: registration_path(resource_name),
3
+ submit_label: t('devise.sign_up_submit'), html: { role: "form" }) do |f| %>
4
+ <%= f.email_field :email %>
5
+ <%= f.password_field :password, required: true %>
6
+ <%= f.password_field :password_confirmation, required: true %>
7
+ <% end %>
8
+ <%= render "devise/shared/links" %>
9
+ <% end %>
@@ -0,0 +1,9 @@
1
+ <%= panel_default t('devise.log_in') do %>
2
+ <%= common_form(resource, as: resource_name, url: session_path(resource_name),
3
+ :submit_label => t('devise.log_in')) do |f| %>
4
+ <%= f.email_field :email, required: true %>
5
+ <%= f.password_field :password, required: true %>
6
+ <%= f.check_box_field :remember_me %>
7
+ <% end %>
8
+ <%= render "devise/shared/links" %>
9
+ <% end %>
@@ -0,0 +1,37 @@
1
+ <%
2
+ links = [{
3
+ condition: controller_name != 'sessions',
4
+ label: t('devise.log_in'),
5
+ url: -> { new_session_path(resource_name) }
6
+ },{
7
+ condition: devise_mapping.registerable? && controller_name != 'registrations',
8
+ label: t('devise.sign_up'),
9
+ url: -> {new_registration_path(resource_name) }
10
+ },{
11
+ condition: devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations',
12
+ label: t('devise.forgot_password'),
13
+ url: -> {new_password_path(resource_name) }
14
+ },{
15
+ condition: devise_mapping.confirmable? && controller_name != 'confirmations',
16
+ label: t('devise.unreceived_confirmation'),
17
+ url: -> {new_confirmation_path(resource_name) }
18
+ },{
19
+ condition: devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks',
20
+ label: t('devise.unreceived_unlock'),
21
+ url: -> { new_unlock_path(resource_name) }
22
+ }]
23
+ if devise_mapping.omniauthable?
24
+ links += resource_class.omniauth_providers.map do |provider|
25
+ {
26
+ condition: true,
27
+ label: t("devise.log_in_with", provider: ::OmniAuth::Utils.camelize(provider)),
28
+ url: -> { omniauth_authorize_path(resource_name, provider) }
29
+ }
30
+ end
31
+ end
32
+ %>
33
+ <% links.each do |link| %>
34
+ <% if link.fetch(:condition) %>
35
+ <%= link_to link.fetch(:label), link.fetch(:url).call %><br/>
36
+ <% end %>
37
+ <% end %>
@@ -4,18 +4,29 @@ pt-BR:
4
4
  default: '%d/%m/%Y'
5
5
  picker: '%d/%m/%Y'
6
6
  short: '%d/%m/%y'
7
+ devise:
8
+ confirmation_resend: Reenvio de instruções de confirmação
9
+ confirmation_resend_submit: Reenviar
10
+ forgot_password: Esqueceu sua senha?
11
+ forgot_password_submit: Envie-me as instruções de recuperação de senha
12
+ log_in: Entrar
13
+ log_in_with: Entrar com %{provider}
14
+ log_out: Sair
15
+ new_password: Nova senha
16
+ sign_up: Cadastrar-se
17
+ sign_up_submit: Cadastrar
18
+ unreceived_confirmation: Não recebeu as instruções de confirmação?
19
+ unreceived_unlock: Não recebeu as instruções de desbloqueio de conta?
20
+ update_password: Alteração de senha
21
+ update_password_submit: Alterar minha senha
7
22
  time:
8
23
  formats:
9
24
  default: "%d/%m/%Y %H:%M"
10
25
  picker: '%d/%m/%Y %H:%M'
11
26
  short: '%d/%m/%y %H:%M'
12
27
  eac_rails_base0:
13
- links:
14
- delete_confirm: Confirma a remoção de "%{label}"?
15
- delete_object: Remover "%{label}".
16
- edit_object: Editar "%{label}".
17
- goto_url: Ir para %{url}.
18
- show_object: Mostrar "%{label}".
28
+ app_version:
29
+ unsetted: Não especificada
19
30
  main_menu:
20
31
  admin:
21
32
  aranha: Aranha
@@ -14,19 +14,41 @@ module EacRailsBase0
14
14
  administrator_rules(user)
15
15
  end
16
16
 
17
+ def devise_confirmation_rules(user)
18
+ return unless user.new_record?
19
+
20
+ can :create, 'Devise::Confirmation'
21
+ can :read, 'Devise::Confirmation'
22
+ end
23
+
24
+ def devise_invitable_rules(user)
25
+ can :create, 'Devise::Invitation' if user.administrator?
26
+ can :update, 'Devise::Invitation'
27
+ if user.new_record?
28
+ can :create, 'DeviseInvitable::Registration'
29
+ else
30
+ can :update, 'DeviseInvitable::Registration'
31
+ end
32
+ end
33
+
17
34
  def devise_password_rules(user)
18
35
  return unless user.new_record?
19
36
 
20
37
  can :manage, 'Devise::Password'
21
38
  end
22
39
 
40
+ def devise_registration_rules(user)
41
+ can :create, 'Devise::Registration' if user.new_record?
42
+ can :update, 'Devise::Registration' unless user.new_record?
43
+ end
44
+
23
45
  def devise_session_rules(user)
24
46
  can :destroy, 'Devise::Session' unless user.new_record?
25
47
  can :create, 'Devise::Session'
26
48
  end
27
49
 
28
50
  def devise_rules(user)
29
- %w[password session].each do |devise_module|
51
+ %w[confirmation invitable password registration session].each do |devise_module|
30
52
  send("devise_#{devise_module}_rules", user)
31
53
  end
32
54
  end
@@ -6,9 +6,11 @@ module EacRailsBase0
6
6
  include CanCanDry::AbilityMapping
7
7
  include CanCanDry::AbilityMappingSets::ActiveScaffold
8
8
  include CanCanDry::AbilityMappingSets::Devise
9
+ include CanCanDry::AbilityMappingSets::DeviseInvitable
9
10
 
10
11
  def initialize
11
12
  map_devise
13
+ map_devise_invitable
12
14
  map_controller 'EacUsersSupport::Admin::Users', :manage, ::EacUsersSupport::User
13
15
  map_controller 'Aranha::Addresses', :manage, ::Aranha::Address
14
16
  map_controller 'BrRailties::FederalUnits', :manage, ::BrRailties::FederalUnit
@@ -1,5 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'aranha/engine'
4
+ require 'br_railties/engine'
5
+ require 'eac_rails_utils/engine'
6
+ require 'eac_users_support/engine'
7
+
3
8
  module EacRailsBase0
4
9
  class Engine < ::Rails::Engine
5
10
  end
@@ -23,9 +23,11 @@ RSpec.shared_context 'when user is admin', shared_context: :metadata do
23
23
 
24
24
  before do
25
25
  visit '/users/sign_in'
26
- fill_in 'E-mail', with: user.email
27
- fill_in 'Password', with: user.password
28
- click_on 'Log in'
26
+ fill_in ::I18n.translate!('activerecord.attributes.eac_users_support/user.email'),
27
+ with: user.email
28
+ fill_in ::I18n.translate!('activerecord.attributes.eac_users_support/user.password'),
29
+ with: user.password
30
+ click_button ::I18n.translate!('devise.log_in')
29
31
  end
30
32
 
31
33
  it 'user should be logged' do
@@ -37,9 +39,9 @@ end
37
39
  RSpec.shared_context 'when user is anonymous', shared_context: :metadata do
38
40
  before do
39
41
  visit '/'
40
- if link_exist?('Sair')
41
- click_link('Sair')
42
- elsif !link_exist?('Entrar')
42
+ if link_exist?(::I18n.translate!('devise.log_out'))
43
+ click_link(::I18n.translate!('devise.log_out'))
44
+ elsif !link_exist?(::I18n.translate!('devise.log_in'))
43
45
  raise 'login nor logout link found'
44
46
  end
45
47
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRailsBase0
4
- VERSION = '0.36.0'
4
+ VERSION = '0.38.1'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_rails_base0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.36.0
4
+ version: 0.38.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-20 00:00:00.000000000 Z
11
+ date: 2020-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha
@@ -17,6 +17,9 @@ dependencies:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0.14'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 0.14.2
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -24,6 +27,9 @@ dependencies:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
29
  version: '0.14'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 0.14.2
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: bootstrap-sass
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -509,8 +515,19 @@ files:
509
515
  - app/assets/stylesheets/eac_rails_base0/components.scss
510
516
  - app/assets/stylesheets/eac_rails_base0/default_configuration.scss
511
517
  - app/controllers/eac_rails_base0/application_controller.rb
518
+ - app/helpers/eac_rails_base0/app_version_helper.rb
512
519
  - app/helpers/eac_rails_base0/layout_helper.rb
520
+ - app/helpers/eac_rails_base0/panel_default_helper.rb
513
521
  - app/uploaders/eac_rails_base0/default_file_uploader.rb
522
+ - app/views/devise/confirmations/new.html.erb
523
+ - app/views/devise/mailer/confirmation_instructions.html.erb
524
+ - app/views/devise/mailer/reset_password_instructions.html.erb
525
+ - app/views/devise/passwords/edit.html.erb
526
+ - app/views/devise/passwords/new.html.erb
527
+ - app/views/devise/registrations/edit.html.erb
528
+ - app/views/devise/registrations/new.html.erb
529
+ - app/views/devise/sessions/new.html.erb
530
+ - app/views/devise/shared/_links.html.erb
514
531
  - app/views/layouts/eac_rails_base0/_flash.html.erb
515
532
  - app/views/layouts/eac_rails_base0/_main_menu.html.erb
516
533
  - app/views/layouts/eac_rails_base0/_navbar_user.html.erb
@@ -604,8 +621,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
604
621
  - !ruby/object:Gem::Version
605
622
  version: '0'
606
623
  requirements: []
607
- rubyforge_project:
608
- rubygems_version: 2.7.7
624
+ rubygems_version: 3.0.6
609
625
  signing_key:
610
626
  specification_version: 4
611
627
  summary: A Rails base for multiple Rails projects developed by Esquilo Azul Company.