app/controllers/concerns/enjoy/localizeable.rb in enjoy_cms-0.3.6.2 vs app/controllers/concerns/enjoy/localizeable.rb in enjoy_cms-0.3.7
- old
+ new
@@ -7,11 +7,11 @@
Settings.ns_fallback = "main"
end
end
private
def default_url_options(options={})
- {locale: params[:locale]}
+ {locale: I18n.locale}
end
def nav_get_menu_items(type)
pages = menu_class.find(type.to_s).pages.enabled
if Enjoy.mongoid?
pages = pages.where(:"name.#{I18n.locale}".exists => true)
@@ -36,14 +36,19 @@
_url = item.redirect.blank? ? item.fullpath : item.redirect
end
else
_url = item.redirect.blank? ? item.fullpath : item.redirect
end
- (params[:locale].blank? ? "" : "/#{params[:locale]}") + _url
+ _localizable_regexp = Regexp.new("^(#{I18n.available_locales.map { |l| "\\/#{l}"}.join("|")})")
+ ((params[:locale].blank? or _url != _localizable_regexp) ? "" : "/#{params[:locale]}") + _url
end
def find_seo_extra(path)
_localizable_regexp = Regexp.new("^(#{I18n.available_locales.map { |l| "\\/#{l}"}.join("|")})")
- page_class.enabled.where(fullpath: path.sub(_localizable_regexp, "")).first
+ _path = path.sub(_localizable_regexp, "")
+ if _path[0] != '/'
+ _path = '/' + _path
+ end
+ page_class.enabled.where(fullpath: _path).first
end
def page_class_name
"Enjoy::Page"
end