ama_layout 7.0.pre → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b6b9a4cdafc68754b4b609a395a2a320ffd1be61
4
- data.tar.gz: 70892459cd1d3e4b09d9304ccf2ed15a3f678611
3
+ metadata.gz: 3ca2feaab21a5bf26eb756b0e47f33f9062e894b
4
+ data.tar.gz: 39d8c33eb56c90afd51ca405542493fbf5e33e31
5
5
  SHA512:
6
- metadata.gz: 856dbbca7af3686fa5fd57b873c0ab448b3df411d9e1ba66abbb1a2194bb480033eb4ac4997ec6e708ad446265545a0a30e600dfd2c85c1405bf0a8303dc4600
7
- data.tar.gz: 9fd42c8bf9c50e2e5eb01564759977b6b17e118cb7d5b8ff5c41c834bd94e4781241916f56d74fec5f1bf9e302fca19a5c728adede34214fc66a85638bb231e4
6
+ metadata.gz: 08711a7f214bccc53a373fc1dee33ee8da8999b5282d86b8809b412519532f2a942a0c00f2a753eb8c63b82a8465a26af8ccd0d9df4a986d8d3df98098b7cd40
7
+ data.tar.gz: 9fd1f9eb34ed8e3340a81de82a9693024ce14476441589cafbc327c8778fd59875c939d1a74a16789dd4cfb7c7503e7f5e857daeda1a66b395dcde6f90a84e84
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.add_dependency 'foundation-rails', '>= 6.4.1.2'
22
22
  spec.add_dependency 'rails', '>= 4.2'
23
23
  spec.add_dependency 'browser', '~> 2.0'
24
- spec.add_dependency 'breadcrumbs_on_rails', '~> 3.0.1'
24
+ spec.add_dependency 'breadcrumbs_on_rails', '>= 3'
25
25
  spec.add_dependency 'redis-rails'
26
26
  spec.add_development_dependency 'bundler', '~> 1.11'
27
27
  spec.add_development_dependency 'rake', '>= 11.0'
@@ -6,7 +6,7 @@ module AmaLayoutPathHelper
6
6
  def youraccount_dashboard_path
7
7
  "#{Rails.configuration.youraccount_site}/dashboard"
8
8
  end
9
-
9
+
10
10
  def youraccount_billing_path
11
11
  "#{Rails.configuration.youraccount_site}/billing"
12
12
  end
@@ -1,7 +1,7 @@
1
1
  <div class="header">
2
2
  <div class="title-bar" data-responsive-toggle="main-menu" data-hide-for="large">
3
3
  <button class="menu-icon" type="button" data-toggle="offCanvasLeft"></button>
4
- <%= link_to(image_tag("ama-logo.png"), "https://www.ama.ab.ca", class: "title-bar__logo") %>
4
+ <%= link_to(image_tag("ama-logo.png"), Rails.configuration.amaabca_site, class: "title-bar__logo") %>
5
5
  <a href="#" data-toggle="offCanvasRight" data-notifications-toggle>
6
6
  <i class="fa fa-2x fa-bell notification__icon"></i>
7
7
  <%= navigation.notification_badge %>
@@ -9,7 +9,7 @@
9
9
  </div>
10
10
  <div class="top-bar" id="main-menu">
11
11
  <div class="top-bar-left">
12
- <%= link_to(image_tag("ama-logo.png", class: "top-bar__logo"), "https://www.ama.ab.ca") %>
12
+ <%= link_to(image_tag("ama-logo.png", class: "top-bar__logo"), Rails.configuration.amaabca_site) %>
13
13
  </div>
14
14
  <div class="top-bar-right">
15
15
  <ul class="menu" data-responsive-menu="drilldown medium-dropdown">
@@ -20,7 +20,7 @@
20
20
  <li>
21
21
  <a href="<%= Rails.configuration.amaabca_site %>/membership/contact-us--centre-locations-hours-and-contact-information">Contact Us</a>
22
22
  </li>
23
- <%= navigation.account_toggle %>
23
+ <%= navigation.account_toggle(self) %>
24
24
  <%= navigation.top_nav %>
25
25
  </ul>
26
26
  </div>
@@ -30,7 +30,7 @@
30
30
  <h2 class="side-nav__header">Online Account</h2>
