Sha256: 91444f9b0416d4c511a184d5e52c427c0f1849352bc2278151cd41c6066ae31f

Contents?: true

Size: 1.16 KB

Versions: 70

Compression:

Stored size: 1.16 KB

Contents

require 'rubygems'
require 'bundler/setup'

require 'ruby-event'

module RubyApp

  module Elements

    module Navigation

      module Base
        require 'ruby_app/element'

        class BaseBreadcrumbs < RubyApp::Element

          class ClickedEvent < RubyApp::Element::Event

            attr_reader :page

            def initialize(data)
              super(data)
              @page = RubyApp::Element.get_element(data['page_id'])
            end

            def to_hash
              super.merge('page_id' => @page.element_id)
            end

          end

          template_path(:all, File.dirname(__FILE__))

          def initialize
            super
          end

          protected

            def on_event(event)
              on_clicked(event) if event.is_a?(RubyApp::Elements::Navigation::Base::BaseBreadcrumbs::ClickedEvent)
              super(event)
            end

            def on_clicked(event)
              RubyApp::Session.pages.slice!(RubyApp::Session.pages.index(event.page) + 1, RubyApp::Session.pages.length - ( RubyApp::Session.pages.index(event.page) + 1 ))
              event.refresh
            end

        end

      end

    end

  end

end

Version data entries

70 entries across 70 versions & 1 rubygems

Version Path
RubyApp-0.0.91 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.90 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.89 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.88 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.87 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.86 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.85 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.84 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.83 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.82 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.81 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.80 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.79 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.78 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.77 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.76 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.75 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.74 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.73 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb
RubyApp-0.0.72 lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb