ui_bibz 1.2.1 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +8 -8
  2. data/.yardoc/checksums +16 -16
  3. data/.yardoc/object_types +0 -0
  4. data/.yardoc/objects/root.dat +0 -0
  5. data/Gemfile.lock +3 -3
  6. data/README.md +46 -45
  7. data/app/assets/javascripts/ui_bibz.js.coffee +4 -0
  8. data/doc/UiBibz/Concerns/Models/Searchable/ClassMethods.html +4 -4
  9. data/doc/UiBibz/Concerns/Models/Searchable.html +1 -1
  10. data/doc/UiBibz/Concerns/Models.html +1 -1
  11. data/doc/UiBibz/Concerns.html +1 -1
  12. data/doc/UiBibz/Helpers/MetaHelper.html +1 -1
  13. data/doc/UiBibz/Helpers/UiCoreHelper.html +1 -1
  14. data/doc/UiBibz/Helpers/UiUxHelper.html +1 -1
  15. data/doc/UiBibz/Helpers/UtilsHelper.html +1 -1
  16. data/doc/UiBibz/Helpers.html +1 -1
  17. data/doc/UiBibz/Rails/Engine.html +1 -1
  18. data/doc/UiBibz/Rails.html +1 -1
  19. data/doc/UiBibz/Ui/Base.html +1 -1
  20. data/doc/UiBibz/Ui/Core/Alert.html +1 -1
  21. data/doc/UiBibz/Ui/Core/Bar.html +1 -1
  22. data/doc/UiBibz/Ui/Core/Breadcrumb.html +1 -1
  23. data/doc/UiBibz/Ui/Core/BreadcrumbLink.html +1 -1
  24. data/doc/UiBibz/Ui/Core/Button.html +1 -1
  25. data/doc/UiBibz/Ui/Core/ButtonDropdown.html +1 -1
  26. data/doc/UiBibz/Ui/Core/ButtonGroup.html +1 -1
  27. data/doc/UiBibz/Ui/Core/ButtonLink.html +1 -1
  28. data/doc/UiBibz/Ui/Core/ButtonSplitDropdown.html +1 -1
  29. data/doc/UiBibz/Ui/Core/Col.html +1 -1
  30. data/doc/UiBibz/Ui/Core/Component.html +1 -1
  31. data/doc/UiBibz/Ui/Core/Dropdown.html +1 -1
  32. data/doc/UiBibz/Ui/Core/DropdownDivider.html +1 -1
  33. data/doc/UiBibz/Ui/Core/DropdownHeader.html +1 -1
  34. data/doc/UiBibz/Ui/Core/DropdownLink.html +1 -1
  35. data/doc/UiBibz/Ui/Core/Glyph.html +1 -1
  36. data/doc/UiBibz/Ui/Core/Jumbotron.html +1 -1
  37. data/doc/UiBibz/Ui/Core/Label.html +1 -1
  38. data/doc/UiBibz/Ui/Core/List.html +1 -1
  39. data/doc/UiBibz/Ui/Core/ListGroup.html +1 -1
  40. data/doc/UiBibz/Ui/Core/Modal.html +1 -1
  41. data/doc/UiBibz/Ui/Core/ModalBody.html +1 -1
  42. data/doc/UiBibz/Ui/Core/ModalFooter.html +1 -1
  43. data/doc/UiBibz/Ui/Core/ModalHeader.html +1 -1
  44. data/doc/UiBibz/Ui/Core/Nav.html +1 -1
  45. data/doc/UiBibz/Ui/Core/NavDropdown.html +1 -1
  46. data/doc/UiBibz/Ui/Core/NavLink.html +1 -1
  47. data/doc/UiBibz/Ui/Core/Navbar.html +1 -1
  48. data/doc/UiBibz/Ui/Core/NavbarForm.html +1 -1
  49. data/doc/UiBibz/Ui/Core/NavbarNav.html +1 -1
  50. data/doc/UiBibz/Ui/Core/NavbarText.html +1 -1
  51. data/doc/UiBibz/Ui/Core/Panel.html +23 -17
  52. data/doc/UiBibz/Ui/Core/ProgressBar.html +1 -1
  53. data/doc/UiBibz/Ui/Core/Row.html +1 -1
  54. data/doc/UiBibz/Ui/Core/Stars.html +1 -1
  55. data/doc/UiBibz/Ui/Core.html +2 -2
  56. data/doc/UiBibz/Ui/Ux/Actionable.html +1 -1
  57. data/doc/UiBibz/Ui/Ux/Actions.html +1 -1
  58. data/doc/UiBibz/Ui/Ux/Column.html +1 -1
  59. data/doc/UiBibz/Ui/Ux/Columns.html +1 -1
  60. data/doc/UiBibz/Ui/Ux/Grid.html +1 -1
  61. data/doc/UiBibz/Ui/Ux/Paginable.html +1 -1
  62. data/doc/UiBibz/Ui/Ux/Searchable.html +1 -1
  63. data/doc/UiBibz/Ui/Ux/Sortable.html +1 -1
  64. data/doc/UiBibz/Ui/Ux/Store.html +61 -9
  65. data/doc/UiBibz/Ui/Ux/Table.html +1 -1
  66. data/doc/UiBibz/Ui/Ux/TablePagination.html +3 -5
  67. data/doc/UiBibz/Ui/Ux/TablePaginationPerPage.html +1 -1
  68. data/doc/UiBibz/Ui/Ux/TablePanel.html +1 -1
  69. data/doc/UiBibz/Ui/Ux/TableSearchField.html +1 -1
  70. data/doc/UiBibz/Ui/Ux.html +2 -2
  71. data/doc/UiBibz/Ui.html +1 -1
  72. data/doc/UiBibz/Utils/Internationalization.html +1 -1
  73. data/doc/UiBibz/Utils.html +1 -1
  74. data/doc/UiBibz.html +2 -2
  75. data/doc/_index.html +5 -5
  76. data/doc/file.README.html +47 -46
  77. data/doc/index.html +47 -46
  78. data/doc/method_list.html +249 -243
  79. data/doc/top-level-namespace.html +1 -1
  80. data/lib/ui_bibz/concerns/models/searchable.rb +1 -0
  81. data/lib/ui_bibz/ui/core/nav/components/nav_link.rb +1 -1
  82. data/lib/ui_bibz/ui/core/panel.rb +8 -1
  83. data/lib/ui_bibz/ui/ux/table/components/store.rb +4 -0
  84. data/lib/ui_bibz/ui/ux/table/table_pagination.rb +1 -2
  85. data/lib/ui_bibz/ui/ux/table/table_pagination_per_page.rb +7 -0
  86. data/lib/ui_bibz/ui/ux/table/table_search_field.rb +9 -1
  87. data/lib/ui_bibz/version.rb +1 -1
  88. data/test/ui/nav_test.rb +2 -1
  89. data/test/ui/table_test.rb +2 -2
  90. metadata +2 -2
