hobo_bootstrap 2.0.0.pre3 → 2.0.0.pre4

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -15,7 +15,7 @@ Install instructions
15
15
 
16
16
  Add this to your Gemfile
17
17
 
18
- gem "hobo_bootstrap", :git => "git://github.com/suyccom/hobo_bootstrap.git"
18
+ gem "hobo_bootstrap", :git => "git://github.com/Hobo/hobo_bootstrap.git"
19
19
  gem 'will_paginate-bootstrap'
20
20
  group :assets do
21
21
  # ... Other stuff ... #
@@ -192,10 +192,10 @@ Notes
192
192
  Right now, you still need to keep "hobo_clean" in your Gemfile if you want to use the Ajax search enabled by default in Hobo.
193
193
 
194
194
 
195
- [1]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/index.png
196
- [2]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/login.png
197
- [3]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/top_menu.png
198
- [4]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/sub_menu.png
199
- [5]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/responsive.png
200
- [6]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/two_columns.png
201
- [7]: https://github.com/suyccom/hobo_bootstrap/raw/master/screenshots/three_columns_complex.png
195
+ [1]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/index.png
196
+ [2]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/login.png
197
+ [3]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/top_menu.png
198
+ [4]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/sub_menu.png
199
+ [5]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/responsive.png
200
+ [6]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/two_columns.png
201
+ [7]: https://github.com/Hobo/hobo_bootstrap/raw/master/screenshots/three_columns_complex.png
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.0.pre3
1
+ 2.0.0.pre4
@@ -6,13 +6,13 @@ Gem::Specification.new do |s|
6
6
 
7
7
  s.authors = ['Ignacio Huerta']
8
8
  s.email = 'ignacio@ihuerta.net'
9
- s.homepage = 'https://github.com/suyccom/hobo_bootstrap'
9
+ s.homepage = 'https://github.com/Hobo/hobo_bootstrap'
10
10
  s.rubyforge_project = 'hobo'
11
11
  s.summary = 'A bootstrap based theme for Hobo'
12
12
  s.description = 'A bootstrap based theme for Hobo'
13
13
 
14
14
  s.add_runtime_dependency('hobo', "~> 2.0.0.pre1")
15
- s.add_runtime_dependency('hobo_jquery_ui', ["= #{version}"])
15
+ s.add_runtime_dependency('hobo_jquery_ui', "~> 2.0.0.pre1")
16
16
  s.add_runtime_dependency "compass_twitter_bootstrap", "~> 2.0.3"
17
17
  s.add_runtime_dependency "compass-rails", "~> 1.0.3"
18
18
  s.add_runtime_dependency "will_paginate-bootstrap", "~> 0.2.1"
@@ -0,0 +1,14 @@
1
+ <!-- Renders an alert with bootstrap style
2
+
3
+ ### Attributes
4
+
5
+ - `type`: chooses which flash message to display and also the box style. The default is `notice`. `error`, `success` and `info` also have styling.
6
+ - `no-close`: if set, the alert doesn't have a close button
7
+ -->
8
+ <def tag="alert-box" attrs="type, no-close">
9
+ <% type = type ? type.to_sym : :notice -%>
10
+ <div class="alert alert-#{type}" unless="&no_close" merge-attrs>
11
+ <a class="close" data-dismiss="alert" href="#" param="close">×</a>
12
+ <span param="default"/>
13
+ </div>
14
+ </def>
@@ -0,0 +1,21 @@
1
+ <!-- Renders a localized list of error messages following a form submission. Expects the errors to be in `this.errors`. Renders nothing if there are no errors.
2
+ -->
3
+ <def tag="error-messages">
4
+ <section class="error-messages alert" merge-attrs if="&this.errors.size > 0">
5
+ <h2 param="heading">
6
+ <t key="activerecord.errors.template.header" model="&this.class.model_name.human" count="&this.errors.size">
7
+ <%= model = this.class.model_name.human
8
+ count = this.errors.size
9
+ count==1 ? "1 error prohibited this #{model} from being saved" :
10
+ "#{count} errors prohibited this #{model} from being saved"
11
+ %>
12
+ </t>
13
+ </h2>
14
+ <t key="activerecord.errors.template.body">There were problems with the following fields:</t>
15
+ <ul param class="alert-block">
16
+ <% this.errors.to_a.each do |message| -%>
17
+ <li param><%= message %></li>
18
+ <% end -%>
19
+ </ul>
20
+ </section>
21
+ </def>
@@ -3,11 +3,11 @@
3
3
  ### Attributes
