spiderfw 0.6.21 → 0.6.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. data/CHANGELOG +33 -0
  2. data/Rakefile +0 -1
  3. data/VERSION +1 -1
  4. data/apps/core/admin/_init.rb +4 -0
  5. data/apps/core/admin/admin.rb +20 -4
  6. data/apps/core/admin/controllers/admin_controller.rb +63 -4
  7. data/apps/core/admin/controllers/app_admin_controller.rb +15 -0
  8. data/apps/core/admin/data/locale/it/LC_MESSAGES/admin.mo +0 -0
  9. data/apps/core/admin/po/admin.pot +33 -0
  10. data/apps/core/admin/po/it/admin.po +34 -0
  11. data/apps/core/admin/public/css/admin.css +13 -0
  12. data/apps/core/admin/public/css/login.css +51 -0
  13. data/apps/core/admin/public/css/sass/admin.css +198 -0
  14. data/apps/core/admin/public/css/sass/bootstrap/bootstrap.css +3107 -0
  15. data/apps/core/admin/public/img/css/header_bg.png +0 -0
  16. data/apps/core/admin/public/img/css/noise.png +0 -0
  17. data/apps/core/admin/public/img/css/side_bg.png +0 -0
  18. data/apps/core/admin/public/img/icons/logout.png +0 -0
  19. data/apps/core/admin/public/img/icons-s845a69dd9f.png +0 -0
  20. data/apps/core/admin/public/js/bootstrap-alerts.js +113 -0
  21. data/apps/core/admin/public/js/bootstrap-buttons.js +62 -0
  22. data/apps/core/admin/public/js/bootstrap-dropdown.js +55 -0
  23. data/apps/core/admin/public/js/bootstrap-modal.js +260 -0
  24. data/apps/core/admin/public/js/bootstrap-popover.js +90 -0
  25. data/apps/core/admin/public/js/bootstrap-scrollspy.js +107 -0
  26. data/apps/core/admin/public/js/bootstrap-tabs.js +80 -0
  27. data/apps/core/admin/public/js/bootstrap-twipsy.js +321 -0
  28. data/apps/core/admin/public/sass/admin.scss +167 -0
  29. data/apps/core/admin/public/sass/bootstrap/bootstrap.scss +29 -0
  30. data/apps/core/admin/public/sass/bootstrap/forms.scss +478 -0
  31. data/apps/core/admin/public/sass/bootstrap/mixins.scss +220 -0
  32. data/apps/core/admin/public/sass/bootstrap/patterns.scss +1062 -0
  33. data/apps/core/admin/public/sass/bootstrap/reset.scss +141 -0
  34. data/apps/core/admin/public/sass/bootstrap/scaffolding.scss +136 -0
  35. data/apps/core/admin/public/sass/bootstrap/tables.scss +224 -0
  36. data/apps/core/admin/public/sass/bootstrap/type.scss +187 -0
  37. data/apps/core/admin/public/sass/bootstrap/variables.scss +60 -0
  38. data/apps/core/admin/public/sass/grid.scss +54 -0
  39. data/apps/core/admin/views/_app_info.shtml +5 -0
  40. data/apps/core/admin/views/admin.layout.shtml +35 -0
  41. data/apps/core/admin/views/index.shtml +1 -1
  42. data/apps/core/admin/views/login.layout.shtml +13 -0
  43. data/apps/core/auth/controllers/mixins/auth_helper.rb +1 -1
  44. data/apps/core/auth/models/super_user.rb +6 -0
  45. data/apps/core/auth/models/user.rb +9 -0
  46. data/apps/core/components/assets.rb +5 -1
  47. data/apps/core/components/data/locale/it/LC_MESSAGES/spider_components.mo +0 -0
  48. data/apps/core/components/po/it/spider_components.po +23 -9
  49. data/apps/core/components/po/spider_components.pot +16 -8
  50. data/apps/core/components/public/css/admin.css +0 -12
  51. data/apps/core/components/public/css/crud.css +16 -19
  52. data/apps/core/components/public/css/table.css +11 -5
  53. data/apps/core/components/public/js/less-1.1.3.min.js +16 -0
  54. data/apps/core/components/public/widgets/table.js +1 -1
  55. data/apps/core/components/widgets/admin/admin.rb +10 -0
  56. data/apps/core/components/widgets/admin/admin.shtml +24 -4
  57. data/apps/core/components/widgets/confirm/confirm.rb +2 -2
  58. data/apps/core/components/widgets/confirm/confirm.shtml +5 -2
  59. data/apps/core/components/widgets/crud/crud.rb +10 -1
  60. data/apps/core/components/widgets/crud/crud.shtml +18 -21
  61. data/apps/core/components/widgets/menu/menu.shtml +1 -2
  62. data/apps/core/components/widgets/switcher/switcher.rb +6 -3
  63. data/apps/core/components/widgets/switcher/templates/default.shtml +3 -1
  64. data/apps/core/components/widgets/table/table.rb +3 -2
  65. data/apps/core/components/widgets/table/table.shtml +44 -25
  66. data/apps/core/forms/data/locale/it/LC_MESSAGES/spider_forms.mo +0 -0
  67. data/apps/core/forms/po/it/spider_forms.po +7 -2
  68. data/apps/core/forms/po/spider_forms.pot +5 -1
  69. data/apps/core/forms/public/css/form.css +3 -3
  70. data/apps/core/forms/public/css/html_area.css +0 -1
  71. data/apps/core/forms/public/date_time.js +4 -3
  72. data/apps/core/forms/public/select.js +5 -4
  73. data/apps/core/forms/tags/element_label.erb +1 -1
  74. data/apps/core/forms/tags/row.erb +1 -1
  75. data/apps/core/forms/widgets/form/form.rb +23 -1
  76. data/apps/core/forms/widgets/form/form.shtml +7 -8
  77. data/apps/core/forms/widgets/inputs/checkbox/checkbox.shtml +3 -3
  78. data/apps/core/forms/widgets/inputs/date_time/date_time.shtml +3 -3
  79. data/apps/core/forms/widgets/inputs/file_input/file_input.rb +4 -2
  80. data/apps/core/forms/widgets/inputs/file_input/file_input.shtml +1 -1
  81. data/apps/core/forms/widgets/inputs/hidden/hidden.shtml +1 -1
  82. data/apps/core/forms/widgets/inputs/html_area/html_area.shtml +2 -2
  83. data/apps/core/forms/widgets/inputs/password/password.shtml +3 -3
  84. data/apps/core/forms/widgets/inputs/search_select/search_select.shtml +2 -2
  85. data/apps/core/forms/widgets/inputs/select/select.shtml +16 -13
  86. data/apps/core/forms/widgets/inputs/text/text.shtml +3 -3
  87. data/apps/core/forms/widgets/inputs/text_area/text_area.shtml +5 -2
  88. data/apps/core/forms/widgets/inputs/time_span/time_span.shtml +3 -3
  89. data/apps/messenger/_init.rb +10 -2
  90. data/apps/messenger/controllers/messenger_admin_controller.rb +53 -0
  91. data/apps/messenger/controllers/messenger_controller.rb +2 -0
  92. data/apps/messenger/controllers/mixins/messenger_helper.rb +2 -2
  93. data/apps/messenger/models/message.rb +1 -1
  94. data/apps/messenger/public/app_icon.png +0 -0
  95. data/apps/messenger/views/admin/_admin.layout.shtml +26 -0
  96. data/apps/messenger/views/admin/index.shtml +13 -0
  97. data/apps/messenger/views/admin/queue.shtml +28 -0
  98. data/apps/messenger/views/index.shtml +3 -3
  99. data/data/locale/it/LC_MESSAGES/spider.mo +0 -0
  100. data/lib/spiderfw/app.rb +10 -1
  101. data/lib/spiderfw/cache/template_cache.rb +21 -22
  102. data/lib/spiderfw/cmd/commands/app.rb +3 -3
  103. data/lib/spiderfw/cmd/commands/setup.rb +1 -1
  104. data/lib/spiderfw/config/options/spider.rb +18 -2
  105. data/lib/spiderfw/controller/controller.rb +9 -3
  106. data/lib/spiderfw/controller/dispatcher.rb +25 -12
  107. data/lib/spiderfw/controller/home_controller.rb +3 -3
  108. data/lib/spiderfw/controller/http_controller.rb +11 -0
  109. data/lib/spiderfw/controller/mixins/static_content.rb +3 -12
  110. data/lib/spiderfw/controller/mixins/visual.rb +21 -20
  111. data/lib/spiderfw/controller/request.rb +1 -3
  112. data/lib/spiderfw/http/adapters/mongrel.rb +1 -1
  113. data/lib/spiderfw/i18n/gettext.rb +14 -0
  114. data/lib/spiderfw/i18n/shtml_parser.rb +2 -2
  115. data/lib/spiderfw/model/base_model.rb +4 -3
  116. data/lib/spiderfw/model/mappers/db_mapper.rb +137 -79
  117. data/lib/spiderfw/model/mappers/mapper.rb +6 -2
  118. data/lib/spiderfw/model/migrations/drop_element.rb +1 -1
  119. data/lib/spiderfw/model/migrations/previous_model.rb +73 -0
  120. data/lib/spiderfw/model/migrations/rename_element.rb +42 -0
  121. data/lib/spiderfw/model/migrations.rb +14 -1
  122. data/lib/spiderfw/model/mixins/tree.rb +65 -19
  123. data/lib/spiderfw/model/model_hash.rb +9 -5
  124. data/lib/spiderfw/model/query.rb +8 -0
  125. data/lib/spiderfw/model/query_funcs.rb +23 -0
  126. data/lib/spiderfw/model/query_set.rb +1 -1
  127. data/lib/spiderfw/model/request.rb +11 -3
  128. data/lib/spiderfw/model/storage/db/adapters/mysql.rb +28 -1
  129. data/lib/spiderfw/model/storage/db/adapters/oracle.rb +10 -10
  130. data/lib/spiderfw/model/storage/db/db_schema.rb +20 -3
  131. data/lib/spiderfw/model/storage/db/db_storage.rb +39 -17
  132. data/lib/spiderfw/setup/app_manager.rb +69 -31
  133. data/lib/spiderfw/setup/setup_task.rb +76 -8
  134. data/lib/spiderfw/spider.rb +21 -1
  135. data/lib/spiderfw/templates/blocks/text.rb +4 -4
  136. data/lib/spiderfw/templates/blocks/text_domain.rb +25 -0
  137. data/lib/spiderfw/templates/blocks/widget.rb +1 -1
  138. data/lib/spiderfw/templates/layout.rb +160 -92
  139. data/lib/spiderfw/templates/resources/less.rb +10 -2
  140. data/lib/spiderfw/templates/resources/sass.rb +66 -9
  141. data/lib/spiderfw/templates/template.rb +35 -10
  142. data/lib/spiderfw/templates/template_blocks.rb +6 -3
  143. data/lib/spiderfw/utils/logger.rb +20 -0
  144. data/lib/spiderfw/utils/memory.rb +7 -3
  145. data/lib/spiderfw/widget/widget.rb +13 -7
  146. data/lib/spiderfw/widget/widget_attributes.rb +2 -2
  147. data/spider.gemspec +1 -0
  148. metadata +68 -11
  149. data/apps/core/admin/views/spider_admin.layout.shtml +0 -23
