Sha256: 17fee345b8df9b54ee5af123c81f198526f5bb5d682cbd5ef33cc72d5253b993
Contents?: true
Size: 1.15 KB
Versions: 24
Compression:
Stored size: 1.15 KB
Contents
module Fomantic module Ui module Sass module BreadCrumbs def self.included(base) base.extend(ClassMethods) end module ClassMethods def semantic_breadcrumb(name, url, options = {}) class_name = self.name before_action options do |controller| name = controller.send :translate_semantic_breadcrumb, name, class_name if name.is_a?(Symbol) controller.send :semantic_breadcrumb, name, url end end end protected def semantic_breadcrumb(name, url = '', options = {}) @breadcrumbs ||= [] name = translate_semantic_breadcrumb(name, self.class.name) if name.is_a?(Symbol) url = eval(url.to_s) if url =~ /_path|_url|@/ @breadcrumbs << { name: name, url: url, options: options } end def translate_semantic_breadcrumb(name, class_name) scope = [:breadcrumbs] namespace = class_name.underscore.split('/') namespace.last.sub!('_controller', '') scope += namespace I18n.t name, scope: scope end end end end end
Version data entries
24 entries across 24 versions & 1 rubygems