2017-11-10 12:18:05 +01:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
# Configures your navigation
|
|
|
|
|
SimpleNavigation::Configuration.run do |navigation|
|
|
|
|
|
# Specify a custom renderer if needed.
|
|
|
|
|
# The default renderer is SimpleNavigation::Renderer::List which renders HTML lists.
|
|
|
|
|
# The renderer can also be specified as option in the render_navigation call.
|
|
|
|
|
# navigation.renderer = Your::Custom::Renderer
|
|
|
|
|
|
|
|
|
|
# Specify the class that will be applied to active navigation items. Defaults to 'selected'
|
|
|
|
|
#navigation.selected_class = 'selected'
|
|
|
|
|
|
|
|
|
|
# Specify the class that will be applied to the current leaf of
|
|
|
|
|
# active navigation items. Defaults to 'simple-navigation-active-leaf'
|
|
|
|
|
#navigation.active_leaf_class = 'simple-navigation-active-leaf'
|
|
|
|
|
|
|
|
|
|
# Specify if item keys are added to navigation items as id. Defaults to true
|
|
|
|
|
#navigation.autogenerate_item_ids = true
|
|
|
|
|
|
|
|
|
|
# You can override the default logic that is used to autogenerate the item ids.
|
|
|
|
|
# To do this, define a Proc which takes the key of the current item as argument.
|
|
|
|
|
# The example below would add a prefix to each key.
|
|
|
|
|
#navigation.id_generator = Proc.new {|key| "my-prefix-#{key}"}
|
|
|
|
|
|
|
|
|
|
# If you need to add custom html around item names, you can define a proc that
|
|
|
|
|
# will be called with the name you pass in to the navigation.
|
|
|
|
|
# The example below shows how to wrap items spans.
|
|
|
|
|
#navigation.name_generator = Proc.new {|name, item| "<span>#{name}</span>"}
|
|
|
|
|
|
|
|
|
|
# Specify if the auto highlight feature is turned on (globally, for the whole navigation). Defaults to true
|
|
|
|
|
#navigation.auto_highlight = true
|
|
|
|
|
|
|
|
|
|
# Specifies whether auto highlight should ignore query params and/or anchors when
|
|
|
|
|
# comparing the navigation items with the current URL. Defaults to true
|
|
|
|
|
#navigation.ignore_query_params_on_auto_highlight = true
|
|
|
|
|
#navigation.ignore_anchors_on_auto_highlight = true
|
|
|
|
|
|
|
|
|
|
# If this option is set to true, all item names will be considered as safe (passed through html_safe). Defaults to false.
|
|
|
|
|
#navigation.consider_item_names_as_safe = false
|
|
|
|
|
|
|
|
|
|
# Define the primary navigation
|
|
|
|
|
navigation.items do |primary|
|
|
|
|
|
# Add an item to the primary navigation. The following params apply:
|
|
|
|
|
# key - a symbol which uniquely defines your navigation item in the scope of the primary_navigation
|
|
|
|
|
# name - will be displayed in the rendered navigation. This can also be a call to your I18n-framework.
|
|
|
|
|
# url - the address that the generated item links to. You can also use url_helpers (named routes, restful routes helper, url_for etc.)
|
|
|
|
|
# options - can be used to specify attributes that will be included in the rendered navigation item (e.g. id, class etc.)
|
|
|
|
|
# some special options that can be set:
|
|
|
|
|
# :if - Specifies a proc to call to determine if the item should
|
|
|
|
|
# be rendered (e.g. <tt>if: -> { current_user.admin? }</tt>). The
|
|
|
|
|
# proc should evaluate to a true or false value and is evaluated in the context of the view.
|
|
|
|
|
# :unless - Specifies a proc to call to determine if the item should not
|
|
|
|
|
# be rendered (e.g. <tt>unless: -> { current_user.admin? }</tt>). The
|
|
|
|
|
# proc should evaluate to a true or false value and is evaluated in the context of the view.
|
|
|
|
|
# :method - Specifies the http-method for the generated link - default is :get.
|
|
|
|
|
# :highlights_on - if autohighlighting is turned off and/or you want to explicitly specify
|
|
|
|
|
# when the item should be highlighted, you can set a regexp which is matched
|
|
|
|
|
# against the current URI. You may also use a proc, or the symbol <tt>:subpath</tt>.
|
|
|
|
|
#
|
|
|
|
|
|
2017-11-12 13:27:10 +01:00
|
|
|
primary.item :greendays, 'Gründonnerstag', greendays_path
|
|
|
|
|
|
2017-11-10 12:18:05 +01:00
|
|
|
unless supporter_signed_in?
|
|
|
|
|
primary.item :home, I18n.t('.shared.topnavigation.support'), "/#{I18n.locale}"
|
|
|
|
|
end
|
|
|
|
|
primary.item :initiative, I18n.t('.shared.topnavigation.initiative'), initiative_text_path do | initiative |
|
|
|
|
|
initiative.item :arguments, I18n.t('.shared.topnavigation.arguments'), arguments_path
|
|
|
|
|
initiative.item :faq, I18n.t('.shared.topnavigation.faq'), faq_path
|
|
|
|
|
initiative.item :numbers, I18n.t('.shared.topnavigation.numbers'), numbers_path
|
|
|
|
|
initiative.item :collection_concept, I18n.t('.shared.topnavigation.collection_concept'), collection_concept_path
|
|
|
|
|
end
|
|
|
|
|
primary.item :statements, I18n.t('.shared.topnavigation.statements'), statements_path do |statements|
|
|
|
|
|
statements.item :new_statement, I18n.t('.supporters.publicity.renew'), new_publicity_path
|
|
|
|
|
end
|
|
|
|
|
primary.item :donation, I18n.t('donation'), donation_path
|
|
|
|
|
primary.item :blog, 'Blog', 'http://blog.cannabis-initiative.ch/', link_html: { target: '_blank'}
|
|
|
|
|
if supporter_signed_in?
|
|
|
|
|
primary.item :home, I18n.t('.shared.topnavigation.my_account'), "/#{I18n.locale}" do |my_account|
|
|
|
|
|
my_account.item :edit_account, I18n.t('.supporters.new.edit'), edit_supporter_registration_path()
|
|
|
|
|
my_account.item :sign_out, I18n.t('.shared.topnavigation.sign_out'), destroy_supporter_session_path, link_html: { 'data-method' => :delete }
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
primary.item :home, I18n.t('.shared.topnavigation.sign_in'), new_supporter_session_path
|
|
|
|
|
end
|
2017-11-12 13:27:10 +01:00
|
|
|
|
|
|
|
|
|
2017-11-10 12:18:05 +01:00
|
|
|
end
|
|
|
|
|
end
|