@@ -103,7 +103,7 @@
103
103
  </div>
104
104
 
105
105
  <div id="footer">
106
- Generated on Thu Sep 24 16:49:47 2015 by
106
+ Generated on Fri Oct 2 15:02:51 2015 by
107
107
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
108
108
  0.8.7.6 (ruby-1.9.3).
109
109
  </div>
@@ -18,6 +18,7 @@ module UiBibz::Concerns::Models::Searchable
18
18
  {
19
19
  controller: @params[:controller],
20
20
  param_id: @params[:id],
21
+ params: @params,
21
22
  direction: @params[:direction],
22
23
  search: @params[:search],
23
24
  sort: @params[:sort],
@@ -60,7 +60,7 @@ module UiBibz::Ui::Core
60
60
 
61
61
  def link_html_options
62
62
  lho = @options[:link_html_options] || {}
63
- if @options[:nav_type] == :tabs
63
+ if @options[:nav_type] == "nav-tabs"
64
64
  lho.merge({ "aria-controls" => @options[:selector], "role" => "tab", "data-toggle" => "tab" })
65
65
  else
66
66
  lho
@@ -17,6 +17,7 @@ module UiBibz::Ui::Core
17
17
  # You can pass arguments in options attribute:
18
18
  # * +state+ - State of élement with symbol value:
19
19
  # (+:default+, +:primary+, +:info+, +:warning+, +:danger+)
20
+ # * +tab+ - String | To link with the component nav
20
21
  #
21
22
  # ==== Signatures
22
23
  #
@@ -100,7 +101,9 @@ module UiBibz::Ui::Core
100
101
 
101
102
  # Render html tag
102
103
  def render
103
- content_tag :div, class_and_html_options("panel") do
104
+ @html_options[:id] = @options[:tab] unless @options[:tab].nil?
105
+
106
+ content_tag :div, class_and_html_options(["panel", tab_pane]) do
104
107
  concat(header_html) unless @header.nil?
105
108
  concat(body_html) if !@body.nil? || !@content.nil?
106
109
  concat(footer_html) unless @footer.nil?
@@ -127,5 +130,9 @@ module UiBibz::Ui::Core
127
130
  content_tag :div, @footer.render, @footer.class_and_html_options("panel-footer")
128
131
  end
129
132
 
133
+ def tab_pane
134
+ "tab-pane" if @options[:tab]
135
+ end
136
+
130
137
  end
131
138
  end
@@ -68,6 +68,10 @@ module UiBibz::Ui::Ux
68
68
  @store.controller
69
69
  end
70
70
 
71
+ def parameters
72
+ @store.try(:params) || {}
73
+ end
74
+
71
75
  def action
72
76
  @store.action
73
77
  end
@@ -35,8 +35,7 @@ module UiBibz::Ui::Ux
35
35
 
36
36
  # Render html tag with boostrap pagination theme
37
37
  def render
38
- paginate_parameters = { controller: store.controller }
39
- paginate_parameters = paginate_parameters.merge({ store_id: store.id }) unless store.id.nil?
38
+ paginate_parameters = { controller: store.controller }.merge(store.parameters)
40
39
  will_paginate(store.records, params: paginate_parameters, renderer: BootstrapPagination::Rails)
41
40
  end
42
41
 
@@ -62,6 +62,9 @@ module UiBibz::Ui::Ux
62
62
  content_tag :div, class: 'table-pagination-per-page' do
63
63
  concat results_count_html
64
64
  concat UiBibz::Utils::Internationalization.new("ui_bibz.table.pagination.per_page", default: "Per page: ").translate
65
+ store.parameters.each do |k,v|
66
+ concat tag(:input, type: 'hidden', name: k, value: v) unless default_parameters?(k)
67
+ end
65
68
  concat select_tag('per_page', options_for_select([5, 10, 20, 30, 50, 100, 200, 500], store.per_page), class: 'form-control')
66
69
  concat tag(:input, type: 'hidden', name: 'store_id', value: store.id) unless store.id.nil? # If there is more 1 table in html page
67
70
  end
@@ -79,5 +82,9 @@ module UiBibz::Ui::Ux
79
82
  store.limit_value * store.current_page
80
83
  end
81
84
 
85
+ def default_parameters?(k)
86
+ %w(store_id search controller action utf8).include?(k)
87
+ end
88
+
82
89
  end
83
90
  end
@@ -21,7 +21,8 @@ module UiBibz::Ui::Ux
21
21
  private
22
22
 
23
23
  def url_parameters
24
- { controller: store.controller, action: store.action, id: store.param_id }
24
+ #{ controller: store.controller, action: store.action, id: store.param_id }
25
+ store.parameters
25
26
  end
26
27
 
27
28
  # Store must be generated by *table_search_pagination* method
@@ -38,6 +39,9 @@ module UiBibz::Ui::Ux
38
39
  def search_field_html
39
40
  content_tag :div, @search_field.class_and_html_options(div_class) do
40
41
  concat content_tag(:span, UiBibz::Ui::Core::Glyph.new('search').render, class: 'input-group-addon')
42
+ store.parameters.each do |k,v|
43
+ concat tag(:input, type: 'hidden', name: k, value: v) unless default_parameters?(k)
44
+ end
41
45
  concat tag(:input, type: 'hidden', name: 'store_id', value: store.id) unless store.id.nil? # if there is more one table in html page
42
46
  concat tag(:input, type: 'search', value: store.search, name: 'search', class: 'form-control', placeholder: search_placeholder_field)
43
47
  concat content_tag(:span, UiBibz::Ui::Core::Glyph.new('times-circle').render, class: 'clear-search-btn input-group-addon')
@@ -71,5 +75,9 @@ module UiBibz::Ui::Ux
71
75
  attr.kind_of?(Hash) ? "#{ attr.keys.first }_#{ attr.values.first }".to_sym : attr
72
76
  end
73
77
 
78
+ def default_parameters?(k)
79
+ %w(store_id search controller action utf8).include?(k)
80
+ end
81
+
74
82
  end
75
83
  end
@@ -1,3 +1,3 @@
1
1
  module UiBibz
2
- VERSION = "1.2.1"
2
+ VERSION = "1.2.2"
3
3
  end
data/test/ui/nav_test.rb CHANGED
@@ -8,7 +8,8 @@ class NavTest < ActionView::TestCase
8
8
  n.link 'Profile', url: "#profile", selector: 'profile'
9
9
  n.link 'Messages', url: "#messages", selector: 'messages'
10
10
  end.render
11
- expected = "<ul class=\"nav nav-tabs\"><li class=\"active\" role=\"presentation\"><a href=\"#Home\">Home</a></li><li role=\"presentation\"><a href=\"#profile\">Profile</a></li><li role=\"presentation\"><a href=\"#messages\">Messages</a></li></ul>"
11
+ expected = "<ul class=\"nav nav-tabs\"><li class=\"active\" role=\"presentation\"><a aria-controls=\"home\" role=\"tab\" data-toggle=\"tab\" href=\"#Home\">Home</a></li><li role=\"presentation\"><a aria-controls=\"profile\" role=\"tab\" data-toggle=\"tab\" href=\"#profile\">Profile</a></li><li role=\"presentation\"><a aria-controls=\"messages\" role=\"tab\" data-toggle=\"tab\" href=\"#messages\">Messages</a></li></ul>"
12
+
12
13
  assert_equal expected, actual
13
14
  end
14
15
 
@@ -24,14 +24,14 @@ class TableTest < ActionView::TestCase
24
24
 
25
25
  test 'table search field' do
26
26
  actual = UiBibz::Ui::Ux::TableSearchField.new({ store: @users}).render
27
- expected = "<form class=\"form-table-search-field\" action=\"/users\" accept-charset=\"UTF-8\" method=\"get\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by Name fr and Name en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div></form>"
27
+ expected = "<form class=\"form-table-search-field\" action=\"/users?direction=asc&amp;page=1&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\" accept-charset=\"UTF-8\" method=\"get\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /><div class=\"input-group input-group-sm table-search-field\"><span class=\"input-group-addon\"><i class=\"glyph fa fa-search\"></i></span><input type=\"hidden\" name=\"controller\" value=\"users\" /><input type=\"hidden\" name=\"action\" value=\"index\" /><input type=\"hidden\" name=\"sort\" value=\"users.name_fr\" /><input type=\"hidden\" name=\"direction\" value=\"asc\" /><input type=\"hidden\" name=\"search\" value=\"Name fr\" /><input type=\"hidden\" name=\"per_page\" value=\"2\" /><input type=\"hidden\" name=\"page\" value=\"1\" /><input type=\"search\" value=\"Name fr\" name=\"search\" class=\"form-control\" placeholder=\"Search by Name fr and Name en...\" /><span class=\"clear-search-btn input-group-addon\"><i class=\"glyph fa fa-times-circle\"></i></span></div></form>"
28
28
 
29
29
  assert_equal expected, actual
30
30
  end
31
31
 
32
32
  test 'table pagination' do
33
33
  actual = UiBibz::Ui::Ux::TablePagination.new({ store: @users }).render
34
- expected = "<ul class=\"pagination pagination\"><li class=\"prev disabled\"><span>&#8592; Previous</span></li> <li class=\"active\"><span>1</span></li> <li><a rel=\"next\" href=\"/users?page=2\">2</a></li> <li><a href=\"/users?page=3\">3</a></li> <li><a href=\"/users?page=4\">4</a></li> <li><a href=\"/users?page=5\">5</a></li> <li><a href=\"/users?page=6\">6</a></li> <li><a href=\"/users?page=7\">7</a></li> <li><a href=\"/users?page=8\">8</a></li> <li><a href=\"/users?page=9\">9</a></li> <li class=\"disabled\"><span>&hellip;</span></li> <li><a href=\"/users?page=12\">12</a></li> <li><a href=\"/users?page=13\">13</a></li> <li class=\"next\"><a rel=\"next\" href=\"/users?page=2\">Next &#8594;</a></li></ul>"
34
+ expected = "<ul class=\"pagination pagination\"><li class=\"prev disabled\"><span>&#8592; Previous</span></li> <li class=\"active\"><span>1</span></li> <li><a rel=\"next\" href=\"/users?direction=asc&amp;page=2&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">2</a></li> <li><a href=\"/users?direction=asc&amp;page=3&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">3</a></li> <li><a href=\"/users?direction=asc&amp;page=4&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">4</a></li> <li><a href=\"/users?direction=asc&amp;page=5&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">5</a></li> <li><a href=\"/users?direction=asc&amp;page=6&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">6</a></li> <li><a href=\"/users?direction=asc&amp;page=7&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">7</a></li> <li><a href=\"/users?direction=asc&amp;page=8&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">8</a></li> <li><a href=\"/users?direction=asc&amp;page=9&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">9</a></li> <li class=\"disabled\"><span>&hellip;</span></li> <li><a href=\"/users?direction=asc&amp;page=12&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">12</a></li> <li><a href=\"/users?direction=asc&amp;page=13&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">13</a></li> <li class=\"next\"><a rel=\"next\" href=\"/users?direction=asc&amp;page=2&amp;per_page=2&amp;search=Name+fr&amp;sort=users.name_fr\">Next &#8594;</a></li></ul>"
35
35
 
36
36
  assert_equal expected, actual
37
37
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ui_bibz
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thooams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-24 00:00:00.000000000 Z
11
+ date: 2015-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails