hackathon-starter-ui-rails 0.0.2.1 → 0.0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: efb19bd28afe2553159117f8c10c63e530385377
4
- data.tar.gz: d5d65cc2a4c4fb6b28d5ef923f069ae86e872b8c
3
+ metadata.gz: a5b9a5b8766b4f3f66ba872e1ce8184c857231a2
4
+ data.tar.gz: a7eccf0ed6e3c875cfc5911a8a3919dc2f6fbce9
5
5
  SHA512:
6
- metadata.gz: cfadcec944294cf9910d999ca4e64f66e1e395cd23e2d3b1cb28ec70cea8433a9bc5393cee70ddffd038a7e3d5b23464edc20d3cbe38f2877ff2155d4277106c
7
- data.tar.gz: fdb4391ff8040b8ba22cd4395b0422d0ddc78d6abd4faf73b6ad90ece54e7d5b2501360bd3275f6278e66198669a2000d009eb61a303b9741eac4d3211201bc9
6
+ metadata.gz: 45a5daf5052eff3f02cd7d64de2a9b70e063a862fed51a3822979883b0ba8eb77cd9eff8cb4eb52d2aa019965a2dd94b3bc6f18cf88a0d144b3e96ec2ead09ef
7
+ data.tar.gz: 92141cfb02939d203e306f332fb42b71dea1a5bc5d8298561dd26e12b1813d750f96f512919c22c1c9809f0124ce2c396595f4906da6f70513375f48ccc8f058
@@ -2,8 +2,8 @@ module Hackathon
2
2
  module Starter
3
3
  module Ui
4
4
  module Rails
5
- VERSION = "0.0.2"
6
- PATCHLEVEL = '1'
5
+ VERSION = "0.0.3"
6
+ PATCHLEVEL = '0'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hackathon-starter-ui-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.1
4
+ version: 0.0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - steigr
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-11 00:00:00.000000000 Z
11
+ date: 2014-11-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -185,8 +185,6 @@ files:
185
185
  - app/assets/stylesheets/hackathon-starter-ui-rails/themes/default.scss
186
186
  - app/assets/stylesheets/hackathon-starter-ui-rails/themes/ios7.scss
187
187
  - app/assets/stylesheets/hackathon-starter-ui-rails/themes/modern.scss
188
- - app/controllers/concerns/hackathon_starter_helper_navigatable.rb
189
- - app/models/hackathon_starter_navigator.rb
190
188
  - lib/hackathon-starter-ui-rails.rb
191
189
  - lib/hackathon/starter/ui/rails.rb
192
190
  - lib/hackathon/starter/ui/rails/engine.rb
@@ -1,24 +0,0 @@
1
- module Hackathon
2
- module Starter
3
- module Helper
4
- module Navigatable
5
- extend ActiveSupport::Concern
6
- included do
7
- Rails.logger.info "Naviation for #{name}"
8
- class_attribute :navigatable
9
- class_attribute :navigation
10
- self.navigatable = true
11
- self.navigation = Hackathon::Starter::Navigator.instance
12
- end
13
- # module ClassMethods
14
- # def navigation_item position, path='#', label=nil
15
- # Hackathon::Starter::Navigator.instance.add << {position: position, path: path, label: label}
16
- # end
17
- # def navigation_items
18
- # Hackathon::Starter::Navigator.instance.all
19
- # end
20
- # end
21
- end
22
- end
23
- end
24
- end
@@ -1,118 +0,0 @@
1
- require 'singleton'
2
-
3
- module Hackathon
4
- module Starter
5
- class MenuItem
6
- include ActiveModel::Model
7
- attr_accessor :position
8
- attr_accessor :label
9
- attr_accessor :path
10
- attr_accessor :parent
11
- attr_accessor :children
12
- def initialize params={}
13
- @children ||= {}
14
- end
15
- def add item
16
- if MenuItem.tail(item.position) == ''
17
- @children[item.position] = item
18
- else
19
- head = MenuItem.head item.position
20
- tail = MenuItem.tail item.position
21
- item.position = tail
22
- @children[head] = MenuItem.new unless @children[head]
23
- @children[head].add item
24
- end
25
- end
26
- def draw root=false
27
- output = []
28
- if root
29
- output << "<div class='navbar navbar-default navbar-fixed-top' role='navigation'>"
30
- output << "<div class='container'>"
31
- output << "<div class='navbar-header'>"
32
- output << "<button class='navbar-toggle' type='button' data-toggle='collapse' data-target='.navbar-collapse'>"
33
- output << "<span class='sr-only'>Toggle Navigation</span>"
34
- output << "<span class='icon-bar'></span>"
35
- output << "<span class='icon-bar'></span>"
36
- output << "<span class='icon-bar'></span>"
37
- output << "</button>"
38
- url = Rails.application.routes.url_helpers.send((path.to_s + "_path").to_sym)
39
- output << "<a href='#{url}' class='navbar-brand'>"
40
- output << label
41
- output << "</a>"
42
- output << "</div>"
43
- output << "<div class='collapse navbar-collapse'>"
44
- output << "<ul class='nav navbar-nav'>"
45
- @children.each do |label,child|
46
- output << child.draw
47
- end
48
- output << "</ul>"
49
- output << "</div>"
50
- output << "</div>"
51
- output << "</div>"
52
- else
53
- url = Rails.application.routes.url_helpers.send((path.to_s + "_path").to_sym) rescue path
54
- if @children.count > 0
55
- output << "<li class='dropdown'>"
56
- output << "<a href='#{url}' data-toggle='dropdown'>"
57
- output << "#{label}<span class='caret'></span>"
58
- output << "</a>"
59
- output << "<ul class='dropdown-menu' role='menu'>"
60
- @children.each do |label,child|
61
- output << child.draw
62
- end
63
- output << "</ul>"
64
- output << "</li>"
65
- else
66
- output << "<li>"
67
- output << "<a href='#{url}'>#{@label}</a>"
68
- output << "</li>"
69
- end
70
- end
71
- output.join
72
- end
73
- def to_s
74
- "Item(#{@position}): #{label} -> #{path}"
75
- end
76
- class << self
77
- def head position
78
- return position.split('/').first if position
79
- nil
80
- end
81
- def tail position
82
- return position.split('/')[1..-1].join('/') if position
83
- nil
84
- end
85
- end
86
- end
87
- class Navigator
88
- include Singleton
89
- attr_accessor :menu
90
- def add *params
91
- position = params.first
92
- if params.last.class == Hash
93
- path = params.last[:path]
94
- label = params.last[:label]
95
- else
96
- path = params[1]
97
- label = params[2]
98
- end
99
- path ||= '#'
100
- @menu ||= MenuItem.new
101
- unless position
102
- @menu.position ||= position
103
- @menu.path ||= path
104
- @menu.label ||= label
105
- else
106
- item = MenuItem.new
107
- item.position = position
108
- item.path = path
109
- item.label = label
110
- @menu.add item
111
- end
112
- end
113
- def draw
114
- @menu.draw(root: true).html_safe
115
- end
116
- end
117
- end
118
- end