4
4
 
5
5
  - `type`: chooses which flash message to display and also the box style. The default is `notice`. `error`, `success` and `info` also have styling.
6
+ - `no-close`: if set, the alert doesn't have a close button
6
7
  -->
7
8
  <def tag="flash-message" attrs="type">
8
9
  <% type = type ? type.to_sym : :notice -%>
9
- <div class="alert alert-#{type}" if="&flash[type]" merge-attrs>
10
- <a class="close" data-dismiss="alert" href="#" param="close">×</a>
11
- <span param="default"><%= flash[type] %></span>
12
- </div>
10
+ <alert-box merge type="&type" if="&flash[type]">
11
+ <%= flash[type] %>
12
+ </alert-box>
13
13
  </def>
data/taglibs/forms.dryml CHANGED
@@ -3,14 +3,23 @@
3
3
  <!--</def>-->
4
4
 
5
5
 
6
+ <%# When using field-lists, remember to add the form-horizontal class to get the bootstrap looks (this is done automatically in forms and show-page).
7
+ <div class="form-horizontal">
8
+ <field-list class="form-horizontal" with="&Project.first"/>
9
+ </div>
10
+ %>
6
11
 
12
+ <def tag="field-list">
13
+ <bootstrap-fields merge/>
14
+ </def>
7
15
 
16
+ <%# This tag adds the class 'uneditable-input' to a view. This is very useful with `<bootstrap-fields>`, which is the default `<field-list>` for hobo_bootstrap. Use like so:
8
17
 
9
18
 
10
-
11
-
12
- <def tag="field-list">
13
- <bootstrap-fields merge/>
19
+ <field-list class="form-horizontal" tag="uneditable-input">
20
+ %>
21
+ <def tag="uneditable-input">
22
+ <view merge class="uneditable-input"/>
14
23
  </def>
15
24
 
16
25
  <def tag="bootstrap-fields" attrs="size, columns, tag, no-edit, required, no-blanks">
@@ -27,7 +36,7 @@
27
36
  -%>
28
37
  <div
29
38
  class="control-group #{'required' if required.include?(scope.field_name)}"
30
- unless="&(tag == 'input' && no_edit == 'skip' && !can_edit?) || (tag == 'view' && no_blanks && this.blank?)"
39
+ unless="&(tag == 'input' && no_edit == 'skip' && !can_edit?) || ((tag == 'view' || tag == 'uneditable-input') && no_blanks && this.blank?)"
31
40
  param="#{field_method}-field">
32
41
 
33
42
  <label class="control-label" for="&id_for_this" param="#{field_method}-label" unless="&field_name.blank?">
@@ -55,14 +64,6 @@
55
64
  </old-form:>
56
65
  </extend>
57
66
 
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
67
  <!--
67
68
  Like `<with-fields>`, but groups fields into columns in a bootstrap-friendly fashion.
68
69
 
@@ -168,12 +169,12 @@ Supports all attributes supported by `<with-fields>` plus:
168
169
  <def tag="one-line-form" attrs="fields">
169
170
  <div class="row">
170
171
  <div class="span12">
171
- <form class="inline-form well" merge-attrs>
172
+ <form class="inline-form well" remove-class="form-horizontal" merge>
172
173
  <field-list: replace>
173
- <one-line-field-list fields="&fields"/>
174
+ <one-line-field-list param="field-list" fields="&fields"/>
174
175
  </field-list:>
