speedo 0.2.0 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (29) hide show
  1. data/app/assets/javascripts/speedo.js +1 -2
  2. data/app/assets/javascripts/swim.js.coffee +34 -61
  3. data/app/assets/stylesheets/application.css.scss +1 -1
  4. data/app/assets/stylesheets/speedo/base.css.scss +72 -0
  5. data/app/assets/stylesheets/speedo/helpers.css.scss +34 -0
  6. data/app/assets/stylesheets/speedo/layout.css.scss +220 -0
  7. data/app/assets/stylesheets/speedo/plugins.css.scss +110 -0
  8. data/app/assets/stylesheets/speedo/speedo.css.scss +35 -0
  9. data/app/assets/stylesheets/speedo/theme.css.scss +62 -0
  10. data/app/views/layouts/speedo/application.html.haml +4 -1
  11. data/app/views/speedo/home/examples.html.haml +59 -34
  12. data/lib/generators/speedo/install_generator.rb +6 -3
  13. data/lib/speedo/version.rb +1 -1
  14. data/vendor/assets/javascripts/speedo/bootstrap.js +1825 -0
  15. data/vendor/assets/stylesheets/speedo/bootstrap/glyphicons-halflings-white.png +0 -0
  16. data/vendor/assets/stylesheets/speedo/bootstrap/glyphicons-halflings.png +0 -0
  17. data/vendor/assets/stylesheets/speedo/bootstrap-responsive.css +815 -0
  18. data/vendor/assets/stylesheets/speedo/bootstrap.css +4983 -0
  19. data/vendor/assets/stylesheets/speedo/chosen.css +19 -19
  20. data/vendor/assets/stylesheets/speedo/jquery-ui-1.8.18.custom.css +17 -17
  21. data/vendor/assets/stylesheets/speedo/jquery.dataTables.css +11 -11
  22. data/vendor/assets/stylesheets/speedo/uniform.default.css +4 -4
  23. metadata +32 -67
  24. data/app/assets/stylesheets/speedo.css.scss +0 -596
  25. data/vendor/assets/javascripts/speedo/jquery.mousewheel-3.0.4.pack.js +0 -14
  26. data/vendor/assets/javascripts/speedo/jquery.tools.min.js +0 -35
  27. data/vendor/assets/stylesheets/speedo/gh-buttons.css +0 -393
  28. data/vendor/assets/stylesheets/speedo/gh-icons.png +0 -0
  29. data/vendor/assets/stylesheets/speedo/normalize.css +0 -504
