padrino-admin 0.11.2 → 0.11.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. data/lib/padrino-admin/bootstrap-less/accordion.less +6 -9
  2. data/lib/padrino-admin/bootstrap-less/alerts.less +46 -51
  3. data/lib/padrino-admin/bootstrap-less/badges.less +2 -7
  4. data/lib/padrino-admin/bootstrap-less/bootstrap.less +0 -1
  5. data/lib/padrino-admin/bootstrap-less/breadcrumbs.less +3 -3
  6. data/lib/padrino-admin/bootstrap-less/button-groups.less +37 -37
  7. data/lib/padrino-admin/bootstrap-less/buttons.less +52 -67
  8. data/lib/padrino-admin/bootstrap-less/carousel.less +24 -35
  9. data/lib/padrino-admin/bootstrap-less/close.less +14 -13
  10. data/lib/padrino-admin/bootstrap-less/code.less +4 -7
  11. data/lib/padrino-admin/bootstrap-less/component-animations.less +2 -11
  12. data/lib/padrino-admin/bootstrap-less/dropdowns.less +26 -82
  13. data/lib/padrino-admin/bootstrap-less/font-awesome-ie7.less +1895 -292
  14. data/lib/padrino-admin/bootstrap-less/font-awesome.less +26 -530
  15. data/lib/padrino-admin/bootstrap-less/font-awesome/bootstrap.less +84 -0
  16. data/lib/padrino-admin/bootstrap-less/font-awesome/core.less +129 -0
  17. data/lib/padrino-admin/bootstrap-less/font-awesome/extras.less +93 -0
  18. data/lib/padrino-admin/bootstrap-less/font-awesome/font-awesome-ie7.less +1953 -0
  19. data/lib/padrino-admin/bootstrap-less/font-awesome/font-awesome.less +33 -0
  20. data/lib/padrino-admin/bootstrap-less/font-awesome/icons.less +381 -0
  21. data/lib/padrino-admin/bootstrap-less/font-awesome/mixins.less +48 -0
  22. data/lib/padrino-admin/bootstrap-less/font-awesome/path.less +14 -0
  23. data/lib/padrino-admin/bootstrap-less/font-awesome/variables.less +735 -0
  24. data/lib/padrino-admin/bootstrap-less/forms.less +123 -227
  25. data/lib/padrino-admin/bootstrap-less/grid.less +174 -19
  26. data/lib/padrino-admin/bootstrap-less/jumbotron.less +4 -4
  27. data/lib/padrino-admin/bootstrap-less/labels.less +52 -28
  28. data/lib/padrino-admin/bootstrap-less/list-group.less +37 -44
  29. data/lib/padrino-admin/bootstrap-less/media.less +1 -1
  30. data/lib/padrino-admin/bootstrap-less/mixins.less +97 -120
  31. data/lib/padrino-admin/bootstrap-less/modals.less +5 -4
  32. data/lib/padrino-admin/bootstrap-less/navbar.less +148 -174
  33. data/lib/padrino-admin/bootstrap-less/navs.less +145 -164
  34. data/lib/padrino-admin/bootstrap-less/padrino-admin.less +2 -2
  35. data/lib/padrino-admin/bootstrap-less/pager.less +45 -33
  36. data/lib/padrino-admin/bootstrap-less/pagination.less +11 -23
  37. data/lib/padrino-admin/bootstrap-less/panels.less +11 -1
  38. data/lib/padrino-admin/bootstrap-less/popovers.less +6 -6
  39. data/lib/padrino-admin/bootstrap-less/print.less +13 -2
  40. data/lib/padrino-admin/bootstrap-less/progress-bars.less +3 -3
  41. data/lib/padrino-admin/bootstrap-less/responsive-utilities.less +92 -32
  42. data/lib/padrino-admin/bootstrap-less/scaffolding.less +9 -18
  43. data/lib/padrino-admin/bootstrap-less/tables.less +70 -67
  44. data/lib/padrino-admin/bootstrap-less/thumbnails.less +6 -6
  45. data/lib/padrino-admin/bootstrap-less/tooltip.less +25 -1
  46. data/lib/padrino-admin/bootstrap-less/type.less +39 -46
  47. data/lib/padrino-admin/bootstrap-less/variables.less +135 -63
  48. data/lib/padrino-admin/generators/admin_app.rb +9 -0
  49. data/lib/padrino-admin/generators/admin_page.rb +9 -0
  50. data/lib/padrino-admin/generators/orm.rb +1 -10
  51. data/lib/padrino-admin/generators/templates/account/activerecord.rb.tt +1 -1
  52. data/lib/padrino-admin/generators/templates/account/datamapper.rb.tt +1 -1
  53. data/lib/padrino-admin/generators/templates/account/minirecord.rb.tt +1 -1
  54. data/lib/padrino-admin/generators/templates/account/mongoid.rb.tt +1 -1
  55. data/lib/padrino-admin/generators/templates/account/mongomapper.rb.tt +1 -1
  56. data/lib/padrino-admin/generators/templates/account/sequel.rb.tt +1 -1
  57. data/lib/padrino-admin/generators/templates/assets/images/font/FontAwesome.otf +0 -0
  58. data/lib/padrino-admin/generators/templates/assets/images/font/fontawesome-webfont.eot +0 -0
  59. data/lib/padrino-admin/generators/templates/assets/images/font/fontawesome-webfont.svg +153 -38
  60. data/lib/padrino-admin/generators/templates/assets/images/font/fontawesome-webfont.ttf +0 -0
  61. data/lib/padrino-admin/generators/templates/assets/images/font/fontawesome-webfont.woff +0 -0
  62. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/affix.js +120 -0
  63. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/{bootstrap-alert.js → alert.js} +32 -35
  64. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap.min.js +1 -1
  65. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/{bootstrap-button.js → button.js} +37 -37
  66. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/carousel.js +210 -0
  67. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/collapse.js +156 -0
  68. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/dropdown.js +155 -0
  69. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/modal.js +243 -0
  70. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/popover.js +111 -0
  71. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/scrollspy.js +156 -0
  72. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/tab.js +133 -0
  73. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/tooltip.js +356 -0
  74. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/transition.js +47 -0
  75. data/lib/padrino-admin/generators/templates/assets/stylesheets/bootstrap.css +406 -452
  76. data/lib/padrino-admin/generators/templates/erb/app/layouts/application.erb.tt +3 -3
  77. data/lib/padrino-admin/generators/templates/erb/app/sessions/new.erb.tt +1 -1
  78. data/lib/padrino-admin/generators/templates/haml/app/layouts/application.haml.tt +3 -3
  79. data/lib/padrino-admin/generators/templates/haml/app/sessions/new.haml.tt +1 -1
  80. data/lib/padrino-admin/generators/templates/page/controller.rb.tt +1 -1
  81. data/lib/padrino-admin/generators/templates/slim/app/layouts/application.slim.tt +3 -3
  82. data/lib/padrino-admin/generators/templates/slim/app/sessions/new.slim.tt +1 -1
  83. data/lib/padrino-admin/helpers/view_helpers.rb +1 -1
  84. data/test/generators/test_admin_app_generator.rb +9 -0
  85. data/test/generators/test_admin_page_generator.rb +11 -0
  86. metadata +27 -23
  87. data/lib/padrino-admin/bootstrap-less/glyphicons.less +0 -200
  88. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-affix.js +0 -117
  89. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-carousel.js +0 -207
  90. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-collapse.js +0 -167
  91. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-dropdown.js +0 -165
  92. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-modal.js +0 -251
  93. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-popover.js +0 -114
  94. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-scrollspy.js +0 -162
  95. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-tab.js +0 -144
  96. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-tooltip.js +0 -361
  97. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-transition.js +0 -60
  98. data/lib/padrino-admin/generators/templates/assets/javascripts/bootstrap/bootstrap-typeahead.js +0 -335
