spiderfw 0.6.26.pre1 → 0.6.26
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.
- data/CHANGELOG +4 -0
- data/VERSION +1 -1
- data/apps/app_server/lib/git_app.rb +1 -1
- data/apps/core/admin/admin.rb +2 -1
- data/apps/core/components/public/bootstrap/LICENSE +0 -0
- data/apps/core/components/public/bootstrap/README.md +3 -2
- data/apps/core/components/public/bootstrap/img/glyphicons-halflings-white.png +0 -0
- data/apps/core/components/public/bootstrap/img/glyphicons-halflings.png +0 -0
- data/apps/core/components/public/bootstrap/js/README.md +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-alert.js +8 -5
- data/apps/core/components/public/bootstrap/js/bootstrap-button.js +5 -3
- data/apps/core/components/public/bootstrap/js/bootstrap-carousel.js +5 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-collapse.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-dropdown.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-modal.js +6 -5
- data/apps/core/components/public/bootstrap/js/bootstrap-popover.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-scrollspy.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-tab.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-tooltip.js +2 -2
- data/apps/core/components/public/bootstrap/js/bootstrap-transition.js +3 -3
- data/apps/core/components/public/bootstrap/js/bootstrap-typeahead.js +2 -2
- data/apps/core/components/public/bootstrap/js/tests/index.html +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-alert.js +2 -2
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-button.js +25 -2
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-collapse.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-dropdown.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-modal.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-popover.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-scrollspy.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-tab.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-tooltip.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-transition.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-typeahead.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/vendor/jquery.js +0 -0
- data/apps/core/components/public/bootstrap/js/tests/vendor/qunit.css +0 -0
- data/apps/core/components/public/bootstrap/js/tests/vendor/qunit.js +0 -0
- data/apps/core/components/public/bootstrap/scss/_accordion.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_alerts.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_breadcrumbs.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_button-groups.scss +1 -1
- data/apps/core/components/public/bootstrap/scss/_buttons.scss +25 -7
- data/apps/core/components/public/bootstrap/scss/_carousel.scss +1 -1
- data/apps/core/components/public/bootstrap/scss/_close.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_code.scss +13 -0
- data/apps/core/components/public/bootstrap/scss/_component-animations.scss +2 -2
- data/apps/core/components/public/bootstrap/scss/_dropdowns.scss +2 -3
- data/apps/core/components/public/bootstrap/scss/_forms.scss +50 -44
- data/apps/core/components/public/bootstrap/scss/_grid.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_hero-unit.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_labels.scss +23 -7
- data/apps/core/components/public/bootstrap/scss/_layouts.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_mixins.scss +83 -68
- data/apps/core/components/public/bootstrap/scss/_modals.scss +11 -0
- data/apps/core/components/public/bootstrap/scss/_navbar.scss +11 -3
- data/apps/core/components/public/bootstrap/scss/_navs.scss +27 -17
- data/apps/core/components/public/bootstrap/scss/_pager.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_pagination.scss +38 -47
- data/apps/core/components/public/bootstrap/scss/_popovers.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_print.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_progress-bars.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_reset.scss +1 -1
- data/apps/core/components/public/bootstrap/scss/_scaffolding.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_sprites.scss +7 -5
- data/apps/core/components/public/bootstrap/scss/_tables.scss +14 -3
- data/apps/core/components/public/bootstrap/scss/_thumbnails.scss +2 -2
- data/apps/core/components/public/bootstrap/scss/_tooltip.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_type.scss +3 -2
- data/apps/core/components/public/bootstrap/scss/_utilities.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/_variables.scss +12 -4
- data/apps/core/components/public/bootstrap/scss/_wells.scss +0 -0
- data/apps/core/components/public/bootstrap/scss/bootstrap.css +290 -820
- data/apps/core/components/public/bootstrap/scss/bootstrap.scss +1 -1
- data/apps/core/components/public/bootstrap/scss/{bootstrap-responsive.css → responsive.css} +42 -31
- data/apps/core/components/public/bootstrap/scss/{bootstrap-responsive.scss → responsive.scss} +10 -6
- data/apps/core/components/public/css/table_base.css +0 -4
- data/apps/core/components/public/js/jquery/jquery-ui-1.8.11/ui/jquery.ui.sortable.js +10 -2
- data/apps/core/components/public/js/plugins/sortable.js +4 -4
- data/apps/core/components/public/js/spider.js +3 -1
- data/apps/core/components/widgets/confirm/confirm.rb +20 -7
- data/apps/core/components/widgets/table/table.shtml +1 -1
- data/apps/core/forms/public/html_area.js +5 -4
- data/apps/core/forms/public/input.js +28 -28
- data/apps/core/forms/public/search_select.js +131 -131
- data/apps/core/forms/public/select.js +16 -16
- data/apps/core/forms/widgets/form/form.rb +11 -7
- data/apps/core/forms/widgets/inputs/date_time/date_time.rb +1 -1
- data/apps/core/forms/widgets/inputs/html_area/html_area.shtml +2 -2
- data/apps/core/forms/widgets/inputs/input/input.rb +3 -1
- data/apps/messenger/lib/backends/mobyt.rb +11 -0
- data/apps/messenger/test/features/sms_mobyt.feature +24 -0
- data/apps/messenger/test/features/step_definitions/sms_mobyt.rb +21 -0
- data/apps/messenger/views/index.shtml +2 -2
- data/apps/soap/controllers/soap_controller.rb +5 -2
- data/lib/spiderfw/app.rb +13 -0
- data/lib/spiderfw/config/configuration.rb +4 -1
- data/lib/spiderfw/config/options/spider.rb +1 -1
- data/lib/spiderfw/controller/http_controller.rb +2 -0
- data/lib/spiderfw/http/adapters/rack.rb +1 -1
- data/lib/spiderfw/i18n/cldr.rb +1 -1
- data/lib/spiderfw/model/base_model.rb +5 -0
- data/lib/spiderfw/model/mappers/mapper.rb +3 -1
- data/lib/spiderfw/model/mixins/tree.rb +11 -1
- data/lib/spiderfw/model/model.rb +7 -5
- data/lib/spiderfw/model/query_set.rb +6 -0
- data/lib/spiderfw/setup/app_server_client.rb +1 -1
- data/lib/spiderfw/spider.rb +9 -9
- data/lib/spiderfw/templates/layout.rb +5 -3
- data/lib/spiderfw/templates/resources/sass.rb +31 -3
- data/lib/spiderfw/templates/template.rb +10 -9
- data/lib/spiderfw/widget/widget.rb +2 -2
- metadata +13 -17
- data/apps/core/components/public/bootstrap/scss/_custom.css +0 -0
- data/apps/core/components/public/bootstrap/scss/_patterns.scss +0 -13
- data/apps/core/components/public/bootstrap/scss/config.rb +0 -36
|
@@ -28,6 +28,12 @@ legend {
|
|
|
28
28
|
color: $grayDark;
|
|
29
29
|
border: 0;
|
|
30
30
|
border-bottom: 1px solid #eee;
|
|
31
|
+
|
|
32
|
+
// Small
|
|
33
|
+
small {
|
|
34
|
+
font-size: $baseLineHeight * .75;
|
|
35
|
+
color: $grayLight;
|
|
36
|
+
}
|
|
31
37
|
}
|
|
32
38
|
|
|
33
39
|
// Set font for forms
|
|
@@ -38,6 +44,12 @@ select,
|
|
|
38
44
|
textarea {
|
|
39
45
|
@include font-sans-serif($baseFontSize,normal,$baseLineHeight);
|
|
40
46
|
}
|
|
47
|
+
input,
|
|
48
|
+
button,
|
|
49
|
+
select,
|
|
50
|
+
textarea {
|
|
51
|
+
@include font-sans-serif(); // And only set font-family here for those that need it (note the missing label element)
|
|
52
|
+
}
|
|
41
53
|
|
|
42
54
|
// Identify controls by their labels
|
|
43
55
|
label {
|
|
@@ -75,22 +87,26 @@ label select {
|
|
|
75
87
|
}
|
|
76
88
|
|
|
77
89
|
// Mini reset for unique input types
|
|
78
|
-
input[type=image],
|
|
79
|
-
input[type=checkbox],
|
|
80
|
-
input[type=radio] {
|
|
90
|
+
input[type="image"],
|
|
91
|
+
input[type="checkbox"],
|
|
92
|
+
input[type="radio"] {
|
|
81
93
|
width: auto;
|
|
82
94
|
height: auto;
|
|
83
95
|
padding: 0;
|
|
84
96
|
margin: 3px 0;
|
|
85
97
|
*margin-top: 0; /* IE7 */
|
|
86
98
|
line-height: normal;
|
|
87
|
-
border: none;
|
|
88
99
|
cursor: pointer;
|
|
89
|
-
border-radius
|
|
100
|
+
@include border-radius(0); // Nuke border-radius for IE9 only
|
|
101
|
+
border: 0 \9; /* IE9 and down */
|
|
102
|
+
}
|
|
103
|
+
input[type="image"] {
|
|
104
|
+
border: 0;
|
|
90
105
|
}
|
|
91
106
|
|
|
92
107
|
// Reset the file input to browser defaults
|
|
93
108
|
input[type="file"] {
|
|
109
|
+
width: auto;
|
|
94
110
|
padding: initial;
|
|
95
111
|
line-height: initial;
|
|
96
112
|
border: initial;
|
|
@@ -115,6 +131,11 @@ input[type="file"] {
|
|
|
115
131
|
line-height: 28px;
|
|
116
132
|
}
|
|
117
133
|
|
|
134
|
+
// Reset line-height for IE
|
|
135
|
+
input[type="file"] {
|
|
136
|
+
line-height: 18px \9;
|
|
137
|
+
}
|
|
138
|
+
|
|
118
139
|
// Chrome on Linux and Mobile Safari need background-color
|
|
119
140
|
select {
|
|
120
141
|
width: 220px; // default input width + 10px of padding that doesn't get applied
|
|
@@ -132,6 +153,7 @@ input[type="image"] {
|
|
|
132
153
|
@include box-shadow(none);
|
|
133
154
|
}
|
|
134
155
|
|
|
156
|
+
// Make textarea height behave
|
|
135
157
|
textarea {
|
|
136
158
|
height: auto;
|
|
137
159
|
}
|
|
@@ -165,6 +187,7 @@ input[type="hidden"] {
|
|
|
165
187
|
}
|
|
166
188
|
|
|
167
189
|
// Radios and checkboxes on same line
|
|
190
|
+
// TODO v3: Convert .inline to .control-inline
|
|
168
191
|
.radio.inline,
|
|
169
192
|
.checkbox.inline {
|
|
170
193
|
display: inline-block;
|
|
@@ -175,11 +198,6 @@ input[type="hidden"] {
|
|
|
175
198
|
.checkbox.inline + .checkbox.inline {
|
|
176
199
|
margin-left: 10px; // space out consecutive inline controls
|
|
177
200
|
}
|
|
178
|
-
// But don't forget to remove their padding on first-child
|
|
179
|
-
.controls > .radio.inline:first-child,
|
|
180
|
-
.controls > .checkbox.inline:first-child {
|
|
181
|
-
padding-top: 0;
|
|
182
|
-
}
|
|
183
201
|
|
|
184
202
|
|
|
185
203
|
|
|
@@ -201,8 +219,8 @@ textarea:focus {
|
|
|
201
219
|
outline: thin dotted \9; /* IE6-8 */
|
|
202
220
|
}
|
|
203
221
|
input[type="file"]:focus,
|
|
222
|
+
input[type="radio"]:focus,
|
|
204
223
|
input[type="checkbox"]:focus,
|
|
205
|
-
|
|
206
224
|
select:focus {
|
|
207
225
|
@include box-shadow(none); // override for file inputs
|
|
208
226
|
@include tab-focus();
|
|
@@ -261,33 +279,6 @@ textarea[readonly] {
|
|
|
261
279
|
// FORM FIELD FEEDBACK STATES
|
|
262
280
|
// --------------------------
|
|
263
281
|
|
|
264
|
-
// Mixin for form field states
|
|
265
|
-
@mixin formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
|
|
266
|
-
// Set the text color
|
|
267
|
-
> label,
|
|
268
|
-
.help-block,
|
|
269
|
-
.help-inline {
|
|
270
|
-
color: $textColor;
|
|
271
|
-
}
|
|
272
|
-
// Style inputs accordingly
|
|
273
|
-
input,
|
|
274
|
-
select,
|
|
275
|
-
textarea {
|
|
276
|
-
color: $textColor;
|
|
277
|
-
border-color: $borderColor;
|
|
278
|
-
&:focus {
|
|
279
|
-
border-color: darken($borderColor, 10%);
|
|
280
|
-
@include box-shadow(0 0 6px lighten($borderColor, 20%));
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
// Give a small background color for input-prepend/-append
|
|
284
|
-
.input-prepend .add-on,
|
|
285
|
-
.input-append .add-on {
|
|
286
|
-
color: $textColor;
|
|
287
|
-
background-color: $backgroundColor;
|
|
288
|
-
border-color: $textColor;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
282
|
// Warning
|
|
292
283
|
.control-group.warning {
|
|
293
284
|
@include formFieldState($warningText, $warningText, $warningBackground);
|
|
@@ -345,6 +336,7 @@ select:focus:required:invalid {
|
|
|
345
336
|
// ---------
|
|
346
337
|
|
|
347
338
|
.help-block {
|
|
339
|
+
display: block; // account for any element using help-block
|
|
348
340
|
margin-top: 5px;
|
|
349
341
|
margin-bottom: 0;
|
|
350
342
|
color: $grayLight;
|
|
@@ -413,6 +405,7 @@ select:focus:required:invalid {
|
|
|
413
405
|
@include border-radius(3px 0 0 3px);
|
|
414
406
|
}
|
|
415
407
|
.uneditable-input {
|
|
408
|
+
border-left-color: #eee;
|
|
416
409
|
border-right-color: #ccc;
|
|
417
410
|
}
|
|
418
411
|
.add-on {
|
|
@@ -462,6 +455,10 @@ select:focus:required:invalid {
|
|
|
462
455
|
display: inline-block;
|
|
463
456
|
margin-bottom: 0;
|
|
464
457
|
}
|
|
458
|
+
// Re-hide hidden elements due to specifity
|
|
459
|
+
.hide {
|
|
460
|
+
display: none;
|
|
461
|
+
}
|
|
465
462
|
}
|
|
466
463
|
.form-search label,
|
|
467
464
|
.form-inline label,
|
|
@@ -478,21 +475,30 @@ select:focus:required:invalid {
|
|
|
478
475
|
.form-inline .input-prepend .add-on {
|
|
479
476
|
vertical-align: middle;
|
|
480
477
|
}
|
|
478
|
+
// Inline checkbox/radio labels
|
|
479
|
+
.form-search .radio,
|
|
480
|
+
.form-inline .radio,
|
|
481
|
+
.form-search .checkbox,
|
|
482
|
+
.form-inline .checkbox {
|
|
483
|
+
margin-bottom: 0;
|
|
484
|
+
vertical-align: middle;
|
|
485
|
+
}
|
|
481
486
|
|
|
482
487
|
// Margin to space out fieldsets
|
|
483
488
|
.control-group {
|
|
484
489
|
margin-bottom: $baseLineHeight / 2;
|
|
485
490
|
}
|
|
486
491
|
|
|
492
|
+
// Legend collapses margin, so next element is responsible for spacing
|
|
493
|
+
legend + .control-group {
|
|
494
|
+
margin-top: $baseLineHeight;
|
|
495
|
+
-webkit-margin-top-collapse: separate;
|
|
496
|
+
}
|
|
497
|
+
|
|
487
498
|
// Horizontal-specific styles
|
|
488
499
|
// --------------------------
|
|
489
500
|
|
|
490
501
|
.form-horizontal {
|
|
491
|
-
// Legend collapses margin, so we're relegated to padding
|
|
492
|
-
legend + .control-group {
|
|
493
|
-
margin-top: $baseLineHeight;
|
|
494
|
-
-webkit-margin-top-collapse: separate;
|
|
495
|
-
}
|
|
496
502
|
// Increase spacing between groups
|
|
497
503
|
.control-group {
|
|
498
504
|
margin-bottom: $baseLineHeight;
|
|
@@ -513,4 +519,4 @@ select:focus:required:invalid {
|
|
|
513
519
|
.form-actions {
|
|
514
520
|
padding-left: 160px;
|
|
515
521
|
}
|
|
516
|
-
}
|
|
522
|
+
}
|
|
File without changes
|
|
File without changes
|
|
@@ -1,16 +1,32 @@
|
|
|
1
1
|
// LABELS
|
|
2
2
|
// ------
|
|
3
3
|
|
|
4
|
+
// Base
|
|
4
5
|
.label {
|
|
5
|
-
padding:
|
|
6
|
-
font-size: $baseFontSize * .
|
|
6
|
+
padding: 2px 4px 3px;
|
|
7
|
+
font-size: $baseFontSize * .85;
|
|
7
8
|
font-weight: bold;
|
|
8
9
|
color: $white;
|
|
9
|
-
text-
|
|
10
|
+
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
|
10
11
|
background-color: $grayLight;
|
|
11
12
|
@include border-radius(3px);
|
|
12
13
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
.label
|
|
16
|
-
|
|
14
|
+
|
|
15
|
+
// Hover state
|
|
16
|
+
.label:hover {
|
|
17
|
+
color: $white;
|
|
18
|
+
text-decoration: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// Colors
|
|
22
|
+
.label-important { background-color: $errorText; }
|
|
23
|
+
.label-important:hover { background-color: darken($errorText, 10%); }
|
|
24
|
+
|
|
25
|
+
.label-warning { background-color: $orange; }
|
|
26
|
+
.label-warning:hover { background-color: darken($orange, 10%); }
|
|
27
|
+
|
|
28
|
+
.label-success { background-color: $successText; }
|
|
29
|
+
.label-success:hover { background-color: darken($successText, 10%); }
|
|
30
|
+
|
|
31
|
+
.label-info { background-color: $infoText; }
|
|
32
|
+
.label-info:hover { background-color: darken($infoText, 10%); }
|
|
File without changes
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
// ------------------
|
|
26
26
|
@mixin tab-focus() {
|
|
27
27
|
// Default
|
|
28
|
-
outline: thin dotted;
|
|
28
|
+
outline: thin dotted #333;
|
|
29
29
|
// Webkit
|
|
30
30
|
outline: 5px auto -webkit-focus-ring-color;
|
|
31
31
|
outline-offset: -2px;
|
|
@@ -89,6 +89,15 @@
|
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
+
// Text overflow
|
|
93
|
+
// -------------------------
|
|
94
|
+
// Requires inline-block or block for proper styling
|
|
95
|
+
@mixin text-overflow() {
|
|
96
|
+
overflow: hidden;
|
|
97
|
+
text-overflow: ellipsis;
|
|
98
|
+
white-space: nowrap;
|
|
99
|
+
}
|
|
100
|
+
|
|
92
101
|
|
|
93
102
|
|
|
94
103
|
// FONTS
|
|
@@ -127,9 +136,6 @@
|
|
|
127
136
|
|
|
128
137
|
|
|
129
138
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
139
|
// GRID SYSTEM
|
|
134
140
|
// --------------------------------------------------
|
|
135
141
|
|
|
@@ -167,31 +173,16 @@
|
|
|
167
173
|
@include gridSystem-gridColumn($gridGutterWidth);
|
|
168
174
|
}
|
|
169
175
|
// Default columns
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
.span5 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 5); }
|
|
175
|
-
.span6 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 6); }
|
|
176
|
-
.span7 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 7); }
|
|
177
|
-
.span8 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 8); }
|
|
178
|
-
.span9 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 9); }
|
|
179
|
-
.span10 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 10); }
|
|
180
|
-
.span11 { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 11); }
|
|
181
|
-
.span12,
|
|
176
|
+
@for $i from 1 through $gridColumns {
|
|
177
|
+
.span#{$i} { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $i); }
|
|
178
|
+
}
|
|
179
|
+
|
|
182
180
|
.container { @include gridSystem-columns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 12); }
|
|
181
|
+
|
|
183
182
|
// Offset column options
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
.offset4 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 4); }
|
|
188
|
-
.offset5 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 5); }
|
|
189
|
-
.offset6 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 6); }
|
|
190
|
-
.offset7 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 7); }
|
|
191
|
-
.offset8 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 8); }
|
|
192
|
-
.offset9 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 9); }
|
|
193
|
-
.offset10 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 10); }
|
|
194
|
-
.offset11 { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, 11); }
|
|
183
|
+
@for $i from 1 through $gridColumns - 1 {
|
|
184
|
+
.offset#{$i} { @include gridSystem-offset($gridColumnWidth, $gridGutterWidth, $i); }
|
|
185
|
+
}
|
|
195
186
|
}
|
|
196
187
|
|
|
197
188
|
// Fluid grid system
|
|
@@ -218,18 +209,9 @@
|
|
|
218
209
|
margin-left: 0;
|
|
219
210
|
}
|
|
220
211
|
// Default columns
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
.span4 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 4); }
|
|
225
|
-
.span5 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 5); }
|
|
226
|
-
.span6 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 6); }
|
|
227
|
-
.span7 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 7); }
|
|
228
|
-
.span8 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 8); }
|
|
229
|
-
.span9 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 9); }
|
|
230
|
-
.span10 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 10); }
|
|
231
|
-
.span11 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 11); }
|
|
232
|
-
.span12 { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, 12); }
|
|
212
|
+
@for $i from 1 through $gridColumns {
|
|
213
|
+
> .span#{$i} { @include fluidGridSystem-columns($fluidGridGutterWidth, $fluidGridColumnWidth, $i); }
|
|
214
|
+
}
|
|
233
215
|
}
|
|
234
216
|
}
|
|
235
217
|
|
|
@@ -244,18 +226,9 @@
|
|
|
244
226
|
input,
|
|
245
227
|
textarea,
|
|
246
228
|
.uneditable-input {
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
&.span4 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 4); }
|
|
251
|
-
&.span5 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 5); }
|
|
252
|
-
&.span6 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 6); }
|
|
253
|
-
&.span7 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 7); }
|
|
254
|
-
&.span8 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 8); }
|
|
255
|
-
&.span9 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 9); }
|
|
256
|
-
&.span10 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 10); }
|
|
257
|
-
&.span11 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 11); }
|
|
258
|
-
&.span12 { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, 12); }
|
|
229
|
+
@for $i from 1 through $gridColumns {
|
|
230
|
+
&.span#{$i} { @include inputGridSystem-inputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $i); }
|
|
231
|
+
}
|
|
259
232
|
}
|
|
260
233
|
}
|
|
261
234
|
|
|
@@ -264,8 +237,52 @@
|
|
|
264
237
|
|
|
265
238
|
|
|
266
239
|
|
|
240
|
+
// Make a Grid
|
|
241
|
+
// -------------------------
|
|
242
|
+
// Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
|
|
243
|
+
@mixin makeRow() {
|
|
244
|
+
margin-left: $gridGutterWidth * -1;
|
|
245
|
+
@include clearfix();
|
|
246
|
+
}
|
|
247
|
+
@mixin makeColumn($columns: 1) {
|
|
248
|
+
float: left;
|
|
249
|
+
margin-left: $gridGutterWidth;
|
|
250
|
+
width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
|
|
251
|
+
}
|
|
252
|
+
|
|
267
253
|
|
|
268
254
|
|
|
255
|
+
// Form field states (used in forms.less)
|
|
256
|
+
// --------------------------------------------------
|
|
257
|
+
|
|
258
|
+
// Mixin for form field states
|
|
259
|
+
@mixin formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
|
|
260
|
+
// Set the text color
|
|
261
|
+
> label,
|
|
262
|
+
.help-block,
|
|
263
|
+
.help-inline {
|
|
264
|
+
color: $textColor;
|
|
265
|
+
}
|
|
266
|
+
// Style inputs accordingly
|
|
267
|
+
input,
|
|
268
|
+
select,
|
|
269
|
+
textarea {
|
|
270
|
+
color: $textColor;
|
|
271
|
+
border-color: $borderColor;
|
|
272
|
+
&:focus {
|
|
273
|
+
border-color: darken($borderColor, 10%);
|
|
274
|
+
@include box-shadow(0 0 6px lighten($borderColor, 20%));
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
// Give a small background color for input-prepend/-append
|
|
278
|
+
.input-prepend .add-on,
|
|
279
|
+
.input-append .add-on {
|
|
280
|
+
color: $textColor;
|
|
281
|
+
background-color: $backgroundColor;
|
|
282
|
+
border-color: $textColor;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
269
286
|
|
|
270
287
|
|
|
271
288
|
// CSS3 PROPERTIES
|
|
@@ -323,12 +340,12 @@
|
|
|
323
340
|
-o-transform: translate($x, $y);
|
|
324
341
|
transform: translate($x, $y);
|
|
325
342
|
}
|
|
326
|
-
@mixin
|
|
327
|
-
-webkit-transform:
|
|
328
|
-
-moz-transform:
|
|
329
|
-
-ms-transform:
|
|
330
|
-
-o-transform:
|
|
331
|
-
transform:
|
|
343
|
+
@mixin translate3d($x: 0, $y: 0, $z: 0) {
|
|
344
|
+
-webkit-transform: translate($x, $y, $z);
|
|
345
|
+
-moz-transform: translate($x, $y, $z);
|
|
346
|
+
-ms-transform: translate($x, $y, $z);
|
|
347
|
+
-o-transform: translate($x, $y, $z);
|
|
348
|
+
transform: translate($x, $y, $z);
|
|
332
349
|
}
|
|
333
350
|
|
|
334
351
|
// Background clipping
|
|
@@ -405,27 +422,25 @@
|
|
|
405
422
|
// Gradients
|
|
406
423
|
@mixin gradient-horizontal($startColor: #555, $endColor: #333) {
|
|
407
424
|
background-color: $endColor;
|
|
408
|
-
background-image: -khtml-gradient(linear, left top, right top, from($startColor), to($endColor)); // Konqueror
|
|
409
425
|
background-image: -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
|
|
410
426
|
background-image: -ms-linear-gradient(left, $startColor, $endColor); // IE10
|
|
411
|
-
background-image: -webkit-gradient(linear,
|
|
427
|
+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
|
412
428
|
background-image: -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
|
413
429
|
background-image: -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
|
|
414
430
|
background-image: linear-gradient(left, $startColor, $endColor); // Le standard
|
|
415
431
|
background-repeat: repeat-x;
|
|
416
|
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=1); // IE9 and down
|
|
432
|
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=1), $startColor, $endColor; // IE9 and down
|
|
417
433
|
}
|
|
418
434
|
@mixin gradient-vertical($startColor: #555, $endColor: #333) {
|
|
419
|
-
background-color: $endColor;
|
|
420
|
-
background-image: -khtml-gradient(linear, left top, left bottom, from($startColor), to($endColor)); // Konqueror
|
|
435
|
+
background-color: mix($startColor, $endColor, 60%);
|
|
421
436
|
background-image: -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
|
|
422
437
|
background-image: -ms-linear-gradient(top, $startColor, $endColor); // IE10
|
|
423
|
-
background-image: -webkit-gradient(linear,
|
|
438
|
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
|
424
439
|
background-image: -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
|
425
440
|
background-image: -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
|
|
426
|
-
|
|
441
|
+
background-image: linear-gradient(top, $startColor, $endColor); // The standard
|
|
427
442
|
background-repeat: repeat-x;
|
|
428
|
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down
|
|
443
|
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0),$startColor,$endColor; // IE9 and down
|
|
429
444
|
}
|
|
430
445
|
@mixin gradient-directional($startColor: #555, $endColor: #333, $deg: 45deg) {
|
|
431
446
|
background-color: $endColor;
|
|
@@ -437,7 +452,7 @@
|
|
|
437
452
|
background-image: linear-gradient($deg, $startColor, $endColor); // The standard
|
|
438
453
|
}
|
|
439
454
|
@mixin gradient-vertical-three-colors($startColor: #00b3ee, $midColor: #7a43b6, $colorStop: 50%, $endColor: #c3325f) {
|
|
440
|
-
background-color: $endColor;
|
|
455
|
+
background-color: mix($midColor, $endColor, 80%);
|
|
441
456
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
|
|
442
457
|
background-image: -webkit-linear-gradient($startColor, $midColor $colorStop, $endColor);
|
|
443
458
|
background-image: -moz-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
|
|
@@ -445,10 +460,10 @@
|
|
|
445
460
|
background-image: -o-linear-gradient($startColor, $midColor $colorStop, $endColor);
|
|
446
461
|
background-image: linear-gradient($startColor, $midColor $colorStop, $endColor);
|
|
447
462
|
background-repeat: no-repeat;
|
|
448
|
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0); // IE9 and down, gets no color-stop at all the proper fallback
|
|
463
|
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$startColor}', endColorstr='#{$endColor}', GradientType=0), $startColor, $endColor; // IE9 and down, gets no color-stop at all the proper fallback
|
|
449
464
|
}
|
|
450
465
|
@mixin gradient-radial($centerColor: #555, $outsideColor: #333) {
|
|
451
|
-
background-color: $
|
|
466
|
+
background-color: $outerColor;
|
|
452
467
|
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($centerColor), to($outsideColor));
|
|
453
468
|
background-image: -webkit-radial-gradient(circle, $centerColor, $outsideColor);
|
|
454
469
|
background-image: -moz-radial-gradient(circle, $centerColor, $outsideColor);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// MODALS
|
|
2
2
|
// ------
|
|
3
3
|
|
|
4
|
+
// Recalculate z-index where appropriate
|
|
4
5
|
.modal-open {
|
|
5
6
|
.dropdown-menu { z-index: $zindexDropdown + $zindexModal; }
|
|
6
7
|
.dropdown.open { *z-index: $zindexDropdown + $zindexModal; }
|
|
@@ -8,6 +9,7 @@
|
|
|
8
9
|
.tooltip { z-index: $zindexTooltip + $zindexModal; }
|
|
9
10
|
}
|
|
10
11
|
|
|
12
|
+
// Background
|
|
11
13
|
.modal-backdrop {
|
|
12
14
|
position: fixed;
|
|
13
15
|
top: 0;
|
|
@@ -25,6 +27,7 @@
|
|
|
25
27
|
@include opacity(80);
|
|
26
28
|
}
|
|
27
29
|
|
|
30
|
+
// Base modal
|
|
28
31
|
.modal {
|
|
29
32
|
position: fixed;
|
|
30
33
|
top: 50%;
|
|
@@ -53,9 +56,17 @@
|
|
|
53
56
|
// Close icon
|
|
54
57
|
.close { margin-top: 2px; }
|
|
55
58
|
}
|
|
59
|
+
|
|
60
|
+
// Body (where all modal content resises)
|
|
56
61
|
.modal-body {
|
|
57
62
|
padding: 15px;
|
|
58
63
|
}
|
|
64
|
+
// Remove bottom margin if need be
|
|
65
|
+
.modal-body .modal-form {
|
|
66
|
+
margin-bottom: 0;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// Footer (for actions)
|
|
59
70
|
.modal-footer {
|
|
60
71
|
padding: 14px 15px 15px;
|
|
61
72
|
margin-bottom: 0;
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
margin-top: 5px; // make buttons vertically centered in navbar
|
|
82
82
|
}
|
|
83
83
|
.btn-group .btn {
|
|
84
|
-
margin-top: 0;
|
|
84
|
+
margin-top: 0; // then undo the margin here so we don't accidentally double it
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
|
|
@@ -104,6 +104,14 @@
|
|
|
104
104
|
input[type="radio"] {
|
|
105
105
|
margin-top: 3px;
|
|
106
106
|
}
|
|
107
|
+
.input-append,
|
|
108
|
+
.input-prepend {
|
|
109
|
+
margin-top: 6px;
|
|
110
|
+
white-space: nowrap; // preven two items from separating within a .navbar-form that has .pull-left
|
|
111
|
+
input {
|
|
112
|
+
margin-top: 0; // remove the margin on top since it's on the parent
|
|
113
|
+
}
|
|
114
|
+
}
|
|
107
115
|
}
|
|
108
116
|
|
|
109
117
|
// Navbar search
|
|
@@ -133,7 +141,7 @@
|
|
|
133
141
|
background-color: $grayLight;
|
|
134
142
|
background-color: rgba(255,255,255,.5);
|
|
135
143
|
}
|
|
136
|
-
// Focus states (we use .focused since
|
|
144
|
+
// Focus states (we use .focused since IE7-8 and down doesn't support :focus)
|
|
137
145
|
&:focus,
|
|
138
146
|
&.focused {
|
|
139
147
|
padding: 5px 10px;
|
|
@@ -194,7 +202,7 @@
|
|
|
194
202
|
}
|
|
195
203
|
// Hover
|
|
196
204
|
.navbar .nav > li > a:hover {
|
|
197
|
-
background-color: transparent
|
|
205
|
+
background-color: $navbarLinkBackgroundHover; // "transparent" is default to differentiate :hover from .active
|
|
198
206
|
color: $navbarLinkColorHover;
|
|
199
207
|
text-decoration: none;
|
|
200
208
|
}
|
|
@@ -21,6 +21,21 @@
|
|
|
21
21
|
background-color: $grayLighter;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
// Nav headers (for dropdowns and lists)
|
|
25
|
+
.nav .nav-header {
|
|
26
|
+
display: block;
|
|
27
|
+
padding: 3px 15px;
|
|
28
|
+
font-size: 11px;
|
|
29
|
+
font-weight: bold;
|
|
30
|
+
line-height: $baseLineHeight;
|
|
31
|
+
color: $grayLight;
|
|
32
|
+
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
|
33
|
+
text-transform: uppercase;
|
|
34
|
+
}
|
|
35
|
+
// Space them out when they follow another list item (link)
|
|
36
|
+
.nav li + .nav-header {
|
|
37
|
+
margin-top: 9px;
|
|
38
|
+
}
|
|
24
39
|
|
|
25
40
|
|
|
26
41
|
// NAV LIST
|
|
@@ -33,28 +48,20 @@
|
|
|
33
48
|
}
|
|
34
49
|
.nav-list > li > a,
|
|
35
50
|
.nav-list .nav-header {
|
|
36
|
-
display: block;
|
|
37
|
-
padding: 3px 15px;
|
|
38
51
|
margin-left: -15px;
|
|
39
52
|
margin-right: -15px;
|
|
40
53
|
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
|
41
54
|
}
|
|
42
|
-
.nav-list
|
|
43
|
-
|
|
44
|
-
font-weight: bold;
|
|
45
|
-
line-height: $baseLineHeight;
|
|
46
|
-
color: $grayLight;
|
|
47
|
-
text-transform: uppercase;
|
|
48
|
-
}
|
|
49
|
-
.nav-list > li + .nav-header {
|
|
50
|
-
margin-top: 9px;
|
|
55
|
+
.nav-list > li > a {
|
|
56
|
+
padding: 3px 15px;
|
|
51
57
|
}
|
|
52
|
-
.nav-list .active > a
|
|
58
|
+
.nav-list .active > a,
|
|
59
|
+
.nav-list .active > a:hover {
|
|
53
60
|
color: $white;
|
|
54
61
|
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
|
|
55
62
|
background-color: $linkColor;
|
|
56
63
|
}
|
|
57
|
-
.nav-list
|
|
64
|
+
.nav-list [class^="icon-"] {
|
|
58
65
|
margin-right: 2px;
|
|
59
66
|
}
|
|
60
67
|
|
|
@@ -204,7 +211,7 @@
|
|
|
204
211
|
// -------------------------
|
|
205
212
|
.nav-tabs .active .dropdown-toggle .caret,
|
|
206
213
|
.nav-pills .active .dropdown-toggle .caret {
|
|
207
|
-
border-top-color:
|
|
214
|
+
border-top-color: $grayDark;
|
|
208
215
|
}
|
|
209
216
|
|
|
210
217
|
// Active:hover dropdown links
|
|
@@ -232,7 +239,7 @@
|
|
|
232
239
|
|
|
233
240
|
// Dropdowns in stacked tabs
|
|
234
241
|
.tabs-stacked .open > a:hover {
|
|
235
|
-
border-color:
|
|
242
|
+
border-color: $grayLight;
|
|
236
243
|
}
|
|
237
244
|
|
|
238
245
|
|
|
@@ -248,6 +255,9 @@
|
|
|
248
255
|
.tabbable {
|
|
249
256
|
@include clearfix();
|
|
250
257
|
}
|
|
258
|
+
.tab-content {
|
|
259
|
+
overflow: hidden; // prevent content from running below tabs
|
|
260
|
+
}
|
|
251
261
|
|
|
252
262
|
// Remove border on bottom, left, right
|
|
253
263
|
.tabs-below .nav-tabs,
|
|
@@ -284,8 +294,8 @@
|
|
|
284
294
|
border-top-color: #ddd;
|
|
285
295
|
}
|
|
286
296
|
}
|
|
287
|
-
.tabs-below .tabs .active > a,
|
|
288
|
-
.tabs-below .tabs .active > a:hover {
|
|
297
|
+
.tabs-below .nav-tabs .active > a,
|
|
298
|
+
.tabs-below .nav-tabs .active > a:hover {
|
|
289
299
|
border-color: transparent #ddd #ddd #ddd;
|
|
290
300
|
}
|
|
291
301
|
|
|
File without changes
|