@@ -1,596 +0,0 @@
1
- @import "normalize";
2
- @import "formtastic-buttonless";
3
- @import "autoSuggest";
4
- @import "chosen";
5
- @import "gh-buttons";
6
- @import "jquery.dataTables";
7
- @import "jquery-ui-1.8.18.custom";
8
- @import "uniform.default";
9
- @import "bourbon";
10
-
11
-
12
- /* Set colors here */
13
- $bg: #ddd; /* Background color (if not in web-app mode) */
14
- $text: #333; /* Standard text color */
15
- $link: #0090d5;
16
- $hover: #17639b;
17
- /* Pastels */
18
- $bggreen: #e3fde4;
19
- $bgblue: #bcf;
20
- $bgyellow:#ffc;
21
- $bgred: #f99;
22
- /* Column background colors */
23
- $maincolbg: #fff;
24
- $leftcolbg: #f6f6f6;
25
- $rightcolbg: #fafafa;
26
-
27
-
28
-
29
- /* See the bottom half of this file for layout options */
30
-
31
-
32
-
33
- /* Base Styles - Set HTML element styles here */
34
- body {
35
- color: $text;
36
- background: $bg;
37
- font-size:12px;
38
- line-height:1.231;
39
- }
40
- a, a:visited:not(.button), .link {
41
- color: $link;
42
- text-decoration: none;
43
- cursor:pointer;
44
- }
45
- a:hover, .link:hover {
46
- color: $hover;
47
- }
48
- ul, ol {
49
- margin: 0;
50
- padding: 0;
51
- li {
52
- list-style: none;
53
- }
54
- }
55
- h1,h3,h5 {
56
- font-weight:normal;
57
- font-weight:200;
58
- }
59
- h2,h4,h6{
60
- font-weight:normal;
61
- }
62
-
63
- input:not(.button), textarea {
64
- border:1px solid #999;
65
- @include border-radius(3px);
66
- padding:5px;
67
- @include box-shadow(inset 0 1px 1px rgba(0,0,0,0.2));
68
- &:focus {
69
- border-color:#acd;
70
- @include box-shadow(0 0 3px rgba(150,180,230,1));
71
- }
72
- }
73
-
74
-
75
-
76
-
77
- /* Basic styles */
78
- .no-js body {
79
- margin-top:30px;
80
- }
81
- #noscript_warning {
82
- position: fixed;
83
- top: 0;
84
- left: 0;
85
- width: 100%;
86
- padding: 5px 0 6px;
87
- text-align: center;
88
- font-size: 120%;
89
- font-weight: bold;
90
- color: #fff;
91
- background:#AE0000;
92
- z-index: 101;
93
- }
94
- .branding {
95
- padding:5px 0;
96
- background:#eee;
97
- .logo {
98
- float: left;
99
- margin-left:2%;
100
- img {
101
- display:block;
102
- height: 40px;
103
- }
104
- }
105
- .user {
106
- float:right;
107
- margin:10px 2% 0;
108
- a {
109
- }
110
- .user-name {
111
- }
112
- .user-logout {
113
- }
114
- }
115
- }
116
- .main_nav {
117
- padding:5px 0;
118
- background:#eee;
119
- .search {
120
- margin-right:10px;
121
- }
122
- .home {
123
- margin-left:10px;
124
- }
125
- a {
126
- display:inline-block; zoom:1;*display:inline;
127
- padding:0.2em 0.5em;
128
- background:#ccc;
129
- @include border-radius(0.3em);
130
- &:hover {
131
- background:#ddd;
132
- }
133
- &.active {
134
- @include box-shadow(inset 0 1px 2px rgba(0,0,0,0.5));
135
- }
136
- }
137
- }
138
- .flash {
139
- padding:0.5em 2em;
140
- font-size:1.5em;
141
- text-align:center;
142
- text-shadow:-1px -1px 1px #FFFFFF, 1px 1px 1px rgba(0, 0, 0, 0.3);
143
- &.success {
144
- background:$bggreen;
145
- color:#090;
146
- }
147
- &.notice {
148
- background:$bgblue;
149
- color:#009;
150
- }
151
- &.alert {
152
- background:$bgyellow;
153
- color:#770;
154
- }
155
- &.error {
156
- background:$bgred;
157
- color:#900;
158
- }
159
- }
160
- .tooltip {
161
- width:15em;
162
- border:1px solid #000;
163
- padding:1em;
164
- @include border-radius(0.5em);
165
- @include box-shadow(0 0 10px rgba(0,0,0,0.5));
166
- @include linear-gradient(#333, #999);
167
- text-shadow:1px 1px 1px #000000;
168
- color:#fff;
169
- &:before, &:after {
170
- content:".";
171
- display:block;
172
- height:0;
173
- width:0;
174
- overflow:hidden;
175
- position:absolute;
176
- bottom:-6px;
177
- left:50%;
178
- margin-left:-5px;
179
- border-style:solid;
180
- border-width:5px 5px 0;
181
- border-color:#000 transparent;
182
- color:transparent;
183
- }
184
- &:after {
185
- bottom:-5px;
186
- border-color:#999 transparent;
187
- }
188
- &.bottom {
189
- &:before, &:after {
190
- bottom:auto;
191
- border-width:0 5px 5px;
192
- }
193
- &:before {
194
- top:-6px;
195
- }
196
- &:after {
197
- top:-5px;
198
- border-color:#333 transparent;
199
- }
200
- }
201
- }
202
- footer {
203
- position:relative;
204
- margin:-1.8em 10px 0 0; /* So it appears at the bottom of the right column and is not lost in web-app mode */
205
- float: right;
206
- font-size: 0.8em;
207
- opacity:0.5;
208
- }
209
-
210
-
211
-
212
- /* Plugin fixes */
213
- .dataTables_wrapper {
214
- @include clearfix;
215
- }
216
- div.uni-selector, div.uni-uploader {
217
- margin-left:-2px; /* Left aligns the uniform masks, but be careful if they're inline */
218
- }
219
- .formtastic textarea {
220
- padding:5px;
221
- }
222
- .inline_choices .choice {
223
- display:inline-block; zoom:1;*display:inline;
224
- vertical-align:top;
225
- margin-right:1em;
226
- }
227
- ul.as-selections {
228
- width:72%; // To match the formtastic input widths
229
- border:1px solid #999;
230
- @include border-radius(3px);
231
- padding:5px;
232
- @include box-shadow(inset 0 1px 1px rgba(0,0,0,0.2));
233
- li.as-original input {
234
- @include box-shadow(none);
235
- color:#999; /* For the placeholder colour */
236
- &:focus {color:inherit;}
237
- }
238
- }
239
- .as-results {
240
- position:absolute;
241
- left:25%; // To match the formtastic label width
242
- }
243
- .button-group, .button {
244
- vertical-align:top;
245
- }
246
- .formtastic input.button {
247
- padding:0.5em 1em; // Formtastic sets input padding to 0
248
- }
249
-
250
- .popup_content {
251
- display:none;
252
- position:relative;
253
- min-width:320px;
254
- max-width:600px;
255
- padding:1em;
256
- border:1px solid #666;
257
- @include border-radius(1em);
258
- @include box-shadow(0 0 5em #666);
259
- background:#fff;
260
- z-index:10000;
261
- .close:first-child {
262
- position:absolute;
263
- top:-10px;
264
- right:-10px;
265
- &:hover {
266
- background:none;
267
- }
268
- &:after {
269
- content:"x";
270
- display:block;
271
- width:20px;
272
- height:20px;
273
- border:2px solid #FFFFFF;
274
- @include border-radius(1em);
275
- @include box-shadow(0 0 3px #000);
276
- font-size:21px;
277
- font-family:sans-serif;
278
- line-height:20px;
279
- text-align:center;
280
- color:#FFFFFF;
281
- background:#000000;
282
- }
283
- }
284
- .title {
285
- margin-top:0;
286
- border:1px solid #333;
287
- @include border-radius(3px);
288
- padding:5px 10px;
289
- @include box-shadow(0 1px 3px rgba(0,0,0,0.5));
290
- @include linear-gradient(#355b92, #274674);
291
- color:#fff;
292
- }
293
- .wrap {
294
- width:600px;
295
- overflow:auto;
296
- }
297
- }
298
-
299
-
300
-
301
- /* =============================================================================
302
- Non-semantic helper classes
303
- ========================================================================== */
304
-
305
- /* For image replacement */
306
- .ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
307
- .ir br { display: none; }
308
-
309
- /* Hide for both screenreaders and browsers:
310
- css-discuss.incutio.com/wiki/Screenreader_Visibility */
311
- .hidden { display: none !important; visibility: hidden !important; }
312
-
313
- /* Hide only visually, but have it available for screenreaders: by Jon Neal.
314
- www.webaim.org/techniques/css/invisiblecontent/ & j.mp/visuallyhidden */
315
- .visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
316
-
317
- /* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: drupal.org/node/897638 */
318
- .visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
319
-
320
- /* Hide visually and from screenreaders, but maintain layout */
321
- .invisible { visibility: hidden; }
322
-
323
- /* Contain floats: nicolasgallagher.com/micro-clearfix-hack/ */
324
- .clearfix:before, .clearfix:after { content: ""; display: table; }
325
- .clearfix:after { clear: both; }
326
- .clearfix { *zoom: 1; }
327
-
328
- /* Float and clear */
329
- .left { float: left; }
330
- .right { float: right; }
331
- .clear { clear: both; }
332
-
333
- /* Inline-block */
334
- .ib { display:inline-block; *zoom:1; *display:inline; }
335
-
336
-
337
-
338
- /* =============================================================================
339
- Print styles.
340
- Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
341
- ========================================================================== */
342
-
343
- @media print {
344
- * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */
345
- a, a:visited { color: #444 !important; text-decoration: underline; }
346
- a[href]:after { content: " (" attr(href) ")"; }
347
- abbr[title]:after { content: " (" attr(title) ")"; }
348
- .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } /* Don't show links for images, or javascript/internal links */
349
- pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
350
- thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
351
- tr, img { page-break-inside: avoid; }
352
- img { max-width: 100% !important; }
353
- @page { margin: 0.5cm; }
354
- p, h2, h3 { orphans: 3; widows: 3; }
355
- h2, h3{ page-break-after: avoid; }
356
- }
357
-
358
-
359
-
360
-
361
-
362
-
363
-
364
-
365
-
366
-
367
-
368
-
369
-
370
-
371
-
372
-
373
-
374
-
375
-
376
-
377
- /*
378
- Column Layout
379
- =============
380
- This layout is designed for mobile-first, so that the 'side' columns go below the main
381
- content on narrower screen-widths.
382
-
383
- IMPORTANT: Most of the styles that will be seen by the typical browser (i.e. the 960 design)
384
- are in the @media queries below.
385
-
386
- Set the column background colours using the variables (top of file) for consistent
387
- column colouration.
388
- */
389
-
390
- #wrapper {
391
- max-width: 960px; /* Set the width of the page here */
392
- padding:0;
393
- margin: 0 auto 20px;
394
- @include border-bottom-radius(3px);
395
- @include box-shadow(0 2px 2px rgba(0,0,0,0.5));
396
- }
397
-
398
- /* Layout for mobile < 480px width screens (see below for media queries) */
399
- .colmask {
400
- position:relative; /* This fixes the IE7 overflow hidden bug */
401
- clear:both;
402
- float:left;
403
- width:100%; /* width of whole page */
404
- @include border-radius(0 0 3px 3px);
405
- background:#fff;
406
- overflow:hidden; /* This chops off any overhanging divs, including the leftcol bg */
407
- }
408
- .colright,.colmid,.colleft {
409
- float:left;
410
- width:100%;
411
- position:relative;
412
- }
413
- .col1,.col2,.col3 {
414
- float:left;
415
- position:relative;
416
- padding:0 0 5em;
417
- }
418
- .onecol { /* Full page settings */
419
- background:$maincolbg; /* page background colour */
420
- .col1 {
421
- width:96%; /* page width minus left and right padding */
422
- left:2%; /* page left padding */
423
- }
424
- }
425
- .threecol, .leftcol, .rightcol {
426
- background:$maincolbg; /* main column background colour */
427
- .col1, .col2, .col3 {
428
- width:100%; /* page width minus left and right padding */
429
- padding:0 2% 50px; /* page left padding */
430
- }
431
- .col2 {background:$leftcolbg;} /* left column background colour */
432
- .col3 {background:$rightcolbg;} /* right column background colour */
433
- }
434
- .rightcol .col2, .leftcol .col3, .onecol .col2, .onecol .col3 { display:none; }
435
-
436
-
437
- /* Media Queries for Responsive Design. These override the primary ('mobile first') styles */
438
-
439
- @media only screen and (min-width: 480px) {
440
- /* Style adjustments for viewports 480px and over go here */
441
- /* 2 Column (double page) settings */
442
- .threecol {
443
- .col2 {
444
- width:46%; /* left column content width (column width minus left and right padding) */
445
- left:0%; /* right column width plus left column left padding */
446
- }
447
- .col3 {
448
- width:46%; /* right column content width (column width minus left and right padding) */
449
- left:0%; /* (right column width) plus (left column left and right padding) plus (right column left padding) */
450
- }
451
- }
452
- }
453
-
454
- @media only screen and (min-width: 768px) {
455
- /* Style adjustments for viewports 768px and over (most desktop browsers) go here */
456
- .colmask {
457
- .col1, .col2, .col3 {
458
- padding:0 0 5em;
459
- background:transparent
460
- }
461
- }
462
- .col1 { min-height:400px; }
463
- .leftcol { /* 2 Column (left menu) settings */
464
- background:$maincolbg; /* right column background colour */
465
- .colleft {
466
- right:75%; /* right column width */
467
- background:$leftcolbg; /* left column background colour */
468
- @include box-shadow(inset -1px 0 0 #ccc); /* 0 spread so it isn't visible at the top and bottom */
469
- }
470
- .col1 {
471
- width:71%; /* right column content width */
472
- left:102%; /* 100% plus left column left padding */
473
- }
474
- .col2 {
475
- width:21%; /* left column content width (column width minus left and right padding) */
476
- left:6%; /* (right column left and right padding) plus (left column left padding) */
477
- }
478
- .col3 {
479
- display:none;
480
- }
481
- }
482
- .rightcol { /* 2 Column (right menu) settings */
483
- background:$rightcolbg; /* right column background colour */
484
- .colleft {
485
- right:25%; /* right column width */
486
- background:$maincolbg; /* left column background colour */
487
- @include box-shadow(inset -1px 0 0 #ccc); /* 0 spread so it isn't visible at the top and bottom */
488
- }
489
- .col1 {
490
- width:71%; /* left column content width (left column width minus left and right padding) */
491
- left:27%; /* (right column width) plus (left column left padding) */
492
- }
493
- .col2 {
494
- display:none;
495
- }
496
- .col3 {
497
- width:21%; /* right column content width (right column width minus left and right padding) */
498
- left:31%; /* (right column width) plus (left column left and right padding) plus (right column left padding) */
499
- }
500
- }
501
- .threecol { /* 3 Column settings */
502
- background:$rightcolbg; /* right column background colour */
503
- .colmid {
504
- right:25%; /* width of the right column */
505
- background:$maincolbg; /* left column background colour */
506
- @include box-shadow(1px 0 0 #ccc); /* Use box-shadow for 'borders' so the layout isn't affected */
507
- }
508
- .colleft {
509
- right:50%; /* width of the middle column */
510
- background:$leftcolbg; /* left column background colour */
511
- @include box-shadow(inset -1px 0 0 #ccc); /* 0 spread so it isn't visible at the top and bottom */
512
- }
513
- .col1 {
514
- width:46%; /* width of center column content (column width minus padding on either side) */
515
- left:102%; /* 100% plus left padding of center column */
516
- }
517
- .col2 {
518
- width:21%; /* Width of left column content (column width minus padding on either side) */
519
- left:31%; /* width of (right column) plus (center column left and right padding) plus (left column left padding) */
520
- }
521
- .col3 {
522
- width:21%; /* Width of right column content (column width minus padding on either side) */
523
- left:85%; /* Please make note of the brackets here:
524
- (100% - left column width) plus (center column left and right padding) plus (left column left and right padding) plus (right column left padding) */
525
- }
526
- }
527
- }
528
-
529
-
530
-
531
- /* Below are three options for variations on theming:
532
- 1. Web-app mode: Full-width, full-height page that doesn't scroll (the columns scroll instead) - also requires JS
533
- 2. Full-width page, fixed-position header, with scrolling content
534
- 3. Fixed-position header, with scrolling content (2 sections of CSS to uncomment)
535
- */
536
-
537
-
538
-
539
- @media only screen and (min-width: 768px) {
540
- /* For Web-app mode, uncomment this (and the JS in home.coffee) * /
541
- #wrapper {
542
- max-width: 100%;
543
- width:100%;
544
- margin:0;
545
- padding:0;
546
- }
547
- .col1,.col2,.col3 {
548
- overflow-y:auto;
549
- }
550
- /* */
551
-
552
- /* For full-width fixed header+nav, uncomment this * /
553
- #wrapper {
554
- max-width: 100%;
555
- width:100%;
556
- margin:0;
557
- padding:0;
558
- }
559
- .branding, .main_nav {
560
- position:fixed;
561
- width:100%;
562
- top:0;
563
- margin:0 auto;
564
- z-index:1000;
565
- }
566
- .main_nav {
567
- top:50px; // Height of .branding
568
- }
569
- .col1,.col2,.col3 {
570
- margin-top:83px; // Height of .branding + .main_nav
571
- }
572
- /* */
573
-
574
- /* For fixed header+nav, uncomment this (and 963 CSS below) * /
575
- .branding, .main_nav {
576
- position:fixed;
577
- width:964px;
578
- top:0;
579
- margin:0 auto;
580
- z-index:1000;
581
- }
582
- .main_nav {
583
- top:50px; // Height of .branding
584
- }
585
- .col1,.col2,.col3 {
586
- margin-top:83px; // Height of .branding + .main_nav
587
- }
588
- /* */
589
- }
590
- @media only screen and (max-width: 963px) {
591
- /* For fixed header+nav, uncomment this (and above) * /
592
- .branding, .main_nav {
593
- width:100%;
594
- }
595
- /* */
596
- }
@@ -1,14 +0,0 @@
1
- /*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net)
2
- * Licensed under the MIT License (LICENSE.txt).
3
- *
4
- * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
5
- * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
6
- * Thanks to: Seamus Leahy for adding deltaX and deltaY
7
- *
8
- * Version: 3.0.4
9
- *
10
- * Requires: 1.2.2+
11
- */
12
-
13
- (function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=
14
- f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery);
@@ -1,35 +0,0 @@
1
- /*!
2
- * jQuery Tools v1.2.7 - The missing UI library for the Web
3
- *
4
- * overlay/overlay.js
5
- * overlay/overlay.apple.js
6
- * toolbox/toolbox.expose.js
7
- * toolbox/toolbox.flashembed.js
8
- * toolbox/toolbox.history.js
9
- * toolbox/toolbox.mousewheel.js
10
- * tooltip/tooltip.js
11
- * tooltip/tooltip.dynamic.js
12
- * tooltip/tooltip.slide.js
13
- *
14
- * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
15
- *
16
- * http://flowplayer.org/tools/
17
- *
18
- * jquery.event.wheel.js - rev 1
19
- * Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
20
- * Liscensed under the MIT License (MIT-LICENSE.txt)
21
- * http://www.opensource.org/licenses/mit-license.php
22
- * Created: 2008-07-01 | Updated: 2008-07-14
23
- *
24
- * -----
25
- *
26
- */
27
- (function(a){a.tools=a.tools||{version:"v1.2.7"},a.tools.overlay={addEffect:function(a,b,d){c[a]=[b,d]},conf:{close:null,closeOnClick:!0,closeOnEsc:!0,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:!1,mask:null,oneInstance:!0,speed:"normal",target:null,top:"10%"}};var b=[],c={};a.tools.overlay.addEffect("default",function(b,c){var d=this.getConf(),e=a(window);d.fixed||(b.top+=e.scrollTop(),b.left+=e.scrollLeft()),b.position=d.fixed?"fixed":"absolute",this.getOverlay().css(b).fadeIn(d.speed,c)},function(a){this.getOverlay().fadeOut(this.getConf().closeSpeed,a)});function d(d,e){var f=this,g=d.add(f),h=a(window),i,j,k,l=a.tools.expose&&(e.mask||e.expose),m=Math.random().toString().slice(10);l&&(typeof l=="string"&&(l={color:l}),l.closeOnClick=l.closeOnEsc=!1);var n=e.target||d.attr("rel");j=n?a(n):null||d;if(!j.length)throw"Could not find Overlay: "+n;d&&d.index(j)==-1&&d.click(function(a){f.load(a);return a.preventDefault()}),a.extend(f,{load:function(d){if(f.isOpened())return f;var i=c[e.effect];if(!i)throw"Overlay: cannot find effect : \""+e.effect+"\"";e.oneInstance&&a.each(b,function(){this.close(d)}),d=d||a.Event(),d.type="onBeforeLoad",g.trigger(d);if(d.isDefaultPrevented())return f;k=!0,l&&a(j).expose(l);var n=e.top,o=e.left,p=j.outerWidth({margin:!0}),q=j.outerHeight({margin:!0});typeof n=="string"&&(n=n=="center"?Math.max((h.height()-q)/2,0):parseInt(n,10)/100*h.height()),o=="center"&&(o=Math.max((h.width()-p)/2,0)),i[0].call(f,{top:n,left:o},function(){k&&(d.type="onLoad",g.trigger(d))}),l&&e.closeOnClick&&a.mask.getMask().one("click",f.close),e.closeOnClick&&a(document).on("click."+m,function(b){a(b.target).parents(j).length||f.close(b)}),e.closeOnEsc&&a(document).on("keydown."+m,function(a){a.keyCode==27&&f.close(a)});return f},close:function(b){if(!f.isOpened())return f;b=b||a.Event(),b.type="onBeforeClose",g.trigger(b);if(!b.isDefaultPrevented()){k=!1,c[e.effect][1].call(f,function(){b.type="onClose",g.trigger(b)}),a(document).off("click."+m+" keydown."+m),l&&a.mask.close();return f}},getOverlay:function(){return j},getTrigger:function(){return d},getClosers:function(){return i},isOpened:function(){return k},getConf:function(){return e}}),a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(b,c){a.isFunction(e[c])&&a(f).on(c,e[c]),f[c]=function(b){b&&a(f).on(c,b);return f}}),i=j.find(e.close||".close"),!i.length&&!e.close&&(i=a("<a class=\"close\"></a>"),j.prepend(i)),i.click(function(a){f.close(a)}),e.load&&f.load()}a.fn.overlay=function(c){var e=this.data("overlay");if(e)return e;a.isFunction(c)&&(c={onBeforeLoad:c}),c=a.extend(!0,{},a.tools.overlay.conf,c),this.each(function(){e=new d(a(this),c),b.push(e),a(this).data("overlay",e)});return c.api?e:this}})(jQuery);
28
- (function(a){var b=a.tools.overlay,c=a(window);a.extend(b.conf,{start:{top:null,left:null},fadeInSpeed:"fast",zIndex:9999});function d(a){var b=a.offset();return{top:b.top+a.height()/2,left:b.left+a.width()/2}}var e=function(b,e){var f=this.getOverlay(),g=this.getConf(),h=this.getTrigger(),i=this,j=f.outerWidth({margin:!0}),k=f.data("img"),l=g.fixed?"fixed":"absolute";if(!k){var m=f.css("backgroundImage");if(!m)throw"background-image CSS property not set for overlay";m=m.slice(m.indexOf("(")+1,m.indexOf(")")).replace(/\"/g,""),f.css("backgroundImage","none"),k=a("<img src=\""+m+"\"/>"),k.css({border:0,display:"none"}).width(j),a("body").append(k),f.data("img",k)}var n=g.start.top||Math.round(c.height()/2),o=g.start.left||Math.round(c.width()/2);if(h){var p=d(h);n=p.top,o=p.left}g.fixed?(n-=c.scrollTop(),o-=c.scrollLeft()):(b.top+=c.scrollTop(),b.left+=c.scrollLeft()),k.css({position:"absolute",top:n,left:o,width:0,zIndex:g.zIndex}).show(),b.position=l,f.css(b),k.animate({top:b.top,left:b.left,width:j},g.speed,function(){f.css("zIndex",g.zIndex+1).fadeIn(g.fadeInSpeed,function(){i.isOpened()&&!a(this).index(f)?e.call():f.hide()})}).css("position",l)},f=function(b){var e=this.getOverlay().hide(),f=this.getConf(),g=this.getTrigger(),h=e.data("img"),i={top:f.start.top,left:f.start.left,width:0};g&&a.extend(i,d(g)),f.fixed&&h.css({position:"absolute"}).animate({top:"+="+c.scrollTop(),left:"+="+c.scrollLeft()},0),h.animate(i,f.closeSpeed,b)};b.addEffect("apple",e,f)})(jQuery);
29
- (function(a){a.tools=a.tools||{version:"v1.2.7"};var b;b=a.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:!0,closeOnEsc:!0,zIndex:9998,opacity:.8,startOpacity:0,color:"#fff",onLoad:null,onClose:null}};function c(){if(a.browser.msie){var b=a(document).height(),c=a(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,b-c<20?c:b]}return[a(document).width(),a(document).height()]}function d(b){if(b)return b.call(a.mask)}var e,f,g,h,i;a.mask={load:function(j,k){if(g)return this;typeof j=="string"&&(j={color:j}),j=j||h,h=j=a.extend(a.extend({},b.conf),j),e=a("#"+j.maskId),e.length||(e=a("<div/>").attr("id",j.maskId),a("body").append(e));var l=c();e.css({position:"absolute",top:0,left:0,width:l[0],height:l[1],display:"none",opacity:j.startOpacity,zIndex:j.zIndex}),j.color&&e.css("backgroundColor",j.color);if(d(j.onBeforeLoad)===!1)return this;j.closeOnEsc&&a(document).on("keydown.mask",function(b){b.keyCode==27&&a.mask.close(b)}),j.closeOnClick&&e.on("click.mask",function(b){a.mask.close(b)}),a(window).on("resize.mask",function(){a.mask.fit()}),k&&k.length&&(i=k.eq(0).css("zIndex"),a.each(k,function(){var b=a(this);/relative|absolute|fixed/i.test(b.css("position"))||b.css("position","relative")}),f=k.css({zIndex:Math.max(j.zIndex+1,i=="auto"?0:i)})),e.css({display:"block"}).fadeTo(j.loadSpeed,j.opacity,function(){a.mask.fit(),d(j.onLoad),g="full"}),g=!0;return this},close:function(){if(g){if(d(h.onBeforeClose)===!1)return this;e.fadeOut(h.closeSpeed,function(){d(h.onClose),f&&f.css({zIndex:i}),g=!1}),a(document).off("keydown.mask"),e.off("click.mask"),a(window).off("resize.mask")}return this},fit:function(){if(g){var a=c();e.css({width:a[0],height:a[1]})}},getMask:function(){return e},isLoaded:function(a){return a?g=="full":g},getConf:function(){return h},getExposed:function(){return f}},a.fn.mask=function(b){a.mask.load(b);return this},a.fn.expose=function(b){a.mask.load(b,this);return this}})(jQuery);
30
- (function(){var a=document.all,b="http://www.adobe.com/go/getflashplayer",c=typeof jQuery=="function",d=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,e={width:"100%",height:"100%",id:"_"+(""+Math.random()).slice(9),allowfullscreen:!0,allowscriptaccess:"always",quality:"high",version:[3,0],onFail:null,expressInstall:null,w3c:!1,cachebusting:!1};window.attachEvent&&window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){},__flash_savedUnloadHandler=function(){}});function f(a,b){if(b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}function g(a,b){var c=[];for(var d in a)a.hasOwnProperty(d)&&(c[d]=b(a[d]));return c}window.flashembed=function(a,b,c){typeof a=="string"&&(a=document.getElementById(a.replace("#","")));if(a){typeof b=="string"&&(b={src:b});return new j(a,f(f({},e),b),c)}};var h=f(window.flashembed,{conf:e,getVersion:function(){var a,b;try{b=navigator.plugins["Shockwave Flash"].description.slice(16)}catch(c){try{a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"),b=a&&a.GetVariable("$version")}catch(e){try{a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"),b=a&&a.GetVariable("$version")}catch(f){}}}b=d.exec(b);return b?[b[1],b[3]]:[0,0]},asString:function(a){if(a===null||a===undefined)return null;var b=typeof a;b=="object"&&a.push&&(b="array");switch(b){case"string":a=a.replace(new RegExp("([\"\\\\])","g"),"\\$1"),a=a.replace(/^\s?(\d+\.?\d*)%/,"$1pct");return"\""+a+"\"";case"array":return"["+g(a,function(a){return h.asString(a)}).join(",")+"]";case"function":return"\"function()\"";case"object":var c=[];for(var d in a)a.hasOwnProperty(d)&&c.push("\""+d+"\":"+h.asString(a[d]));return"{"+c.join(",")+"}"}return String(a).replace(/\s/g," ").replace(/\'/g,"\"")},getHTML:function(b,c){b=f({},b);var d="<object width=\""+b.width+"\" height=\""+b.height+"\" id=\""+b.id+"\" name=\""+b.id+"\"";b.cachebusting&&(b.src+=(b.src.indexOf("?")!=-1?"&":"?")+Math.random()),b.w3c||!a?d+=" data=\""+b.src+"\" type=\"application/x-shockwave-flash\"":d+=" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"",d+=">";if(b.w3c||a)d+="<param name=\"movie\" value=\""+b.src+"\" />";b.width=b.height=b.id=b.w3c=b.src=null,b.onFail=b.version=b.expressInstall=null;for(var e in b)b[e]&&(d+="<param name=\""+e+"\" value=\""+b[e]+"\" />");var g="";if(c){for(var i in c)if(c[i]){var j=c[i];g+=i+"="+encodeURIComponent(/function|object/.test(typeof j)?h.asString(j):j)+"&"}g=g.slice(0,-1),d+="<param name=\"flashvars\" value='"+g+"' />"}d+="</object>";return d},isSupported:function(a){return i[0]>a[0]||i[0]==a[0]&&i[1]>=a[1]}}),i=h.getVersion();function j(c,d,e){if(h.isSupported(d.version))c.innerHTML=h.getHTML(d,e);else if(d.expressInstall&&h.isSupported([6,65]))c.innerHTML=h.getHTML(f(d,{src:d.expressInstall}),{MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title});else{c.innerHTML.replace(/\s/g,"")||(c.innerHTML="<h2>Flash version "+d.version+" or greater is required</h2><h3>"+(i[0]>0?"Your version is "+i:"You have no flash plugin installed")+"</h3>"+(c.tagName=="A"?"<p>Click here to download latest version</p>":"<p>Download latest version from <a href='"+b+"'>here</a></p>"),c.tagName=="A"&&(c.onclick=function(){location.href=b}));if(d.onFail){var g=d.onFail.call(this);typeof g=="string"&&(c.innerHTML=g)}}a&&(window[d.id]=document.getElementById(d.id)),f(this,{getRoot:function(){return c},getOptions:function(){return d},getConf:function(){return e},getApi:function(){return c.firstChild}})}c&&(jQuery.tools=jQuery.tools||{version:"v1.2.7"},jQuery.tools.flashembed={conf:e},jQuery.fn.flashembed=function(a,b){return this.each(function(){jQuery(this).data("flashembed",flashembed(this,a,b))})})})();
31
- (function(a){var b,c,d,e;a.tools=a.tools||{version:"v1.2.7"},a.tools.history={init:function(g){e||(a.browser.msie&&a.browser.version<"8"?c||(c=a("<iframe/>").attr("src","javascript:false;").hide().get(0),a("body").append(c),setInterval(function(){var d=c.contentWindow.document,e=d.location.hash;b!==e&&a(window).trigger("hash",e)},100),f(location.hash||"#")):setInterval(function(){var c=location.hash;c!==b&&a(window).trigger("hash",c)},100),d=d?d.add(g):g,g.click(function(b){var d=a(this).attr("href");c&&f(d);if(d.slice(0,1)!="#"){location.href="#"+d;return b.preventDefault()}}),e=!0)}};function f(a){if(a){var b=c.contentWindow.document;b.open().close(),b.location.hash=a}}a(window).on("hash",function(c,e){e?d.filter(function(){var b=a(this).attr("href");return b==e||b==e.replace("#","")}).trigger("history",[e]):d.eq(0).trigger("history",[e]),b=e}),a.fn.history=function(b){a.tools.history.init(this);return this.on("history",b)}})(jQuery);
32
- (function(a){a.fn.mousewheel=function(a){return this[a?"on":"trigger"]("wheel",a)},a.event.special.wheel={setup:function(){a.event.add(this,b,c,{})},teardown:function(){a.event.remove(this,b,c)}};var b=a.browser.mozilla?"DOMMouseScroll"+(a.browser.version<"1.9"?" mousemove":""):"mousewheel";function c(b){switch(b.type){case"mousemove":return a.extend(b.data,{clientX:b.clientX,clientY:b.clientY,pageX:b.pageX,pageY:b.pageY});case"DOMMouseScroll":a.extend(b,b.data),b.delta=-b.detail/3;break;case"mousewheel":b.delta=b.wheelDelta/120}b.type="wheel";return a.event.handle.call(this,b,b.delta)}})(jQuery);
33
- (function(a){a.tools=a.tools||{version:"v1.2.7"},a.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,fadeIE:!1,position:["top","center"],offset:[0,0],relative:!1,cancelDefault:!0,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,c,d){b[a]=[c,d]}};var b={toggle:[function(a){var b=this.getConf(),c=this.getTip(),d=b.opacity;d<1&&c.css({opacity:d}),c.show(),a.call()},function(a){this.getTip().hide(),a.call()}],fade:[function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeTo(c.fadeInSpeed,c.opacity,b):(this.getTip().show(),b())},function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeOut(c.fadeOutSpeed,b):(this.getTip().hide(),b())}]};function c(b,c,d){var e=d.relative?b.position().top:b.offset().top,f=d.relative?b.position().left:b.offset().left,g=d.position[0];e-=c.outerHeight()-d.offset[0],f+=b.outerWidth()+d.offset[1],/iPad/i.test(navigator.userAgent)&&(e-=a(window).scrollTop());var h=c.outerHeight()+b.outerHeight();g=="center"&&(e+=h/2),g=="bottom"&&(e+=h),g=d.position[1];var i=c.outerWidth()+b.outerWidth();g=="center"&&(f-=i/2),g=="left"&&(f-=i);return{top:e,left:f}}function d(d,e){var f=this,g=d.add(f),h,i=0,j=0,k=d.attr("title"),l=d.attr("data-tooltip"),m=b[e.effect],n,o=d.is(":input"),p=o&&d.is(":checkbox, :radio, select, :button, :submit"),q=d.attr("type"),r=e.events[q]||e.events[o?p?"widget":"input":"def"];if(!m)throw"Nonexistent effect \""+e.effect+"\"";r=r.split(/,\s*/);if(r.length!=2)throw"Tooltip: bad events configuration for "+q;d.on(r[0],function(a){clearTimeout(i),e.predelay?j=setTimeout(function(){f.show(a)},e.predelay):f.show(a)}).on(r[1],function(a){clearTimeout(j),e.delay?i=setTimeout(function(){f.hide(a)},e.delay):f.hide(a)}),k&&e.cancelDefault&&(d.removeAttr("title"),d.data("title",k)),a.extend(f,{show:function(b){if(!h){l?h=a(l):e.tip?h=a(e.tip).eq(0):k?h=a(e.layout).addClass(e.tipClass).appendTo(document.body).hide().append(k):(h=d.next(),h.length||(h=d.parent().next()));if(!h.length)throw"Cannot find tooltip for "+d}if(f.isShown())return f;h.stop(!0,!0);var o=c(d,h,e);e.tip&&h.html(d.data("title")),b=a.Event(),b.type="onBeforeShow",g.trigger(b,[o]);if(b.isDefaultPrevented())return f;o=c(d,h,e),h.css({position:"absolute",top:o.top,left:o.left}),n=!0,m[0].call(f,function(){b.type="onShow",n="full",g.trigger(b)});var p=e.events.tooltip.split(/,\s*/);h.data("__set")||(h.off(p[0]).on(p[0],function(){clearTimeout(i),clearTimeout(j)}),p[1]&&!d.is("input:not(:checkbox, :radio), textarea")&&h.off(p[1]).on(p[1],function(a){a.relatedTarget!=d[0]&&d.trigger(r[1].split(" ")[0])}),e.tip||h.data("__set",!0));return f},hide:function(c){if(!h||!f.isShown())return f;c=a.Event(),c.type="onBeforeHide",g.trigger(c);if(!c.isDefaultPrevented()){n=!1,b[e.effect][1].call(f,function(){c.type="onHide",g.trigger(c)});return f}},isShown:function(a){return a?n=="full":n},getConf:function(){return e},getTip:function(){return h},getTrigger:function(){return d}}),a.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(b,c){a.isFunction(e[c])&&a(f).on(c,e[c]),f[c]=function(b){b&&a(f).on(c,b);return f}})}a.fn.tooltip=function(b){var c=this.data("tooltip");if(c)return c;b=a.extend(!0,{},a.tools.tooltip.conf,b),typeof b.position=="string"&&(b.position=b.position.split(/,?\s/)),this.each(function(){c=new d(a(this),b),a(this).data("tooltip",c)});return b.api?c:this}})(jQuery);
34
- (function(a){var b=a.tools.tooltip;b.dynamic={conf:{classNames:"top right bottom left"}};function c(b){var c=a(window),d=c.width()+c.scrollLeft(),e=c.height()+c.scrollTop();return[b.offset().top<=c.scrollTop(),d<=b.offset().left+b.width(),e<=b.offset().top+b.height(),c.scrollLeft()>=b.offset().left]}function d(a){var b=a.length;while(b--)if(a[b])return!1;return!0}a.fn.dynamic=function(e){typeof e=="number"&&(e={speed:e}),e=a.extend({},b.dynamic.conf,e);var f=a.extend(!0,{},e),g=e.classNames.split(/\s/),h;this.each(function(){var b=a(this).tooltip().onBeforeShow(function(b,e){var i=this.getTip(),j=this.getConf();h||(h=[j.position[0],j.position[1],j.offset[0],j.offset[1],a.extend({},j)]),a.extend(j,h[4]),j.position=[h[0],h[1]],j.offset=[h[2],h[3]],i.css({visibility:"hidden",position:"absolute",top:e.top,left:e.left}).show();var k=a.extend(!0,{},f),l=c(i);if(!d(l)){l[2]&&(a.extend(j,k.top),j.position[0]="top",i.addClass(g[0])),l[3]&&(a.extend(j,k.right),j.position[1]="right",i.addClass(g[1])),l[0]&&(a.extend(j,k.bottom),j.position[0]="bottom",i.addClass(g[2])),l[1]&&(a.extend(j,k.left),j.position[1]="left",i.addClass(g[3]));if(l[0]||l[2])j.offset[0]*=-1;if(l[1]||l[3])j.offset[1]*=-1}i.css({visibility:"visible"}).hide()});b.onBeforeShow(function(){var a=this.getConf(),b=this.getTip();setTimeout(function(){a.position=[h[0],h[1]],a.offset=[h[2],h[3]]},0)}),b.onHide(function(){var a=this.getTip();a.removeClass(e.classNames)}),ret=b});return e.api?ret:this}})(jQuery);
35
- (function(a){var b=a.tools.tooltip;a.extend(b.conf,{direction:"up",bounce:!1,slideOffset:10,slideInSpeed:200,slideOutSpeed:200,slideFade:!a.browser.msie});var c={up:["-","top"],down:["+","top"],left:["-","left"],right:["+","left"]};b.addEffect("slide",function(a){var b=this.getConf(),d=this.getTip(),e=b.slideFade?{opacity:b.opacity}:{},f=c[b.direction]||c.up;e[f[1]]=f[0]+"="+b.slideOffset,b.slideFade&&d.css({opacity:0}),d.show().animate(e,b.slideInSpeed,a)},function(b){var d=this.getConf(),e=d.slideOffset,f=d.slideFade?{opacity:0}:{},g=c[d.direction]||c.up,h=""+g[0];d.bounce&&(h=h=="+"?"-":"+"),f[g[1]]=h+"="+e,this.getTip().animate(f,d.slideOutSpeed,function(){a(this).hide(),b.call()})})})(jQuery);