31
31
  <div class="side-nav__content">
32
32
  <ul class="side-nav__list">
33
- <%= navigation.account_toggle %>
33
+ <%= navigation.account_toggle(self) %>
34
34
  <%= render partial: "ama_layout/main_nav_item", collection: navigation.items, as: :nav_item %>
35
35
  <li class="side-nav__item">
36
36
  <a class="side-nav__link" href="<%= Rails.configuration.amaabca_site %>">AMA Website</a>
@@ -0,0 +1,8 @@
1
+ <aside class="side-nav" data-equalizer-watch="page-container-equalize">
2
+ <h2 class="side-nav__header">Online Account</h2>
3
+ <div class="side-nav__content">
4
+ <ul class="side-nav__list">
5
+ <%= render partial: "ama_layout/main_nav_item", collection: navigation.items, as: :nav_item %>
6
+ </ul>
7
+ </div>
8
+ </aside>
@@ -0,0 +1,38 @@
1
+ <div class="header">
2
+ <div class="title-bar" data-responsive-toggle="main-menu" data-hide-for="large">
3
+ <button class="menu-icon" type="button" data-toggle="offCanvasLeft"></button>
4
+ <%= link_to(image_tag("ama-logo.png"), Rails.configuration.amaabca_site, class: "title-bar__logo") %>
5
+ </div>
6
+ <div class="top-bar" id="main-menu">
7
+ <div class="top-bar-left">
8
+ <%= link_to(image_tag("ama-logo.png", class: "top-bar__logo"), Rails.configuration.amaabca_site) %>
9
+ </div>
10
+ <div class="top-bar-right">
11
+ <ul class="menu" data-responsive-menu="drilldown medium-dropdown">
12
+ <li>
13
+ <a href="https://albertamotorassociation.zendesk.com/hc/en-us" target="_blank">Help</a>
14
+ </li>
15
+ <%= navigation.top_nav %>
16
+ </ul>
17
+ </div>
18
+ </div>
19
+ </div>
20
+ <div class="off-canvas position-left" id="offCanvasLeft" data-off-canvas>
21
+ <h2 class="side-nav__header">Online Account</h2>
22
+ <div class="side-nav__content">
23
+ <ul class="side-nav__list">
24
+ <%= render partial: "ama_layout/main_nav_item", collection: navigation.items, as: :nav_item %>
25
+ <%= navigation.sign_out_link %>
26
+ </ul>
27
+ </div>
28
+ </div>
29
+ <div class="javascript_errors error_notification" hidden></div>
30
+ <noscript>
31
+ <div class="mt1 large-12 columns text-center error_notification">
32
+ <h2 class="mt1">There seems to be an issue with your browser.</h2>
33
+ <h5>Javascript is disabled in your web browser.</h5>
34
+ <div class='fieldset text-center small mb1 block'>
35
+ For full functionality of this site it is necessary to enable JavaScript. Here are the <a href="http://www.enable-javascript.com/" target="_blank"> instructions how to enable JavaScript in your web browser</a>
36
+ </div>
37
+ </div>
38
+ </noscript>
@@ -0,0 +1,6 @@
1
+ <li class="has-submenu">
2
+ <%= link_to navigation.display_name_text, '#', class: 'link--no-underline' %>
3
+ <ul class="submenu menu vertical">
4
+ <%= navigation.sign_out_link %>
5
+ </ul>
6
+ </li>
@@ -4,6 +4,7 @@ require 'foundation-rails'
4
4
  require 'browser'
5
5
  require 'breadcrumbs_on_rails'
6
6
  require 'redis-rails'
7
+ require 'ama_layout/ama_layout_view'
7
8
  require 'ama_layout/draper_replacement'
8
9
  require 'ama_layout/breadcrumb_builder'
9
10
  require 'ama_layout/moneris'
@@ -21,11 +22,12 @@ require 'ama_layout/decorators/notification_decorator'
21
22
  require 'ama_layout/notification_scrubber'
22
23
  require 'ama_layout/notification_set'
23
24
  require 'ama_layout/notifications'
25
+ require 'ama_layout/agent/navigation'
26
+ require 'ama_layout/decorators/agent/navigation_decorator'
24
27
 
25
28
  module AmaLayout
