kickstrap_rails 0.9.0RC

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +165 -0
  4. data/README.md +23 -0
  5. data/Rakefile +2 -0
  6. data/kickstrap_rails.gemspec +20 -0
  7. data/lib/kickstrap_rails/version.rb +3 -0
  8. data/lib/kickstrap_rails.rb +6 -0
  9. data/vendor/assets/fonts/fontawesome/fontawesome-webfont.eot +0 -0
  10. data/vendor/assets/fonts/fontawesome/fontawesome-webfont.svg +175 -0
  11. data/vendor/assets/fonts/fontawesome/fontawesome-webfont.svgz +0 -0
  12. data/vendor/assets/fonts/fontawesome/fontawesome-webfont.ttf +0 -0
  13. data/vendor/assets/fonts/fontawesome/fontawesome-webfont.woff +0 -0
  14. data/vendor/assets/fonts/icomoon/full-webfont.eot +0 -0
  15. data/vendor/assets/fonts/icomoon/full-webfont.svg +157 -0
  16. data/vendor/assets/fonts/icomoon/full-webfont.ttf +0 -0
  17. data/vendor/assets/fonts/icomoon/full-webfont.woff +0 -0
  18. data/vendor/assets/images/chosen/chosen-sprite.png +0 -0
  19. data/vendor/assets/javascripts/bootstrap/bootstrap-alert.js +94 -0
  20. data/vendor/assets/javascripts/bootstrap/bootstrap-button.js +100 -0
  21. data/vendor/assets/javascripts/bootstrap/bootstrap-carousel.js +161 -0
  22. data/vendor/assets/javascripts/bootstrap/bootstrap-collapse.js +138 -0
  23. data/vendor/assets/javascripts/bootstrap/bootstrap-dropdown.js +92 -0
  24. data/vendor/assets/javascripts/bootstrap/bootstrap-modal.js +210 -0
  25. data/vendor/assets/javascripts/bootstrap/bootstrap-popover.js +95 -0
  26. data/vendor/assets/javascripts/bootstrap/bootstrap-scrollspy.js +125 -0
  27. data/vendor/assets/javascripts/bootstrap/bootstrap-tab.js +130 -0
  28. data/vendor/assets/javascripts/bootstrap/bootstrap-tooltip.js +270 -0
  29. data/vendor/assets/javascripts/bootstrap/bootstrap-transition.js +51 -0
  30. data/vendor/assets/javascripts/bootstrap/bootstrap-typeahead.js +271 -0
  31. data/vendor/assets/javascripts/bootstrap.js +12 -0
  32. data/vendor/assets/javascripts/kickstrap/chosen/chosen.jquery.js +952 -0
  33. data/vendor/assets/javascripts/kickstrap/jgrowl/jquery.jgrowl.js +330 -0
  34. data/vendor/assets/javascripts/kickstrap.js +3 -0
  35. data/vendor/assets/stylesheets/bootstrap/accordion.less +28 -0
  36. data/vendor/assets/stylesheets/bootstrap/alerts.less +70 -0
  37. data/vendor/assets/stylesheets/bootstrap/bootstrap.less +65 -0
  38. data/vendor/assets/stylesheets/bootstrap/breadcrumbs.less +22 -0
  39. data/vendor/assets/stylesheets/bootstrap/button-groups.less +148 -0
  40. data/vendor/assets/stylesheets/bootstrap/buttons.less +183 -0
  41. data/vendor/assets/stylesheets/bootstrap/carousel.less +121 -0
  42. data/vendor/assets/stylesheets/bootstrap/close.less +18 -0
  43. data/vendor/assets/stylesheets/bootstrap/code.less +57 -0
  44. data/vendor/assets/stylesheets/bootstrap/component-animations.less +18 -0
  45. data/vendor/assets/stylesheets/bootstrap/dropdowns.less +130 -0
  46. data/vendor/assets/stylesheets/bootstrap/forms.less +522 -0
  47. data/vendor/assets/stylesheets/bootstrap/grid.less +8 -0
  48. data/vendor/assets/stylesheets/bootstrap/hero-unit.less +20 -0
  49. data/vendor/assets/stylesheets/bootstrap/labels.less +32 -0
  50. data/vendor/assets/stylesheets/bootstrap/layouts.less +17 -0
  51. data/vendor/assets/stylesheets/bootstrap/mixins.less +590 -0
  52. data/vendor/assets/stylesheets/bootstrap/modals.less +83 -0
  53. data/vendor/assets/stylesheets/bootstrap/navbar.less +299 -0
  54. data/vendor/assets/stylesheets/bootstrap/navs.less +353 -0
  55. data/vendor/assets/stylesheets/bootstrap/pager.less +30 -0
  56. data/vendor/assets/stylesheets/bootstrap/pagination.less +55 -0
  57. data/vendor/assets/stylesheets/bootstrap/popovers.less +49 -0
  58. data/vendor/assets/stylesheets/bootstrap/progress-bars.less +95 -0
  59. data/vendor/assets/stylesheets/bootstrap/reset.less +126 -0
  60. data/vendor/assets/stylesheets/bootstrap/scaffolding.less +29 -0
  61. data/vendor/assets/stylesheets/bootstrap/sprites.less +158 -0
  62. data/vendor/assets/stylesheets/bootstrap/tables.less +150 -0
  63. data/vendor/assets/stylesheets/bootstrap/thumbnails.less +35 -0
  64. data/vendor/assets/stylesheets/bootstrap/tooltip.less +35 -0
  65. data/vendor/assets/stylesheets/bootstrap/type.less +218 -0
  66. data/vendor/assets/stylesheets/bootstrap/utilities.less +23 -0
  67. data/vendor/assets/stylesheets/bootstrap/variables.less +107 -0
  68. data/vendor/assets/stylesheets/bootstrap/wells.less +17 -0
  69. data/vendor/assets/stylesheets/kickstrap/animate/animate.css +3813 -0
  70. data/vendor/assets/stylesheets/kickstrap/chosen/chosen.less +392 -0
  71. data/vendor/assets/stylesheets/kickstrap/fontawesome/font-awesome.less +218 -0
  72. data/vendor/assets/stylesheets/kickstrap/icomoon/icomoon.less +123 -0
  73. data/vendor/assets/stylesheets/kickstrap/jgrowl/jquery.jgrowl.less +105 -0
  74. data/vendor/assets/stylesheets/kickstrap/overrides.less +271 -0
  75. data/vendor/assets/stylesheets/kickstrap/themes/amelia/amelia.less +647 -0
  76. data/vendor/assets/stylesheets/kickstrap/themes/amelia/variables.less +112 -0
  77. data/vendor/assets/stylesheets/kickstrap/themes/amelia.css.less +2 -0
  78. data/vendor/assets/stylesheets/kickstrap/themes/cerulean/cerulean.less +122 -0
  79. data/vendor/assets/stylesheets/kickstrap/themes/cerulean/variables.less +108 -0
  80. data/vendor/assets/stylesheets/kickstrap/themes/cerulean.css.less +2 -0
  81. data/vendor/assets/stylesheets/kickstrap/themes/cyborg/cyborg.less +511 -0
  82. data/vendor/assets/stylesheets/kickstrap/themes/cyborg/variables.less +110 -0
  83. data/vendor/assets/stylesheets/kickstrap/themes/cyborg.css.less +2 -0
  84. data/vendor/assets/stylesheets/kickstrap/themes/journal/journal.less +139 -0
  85. data/vendor/assets/stylesheets/kickstrap/themes/journal/variables.less +114 -0
  86. data/vendor/assets/stylesheets/kickstrap/themes/journal.css.less +2 -0
  87. data/vendor/assets/stylesheets/kickstrap/themes/readable/readable.less +454 -0
  88. data/vendor/assets/stylesheets/kickstrap/themes/readable/variables.less +108 -0
  89. data/vendor/assets/stylesheets/kickstrap/themes/readable.css.less +2 -0
  90. data/vendor/assets/stylesheets/kickstrap/themes/sandra/sandra.less +115 -0
  91. data/vendor/assets/stylesheets/kickstrap/themes/sandra/variables.less +110 -0
  92. data/vendor/assets/stylesheets/kickstrap/themes/sandra.css.less +2 -0
  93. data/vendor/assets/stylesheets/kickstrap/themes/simplex/simplex.less +107 -0
  94. data/vendor/assets/stylesheets/kickstrap/themes/simplex/variables.less +108 -0
  95. data/vendor/assets/stylesheets/kickstrap/themes/simplex.css.less +2 -0
  96. data/vendor/assets/stylesheets/kickstrap/themes/slate/slate.less +417 -0
  97. data/vendor/assets/stylesheets/kickstrap/themes/slate/variables.less +203 -0
  98. data/vendor/assets/stylesheets/kickstrap/themes/slate.css.less +2 -0
  99. data/vendor/assets/stylesheets/kickstrap/themes/spacelab/spacelab.less +174 -0
  100. data/vendor/assets/stylesheets/kickstrap/themes/spacelab/variables.less +107 -0
  101. data/vendor/assets/stylesheets/kickstrap/themes/spacelab.css.less +2 -0
  102. data/vendor/assets/stylesheets/kickstrap/themes/spruce/spruce.less +474 -0
  103. data/vendor/assets/stylesheets/kickstrap/themes/spruce/variables.less +108 -0
  104. data/vendor/assets/stylesheets/kickstrap/themes/spruce.css.less +2 -0
  105. data/vendor/assets/stylesheets/kickstrap/themes/superhero/superhero.less +634 -0
  106. data/vendor/assets/stylesheets/kickstrap/themes/superhero/variables.less +108 -0
  107. data/vendor/assets/stylesheets/kickstrap/themes/superhero.css.less +2 -0
  108. data/vendor/assets/stylesheets/kickstrap/themes/united/united.less +101 -0
  109. data/vendor/assets/stylesheets/kickstrap/themes/united/variables.less +110 -0
  110. data/vendor/assets/stylesheets/kickstrap/themes/united.css.less +2 -0
  111. data/vendor/assets/stylesheets/kickstrap.css.less +1 -0
  112. metadata +189 -0