@@ -0,0 +1,141 @@
1
+ /* Reset.scss
2
+ * Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc).
3
+ * ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
4
+
5
+
6
+ // ERIC MEYER RESET
7
+ // --------------------------------------------------
8
+
9
+ html, body { margin: 0; padding: 0; }
10
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, cite, code, del, dfn, em, img, q, s, samp, small, strike, strong, sub, sup, tt, var, dd, dl, dt, li, ol, ul, fieldset, form, label, legend, button, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; font-weight: normal; font-style: normal; font-size: 100%; line-height: 1; font-family: inherit; }
11
+ table { border-collapse: collapse; border-spacing: 0; }
12
+ ol, ul { list-style: none; }
13
+ q:before, q:after, blockquote:before, blockquote:after { content: ""; }
14
+
15
+
16
+ // Normalize.css
17
+ // Pulling in select resets form the normalize.css project
18
+ // --------------------------------------------------
19
+
20
+ // Display in IE6-9 and FF3
21
+ // -------------------------
22
+ // Source: http://github.com/necolas/normalize.css
23
+ html {
24
+ overflow-y: scroll;
25
+ font-size: 100%;
26
+ -webkit-text-size-adjust: 100%;
27
+ -ms-text-size-adjust: 100%;
28
+ }
29
+ // Focus states
30
+ a:focus {
31
+ outline: thin dotted;
32
+ }
33
+ // Hover & Active
34
+ a:hover,
35
+ a:active {
36
+ outline: 0;
37
+ }
38
+
39
+ // Display in IE6-9 and FF3
40
+ // -------------------------
41
+ // Source: http://github.com/necolas/normalize.css
42
+ article,
43
+ aside,
44
+ details,
45
+ figcaption,
46
+ figure,
47
+ footer,
48
+ header,
49
+ hgroup,
50
+ nav,
51
+ section {
52
+ display: block;
53
+ }
54
+
55
+ // Display block in IE6-9 and FF3
56
+ // -------------------------
57
+ // Source: http://github.com/necolas/normalize.css
58
+ audio,
59
+ canvas,
60
+ video {
61
+ display: inline-block;
62
+ *display: inline;
63
+ *zoom: 1;
64
+ }
65
+
66
+ // Prevents modern browsers from displaying 'audio' without controls
67
+ // -------------------------
68
+ // Source: http://github.com/necolas/normalize.css
69
+ audio:not([controls]) {
70
+ display: none;
71
+ }
72
+
73
+ // Prevents sub and sup affecting line-height in all browsers
74
+ // -------------------------
75
+ // Source: http://github.com/necolas/normalize.css
76
+ sub,
77
+ sup {
78
+ font-size: 75%;
79
+ line-height: 0;
80
+ position: relative;
81
+ vertical-align: baseline;
82
+ }
83
+ sup {
84
+ top: -0.5em;
85
+ }
86
+ sub {
87
+ bottom: -0.25em;
88
+ }
89
+
90
+ // Img border in a's and image quality
91
+ // -------------------------
92
+ // Source: http://github.com/necolas/normalize.css
93
+ img {
94
+ border: 0;
95
+ -ms-interpolation-mode: bicubic;
96
+ }
97
+
98
+ // Forms
99
+ // -------------------------
100
+ // Source: http://github.com/necolas/normalize.css
101
+
102
+ // Font size in all browsers, margin changes, misc consistency
103
+ button,
104
+ input,
105
+ select,
106
+ textarea {
107
+ font-size: 100%;
108
+ margin: 0;
109
+ vertical-align: baseline;
110
+ *vertical-align: middle;
111
+ }
112
+ button,
113
+ input {
114
+ line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
115
+ *overflow: visible; // Inner spacing ie IE6/7
116
+ }
117
+ button::-moz-focus-inner,
118
+ input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
119
+ border: 0;
120
+ padding: 0;
121
+ }
122
+ button,
123
+ input[type="button"],
124
+ input[type="reset"],
125
+ input[type="submit"] {
126
+ cursor: pointer; // Cursors on all buttons applied consistently
127
+ -webkit-appearance: button; // Style clicable inputs in iOS
128
+ }
129
+ input[type="search"] { // Appearance in Safari/Chrome
130
+ -webkit-appearance: textfield;
131
+ -webkit-box-sizing: content-box;
132
+ -moz-box-sizing: content-box;
133
+ box-sizing: content-box;
134
+ }
135
+ input[type="search"]::-webkit-search-decoration {
136
+ -webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
137
+ }
138
+ textarea {
139
+ overflow: auto; // Remove vertical scrollbar in IE6-9
140
+ vertical-align: top; // Readability and alignment cross-browser
141
+ }
@@ -0,0 +1,136 @@
1
+ /*
2
+ * Scaffolding.scss
3
+ * Basic and global styles for generating a grid system, structural layout, and page templates
4
+ * ------------------------------------------------------------------------------------------- */
5
+
6
+
7
+ // STRUCTURAL LAYOUT
8
+ // -----------------
9
+
10
+ body {
11
+ background-color: $white;
12
+ margin: 0;
13
+ @include sans-serif-font(normal,$basefont,$baseline);
14
+ color: $grayDark;
15
+ }
16
+
17
+ // Container (centered, fixed-width layouts)
18
+ .container {
19
+ @include fixed-container();
20
+ }
21
+
22
+ // Fluid layouts (left aligned, with sidebar, min- & max-width content)
23
+ .container-fluid {
24
+ position: relative;
25
+ min-width: 940px;
26
+ padding-left: 20px;
27
+ padding-right: 20px;
28
+ @include clearfix();
29
+ > .sidebar {
30
+ position: absolute;
31
+ top: 0;
32
+ left: 20px;
33
+ width: 220px;
34
+ }
35
+ // TODO in v2: rename this and .popover .content to be more specific
36
+ > .content {
37
+ margin-left: 240px;
38
+ }
39
+ }
40
+
41
+
42
+ // BASE STYLES
43
+ // -----------
44
+
45
+ // Links
46
+ a {
47
+ color: $linkColor;
48
+ text-decoration: none;
49
+ line-height: inherit;
50
+ font-weight: inherit;
51
+ &:hover {
52
+ color: $linkColorHover;
53
+ text-decoration: underline;
54
+ }
55
+ }
56
+
57
+ // Quick floats
58
+ .pull-right {
59
+ float: right;
60
+ }
61
+ .pull-left {
62
+ float: left;
63
+ }
64
+
65
+ // Toggling content
66
+ .hide {
67
+ display: none;
68
+ }
69
+ .show {
70
+ display: block;
71
+ }
72
+
73
+
74
+ // GRID SYSTEM
75
+ // -----------
76
+ // To customize the grid system, bring up the variables.scss file and change the column count, size, and gutter there
77
+
78
+ .row {
79
+ @include clearfix();
80
+ margin-left: -1 * $gridGutterWidth;
81
+ }
82
+
83
+ // Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7)
84
+ // Credit to @dhg for the idea
85
+ .row > [class*="span"] {
86
+ @include gridColumn();
87
+ }
88
+
89
+ // Default columns
90
+ .span1 { @include columns(1); }
91
+ .span2 { @include columns(2); }
92
+ .span3 { @include columns(3); }
93
+ .span4 { @include columns(4); }
94
+ .span5 { @include columns(5); }
95
+ .span6 { @include columns(6); }
96
+ .span7 { @include columns(7); }
97
+ .span8 { @include columns(8); }
98
+ .span9 { @include columns(9); }
99
+ .span10 { @include columns(10); }
100
+ .span11 { @include columns(11); }
101
+ .span12 { @include columns(12); }
102
+ .span13 { @include columns(13); }
103
+ .span14 { @include columns(14); }
104
+ .span15 { @include columns(15); }
105
+ .span16 { @include columns(16); }
106
+
107
+ // For option 24-column grid
108
+ .span17 { @include columns(17); }
109
+ .span18 { @include columns(18); }
110
+ .span19 { @include columns(19); }
111
+ .span20 { @include columns(20); }
112
+ .span21 { @include columns(21); }
113
+ .span22 { @include columns(22); }
114
+ .span23 { @include columns(23); }
115
+ .span24 { @include columns(24); }
116
+
117
+ // Offset column options
118
+ .row {
119
+ > .offset1 { @include offset(1); }
120
+ > .offset2 { @include offset(2); }
121
+ > .offset3 { @include offset(3); }
122
+ > .offset4 { @include offset(4); }
123
+ > .offset5 { @include offset(5); }
124
+ > .offset6 { @include offset(6); }
125
+ > .offset7 { @include offset(7); }
126
+ > .offset8 { @include offset(8); }
127
+ > .offset9 { @include offset(9); }
128
+ > .offset10 { @include offset(10); }
129
+ > .offset11 { @include offset(11); }
130
+ > .offset12 { @include offset(12); }
131
+ }
132
+ // Unique column sizes for 16-column grid
133
+ .span-one-third { width: 300px; }
134
+ .span-two-thirds { width: 620px; }
135
+ .offset-one-third { margin-left: 340px; }
136
+ .offset-two-thirds { margin-left: 660px; }
@@ -0,0 +1,224 @@
1
+ /*
2
+ * Tables.scss
3
+ * Tables for, you guessed it, tabular data
4
+ * ---------------------------------------- */
5
+
6
+
7
+ // BASELINE STYLES
8
+ // ---------------
9
+
10
+ table {
11
+ width: 100%;
12
+ margin-bottom: $baseline;
13
+ padding: 0;
14
+ font-size: $basefont;
15
+ border-collapse: collapse;
16
+ th,
17
+ td {
18
+ padding: 10px 10px 9px;
19
+ line-height: $baseline;
20
+ text-align: left;
21
+ }
22
+ th {
23
+ padding-top: 9px;
24
+ font-weight: bold;
25
+ vertical-align: middle;
26
+ }
27
+ td {
28
+ vertical-align: top;
29
+ border-top: 1px solid #ddd;
30
+ }
31
+ // When scoped to row, fix th in tbody
32
+ tbody th {
33
+ border-top: 1px solid #ddd;
34
+ vertical-align: top;
35
+ }
36
+ }
37
+
38
+ // CONDENSED VERSION
39
+ // -----------------
40
+ .condensed-table {
41
+ th,
42
+ td {
43
+ padding: 5px 5px 4px;
44
+ }
45
+ }
46
+
47
+
48
+
49
+ // BORDERED VERSION
50
+ // ----------------
51
+
52
+ .bordered-table {
53
+ border: 1px solid #ddd;
54
+ border-collapse: separate; // Done so we can round those corners!
55
+ *border-collapse: collapse; /* IE7, collapse table to remove spacing */
56
+ @include border-radius(4px);
57
+ th + th,
58
+ td + td,
59
+ th + td {
60
+ border-left: 1px solid #ddd;
61
+ }
62
+ thead tr:first-child th:first-child,
63
+ tbody tr:first-child td:first-child {
64
+ @include border-radius(4px 0 0 0);
65
+ }
66
+ thead tr:first-child th:last-child,
67
+ tbody tr:first-child td:last-child {
68
+ @include border-radius(0 4px 0 0);
69
+ }
70
+ tbody tr:last-child td:first-child {
71
+ @include border-radius(0 0 0 4px);
72
+ }
73
+ tbody tr:last-child td:last-child {
74
+ @include border-radius(0 0 4px 0);
75
+ }
76
+ }
77
+
78
+
79
+ // TABLE CELL SIZES
80
+ // ----------------
81
+
82
+ // This is a duplication of the main grid .columns() mixin, but subtracts 20px to account for input padding and border
83
+ @mixin tableColumns($columnSpan: 1) {
84
+ width: (($gridColumnWidth - 20) * $columnSpan) + (($gridColumnWidth - 20) * ($columnSpan - 1));
85
+ }
86
+ table {
87
+ // Default columns
88
+ .span1 { @include tableColumns(1); }
89
+ .span2 { @include tableColumns(2); }
90
+ .span3 { @include tableColumns(3); }
91
+ .span4 { @include tableColumns(4); }
92
+ .span5 { @include tableColumns(5); }
93
+ .span6 { @include tableColumns(6); }
94
+ .span7 { @include tableColumns(7); }
95
+ .span8 { @include tableColumns(8); }
96
+ .span9 { @include tableColumns(9); }
97
+ .span10 { @include tableColumns(10); }
98
+ .span11 { @include tableColumns(11); }
99
+ .span12 { @include tableColumns(12); }
100
+ .span13 { @include tableColumns(13); }
101
+ .span14 { @include tableColumns(14); }
102
+ .span15 { @include tableColumns(15); }
103
+ .span16 { @include tableColumns(16); }
104
+ }
105
+
106
+
107
+ // ZEBRA-STRIPING
108
+ // --------------
109
+
110
+ // Default zebra-stripe styles (alternating gray and transparent backgrounds)
111
+ .zebra-striped {
112
+ tbody {
113
+ tr:nth-child(odd) td,
114
+ tr:nth-child(odd) th ,
115
+ tr.odd td, tr.odd th{
116
+ background-color: #f9f9f9;
117
+ }
118
+ tr:hover td,
119
+ tr:hover th{
120
+ background-color: #f5f5f5;
121
+ }
122
+ }
123
+ }
124
+
125
+ table {
126
+ // Tablesorting styles w/ jQuery plugin
127
+ .sortable {
128
+ &:after {
129
+ content: "";
130
+ float: right;
131
+ margin-top: 7px;
132
+ border-width: 0 4px 4px;
133
+ border-style: solid;
134
+ border-color: #000 transparent;
135
+ visibility: hidden;
136
+ }
137
+ }
138
+ // Style the sorted column headers (THs)
139
+ .sorted-asc,
140
+ .sorted-desc {
141
+ background-color: rgba(141,192,219,.25);
142
+ text-shadow: 0 1px 1px rgba(255,255,255,.75);
143
+ }
144
+ // Style the ascending (reverse alphabetical) column header
145
+ .sortable:hover {
146
+ &:after {
147
+ visibility:visible;
148
+ }
149
+ }
150
+ // Style the descending (alphabetical) column header
151
+ .sorted-desc,
152
+ .sorted-desc:hover {
153
+ &:after {
154
+ visibility:visible;
155
+ @include opacity(60);
156
+ }
157
+ }
158
+ // Style the ascending (reverse alphabetical) column header
159
+ .sorted-asc {
160
+ &:after {
161
+ border-bottom: none;
162
+ border-left: 4px solid transparent;
163
+ border-right: 4px solid transparent;
164
+ border-top: 4px solid #000;
165
+ visibility:visible;
166
+ @include box-shadow(none); //can't add boxshadow to downward facing arrow :(
167
+ @include opacity(60);
168
+ }
169
+ }
170
+ // Blue Table Headings
171
+ .blue {
172
+ color: $blue;
173
+ border-bottom-color: $blue;
174
+ }
175
+ .sorted-asc.blue,
176
+ .sorted-desc.blue {
177
+ background-color: lighten($blue, 40%);
178
+ }
179
+ // Green Table Headings
180
+ .green {
181
+ color: $green;
182
+ border-bottom-color: $green;
183
+ }
184
+ .sorted-asc.green,
185
+ .sorted-desc.green {
186
+ background-color: lighten($green, 40%);
187
+ }
188
+ // Red Table Headings
189
+ .red {
190
+ color: $red;
191
+ border-bottom-color: $red;
192
+ }
193
+ .sorted-asc.red,
194
+ .sorted-desc.red {
195
+ background-color: lighten($red, 50%);
196
+ }
197
+ // Yellow Table Headings
198
+ .yellow {
199
+ color: $yellow;
200
+ border-bottom-color: $yellow;
201
+ }
202
+ .sorted-asc.yellow,
203
+ .sorted-desc.yellow {
204
+ background-color: lighten($yellow, 40%);
205
+ }
206
+ // Orange Table Headings
207
+ .orange {
208
+ color: $orange;
209
+ border-bottom-color: $orange;
210
+ }
211
+ .sorted-asc.orange,
212
+ .sorted-desc.orange {
213
+ background-color: lighten($orange, 40%);
214
+ }
215
+ // Purple Table Headings
216
+ .purple {
217
+ color: $purple;
218
+ border-bottom-color: $purple;
219
+ }
220
+ .sorted-asc.purple,
221
+ .sorted-desc.purple {
222
+ background-color: lighten($purple, 40%);
223
+ }
224
+ }
@@ -0,0 +1,187 @@
1
+ /* Typography.scss
2
+ * Headings, body text, lists, code, and more for a versatile and durable typography system
3
+ * ---------------------------------------------------------------------------------------- */
4
+
5
+
6
+ // BODY TEXT
7
+ // ---------
8
+
9
+ p {
10
+ @include shorthand-font(normal,$basefont,$baseline);
11
+ margin-bottom: $baseline / 2;
12
+ small {
13
+ font-size: $basefont - 2;
14
+ color: $grayLight;
15
+ }
16
+ }
17
+
18
+
19
+ // HEADINGS
20
+ // --------
21
+
22
+ h1, h2, h3, h4, h5, h6 {
23
+ font-weight: bold;
24
+ color: $grayDark;
25
+ small {
26
+ color: $grayLight;
27
+ }
28
+ }
29
+ h1 {
30
+ margin-bottom: $baseline;
31
+ font-size: 30px;
32
+ line-height: $baseline * 2;
33
+ small {
34
+ font-size: 18px;
35
+ }
36
+ }
37
+ h2 {
38
+ font-size: 24px;
39
+ line-height: $baseline * 2;
40
+ small {
41
+ font-size: 14px;
42
+ }
43
+ }
44
+ h3, h4, h5, h6 {
45
+ line-height: $baseline * 2;
46
+ }
47
+ h3 {
48
+ font-size: 18px;
49
+ small {
50
+ font-size: 14px;
51
+ }
52
+ }
53
+ h4 {
54
+ font-size: 16px;
55
+ small {
56
+ font-size: 12px;
57
+ }
58
+ }
59
+ h5 {
60
+ font-size: 14px;
61
+ }
62
+ h6 {
63
+ font-size: 13px;
64
+ color: $grayLight;
65
+ text-transform: uppercase;
66
+ }
67
+
68
+
69
+ // COLORS
70
+ // ------
71
+
72
+ // Unordered and Ordered lists
73
+ ul, ol {
74
+ margin: 0 0 $baseline 25px;
75
+ }
76
+ ul ul,
77
+ ul ol,
78
+ ol ol,
79
+ ol ul {
80
+ margin-bottom: 0;
81
+ }
82
+ ul {
83
+ list-style: disc;
84
+ }
85
+ ol {
86
+ list-style: decimal;
87
+ }
88
+ li {
89
+ line-height: $baseline;
90
+ color: $gray;
91
+ }
92
+ ul.unstyled {
93
+ list-style: none;
94
+ margin-left: 0;
95
+ }
96
+
97
+ // Description Lists
98
+ dl {
99
+ margin-bottom: $baseline;
100
+ dt, dd {
101
+ line-height: $baseline;
102
+ }
103
+ dt {
104
+ font-weight: bold;
105
+ }
106
+ dd {
107
+ margin-left: $baseline / 2;
108
+ }
109
+ }
110
+
111
+ // MISC
112
+ // ----
113
+
114
+ // Horizontal rules
115
+ hr {
116
+ margin: 20px 0 19px;
117
+ border: 0;
118
+ border-bottom: 1px solid #eee;
119
+ }
120
+
121
+ // Emphasis
122
+ strong {
123
+ font-style: inherit;
124
+ font-weight: bold;
125
+ }
126
+ em {
127
+ font-style: italic;
128
+ font-weight: inherit;
129
+ line-height: inherit;
130
+ }
131
+ .muted {
132
+ color: $grayLight;
133
+ }
134
+
135
+ // Blockquotes
136
+ blockquote {
137
+ margin-bottom: $baseline;
138
+ border-left: 5px solid #eee;
139
+ padding-left: 15px;
140
+ p {
141
+ @include shorthand-font(300,14px,$baseline);
142
+ margin-bottom: 0;
143
+ }
144
+ small {
145
+ display: block;
146
+ @include shorthand-font(300,12px,$baseline);
147
+ color: $grayLight;
148
+ &:before {
149
+ content: '\2014 \00A0';
150
+ }
151
+ }
152
+ }
153
+
154
+ // Addresses
155
+ address {
156
+ display: block;
157
+ line-height: $baseline;
158
+ margin-bottom: $baseline;
159
+ }
160
+
161
+ // Inline and block code styles
162
+ code, pre {
163
+ padding: 0 3px 2px;
164
+ font-family: Monaco, Andale Mono, Courier New, monospace;
165
+ font-size: 12px;
166
+ @include border-radius(3px);
167
+ }
168
+ code {
169
+ background-color: lighten($orange, 40%);
170
+ color: rgba(0,0,0,.75);
171
+ padding: 1px 3px;
172
+ }
173
+ pre {
174
+ background-color: #f5f5f5;
175
+ display: block;
176
+ padding: ($baseline - 1) / 2;
177
+ margin: 0 0 $baseline;
178
+ line-height: $baseline;
179
+ font-size: 12px;
180
+ border: 1px solid #ccc;
181
+ border: 1px solid rgba(0,0,0,.15);
182
+ @include border-radius(3px);
183
+ white-space: pre;
184
+ white-space: pre-wrap;
185
+ word-wrap: break-word;
186
+
187
+ }