furatto 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +102 -17
  3. data/furatto.gemspec +1 -0
  4. data/lib/furatto/version.rb +1 -1
  5. data/vendor/assets/javascripts/furatto.js +5978 -15
  6. data/vendor/assets/javascripts/furatto.min.js +3 -0
  7. data/vendor/assets/stylesheets/font-awesome.scss +2495 -0
  8. data/vendor/assets/stylesheets/furatto.scss +15 -30
  9. data/vendor/assets/stylesheets/furatto/_alerts.scss +5 -6
  10. data/vendor/assets/stylesheets/furatto/_base.scss +33 -121
  11. data/vendor/assets/stylesheets/furatto/_buttons.scss +36 -11
  12. data/vendor/assets/stylesheets/furatto/_code.scss +7 -6
  13. data/vendor/assets/stylesheets/furatto/_dashboard.scss +36 -0
  14. data/vendor/assets/stylesheets/furatto/_dropdown.scss +29 -31
  15. data/vendor/assets/stylesheets/furatto/_fonts.scss +0 -588
  16. data/vendor/assets/stylesheets/furatto/_footer.scss +8 -25
  17. data/vendor/assets/stylesheets/furatto/_forms.scss +80 -63
  18. data/vendor/assets/stylesheets/furatto/_grid.scss +34 -30
  19. data/vendor/assets/stylesheets/furatto/_images.scss +28 -8
  20. data/vendor/assets/stylesheets/furatto/_labels.scss +3 -2
  21. data/vendor/assets/stylesheets/furatto/_mixins.scss +81 -164
  22. data/vendor/assets/stylesheets/furatto/_modal.scss +339 -77
  23. data/vendor/assets/stylesheets/furatto/_nav.scss +43 -45
  24. data/vendor/assets/stylesheets/furatto/_navbar.scss +60 -31
  25. data/vendor/assets/stylesheets/furatto/_panel.scss +277 -0
  26. data/vendor/assets/stylesheets/furatto/_responsive_navbar.scss +37 -26
  27. data/vendor/assets/stylesheets/furatto/_responsive_tables.scss +1 -1
  28. data/vendor/assets/stylesheets/furatto/_responsive_utilities.scss +182 -0
  29. data/vendor/assets/stylesheets/furatto/_responsiveslides.scss +157 -174
  30. data/vendor/assets/stylesheets/furatto/_tooltips.scss +2 -14
  31. data/vendor/assets/stylesheets/furatto/_typography.scss +41 -83
  32. data/vendor/assets/stylesheets/furatto/_variables.scss +241 -244
  33. metadata +14 -81
  34. data/vendor/assets/images/icheck/aero.png +0 -0
  35. data/vendor/assets/images/icheck/aero@2x.png +0 -0
  36. data/vendor/assets/images/icheck/blue.png +0 -0
  37. data/vendor/assets/images/icheck/blue@2x.png +0 -0
  38. data/vendor/assets/images/icheck/flat.png +0 -0
  39. data/vendor/assets/images/icheck/flat@2x.png +0 -0
  40. data/vendor/assets/images/icheck/green.png +0 -0
  41. data/vendor/assets/images/icheck/green@2x.png +0 -0
  42. data/vendor/assets/images/icheck/grey.png +0 -0
  43. data/vendor/assets/images/icheck/grey@2x.png +0 -0
  44. data/vendor/assets/images/icheck/orange.png +0 -0
  45. data/vendor/assets/images/icheck/orange@2x.png +0 -0
  46. data/vendor/assets/images/icheck/pink.png +0 -0
  47. data/vendor/assets/images/icheck/pink@2x.png +0 -0
  48. data/vendor/assets/images/icheck/purple.png +0 -0
  49. data/vendor/assets/images/icheck/purple@2x.png +0 -0
  50. data/vendor/assets/images/icheck/red.png +0 -0
  51. data/vendor/assets/images/icheck/red@2x.png +0 -0
  52. data/vendor/assets/images/icheck/yellow.png +0 -0
  53. data/vendor/assets/images/icheck/yellow@2x.png +0 -0
  54. data/vendor/assets/images/icons/customize-icon150.png +0 -0
  55. data/vendor/assets/images/icons/flexible-icon.png +0 -0
  56. data/vendor/assets/images/icons/github-128-black.png +0 -0
  57. data/vendor/assets/images/icons/iphone-icon150.png +0 -0
  58. data/vendor/assets/images/icons/lock-icon128.png +0 -0
  59. data/vendor/assets/images/icons/rocket-icon128.png +0 -0
  60. data/vendor/assets/images/icons/rocket-icon150.png +0 -0
  61. data/vendor/assets/images/icons/screen-icon.png +0 -0
  62. data/vendor/assets/images/icons/screens-icon.png +0 -0
  63. data/vendor/assets/images/icons/screens2-icon.png +0 -0
  64. data/vendor/assets/images/next.png +0 -0
  65. data/vendor/assets/images/previous.png +0 -0
  66. data/vendor/assets/images/themes.gif +0 -0
  67. data/vendor/assets/images/toggle.png +0 -0
  68. data/vendor/assets/javascripts/dropdown.js +0 -169
  69. data/vendor/assets/javascripts/jpanel.js +0 -547
  70. data/vendor/assets/javascripts/jquery.avgrund.js +0 -127
  71. data/vendor/assets/javascripts/jquery.dropkick-1.0.0.js +0 -400
  72. data/vendor/assets/javascripts/jquery.icheck.js +0 -462
  73. data/vendor/assets/javascripts/jquery.tagsinput.js +0 -354
  74. data/vendor/assets/javascripts/jquery.toolbar.js +0 -242
  75. data/vendor/assets/javascripts/legacy.js +0 -140
  76. data/vendor/assets/javascripts/picker.date.js +0 -957
  77. data/vendor/assets/javascripts/picker.js +0 -785
  78. data/vendor/assets/javascripts/picker.time.js +0 -651
  79. data/vendor/assets/javascripts/rainbow-custom.min.js +0 -13
  80. data/vendor/assets/javascripts/responsive-tables.js +0 -67
  81. data/vendor/assets/javascripts/responsiveslides.js +0 -391
  82. data/vendor/assets/javascripts/tooltip.js +0 -353
  83. data/vendor/assets/stylesheets/furatto/_date_picker.time.scss +0 -122
  84. data/vendor/assets/stylesheets/furatto/_font-awesome-ie7.scss +0 -1953
  85. data/vendor/assets/stylesheets/furatto/_layout.scss +0 -0
  86. data/vendor/assets/stylesheets/furatto/_left_navbar.scss +0 -100
  87. data/vendor/assets/stylesheets/furatto/_pagination.scss +0 -158
  88. data/vendor/assets/stylesheets/furatto/_responsive-1200px-min.scss +0 -21
  89. data/vendor/assets/stylesheets/furatto/_responsive-767px-max.scss +0 -82
  90. data/vendor/assets/stylesheets/furatto/_responsive-768px-979px.scss +0 -23
  91. data/vendor/assets/stylesheets/furatto/_select.scss +0 -191
  92. data/vendor/assets/stylesheets/furatto/_tags.scss +0 -107
  93. data/vendor/assets/stylesheets/furatto/_vrt_navbar.scss +0 -61
  94. data/vendor/assets/stylesheets/furatto/icheck/_aero.scss +0 -64
  95. data/vendor/assets/stylesheets/furatto/icheck/_all.scss +0 -20
  96. data/vendor/assets/stylesheets/furatto/icheck/_blue.scss +0 -64
  97. data/vendor/assets/stylesheets/furatto/icheck/_flat.scss +0 -64
  98. data/vendor/assets/stylesheets/furatto/icheck/_green.scss +0 -64
  99. data/vendor/assets/stylesheets/furatto/icheck/_grey.scss +0 -64
  100. data/vendor/assets/stylesheets/furatto/icheck/_orange.scss +0 -64
  101. data/vendor/assets/stylesheets/furatto/icheck/_pink.scss +0 -64
  102. data/vendor/assets/stylesheets/furatto/icheck/_purple.scss +0 -64
  103. data/vendor/assets/stylesheets/furatto/icheck/_red.scss +0 -64
  104. data/vendor/assets/stylesheets/furatto/icheck/_yellow.scss +0 -64
