aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlban Peignier2018-02-22 12:17:06 +0100
committerGitHub2018-02-22 12:17:06 +0100
commit113487042fc69a0a0c979d09148d3f5e8642b927 (patch)
treeca815828772cfd6b1321f36fd0d44b6b19140fe2
parent3c4f295c8b02c154bbe68268a25fd41edb055548 (diff)
parent643c5887c00e88e56c498e642b1c663649a36039 (diff)
downloadchouette-core-113487042fc69a0a0c979d09148d3f5e8642b927.tar.bz2
Merge pull request #331 from af83/5938-locale-selector
Add a locale selector menu item. Refs #5398
-rw-r--r--app/assets/stylesheets/components/_main_nav.sass13
-rw-r--r--app/views/layouts/navigation/_main_nav_top.html.slim12
-rw-r--r--spec/support/pundit/pundit_view_policy.rb2
3 files changed, 26 insertions, 1 deletions
diff --git a/app/assets/stylesheets/components/_main_nav.sass b/app/assets/stylesheets/components/_main_nav.sass
index 2af070389..8e164fa01 100644
--- a/app/assets/stylesheets/components/_main_nav.sass
+++ b/app/assets/stylesheets/components/_main_nav.sass
@@ -375,3 +375,16 @@ $menuW: 300px
+ .btn
margin-left: 10px
+
+ .languages
+ .dropdown-menu
+ top: 0
+ right: 0
+ left: auto
+ white-space: nowrap
+ line-height: 11px
+ min-width: 0
+ li
+ display: inline-block
+ a
+ padding: 2px 10px
diff --git a/app/views/layouts/navigation/_main_nav_top.html.slim b/app/views/layouts/navigation/_main_nav_top.html.slim
index f664d5416..12355dfb7 100644
--- a/app/views/layouts/navigation/_main_nav_top.html.slim
+++ b/app/views/layouts/navigation/_main_nav_top.html.slim
@@ -21,6 +21,18 @@
= link_to destroy_user_session_path, method: :delete, class: 'menu-item', title: 'Se déconnecter' do
span.fa.fa-lg.fa-sign-out
+ - if has_feature?(:change_locale)
+ .menu-item-group.pull-right
+ .dropdown.languages
+ a href="#" class="dropdown-toggle" data-toggle="dropdown"
+ = image_tag("language_engine/#{selected_language}_flag.png", { :'data-locale' => "#{selected_language}" } )
+ b.caret
+
+ ul.dropdown-menu
+ - I18n.available_locales.each do |locale|
+ li= link_to_language locale, { :class => language_class( locale ) }
+
+
= render 'layouts/navigation/nav_panel_operations'
= render 'layouts/navigation/nav_panel_profile' if user_signed_in?
diff --git a/spec/support/pundit/pundit_view_policy.rb b/spec/support/pundit/pundit_view_policy.rb
index 63970de02..316ff6718 100644
--- a/spec/support/pundit/pundit_view_policy.rb
+++ b/spec/support/pundit/pundit_view_policy.rb
@@ -12,7 +12,7 @@ module Pundit
allow(view).to receive(:current_organisation).and_return(organisation)
allow(view).to receive(:current_offer_workbench).and_return(current_offer_workbench)
allow(view).to receive(:current_workgroup).and_return(current_offer_workbench.workgroup)
- allow(view).to receive(:has_feature?){ |f| features.include?(f)}
+ allow(view).to receive(:has_feature?){ |f| respond_to?(:features) && features.include?(f)}
allow(view).to receive(:user_signed_in?).and_return true
allow(view).to receive(:policy) do |instance|
::Pundit.policy pundit_user, instance