spiderfw 0.6.22 → 0.6.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (251) hide show
  1. data/CHANGELOG +9 -0
  2. data/VERSION +1 -1
  3. data/apps/app_server/controllers/app_server_controller.rb +7 -2
  4. data/apps/app_server/lib/git_app.rb +5 -3
  5. data/apps/cas_server/controllers/mixins/cas_login_mixin.rb +2 -1
  6. data/apps/core/admin/controllers/admin_controller.rb +4 -4
  7. data/apps/core/admin/controllers/app_admin_controller.rb +3 -2
  8. data/apps/core/admin/public/css/sass/admin.css +56 -31
  9. data/apps/core/admin/public/sass/admin.scss +38 -4
  10. data/apps/core/admin/views/_breadcrumb.shtml +8 -0
  11. data/apps/core/admin/views/admin.layout.shtml +8 -5
  12. data/apps/core/auth/controllers/login_controller.rb +3 -8
  13. data/apps/core/components/assets.rb +37 -1
  14. data/apps/core/components/public/bootstrap/LICENSE +13 -0
  15. data/apps/core/components/public/bootstrap/README.md +28 -0
  16. data/apps/core/components/public/bootstrap/img/glyphicons-halflings-white.png +0 -0
  17. data/apps/core/components/public/bootstrap/img/glyphicons-halflings.png +0 -0
  18. data/apps/core/components/public/bootstrap/js/README.md +106 -0
  19. data/apps/core/components/public/bootstrap/js/bootstrap-alert.js +91 -0
  20. data/apps/core/components/public/bootstrap/js/bootstrap-button.js +98 -0
  21. data/apps/core/components/public/bootstrap/js/bootstrap-carousel.js +154 -0
  22. data/apps/core/components/public/bootstrap/js/bootstrap-collapse.js +136 -0
  23. data/apps/core/components/public/bootstrap/js/bootstrap-dropdown.js +92 -0
  24. data/apps/core/components/public/bootstrap/js/bootstrap-modal.js +209 -0
  25. data/apps/core/components/public/bootstrap/js/bootstrap-popover.js +95 -0
  26. data/apps/core/components/public/bootstrap/js/bootstrap-scrollspy.js +125 -0
  27. data/apps/core/components/public/bootstrap/js/bootstrap-tab.js +130 -0
  28. data/apps/core/components/public/bootstrap/js/bootstrap-tooltip.js +270 -0
  29. data/apps/core/components/public/bootstrap/js/bootstrap-transition.js +51 -0
  30. data/apps/core/components/public/bootstrap/js/bootstrap-typeahead.js +271 -0
  31. data/apps/core/components/public/bootstrap/js/tests/index.html +49 -0
  32. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-alert.js +41 -0
  33. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-button.js +54 -0
  34. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-collapse.js +25 -0
  35. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-dropdown.js +53 -0
  36. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-modal.js +85 -0
  37. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-popover.js +93 -0
  38. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-scrollspy.js +31 -0
  39. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-tab.js +45 -0
  40. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-tooltip.js +62 -0
  41. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-transition.js +13 -0
  42. data/apps/core/components/public/bootstrap/js/tests/unit/bootstrap-typeahead.js +128 -0
  43. data/apps/core/components/public/bootstrap/js/tests/vendor/jquery.js +9252 -0
  44. data/apps/core/components/public/bootstrap/js/tests/vendor/qunit.css +232 -0
  45. data/apps/core/components/public/bootstrap/js/tests/vendor/qunit.js +1510 -0
  46. data/apps/core/components/public/bootstrap/scss/_accordion.scss +28 -0
  47. data/apps/core/components/public/bootstrap/scss/_alerts.scss +70 -0
  48. data/apps/core/components/public/bootstrap/scss/_breadcrumbs.scss +22 -0
  49. data/apps/core/components/public/bootstrap/scss/_button-groups.scss +146 -0
  50. data/apps/core/components/public/bootstrap/scss/_buttons.scss +165 -0
  51. data/apps/core/components/public/bootstrap/scss/_carousel.scss +121 -0
  52. data/apps/core/components/public/bootstrap/scss/_close.scss +18 -0
  53. data/apps/core/components/public/bootstrap/scss/_code.scss +44 -0
  54. data/apps/core/components/public/bootstrap/scss/_component-animations.scss +18 -0
  55. data/apps/core/components/public/bootstrap/scss/_custom.css +0 -0
  56. data/apps/core/components/public/bootstrap/scss/_dropdowns.scss +131 -0
  57. data/apps/core/components/public/bootstrap/scss/_forms.scss +516 -0
  58. data/apps/core/components/public/bootstrap/scss/_grid.scss +8 -0
  59. data/apps/core/components/public/bootstrap/scss/_hero-unit.scss +20 -0
  60. data/apps/core/components/public/bootstrap/scss/_labels.scss +16 -0
  61. data/apps/core/components/public/bootstrap/scss/_layouts.scss +17 -0
  62. data/apps/core/components/public/bootstrap/scss/_mixins.scss +538 -0
  63. data/apps/core/components/public/bootstrap/scss/_modals.scss +72 -0
  64. data/apps/core/components/public/bootstrap/scss/_navbar.scss +292 -0
  65. data/apps/core/components/public/bootstrap/scss/_navs.scss +343 -0
  66. data/apps/core/components/public/bootstrap/scss/_pager.scss +30 -0
  67. data/apps/core/components/public/bootstrap/scss/_pagination.scss +64 -0
  68. data/apps/core/components/public/bootstrap/scss/_patterns.scss +13 -0
  69. data/apps/core/components/public/bootstrap/scss/_popovers.scss +49 -0
  70. data/apps/core/components/public/bootstrap/scss/_print.scss +18 -0
  71. data/apps/core/components/public/bootstrap/scss/_progress-bars.scss +95 -0
  72. data/apps/core/{admin/public/sass/bootstrap/reset.scss → components/public/bootstrap/scss/_reset.scss} +36 -51
  73. data/apps/core/components/public/bootstrap/scss/_scaffolding.scss +29 -0
  74. data/apps/core/components/public/bootstrap/scss/_sprites.scss +156 -0
  75. data/apps/core/components/public/bootstrap/scss/_tables.scss +139 -0
  76. data/apps/core/components/public/bootstrap/scss/_thumbnails.scss +35 -0
  77. data/apps/core/components/public/bootstrap/scss/_tooltip.scss +35 -0
  78. data/apps/core/components/public/bootstrap/scss/_type.scss +217 -0
  79. data/apps/core/components/public/bootstrap/scss/_utilities.scss +23 -0
  80. data/apps/core/components/public/bootstrap/scss/_variables.scss +99 -0
  81. data/apps/core/components/public/bootstrap/scss/_wells.scss +17 -0
  82. data/apps/core/components/public/bootstrap/scss/bootstrap-responsive.css +707 -0
  83. data/apps/core/components/public/bootstrap/scss/bootstrap-responsive.scss +323 -0
  84. data/apps/core/components/public/bootstrap/scss/bootstrap.css +4604 -0
  85. data/apps/core/components/public/bootstrap/scss/bootstrap.scss +62 -0
  86. data/apps/core/components/public/bootstrap/scss/config.rb +36 -0
  87. data/apps/core/components/public/css/admin.css +2 -1
  88. data/apps/core/components/public/css/sass/bootstrap/bootstrap.css +3107 -0
  89. data/apps/core/components/public/css/table_base.css +9 -0
  90. data/apps/core/components/public/widgets/month_calendar.js +9 -0
  91. data/apps/core/components/widgets/crud/crud.rb +9 -1
  92. data/apps/core/components/widgets/crud/crud.shtml +2 -2
  93. data/apps/core/components/widgets/month_calendar/month_calendar.shtml +1 -0
  94. data/apps/core/components/widgets/table/table.rb +84 -55
  95. data/apps/core/components/widgets/table/table.shtml +2 -1
  96. data/apps/core/forms/public/ckeditor/CHANGES.html +139 -1
  97. data/apps/core/forms/public/ckeditor/LICENSE.html +1 -8
  98. data/apps/core/forms/public/ckeditor/ckeditor.js +141 -137
  99. data/apps/core/forms/public/ckeditor/ckeditor_basic.js +3 -3
  100. data/apps/core/forms/public/ckeditor/ckeditor_basic_source.js +1 -1
  101. data/apps/core/forms/public/ckeditor/ckeditor_source.js +13 -3
  102. data/apps/core/forms/public/ckeditor/contents.css +4 -2
  103. data/apps/core/forms/public/ckeditor/lang/_translationstatus.txt +59 -59
  104. data/apps/core/forms/public/ckeditor/lang/af.js +1 -1
  105. data/apps/core/forms/public/ckeditor/lang/ar.js +1 -1
  106. data/apps/core/forms/public/ckeditor/lang/bg.js +1 -1
  107. data/apps/core/forms/public/ckeditor/lang/bn.js +1 -1
  108. data/apps/core/forms/public/ckeditor/lang/bs.js +1 -1
  109. data/apps/core/forms/public/ckeditor/lang/ca.js +1 -1
  110. data/apps/core/forms/public/ckeditor/lang/cs.js +1 -1
  111. data/apps/core/forms/public/ckeditor/lang/cy.js +1 -1
  112. data/apps/core/forms/public/ckeditor/lang/da.js +1 -1
  113. data/apps/core/forms/public/ckeditor/lang/de.js +1 -1
  114. data/apps/core/forms/public/ckeditor/lang/el.js +1 -1
  115. data/apps/core/forms/public/ckeditor/lang/en-au.js +1 -1
  116. data/apps/core/forms/public/ckeditor/lang/en-ca.js +1 -1
  117. data/apps/core/forms/public/ckeditor/lang/en-gb.js +1 -1
  118. data/apps/core/forms/public/ckeditor/lang/en.js +1 -1
  119. data/apps/core/forms/public/ckeditor/lang/eo.js +1 -1
  120. data/apps/core/forms/public/ckeditor/lang/es.js +1 -1
  121. data/apps/core/forms/public/ckeditor/lang/et.js +1 -1
  122. data/apps/core/forms/public/ckeditor/lang/eu.js +1 -1
  123. data/apps/core/forms/public/ckeditor/lang/fa.js +1 -1
  124. data/apps/core/forms/public/ckeditor/lang/fi.js +1 -1
  125. data/apps/core/forms/public/ckeditor/lang/fo.js +1 -1
  126. data/apps/core/forms/public/ckeditor/lang/fr-ca.js +1 -1
  127. data/apps/core/forms/public/ckeditor/lang/fr.js +1 -1
  128. data/apps/core/forms/public/ckeditor/lang/gl.js +1 -1
  129. data/apps/core/forms/public/ckeditor/lang/gu.js +1 -1
  130. data/apps/core/forms/public/ckeditor/lang/he.js +1 -1
  131. data/apps/core/forms/public/ckeditor/lang/hi.js +1 -1
  132. data/apps/core/forms/public/ckeditor/lang/hr.js +1 -1
  133. data/apps/core/forms/public/ckeditor/lang/hu.js +1 -1
  134. data/apps/core/forms/public/ckeditor/lang/is.js +1 -1
  135. data/apps/core/forms/public/ckeditor/lang/it.js +1 -1
  136. data/apps/core/forms/public/ckeditor/lang/ja.js +1 -1
  137. data/apps/core/forms/public/ckeditor/lang/ka.js +1 -1
  138. data/apps/core/forms/public/ckeditor/lang/km.js +1 -1
  139. data/apps/core/forms/public/ckeditor/lang/ko.js +1 -1
  140. data/apps/core/forms/public/ckeditor/lang/lt.js +1 -1
  141. data/apps/core/forms/public/ckeditor/lang/lv.js +1 -1
  142. data/apps/core/forms/public/ckeditor/lang/mn.js +1 -1
  143. data/apps/core/forms/public/ckeditor/lang/ms.js +1 -1
  144. data/apps/core/forms/public/ckeditor/lang/nb.js +1 -1
  145. data/apps/core/forms/public/ckeditor/lang/nl.js +1 -1
  146. data/apps/core/forms/public/ckeditor/lang/no.js +1 -1
  147. data/apps/core/forms/public/ckeditor/lang/pl.js +1 -1
  148. data/apps/core/forms/public/ckeditor/lang/pt-br.js +1 -1
  149. data/apps/core/forms/public/ckeditor/lang/pt.js +1 -1
  150. data/apps/core/forms/public/ckeditor/lang/ro.js +1 -1
  151. data/apps/core/forms/public/ckeditor/lang/ru.js +1 -1
  152. data/apps/core/forms/public/ckeditor/lang/sk.js +1 -1
  153. data/apps/core/forms/public/ckeditor/lang/sl.js +1 -1
  154. data/apps/core/forms/public/ckeditor/lang/sr-latn.js +1 -1
  155. data/apps/core/forms/public/ckeditor/lang/sr.js +1 -1
  156. data/apps/core/forms/public/ckeditor/lang/sv.js +1 -1
  157. data/apps/core/forms/public/ckeditor/lang/th.js +1 -1
  158. data/apps/core/forms/public/ckeditor/lang/tr.js +1 -1
  159. data/apps/core/forms/public/ckeditor/lang/uk.js +1 -1
  160. data/apps/core/forms/public/ckeditor/lang/vi.js +1 -1
  161. data/apps/core/forms/public/ckeditor/lang/zh-cn.js +1 -1
  162. data/apps/core/forms/public/ckeditor/lang/zh.js +1 -1
  163. data/apps/core/forms/public/ckeditor/plugins/autogrow/plugin.js +1 -1
  164. data/apps/core/forms/public/ckeditor/plugins/bbcode/plugin.js +4 -4
  165. data/apps/core/forms/public/ckeditor/plugins/docprops/dialogs/docprops.js +2 -2
  166. data/apps/core/forms/public/ckeditor/plugins/find/dialogs/find.js +5 -4
  167. data/apps/core/forms/public/ckeditor/plugins/flash/dialogs/flash.js +4 -4
  168. data/apps/core/forms/public/ckeditor/plugins/forms/dialogs/select.js +2 -2
  169. data/apps/core/forms/public/ckeditor/plugins/forms/dialogs/textarea.js +1 -1
  170. data/apps/core/forms/public/ckeditor/plugins/iframe/dialogs/iframe.js +2 -2
  171. data/apps/core/forms/public/ckeditor/plugins/image/dialogs/image.js +6 -6
  172. data/apps/core/forms/public/ckeditor/plugins/link/dialogs/link.js +6 -5
  173. data/apps/core/forms/public/ckeditor/plugins/liststyle/dialogs/liststyle.js +2 -1
  174. data/apps/core/forms/public/ckeditor/plugins/pastefromword/filter/default.js +5 -5
  175. data/apps/core/forms/public/ckeditor/plugins/specialchar/dialogs/specialchar.js +1 -1
  176. data/apps/core/forms/public/ckeditor/plugins/specialchar/lang/en.js +1 -1
  177. data/apps/core/forms/public/ckeditor/plugins/table/dialogs/table.js +4 -4
  178. data/apps/core/forms/public/ckeditor/plugins/tableresize/plugin.js +2 -2
  179. data/apps/core/forms/public/ckeditor/plugins/wsc/dialogs/wsc.js +1 -1
  180. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/README.md +26 -0
  181. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/dialog.css +616 -0
  182. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/editor.css +1088 -0
  183. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/icons.png +0 -0
  184. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/dialog_sides.gif +0 -0
  185. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/dialog_sides.png +0 -0
  186. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/dialog_sides_rtl.png +0 -0
  187. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/mini.png +0 -0
  188. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/noimage.png +0 -0
  189. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/sprites.png +0 -0
  190. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/sprites_ie6.png +0 -0
  191. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/images/toolbar_start.gif +0 -0
  192. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/skin.js +7 -0
  193. data/apps/core/forms/public/ckeditor/skins/BootstrapCK-Skin/templates.css +54 -0
  194. data/apps/core/forms/public/ckeditor/skins/kama/dialog.css +4 -3
  195. data/apps/core/forms/public/ckeditor/skins/kama/editor.css +3 -3
  196. data/apps/core/forms/public/ckeditor/themes/default/theme.js +2 -2
  197. data/apps/core/forms/public/css/form.css +5 -5
  198. data/apps/core/forms/public/html_area.js +5 -5
  199. data/apps/core/forms/tags/element_label.erb +1 -1
  200. data/apps/core/forms/tags/row.erb +1 -1
  201. data/apps/core/forms/widgets/form/form.rb +2 -1
  202. data/apps/core/forms/widgets/form/form.shtml +3 -3
  203. data/apps/core/forms/widgets/inputs/checkbox/checkbox.shtml +1 -1
  204. data/apps/core/forms/widgets/inputs/date_time/date_time.shtml +1 -1
  205. data/apps/core/forms/widgets/inputs/file_input/file_input.shtml +1 -1
  206. data/apps/core/forms/widgets/inputs/html_area/html_area.shtml +1 -1
  207. data/apps/core/forms/widgets/inputs/input/input.shtml +1 -1
  208. data/apps/core/forms/widgets/inputs/input/readonly.shtml +1 -1
  209. data/apps/core/forms/widgets/inputs/password/password.shtml +1 -1
  210. data/apps/core/forms/widgets/inputs/search_select/search_select.shtml +1 -1
  211. data/apps/core/forms/widgets/inputs/select/select.shtml +1 -1
  212. data/apps/core/forms/widgets/inputs/text/text.shtml +1 -1
  213. data/apps/core/forms/widgets/inputs/text_area/text_area.shtml +1 -1
  214. data/apps/core/forms/widgets/inputs/time_span/time_span.shtml +1 -1
  215. data/apps/messenger/controllers/messenger_admin_controller.rb +19 -4
  216. data/apps/messenger/views/admin/_admin.layout.shtml +1 -1
  217. data/apps/messenger/views/admin/queue.shtml +6 -6
  218. data/apps/messenger/views/admin/view_email.shtml +7 -0
  219. data/apps/messenger/views/admin/view_sms.shtml +4 -0
  220. data/blueprints/app/.dirs +2 -1
  221. data/blueprints/app/test/features/support/env.rb +4 -0
  222. data/data/locale/it/LC_MESSAGES/spider.mo +0 -0
  223. data/lib/spiderfw/cmd/commands/config.rb +6 -3
  224. data/lib/spiderfw/config/configuration.rb +11 -2
  225. data/lib/spiderfw/config/options/spider.rb +1 -1
  226. data/lib/spiderfw/controller/controller.rb +27 -15
  227. data/lib/spiderfw/controller/dispatcher.rb +8 -4
  228. data/lib/spiderfw/controller/http_controller.rb +9 -5
  229. data/lib/spiderfw/controller/mixins/static_content.rb +1 -0
  230. data/lib/spiderfw/controller/mixins/visual.rb +48 -31
  231. data/lib/spiderfw/home.rb +8 -0
  232. data/lib/spiderfw/i18n/cldr.rb +1 -0
  233. data/lib/spiderfw/model/base_model.rb +2 -2
  234. data/lib/spiderfw/model/mappers/db_mapper.rb +1 -0
  235. data/lib/spiderfw/model/unit_of_work.rb +2 -2
  236. data/lib/spiderfw/requires.rb +1 -0
  237. data/lib/spiderfw/setup/app_manager.rb +16 -8
  238. data/lib/spiderfw/spider.rb +2 -2
  239. data/lib/spiderfw/templates/layout.rb +16 -9
  240. data/lib/spiderfw/templates/template.rb +28 -8
  241. data/lib/spiderfw/utils/logger.rb +9 -9
  242. data/views/errors/error.layout.shtml +9 -4
  243. metadata +98 -13
  244. data/apps/core/admin/public/sass/bootstrap/bootstrap.scss +0 -29
  245. data/apps/core/admin/public/sass/bootstrap/forms.scss +0 -478
  246. data/apps/core/admin/public/sass/bootstrap/mixins.scss +0 -220
  247. data/apps/core/admin/public/sass/bootstrap/patterns.scss +0 -1062
  248. data/apps/core/admin/public/sass/bootstrap/scaffolding.scss +0 -136
  249. data/apps/core/admin/public/sass/bootstrap/tables.scss +0 -224
  250. data/apps/core/admin/public/sass/bootstrap/type.scss +0 -187
  251. data/apps/core/admin/public/sass/bootstrap/variables.scss +0 -60
