spiderfw 0.6.39 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. checksums.yaml +8 -8
  2. data/CHANGELOG +2 -0
  3. data/Rakefile +4 -3
  4. data/VERSION +1 -1
  5. data/apps/core/admin/public/css/sass/admin.css +61 -12
  6. data/apps/core/admin/public/sass/admin.scss +51 -0
  7. data/apps/core/admin/views/login.layout.shtml +1 -1
  8. data/apps/core/components/assets.rb +34 -2
  9. data/apps/core/components/po/it/spider_components.po +2 -2
  10. data/apps/core/components/public/bootstrap/scss/_aggiunte_bootstrap_3.scss +54 -0
  11. data/apps/core/components/public/bootstrap/scss/_pagination.scss +1 -1
  12. data/apps/core/components/public/bootstrap/scss/_variables.scss +2 -0
  13. data/apps/core/components/public/bootstrap/scss/bootstrap.css +48 -2
  14. data/apps/core/components/public/bootstrap/scss/bootstrap.scss +4 -1
  15. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.eot +0 -0
  16. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.svg +272 -213
  17. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.ttf +0 -0
  18. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.woff +0 -0
  19. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.woff2 +0 -0
  20. data/apps/core/components/public/bootstrap_3/js/affix.js +48 -26
  21. data/apps/core/components/public/bootstrap_3/js/alert.js +8 -6
  22. data/apps/core/components/public/bootstrap_3/js/button.js +27 -17
  23. data/apps/core/components/public/bootstrap_3/js/carousel.js +66 -39
  24. data/apps/core/components/public/bootstrap_3/js/collapse.js +73 -42
  25. data/apps/core/components/public/bootstrap_3/js/dropdown.js +54 -40
  26. data/apps/core/components/public/bootstrap_3/js/modal.js +102 -42
  27. data/apps/core/components/public/bootstrap_3/js/popover.js +6 -11
  28. data/apps/core/components/public/bootstrap_3/js/scrollspy.js +47 -33
  29. data/apps/core/components/public/bootstrap_3/js/tab.js +48 -21
  30. data/apps/core/components/public/bootstrap_3/js/tooltip.js +118 -60
  31. data/apps/core/components/public/bootstrap_3/js/transition.js +15 -4
  32. data/apps/core/components/public/bootstrap_3/scss/_alerts.scss +8 -2
  33. data/apps/core/components/public/bootstrap_3/scss/_badges.scss +14 -3
  34. data/apps/core/components/public/bootstrap_3/scss/_button-groups.scss +23 -19
  35. data/apps/core/components/public/bootstrap_3/scss/_buttons.scss +22 -13
  36. data/apps/core/components/public/bootstrap_3/scss/_carousel.scss +28 -2
  37. data/apps/core/components/public/bootstrap_3/scss/_close.scss +1 -0
  38. data/apps/core/components/public/bootstrap_3/scss/_code.scss +7 -0
  39. data/apps/core/components/public/bootstrap_3/scss/_component-animations.scss +3 -1
  40. data/apps/core/components/public/bootstrap_3/scss/_dropdowns.scss +11 -9
  41. data/apps/core/components/public/bootstrap_3/scss/_forms.scss +190 -68
  42. data/apps/core/components/public/bootstrap_3/scss/_glyphicons.scss +83 -13
  43. data/apps/core/components/public/bootstrap_3/scss/_grid.scss +4 -4
  44. data/apps/core/components/public/bootstrap_3/scss/_input-groups.scss +1 -0
  45. data/apps/core/components/public/bootstrap_3/scss/_jumbotron.scss +8 -4
  46. data/apps/core/components/public/bootstrap_3/scss/_list-group.scss +13 -12
  47. data/apps/core/components/public/bootstrap_3/scss/_media.scss +40 -30
  48. data/apps/core/components/public/bootstrap_3/scss/_mixins.scss +1 -0
  49. data/apps/core/components/public/bootstrap_3/scss/_modals.scss +7 -4
  50. data/apps/core/components/public/bootstrap_3/scss/_navbar.scss +36 -32
  51. data/apps/core/components/public/bootstrap_3/scss/_navs.scss +3 -3
  52. data/apps/core/components/public/bootstrap_3/scss/_normalize.scss +12 -13
  53. data/apps/core/components/public/bootstrap_3/scss/_pager.scss +2 -3
  54. data/apps/core/components/public/bootstrap_3/scss/_pagination.scss +4 -3
  55. data/apps/core/components/public/bootstrap_3/scss/_panels.scss +38 -7
  56. data/apps/core/components/public/bootstrap_3/scss/_popovers.scss +5 -7
  57. data/apps/core/components/public/bootstrap_3/scss/_print.scss +96 -96
  58. data/apps/core/components/public/bootstrap_3/scss/_progress-bars.scss +20 -22
  59. data/apps/core/components/public/bootstrap_3/scss/_responsive-embed.scss +10 -9
  60. data/apps/core/components/public/bootstrap_3/scss/_responsive-utilities.scss +8 -3
  61. data/apps/core/components/public/bootstrap_3/scss/_scaffolding.scss +15 -4
  62. data/apps/core/components/public/bootstrap_3/scss/_tables.scss +15 -14
  63. data/apps/core/components/public/bootstrap_3/scss/_theme.scss +57 -13
  64. data/apps/core/components/public/bootstrap_3/scss/_thumbnails.scss +2 -2
  65. data/apps/core/components/public/bootstrap_3/scss/_tooltip.scss +13 -7
  66. data/apps/core/components/public/bootstrap_3/scss/_type.scss +21 -21
  67. data/apps/core/components/public/bootstrap_3/scss/_utilities.scss +3 -4
  68. data/apps/core/components/public/bootstrap_3/scss/_variables.scss +54 -32
  69. data/apps/core/components/public/bootstrap_3/scss/bootstrap.css +8772 -0
  70. data/apps/core/components/public/bootstrap_3/scss/bootstrap.scss +6 -0
  71. data/apps/core/components/public/bootstrap_3/scss/mixins/_background-variant.scss +2 -1
  72. data/apps/core/components/public/bootstrap_3/scss/mixins/_buttons.scss +19 -1
  73. data/apps/core/components/public/bootstrap_3/scss/mixins/_forms.scss +5 -1
  74. data/apps/core/components/public/bootstrap_3/scss/mixins/_gradients.scss +1 -1
  75. data/apps/core/components/public/bootstrap_3/scss/mixins/_grid-framework.scss +4 -10
  76. data/apps/core/components/public/bootstrap_3/scss/mixins/_grid.scss +7 -7
  77. data/apps/core/components/public/bootstrap_3/scss/mixins/_hide-text.scss +3 -3
  78. data/apps/core/components/public/bootstrap_3/scss/mixins/_labels.scss +1 -1
  79. data/apps/core/components/public/bootstrap_3/scss/mixins/_list-group.scss +3 -2
  80. data/apps/core/components/public/bootstrap_3/scss/mixins/_opacity.scss +1 -1
  81. data/apps/core/components/public/bootstrap_3/scss/mixins/_pagination.scss +2 -1
  82. data/apps/core/components/public/bootstrap_3/scss/mixins/_panels.scss +4 -0
  83. data/apps/core/components/public/bootstrap_3/scss/mixins/_progress-bar.scss +3 -1
  84. data/apps/core/components/public/bootstrap_3/scss/mixins/_reset-text.scss +18 -0
  85. data/apps/core/components/public/bootstrap_3/scss/mixins/_responsive-visibility.scss +1 -1
  86. data/apps/core/components/public/bootstrap_3/scss/mixins/_text-emphasis.scss +2 -1
  87. data/apps/core/components/public/bootstrap_3/scss/mixins/_vendor-prefixes.scss +11 -13
  88. data/apps/core/components/public/css/table_base.css +46 -1
  89. data/apps/core/components/public/fontawesome_4/fonts/font-awesome/fontawesome-webfont.eot +0 -0
  90. data/apps/core/components/public/fontawesome_4/fonts/font-awesome/fontawesome-webfont.svg +565 -0
  91. data/apps/core/components/public/fontawesome_4/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
  92. data/apps/core/components/public/fontawesome_4/fonts/font-awesome/fontawesome-webfont.woff +0 -0
  93. data/apps/core/components/public/fontawesome_4/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
  94. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome.css +2893 -0
  95. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_animated.scss +34 -0
  96. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_bordered-pulled.scss +16 -0
  97. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_core.scss +12 -0
  98. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_extras.scss +44 -0
  99. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_fixed-width.scss +6 -0
  100. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_icons.scss +596 -0
  101. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_larger.scss +13 -0
  102. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_list.scss +19 -0
  103. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_mixins.scss +26 -0
  104. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_path.scss +14 -0
  105. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_rotated-flipped.scss +20 -0
  106. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_stacked.scss +20 -0
  107. data/apps/core/components/public/fontawesome_4/stylesheets/font-awesome/_variables.scss +608 -0
  108. data/apps/core/components/public/fontawesome_4/stylesheets/font_awesome.css +2893 -0
  109. data/apps/core/components/public/fontawesome_4/stylesheets/font_awesome.scss +17 -0
  110. data/apps/core/components/public/js/paginatore.js +307 -0
  111. data/apps/core/components/public/js/spin.js +399 -0
  112. data/apps/core/components/public/mmenu/js/jquery.mmenu.js +133 -0
  113. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.borderstyle.scss +33 -0
  114. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.effects.scss +199 -0
  115. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.fullscreen.scss +24 -0
  116. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.iconbar.scss +26 -0
  117. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.multiline.scss +15 -0
  118. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.pagedim.scss +36 -0
  119. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.pageshadow.scss +36 -0
  120. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.positioning.scss +87 -0
  121. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.themes.scss +76 -0
  122. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.tileview.scss +98 -0
  123. data/apps/core/components/public/mmenu/scss/extensions/_jquery.mmenu.widescreen.scss +61 -0
  124. data/apps/core/components/public/mmenu/scss/inc/_colors.scss +175 -0
  125. data/apps/core/components/public/mmenu/scss/inc/_mixins.scss +135 -0
  126. data/apps/core/components/public/mmenu/scss/inc/_sizing.scss +86 -0
  127. data/apps/core/components/public/mmenu/scss/inc/_variables.scss +61 -0
  128. data/apps/core/components/public/mmenu/scss/jquery.mmenu.scss +478 -0
  129. data/apps/core/components/widgets/table/table.rb +7 -0
  130. data/apps/core/components/widgets/table/table.shtml +50 -17
  131. data/apps/core/forms/tags/row.erb +1 -1
  132. data/lib/spiderfw/cmd/cmd.rb +2 -0
  133. data/lib/spiderfw/cmd/commands/assets.rb +12 -0
  134. data/lib/spiderfw/controller/mixins/visual.rb +1 -0
  135. data/lib/spiderfw/create.rb +0 -1
  136. data/lib/spiderfw/i18n/gettext.rb +33 -0
  137. data/lib/spiderfw/i18n/javascript_parser.rb +2 -2
  138. data/lib/spiderfw/i18n/shtml_parser.rb +2 -2
  139. data/lib/spiderfw/model/model.rb +2 -1
  140. data/lib/spiderfw/setup/app_manager.rb +8 -0
  141. data/lib/spiderfw/spider.rb +9 -1
  142. data/lib/spiderfw/templates/layout.rb +47 -39
  143. data/lib/spiderfw/templates/template.rb +12 -4
  144. metadata +46 -1
