compass-foundation 0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/.gitignore +9 -0
  2. data/.gitmodules +3 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.mkdn +11 -0
  5. data/README.mkdn +43 -0
  6. data/Rakefile +1 -0
  7. data/compass-foundation.gemspec +26 -0
  8. data/lib/compass-foundation/rails/engine.rb +7 -0
  9. data/lib/compass-foundation/rails.rb +7 -0
  10. data/lib/compass-foundation/version.rb +5 -0
  11. data/lib/compass-foundation.rb +14 -0
  12. data/stylesheets/compass-foundation/_compass_foundation.scss +13 -0
  13. data/stylesheets/compass-foundation/_forms.css.scss +249 -0
  14. data/stylesheets/compass-foundation/_globals.css.scss +176 -0
  15. data/stylesheets/compass-foundation/_grid.css.scss +188 -0
  16. data/stylesheets/compass-foundation/_ie.css.scss +4 -0
  17. data/stylesheets/compass-foundation/_mobile.css.scss +220 -0
  18. data/stylesheets/compass-foundation/_orbit.css.scss +227 -0
  19. data/stylesheets/compass-foundation/_reveal.css.scss +107 -0
  20. data/stylesheets/compass-foundation/_typography.css.scss +169 -0
  21. data/stylesheets/compass-foundation/_ui.css.scss +338 -0
  22. data/vendor/assets/images/misc/button-gloss.png +0 -0
  23. data/vendor/assets/images/misc/button-overlay.png +0 -0
  24. data/vendor/assets/images/misc/custom-form-sprites.png +0 -0
  25. data/vendor/assets/images/misc/input-bg.png +0 -0
  26. data/vendor/assets/images/misc/modal-gloss.png +0 -0
  27. data/vendor/assets/images/misc/table-sorter.png +0 -0
  28. data/vendor/assets/images/orbit/bullets.jpg +0 -0
  29. data/vendor/assets/images/orbit/left-arrow.png +0 -0
  30. data/vendor/assets/images/orbit/loading.gif +0 -0
  31. data/vendor/assets/images/orbit/mask-black.png +0 -0
  32. data/vendor/assets/images/orbit/pause-black.png +0 -0
  33. data/vendor/assets/images/orbit/right-arrow.png +0 -0
  34. data/vendor/assets/images/orbit/rotator-black.png +0 -0
  35. data/vendor/assets/images/orbit/timer-black.png +0 -0
  36. data/vendor/assets/javascripts/app.js +48 -0
  37. data/vendor/assets/javascripts/forms.jquery.js +58 -0
  38. data/vendor/assets/javascripts/jquery.customforms.js +168 -0
  39. data/vendor/assets/javascripts/jquery.orbit.js +597 -0
  40. data/vendor/assets/javascripts/jquery.placeholder.min.js +2 -0
  41. data/vendor/assets/javascripts/jquery.reveal.js +126 -0
  42. data/vendor/assets/stylesheets/compass-foundation/_compass_foundation.scss +13 -0
  43. data/vendor/assets/stylesheets/compass-foundation/_forms.scss +249 -0
  44. data/vendor/assets/stylesheets/compass-foundation/_globals.scss +176 -0
  45. data/vendor/assets/stylesheets/compass-foundation/_grid.scss +188 -0
  46. data/vendor/assets/stylesheets/compass-foundation/_ie.scss +4 -0
  47. data/vendor/assets/stylesheets/compass-foundation/_mobile.scss +220 -0
  48. data/vendor/assets/stylesheets/compass-foundation/_orbit.scss +227 -0
  49. data/vendor/assets/stylesheets/compass-foundation/_reveal.scss +107 -0
  50. data/vendor/assets/stylesheets/compass-foundation/_typography.scss +169 -0
  51. data/vendor/assets/stylesheets/compass-foundation/_ui.scss +338 -0
  52. data/vendor/assets/stylesheets/compass-foundation/compass_foundation.scss +13 -0
  53. data/vendor/assets/stylesheets/compass-foundation/manifest.rb +38 -0
  54. metadata +121 -0
