twitter-bootstrap-rails 2.1.3 → 2.1.4

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.

Potentially problematic release.


This version of twitter-bootstrap-rails might be problematic. Click here for more details.

Files changed (48) hide show
  1. data/README.md +6 -3
  2. data/app/helpers/bootstrap_flash_helper.rb +3 -1
  3. data/app/helpers/glyph_helper.rb +12 -0
  4. data/app/views/twitter-bootstrap/_breadcrumbs.html.erb +3 -3
  5. data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.less +8 -12
  6. data/lib/generators/bootstrap/layout/templates/layout.html.erb +15 -17
  7. data/lib/generators/bootstrap/layout/templates/layout.html.haml +13 -14
  8. data/lib/generators/bootstrap/layout/templates/layout.html.slim +13 -14
  9. data/lib/generators/bootstrap/themed/themed_generator.rb +16 -5
  10. data/lib/twitter/bootstrap/rails/version.rb +1 -1
  11. data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
  12. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-affix.js +1 -1
  13. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-alert.js +1 -1
  14. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-button.js +2 -2
  15. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-carousel.js +1 -1
  16. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-collapse.js +1 -1
  17. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-dropdown.js +3 -3
  18. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-modal.js +1 -1
  19. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-popover.js +1 -1
  20. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-scrollspy.js +1 -1
  21. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tab.js +1 -1
  22. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tooltip.js +1 -1
  23. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-transition.js +1 -1
  24. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-typeahead.js +2 -2
  25. data/vendor/toolkit/font-awesome-ie7.less +245 -0
  26. data/vendor/toolkit/fontawesome.less +12 -29
  27. data/vendor/toolkit/twitter/bootstrap/bootstrap.less +1 -1
  28. data/vendor/toolkit/twitter/bootstrap/button-groups.less +3 -2
  29. data/vendor/toolkit/twitter/bootstrap/buttons.less +24 -4
  30. data/vendor/toolkit/twitter/bootstrap/component-animations.less +0 -1
  31. data/vendor/toolkit/twitter/bootstrap/dropdowns.less +2 -2
  32. data/vendor/toolkit/twitter/bootstrap/forms.less +30 -15
  33. data/vendor/toolkit/twitter/bootstrap/mixins.less +21 -11
  34. data/vendor/toolkit/twitter/bootstrap/modals.less +3 -2
  35. data/vendor/toolkit/twitter/bootstrap/navbar.less +22 -16
  36. data/vendor/toolkit/twitter/bootstrap/pager.less +6 -3
  37. data/vendor/toolkit/twitter/bootstrap/pagination.less +17 -17
  38. data/vendor/toolkit/twitter/bootstrap/progress-bars.less +1 -1
  39. data/vendor/toolkit/twitter/bootstrap/reset.less +5 -2
  40. data/vendor/toolkit/twitter/bootstrap/responsive-767px-max.less +27 -20
  41. data/vendor/toolkit/twitter/bootstrap/responsive-navbar.less +12 -1
  42. data/vendor/toolkit/twitter/bootstrap/responsive.less +1 -1
  43. data/vendor/toolkit/twitter/bootstrap/scaffolding.less +5 -4
  44. data/vendor/toolkit/twitter/bootstrap/sprites.less +11 -5
  45. data/vendor/toolkit/twitter/bootstrap/tables.less +26 -6
  46. data/vendor/toolkit/twitter/bootstrap/type.less +18 -3
  47. data/vendor/toolkit/twitter/bootstrap/variables.less +10 -8
  48. metadata +15 -13
data/README.md CHANGED
@@ -5,7 +5,7 @@ twitter-bootstrap-rails project integrates Bootstrap CSS toolkit for Rails 3.1 A
5
5
 