@@ -8,7 +8,7 @@
8
8
  // Set the container width, and override it for fixed navbars in media queries.
9
9
 
10
10
  .container {
11
- @include container-fixed();
11
+ @include container-fixed;
12
12
 
13
13
  @media (min-width: $screen-sm-min) {
14
14
  width: $container-sm;
@@ -28,7 +28,7 @@
28
28
  // width for fluid, full width layouts.
29
29
 
30
30
  .container-fluid {
31
- @include container-fixed();
31
+ @include container-fixed;
32
32
  }
33
33
 
34
34
 
@@ -37,7 +37,7 @@
37
37
  // Rows contain and clear the floats of your columns.
38
38
 
39
39
  .row {
40
- @include make-row();
40
+ @include make-row;
41
41
  }
42
42
 
43
43
 
@@ -45,7 +45,7 @@
45
45
  //
46
46
  // Common styles for small and large grid columns
47
47
 
48
- @include make-grid-columns();
48
+ @include make-grid-columns;
49
49
 
50
50
 
51
51
  // Extra small grid
@@ -160,6 +160,7 @@
160
160
  &:last-child {
161
161
  > .btn,
162
162
  > .btn-group {
163
+ z-index: 2;
163
164
  margin-left: -1px;
164
165
  }
165
166
  }
@@ -4,7 +4,8 @@
4
4
 
5
5
 
6
6
  .jumbotron {
7
- padding: $jumbotron-padding;
7
+ padding-top: $jumbotron-padding;
8
+ padding-bottom: $jumbotron-padding;
8
9
  margin-bottom: $jumbotron-padding;
9
10
  color: $jumbotron-color;
10
11
  background-color: $jumbotron-bg;
@@ -13,6 +14,7 @@
13
14
  .h1 {
14
15
  color: $jumbotron-heading-color;
15
16
  }
17
+
16
18
  p {
17
19
  margin-bottom: ($jumbotron-padding / 2);
18
20
  font-size: $jumbotron-font-size;
@@ -23,7 +25,8 @@
23
25
  border-top-color: darken($jumbotron-bg, 10%);
24
26
  }
25
27
 
26
- .container & {
28
+ .container &,
29
+ .container-fluid & {
27
30
  border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
28
31
  }
29
32
 
@@ -35,14 +38,15 @@
35
38
  padding-top: ($jumbotron-padding * 1.6);
36
39
  padding-bottom: ($jumbotron-padding * 1.6);
37
40
 
38
- .container & {
41
+ .container &,
42
+ .container-fluid & {
39
43
  padding-left: ($jumbotron-padding * 2);
40
44
  padding-right: ($jumbotron-padding * 2);
41
45
  }
42
46
 
43
47
  h1,
44
48
  .h1 {
45
- font-size: ($font-size-base * 4.5);
49
+ font-size: $jumbotron-heading-font-size;
46
50
  }
47
51
  }
48
52
  }
@@ -35,23 +35,16 @@
35
35
  margin-bottom: 0;
36
36
  @include border-bottom-radius($list-group-border-radius);
37
37
  }
38
-
39
- // Align badges within list items
40
- > .badge {
41
- float: right;
42
- }
43
- > .badge + .badge {
44
- margin-right: 5px;
45
- }
46
38
  }
47
39
 
48
40
 
49
- // Linked list items
41
+ // Interactive list items
50
42
  //
51
- // Use anchor elements instead of `li`s or `div`s to create linked list items.
43
+ // Use anchor or button elements instead of `li`s or `div`s to create interactive items.
52
44
  // Includes an extra `.active` modifier class for showing selected items.
53
45
 
54
- a.list-group-item {
46
+ a.list-group-item,
47
+ button.list-group-item {
55
48
  color: $list-group-link-color;
56
49
 
57
50
  .list-group-item-heading {
@@ -67,6 +60,11 @@ a.list-group-item {
67
60
  }
68
61
  }
69
62
 
63
+ button.list-group-item {
64
+ width: 100%;
65
+ text-align: left;
66
+ }
67
+
70
68
  .list-group-item {
71
69
  // Disabled state
72
70
  &.disabled,
@@ -74,6 +72,7 @@ a.list-group-item {
74
72
  &.disabled:focus {
75
73
  background-color: $list-group-disabled-bg;
76
74
  color: $list-group-disabled-color;
75
+ cursor: $cursor-disabled;
77
76
 
78
77
  // Force color to inherit for custom content
79
78
  .list-group-item-heading {
@@ -94,7 +93,9 @@ a.list-group-item {
94
93
  border-color: $list-group-active-border;
95
94
 
96
95
  // Force color to inherit for custom content
97
- .list-group-item-heading {
96
+ .list-group-item-heading,
97
+ .list-group-item-heading > small,
98
+ .list-group-item-heading > .small {
98
99
  color: inherit;
99
100
  }
100
101
  .list-group-item-text {
@@ -1,54 +1,64 @@
1
- // Media objects
2
- // Source: http://stubbornella.org/content/?p=497
3
- // --------------------------------------------------
4
-
1
+ .media {
2
+ // Proper spacing between instances of .media
3
+ margin-top: 15px;
5
4
 
6
- // Common styles
7
- // -------------------------
5
+ &:first-child {
6
+ margin-top: 0;
7
+ }
8
+ }
8
9
 
9
- // Clear the floats
10
10
  .media,
11
11
  .media-body {
12
- overflow: hidden;
13
12
  zoom: 1;
13
+ overflow: hidden;
14
14
  }
15
15
 
16
- // Proper spacing between instances of .media
17
- .media,
18
- .media .media {
19
- margin-top: 15px;
20
- }
21
- .media:first-child {
22
- margin-top: 0;
16
+ .media-body {
17
+ width: 10000px;
23
18
  }
24
19
 
25
- // For images and videos, set to block
26
20
  .media-object {
27
21
  display: block;
22
+
23
+ // Fix collapse in webkit from max-width: 100% and display: table-cell.
24
+ &.img-thumbnail {
25
+ max-width: none;
26
+ }
28
27
  }
29
28
 
30
- // Reset margins on headings for tighter default spacing
31
- .media-heading {
32
- margin: 0 0 5px;
29
+ .media-right,
30
+ .media > .pull-right {
31
+ padding-left: 10px;
33
32
  }
34
33
 
34
+ .media-left,
35
+ .media > .pull-left {
36
+ padding-right: 10px;
37
+ }
35
38
 
36
- // Media image alignment
37
- // -------------------------
39
+ .media-left,
40
+ .media-right,
41
+ .media-body {
42
+ display: table-cell;
43
+ vertical-align: top;
44
+ }
38
45
 
39
- .media {
40
- > .pull-left {
41
- margin-right: 10px;
42
- }
43
- > .pull-right {
44
- margin-left: 10px;
45
- }
46
+ .media-middle {
47
+ vertical-align: middle;
46
48
  }
47
49
 
50
+ .media-bottom {
51
+ vertical-align: bottom;
52
+ }
48
53
 
49
- // Media list variation
50
- // -------------------------
54
+ // Reset margins on headings for tighter default spacing
55
+ .media-heading {
56
+ margin-top: 0;
57
+ margin-bottom: 5px;
58
+ }
51
59
 
60
+ // Media list variation
61
+ //
52
62
  // Undo default ul/ol styles
53
63
  .media-list {
54
64
  padding-left: 0;
@@ -11,6 +11,7 @@
11
11
  @import "mixins/responsive-visibility";
12
12
  @import "mixins/size";
13
13
  @import "mixins/tab-focus";
14
+ @import "mixins/reset-text";
14
15
  @import "mixins/text-emphasis";
15
16
  @import "mixins/text-overflow";
16
17
  @import "mixins/vendor-prefixes";
@@ -15,8 +15,7 @@
15
15
  // Container that the modal scrolls within
16
16
  .modal {
17
17
  display: none;
18
- overflow: auto;
19
- overflow-y: scroll;
18
+ overflow: hidden;
20
19
  position: fixed;
21
20
  top: 0;
22
21
  right: 0;
@@ -34,7 +33,11 @@
34
33
  @include translate(0, -25%);
35
34
  @include transition-transform(0.3s ease-out);
36
35
  }
37
- &.in .modal-dialog { @include translate(0, 0)}
36
+ &.in .modal-dialog { @include translate(0, 0) }
37
+ }
38
+ .modal-open .modal {
39
+ overflow-x: hidden;
40
+ overflow-y: auto;
38
41
  }
39
42
 
40
43
  // Shell div to position the modal with bottom padding
@@ -101,7 +104,7 @@
101
104
  padding: $modal-inner-padding;
102
105
  text-align: right; // right align buttons
103
106
  border-top: 1px solid $modal-footer-border-color;
104
- @include clearfix(); // clear it in case folks use .pull-* classes on buttons
107
+ @include clearfix; // clear it in case folks use .pull-* classes on buttons
105
108
 
106
109
  // Properly space out buttons
107
110
  .btn + .btn {
@@ -15,7 +15,7 @@
15
15
  border: 1px solid transparent;
16
16
 
17
17
  // Prevent floats from breaking the navbar
18
- @include clearfix();
18
+ @include clearfix;
19
19
 
20
20
  @media (min-width: $grid-float-breakpoint) {
21
21
  border-radius: $navbar-border-radius;
@@ -29,7 +29,7 @@
29
29
  // styling of responsive aspects.
30
30
 
31
31
  .navbar-header {
32
- @include clearfix();
32
+ @include clearfix;
33
33
 
34
34
  @media (min-width: $grid-float-breakpoint) {
35
35
  float: left;
@@ -53,7 +53,7 @@
53
53
  padding-left: $navbar-padding-horizontal;
54
54
  border-top: 1px solid transparent;
55
55
  box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
56
- @include clearfix();
56
+ @include clearfix;
57
57
  -webkit-overflow-scrolling: touch;
58
58
 
59
59
  &.in {
@@ -92,7 +92,7 @@
92
92
  .navbar-collapse {
93
93
  max-height: $navbar-collapse-max-height;
94
94
 
95
- @media (max-width: $screen-xs-min) and (orientation: landscape) {
95
+ @media (max-device-width: $screen-xs-min) and (orientation: landscape) {
96
96
  max-height: 200px;
97
97
  }
98
98
  }
@@ -172,6 +172,10 @@
172
172
  text-decoration: none;
173
173
  }
174
174
 
175
+ > img {
176
+ display: block;
177
+ }
178
+
175
179
  @media (min-width: $grid-float-breakpoint) {
176
180
  .navbar > .container &,
177
181
  .navbar > .container-fluid & {
@@ -270,26 +274,6 @@
270
274
  padding-bottom: $navbar-padding-vertical;
271
275
  }
272
276
  }
273
-
274
- &.navbar-right:last-child {
275
- margin-right: -$navbar-padding-horizontal;
276
- }
277
- }
278
- }
279
-
280
-
281
- // Component alignment
282
- //
283
- // Repurpose the pull utilities as their own navbar utilities to avoid specificity
284
- // issues with parents and chaining. Only do this when the navbar is uncollapsed
285
- // though so that navbar contents properly stack and align in mobile.
286
-
287
- @media (min-width: $grid-float-breakpoint) {
288
- .navbar-left {
289
- float: left !important;
290
- }
291
- .navbar-right {
292
- float: right !important;
293
277
  }
294
278
  }
295
279
 
@@ -309,11 +293,15 @@
309
293
  @include box-shadow($shadow);
310
294
 
311
295
  // Mixin behavior for optimum display
312
- @extend .form-inline;
296
+ @include form-inline;
313
297
 
314
298
  .form-group {
315
299
  @media (max-width: $grid-float-breakpoint-max) {
316
300
  margin-bottom: 5px;
301
+
302
+ &:last-child {
303
+ margin-bottom: 0;
304
+ }
317
305
  }
318
306
  }
319
307
 
@@ -329,11 +317,6 @@
329
317
  padding-top: 0;
330
318
  padding-bottom: 0;
331
319
  @include box-shadow(none);
332
-
333
- // Outdent the form if last child to line up with content down the page
334
- &.navbar-right:last-child {
335
- margin-right: -$navbar-padding-horizontal;
336
- }
337
320
  }
338
321
  }
339
322
 
@@ -347,6 +330,8 @@
347
330
  }
348
331
  // Menu position and menu caret support for dropups via extra dropup class
349
332
  .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
333
+ margin-bottom: 0;
334
+ @include border-top-radius($navbar-border-radius);
350
335
  @include border-bottom-radius(0);
351
336
  }
352
337
 
@@ -378,14 +363,33 @@
378
363
  float: left;
379
364
  margin-left: $navbar-padding-horizontal;
380
365
  margin-right: $navbar-padding-horizontal;
366
+ }
367
+ }
368
+
369
+
370
+ // Component alignment
371
+ //
372
+ // Repurpose the pull utilities as their own navbar utilities to avoid specificity
373
+ // issues with parents and chaining. Only do this when the navbar is uncollapsed
374
+ // though so that navbar contents properly stack and align in mobile.
375
+ //
376
+ // Declared after the navbar components to ensure more specificity on the margins.
381
377
 
382
- // Outdent the form if last child to line up with content down the page
383
- &.navbar-right:last-child {
378
+ @media (min-width: $grid-float-breakpoint) {
379
+ .navbar-left {
380
+ float: left !important;
381
+ }
382
+ .navbar-right {
383
+ float: right !important;
384
+ margin-right: -$navbar-padding-horizontal;
385
+
386
+ ~ .navbar-right {
384
387
  margin-right: 0;
385
388
  }
386
389
  }
387
390
  }
388
391
 
392
+
389
393
  // Alternate navbars
390
394
  // --------------------------------------------------
391
395
 
@@ -10,7 +10,7 @@
10
10
  margin-bottom: 0;
11
11
  padding-left: 0; // Override default ul/ol
12
12
  list-style: none;
13
- @include clearfix();
13
+ @include clearfix;
14
14
 
15
15
  > li {
16
16
  position: relative;
@@ -36,7 +36,7 @@
36
36
  color: $nav-disabled-link-hover-color;
37
37
  text-decoration: none;
38
38
  background-color: transparent;
39
- cursor: not-allowed;
39
+ cursor: $cursor-disabled;
40
40
  }
41
41
  }
42
42
  }
@@ -57,7 +57,7 @@
57
57
  // we missed it. We don't currently support this anywhere, but in the interest
58
58
  // of maintaining backward compatibility in case you use it, it's deprecated.
59
59
  .nav-divider {
60
- @include nav-divider();
60
+ @include nav-divider;
61
61
  }
62
62
 
63
63
  // Prevent IE8 from misplacing imgs