26
29
  class Engine < Rails::Engine
27
30
  initializer('ama_layout') do
28
- Rails.configuration.view_paths = File.join(self.root, 'app', 'views')
29
31
  I18n.load_path << File.join(self.root, 'app', 'config', 'locales', 'en.yml')
30
32
  ::ActionController::Base.send :include, AmaLayout::ActionController
31
33
  end
@@ -0,0 +1,36 @@
1
+ module AmaLayout
2
+ module Agent
3
+ class Navigation
4
+ include ActiveModel::Model
5
+
6
+ def decorate
7
+ AmaLayout::Agent::NavigationDecorator.new(self)
8
+ end
9
+
10
+ attr_accessor :user, :current_url, :nav_file_path, :display_name
11
+
12
+ def initialize(args = {})
13
+ args = defaults.merge args
14
+ super
15
+ end
16
+
17
+ def items
18
+ navigation_items.map do |n|
19
+ NavigationItem.new n.merge({ current_url: current_url})
20
+ end
21
+ end
22
+
23
+ def navigation_items
24
+ YAML.load ERB.new(File.read nav_file_path).result
25
+ end
26
+
27
+ private
28
+
29
+ def defaults
30
+ {
31
+ nav_file_path: File.join(Gem.loaded_specs["ama_layout"].full_gem_path, "lib", "ama_layout", "agent_navigation.yml")
32
+ }
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,14 @@
1
+ - text: "Customer Lookup"
2
+ link: ""
3
+ icon: ""
4
+ - text: "Driver Education"
5
+ link: ""
6
+ icon: "fa-car"
7
+ sub_nav:
8
+ - text: "Purchase Course"
9
+ link: ""
10
+ - text: "Admin Tasks"
11
+ link: ""
12
+ - text: "Cashout"
13
+ link: ""
14
+ icon: ""
@@ -0,0 +1,16 @@
1
+ module AmaLayout
2
+ class AmaLayoutView < ActionView::Base
3
+ attr_accessor :view_data
4
+
5
+ def initialize(args)
6
+ self.view_data = args[:view_data]
7
+ controller = view_data.try(:controller) || ::ApplicationController.new
8
+ context = controller.view_paths
9
+ super(context, {}, controller)
10
+ end
11
+
12
+ def method_missing(method, *args, &block)
13
+ view_data.send(method, *args, &block)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,35 @@
1
+ module AmaLayout
2
+ module Agent
3
+ class NavigationDecorator
4
+ include AmaLayout::DraperReplacement
5
+ extend AmaLayout::DraperReplacement
6
+
7
+ def items
8
+ object.items.map(&:decorate)
9
+ end
10
+
11
+ def display_name_text
12
+ "Welcome, #{display_name.titleize}#{cash_drawer_name}"
13
+ end
14
+
15
+ def sign_out_link
16
+ return "" unless user
17
+ h.render partial: "ama_layout/sign_out_link"
18
+ end
19
+
20
+ def top_nav
21
+ return "" unless user
22
+ h.render partial: "ama_layout/agent/top_nav", locals: { navigation: self }
23
+ end
24
+
25
+ def sidebar
26
+ return "" unless user
27
+ h.render partial: "ama_layout/sidebar", locals: { navigation: self }
28
+ end
29
+
30
+ def cash_drawer_name
31
+ user.cash_drawers.any? ? " - #{user.cash_drawers.last.name}" : ''
32
+ end
33
+ end
34
+ end
35
+ end
@@ -28,8 +28,8 @@ module AmaLayout
28
28
  display_name.present? ? "Welcome, #{display_name.titleize}" : email
29
29
  end
30
30
 
31
- def account_toggle
32
- h.render partial: "account_toggle"
31
+ def account_toggle(view_data = {})
32
+ h(view_data).render partial: "account_toggle"
33
33
  end
34
34
 
35
35
  def notifications
@@ -1,9 +1,9 @@
1
1
  module AmaLayout
2
2
  module DraperReplacement
3
- attr_accessor :object
3
+ attr_accessor :object, :controller
4
4
 
5
- def h
6
- ActionView::Base.new(::ActionController::Base.view_paths, {}, ::ApplicationController.new)
5
+ def h(view_data = {})
6
+ AmaLayoutView.new(view_data: view_data)
7
7
  end