@@ -0,0 +1,126 @@
1
+ /*
2
+ * jQuery Reveal Plugin 1.0
3
+ * www.ZURB.com
4
+ * Copyright 2010, ZURB
5
+ * Free to use under the MIT license.
6
+ * http://www.opensource.org/licenses/mit-license.php
7
+ */
8
+
9
+
10
+ (function ($) {
11
+ $('a[data-reveal-id]').live('click', function (event) {
12
+ event.preventDefault();
13
+ var modalLocation = $(this).attr('data-reveal-id');
14
+ $('#' + modalLocation).reveal($(this).data());
15
+ });
16
+
17
+ $.fn.reveal = function (options) {
18
+ var defaults = {
19
+ animation: 'fadeAndPop', // fade, fadeAndPop, none
20
+ animationSpeed: 300, // how fast animtions are
21
+ closeOnBackgroundClick: true, // if you click background will modal close?
22
+ dismissModalClass: 'close-reveal-modal' // the class of a button or element that will close an open modal
23
+ };
24
+ var options = $.extend({}, defaults, options);
25
+
26
+ return this.each(function () {
27
+ var modal = $(this),
28
+ topMeasure = parseInt(modal.css('top')),
29
+ topOffset = modal.height() + topMeasure,
30
+ locked = false,
31
+ modalBg = $('.reveal-modal-bg');
32
+
33
+ if (modalBg.length == 0) {
34
+ modalBg = $('<div class="reveal-modal-bg" />').insertAfter(modal);
35
+ modalBg.fadeTo('fast', 0.8);
36
+ }
37
+
38
+ function openAnimation() {
39
+ modalBg.unbind('click.modalEvent');
40
+ $('.' + options.dismissModalClass).unbind('click.modalEvent');
41
+ if (!locked) {
42
+ lockModal();
43
+ if (options.animation == "fadeAndPop") {
44
+ modal.css({'top': $(document).scrollTop() - topOffset, 'opacity': 0, 'visibility': 'visible'});
45
+ modalBg.fadeIn(options.animationSpeed / 2);
46
+ modal.delay(options.animationSpeed / 2).animate({
47
+ "top": $(document).scrollTop() + topMeasure + 'px',
48
+ "opacity": 1
49
+ }, options.animationSpeed, unlockModal);
50
+ }
51
+ if (options.animation == "fade") {
52
+ modal.css({'opacity': 0, 'visibility': 'visible', 'top': $(document).scrollTop() + topMeasure});
53
+ modalBg.fadeIn(options.animationSpeed / 2);
54
+ modal.delay(options.animationSpeed / 2).animate({
55
+ "opacity": 1
56
+ }, options.animationSpeed, unlockModal);
57
+ }
58
+ if (options.animation == "none") {
59
+ modal.css({'visibility': 'visible', 'top': $(document).scrollTop() + topMeasure});
60
+ modalBg.css({"display": "block"});
61
+ unlockModal();
62
+ }
63
+ }
64
+ modal.unbind('reveal:open', openAnimation);
65
+ }
66
+ modal.bind('reveal:open', openAnimation);
67
+
68
+ function closeAnimation() {
69
+ if (!locked) {
70
+ lockModal();
71
+ if (options.animation == "fadeAndPop") {
72
+ modalBg.delay(options.animationSpeed).fadeOut(options.animationSpeed);
73
+ modal.animate({
74
+ "top": $(document).scrollTop() - topOffset + 'px',
75
+ "opacity": 0
76
+ }, options.animationSpeed / 2, function () {
77
+ modal.css({'top': topMeasure, 'opacity': 1, 'visibility': 'hidden'});
78
+ unlockModal();
79
+ });
80
+ }
81
+ if (options.animation == "fade") {
82
+ modalBg.delay(options.animationSpeed).fadeOut(options.animationSpeed);
83
+ modal.animate({
84
+ "opacity" : 0
85
+ }, options.animationSpeed, function () {
86
+ modal.css({'opacity': 1, 'visibility': 'hidden', 'top': topMeasure});
87
+ unlockModal();
88
+ });
89
+ }
90
+ if (options.animation == "none") {
91
+ modal.css({'visibility': 'hidden', 'top': topMeasure});
92
+ modalBg.css({'display': 'none'});
93
+ }
94
+ }
95
+ modal.unbind('reveal:close', closeAnimation);
96
+ }
97
+ modal.bind('reveal:close', closeAnimation);
98
+ modal.trigger('reveal:open');
99
+
100
+ var closeButton = $('.' + options.dismissModalClass).bind('click.modalEvent', function () {
101
+ modal.trigger('reveal:close');
102
+ });
103
+
104
+ if (options.closeOnBackgroundClick) {
105
+ modalBg.css({"cursor": "pointer"});
106
+ modalBg.bind('click.modalEvent', function () {
107
+ modal.trigger('reveal:close');
108
+ });
109
+ }
110
+
111
+ $('body').keyup(function (event) {
112
+ if (event.which === 27) { // 27 is the keycode for the Escape key
113
+ modal.trigger('reveal:close');
114
+ }
115
+ });
116
+
117
+ function unlockModal() {
118
+ locked = false;
119
+ }
120
+
121
+ function lockModal() {
122
+ locked = true;
123
+ }
124
+ });
125
+ };
126
+ })(jQuery);
@@ -0,0 +1,13 @@
1
+ @import "globals.scss";
2
+ @import "ie.scss";
3
+
4
+ @import "typography.scss";
5
+ @import "ui.scss";
6
+ @import "forms.scss";
7
+ @import "grid.scss";
8
+ @import "mobile.scss";
9
+ @import "orbit.scss";
10
+ @import "reveal.scss";
11
+
12
+
13
+
@@ -0,0 +1,249 @@
1
+ /* Artfully masterminded by ZURB
2
+
3
+ Make sure to include the app.js if you are going to use inline label inputs
4
+ */
5
+
6
+ /* -----------------------------------------
7
+ Standard Forms
8
+ ----------------------------------------- */
9
+
10
+ form {
11
+ margin: 0 0 18px;
12
+ label {
13
+ display: block;
14
+ font-size: 13px;
15
+ line-height: 18px;
16
+ cursor: pointer;
17
+ margin-bottom: 9px; } }
18
+
19
+ input.input-text, textarea {
20
+ border-right: 1px solid #bbb;
21
+ border-bottom: 1px solid #bbb; }
22
+
23
+ input.input-text, textarea, select {
24
+ display: block;
25
+ margin-bottom: 9px; }
26
+
27
+ label + {
28
+ input.input-text, textarea, select, div.dropdown {
29
+ margin-top: -9px; } }
30
+
31
+ select + div.dropdown {
32
+ margin-top: -9px; }
33
+
34
+ /* Text input and textarea font and padding */
35
+
36
+ input.input-text, textarea {
37
+ font-size: 13px;
38
+ padding: 4px 3px 2px;
39
+ outline: none !important;
40
+ background: #fff; }
41
+
42
+ input.input-text.oversize, textarea.oversize {
43
+ font-size: 18px !important;
44
+ padding: 4px 5px !important; }
45
+
46
+ input.input-text:focus, textarea:focus {
47
+ background: #f9f9f9; }
48
+
49
+ /* Inlined Label Style */
50
+
51
+ input.placeholder, textarea.placeholder {
52
+ color: #888; }
53
+
54
+ /* Text input and textarea sizes */
55
+
56
+ input.input-text, textarea {
57
+ width: 254px; }
58
+
59
+ input.small, textarea.small {
60
+ width: 134px; }
61
+
62
+ input.medium, textarea.medium {
63
+ width: 254px; }
64
+
65
+ input.large, textarea.large {
66
+ width: 434px; }
67
+
68
+ /* Fieldsets */
69
+
70
+ form fieldset {
71
+ padding: 9px 9px 2px 9px;
72
+ border: solid 1px #ddd;
73
+ margin: 18px 0; }
74
+
75
+ /* Inlined Radio & Checkbox */
76
+
77
+ div.form-field {
78
+ input {
79
+ &[type=radio], &[type=checkbox] {
80
+ display: inline;
81
+ width: auto;
82
+ margin-bottom: 0; } }
83
+ &.error input {
84
+ border-color: red;
85
+ background-color: rgba(255, 0, 0, 0.15); } }
86
+
87
+ /* Errors */
88
+
89
+ input.input-text.red {
90
+ border-color: red;
91
+ background-color: rgba(255, 0, 0, 0.15); }
92
+
93
+ div.form-field.error label, label.red {
94
+ color: red; }
95
+
96
+ div.form-field.error small, small.error {
97
+ margin-top: -6px;
98
+ display: block;
99
+ margin-bottom: 9px;
100
+ font-size: 11px;
101
+ color: red;
102
+ width: 260px; }
103
+
104
+ .small + small.error {
105
+ width: 140px; }
106
+
107
+ .medium + small.error {
108
+ width: 260px; }
109
+
110
+ .large + small.error {
111
+ width: 440px; }
112
+
113
+ /* -----------------------------------------
114
+ Nicer Forms
115
+ ----------------------------------------- */
116
+
117
+ form {
118
+ &.nice {
119
+ div.form-field input, input.input-text, textarea {
120
+ border: solid 1px #bbb;
121
+ border-radius: 2px;
122
+ -webkit-border-radius: 2px;
123
+ -moz-border-radius: 2px; }
124
+ div.form-field input, input.input-text, textarea {
125
+ font-size: 13px;
126
+ padding: 6px 3px 4px;
127
+ outline: none !important;
128
+ background: url(../images/misc/input-bg.png) white; }
129
+ div.form-field input:focus, input.input-text:focus, textarea:focus {
130
+ background-color: #f9f9f9; }
131
+ fieldset {
132
+ border-radius: 3px;
133
+ -webkit-border-radius: 3px;
134
+ -moz-border-radius: 3px; }
135
+ div.form-field {
136
+ input {
137
+ &[type=radio], &[type=checkbox] {
138
+ display: inline;
139
+ width: auto;
140
+ margin-bottom: 0; } }
141
+ &.error small {
142
+ padding: 6px 4px;
143
+ border: solid 0px red;
144
+ border-width: 0px 1px 1px 1px;
145
+ margin-top: -10px;
146
+ background: red;
147
+ color: #fff;
148
+ font-size: 12px;
149
+ font-weight: bold;
150
+ border-bottom-left-radius: 2px;
151
+ border-bottom-right-radius: 2px;
152
+ -webkit-border-bottom-left-radius: 2px;
153
+ -webkit-border-bottom-right-radius: 2px;
154
+ -moz-border-radius-bottomleft: 2px;
155
+ -moz-border-radius-bottomright: 2px; } }
156
+ small.error {
157
+ padding: 6px 4px;
158
+ border: solid 0px red;
159
+ border-width: 0px 1px 1px 1px;
160
+ margin-top: -10px;
161
+ background: red;
162
+ color: #fff;
163
+ font-size: 12px;
164
+ font-weight: bold;
165
+ border-bottom-left-radius: 2px;
166
+ border-bottom-right-radius: 2px;
167
+ -webkit-border-bottom-left-radius: 2px;
168
+ -webkit-border-bottom-right-radius: 2px;
169
+ -moz-border-radius-bottomleft: 2px;
170
+ -moz-border-radius-bottomright: 2px; }
171
+ div.form-field.error .small + small, .small + small.error {
172
+ width: 132px; }
173
+ div.form-field.error .medium + small, .medium + small.error {
174
+ width: 252px; }
175
+ div.form-field.error .large + small, .large + small.error {
176
+ width: 432px; } }
177
+ &.custom {
178
+ span.custom {
179
+ display: inline-block;
180
+ width: 14px;
181
+ height: 14px;
182
+ position: relative;
183
+ top: 2px;
184
+ border: solid 1px #ccc;
185
+ background: url(../images/misc/custom-form-sprites.png) 0 0 no-repeat;
186
+ &.radio {
187
+ border-radius: 7px;
188
+ -webkit-border-radius: 7px;
189
+ -moz-border-radius: 7px;
190
+ &.checked {
191
+ background-position: 0px -14px; } }
192
+ &.checkbox.checked {
193
+ background-position: 0px -28px; } }
194
+ div.custom.dropdown {
195
+ position: relative;
196
+ display: inline-block;
197
+ width: auto;
198
+ height: 28px;
199
+ margin-bottom: 9px;
200
+ a {
201
+ &.current {
202
+ display: block;
203
+ width: auto;
204
+ line-height: 26px;
205
+ padding: 0 38px 0 6px;
206
+ border: solid 1px #ddd;
207
+ color: #141414; }
208
+ &.selector {
209
+ position: absolute;
210
+ width: 26px;
211
+ height: 26px;
212
+ display: block;
213
+ background: url(../images/misc/custom-form-sprites.png) -14px 0 no-repeat;
214
+ right: 0px;
215
+ top: 0px;
216
+ border: solid 1px #ddd; } }
217
+ &:hover a.selector, &.open a.selector {
218
+ background-position: -14px -26px; }
219
+ ul {
220
+ position: absolute;
221
+ width: auto;
222
+ display: none;
223
+ margin: 0;
224
+ left: 0px;
225
+ top: 27px;
226
+ margin: 0;
227
+ padding: 0;
228
+ background: rgba(255, 255, 255, 0.9);
229
+ border: solid 1px #ddd;
230
+ z-index: 10;
231
+ li {
232
+ cursor: pointer;
233
+ padding: 3px 38px 3px 6px;
234
+ margin: 0;
235
+ &.selected {
236
+ background: url(../images/misc/custom-form-sprites.png) right -52px no-repeat; }
237
+ &:hover {
238
+ background-color: #2a85e8;
239
+ color: #fff; }
240
+ &.selected:hover {
241
+ background: url(../images/misc/custom-form-sprites.png) #2a85e8 right -78px no-repeat; } }
242
+ &.show {
243
+ display: block; } }
244
+ &.open ul {
245
+ display: block; } } } }
246
+
247
+ /* -----------------------------------------
248
+ Custom Forms
249
+ ----------------------------------------- */
@@ -0,0 +1,176 @@
1
+ /* Artfully Masterminded by ZURB */
2
+
3
+ /* --------------------------------------------------
4
+ Table of Contents
5
+ -----------------------------------------------------
6
+ :: Reset & Standards
7
+ :: Links
8
+ :: Lists
9
+ :: Tables
10
+ :: Misc
11
+ */
12
+
13
+ /* --------------------------------------------------
14
+ :: Global Reset & Standards
15
+ -------------------------------------------------- */
16
+
17
+ /*
18
+ Eric Meyer's CSS Reset
19
+ http://meyerweb.com/eric/tools/css/reset/
20
+ v2.0 | 20110126
21
+ License: none (public domain)
22
+ */
23
+
24
+ html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
25
+ margin: 0;
26
+ padding: 0;
27
+ border: 0;
28
+ font: inherit;
29
+ vertical-align: baseline; }
30
+
31
+ html {
32
+ font-size: 62.5%; }
33
+
34
+ /* HTML5 display-role reset for older browsers */
35
+
36
+ article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
37
+ display: block; }
38
+
39
+ body {
40
+ line-height: 1; }
41
+
42
+ ol, ul {
43
+ list-style: none; }
44
+
45
+ blockquote, q {
46
+ quotes: none; }
47
+
48
+ blockquote {
49
+ &:before, &:after {
50
+ content: '';
51
+ content: none; } }
52
+
53
+ q {
54
+ &:before, &:after {
55
+ content: '';
56
+ content: none; } }
57
+
58
+ table {
59
+ border-collapse: collapse;
60
+ border-spacing: 0; }
61
+
62
+ body {
63
+ background: #fff;
64
+ font-family: "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, "Lucida Grande", sans-serif;
65
+ font-size: 13px;
66
+ line-height: 18px;
67
+ color: #555;
68
+ position: relative;
69
+ -webkit-font-smoothing: antialiased; }
70
+
71
+ /* --------------------------------------------------
72
+ :: Links
73
+ -------------------------------------------------- */
74
+
75
+ a {
76
+ color: #2a85e8;
77
+ text-decoration: none;
78
+ outline: 0;
79
+ line-height: inherit;
80
+ &:hover {
81
+ color: #11639d; } }
82
+
83
+ p a {
84
+ line-height: inherit;
85
+ &:visited {
86
+ line-height: inherit; } }
87
+
88
+ /* --------------------------------------------------
89
+ :: Lists
90
+ -------------------------------------------------- */
91
+
92
+ ul, ol {
93
+ margin-bottom: 18px; }
94
+
95
+ ul {
96
+ list-style: none outside; }
97
+
98
+ ol {
99
+ list-style: decimal;
100
+ margin-left: 30px; }
101
+
102
+ ul {
103
+ &.square, &.circle, &.disc {
104
+ margin-left: 30px; }
105
+ &.square {
106
+ list-style: square outside; }
107
+ &.circle {
108
+ list-style: circle outside; }
109
+ &.disc {
110
+ list-style: disc outside; }
111
+ ul {
112
+ margin: 4px 0 5px 30px; } }
113
+
114
+ ol ol {
115
+ margin: 4px 0 5px 30px; }
116
+
117
+ li {
118
+ margin-bottom: 12px; }
119
+
120
+ ul.large li {
121
+ line-height: 21px; }
122
+
123
+ /* --------------------------------------------------
124
+ :: Tables
125
+ -------------------------------------------------- */
126
+
127
+ table {
128
+ background: #fff;
129
+ -moz-border-radius: 3px;
130
+ -webkit-border-radius: 3px;
131
+ width: 100%;
132
+ margin: 0 0 18px;
133
+ border: 1px solid #ddd;
134
+ thead {
135
+ background: #f5f5f5;
136
+ tr th {
137
+ font-size: 12px;
138
+ line-height: 18px;
139
+ text-align: left; } }
140
+ tbody tr td {
141
+ font-size: 12px;
142
+ line-height: 18px;
143
+ text-align: left; }
144
+ thead tr th {
145
+ padding: 8px 10px 9px;
146
+ font-size: 14px;
147
+ font-weight: bold;
148
+ color: #222;
149
+ &:first-child {
150
+ border-left: none; }
151
+ &:last-child {
152
+ border-right: none; } }
153
+ tbody tr {
154
+ &.even, &.alt, &:nth-child(even) {
155
+ background: #f9f9f9; }
156
+ td {
157
+ color: #333;
158
+ padding: 9px 10px;
159
+ vertical-align: top;
160
+ border: none; } } }
161
+
162
+ /* --------------------------------------------------
163
+ :: Misc
164
+ ---------------------------------------------------*/
165
+
166
+ .left {
167
+ float: left; }
168
+
169
+ .right {
170
+ float: right; }
171
+
172
+ .hide {
173
+ display: none; }
174
+
175
+ .highlight {
176
+ background: #ff0; }