@@ -0,0 +1,330 @@
1
+ /**
2
+ * jGrowl 1.2.5
3
+ *
4
+ * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
5
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
6
+ *
7
+ * Written by Stan Lemon <stosh1985@gmail.com>
8
+ * Last updated: 2009.12.15
9
+ *
10
+ * jGrowl is a jQuery plugin implementing unobtrusive userland notifications. These
11
+ * notifications function similarly to the Growl Framework available for
12
+ * Mac OS X (http://growl.info).
13
+ *
14
+ * To Do:
15
+ * - Move library settings to containers and allow them to be changed per container
16
+ *
17
+ * Changes in 1.2.5
18
+ * - Changed wrapper jGrowl's options usage to "o" instead of $.jGrowl.defaults
19
+ * - Added themeState option to control 'highlight' or 'error' for jQuery UI
20
+ * - Ammended some CSS to provide default positioning for nested usage.
21
+ * - Changed some CSS to be prefixed with jGrowl- to prevent namespacing issues
22
+ * - Added two new options - openDuration and closeDuration to allow
23
+ * better control of notification open and close speeds, respectively
24
+ * Patch contributed by Jesse Vincet.
25
+ * - Added afterOpen callback. Patch contributed by Russel Branca.
26
+ *
27
+ * Changes in 1.2.4
28
+ * - Fixed IE bug with the close-all button
29
+ * - Fixed IE bug with the filter CSS attribute (special thanks to gotwic)
30
+ * - Update IE opacity CSS
31
+ * - Changed font sizes to use "em", and only set the base style
32
+ *
33
+ * Changes in 1.2.3
34
+ * - The callbacks no longer use the container as context, instead they use the actual notification
35
+ * - The callbacks now receive the container as a parameter after the options parameter
36
+ * - beforeOpen and beforeClose now check the return value, if it's false - the notification does
37
+ * not continue. The open callback will also halt execution if it returns false.
38
+ * - Fixed bug where containers would get confused
39
+ * - Expanded the pause functionality to pause an entire container.
40
+ *
41
+ * Changes in 1.2.2
42
+ * - Notification can now be theme rolled for jQuery UI, special thanks to Jeff Chan!
43
+ *
44
+ * Changes in 1.2.1
45
+ * - Fixed instance where the interval would fire the close method multiple times.
46
+ * - Added CSS to hide from print media
47
+ * - Fixed issue with closer button when div { position: relative } is set
48
+ * - Fixed leaking issue with multiple containers. Special thanks to Matthew Hanlon!
49
+ *
50
+ * Changes in 1.2.0
51
+ * - Added message pooling to limit the number of messages appearing at a given time.
52
+ * - Closing a notification is now bound to the notification object and triggered by the close button.
53
+ *
54
+ * Changes in 1.1.2
55
+ * - Added iPhone styled example
56
+ * - Fixed possible IE7 bug when determining if the ie6 class shoudl be applied.
57
+ * - Added template for the close button, so that it's content could be customized.
58
+ *
59
+ * Changes in 1.1.1
60
+ * - Fixed CSS styling bug for ie6 caused by a mispelling
61
+ * - Changes height restriction on default notifications to min-height
62
+ * - Added skinned examples using a variety of images
63
+ * - Added the ability to customize the content of the [close all] box
64
+ * - Added jTweet, an example of using jGrowl + Twitter
65
+ *
66
+ * Changes in 1.1.0
67
+ * - Multiple container and instances.
68
+ * - Standard $.jGrowl() now wraps $.fn.jGrowl() by first establishing a generic jGrowl container.
69
+ * - Instance methods of a jGrowl container can be called by $.fn.jGrowl(methodName)
70
+ * - Added glue preferenced, which allows notifications to be inserted before or after nodes in the container
71
+ * - Added new log callback which is called before anything is done for the notification
72
+ * - Corner's attribute are now applied on an individual notification basis.
73
+ *
74
+ * Changes in 1.0.4
75
+ * - Various CSS fixes so that jGrowl renders correctly in IE6.
76
+ *
77
+ * Changes in 1.0.3
78
+ * - Fixed bug with options persisting across notifications
79
+ * - Fixed theme application bug
80
+ * - Simplified some selectors and manipulations.
81
+ * - Added beforeOpen and beforeClose callbacks
82
+ * - Reorganized some lines of code to be more readable
83
+ * - Removed unnecessary this.defaults context
84
+ * - If corners plugin is present, it's now customizable.
85
+ * - Customizable open animation.
86
+ * - Customizable close animation.
87
+ * - Customizable animation easing.
88
+ * - Added customizable positioning (top-left, top-right, bottom-left, bottom-right, center)
89
+ *
90
+ * Changes in 1.0.2
91
+ * - All CSS styling is now external.
92
+ * - Added a theme parameter which specifies a secondary class for styling, such
93
+ * that notifications can be customized in appearance on a per message basis.
94
+ * - Notification life span is now customizable on a per message basis.
95
+ * - Added the ability to disable the global closer, enabled by default.
96
+ * - Added callbacks for when a notification is opened or closed.
97
+ * - Added callback for the global closer.
98
+ * - Customizable animation speed.
99
+ * - jGrowl now set itself up and tears itself down.
100
+ *
101
+ * Changes in 1.0.1:
102
+ * - Removed dependency on metadata plugin in favor of .data()
103
+ * - Namespaced all events
104
+ */
105
+ (function($) {
106
+
107
+ /** jGrowl Wrapper - Establish a base jGrowl Container for compatibility with older releases. **/
108
+ $.jGrowl = function( m , o ) {
109
+ // To maintain compatibility with older version that only supported one instance we'll create the base container.
110
+ if ( $('#jGrowl').size() == 0 )
111
+ $('<div id="jGrowl"></div>').addClass( (o && o.position) ? o.position : $.jGrowl.defaults.position ).appendTo('body');
112
+
113
+ // Create a notification on the container.
114
+ $('#jGrowl').jGrowl(m,o);
115
+ };
116
+
117
+
118
+ /** Raise jGrowl Notification on a jGrowl Container **/
119
+ $.fn.jGrowl = function( m , o ) {
120
+ if ( $.isFunction(this.each) ) {
121
+ var args = arguments;
122
+
123
+ return this.each(function() {
124
+ var self = this;
125
+
126
+ /** Create a jGrowl Instance on the Container if it does not exist **/
127
+ if ( $(this).data('jGrowl.instance') == undefined ) {
128
+ $(this).data('jGrowl.instance', $.extend( new $.fn.jGrowl(), { notifications: [], element: null, interval: null } ));
129
+ $(this).data('jGrowl.instance').startup( this );
130
+ }
131
+
132
+ /** Optionally call jGrowl instance methods, or just raise a normal notification **/
133
+ if ( $.isFunction($(this).data('jGrowl.instance')[m]) ) {
134
+ $(this).data('jGrowl.instance')[m].apply( $(this).data('jGrowl.instance') , $.makeArray(args).slice(1) );
135
+ } else {
136
+ $(this).data('jGrowl.instance').create( m , o );
137
+ }
138
+ });
139
+ };
140
+ };
141
+
142
+ $.extend( $.fn.jGrowl.prototype , {
143
+
144
+ /** Default JGrowl Settings **/
145
+ defaults: {
146
+ pool: 0,
147
+ header: '',
148
+ group: '',
149
+ sticky: false,
150
+ position: 'top-right',
151
+ glue: 'after',
152
+ theme: 'default',
153
+ themeState: 'highlight',
154
+ corners: '10px',
155
+ check: 250,
156
+ life: 3000,
157
+ closeDuration: 'normal',
158
+ openDuration: 'normal',
159
+ easing: 'swing',
160
+ closer: true,
161
+ closeTemplate: '&times;',
162
+ closerTemplate: '<div>[ close all ]</div>',
163
+ log: function(e,m,o) {},
164
+ beforeOpen: function(e,m,o) {},
165
+ afterOpen: function(e,m,o) {},
166
+ open: function(e,m,o) {},
167
+ beforeClose: function(e,m,o) {},
168
+ close: function(e,m,o) {},
169
+ animateOpen: {
170
+ opacity: 'show'
171
+ },
172
+ animateClose: {
173
+ opacity: 'hide'
174
+ }
175
+ },
176
+
177
+ notifications: [],
178
+
179
+ /** jGrowl Container Node **/
180
+ element: null,
181
+
182
+ /** Interval Function **/
183
+ interval: null,
184
+
185
+ /** Create a Notification **/
186
+ create: function( message , o ) {
187
+ var o = $.extend({}, this.defaults, o);
188
+
189
+ /* To keep backward compatibility with 1.24 and earlier, honor 'speed' if the user has set it */
190
+ if (typeof o.speed !== 'undefined') {
191
+ o.openDuration = o.speed;
192
+ o.closeDuration = o.speed;
193
+ }
194
+
195
+ this.notifications.push({ message: message , options: o });
196
+
197
+ o.log.apply( this.element , [this.element,message,o] );
198
+ },
199
+
200
+ render: function( notification ) {
201
+ var self = this;
202
+ var message = notification.message;
203
+ var o = notification.options;
204
+
205
+ var notification = $(
206
+ '<div class="jGrowl-notification ' + o.themeState + ' ui-corner-all' +
207
+ ((o.group != undefined && o.group != '') ? ' ' + o.group : '') + '">' +
208
+ '<div class="jGrowl-close">' + o.closeTemplate + '</div>' +
209
+ '<div class="jGrowl-header">' + o.header + '</div>' +
210
+ '<div class="jGrowl-message">' + message + '</div></div>'
211
+ ).data("jGrowl", o).addClass(o.theme).children('div.jGrowl-close').bind("click.jGrowl", function() {
212
+ $(this).parent().trigger('jGrowl.close');
213
+ }).parent();
214
+
215
+
216
+ /** Notification Actions **/
217
+ $(notification).bind("mouseover.jGrowl", function() {
218
+ $('div.jGrowl-notification', self.element).data("jGrowl.pause", true);
219
+ }).bind("mouseout.jGrowl", function() {
220
+ $('div.jGrowl-notification', self.element).data("jGrowl.pause", false);
221
+ }).bind('jGrowl.beforeOpen', function() {
222
+ if ( o.beforeOpen.apply( notification , [notification,message,o,self.element] ) != false ) {
223
+ $(this).trigger('jGrowl.open');
224
+ }
225
+ }).bind('jGrowl.open', function() {
226
+ if ( o.open.apply( notification , [notification,message,o,self.element] ) != false ) {
227
+ if ( o.glue == 'after' ) {
228
+ $('div.jGrowl-notification:last', self.element).after(notification);
229
+ } else {
230
+ $('div.jGrowl-notification:first', self.element).before(notification);
231
+ }
232
+
233
+ $(this).animate(o.animateOpen, o.openDuration, o.easing, function() {
234
+ // Fixes some anti-aliasing issues with IE filters.
235
+ if ($.browser.msie && (parseInt($(this).css('opacity'), 10) === 1 || parseInt($(this).css('opacity'), 10) === 0))
236
+ this.style.removeAttribute('filter');
237
+
238
+ $(this).data("jGrowl").created = new Date();
239
+
240
+ $(this).trigger('jGrowl.afterOpen');
241
+ });
242
+ }
243
+ }).bind('jGrowl.afterOpen', function() {
244
+ o.afterOpen.apply( notification , [notification,message,o,self.element] );
245
+ }).bind('jGrowl.beforeClose', function() {
246
+ if ( o.beforeClose.apply( notification , [notification,message,o,self.element] ) != false )
247
+ $(this).trigger('jGrowl.close');
248
+ }).bind('jGrowl.close', function() {
249
+ // Pause the notification, lest during the course of animation another close event gets called.
250
+ $(this).data('jGrowl.pause', true);
251
+ $(this).animate(o.animateClose, o.closeDuration, o.easing, function() {
252
+ $(this).remove();
253
+ var close = o.close.apply( notification , [notification,message,o,self.element] );
254
+
255
+ if ( $.isFunction(close) )
256
+ close.apply( notification , [notification,message,o,self.element] );
257
+ });
258
+ }).trigger('jGrowl.beforeOpen');
259
+
260
+ /** Optional Corners Plugin **/
261
+ if ( o.corners != '' && $.fn.corner != undefined ) $(notification).corner( o.corners );
262
+
263
+ /** Add a Global Closer if more than one notification exists **/
264
+ if ( $('div.jGrowl-notification:parent', self.element).size() > 1 &&
265
+ $('div.jGrowl-closer', self.element).size() == 0 && this.defaults.closer != false ) {
266
+ $(this.defaults.closerTemplate).addClass('jGrowl-closer ui-state-highlight ui-corner-all').addClass(this.defaults.theme)
267
+ .appendTo(self.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing)
268
+ .bind("click.jGrowl", function() {
269
+ $(this).siblings().trigger("jGrowl.beforeClose");
270
+
271
+ if ( $.isFunction( self.defaults.closer ) ) {
272
+ self.defaults.closer.apply( $(this).parent()[0] , [$(this).parent()[0]] );
273
+ }
274
+ });
275
+ };
276
+ },
277
+
278
+ /** Update the jGrowl Container, removing old jGrowl notifications **/
279
+ update: function() {
280
+ $(this.element).find('div.jGrowl-notification:parent').each( function() {
281
+ if ( $(this).data("jGrowl") != undefined && $(this).data("jGrowl").created != undefined &&
282
+ ($(this).data("jGrowl").created.getTime() + parseInt($(this).data("jGrowl").life)) < (new Date()).getTime() &&
283
+ $(this).data("jGrowl").sticky != true &&
284
+ ($(this).data("jGrowl.pause") == undefined || $(this).data("jGrowl.pause") != true) ) {
285
+
286
+ // Pause the notification, lest during the course of animation another close event gets called.
287
+ $(this).trigger('jGrowl.beforeClose');
288
+ }
289
+ });
290
+
291
+ if ( this.notifications.length > 0 &&
292
+ (this.defaults.pool == 0 || $(this.element).find('div.jGrowl-notification:parent').size() < this.defaults.pool) )
293
+ this.render( this.notifications.shift() );
294
+
295
+ if ( $(this.element).find('div.jGrowl-notification:parent').size() < 2 ) {
296
+ $(this.element).find('div.jGrowl-closer').animate(this.defaults.animateClose, this.defaults.speed, this.defaults.easing, function() {
297
+ $(this).remove();
298
+ });
299
+ }
300
+ },
301
+
302
+ /** Setup the jGrowl Notification Container **/
303
+ startup: function(e) {
304
+ this.element = $(e).addClass('jGrowl').append('<div class="jGrowl-notification"></div>');
305
+ this.interval = setInterval( function() {
306
+ $(e).data('jGrowl.instance').update();
307
+ }, parseInt(this.defaults.check));
308
+
309
+ if ($.browser.msie && parseInt($.browser.version) < 7 && !window["XMLHttpRequest"]) {
310
+ $(this.element).addClass('ie6');
311
+ }
312
+ },
313
+
314
+ /** Shutdown jGrowl, removing it and clearing the interval **/
315
+ shutdown: function() {
316
+ $(this.element).removeClass('jGrowl').find('div.jGrowl-notification').remove();
317
+ clearInterval( this.interval );
318
+ },
319
+
320
+ close: function() {
321
+ $(this.element).find('div.jGrowl-notification').each(function(){
322
+ $(this).trigger('jGrowl.beforeClose');
323
+ });
324
+ }
325
+ });
326
+
327
+ /** Reference the Defaults Object for compatibility with older versions of jGrowl **/
328
+ $.jGrowl.defaults = $.fn.jGrowl.prototype.defaults;
329
+
330
+ })(jQuery);
@@ -0,0 +1,3 @@
1
+ //= require bootstrap
2
+ //= require kickstrap/chosen/chosen.jquery
3
+ //= require kickstrap/jgrowl/jquery.jgrowl
@@ -0,0 +1,28 @@
1
+ // ACCORDION
2
+ // ---------
3
+
4
+
5
+ // Parent container
6
+ .accordion {
7
+ margin-bottom: @baseLineHeight;
8
+ }
9
+
10
+ // Group == heading + body
11
+ .accordion-group {
12
+ margin-bottom: 2px;
13
+ border: 1px solid #e5e5e5;
14
+ .border-radius(4px);
15
+ }
16
+ .accordion-heading {
17
+ border-bottom: 0;
18
+ }
19
+ .accordion-heading .accordion-toggle {
20
+ display: block;
21
+ padding: 8px 15px;
22
+ }
23
+
24
+ // Inner needs the styles because you can't animate properly with any styles on the element
25
+ .accordion-inner {
26
+ padding: 9px 15px;
27
+ border-top: 1px solid #e5e5e5;
28
+ }
@@ -0,0 +1,70 @@
1
+ // ALERT STYLES
2
+ // ------------
3
+
4
+ // Base alert styles
5
+ .alert {
6
+ padding: 8px 35px 8px 14px;
7
+ margin-bottom: @baseLineHeight;
8
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
9
+ background-color: @warningBackground;
10
+ border: 1px solid @warningBorder;
11
+ .border-radius(4px);
12
+ }
13
+ .alert,
14
+ .alert-heading {
15
+ color: @warningText;
16
+ }
17
+
18
+ // Adjust close link position
19
+ .alert .close {
20
+ position: relative;
21
+ top: -2px;
22
+ right: -21px;
23
+ line-height: 18px;
24
+ }
25
+
26
+ // Alternate styles
27
+ // ----------------
28
+
29
+ .alert-success {
30
+ background-color: @successBackground;
31
+ border-color: @successBorder;
32
+ }
33
+ .alert-success,
34
+ .alert-success .alert-heading {
35
+ color: @successText;
36
+ }
37
+ .alert-danger,
38
+ .alert-error {
39
+ background-color: @errorBackground;
40
+ border-color: @errorBorder;
41
+ }
42
+ .alert-danger,
43
+ .alert-error,
44
+ .alert-danger .alert-heading,
45
+ .alert-error .alert-heading {
46
+ color: @errorText;
47
+ }
48
+ .alert-info {
49
+ background-color: @infoBackground;
50
+ border-color: @infoBorder;
51
+ }
52
+ .alert-info,
53
+ .alert-info .alert-heading {
54
+ color: @infoText;
55
+ }
56
+
57
+
58
+ // Block alerts
59
+ // ------------------------
60
+ .alert-block {
61
+ padding-top: 14px;
62
+ padding-bottom: 14px;
63
+ }
64
+ .alert-block > p,
65
+ .alert-block > ul {
66
+ margin-bottom: 0;
67
+ }
68
+ .alert-block p + p {
69
+ margin-top: 5px;
70
+ }
@@ -0,0 +1,65 @@
1
+ /*!
2
+ * Bootstrap v2.0.1
3
+ *
4
+ * Copyright 2012 Twitter, Inc
5
+ * Licensed under the Apache License v2.0
6
+ * http://www.apache.org/licenses/LICENSE-2.0
7
+ *
8
+ * Designed and built with all the love in the world @twitter by @mdo and @fat.
9
+ */
10
+
11
+ // CSS Reset
12
+ @import "reset.less";
13
+
14
+ // Core variables and mixins
15
+ @import "variables.less"; // Modify this for custom colors, font-sizes, etc
16
+ @import "mixins.less";
17
+
18
+ // Grid system and page structure
19
+ @import "scaffolding.less";
20
+ @import "grid.less";
21
+ @import "layouts.less";
22
+
23
+ // Base CSS
24
+ @import "type.less";
25
+ @import "code.less";
26
+ @import "forms.less";
27
+ @import "tables.less";
28
+
29
+ // Components: common
30
+ @import "sprites.less";
31
+ @import "dropdowns.less";
32
+ @import "wells.less";
33
+ @import "component-animations.less";
34
+ @import "close.less";
35
+
36
+ // Components: Buttons & Alerts
37
+ @import "buttons.less";
38
+ @import "button-groups.less";
39
+ @import "alerts.less"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less
40
+
41
+ // Components: Nav
42
+ @import "navs.less";
43
+ @import "navbar.less";
44
+ @import "breadcrumbs.less";
45
+ @import "pagination.less";
46
+ @import "pager.less";
47
+
48
+ // Components: Popovers
49
+ @import "modals.less";
50
+ @import "tooltip.less";
51
+ @import "popovers.less";
52
+
53
+ // Components: Misc
54
+ @import "thumbnails.less";
55
+ @import "labels.less";
56
+ @import "progress-bars.less";
57
+ @import "accordion.less";
58
+ @import "carousel.less";
59
+ @import "hero-unit.less";
60
+
61
+ // Utility classes
62
+ @import "utilities.less"; // Has to be last to override when necessary
63
+
64
+ //Overrides
65
+ @import "../kickstrap/overrides.less";
@@ -0,0 +1,22 @@
1
+ // BREADCRUMBS
2
+ // -----------
3
+
4
+ .breadcrumb {
5
+ padding: 7px 14px;
6
+ margin: 0 0 @baseLineHeight;
7
+ #gradient > .vertical(@white, #f5f5f5);
8
+ border: 1px solid #ddd;
9
+ .border-radius(3px);
10
+ .box-shadow(inset 0 1px 0 @white);
11
+ li {
12
+ display: inline-block;
13
+ text-shadow: 0 1px 0 @white;
14
+ }
15
+ .divider {
16
+ padding: 0 5px;
17
+ color: @grayLight;
18
+ }
19
+ .active a {
20
+ color: @grayDark;
21
+ }
22
+ }
@@ -0,0 +1,148 @@
1
+ // BUTTON GROUPS
2
+ // -------------
3
+
4
+
5
+ // Make the div behave like a button
6
+ .btn-group {
7
+ position: relative;
8
+ .clearfix(); // clears the floated buttons
9
+ .ie7-restore-left-whitespace();
10
+ }
11
+
12
+ // Space out series of button groups
13
+ .btn-group + .btn-group {
14
+ margin-left: 5px;
15
+ }
16
+
17
+ // Optional: Group multiple button groups together for a toolbar
18
+ .btn-toolbar {
19
+ margin-top: @baseLineHeight / 2;
20
+ margin-bottom: @baseLineHeight / 2;
21
+ .btn-group {
22
+ display: inline-block;
23
+ .ie7-inline-block();
24
+ }
25
+ }
26
+
27
+ // Float them, remove border radius, then re-add to first and last elements
28
+ .btn-group .btn {
29
+ position: relative;
30
+ float: left;
31
+ margin-left: -1px;
32
+ .border-radius(0);
33
+ }
34
+ // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
35
+ .btn-group .btn:first-child {
36
+ margin-left: 0;
37
+ -webkit-border-top-left-radius: 4px;
38
+ -moz-border-radius-topleft: 4px;
39
+ border-top-left-radius: 4px;
40
+ -webkit-border-bottom-left-radius: 4px;
41
+ -moz-border-radius-bottomleft: 4px;
42
+ border-bottom-left-radius: 4px;
43
+ }
44
+ .btn-group .btn:last-child,
45
+ .btn-group .dropdown-toggle {
46
+ -webkit-border-top-right-radius: 4px;
47
+ -moz-border-radius-topright: 4px;
48
+ border-top-right-radius: 4px;
49
+ -webkit-border-bottom-right-radius: 4px;
50
+ -moz-border-radius-bottomright: 4px;
51
+ border-bottom-right-radius: 4px;
52
+ }
53
+ // Reset corners for large buttons
54
+ .btn-group .btn.large:first-child {
55
+ margin-left: 0;
56
+ -webkit-border-top-left-radius: 6px;
57
+ -moz-border-radius-topleft: 6px;
58
+ border-top-left-radius: 6px;
59
+ -webkit-border-bottom-left-radius: 6px;
60
+ -moz-border-radius-bottomleft: 6px;
61
+ border-bottom-left-radius: 6px;
62
+ }
63
+ .btn-group .btn.large:last-child,
64
+ .btn-group .large.dropdown-toggle {
65
+ -webkit-border-top-right-radius: 6px;
66
+ -moz-border-radius-topright: 6px;
67
+ border-top-right-radius: 6px;
68
+ -webkit-border-bottom-right-radius: 6px;
69
+ -moz-border-radius-bottomright: 6px;
70
+ border-bottom-right-radius: 6px;
71
+ }
72
+
73
+ // On hover/focus/active, bring the proper btn to front
74
+ .btn-group .btn:hover,
75
+ .btn-group .btn:focus,
76
+ .btn-group .btn:active,
77
+ .btn-group .btn.active {
78
+ z-index: 2;
79
+ }
80
+
81
+ // On active and open, don't show outline
82
+ .btn-group .dropdown-toggle:active,
83
+ .btn-group.open .dropdown-toggle {
84
+ outline: 0;
85
+ }
86
+
87
+
88
+
89
+ // Split button dropdowns
90
+ // ----------------------
91
+
92
+ // Give the line between buttons some depth
93
+ .btn-group .dropdown-toggle {
94
+ padding-left: 8px;
95
+ padding-right: 8px;
96
+ @shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
97
+ .box-shadow(@shadow);
98
+ *padding-top: 5px;
99
+ *padding-bottom: 5px;
100
+ }
101
+
102
+ .btn-group.open {
103
+ // IE7's z-index only goes to the nearest positioned ancestor, which would
104
+ // make the menu appear below buttons that appeared later on the page
105
+ *z-index: @zindexDropdown;
106
+
107
+ // Reposition menu on open and round all corners
108
+ .dropdown-menu {
109
+ display: block;
110
+ margin-top: 1px;
111
+ .border-radius(5px);
112
+ }
113
+
114
+ .dropdown-toggle {
115
+ background-image: none;
116
+ @shadow: inset 0 1px 6px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
117
+ .box-shadow(@shadow);
118
+ }
119
+ }
120
+
121
+ // Reposition the caret
122
+ .btn .caret {
123
+ margin-top: 7px;
124
+ margin-left: 0;
125
+ }
126
+ .btn:hover .caret,
127
+ .open.btn-group .caret {
128
+ .opacity(100);
129
+ }
130
+
131
+
132
+ // Account for other colors
133
+ .btn-primary,
134
+ .btn-danger,
135
+ .btn-info,
136
+ .btn-success,
137
+ .btn-inverse {
138
+ .caret {
139
+ border-top-color: @white;
140
+ .opacity(75);
141
+ }
142
+ }
143
+
144
+ // Small button dropdowns
145
+ .btn-small .caret {
146
+ margin-top: 4px;
147
+ }
148
+