8
8
 
9
9
  def initialize(args = {})
@@ -1,3 +1,3 @@
1
1
  module AmaLayout
2
- VERSION = '7.0.pre'
2
+ VERSION = '7.0.1'
3
3
  end
@@ -0,0 +1,85 @@
1
+ describe AmaLayout::Agent::Navigation do
2
+ describe "#nav_file_path" do
3
+ let(:file_path) { File.join(Gem.loaded_specs["ama_layout"].full_gem_path, "lib", "ama_layout", "agent_navigation.yml") }
4
+
5
+ it "defaults to lib/ama_layout/agent_navigation.yml" do
6
+ expect(subject.nav_file_path).to eq file_path
7
+ end
8
+
9
+ context "overridden file path" do
10
+ let(:file_path) do
11
+ File.join(Gem.loaded_specs["ama_layout"].full_gem_path, "spec", "ama_layout", "fixtures", "agent_navigation.yml")
12
+ end
13
+ let(:user) { double("user") }
14
+ let(:subject) { described_class.new(user: user, nav_file_path: file_path, current_url: '/') }
15
+
16
+ it "uses the overridden file path" do
17
+ expect(subject.items.first.text).to eq "Waffles"
18
+ end
19
+ end
20
+ end
21
+
22
+ describe "#items" do
23
+ it "does not remove nil #navigation_items" do
24
+ expect(subject.items.collect(&:alt)).to include nil
25
+ end
26
+
27
+ it "displays links" do
28
+ expect(subject.items.collect(&:link)).to eq subject.navigation_items.collect {|i| i["link"] }
29
+ end
30
+
31
+ it "contains text" do
32
+ expect(subject.items.collect(&:text)).to eq subject.navigation_items.collect {|i| i["text"] }
33
+ end
34
+
35
+ it "contains icons" do
36
+ expect(subject.items.collect(&:icon)).to eq subject.navigation_items.collect {|i| i["icon"] }
37
+ end
38
+
39
+ it "contains alt text" do
40
+ expect(subject.items.collect(&:alt)).to eq subject.navigation_items.collect {|i| i["alt"] }
41
+ end
42
+
43
+ context "customer lookup" do
44
+ context "main nav" do
45
+ it "return the main nav items" do
46
+ expect(subject.items[0].text).to eq "Customer Lookup"
47
+ expect(subject.items[0].link).to eq ""
48
+ expect(subject.items[0].icon).to eq ""
49
+ end
50
+ end
51
+ end
52
+
53
+ context "driver education" do
54
+ context "main nav" do
55
+ it "return the main nav items" do
56
+ expect(subject.items[1].text).to eq "Driver Education"
57
+ expect(subject.items[1].link).to eq ""
58
+ expect(subject.items[1].icon).to eq "fa-car"
59
+ end
60
+ end
61
+
62
+ context "subnavs" do
63
+ let(:driver_education_subnav) { subject.items[1].sub_nav }
64
+
65
+ it "return the subnav items" do
66
+ expect(driver_education_subnav[0].text).to eq "Purchase Course"
67
+ expect(driver_education_subnav[0].link).to eq ""
68
+
69
+ expect(driver_education_subnav[1].text).to eq "Admin Tasks"
70
+ expect(driver_education_subnav[1].link).to eq ""
71
+ end
72
+ end
73
+ end
74
+
75
+ context "cashout" do
76
+ context "main nav" do
77
+ it "return the main nav items" do
78
+ expect(subject.items[2].text).to eq "Cashout"
79
+ expect(subject.items[2].link).to eq ""
80
+ expect(subject.items[2].icon).to eq ""
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,85 @@
1
+ describe AmaLayout::Agent::NavigationDecorator do
2
+ let(:name) { "John D" }
3
+ let(:cash_drawer) { OpenStruct.new(name: 'Edmonton Main') }
4
+ let(:user) { OpenStruct.new(email: 'john.doe@test.com', cash_drawers: [cash_drawer]) }
5
+ let(:navigation) { FactoryGirl.build(:agent_navigation, user: user, display_name: name) }
6
+ let(:navigation_presenter) { navigation.decorate }
7
+
8
+ describe "#display_name_text" do
9
+ context "user does have a cash drawer" do
10
+ it "is part of the welcome message" do
11
+ expect(navigation_presenter.display_name_text).to eq "Welcome, John D - Edmonton Main"
12
+ end
13
+
14
+ context "the user does not have a cash drawer" do
15
+ let(:cash_drawer) { nil }
16
+ it "is not part of the welcome message" do
17
+ expect(navigation_presenter.display_name_text).to eq "Welcome, John D"
18
+ end
19
+ end
20
+ end
21
+ end
22
+
23
+ describe "#items" do
24
+ it "returns an array of navigation items" do
25
+ expect(navigation_presenter.items).to be_an Array
26
+ end
27
+
28
+ it "array contains decorated navigation items" do
29
+ items = navigation_presenter.items
30
+ items.each do |i|
31
+ expect(i).to be_a AmaLayout::NavigationItemDecorator
32
+ end
33
+ end
34
+ end
35
+
36
+ describe "#sign_out_link" do
37
+ context "with user" do
38
+ it "returns link" do
39
+ expect(navigation_presenter.sign_out_link).to include "Sign Out"
40
+ end
41
+ end
42
+
43
+ context "without user" do
44
+ let(:user) { nil }
45
+
46
+ it "does not return the link" do
47
+ expect(navigation_presenter.sign_out_link).to eq ""
48
+ end
49
+ end
50
+ end
51
+
52
+ describe "#top_nav" do
53
+ context "with user" do
54
+ it "renders the partial" do
55
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
56
+ expect(navigation_presenter.top_nav).to eq "render"
57
+ end
58
+ end
59
+
60
+ context "without user" do
61
+ let(:user) { nil }
62
+
63
+ it "does not renders the partial" do
64
+ expect(navigation_presenter.top_nav).to eq ''
65
+ end
66
+ end
67
+ end
68
+
69
+ describe "#sidebar" do
70
+ context "with user" do
71
+ it "renders the partial" do
72
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
73
+ expect(navigation_presenter.sidebar).to eq "render"
74
+ end
75
+ end
76
+
77
+ context "without user" do
78
+ let(:user) { nil }
79
+
80
+ it "does not renders the partial" do
81
+ expect(navigation_presenter.sidebar).to eq ''
82
+ end
83
+ end
84
+ end
85
+ end
@@ -94,9 +94,8 @@ describe AmaLayout::NavigationDecorator do
94
94
  context "with items" do