@@ -1,13 +0,0 @@
1
- /* Rainbow v1.2 rainbowco.de | included languages: generic, javascript, html, css */
2
- window.Rainbow=function(){function q(a){var b,c=a.getAttribute&&a.getAttribute("data-language")||0;if(!c){a=a.attributes;for(b=0;b<a.length;++b)if("data-language"===a[b].nodeName)return a[b].nodeValue}return c}function B(a){var b=q(a)||q(a.parentNode);if(!b){var c=/\blang(?:uage)?-(\w+)/;(a=a.className.match(c)||a.parentNode.className.match(c))&&(b=a[1])}return b}function C(a,b){for(var c in f[d]){c=parseInt(c,10);if(a==c&&b==f[d][c]?0:a<=c&&b>=f[d][c])delete f[d][c],delete j[d][c];if(a>=c&&a<f[d][c]||
3
- b>c&&b<f[d][c])return!0}return!1}function r(a,b){return'<span class="'+a.replace(/\./g," ")+(l?" "+l:"")+'">'+b+"</span>"}function s(a,b,c,i){var e=a.exec(c);if(e){++t;!b.name&&"string"==typeof b.matches[0]&&(b.name=b.matches[0],delete b.matches[0]);var k=e[0],g=e.index,u=e[0].length+g,h=function(){function e(){s(a,b,c,i)}t%100>0?e():setTimeout(e,0)};if(C(g,u))h();else{var m=v(b.matches),l=function(a,c,i){if(a>=c.length)i(k);else{var d=e[c[a]];if(d){var g=b.matches[c[a]],f=g.language,h=g.name&&g.matches?
4
- g.matches:g,j=function(b,d,g){var f;f=0;var h;for(h=1;h<c[a];++h)e[h]&&(f=f+e[h].length);d=g?r(g,d):d;k=k.substr(0,f)+k.substr(f).replace(b,d);l(++a,c,i)};f?n(d,f,function(a){j(d,a)}):typeof g==="string"?j(d,d,g):w(d,h.length?h:[h],function(a){j(d,a,g.matches?g.name:0)})}else l(++a,c,i)}};l(0,m,function(a){b.name&&(a=r(b.name,a));if(!j[d]){j[d]={};f[d]={}}j[d][g]={replace:e[0],"with":a};f[d][g]=u;h()})}}else i()}function v(a){var b=[],c;for(c in a)a.hasOwnProperty(c)&&b.push(c);return b.sort(function(a,
5
- b){return b-a})}function w(a,b,c){function i(b,k){k<b.length?s(b[k].pattern,b[k],a,function(){i(b,++k)}):D(a,function(a){delete j[d];delete f[d];--d;c(a)})}++d;i(b,0)}function D(a,b){function c(a,b,i,f){if(i<b.length){++x;var h=b[i],l=j[d][h],a=a.substr(0,h)+a.substr(h).replace(l.replace,l["with"]),h=function(){c(a,b,++i,f)};0<x%250?h():setTimeout(h,0)}else f(a)}var i=v(j[d]);c(a,i,0,b)}function n(a,b,c){var d=m[b]||[],e=m[y]||[],b=z[b]?d:d.concat(e);w(a.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/&(?![\w\#]+;)/g,
6
- "&amp;"),b,c)}function o(a,b,c){if(b<a.length){var d=a[b],e=B(d);return!(-1<(" "+d.className+" ").indexOf(" rainbow "))&&e?(e=e.toLowerCase(),d.className+=d.className?" rainbow":"rainbow",n(d.innerHTML,e,function(k){d.innerHTML=k;j={};f={};p&&p(d,e);setTimeout(function(){o(a,++b,c)},0)})):o(a,++b,c)}c&&c()}function A(a,b){var a=a&&"function"==typeof a.getElementsByTagName?a:document,c=a.getElementsByTagName("pre"),d=a.getElementsByTagName("code"),e,f=[],g=[];for(e=0;e<c.length;++e)c[e].getElementsByTagName("code").length?
7
- c[e].innerHTML=c[e].innerHTML.replace(/^\s+/,"").replace(/\s+$/,""):f.push(c[e]);for(e=0;e<d.length;++e)g.push(d[e]);o(g.concat(f),0,b)}var j={},f={},m={},z={},d=0,y=0,t=0,x=0,l,p;return{extend:function(a,b,c){1==arguments.length&&(b=a,a=y);z[a]=c;m[a]=b.concat(m[a]||[])},b:function(a){p=a},a:function(a){l=a},color:function(a,b,c){if("string"==typeof a)return n(a,b,c);if("function"==typeof a)return A(0,a);A(a,b)}}}();
8
- document.addEventListener?document.addEventListener("DOMContentLoaded",Rainbow.color,!1):window.attachEvent("onload",Rainbow.color);Rainbow.onHighlight=Rainbow.b;Rainbow.addClass=Rainbow.a;Rainbow.extend([{matches:{1:{name:"keyword.operator",pattern:/\=/g},2:{name:"string",matches:{name:"constant.character.escape",pattern:/\\('|"){1}/g}}},pattern:/(\(|\s|\[|\=|:)(('|")([^\\\1]|\\.)*?(\3))/gm},{name:"comment",pattern:/\/\*[\s\S]*?\*\/|(\/\/|\#)[\s\S]*?$/gm},{name:"constant.numeric",pattern:/\b(\d+(\.\d+)?(e(\+|\-)?\d+)?(f|d)?|0x[\da-f]+)\b/gi},{matches:{1:"keyword"},pattern:/\b(and|array|as|b(ool(ean)?|reak)|c(ase|atch|har|lass|on(st|tinue))|d(ef|elete|o(uble)?)|e(cho|lse(if)?|xit|xtends|xcept)|f(inally|loat|or(each)?|unction)|global|if|import|int(eger)?|long|new|object|or|pr(int|ivate|otected)|public|return|self|st(ring|ruct|atic)|switch|th(en|is|row)|try|(un)?signed|var|void|while)(?=\(|\b)/gi},
9
- {name:"constant.language",pattern:/true|false|null/g},{name:"keyword.operator",pattern:/\+|\!|\-|&(gt|lt|amp);|\||\*|\=/g},{matches:{1:"function.call"},pattern:/(\w+?)(?=\()/g},{matches:{1:"storage.function",2:"entity.name.function"},pattern:/(function)\s(.*?)(?=\()/g}]);Rainbow.extend("javascript",[{name:"selector",pattern:/(\s|^)\$(?=\.|\()/g},{name:"support",pattern:/\b(window|document)\b/g},{matches:{1:"support.property"},pattern:/\.(length|node(Name|Value))\b/g},{matches:{1:"support.function"},pattern:/(setTimeout|setInterval)(?=\()/g},{matches:{1:"support.method"},pattern:/\.(getAttribute|push|getElementById|getElementsByClassName|log|setTimeout|setInterval)(?=\()/g},{matches:{1:"support.tag.script",2:[{name:"string",pattern:/('|")(.*?)(\1)/g},{name:"entity.tag.script",
10
- pattern:/(\w+)/g}],3:"support.tag.script"},pattern:/(&lt;\/?)(script.*?)(&gt;)/g},{name:"string.regexp",matches:{1:"string.regexp.open",2:{name:"constant.regexp.escape",pattern:/\\(.){1}/g},3:"string.regexp.close",4:"string.regexp.modifier"},pattern:/(\/)(?!\*)(.+)(\/)([igm]{0,3})/g},{matches:{1:"storage",3:"entity.function"},pattern:/(var)?(\s|^)(\S*)(?=\s?=\s?function\()/g},{matches:{1:"keyword",2:"entity.function"},pattern:/(new)\s+(.*)(?=\()/g},{name:"entity.function",pattern:/(\w+)(?=:\s{0,}function)/g}]);Rainbow.extend("html",[{name:"source.php.embedded",matches:{2:{language:"php"}},pattern:/&lt;\?=?(?!xml)(php)?([\s\S]*?)(\?&gt;)/gm},{name:"source.css.embedded",matches:{"0":{language:"css"}},pattern:/&lt;style(.*?)&gt;([\s\S]*?)&lt;\/style&gt;/gm},{name:"source.js.embedded",matches:{"0":{language:"javascript"}},pattern:/&lt;script(?! src)(.*?)&gt;([\s\S]*?)&lt;\/script&gt;/gm},{name:"comment.html",pattern:/&lt;\!--[\S\s]*?--&gt;/g},{matches:{1:"support.tag.open",2:"support.tag.close"},pattern:/(&lt;)|(\/?\??&gt;)/g},
11
- {name:"support.tag",matches:{1:"support.tag",2:"support.tag.special",3:"support.tag-name"},pattern:/(&lt;\??)(\/|\!?)(\w+)/g},{matches:{1:"support.attribute"},pattern:/([a-z-]+)(?=\=)/gi},{matches:{1:"support.operator",2:"string.quote",3:"string.value",4:"string.quote"},pattern:/(=)('|")(.*?)(\2)/g},{matches:{1:"support.operator",2:"support.value"},pattern:/(=)([a-zA-Z\-0-9]*)\b/g},{matches:{1:"support.attribute"},pattern:/\s(\w+)(?=\s|&gt;)(?![\s\S]*&lt;)/g}],!0);Rainbow.extend("css",[{name:"comment",pattern:/\/\*[\s\S]*?\*\//gm},{name:"constant.hex-color",pattern:/#([a-f0-9]{3}|[a-f0-9]{6})(?=;|\s|,|\))/gi},{matches:{1:"constant.numeric",2:"keyword.unit"},pattern:/(\d+)(px|em|cm|s|%)?/g},{name:"string",pattern:/('|")(.*?)\1/g},{name:"support.css-property",matches:{1:"support.vendor-prefix"},pattern:/(-o-|-moz-|-webkit-|-ms-)?[\w-]+(?=\s?:)(?!.*\{)/g},{matches:{1:[{name:"entity.name.sass",pattern:/&amp;/g},{name:"direct-descendant",pattern:/&gt;/g},{name:"entity.name.class",
12
- pattern:/\.[\w\-_]+/g},{name:"entity.name.id",pattern:/\#[\w\-_]+/g},{name:"entity.name.pseudo",pattern:/:[\w\-_]+/g},{name:"entity.name.tag",pattern:/\w+/g}]},pattern:/([\w\ ,:\.\#\&\;\-_]+)(?=.*\{)/g},{matches:{2:"support.vendor-prefix",3:"support.css-value"},pattern:/(:|,)\s*(-o-|-moz-|-webkit-|-ms-)?([a-zA-Z-]*)(?=\b)(?!.*\{)/g},{matches:{1:"support.tag.style",2:[{name:"string",pattern:/('|")(.*?)(\1)/g},{name:"entity.tag.style",pattern:/(\w+)/g}],3:"support.tag.style"},pattern:/(&lt;\/?)(style.*?)(&gt;)/g}],
13
- !0);
@@ -1,67 +0,0 @@
1
- $(document).ready(function() {
2
- var switched = false;
3
- var updateTables = function() {
4
- if (($(window).width() < 767) && !switched ){
5
- switched = true;
6
- $("table.responsive").each(function(i, element) {
7
- splitTable($(element));
8
- });
9
- return true;
10
- }
11
- else if (switched && ($(window).width() > 767)) {
12
- switched = false;
13
- $("table.responsive").each(function(i, element) {
14
- unsplitTable($(element));
15
- });
16
- }
17
- };
18
-
19
- $(window).load(updateTables);
20
- $(window).on("redraw",function(){switched=false;updateTables();}); // An event to listen for
21
- $(window).on("resize", updateTables);
22
-
23
-
24
- function splitTable(original)
25
- {
26
- original.wrap("<div class='table-wrapper' />");
27
-
28
- var copy = original.clone();
29
- copy.find("td:not(:first-child), th:not(:first-child)").css("display", "none");
30
- copy.removeClass("responsive");
31
-
32
- original.closest(".table-wrapper").append(copy);
33
- copy.wrap("<div class='pinned' />");
34
- original.wrap("<div class='scrollable' />");
35
-
36
- setCellHeights(original, copy);
37
- }
38
-
39
- function unsplitTable(original) {
40
- original.closest(".table-wrapper").find(".pinned").remove();
41
- original.unwrap();
42
- original.unwrap();
43
- }
44
-
45
- function setCellHeights(original, copy) {
46
- var tr = original.find('tr'),
47
- tr_copy = copy.find('tr'),
48
- heights = [];
49
-
50
- tr.each(function (index) {
51
- var self = $(this),
52
- tx = self.find('th, td');
53
-
54
- tx.each(function () {
55
- var height = $(this).outerHeight(true);
56
- heights[index] = heights[index] || 0;
57
- if (height > heights[index]) heights[index] = height;
58
- });
59
-
60
- });
61
-
62
- tr_copy.each(function (index) {
63
- $(this).height(heights[index]);
64
- });
65
- }
66
-
67
- });
@@ -1,391 +0,0 @@
1
- /*! ResponsiveSlides.js v1.54
2
- * http://responsiveslides.com
3
- * http://viljamis.com
4
- *
5
- * Copyright (c) 2011-2012 @viljamis
6
- * Available under the MIT license
7
- */
8
-
9
- /*jslint browser: true, sloppy: true, vars: true, plusplus: true, indent: 2 */
10
-
11
- (function ($, window, i) {
12
- $.fn.responsiveSlides = function (options) {
13
-
14
- // Default settings
15
- var settings = $.extend({
16
- "auto": true, // Boolean: Animate automatically, true or false
17
- "speed": 500, // Integer: Speed of the transition, in milliseconds
18
- "timeout": 4000, // Integer: Time between slide transitions, in milliseconds
19
- "pager": false, // Boolean: Show pager, true or false
20
- "nav": false, // Boolean: Show navigation, true or false
21
- "random": false, // Boolean: Randomize the order of the slides, true or false
22
- "pause": false, // Boolean: Pause on hover, true or false
23
- "pauseControls": true, // Boolean: Pause when hovering controls, true or false
24
- "prevText": "Previous", // String: Text for the "previous" button
25
- "nextText": "Next", // String: Text for the "next" button
26
- "maxwidth": "", // Integer: Max-width of the slideshow, in pixels
27
- "navContainer": "", // Selector: Where auto generated controls should be appended to, default is after the <ul>
28
- "manualControls": "", // Selector: Declare custom pager navigation
29
- "namespace": "rslides", // String: change the default namespace used
30
- "before": $.noop, // Function: Before callback
31
- "after": $.noop // Function: After callback
32
- }, options);
33
-
34
- return this.each(function () {
35
-
36
- // Index for namespacing
37
- i++;
38
-
39
- var $this = $(this),
40
-
41
- // Local variables
42
- vendor,
43
- selectTab,
44
- startCycle,
45
- restartCycle,
46
- rotate,
47
- $tabs,
48
-
49
- // Helpers
50
- index = 0,
51
- $slide = $this.children(),
52
- length = $slide.size(),
53
- fadeTime = parseFloat(settings.speed),
54
- waitTime = parseFloat(settings.timeout),
55
- maxw = parseFloat(settings.maxwidth),
56
-
57
- // Namespacing
58
- namespace = settings.namespace,
59
- namespaceIdx = namespace + i,
60
-
61
- // Classes
62
- navClass = namespace + "_nav " + namespaceIdx + "_nav",
63
- activeClass = namespace + "_here",
64
- visibleClass = namespaceIdx + "_on",
65
- slideClassPrefix = namespaceIdx + "_s",
66
-
67
- // Pager
68
- $pager = $("<ul class='" + namespace + "_tabs " + namespaceIdx + "_tabs' />"),
69
-
70
- // Styles for visible and hidden slides
71
- visible = {"float": "left", "position": "relative", "opacity": 1, "zIndex": 2},
72
- hidden = {"float": "none", "position": "absolute", "opacity": 0, "zIndex": 1},
73
-
74
- // Detect transition support
75
- supportsTransitions = (function () {
76
- var docBody = document.body || document.documentElement;
77
- var styles = docBody.style;
78
- var prop = "transition";
79
- if (typeof styles[prop] === "string") {
80
- return true;
81
- }
82
- // Tests for vendor specific prop
83
- vendor = ["Moz", "Webkit", "Khtml", "O", "ms"];
84
- prop = prop.charAt(0).toUpperCase() + prop.substr(1);
85
- var i;
86
- for (i = 0; i < vendor.length; i++) {
87
- if (typeof styles[vendor[i] + prop] === "string") {
88
- return true;
89
- }
90
- }
91
- return false;
92
- })(),
93
-
94
- // Fading animation
95
- slideTo = function (idx) {
96
- settings.before(idx);
97
- // If CSS3 transitions are supported
98
- if (supportsTransitions) {
99
- $slide
100
- .removeClass(visibleClass)
101
- .css(hidden)
102
- .eq(idx)
103
- .addClass(visibleClass)
104
- .css(visible);
105
- index = idx;
106
- setTimeout(function () {
107
- settings.after(idx);
108
- }, fadeTime);
109
- // If not, use jQuery fallback
110
- } else {
111
- $slide
112
- .stop()
113
- .fadeOut(fadeTime, function () {
114
- $(this)
115
- .removeClass(visibleClass)
116
- .css(hidden)
117
- .css("opacity", 1);
118
- })
119
- .eq(idx)
120
- .fadeIn(fadeTime, function () {
121
- $(this)
122
- .addClass(visibleClass)
123
- .css(visible);
124
- settings.after(idx);
125
- index = idx;
126
- });
127
- }
128
- };
129
-
130
- // Random order
131
- if (settings.random) {
132
- $slide.sort(function () {
133
- return (Math.round(Math.random()) - 0.5);
134
- });
135
- $this
136
- .empty()
137
- .append($slide);
138
- }
139
-
140
- // Add ID's to each slide
141
- $slide.each(function (i) {
142
- this.id = slideClassPrefix + i;
143
- });
144
-
145
- // Add max-width and classes
146
- $this.addClass(namespace + " " + namespaceIdx);
147
- if (options && options.maxwidth) {
148
- $this.css("max-width", maxw);
149
- }
150
-
151
- // Hide all slides, then show first one
152
- $slide
153
- .hide()
154
- .css(hidden)
155
- .eq(0)
156
- .addClass(visibleClass)
157
- .css(visible)
158
- .show();
159
-
160
- // CSS transitions
161
- if (supportsTransitions) {
162
- $slide
163
- .show()
164
- .css({
165
- // -ms prefix isn't needed as IE10 uses prefix free version
166
- "-webkit-transition": "opacity " + fadeTime + "ms ease-in-out",
167
- "-moz-transition": "opacity " + fadeTime + "ms ease-in-out",
168
- "-o-transition": "opacity " + fadeTime + "ms ease-in-out",
169
- "transition": "opacity " + fadeTime + "ms ease-in-out"
170
- });
171
- }
172
-
173
- // Only run if there's more than one slide
174
- if ($slide.size() > 1) {
175
-
176
- // Make sure the timeout is at least 100ms longer than the fade
177
- if (waitTime < fadeTime + 100) {
178
- return;
179
- }
180
-
181
- // Pager
182
- if (settings.pager && !settings.manualControls) {
183
- var tabMarkup = [];
184
- $slide.each(function (i) {
185
- var n = i + 1;
186
- tabMarkup +=
187
- "<li>" +
188
- "<a href='#' class='" + slideClassPrefix + n + "'>" + n + "</a>" +
189
- "</li>";
190
- });
191
- $pager.append(tabMarkup);
192
-
193
- // Inject pager
194
- if (options.navContainer) {
195
- $(settings.navContainer).append($pager);
196
- } else {
197
- $this.after($pager);
198
- }
199
- }
200
-
201
- // Manual pager controls
202
- if (settings.manualControls) {
203
- $pager = $(settings.manualControls);
204
- $pager.addClass(namespace + "_tabs " + namespaceIdx + "_tabs");
205
- }
206
-
207
- // Add pager slide class prefixes
208
- if (settings.pager || settings.manualControls) {
209
- $pager.find('li').each(function (i) {
210
- $(this).addClass(slideClassPrefix + (i + 1));
211
- });
212
- }
213
-
214
- // If we have a pager, we need to set up the selectTab function
215
- if (settings.pager || settings.manualControls) {
216
- $tabs = $pager.find('a');
217
-
218
- // Select pager item
219
- selectTab = function (idx) {
220
- $tabs
221
- .closest("li")
222
- .removeClass(activeClass)
223
- .eq(idx)
224
- .addClass(activeClass);
225
- };
226
- }
227
-
228
- // Auto cycle
229
- if (settings.auto) {
230
-
231
- startCycle = function () {
232
- rotate = setInterval(function () {
233
-
234
- // Clear the event queue
235
- $slide.stop(true, true);
236
-
237
- var idx = index + 1 < length ? index + 1 : 0;
238
-
239
- // Remove active state and set new if pager is set
240
- if (settings.pager || settings.manualControls) {
241
- selectTab(idx);
242
- }
243
-
244
- slideTo(idx);
245
- }, waitTime);
246
- };
247
-
248
- // Init cycle
249
- startCycle();
250
- }
251
-
252
- // Restarting cycle
253
- restartCycle = function () {
254
- if (settings.auto) {
255
- // Stop
256
- clearInterval(rotate);
257
- // Restart
258
- startCycle();
259
- }
260
- };
261
-
262
- // Pause on hover
263
- if (settings.pause) {
264
- $this.hover(function () {
265
- clearInterval(rotate);
266
- }, function () {
267
- restartCycle();
268
- });
269
- }
270
-
271
- // Pager click event handler
272
- if (settings.pager || settings.manualControls) {
273
- $tabs.bind("click", function (e) {
274
- e.preventDefault();
275
-
276
- if (!settings.pauseControls) {
277
- restartCycle();
278
- }
279
-
280
- // Get index of clicked tab
281
- var idx = $tabs.index(this);
282
-
283
- // Break if element is already active or currently animated
284
- if (index === idx || $("." + visibleClass).queue('fx').length) {
285
- return;
286
- }
287
-
288
- // Remove active state from old tab and set new one
289
- selectTab(idx);
290
-
291
- // Do the animation
292
- slideTo(idx);
293
- })
294
- .eq(0)
295
- .closest("li")
296
- .addClass(activeClass);
297
-
298
- // Pause when hovering pager
299
- if (settings.pauseControls) {
300
- $tabs.hover(function () {
301
- clearInterval(rotate);
302
- }, function () {
303
- restartCycle();
304
- });
305
- }
306
- }
307
-
308
- // Navigation
309
- if (settings.nav) {
310
- var navMarkup =
311
- "<a href='#' class='" + navClass + " prev'>" + settings.prevText + "</a>" +
312
- "<a href='#' class='" + navClass + " next'>" + settings.nextText + "</a>";
313
-
314
- // Inject navigation
315
- if (options.navContainer) {
316
- $(settings.navContainer).append(navMarkup);
317
- } else {
318
- $this.after(navMarkup);
319
- }
320
-
321
- var $trigger = $("." + namespaceIdx + "_nav"),
322
- $prev = $trigger.filter(".prev");
323
-
324
- // Click event handler
325
- $trigger.bind("click", function (e) {
326
- e.preventDefault();
327
-
328
- var $visibleClass = $("." + visibleClass);
329
-
330
- // Prevent clicking if currently animated
331
- if ($visibleClass.queue('fx').length) {
332
- return;
333
- }
334
-
335
- // Adds active class during slide animation
336
- // $(this)
337
- // .addClass(namespace + "_active")
338
- // .delay(fadeTime)
339
- // .queue(function (next) {
340
- // $(this).removeClass(namespace + "_active");
341
- // next();
342
- // });
343
-
344
- // Determine where to slide
345
- var idx = $slide.index($visibleClass),
346
- prevIdx = idx - 1,
347
- nextIdx = idx + 1 < length ? index + 1 : 0;
348
-
349
- // Go to slide
350
- slideTo($(this)[0] === $prev[0] ? prevIdx : nextIdx);
351
- if (settings.pager || settings.manualControls) {
352
- selectTab($(this)[0] === $prev[0] ? prevIdx : nextIdx);
353
- }
354
-
355
- if (!settings.pauseControls) {
356
- restartCycle();
357
- }
358
- });
359
-
360
- // Pause when hovering navigation
361
- if (settings.pauseControls) {
362
- $trigger.hover(function () {
363
- clearInterval(rotate);
364
- }, function () {
365
- restartCycle();
366
- });
367
- }
368
- }
369
-
370
- }
371
-
372
- // Max-width fallback
373
- if (typeof document.body.style.maxWidth === "undefined" && options.maxwidth) {
374
- var widthSupport = function () {
375
- $this.css("width", "100%");
376
- if ($this.width() > maxw) {
377
- $this.css("width", maxw);
378
- }
379
- };
380
-
381
- // Init fallback
382
- widthSupport();
383
- $(window).bind("resize", function () {
384
- widthSupport();
385
- });
386
- }
387
-
388
- });
389
-
390
- };
391
- })(jQuery, this, 0);