@@ -0,0 +1,292 @@
1
+ // NAVBAR (FIXED AND STATIC)
2
+ // -------------------------
3
+
4
+
5
+ // COMMON STYLES
6
+ // -------------
7
+
8
+ .navbar {
9
+ overflow: visible;
10
+ margin-bottom: $baseLineHeight;
11
+ }
12
+
13
+ // Gradient is applied to it's own element because overflow visible is not honored by IE when filter is present
14
+ .navbar-inner {
15
+ padding-left: 20px;
16
+ padding-right: 20px;
17
+ @include gradient-vertical($navbarBackgroundHighlight, $navbarBackground);
18
+ @include border-radius(4px);
19
+ $shadow: 0 1px 3px rgba(0,0,0,.25), inset 0 -1px 0 rgba(0,0,0,.1);
20
+ @include box-shadow($shadow);
21
+ }
22
+
23
+ // Navbar button for toggling navbar items in responsive layouts
24
+ .btn-navbar {
25
+ display: none;
26
+ float: right;
27
+ padding: 7px 10px;
28
+ margin-left: 5px;
29
+ margin-right: 5px;
30
+ @include buttonBackground($navbarBackgroundHighlight, $navbarBackground);
31
+ $shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075);
32
+ @include box-shadow($shadow);
33
+ }
34
+ .btn-navbar .icon-bar {
35
+ display: block;
36
+ width: 18px;
37
+ height: 2px;
38
+ background-color: #f5f5f5;
39
+ @include border-radius(1px);
40
+ @include box-shadow(0 1px 0 rgba(0,0,0,.25));
41
+ }
42
+ .btn-navbar .icon-bar + .icon-bar {
43
+ margin-top: 3px;
44
+ }
45
+ // Override the default collapsed state
46
+ .nav-collapse.collapse {
47
+ height: auto;
48
+ }
49
+
50
+
51
+ // Brand, links, text, and buttons
52
+ .navbar {
53
+ // Hover and active states
54
+ .brand:hover {
55
+ text-decoration: none;
56
+ }
57
+ // Website or project name
58
+ .brand {
59
+ float: left;
60
+ display: block;
61
+ padding: 8px 20px 12px;
62
+ margin-left: -20px; // negative indent to left-align the text down the page
63
+ font-size: 20px;
64
+ font-weight: 200;
65
+ line-height: 1;
66
+ color: $white;
67
+ }
68
+ // Plain text in topbar
69
+ .navbar-text {
70
+ margin-bottom: 0;
71
+ line-height: 40px;
72
+ color: $navbarText;
73
+ a:hover {
74
+ color: $white;
75
+ background-color: transparent;
76
+ }
77
+ }
78
+ // Buttons in navbar
79
+ .btn,
80
+ .btn-group {
81
+ margin-top: 5px; // make buttons vertically centered in navbar
82
+ }
83
+ .btn-group .btn {
84
+ margin-top: 0;
85
+ }
86
+ }
87
+
88
+ // Navbar forms
89
+ .navbar-form {
90
+ margin-bottom: 0; // remove default bottom margin
91
+ @include clearfix();
92
+ input,
93
+ select {
94
+ display: inline-block;
95
+ margin-top: 5px;
96
+ margin-bottom: 0;
97
+ }
98
+ .radio,
99
+ .checkbox {
100
+ margin-top: 5px;
101
+ }
102
+ input[type="image"],
103
+ input[type="checkbox"],
104
+ input[type="radio"] {
105
+ margin-top: 3px;
106
+ }
107
+ }
108
+
109
+ // Navbar search
110
+ .navbar-search {
111
+ position: relative;
112
+ float: left;
113
+ margin-top: 6px;
114
+ margin-bottom: 0;
115
+ .search-query {
116
+ padding: 4px 9px;
117
+ @include font-sans-serif(13px, normal, 1);
118
+ color: $white;
119
+ color: rgba(255,255,255,.75);
120
+ background: #666;
121
+ background: rgba(255,255,255,.3);
122
+ border: 1px solid #111;
123
+ $shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0px rgba(255,255,255,.15);
124
+ @include box-shadow($shadow);
125
+ @include transition(none);
126
+
127
+ // Placeholder text gets special styles; can't be bundled together though for some reason
128
+ @include placeholder($grayLighter);
129
+
130
+ // Hover states
131
+ &:hover {
132
+ color: $white;
133
+ background-color: $grayLight;
134
+ background-color: rgba(255,255,255,.5);
135
+ }
136
+ // Focus states (we use .focused since IE8 and down doesn't support :focus)
137
+ &:focus,
138
+ &.focused {
139
+ padding: 5px 10px;
140
+ color: $grayDark;
141
+ text-shadow: 0 1px 0 $white;
142
+ background-color: $white;
143
+ border: 0;
144
+ @include box-shadow(0 0 3px rgba(0,0,0,.15));
145
+ outline: 0;
146
+ }
147
+ }
148
+ }
149
+
150
+
151
+ // FIXED NAVBAR
152
+ // ------------
153
+
154
+ .navbar-fixed-top {
155
+ position: fixed;
156
+ top: 0;
157
+ right: 0;
158
+ left: 0;
159
+ z-index: $zindexFixedNavbar;
160
+ }
161
+ .navbar-fixed-top .navbar-inner {
162
+ padding-left: 0;
163
+ padding-right: 0;
164
+ @include border-radius(0);
165
+ }
166
+
167
+
168
+ // NAVIGATION
169
+ // ----------
170
+
171
+ .navbar .nav {
172
+ position: relative;
173
+ left: 0;
174
+ display: block;
175
+ float: left;
176
+ margin: 0 10px 0 0;
177
+ }
178
+ .navbar .nav.pull-right {
179
+ float: right; // redeclare due to specificity
180
+ }
181
+ .navbar .nav > li {
182
+ display: block;
183
+ float: left;
184
+ }
185
+
186
+ // Links
187
+ .navbar .nav > li > a {
188
+ float: none;
189
+ padding: 10px 10px 11px;
190
+ line-height: 19px;
191
+ color: $navbarLinkColor;
192
+ text-decoration: none;
193
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
194
+ }
195
+ // Hover
196
+ .navbar .nav > li > a:hover {
197
+ background-color: transparent;
198
+ color: $navbarLinkColorHover;
199
+ text-decoration: none;
200
+ }
201
+
202
+ // Active nav items
203
+ .navbar .nav .active > a,
204
+ .navbar .nav .active > a:hover {
205
+ color: $navbarLinkColorHover;
206
+ text-decoration: none;
207
+ background-color: $navbarBackground;
208
+ background-color: rgba(0,0,0,.5);
209
+ }
210
+
211
+ // Dividers (basically a vertical hr)
212
+ .navbar .divider-vertical {
213
+ height: $navbarHeight;
214
+ width: 1px;
215
+ margin: 0 9px;
216
+ overflow: hidden;
217
+ background-color: $navbarBackground;
218
+ border-right: 1px solid $navbarBackgroundHighlight;
219
+ }
220
+
221
+ // Secondary (floated right) nav in topbar
222
+ .navbar .nav.pull-right {
223
+ margin-left: 10px;
224
+ margin-right: 0;
225
+ }
226
+
227
+
228
+
229
+ // Dropdown menus
230
+ // --------------
231
+
232
+ // Menu position and menu carets
233
+ .navbar .dropdown-menu {
234
+ margin-top: 1px;
235
+ @include border-radius(4px);
236
+ &:before {
237
+ content: '';
238
+ display: inline-block;
239
+ border-left: 7px solid transparent;
240
+ border-right: 7px solid transparent;
241
+ border-bottom: 7px solid #ccc;
242
+ border-bottom-color: rgba(0,0,0,.2);
243
+ position: absolute;
244
+ top: -7px;
245
+ left: 9px;
246
+ }
247
+ &:after {
248
+ content: '';
249
+ display: inline-block;
250
+ border-left: 6px solid transparent;
251
+ border-right: 6px solid transparent;
252
+ border-bottom: 6px solid $white;
253
+ position: absolute;
254
+ top: -6px;
255
+ left: 10px;
256
+ }
257
+ }
258
+
259
+ // Dropdown toggle caret
260
+ .navbar .nav .dropdown-toggle .caret,
261
+ .navbar .nav .open.dropdown .caret {
262
+ border-top-color: $white;
263
+ }
264
+ .navbar .nav .active .caret {
265
+ @include opacity(100);
266
+ }
267
+
268
+ // Remove background color from open dropdown
269
+ .navbar .nav .open > .dropdown-toggle,
270
+ .navbar .nav .active > .dropdown-toggle,
271
+ .navbar .nav .open.active > .dropdown-toggle {
272
+ background-color: transparent;
273
+ }
274
+
275
+ // Dropdown link on hover
276
+ .navbar .nav .active > .dropdown-toggle:hover {
277
+ color: $white;
278
+ }
279
+
280
+ // Right aligned menus need alt position
281
+ .navbar .nav.pull-right .dropdown-menu {
282
+ left: auto;
283
+ right: 0;
284
+ &:before {
285
+ left: auto;
286
+ right: 12px;
287
+ }
288
+ &:after {
289
+ left: auto;
290
+ right: 13px;
291
+ }
292
+ }
@@ -0,0 +1,343 @@
1
+ // NAVIGATIONS
2
+ // -----------
3
+
4
+
5
+
6
+ // BASE CLASS
7
+ // ----------
8
+
9
+ .nav {
10
+ margin-left: 0;
11
+ margin-bottom: $baseLineHeight;
12
+ list-style: none;
13
+ }
14
+
15
+ // Make links block level
16
+ .nav > li > a {
17
+ display: block;
18
+ }
19
+ .nav > li > a:hover {
20
+ text-decoration: none;
21
+ background-color: $grayLighter;
22
+ }
23
+
24
+
25
+
26
+ // NAV LIST
27
+ // --------
28
+
29
+ .nav-list {
30
+ padding-left: 14px;
31
+ padding-right: 14px;
32
+ margin-bottom: 0;
33
+ }
34
+ .nav-list > li > a,
35
+ .nav-list .nav-header {
36
+ display: block;
37
+ padding: 3px 15px;
38
+ margin-left: -15px;
39
+ margin-right: -15px;
40
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
41
+ }
42
+ .nav-list .nav-header {
43
+ font-size: 11px;
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;
51
+ }
52
+ .nav-list .active > a {
53
+ color: $white;
54
+ text-shadow: 0 -1px 0 rgba(0,0,0,.2);
55
+ background-color: $linkColor;
56
+ }
57
+ .nav-list .icon {
58
+ margin-right: 2px;
59
+ }
60
+
61
+
62
+
63
+ // TABS AND PILLS
64
+ // -------------
65
+
66
+ // Common styles
67
+ .nav-tabs,
68
+ .nav-pills {
69
+ @include clearfix();
70
+ }
71
+ .nav-tabs > li,
72
+ .nav-pills > li {
73
+ float: left;
74
+ }
75
+ .nav-tabs > li > a,
76
+ .nav-pills > li > a {
77
+ padding-right: 12px;
78
+ padding-left: 12px;
79
+ margin-right: 2px;
80
+ line-height: 14px; // keeps the overall height an even number
81
+ }
82
+
83
+ // TABS
84
+ // ----
85
+
86
+ // Give the tabs something to sit on
87
+ .nav-tabs {
88
+ border-bottom: 1px solid #ddd;
89
+ }
90
+
91
+ // Make the list-items overlay the bottom border
92
+ .nav-tabs > li {
93
+ margin-bottom: -1px;
94
+ }
95
+
96
+ // Actual tabs (as links)
97
+ .nav-tabs > li > a {
98
+ padding-top: 9px;
99
+ padding-bottom: 9px;
100
+ border: 1px solid transparent;
101
+ @include border-radius(4px 4px 0 0);
102
+ &:hover {
103
+ border-color: $grayLighter $grayLighter #ddd;
104
+ }
105
+ }
106
+ // Active state, and it's :hover to override normal :hover
107
+ .nav-tabs > .active > a,
108
+ .nav-tabs > .active > a:hover {
109
+ color: $gray;
110
+ background-color: $white;
111
+ border: 1px solid #ddd;
112
+ border-bottom-color: transparent;
113
+ cursor: default;
114
+ }
115
+
116
+ // PILLS
117
+ // -----
118
+
119
+ // Links rendered as pills
120
+ .nav-pills > li > a {
121
+ padding-top: 8px;
122
+ padding-bottom: 8px;
123
+ margin-top: 2px;
124
+ margin-bottom: 2px;
125
+ @include border-radius(5px);
126
+ }
127
+
128
+ // Active state
129
+ .nav-pills .active > a,
130
+ .nav-pills .active > a:hover {
131
+ color: $white;
132
+ background-color: $linkColor;
133
+ }
134
+
135
+
136
+
137
+ // STACKED NAV
138
+ // -----------
139
+
140
+ // Stacked tabs and pills
141
+ .nav-stacked > li {
142
+ float: none;
143
+ }
144
+ .nav-stacked > li > a {
145
+ margin-right: 0; // no need for the gap between nav items
146
+ }
147
+
148
+ // Tabs
149
+ .nav-tabs.nav-stacked {
150
+ border-bottom: 0;
151
+ }
152
+ .nav-tabs.nav-stacked > li > a {
153
+ border: 1px solid #ddd;
154
+ @include border-radius(0);
155
+ }
156
+ .nav-tabs.nav-stacked > li:first-child > a {
157
+ @include border-radius(4px 4px 0 0);
158
+ }
159
+ .nav-tabs.nav-stacked > li:last-child > a {
160
+ @include border-radius(0 0 4px 4px);
161
+ }
162
+ .nav-tabs.nav-stacked > li > a:hover {
163
+ border-color: #ddd;
164
+ z-index: 2;
165
+ }
166
+
167
+ // Pills
168
+ .nav-pills.nav-stacked > li > a {
169
+ margin-bottom: 3px;
170
+ }
171
+ .nav-pills.nav-stacked > li:last-child > a {
172
+ margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
173
+ }
174
+
175
+
176
+
177
+ // DROPDOWNS
178
+ // ---------
179
+
180
+ // Position the menu
181
+ .nav-tabs .dropdown-menu,
182
+ .nav-pills .dropdown-menu {
183
+ margin-top: 1px;
184
+ border-width: 1px;
185
+ }
186
+ .nav-pills .dropdown-menu {
187
+ @include border-radius(4px);
188
+ }
189
+
190
+ // Default dropdown links
191
+ // -------------------------
192
+ // Make carets use linkColor to start
193
+ .nav-tabs .dropdown-toggle .caret,
194
+ .nav-pills .dropdown-toggle .caret {
195
+ border-top-color: $linkColor;
196
+ margin-top: 6px;
197
+ }
198
+ .nav-tabs .dropdown-toggle:hover .caret,
199
+ .nav-pills .dropdown-toggle:hover .caret {
200
+ border-top-color: $linkColorHover;
201
+ }
202
+
203
+ // Active dropdown links
204
+ // -------------------------
205
+ .nav-tabs .active .dropdown-toggle .caret,
206
+ .nav-pills .active .dropdown-toggle .caret {
207
+ border-top-color: #333;
208
+ }
209
+
210
+ // Active:hover dropdown links
211
+ // -------------------------
212
+ .nav > .dropdown.active > a:hover {
213
+ color: $black;
214
+ cursor: pointer;
215
+ }
216
+
217
+ // Open dropdowns
218
+ // -------------------------
219
+ .nav-tabs .open .dropdown-toggle,
220
+ .nav-pills .open .dropdown-toggle,
221
+ .nav > .open.active > a:hover {
222
+ color: $white;
223
+ background-color: $grayLight;
224
+ border-color: $grayLight;
225
+ }
226
+ .nav .open .caret,
227
+ .nav .open.active .caret,
228
+ .nav .open a:hover .caret {
229
+ border-top-color: $white;
230
+ @include opacity(100);
231
+ }
232
+
233
+ // Dropdowns in stacked tabs
234
+ .tabs-stacked .open > a:hover {
235
+ border-color: #999;
236
+ }
237
+
238
+
239
+
240
+ // TABBABLE
241
+ // --------
242
+
243
+
244
+ // COMMON STYLES
245
+ // -------------
246
+
247
+ // Clear any floats
248
+ .tabbable {
249
+ @include clearfix();
250
+ }
251
+
252
+ // Remove border on bottom, left, right
253
+ .tabs-below .nav-tabs,
254
+ .tabs-right .nav-tabs,
255
+ .tabs-left .nav-tabs {
256
+ border-bottom: 0;
257
+ }
258
+
259
+ // Show/hide tabbable areas
260
+ .tab-content > .tab-pane,
261
+ .pill-content > .pill-pane {
262
+ display: none;
263
+ }
264
+ .tab-content > .active,
265
+ .pill-content > .active {
266
+ display: block;
267
+ }
268
+
269
+
270
+ // BOTTOM
271
+ // ------
272
+
273
+ .tabs-below .nav-tabs {
274
+ border-top: 1px solid #ddd;
275
+ }
276
+ .tabs-below .nav-tabs > li {
277
+ margin-top: -1px;
278
+ margin-bottom: 0;
279
+ }
280
+ .tabs-below .nav-tabs > li > a {
281
+ @include border-radius(0 0 4px 4px);
282
+ &:hover {
283
+ border-bottom-color: transparent;
284
+ border-top-color: #ddd;
285
+ }
286
+ }
287
+ .tabs-below .tabs .active > a,
288
+ .tabs-below .tabs .active > a:hover {
289
+ border-color: transparent #ddd #ddd #ddd;
290
+ }
291
+
292
+ // LEFT & RIGHT
293
+ // ------------
294
+
295
+ // Common styles
296
+ .tabs-left .nav-tabs > li,
297
+ .tabs-right .nav-tabs > li {
298
+ float: none;
299
+ }
300
+ .tabs-left .nav-tabs > li > a,
301
+ .tabs-right .nav-tabs > li > a {
302
+ min-width: 74px;
303
+ margin-right: 0;
304
+ margin-bottom: 3px;
305
+ }
306
+
307
+ // Tabs on the left
308
+ .tabs-left .nav-tabs {
309
+ float: left;
310
+ margin-right: 19px;
311
+ border-right: 1px solid #ddd;
312
+ }
313
+ .tabs-left .nav-tabs > li > a {
314
+ margin-right: -1px;
315
+ @include border-radius(4px 0 0 4px);
316
+ }
317
+ .tabs-left .nav-tabs > li > a:hover {
318
+ border-color: $grayLighter #ddd $grayLighter $grayLighter;
319
+ }
320
+ .tabs-left .nav-tabs .active > a,
321
+ .tabs-left .nav-tabs .active > a:hover {
322
+ border-color: #ddd transparent #ddd #ddd;
323
+ *border-right-color: $white;
324
+ }
325
+
326
+ // Tabs on the right
327
+ .tabs-right .nav-tabs {
328
+ float: right;
329
+ margin-left: 19px;
330
+ border-left: 1px solid #ddd;
331
+ }
332
+ .tabs-right .nav-tabs > li > a {
333
+ margin-left: -1px;
334
+ @include border-radius(0 4px 4px 0);
335
+ }
336
+ .tabs-right .nav-tabs > li > a:hover {
337
+ border-color: $grayLighter $grayLighter $grayLighter #ddd;
338
+ }
339
+ .tabs-right .nav-tabs .active > a,
340
+ .tabs-right .nav-tabs .active > a:hover {
341
+ border-color: #ddd #ddd #ddd transparent;
342
+ *border-left-color: $white;
343
+ }
@@ -0,0 +1,30 @@
1
+ // PAGER
2
+ // -----
3
+
4
+ .pager {
5
+ margin-left: 0;
6
+ margin-bottom: $baseLineHeight;
7
+ list-style: none;
8
+ text-align: center;
9
+ @include clearfix();
10
+ }
11
+ .pager li {
12
+ display: inline;
13
+ }
14
+ .pager a {
15
+ display: inline-block;
16
+ padding: 5px 14px;
17
+ background-color: #fff;
18
+ border: 1px solid #ddd;
19
+ @include border-radius(15px);
20
+ }
21
+ .pager a:hover {
22
+ text-decoration: none;
23
+ background-color: #f5f5f5;
24
+ }
25
+ .pager .next a {
26
+ float: right;
27
+ }
28
+ .pager .previous a {
29
+ float: left;
30
+ }
@@ -0,0 +1,64 @@
1
+ // PAGINATION
2
+ // ----------
3
+
4
+ .pagination {
5
+ height: $baseLineHeight * 2;
6
+ margin: $baseLineHeight 0;
7
+
8
+ ul {
9
+ display: inline-block;
10
+ @include ie7-inline-block();
11
+ margin-left: 0;
12
+ margin-bottom: 0;
13
+ @include border-radius(3px);
14
+ @include box-shadow(0 1px 2px rgba(0,0,0,.05));
15
+ }
16
+
17
+ li {
18
+ display: inline;
19
+ }
20
+
21
+ a {
22
+ float: left;
23
+ padding: 0 14px;
24
+ line-height: ($baseLineHeight * 2) - 2;
25
+ text-decoration: none;
26
+ border: 1px solid #ddd;
27
+ border-left-width: 0;
28
+ }
29
+
30
+ a:hover,
31
+ .active a {
32
+ background-color: #f5f5f5;
33
+ }
34
+
35
+ .active a {
36
+ color: $grayLight;
37
+ cursor: default;
38
+ }
39
+
40
+ .disabled a,
41
+ .disabled a:hover {
42
+ color: $grayLight;
43
+ background-color: transparent;
44
+ cursor: default;
45
+ }
46
+
47
+ li:first-child a {
48
+ border-left-width: 1px;
49
+ @include border-radius(3px 0 0 3px);
50
+ }
51
+
52
+ li:last-child a {
53
+ @include border-radius(0 3px 3px 0);
54
+ }
55
+ }
56
+
57
+ // Centered
58
+ .pagination-centered {
59
+ text-align: center;
60
+ }
61
+
62
+ .pagination-right {
63
+ text-align: right;
64
+ }