95
95
  it "renders the partial" do
96
96
  allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
97
- allow(Rails.configuration).to receive(:amaabca_site).and_return("amaabca.example.com")
98
- allow(navigation_presenter).to receive(:sign_out_link).and_return("sign_out_link")
99
- expect(navigation_presenter.top_nav).to include("AMA Road Reports", "http://auth.waffles.ca")
97
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
98
+ expect(navigation_presenter.top_nav).to eq "render"
100
99
  end
101
100
  end
102
101
 
@@ -111,7 +110,8 @@ describe AmaLayout::NavigationDecorator do
111
110
  context "with items" do
112
111
  it "renders the partial" do
113
112
  allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
114
- expect(navigation_presenter.sidebar).to include("Online Account", "Membership Overview", "Rewards Overview")
113
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
114
+ expect(navigation_presenter.sidebar).to eq "render"
115
115
  end
116
116
  end
117
117
 
@@ -125,7 +125,22 @@ describe AmaLayout::NavigationDecorator do
125
125
  context "account toggle" do
126
126
  it "in ama_layout it renders a blank partial" do
127
127
  allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
128
- expect(navigation_presenter.account_toggle).to eq ""
128
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
129
+ expect(navigation_presenter.account_toggle).to eq "render"
130
+ end
131
+
132
+ it "in ama_layout it renders a blank partial" do
133
+ allow_any_instance_of(AmaLayout::Navigation).to receive(:user).and_return(OpenStruct.new(navigation: "member"))
134
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
135
+ expect(navigation_presenter.account_toggle).to eq "render"
136
+ end
137
+ end
138
+
139
+ describe "ama layout view" do
140
+ context "needed to allow rendering based on the view main app" do
141
+ it "attaches additional methods to current decorator - draper is capable of the same thing" do
142
+ expect(navigation_presenter.h(Helpers::AttachMethodsSample.new).additional_info).to eq "Bruce Wayne"
143
+ end
129
144
  end