6
6
  [![Build Status](https://secure.travis-ci.org/seyhunak/twitter-bootstrap-rails.png)](http://travis-ci.org/seyhunak/twitter-bootstrap-rails)
7
7
  [![Dependency Status](https://gemnasium.com/seyhunak/twitter-bootstrap-rails.png)](https://gemnasium.com/seyhunak/twitter-bootstrap-rails)
8
- [![Code Climate](https://codeclimate.com/badge.png)](https://github.com/seyhunak/twitter-bootstrap-rails)
8
+ [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/seyhunak/twitter-bootstrap-rails)
9
9
 
10
10
  ## Screencasts
11
11
  #### Installing twitter-bootstrap-rails, generators, usage and more
@@ -24,7 +24,7 @@ in this episode continues on the Twitter Bootstrap project showing how to displa
24
24
  Include the [Twitter Bootstrap Rails gem](http://rubygems.org/gems/twitter-bootstrap-rails) in Gemfile to install it from [RubyGems.org](http://rubygems.org);
25
25
 
26
26
  ```ruby
27
- gem "twitter-bootstrap-rails", :group => :assets
27
+ gem "twitter-bootstrap-rails"
28
28
  ```
29
29
 
30
30
  or you can install from latest build;
@@ -83,7 +83,7 @@ Example:
83
83
  rake db:migrate
84
84
  rails g bootstrap:themed Posts
85
85
 
86
-
86
+ Notice the plural usage of the resource to generate bootstrap:themed.
87
87
 
88
88
  ## Using with Less
89
89
 
@@ -189,6 +189,8 @@ gem 'twitter-bootstrap-rails', :git => 'git://github.com/seyhunak/twitter-bootst
189
189
  <li>Released gem v.2.1.1 (minor fixes)</li>
190
190
  <li>Flash block message helper added</li>
191
191
  <li>Released gem v.2.1.2 (minor fixes and updated to Twitter Bootstrap 2.1.0)</li>
192
+ <li>Released gem v.2.1.3 (minor fixes and updated to Twitter Bootstrap 2.1.1)</li>
193
+ <li>Released gem v.2.1.4 (minor fixes)</li>
192
194
  </ul>
193
195
 
194
196
 
@@ -209,6 +211,7 @@ gem 'twitter-bootstrap-rails', :git => 'git://github.com/seyhunak/twitter-bootst
209
211
  <li>Sébastien Grosjean</li>
210
212
  <li>Nick DeSteffen</li>
211
213
  <li>Christian Joudrey</li>
214
+ <li>Todd Baur</li>
212
215
  </ul>
213
216
 
214
217
 
@@ -4,7 +4,9 @@ module BootstrapFlashHelper
4
4
  flash.each do |type, message|
5
5
  type = :success if type == :notice
6
6
  type = :error if type == :alert
7
- text = content_tag(:div, link_to("x", "#", :class => "close", "data-dismiss" => "alert") + message, :class => "alert fade in alert-#{type}")
7
+ text = content_tag(:div,
8
+ content_tag(:button, raw("&times;"), :class => "close", "data-dismiss" => "alert") +
9
+ message, :class => "alert fade in alert-#{type}")
8
10
  flash_messages << text if message
9
11
  end
10
12
  flash_messages.join("\n").html_safe
@@ -0,0 +1,12 @@
1
+ module GlyphHelper
2
+ # ==== Examples
3
+ # glyph(:share_alt)
4
+ # # => <i class="icon-share-alt"></i>
5
+ # glyph(:lock, :white)
6
+ # # => <i class="icon-lock icon-white"></i>
7
+
8
+ def glyph(*names)
9
+ content_tag :i, nil, class: names.map{|name| "icon-#{name.to_s.gsub('_','-')}" }
10
+ end
11
+ end
12
+
@@ -3,12 +3,12 @@
3
3
  <% separator = divider %>
4
4
  <% @breadcrumbs[0..-2].each do |crumb| %>
5
5
  <li>
6
- <%= link_to crumb[:name], crumb[:url], crumb[:options] %>
6
+ <%= link_to crumb[:name], crumb[:url], crumb[:options] %>
7
7
  <span class="divider"><%= separator %></span>
8
8
  </li>
9
9
  <% end %>
10
10
  <li class="active">
11
- <%= link_to @breadcrumbs.last[:name], @breadcrumbs.last[:url], @breadcrumbs.last[:options] %>
11
+ <%= @breadcrumbs.last[:name] %>
12
12
  </li>
13
13
  </ul>
14
- <% end %>
14
+ <% end %>
@@ -1,21 +1,17 @@
1
1
  @import "twitter/bootstrap/bootstrap";
2
- body {
3
- padding-top: 60px;
4
- }
5
-
6
2
  @import "twitter/bootstrap/responsive";
7
3
 
8
4
  // Set the correct sprite paths
9
- @iconSpritePath: asset-path('twitter/bootstrap/glyphicons-halflings.png');
10
- @iconWhiteSpritePath: asset-path('twitter/bootstrap/glyphicons-halflings-white.png');
5
+ @iconSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings.png");
6
+ @iconWhiteSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings-white.png");
11
7
 
12
8
  // Set the Font Awesome (Font Awesome is default. You can disable by commenting below lines)
13
- // Note: If you use asset_path() here, your compiled boostrap_and_overrides.css will not
9
+ // Note: If you use asset_path() here, your compiled boostrap_and_overrides.css will not
14
10
  // have the proper paths. So for now we use the absolute path.
15
- @fontAwesomeEotPath: '/assets/fontawesome-webfont.eot';
16
- @fontAwesomeWoffPath: '/assets/fontawesome-webfont.woff';
17
- @fontAwesomeTtfPath: '/assets/fontawesome-webfont.ttf';
18
- @fontAwesomeSvgPath: '/assets/fontawesome-webfont.svg';
11
+ @fontAwesomeEotPath: asset-path("fontawesome-webfont.eot");
12
+ @fontAwesomeWoffPath: asset-path("fontawesome-webfont.woff");
13
+ @fontAwesomeTtfPath: asset-path("fontawesome-webfont.ttf");
14
+ @fontAwesomeSvgPath: asset-path("fontawesome-webfont.svg");
19
15
 
20
16
  // Font Awesome
21
17
  @import "fontawesome";
@@ -26,7 +22,7 @@ body {
26
22
  // you may use and inherit here
27
23
  //
28
24
  // If you'd like to override bootstrap's own variables, you can do so here as well
29
- // See http://twitter.github.com/bootstrap/less.html for their names and documentation
25
+ // See http://twitter.github.com/bootstrap/customize.html#variables for their names and documentation
30
26
  //
31
27
  // Example:
32
28
  // @linkColor: #ff0000;
@@ -36,7 +36,7 @@
36
36
  </head>
37
37
  <body>
38
38
 
39
- <div class="navbar navbar-fixed-top">
39
+ <div class="navbar navbar-<%= layout_type %>-top">
40
40
  <div class="navbar-inner">
41
41
  <div class="<%= container_class %>">
42
42
  <a class="btn btn-navbar" data-target=".nav-collapse" data-toggle="collapse">
@@ -75,24 +75,22 @@
75
75
  </div>
76
76
  </div><!--/row-->
77
77
  <%- else -%>
78
- <div class="content">
79
78
  <div class="row">
80
- <div class="span9">
81
- <%%= yield %>
82
- </div>
83
- <div class="span3">
84
- <div class="well sidebar-nav">
85
- <h3>Sidebar</h3>
86
- <ul class="nav nav-list">
87
- <li class="nav-header">Sidebar</li>
88
- <li><%%= link_to "Link1", "/path1" %></li>
89
- <li><%%= link_to "Link2", "/path2" %></li>
90
- <li><%%= link_to "Link3", "/path3" %></li>
91
- </ul>
92
- </div><!--/.well -->
93
- </div><!--/span-->
79
+ <div class="span9">
80
+ <%%= yield %>
81
+ </div>
82
+ <div class="span3">
83
+ <div class="well sidebar-nav">
84
+ <h3>Sidebar</h3>
85
+ <ul class="nav nav-list">
86
+ <li class="nav-header">Sidebar</li>
87
+ <li><%%= link_to "Link1", "/path1" %></li>
88
+ <li><%%= link_to "Link2", "/path2" %></li>
89
+ <li><%%= link_to "Link3", "/path3" %></li>
90
+ </ul>
91
+ </div><!--/.well -->
92
+ </div><!--/span-->
94
93
  </div><!--/row-->
95
- </div><!--/content-->
96
94
  <%- end -%>
97
95
 
98
96
  <footer>
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
  %body
21
- .navbar.navbar-fixed-top
21
+ .navbar.navbar-<%= layout_type %>-top
22
22
  .navbar-inner
23
23
  .<%= container_class %>
24
24
  %a.btn.btn-navbar(data-target=".nav-collapse" data-toggle="collapse")
@@ -46,19 +46,18 @@
46
46
  .span9
47
47
  = yield
48
48
  <% else %>
49
- .content
50
- .row
51
- .span9
52
- = bootstrap_flash
53
- = yield
54
- .span3
55
- .well.sidebar-nav
56
- %h3 Sidebar
57
- %ul.nav.nav-list
58
- %li.nav-header Sidebar
59
- %li= link_to "Link 1", "/path1"
60
- %li= link_to "Link 2", "/path2"
61
- %li= link_to "Link 3", "/path3"
49
+ .row
50
+ .span9
51
+ = bootstrap_flash
52
+ = yield
53
+ .span3
54
+ .well.sidebar-nav
55
+ %h3 Sidebar
56
+ %ul.nav.nav-list
57
+ %li.nav-header Sidebar
58
+ %li= link_to "Link 1", "/path1"
59
+ %li= link_to "Link 2", "/path2"
60
+ %li= link_to "Link 3", "/path3"
62
61
  <% end %>
63
62
  %footer
64
63
  %p &copy; Company 2012
@@ -18,7 +18,7 @@ html lang="en"
18
18
  link href="images/favicon.ico" rel="shortcut icon"
19
19
 
20
20
  body
21
- .navbar.navbar-fixed-top
21
+ .navbar.navbar-<%= layout_type %>-top
22
22
  .navbar-inner
23
23
  .<%= container_class %>
24
24
  a.btn.btn-navbar data-target=".nav-collapse" data-toggle="collapse"
@@ -46,19 +46,18 @@ html lang="en"
46
46
  .span9
47
47
  = yield
48
48
  <% else %>
49
- .content
50
- .row
51
- .span9
52
- = bootstrap_flash
53
- = yield
54
- .span3
55
- .well.sidebar-nav
56
- h3 Sidebar
57
- ul.nav.nav-list
58
- li.nav-header Sidebar
59
- li= link_to "Link 1", "/path1"
60
- li= link_to "Link 2", "/path2"
61
- li= link_to "Link 3", "/path3"
49
+ .row
50
+ .span9
51
+ = bootstrap_flash
52
+ = yield
53
+ .span3
54
+ .well.sidebar-nav
55
+ h3 Sidebar
56
+ ul.nav.nav-list
57
+ li.nav-header Sidebar
58
+ li= link_to "Link 1", "/path1"
59
+ li= link_to "Link 2", "/path2"
60
+ li= link_to "Link 3", "/path3"
62
61
  <% end %>
63
62
  footer
64
63
  p &copy; Company 2012
@@ -53,14 +53,25 @@ module Bootstrap
53
53
  end
54
54
 
55
55
  def columns
56
- begin
57
- excluded_column_names = %w[id created_at updated_at]
58
- @model_name.constantize.columns.reject{|c| excluded_column_names.include?(c.name) }.collect{|c| ::Rails::Generators::GeneratedAttribute.new(c.name, c.type)}
59
- rescue NoMethodError
60
- @model_name.constantize.fields.collect{|c| c[1]}.reject{|c| excluded_column_names.include?(c.name) }.collect{|c| ::Rails::Generators::GeneratedAttribute.new(c.name, c.type.to_s)}
56
+ excluded_column_names = %w[id created_at updated_at]
57
+ if defined?(ActiveRecord)
58
+ rescue_block ActiveRecord::StatementInvalid do
59
+ @model_name.constantize.columns.reject{|c| excluded_column_names.include?(c.name) }.collect{|c| ::Rails::Generators::GeneratedAttribute.new(c.name, c.type)}
60
+ end
61
+ else
62
+ rescue_block do
63
+ @model_name.constantize.fields.collect{|c| c[1]}.reject{|c| excluded_column_names.include?(c.name) }.collect{|c| ::Rails::Generators::GeneratedAttribute.new(c.name, c.type.to_s)}
64
+ end
61
65
  end
62
66
  end
63
67
 
68
+ def rescue_block(exception=Exception)
69
+ yield if block_given?
70
+ rescue exception => e
71
+ say e.message, :red
72
+ exit
73
+ end
74
+
64
75
  def extract_modules(name)
65
76
  modules = name.include?('/') ? name.split('/') : name.split('::')
66
77
  name = modules.pop
@@ -1,7 +1,7 @@
1
1
  module Twitter
2
2
  module Bootstrap
3
3
  module Rails
4
- VERSION = "2.1.3"
4
+ VERSION = "2.1.4"
5
5
  end
6
6
  end
7
7
  end
@@ -1,5 +1,5 @@
1
1
  /* ==========================================================
2
- * bootstrap-affix.js v2.1.0
2
+ * bootstrap-affix.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#affix
4
4
  * ==========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ==========================================================
2
- * bootstrap-alert.js v2.1.0
2
+ * bootstrap-alert.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#alerts
4
4
  * ==========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ============================================================
2
- * bootstrap-button.js v2.1.0
2
+ * bootstrap-button.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#buttons
4
4
  * ============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -51,7 +51,7 @@
51
51
  }
52
52
 
53
53
  Button.prototype.toggle = function () {
54
- var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
54
+ var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
55
55
 
56
56
  $parent && $parent
57
57
  .find('.active')
@@ -1,5 +1,5 @@
1
1
  /* ==========================================================
2
- * bootstrap-carousel.js v2.1.0
2
+ * bootstrap-carousel.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#carousel
4
4
  * ==========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-collapse.js v2.1.0
2
+ * bootstrap-collapse.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#collapse
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ============================================================
2
- * bootstrap-dropdown.js v2.1.0
2
+ * bootstrap-dropdown.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#dropdowns
4
4
  * ============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -110,7 +110,7 @@
110
110
 
111
111
  if (!selector) {
112
112
  selector = $this.attr('href')
113
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
113
+ selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
114
114
  }
115
115
 
116
116
  $parent = $(selector)
@@ -142,7 +142,7 @@
142
142
  $('html')
143
143
  .on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
144
144
  $('body')
145
- .on('click.dropdown touchstart.dropdown.data-api', '.dropdown', function (e) { e.stopPropagation() })
145
+ .on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
146
146
  .on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
147
147
  .on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
148
148
  })
@@ -1,5 +1,5 @@
1
1
  /* =========================================================
2
- * bootstrap-modal.js v2.1.0
2
+ * bootstrap-modal.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#modals
4
4
  * =========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ===========================================================
2
- * bootstrap-popover.js v2.1.0
2
+ * bootstrap-popover.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#popovers
4
4
  * ===========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-scrollspy.js v2.1.0
2
+ * bootstrap-scrollspy.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#scrollspy
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ========================================================
2
- * bootstrap-tab.js v2.1.0
2
+ * bootstrap-tab.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tabs
4
4
  * ========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* ===========================================================
2
- * bootstrap-tooltip.js v2.1.0
2
+ * bootstrap-tooltip.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tooltips
4
4
  * Inspired by the original jQuery.tipsy by Jason Frame
5
5
  * ===========================================================
@@ -1,5 +1,5 @@
1
1
  /* ===================================================
2
- * bootstrap-transition.js v2.1.0
2
+ * bootstrap-transition.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#transitions
4
4
  * ===================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-typeahead.js v2.1.0
2
+ * bootstrap-typeahead.js v2.1.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#typeahead
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -174,7 +174,7 @@
174
174
  .on('keypress', $.proxy(this.keypress, this))
175
175
  .on('keyup', $.proxy(this.keyup, this))
176
176
 
177
- if ($.browser.webkit || $.browser.msie) {
177
+ if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
178
178
  this.$element.on('keydown', $.proxy(this.keydown, this))
179
179
  }
180
180
 
@@ -0,0 +1,245 @@
1
+ [class^="icon-"],
2
+ [class*="icon-"] {
3
+ font-family: FontAwesome;
4
+ font-style: normal;
5
+ font-weight: normal;
6
+ }
7
+
8
+ .btn.dropdown-toggle [class^="icon-"], .btn.dropdown-toggle [class*="icon-"] {
9
+ /* keeps button heights with and without icons the same */
10
+ line-height: 1.4em;
11
+ }
12
+
13
+ .icon-large {
14
+ font-size: 1.3333em;
15
+ }
16
+
17
+ .ie7icon(@inner) {
18
+ *zoom: ~"expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '@{inner}&nbsp;')";
19
+ }
20
+
21
+ .icon-glass { .ie7icon('&#xf000;'); }
22
+ .icon-music { .ie7icon('&#xf001;'); }
23
+ .icon-search { .ie7icon('&#xf002;'); }
24
+ .icon-envelope { .ie7icon('&#xf003;'); }
25
+ .icon-heart { .ie7icon('&#xf004;'); }
26
+ .icon-star { .ie7icon('&#xf005;'); }
27
+ .icon-star-empty { .ie7icon('&#xf006;'); }
28
+ .icon-user { .ie7icon('&#xf007;'); }
29
+ .icon-film { .ie7icon('&#xf008;'); }
30
+ .icon-th-large { .ie7icon('&#xf009;'); }
31
+ .icon-th { .ie7icon('&#xf00a;'); }
32
+ .icon-th-list { .ie7icon('&#xf00b;'); }
33
+ .icon-ok { .ie7icon('&#xf00c;'); }
34
+ .icon-remove { .ie7icon('&#xf00d;'); }
35
+ .icon-zoom-in { .ie7icon('&#xf00e;'); }
36
+
37
+ .icon-zoom-out { .ie7icon('&#xf010;'); }
38
+ .icon-off { .ie7icon('&#xf011;'); }
39
+ .icon-signal { .ie7icon('&#xf012;'); }
40
+ .icon-cog { .ie7icon('&#xf013;'); }
41
+ .icon-trash { .ie7icon('&#xf014;'); }
42
+ .icon-home { .ie7icon('&#xf015;'); }
43
+ .icon-file { .ie7icon('&#xf016;'); }
44
+ .icon-time { .ie7icon('&#xf017;'); }
45
+ .icon-road { .ie7icon('&#xf018;'); }
46
+ .icon-download-alt { .ie7icon('&#xf019;'); }
47
+ .icon-download { .ie7icon('&#xf01a;'); }
48
+ .icon-upload { .ie7icon('&#xf01b;'); }
49
+ .icon-inbox { .ie7icon('&#xf01c;'); }
50
+ .icon-play-circle { .ie7icon('&#xf01d;'); }
51
+ .icon-repeat { .ie7icon('&#xf01e;'); }
52
+
53
+ .icon-refresh { .ie7icon('&#xf021;'); }
54
+ .icon-list-alt { .ie7icon('&#xf022;'); }
55
+ .icon-lock { .ie7icon('&#xf023;'); }
56
+ .icon-flag { .ie7icon('&#xf024;'); }
57
+ .icon-headphones { .ie7icon('&#xf025;'); }
58
+ .icon-volume-off { .ie7icon('&#xf026;'); }
59
+ .icon-volume-down { .ie7icon('&#xf027;'); }
60
+ .icon-volume-up { .ie7icon('&#xf028;'); }
61
+ .icon-qrcode { .ie7icon('&#xf029;'); }
62
+ .icon-barcode { .ie7icon('&#xf02a;'); }
63
+ .icon-tag { .ie7icon('&#xf02b;'); }
64
+ .icon-tags { .ie7icon('&#xf02c;'); }
65
+ .icon-book { .ie7icon('&#xf02d;'); }
66
+ .icon-bookmark { .ie7icon('&#xf02e;'); }
67
+ .icon-print { .ie7icon('&#xf02f;'); }
68
+
69
+ .icon-camera { .ie7icon('&#xf030;'); }
70
+ .icon-font { .ie7icon('&#xf031;'); }
71
+ .icon-bold { .ie7icon('&#xf032;'); }
72
+ .icon-italic { .ie7icon('&#xf033;'); }
73
+ .icon-text-height { .ie7icon('&#xf034;'); }
74
+ .icon-text-width { .ie7icon('&#xf035;'); }
75
+ .icon-align-left { .ie7icon('&#xf036;'); }
76
+ .icon-align-center { .ie7icon('&#xf037;'); }
77
+ .icon-align-right { .ie7icon('&#xf038;'); }
78
+ .icon-align-justify { .ie7icon('&#xf039;'); }
79
+ .icon-list { .ie7icon('&#xf03a;'); }
80
+ .icon-indent-left { .ie7icon('&#xf03b;'); }
81
+ .icon-indent-right { .ie7icon('&#xf03c;'); }
82
+ .icon-facetime-video { .ie7icon('&#xf03d;'); }
83
+ .icon-picture { .ie7icon('&#xf03e;'); }
84
+
85
+ .icon-pencil { .ie7icon('&#xf040;'); }
86
+ .icon-map-marker { .ie7icon('&#xf041;'); }
87
+ .icon-adjust { .ie7icon('&#xf042;'); }
88
+ .icon-tint { .ie7icon('&#xf043;'); }
89
+ .icon-edit { .ie7icon('&#xf044;'); }
90
+ .icon-share { .ie7icon('&#xf045;'); }
91
+ .icon-check { .ie7icon('&#xf046;'); }
92
+ .icon-move { .ie7icon('&#xf047;'); }
93
+ .icon-step-backward { .ie7icon('&#xf048;'); }
94
+ .icon-fast-backward { .ie7icon('&#xf049;'); }
95
+ .icon-backward { .ie7icon('&#xf04a;'); }
96
+ .icon-play { .ie7icon('&#xf04b;'); }
97
+ .icon-pause { .ie7icon('&#xf04c;'); }
98
+ .icon-stop { .ie7icon('&#xf04d;'); }
99
+ .icon-forward { .ie7icon('&#xf04e;'); }
100
+
101
+ .icon-fast-forward { .ie7icon('&#xf050;'); }
102
+ .icon-step-forward { .ie7icon('&#xf051;'); }
103
+ .icon-eject { .ie7icon('&#xf052;'); }
104
+ .icon-chevron-left { .ie7icon('&#xf053;'); }
105
+ .icon-chevron-right { .ie7icon('&#xf054;'); }
106
+ .icon-plus-sign { .ie7icon('&#xf055;'); }
107
+ .icon-minus-sign { .ie7icon('&#xf056;'); }
108
+ .icon-remove-sign { .ie7icon('&#xf057;'); }
109
+ .icon-ok-sign { .ie7icon('&#xf058;'); }
110
+ .icon-question-sign { .ie7icon('&#xf059;'); }
111
+ .icon-info-sign { .ie7icon('&#xf05a;'); }
112
+ .icon-screenshot { .ie7icon('&#xf05b;'); }
113
+ .icon-remove-circle { .ie7icon('&#xf05c;'); }
114
+ .icon-ok-circle { .ie7icon('&#xf05d;'); }
115
+ .icon-ban-circle { .ie7icon('&#xf05e;'); }
116
+
117
+ .icon-arrow-left { .ie7icon('&#xf060;'); }
118
+ .icon-arrow-right { .ie7icon('&#xf061;'); }
119
+ .icon-arrow-up { .ie7icon('&#xf062;'); }
120
+ .icon-arrow-down { .ie7icon('&#xf063;'); }
121
+ .icon-share-alt { .ie7icon('&#xf064;'); }
122
+ .icon-resize-full { .ie7icon('&#xf065;'); }
123
+ .icon-resize-small { .ie7icon('&#xf066;'); }
124
+ .icon-plus { .ie7icon('&#xf067;'); }
125
+ .icon-minus { .ie7icon('&#xf068;'); }
126
+ .icon-asterisk { .ie7icon('&#xf069;'); }
127
+ .icon-exclamation-sign { .ie7icon('&#xf06a;'); }
128
+ .icon-gift { .ie7icon('&#xf06b;'); }
129
+ .icon-leaf { .ie7icon('&#xf06c;'); }
130
+ .icon-fire { .ie7icon('&#xf06d;'); }
131
+ .icon-eye-open { .ie7icon('&#xf06e;'); }
132
+
133
+ .icon-eye-close { .ie7icon('&#xf070;'); }
134
+ .icon-warning-sign { .ie7icon('&#xf071;'); }
135
+ .icon-plane { .ie7icon('&#xf072;'); }
136
+ .icon-calendar { .ie7icon('&#xf073;'); }
137
+ .icon-random { .ie7icon('&#xf074;'); }
138
+ .icon-comment { .ie7icon('&#xf075;'); }
139
+ .icon-magnet { .ie7icon('&#xf076;'); }
140
+ .icon-chevron-up { .ie7icon('&#xf077;'); }
141
+ .icon-chevron-down { .ie7icon('&#xf078;'); }
142
+ .icon-retweet { .ie7icon('&#xf079;'); }
143
+ .icon-shopping-cart { .ie7icon('&#xf07a;'); }
144
+ .icon-folder-close { .ie7icon('&#xf07b;'); }
145
+ .icon-folder-open { .ie7icon('&#xf07c;'); }
146
+ .icon-resize-vertical { .ie7icon('&#xf07d;'); }
147
+ .icon-resize-horizontal { .ie7icon('&#xf07e;'); }
148
+
149
+ .icon-bar-chart { .ie7icon('&#xf080;'); }
150
+ .icon-twitter-sign { .ie7icon('&#xf081;'); }
151
+ .icon-facebook-sign { .ie7icon('&#xf082;'); }
152
+ .icon-camera-retro { .ie7icon('&#xf083;'); }
153
+ .icon-key { .ie7icon('&#xf084;'); }
154
+ .icon-cogs { .ie7icon('&#xf085;'); }
155
+ .icon-comments { .ie7icon('&#xf086;'); }
156
+ .icon-thumbs-up { .ie7icon('&#xf087;'); }
157
+ .icon-thumbs-down { .ie7icon('&#xf088;'); }
158
+ .icon-star-half { .ie7icon('&#xf089;'); }
159
+ .icon-heart-empty { .ie7icon('&#xf08a;'); }
160
+ .icon-signout { .ie7icon('&#xf08b;'); }
161
+ .icon-linkedin-sign { .ie7icon('&#xf08c;'); }
162
+ .icon-pushpin { .ie7icon('&#xf08d;'); }
163
+ .icon-external-link { .ie7icon('&#xf08e;'); }
164
+
165
+ .icon-signin { .ie7icon('&#xf090;'); }
166
+ .icon-trophy { .ie7icon('&#xf091;'); }
167
+ .icon-github-sign { .ie7icon('&#xf092;'); }
168
+ .icon-upload-alt { .ie7icon('&#xf093;'); }
169
+ .icon-lemon { .ie7icon('&#xf094;'); }
170
+ .icon-phone { .ie7icon('&#xf095;'); }
171
+ .icon-check-empty { .ie7icon('&#xf096;'); }
172
+ .icon-bookmark-empty { .ie7icon('&#xf097;'); }
173
+ .icon-phone-sign { .ie7icon('&#xf098;'); }
174
+ .icon-twitter { .ie7icon('&#xf099;'); }
175
+ .icon-facebook { .ie7icon('&#xf09a;'); }
176
+ .icon-github { .ie7icon('&#xf09b;'); }
177
+ .icon-unlock { .ie7icon('&#xf09c;'); }
178
+ .icon-credit-card { .ie7icon('&#xf09d;'); }
179
+ .icon-rss { .ie7icon('&#xf09e;'); }
180
+
181
+ .icon-hdd { .ie7icon('&#xf0a0;'); }
182
+ .icon-bullhorn { .ie7icon('&#xf0a1;'); }
183
+ .icon-bell { .ie7icon('&#xf0a2;'); }
184
+ .icon-certificate { .ie7icon('&#xf0a3;'); }
185
+ .icon-hand-right { .ie7icon('&#xf0a4;'); }
186
+ .icon-hand-left { .ie7icon('&#xf0a5;'); }
187
+ .icon-hand-up { .ie7icon('&#xf0a6;'); }
188
+ .icon-hand-down { .ie7icon('&#xf0a7;'); }
189
+ .icon-circle-arrow-left { .ie7icon('&#xf0a8;'); }
190
+ .icon-circle-arrow-right { .ie7icon('&#xf0a9;'); }
191
+ .icon-circle-arrow-up { .ie7icon('&#xf0aa;'); }
192
+ .icon-circle-arrow-down { .ie7icon('&#xf0ab;'); }
193
+ .icon-globe { .ie7icon('&#xf0ac;'); }
194
+ .icon-wrench { .ie7icon('&#xf0ad;'); }
195
+ .icon-tasks { .ie7icon('&#xf0ae;'); }
196
+
197
+ .icon-filter { .ie7icon('&#xf0b0;'); }
198
+ .icon-briefcase { .ie7icon('&#xf0b1;'); }
199
+ .icon-fullscreen { .ie7icon('&#xf0b2;'); }
200
+
201
+ .icon-group { .ie7icon('&#xf0c0;'); }
202
+ .icon-link { .ie7icon('&#xf0c1;'); }
203
+ .icon-cloud { .ie7icon('&#xf0c2;'); }
204
+ .icon-beaker { .ie7icon('&#xf0c3;'); }
205
+ .icon-cut { .ie7icon('&#xf0c4;'); }
206
+ .icon-copy { .ie7icon('&#xf0c5;'); }
207
+ .icon-paper-clip { .ie7icon('&#xf0c6;'); }
208
+ .icon-save { .ie7icon('&#xf0c7;'); }
209
+ .icon-sign-blank { .ie7icon('&#xf0c8;'); }
210
+ .icon-reorder { .ie7icon('&#xf0c9;'); }
211
+ .icon-list-ul { .ie7icon('&#xf0ca;'); }
212
+ .icon-list-ol { .ie7icon('&#xf0cb;'); }
213
+ .icon-strikethrough { .ie7icon('&#xf0cc;'); }
214
+ .icon-underline { .ie7icon('&#xf0cd;'); }
215
+ .icon-table { .ie7icon('&#xf0ce;'); }
216
+
217
+ .icon-magic { .ie7icon('&#xf0d0;'); }
218
+ .icon-truck { .ie7icon('&#xf0d1;'); }
219
+ .icon-pinterest { .ie7icon('&#xf0d2;'); }
220
+ .icon-pinterest-sign { .ie7icon('&#xf0d3;'); }
221
+ .icon-google-plus-sign { .ie7icon('&#xf0d4;'); }
222
+ .icon-google-plus { .ie7icon('&#xf0d5;'); }
223
+ .icon-money { .ie7icon('&#xf0d6;'); }
224
+ .icon-caret-down { .ie7icon('&#xf0d7;'); }
225
+ .icon-caret-up { .ie7icon('&#xf0d8;'); }
226
+ .icon-caret-left { .ie7icon('&#xf0d9;'); }
227
+ .icon-caret-right { .ie7icon('&#xf0da;'); }
228
+ .icon-columns { .ie7icon('&#xf0db;'); }
229
+ .icon-sort { .ie7icon('&#xf0dc;'); }
230
+ .icon-sort-down { .ie7icon('&#xf0dd;'); }
231
+ .icon-sort-up { .ie7icon('&#xf0de;'); }
232
+
233
+ .icon-envelope-alt { .ie7icon('&#xf0e0;'); }
234
+ .icon-linkedin { .ie7icon('&#xf0e1;'); }
235
+ .icon-undo { .ie7icon('&#xf0e2;'); }
236
+ .icon-legal { .ie7icon('&#xf0e3;'); }
237
+ .icon-dashboard { .ie7icon('&#xf0e4;'); }
238
+ .icon-comment-alt { .ie7icon('&#xf0e5;'); }
239
+ .icon-comments-alt { .ie7icon('&#xf0e6;'); }
240
+ .icon-bolt { .ie7icon('&#xf0e7;'); }
241
+ .icon-sitemap { .ie7icon('&#xf0e8;'); }
242
+ .icon-umbrella { .ie7icon('&#xf0e9;'); }
243
+ .icon-paste { .ie7icon('&#xf0ea;'); }
244
+
245
+ .icon-user-md { .ie7icon('&#xf200;'); }