@@ -5,7 +5,7 @@
5
5
 
6
6
  // Parent container
7
7
  .accordion {
8
- margin-bottom: @line-height-base;
8
+ margin-bottom: @line-height-computed;
9
9
  }
10
10
 
11
11
  // Group == heading + body
@@ -16,15 +16,12 @@
16
16
  }
17
17
  .accordion-heading {
18
18
  border-bottom: 0;
19
- }
20
- .accordion-heading .accordion-toggle {
21
- display: block;
22
- padding: 8px 15px;
23
- }
24
19
 
25
- // General toggle styles
26
- .accordion-toggle {
27
- cursor: pointer;
20
+ .accordion-toggle {
21
+ display: block;
22
+ padding: 8px 15px;
23
+ cursor: pointer;
24
+ }
28
25
  }
29
26
 
30
27
  // Inner needs the styles because you can't animate properly with any styles on the element
@@ -7,12 +7,12 @@
7
7
  // -------------------------
8
8
 
9
9
  .alert {
10
- padding: 8px 35px 8px 14px;
11
- margin-bottom: @line-height-base;
12
- color: @state-warning-text;
13
- background-color: @state-warning-bg;
14
- border: 1px solid @state-warning-border;
15
- border-radius: @border-radius-base;
10
+ padding: 10px 35px 10px 15px;
11
+ margin-bottom: @line-height-computed;
12
+ color: @alert-text;
13
+ background-color: @alert-bg;
14
+ border: 1px solid @alert-border;
15
+ border-radius: @alert-border-radius;
16
16
 
17
17
  // Headings for larger alerts
18
18
  h4 {
@@ -22,63 +22,57 @@
22
22
  }
23
23
  // Match the hr to the border of the alert
24
24
  hr {
25
- border-top-color: darken(@state-warning-border, 5%);
25
+ border-top-color: darken(@alert-border, 5%);
26
26
  }
27
- // Inherit color for immediate links and bolden them some
28
- > a,
29
- > p > a {
27
+ // Provide class for links that match alerts
28
+ .alert-link {
30
29
  font-weight: 500;
31
- color: darken(@state-warning-text, 10%);
30
+ color: darken(@alert-text, 10%);
32
31
  }
33
- }
34
32
 
35
- // Adjust close link position
36
- .close {
37
- position: relative;
38
- top: -2px;
39
- right: -21px;
40
- line-height: @line-height-base;
41
- color: inherit;
33
+ // Adjust close link position
34
+ .close {
35
+ position: relative;
36
+ top: -2px;
37
+ right: -21px;
38
+ color: inherit;
39
+ }
42
40
  }
43
41
 
44
42
  // Alternate styles
45
43
  // -------------------------
46
44
 
47
45
  .alert-success {
48
- background-color: @state-success-bg;
49
- border-color: @state-success-border;
50
- color: @state-success-text;
46
+ background-color: @alert-success-bg;
47
+ border-color: @alert-success-border;
48
+ color: @alert-success-text;
51
49
  hr {
52
- border-top-color: darken(@state-success-border, 5%);
50
+ border-top-color: darken(@alert-success-border, 5%);
53
51
  }
54
- > a,
55
- > p > a {
56
- color: darken(@state-success-text, 10%);
52
+ .alert-link {
53
+ color: darken(@alert-success-text, 10%);
57
54
  }
58
55
  }
59
- .alert-danger,
60
- .alert-error {
61
- background-color: @state-danger-bg;
62
- border-color: @state-danger-border;
63
- color: @state-danger-text;
56
+ .alert-danger {
57
+ background-color: @alert-danger-bg;
58
+ border-color: @alert-danger-border;
59
+ color: @alert-danger-text;
64
60
  hr {
65
- border-top-color: darken(@state-danger-border, 5%);
61
+ border-top-color: darken(@alert-danger-border, 5%);
66
62
  }
67
- > a,
68
- > p > a {
69
- color: darken(@state-danger-text, 10%);
63
+ .alert-link {
64
+ color: darken(@alert-danger-text, 10%);
70
65
  }
71
66
  }
72
67
  .alert-info {
73
- background-color: @state-info-bg;
74
- border-color: @state-info-border;
75
- color: @state-info-text;
68
+ background-color: @alert-info-bg;
69
+ border-color: @alert-info-border;
70
+ color: @alert-info-text;
76
71
  hr {
77
- border-top-color: darken(@state-info-border, 5%);
72
+ border-top-color: darken(@alert-info-border, 5%);
78
73
  }
79
- > a,
80
- > p > a {
81
- color: darken(@state-info-text, 10%);
74
+ .alert-link {
75
+ color: darken(@alert-info-text, 10%);
82
76
  }
83
77
  }
84
78
 
@@ -86,13 +80,14 @@
86
80
  // -------------------------
87
81
 
88
82
  .alert-block {
89
- padding-top: 14px;
90
- padding-bottom: 14px;
91
- }
92
- .alert-block > p,
93
- .alert-block > ul {
94
- margin-bottom: 0;
95
- }
96
- .alert-block p + p {
97
- margin-top: 5px;
83
+ padding-top: 15px;
84
+ padding-bottom: 15px;
85
+
86
+ > p,
87
+ > ul {
88
+ margin-bottom: 0;
89
+ }
90
+ p + p {
91
+ margin-top: 5px;
92
+ }
98
93
  }
@@ -8,14 +8,14 @@
8
8
  display: inline-block;
9
9
  min-width: 10px;
10
10
  padding: 3px 7px;
11
- font-size: 12px;
11
+ font-size: @font-size-small;
12
12
  font-weight: bold;
13
13
  color: #fff;
14
14
  line-height: 1;
15
15
  vertical-align: middle;
16
16
  white-space: nowrap;
17
17
  text-align: center;
18
- background-color: @grayLight;
18
+ background-color: @gray-light;
19
19
  border-radius: 10px;
20
20
 
21
21
  // Empty labels/badges collapse
@@ -41,11 +41,6 @@ a.badge {
41
41
  top: -1px;
42
42
  }
43
43
  }
44
- .btn-mini {
45
- .badge {
46
- top: 0;
47
- }
48
- }
49
44
 
50
45
  // Account for counters in navs
51
46
  a.list-group-item.active > .badge,
@@ -28,7 +28,6 @@
28
28
 
29
29
  // Components: common
30
30
  @import "component-animations.less";
31
- @import "glyphicons.less";
32
31
  @import "dropdowns.less";
33
32
  @import "list-group.less";
34
33
  @import "panels.less";
@@ -5,7 +5,7 @@
5
5
 
6
6
  .breadcrumb {
7
7
  padding: 8px 15px;
8
- margin: 0 0 @line-height-base;
8
+ margin: 0 0 @line-height-computed;
9
9
  list-style: none;
10
10
  background-color: #f5f5f5;
11
11
  border-radius: @border-radius-base;
@@ -19,10 +19,10 @@
19
19
  color: #ccc;
20
20
  }
21
21
  &:last-child:after {
22
- content: ""; // No divider after last element
22
+ display: none; // No divider after last element
23
23
  }
24
24
  }
25
25
  > .active {
26
- color: @grayLight;
26
+ color: @gray-light;
27
27
  }
28
28
  }
@@ -4,24 +4,21 @@
4
4
 
5
5
  // Button carets
6
6
  .btn .caret {
7
- border-top-color: @btn-color;
7
+ border-top-color: @btn-default-color;
8
8
  }
9
9
  .dropup .btn .caret {
10
- border-bottom-color: @btn-color;
10
+ border-bottom-color: @btn-default-color;
11
11
  }
12
12
 
13
13
  // Make the div behave like a button
14
- .btn-group {
14
+ .btn-group,
15
+ .btn-group-vertical {
15
16
  position: relative;
16
17
  display: inline-block;
17
18
  vertical-align: middle; // match .btn alignment given font-size hack above
18
19
  > .btn {
19
20
  position: relative;
20
21
  float: left;
21
- // Prevent double borders when buttons are next to each other
22
- + btn {
23
- margin-left: -1px;
24
- }
25
22
  // Bring the "active" button to the front
26
23
  &:hover,
27
24
  &:active {
@@ -30,6 +27,11 @@
30
27
  }
31
28
  }
32
29
 
30
+ // Prevent double borders when buttons are next to each other
31
+ .btn-group .btn + .btn {
32
+ margin-left: -1px;
33
+ }
34
+
33
35
  // Optional: Group multiple button groups together for a toolbar
34
36
  .btn-toolbar {
35
37
  .clearfix();
@@ -46,31 +48,36 @@
46
48
  }
47
49
  }
48
50
 
49
- // Float them, remove border radius, then re-add to first and last elements
50
- .btn-group > .btn {
51
- position: relative;
51
+ .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
52
52
  border-radius: 0;
53
53
  }
54
54
 
55
-
56
55
  // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
57
56
  .btn-group > .btn:first-child {
58
57
  margin-left: 0;
59
- .border-left-radius(@border-radius-base);
58
+ &:not(:last-child):not(.dropdown-toggle) {
59
+ .border-right-radius(0);
60
+ }
60
61
  }
61
62
  // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
62
- .btn-group > .btn:last-child,
63
- .btn-group > .dropdown-toggle {
64
- .border-right-radius(@border-radius-base);
63
+ .btn-group > .btn:last-child:not(:first-child),
64
+ .btn-group > .dropdown-toggle:not(:first-child) {
65
+ .border-left-radius(0);
65
66
  }
66
- // Reset corners for large buttons
67
- .btn-group > .btn.large:first-child {
68
- margin-left: 0;
69
- .border-left-radius(@border-radius-large);
67
+
68
+ // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)
69
+ .btn-group > .btn-group {
70
+ float: left;
70
71
  }
71
- .btn-group > .btn.large:last-child,
72
- .btn-group > .large.dropdown-toggle {
73
- .border-right-radius(@border-radius-large);
72
+ .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
73
+ border-radius: 0;
74
+ }
75
+ .btn-group > .btn-group:first-child > .btn:last-child,
76
+ .btn-group > .btn-group:first-child > .dropdown-toggle {
77
+ .border-right-radius(0);
78
+ }
79
+ .btn-group > .btn-group:last-child > .btn:first-child {
80
+ .border-left-radius(0);
74
81
  }
75
82
 
76
83
  // On active and open, don't show outline
@@ -89,10 +96,6 @@
89
96
  padding-left: 8px;
90
97
  padding-right: 8px;
91
98
  }
92
- .btn-group > .btn-mini + .dropdown-toggle {
93
- padding-left: 5px;
94
- padding-right: 5px;
95
- }
96
99
  .btn-group > .btn-large + .dropdown-toggle {
97
100
  padding-left: 12px;
98
101
  padding-right: 12px;
@@ -107,7 +110,6 @@
107
110
 
108
111
  // Reposition the caret
109
112
  .btn .caret {
110
- margin-top: 8px;
111
113
  margin-left: 0;
112
114
  }
113
115
  // Carets in other button sizes
@@ -128,20 +130,18 @@
128
130
  float: none;
129
131
  width: 100%;
130
132
  max-width: 100%;
133
+ + .btn {
134
+ margin-top: -1px;
135
+ }
136
+ }
137
+ .btn-group-vertical .btn:not(:first-child):not(:last-child) {
138
+ border-radius: 0;
131
139
  }
132
140
  .btn-group-vertical .btn:first-child {
133
- border-radius: 0; // Needs to be here for specificity since we're not zeroing them out again
134
- .border-top-radius(@border-radius-base);
141
+ .border-bottom-radius(0);
135
142
  }
136
143
  .btn-group-vertical .btn:last-child {
137
- border-radius: 0; // Needs to be here for specificity since we're not zeroing them out again
138
- .border-bottom-radius(@border-radius-base);
139
- }
140
- .btn-group-vertical .btn-large:first-child {
141
- .border-top-radius(@border-radius-large);
142
- }
143
- .btn-group-vertical .btn-large:last-child {
144
- .border-bottom-radius(@border-radius-large);
144
+ .border-top-radius(0);
145
145
  }
146
146
 
147
147
 
@@ -9,7 +9,7 @@
9
9
  // Core styles
10
10
  .btn {
11
11
  display: inline-block;
12
- padding: 6px 12px;
12
+ padding: @padding-base-vertical @padding-base-horizontal;
13
13
  margin-bottom: 0; // For input.btn
14
14
  font-size: @font-size-base;
15
15
  font-weight: 500;
@@ -17,7 +17,7 @@
17
17
  text-align: center;
18
18
  vertical-align: middle;
19
19
  cursor: pointer;
20
- border: 1px solid @btn-border;
20
+ border: 1px solid transparent;
21
21
  border-radius: @border-radius-base;
22
22
  white-space: nowrap;
23
23
 
@@ -50,91 +50,35 @@
50
50
  }
51
51
 
52
52
 
53
- // Button Sizes
54
- // -------------------------
55
-
56
- // Large
57
- .btn-large {
58
- padding: @padding-large;
59
- font-size: @font-size-large;
60
- border-radius: @border-radius-large;
61
- }
62
-
63
- // Small
64
- .btn-small {
65
- padding: @padding-small;
66
- font-size: @font-size-small;
67
- border-radius: @border-radius-small;
68
- }
69
-
70
- // Mini
71
- .btn-mini {
72
- padding: @padding-mini;
73
- font-size: @font-size-mini;
74
- border-radius: @border-radius-small;
75
- }
76
-
77
-
78
- // Icons in buttons
79
- // -------------------------
80
-
81
- // TODO: figure this shit out
82
-
83
- // Block button
84
- // -------------------------
85
-
86
- .btn-block {
87
- display: block;
88
- width: 100%;
89
- padding-left: 0;
90
- padding-right: 0;
91
- }
92
-
93
- // Vertically space out multiple block buttons
94
- .btn-block + .btn-block {
95
- margin-top: 5px;
96
- }
97
-
98
- // Specificity overrides
99
- input[type="submit"],
100
- input[type="reset"],
101
- input[type="button"] {
102
- &.btn-block {
103
- width: 100%;
104
- }
105
- }
106
-
107
-
108
53
  // Alternate buttons
109
54
  // --------------------------------------------------
110
55
 
111
- .btn {
112
- color: @btn-color;
113
- .btn-pseudo-states(@btn-bg, @btn-border);
56
+ .btn-default {
57
+ .btn-pseudo-states(@btn-default-color, @btn-default-bg, @btn-default-border);
114
58
  }
115
59
  .btn-primary {
116
- .btn-pseudo-states(@btn-primary-bg, @btn-primary-border);
60
+ .btn-pseudo-states(@btn-primary-color, @btn-primary-bg, @btn-primary-border);
117
61
  }
118
62
  // Warning appears as orange
119
63
  .btn-warning {
120
- .btn-pseudo-states(@btn-bg-warning, @btn-warning-border);
64
+ .btn-pseudo-states(@btn-warning-color, @btn-warning-bg, @btn-warning-border);
121
65
  }
122
66
  // Danger and error appear as red
123
67
  .btn-danger {
124
- .btn-pseudo-states(@btn-bg-danger, @btn-danger-border);
68
+ .btn-pseudo-states(@btn-danger-color, @btn-danger-bg, @btn-danger-border);
125
69
  }
126
70
  // Success appears as green
127
71
  .btn-success {
128
- .btn-pseudo-states(@btn-bg-success, @btn-success-border);
72
+ .btn-pseudo-states(@btn-success-color, @btn-success-bg, @btn-success-border);
129
73
  }
130
74
  // Info appears as blue-green
131
75
  .btn-info {
132
- .btn-pseudo-states(@btn-bg-info, @btn-info-border);
76
+ .btn-pseudo-states(@btn-info-color, @btn-info-bg, @btn-info-border);
133
77
  }
134
78
 
135
79
 
136
80
  // Link buttons
137
- // --------------------------------------------------
81
+ // -------------------------
138
82
 
139
83
  // Make a button look and behave like a link
140
84
  .btn-link,
@@ -168,8 +112,49 @@ fieldset[disabled] .btn-link {
168
112
  fieldset[disabled] & {
169
113
  &:hover,
170
114
  &:focus {
171
- color: @grayDark;
115
+ color: @gray-dark;
172
116
  text-decoration: none;
173
117
  }
174
118
  }
175
119
  }
120
+
121
+
122
+ // Button Sizes
123
+ // --------------------------------------------------
124
+
125
+ .btn-large {
126
+ padding: @padding-large-vertical @padding-large-horizontal;
127
+ font-size: @font-size-large;
128
+ border-radius: @border-radius-large;
129
+ }
130
+ .btn-small {
131
+ padding: @padding-small-vertical @padding-small-horizontal;
132
+ font-size: @font-size-small;
133
+ line-height: 1.5; // ensure proper height of button next to small input
134
+ border-radius: @border-radius-small;
135
+ }
136
+
137
+
138
+ // Block button
139
+ // --------------------------------------------------
140
+
141
+ .btn-block {
142
+ display: block;
143
+ width: 100%;
144
+ padding-left: 0;
145
+ padding-right: 0;
146
+ }
147
+
148
+ // Vertically space out multiple block buttons
149
+ .btn-block + .btn-block {
150
+ margin-top: 5px;
151
+ }
152
+
153
+ // Specificity overrides
154
+ input[type="submit"],
155
+ input[type="reset"],
156
+ input[type="button"] {
157
+ &.btn-block {
158
+ width: 100%;
159
+ }
160
+ }