130
145
  end
131
146
 
@@ -39,7 +39,8 @@ describe AmaLayout::NavigationItemDecorator do
39
39
  context "with items" do
40
40
  it "renders the partial" do
41
41
  navigation_item.sub_nav = items
42
- expect(navigation_item_presenter.top_sub_nav).to include("Othersite Overview", "http://othersite.com")
42
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
43
+ expect(navigation_item_presenter.top_sub_nav).to eq "render"
43
44
  end
44
45
  end
45
46
 
@@ -54,7 +55,8 @@ describe AmaLayout::NavigationItemDecorator do
54
55
  context "with items" do
55
56
  it "renders the partial" do
56
57
  navigation_item.sub_nav = items
57
- expect(navigation_item_presenter.sidebar_sub_nav).to include(">Othersite Overview", "http://othersite.com")
58
+ allow_any_instance_of(AmaLayout::AmaLayoutView).to receive(:render).and_return "render"
59
+ expect(navigation_item_presenter.sidebar_sub_nav).to eq "render"
58
60
  end
59
61
  end
60
62
 
@@ -0,0 +1,3 @@
1
+ - text: "Waffles"
2
+ link: ""
3
+ icon: ""
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :agent_navigation, class: AmaLayout::Agent::Navigation do
3
+ current_url "http://waffleemporium.ca"
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ module Helpers
2
+ class AttachMethodsSample
3
+ def additional_info
4
+ "Bruce Wayne"
5
+ end
6
+ end
7
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ama_layout
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.pre
4
+ version: 7.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael van den Beuken
@@ -18,7 +18,7 @@ authors:
18
18
  autorequire:
19
19
  bindir: bin
20
20
  cert_chain: []
21
- date: 2017-08-15 00:00:00.000000000 Z
21
+ date: 2017-08-30 00:00:00.000000000 Z
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency
24
24
  name: foundation-rails
@@ -66,16 +66,16 @@ dependencies:
66
66
  name: breadcrumbs_on_rails
67
67
  requirement: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - "~>"
69
+ - - ">="
70
70
  - !ruby/object:Gem::Version
71
- version: 3.0.1
71
+ version: '3'
72
72
  type: :runtime
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - "~>"
76
+ - - ">="
77
77
  - !ruby/object:Gem::Version
78
- version: 3.0.1
78
+ version: '3'
79
79
  - !ruby/object:Gem::Dependency
80
80
  name: redis-rails
81
81
  requirement: !ruby/object:Gem::Requirement
@@ -287,11 +287,18 @@ files:
287
287
  - app/views/ama_layout/_top_nav.html.erb
288
288
  - app/views/ama_layout/_top_sub_nav.html.erb
289
289
  - app/views/ama_layout/_top_sub_nav_item.html.erb
290
+ - app/views/ama_layout/agent/_sidebar.html.erb
291
+ - app/views/ama_layout/agent/_siteheader.html.erb
292
+ - app/views/ama_layout/agent/_top_nav.html.erb
290
293
  - app/views/application/_account_toggle.html.erb
291
294
  - config/routes.rb
292
295
  - lib/ama_layout.rb
296
+ - lib/ama_layout/agent/navigation.rb
297
+ - lib/ama_layout/agent_navigation.yml
298
+ - lib/ama_layout/ama_layout_view.rb
293
299
  - lib/ama_layout/breadcrumb_builder.rb
294
300
  - lib/ama_layout/controllers/action_controller.rb
301
+ - lib/ama_layout/decorators/agent/navigation_decorator.rb
295
302
  - lib/ama_layout/decorators/moneris_decorator.rb
296
303
  - lib/ama_layout/decorators/navigation_decorator.rb
297
304
  - lib/ama_layout/decorators/navigation_item_decorator.rb
@@ -310,13 +317,16 @@ files:
310
317
  - lib/ama_layout/notifications/abstract_store.rb
311
318
  - lib/ama_layout/notifications/redis_store.rb
312
319
  - lib/ama_layout/version.rb
320
+ - spec/agent/navigation_spec.rb
313
321
  - spec/ama_layout/breadcrumb_builder_spec.rb