175
176
  <actions: replace>
176
- <button class="btn btn-primary" type="submit">
177
+ <button class="btn btn-primary" type="submit" param="submit">
177
178
  +
178
179
  </button>
179
180
  </actions:>
@@ -3,13 +3,21 @@
3
3
  <a with="&this_parent" action="edit">
4
4
  <i class="icon icon-edit"></i>
5
5
  </a>
6
- <%= link_to '<i class=\'icon-trash\'></i>'.html_safe, this_parent, :'data-confirm' => t('hobo.messages.confirm', :default=>'Are you sure?'), method: :delete %>
6
+ <% if can_delete?(this_parent) %>
7
+ <%= link_to '<i class=\'icon-trash\'></i>'.html_safe, this_parent, :'data-confirm' => t('hobo.messages.confirm', :default=>'Are you sure?'), :method => :delete %>
8
+ <% end %>
7
9
  </def>
8
10
 
9
11
  <extend tag="index-page">
10
- <old-index-page: merge>
12
+ <old-index-page: without-count without-top-page-nav merge>
11
13
 
12
- <new-link: class="btn pull-right"/>
14
+ <new-link: replace/>
15
+ <content-header: class="well"/>
16
+ <before-heading:>
17
+ <a action="new" to="&model" param="new-link" class="btn pull-right btn-primary">
18
+ <ht key="#{model.to_s}.actions.new">New <%= model %></ht>
19
+ </a>
20
+ </before-heading:>
13
21
 
14
22
  <collection: replace>
15
23
  <%
@@ -24,7 +32,7 @@
24
32
  field_names = field_names.join(', ')
25
33
  end
26
34
  %>
27
- <table class="table table-striped" without-header
35
+ <table class="table table-striped table-bordered" without-header
28
36
  fields="&field_names" param="collection">
29
37
  <actions-label:>
30
38
  <t key="hobo.messages.actions">Actions</t>
@@ -0,0 +1,13 @@
1
+ <!--Add a btn class to transition buttons-->
2
+
3
+ <def tag="transition-buttons">
4
+ <% ajax_attrs, html_attrs = attributes.partition_hash(HoboRapidHelper::AJAX_ATTRS) %>
5
+ <div merge-attrs="&html_attrs" class="transitions">
6
+ <% transitions = this.lifecycle.publishable_transitions_for(current_user) %>
7
+ <if test="&transitions">
8
+ <% transitions.each do |t| %>
9
+ <transition-button merge-attrs="&ajax_attrs" transition="&t" class="btn"/>
10
+ <% end %>
11
+ </if>
12
+ </div>
13
+ </def>
@@ -1,7 +1,15 @@
1
1
  <extend tag="show-page">
2
2
  <old-show-page: merge>
3
3
  <field-list: class="form-horizontal"/>
4
- <edit-link: class="btn pull-right"/>
5
- <after-edit-link:><div style="clear: right;"/></after-edit-link:>
4
+
5
+ <before-heading:>
6
+ <a action="edit" if="&can_edit?" param="edit-link" class="btn pull-right">
7
+ <ht key="#{model.to_s}.actions.edit">Edit <%= model %></ht>
8
+ </a>
9
+ </before-heading:>
10
+
11
+ <edit-link: replace/>
12
+
13
+ <content-header: class="well"/>
6
14
  </old-show-page:>
7
15
  </extend>
@@ -0,0 +1 @@
1
+ //= require_tree './hobo_bootstrap'
@@ -1,3 +1,4 @@
1
+
1
2
  @import "compass_twitter_bootstrap";
2
3
 
3
4
  /* Top menu bar (app name, login...):
@@ -43,6 +44,10 @@ h2.heading{
43
44
  margin-bottom:10px;
44
45
  line-height:24px;
45
46
  }
47
+ .index-page h2.heading{
48
+ margin-bottom:0px;
49
+ line-height:26px;
50
+ }
46
51
 
47
52
  /* hidden-fields */