314
322
  - spec/ama_layout/controllers/ama_layout/api/v1/notifications_controller_spec.rb
315
323
  - spec/ama_layout/controllers/pages_controller_spec.rb
324
+ - spec/ama_layout/decorators/agent/navigation_decorator_spec.rb
316
325
  - spec/ama_layout/decorators/moneris_decorator_spec.rb
317
326
  - spec/ama_layout/decorators/navigation_decorator_spec.rb
318
327
  - spec/ama_layout/decorators/navigation_item_decorator_spec.rb
319
328
  - spec/ama_layout/decorators/notification_decorator_spec.rb
329
+ - spec/ama_layout/fixtures/agent_navigation.yml
320
330
  - spec/ama_layout/fixtures/navigation.yml
321
331
  - spec/ama_layout/fixtures/real_date_picker.html
322
332
  - spec/ama_layout/javascripts/real_date_picker_spec.coffee
@@ -330,6 +340,7 @@ files:
330
340
  - spec/ama_layout/notifications/abstract_store_spec.rb
331
341
  - spec/ama_layout/notifications/redis_store_spec.rb
332
342
  - spec/ama_layout/notifications_spec.rb
343
+ - spec/factories/agent_navigation.rb
333
344
  - spec/factories/navigation.rb
334
345
  - spec/factories/navigation_item.rb
335
346
  - spec/factories/users.rb
@@ -344,6 +355,7 @@ files:
344
355
  - spec/internal/log/.gitignore
345
356
  - spec/internal/public/favicon.ico
346
357
  - spec/spec_helper.rb
358
+ - spec/support/helpers/attach_methods_sample.rb
347
359
  - spec/support/shared_examples/member_navigation.rb
348
360
  homepage: https://github.com/amaabca/ama_layout
349
361
  licenses:
@@ -360,9 +372,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
360
372
  version: '0'
361
373
  required_rubygems_version: !ruby/object:Gem::Requirement
362
374
  requirements:
363
- - - ">"
375
+ - - ">="
364
376
  - !ruby/object:Gem::Version
365
- version: 1.3.1
377
+ version: '0'
366
378
  requirements: []
367
379
  rubyforge_project:
368
380
  rubygems_version: 2.5.1
@@ -370,13 +382,16 @@ signing_key:
370
382
  specification_version: 4
371
383
  summary: ".ama.ab.ca site layouts"
372
384
  test_files:
385
+ - spec/agent/navigation_spec.rb
373
386
  - spec/ama_layout/breadcrumb_builder_spec.rb
374
387
  - spec/ama_layout/controllers/ama_layout/api/v1/notifications_controller_spec.rb
375
388
  - spec/ama_layout/controllers/pages_controller_spec.rb
389
+ - spec/ama_layout/decorators/agent/navigation_decorator_spec.rb
376
390
  - spec/ama_layout/decorators/moneris_decorator_spec.rb
377
391
  - spec/ama_layout/decorators/navigation_decorator_spec.rb
378
392
  - spec/ama_layout/decorators/navigation_item_decorator_spec.rb
379
393
  - spec/ama_layout/decorators/notification_decorator_spec.rb
394
+ - spec/ama_layout/fixtures/agent_navigation.yml
380
395
  - spec/ama_layout/fixtures/navigation.yml
381
396
  - spec/ama_layout/fixtures/real_date_picker.html
382
397
  - spec/ama_layout/javascripts/real_date_picker_spec.coffee
@@ -390,6 +405,7 @@ test_files:
390
405
  - spec/ama_layout/notifications/abstract_store_spec.rb
391
406
  - spec/ama_layout/notifications/redis_store_spec.rb
392
407
  - spec/ama_layout/notifications_spec.rb
408
+ - spec/factories/agent_navigation.rb
393
409
  - spec/factories/navigation.rb
394
410
  - spec/factories/navigation_item.rb
395
411
  - spec/factories/users.rb
@@ -404,4 +420,5 @@ test_files:
404
420
  - spec/internal/log/.gitignore
405
421
  - spec/internal/public/favicon.ico
406
422
  - spec/spec_helper.rb
423
+ - spec/support/helpers/attach_methods_sample.rb
407
424
  - spec/support/shared_examples/member_navigation.rb