48
53
  div.hidden-fields {
@@ -82,3 +87,44 @@ li.input-many-template { display:none; }
82
87
 
83
88
  /* collection */
84
89
  ul.collection > li { margin-left: 0; list-style: none;}
90
+ ul.collection { margin-left: 0;}
91
+
92
+
93
+
94
+ /* Show page */
95
+ .show-page .content-body .description{
96
+ margin-bottom:10px;
97
+ }
98
+
99
+
100
+
101
+ /* Icon URLs */
102
+ [class^="icon-"], [class*=" icon-"] {
103
+ background-image: url("../glyphicons-halflings.png");
104
+ }
105
+ .icon-white {
106
+ background-image: url("../glyphicons-halflings-white.png");
107
+ }
108
+
109
+
110
+ /* The hidden class is used by Hobo */
111
+ .hidden{
112
+ display:none;
113
+ }
114
+
115
+
116
+
117
+ /* Field-lists alignment and details*/
118
+ .form-horizontal .control-label {
119
+ font-weight: bold;
120
+ }
121
+ .form-horizontal .controls {
122
+ padding-top:5px;
123
+ }
124
+ .form-horizontal input, .form-horizontal textarea, .form-horizontal select, .form-horizontal .help-inline, .form-horizontal .uneditable-input, .form-horizontal .input-prepend, .form-horizontal .input-append {
125
+ margin-top:-5px;
126
+ }
127
+ .control-group.required .control-label:after {
128
+ content:"*";
129
+ color: #C62121;
130
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hobo_bootstrap
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre3
4
+ version: 2.0.0.pre4
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-26 00:00:00.000000000 Z
12
+ date: 2012-10-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: hobo
@@ -32,17 +32,17 @@ dependencies:
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
- - - '='
35
+ - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: 2.0.0.pre3
37
+ version: 2.0.0.pre1
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - '='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: 2.0.0.pre3
45
+ version: 2.0.0.pre1
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: compass_twitter_bootstrap
48
48
  requirement: !ruby/object:Gem::Requirement
@@ -109,14 +109,17 @@ files:
109
109
  - screenshots/three_columns_complex.png
110
110
  - screenshots/top_menu.png
111
111
  - screenshots/two_columns.png
112
+ - taglibs/alert_box.dryml
112
113
  - taglibs/buttons.dryml
113
114
  - taglibs/card.dryml
114
115
  - taglibs/delete_button.dryml
115
116
  - taglibs/edit_page.dryml
117
+ - taglibs/error_messages.dryml
116
118
  - taglibs/flash_message.dryml
117
119
  - taglibs/forms.dryml
118
120
  - taglibs/hobo_bootstrap.dryml
119
121
  - taglibs/index_page.dryml
122
+ - taglibs/lifecycle.dryml
120
123
  - taglibs/login.dryml
121
124
  - taglibs/nav.dryml
122
125
  - taglibs/page.dryml
@@ -127,10 +130,11 @@ files:
127
130
  - taglibs/tabs.dryml
128
131
  - vendor/assets/images/ajax-loader.gif
129
132
  - vendor/assets/javascripts/hobo_bootstrap.js
130
- - vendor/assets/stylesheets/hobo_bootstrap.scss
131
- - vendor/assets/stylesheets/hobo_bootstrap_docs.css
132
- - vendor/assets/stylesheets/hobo_bootstrap_responsive.css
133
- homepage: https://github.com/suyccom/hobo_bootstrap
133
+ - vendor/assets/stylesheets/hobo_bootstrap.css
134
+ - vendor/assets/stylesheets/hobo_bootstrap/hobo_bootstrap_docs.css
135
+ - vendor/assets/stylesheets/hobo_bootstrap/hobo_bootstrap_main.scss
136
+ - vendor/assets/stylesheets/hobo_bootstrap/hobo_bootstrap_responsive.scss
137
+ homepage: https://github.com/Hobo/hobo_bootstrap
134
138
  licenses: []
135
139
  post_install_message:
136
140
  rdoc_options: