mdd 0.0.1 → 1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. data/app/helpers/mdd_helper.rb +16 -0
  2. data/app/views/template/mdwa/_autocomplete_tag.html.erb +18 -0
  3. data/app/views/template/mdwa/_login_text.html.erb +3 -0
  4. data/app/views/template/mdwa/_notice.html.erb +17 -0
  5. data/lib/generators/mdd/sandbox/sandbox_generator.rb +171 -0
  6. data/lib/generators/mdd/sandbox/templates/app/assets/images/.DS_Store +0 -0
  7. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/ajax-loader.gif +0 -0
  8. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/backend_bg.png +0 -0
  9. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/barra-16.gif +0 -0
  10. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/bg_ip.png +0 -0
  11. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/bg_left.jpg +0 -0
  12. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/bg_window_header.png +0 -0
  13. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/bt_g.png +0 -0
  14. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/button_submit.gif +0 -0
  15. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/fancybox_loading.gif +0 -0
  16. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/fancybox_sprite.png +0 -0
  17. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/headerbg.png +0 -0
  18. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/add.png +0 -0
  19. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/delete.png +0 -0
  20. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/dropdown.png +0 -0
  21. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/edit.png +0 -0
  22. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/lupa.png +0 -0
  23. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/icons/remove-icon.png +0 -0
  24. data/lib/generators/mdd/sandbox/templates/app/assets/images/mdwa/notice_close.png +0 -0
  25. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/.DS_Store +0 -0
  26. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery-ui.js +356 -0
  27. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.bgiframe.js +10 -0
  28. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.easing.js +72 -0
  29. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.fancybox.js +31 -0
  30. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.hover_intent.js +84 -0
  31. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.mousewheel.js +13 -0
  32. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.popup_window.js +62 -0
  33. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/jquery/jquery.validate.js +51 -0
  34. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/.DS_Store +0 -0
  35. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/login_manifest.js +4 -0
  36. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/public_manifest.js +4 -0
  37. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/system_manifest.js +8 -0
  38. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/template/ajaxloader.js +21 -0
  39. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/template/all_pages.js +41 -0
  40. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/template/clicable_title.js +19 -0
  41. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/template/nested_form.js +46 -0
  42. data/lib/generators/mdd/sandbox/templates/app/assets/javascripts/mdwa/template/pagination.js +6 -0
  43. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/.DS_Store +0 -0
  44. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/jquery/.DS_Store +0 -0
  45. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/jquery/jquery-ui-theme1.css +573 -0
  46. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/jquery/jquery.fancybox.css +226 -0
  47. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/.DS_Store +0 -0
  48. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/login/login.css +124 -0
  49. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/login_manifest.css +8 -0
  50. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/public_manifest.css +8 -0
  51. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/system_manifest.css +14 -0
  52. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/backend.css.erb +165 -0
  53. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/backend_base.css.erb +50 -0
  54. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/cssbase.css +79 -0
  55. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/grid.css +159 -0
  56. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/leftbar.css.erb +0 -0
  57. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/reset.css +124 -0
  58. data/lib/generators/mdd/sandbox/templates/app/assets/stylesheets/mdwa/template/template.css.erb +269 -0
  59. data/lib/generators/mdd/sandbox/templates/app/controllers/a/administrators_controller.rb +82 -0
  60. data/lib/generators/mdd/sandbox/templates/app/controllers/a/backend_controller.rb +16 -0
  61. data/lib/generators/mdd/sandbox/templates/app/controllers/a/home_controller.rb +10 -0
  62. data/lib/generators/mdd/sandbox/templates/app/controllers/a/users/passwords_controller.rb +20 -0
  63. data/lib/generators/mdd/sandbox/templates/app/controllers/a/users/sessions_controller.rb +3 -0
  64. data/lib/generators/mdd/sandbox/templates/app/controllers/public_controller.rb +4 -0
  65. data/lib/generators/mdd/sandbox/templates/app/models/ability.rb +13 -0
  66. data/lib/generators/mdd/sandbox/templates/app/models/administrator.rb +9 -0
  67. data/lib/generators/mdd/sandbox/templates/app/models/permission.rb +8 -0
  68. data/lib/generators/mdd/sandbox/templates/app/models/user.rb +15 -0
  69. data/lib/generators/mdd/sandbox/templates/app/views/a/administrators/_administrators.html.erb +18 -0
  70. data/lib/generators/mdd/sandbox/templates/app/views/a/administrators/_form.html.erb +50 -0
  71. data/lib/generators/mdd/sandbox/templates/app/views/a/administrators/edit.html.erb +7 -0
  72. data/lib/generators/mdd/sandbox/templates/app/views/a/administrators/index.html.erb +9 -0
  73. data/lib/generators/mdd/sandbox/templates/app/views/a/administrators/new.html.erb +7 -0
  74. data/lib/generators/mdd/sandbox/templates/app/views/a/home/index.html.erb +7 -0
  75. data/lib/generators/mdd/sandbox/templates/app/views/a/users/_welcome.html.erb +9 -0
  76. data/lib/generators/mdd/sandbox/templates/app/views/a/users/confirmations/new.html.erb +12 -0
  77. data/lib/generators/mdd/sandbox/templates/app/views/a/users/mailer/confirmation_instructions.html.erb +5 -0
  78. data/lib/generators/mdd/sandbox/templates/app/views/a/users/mailer/reset_password_instructions.html.erb +8 -0
  79. data/lib/generators/mdd/sandbox/templates/app/views/a/users/mailer/unlock_instructions.html.erb +7 -0
  80. data/lib/generators/mdd/sandbox/templates/app/views/a/users/passwords/edit.html.erb +35 -0
  81. data/lib/generators/mdd/sandbox/templates/app/views/a/users/passwords/new.html.erb +12 -0
  82. data/lib/generators/mdd/sandbox/templates/app/views/a/users/registrations/edit.html.erb +25 -0
  83. data/lib/generators/mdd/sandbox/templates/app/views/a/users/registrations/new.html.erb +18 -0
  84. data/lib/generators/mdd/sandbox/templates/app/views/a/users/sessions/new.html.erb +19 -0
  85. data/lib/generators/mdd/sandbox/templates/app/views/a/users/shared/_links.erb +25 -0
  86. data/lib/generators/mdd/sandbox/templates/app/views/a/users/unlocks/new.html.erb +12 -0
  87. data/lib/generators/mdd/sandbox/templates/app/views/layouts/login.html.erb +19 -0
  88. data/lib/generators/mdd/sandbox/templates/app/views/layouts/public.html.erb +12 -0
  89. data/lib/generators/mdd/sandbox/templates/app/views/layouts/system.html.erb +37 -0
  90. data/lib/generators/mdd/sandbox/templates/app/views/public/index.html.erb +5 -0
  91. data/lib/generators/mdd/sandbox/templates/app/views/template/_leftbar.html.erb +11 -0
  92. data/lib/generators/mdd/sandbox/templates/config/initializers/devise.rb +223 -0
  93. data/lib/generators/mdd/sandbox/templates/config/initializers/mdd_inflections.rb +5 -0
  94. data/lib/generators/mdd/sandbox/templates/config/initializers/mdd_layout.rb +7 -0
  95. data/lib/generators/mdd/sandbox/templates/config/initializers/will_paginate.rb +2 -0
  96. data/lib/generators/mdd/sandbox/templates/config/locales/devise.en.yml +57 -0
  97. data/lib/generators/mdd/sandbox/templates/config/locales/mdwa.en.yml +39 -0
  98. data/lib/generators/mdd/sandbox/templates/db/migrate/create_permissions.rb +8 -0
  99. data/lib/generators/mdd/sandbox/templates/db/migrate/create_user_permissions.rb +8 -0
  100. data/lib/generators/mdd/sandbox/templates/db/migrate/devise_create_users.rb +38 -0
  101. data/lib/generators/mdd/sandbox/templates/db/seeds.rb +2 -0
  102. data/lib/generators/mdd/sandbox/templates/db/seeds/.DS_Store +0 -0
  103. data/lib/generators/mdd/sandbox/templates/db/seeds/site.rb +3 -0
  104. data/lib/mdd.rb +8 -1
  105. data/lib/mdd/.DS_Store +0 -0
  106. data/lib/mdd/layout/base.rb +97 -0
  107. data/lib/mdd/layout/helper.rb +20 -0
  108. data/lib/mdd/version.rb +1 -1
  109. data/mdd.gemspec +2 -3
  110. metadata +150 -28
  111. data/app/helpers/pagination_helper.rb +0 -12
  112. data/app/models/layout_base.rb +0 -89
  113. data/app/models/settings.rb +0 -3
@@ -0,0 +1,10 @@
1
+ /* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
2
+ * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
3
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
4
+ *
5
+ * $LastChangedDate: 2007-06-19 20:25:28 -0500 (Tue, 19 Jun 2007) $
6
+ * $Rev: 2111 $
7
+ *
8
+ * Version 2.1
9
+ */
10
+ (function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&parseInt($.browser.version)<=6){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return this.each(function(){if($('> iframe.bgiframe',this).length==0)this.insertBefore(document.createElement(html),this.firstChild);});}return this;};if(!$.browser.version)$.browser.version=navigator.userAgent.toLowerCase().match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)[1];})(jQuery);
@@ -0,0 +1,72 @@
1
+ /*
2
+ * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
3
+ *
4
+ * Uses the built in easing capabilities added In jQuery 1.1
5
+ * to offer multiple easing options
6
+ *
7
+ * TERMS OF USE - jQuery Easing
8
+ *
9
+ * Open source under the BSD License.
10
+ *
11
+ * Copyright © 2008 George McGinley Smith
12
+ * All rights reserved.
13
+ *
14
+ * Redistribution and use in source and binary forms, with or without modification,
15
+ * are permitted provided that the following conditions are met:
16
+ *
17
+ * Redistributions of source code must retain the above copyright notice, this list of
18
+ * conditions and the following disclaimer.
19
+ * Redistributions in binary form must reproduce the above copyright notice, this list
20
+ * of conditions and the following disclaimer in the documentation and/or other materials
21
+ * provided with the distribution.
22
+ *
23
+ * Neither the name of the author nor the names of contributors may be used to endorse
24
+ * or promote products derived from this software without specific prior written permission.
25
+ *
26
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
27
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
28
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
29
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
31
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
32
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
33
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
34
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
35
+ *
36
+ */
37
+
38
+ // t: current time, b: begInnIng value, c: change In value, d: duration
39
+ eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t<d/2)6 h.i.A(x,t*2,0,c,d)*.5+b;6 h.i.v(x,t*2-d,0,c,d)*.5+c*.5+b}});',62,74,'||||||return||Math|function|||||if|var|PI|jQuery|easing|pow|75|70158|else|sin|sqrt||5625|asin|||undefined|easeOutBounce|abs||def|swing|easeInBounce|525|cos|easeOutQuad|easeOutBack|easeInBack|easeInSine|easeOutElastic|easeInOutQuint|easeOutQuint|easeInQuint|easeInOutQuart|easeOutQuart|easeInQuart|extend|easeInElastic|easeInOutCirc|easeInOutCubic|easeOutCirc|easeInOutElastic|easeOutCubic|easeInCirc|easeInOutExpo|easeInCubic|easeOutExpo|easeInExpo||9375|easeInOutSine|easeInOutQuad|25|easeOutSine|easeInOutBack|easeInQuad|625|984375|jswing|easeInOutBounce'.split('|'),0,{}))
40
+
41
+ /*
42
+ *
43
+ * TERMS OF USE - EASING EQUATIONS
44
+ *
45
+ * Open source under the BSD License.
46
+ *
47
+ * Copyright © 2001 Robert Penner
48
+ * All rights reserved.
49
+ *
50
+ * Redistribution and use in source and binary forms, with or without modification,
51
+ * are permitted provided that the following conditions are met:
52
+ *
53
+ * Redistributions of source code must retain the above copyright notice, this list of
54
+ * conditions and the following disclaimer.
55
+ * Redistributions in binary form must reproduce the above copyright notice, this list
56
+ * of conditions and the following disclaimer in the documentation and/or other materials
57
+ * provided with the distribution.
58
+ *
59
+ * Neither the name of the author nor the names of contributors may be used to endorse
60
+ * or promote products derived from this software without specific prior written permission.
61
+ *
62
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
63
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
64
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
65
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
66
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
67
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
68
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
69
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
70
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
71
+ *
72
+ */
@@ -0,0 +1,31 @@
1
+ /*! fancyBox v2.0.1 fancyapps.com | fancyapps.com/fancybox/#license */
2
+ (function(p,m,e){var h=e(p),i=e(m),a=e.fancybox=function(){a.open.apply(this,arguments)},n=!1,o=null;e.extend(a,{version:"2.0.1",defaults:{padding:15,margin:20,width:800,height:600,minWidth:200,minHeight:200,maxWidth:9999,maxHeight:9999,autoSize:!0,fitToView:!0,aspectRatio:!1,topRatio:0.5,fixed:!e.browser.msie||6<e.browser.version,scrolling:"auto",wrapCSS:"fancybox-default",arrows:!0,closeBtn:!0,closeClick:!0,mouseWheel:!0,autoPlay:!1,playSpeed:3E3,loop:!0,ajax:{},keys:{next:[13,32,34,39,40],prev:[8,
3
+ 33,37,38],close:[27]},index:0,type:null,href:null,content:null,title:null,tpl:{wrap:'<div class="fancybox-wrap"><div class="fancybox-outer"><div class="fancybox-inner"></div></div></div>',image:'<img class="fancybox-image" src="{href}" alt="" />',iframe:'<iframe class="fancybox-iframe" name="fancybox-frame{rnd}" frameborder="0" hspace="0" '+(e.browser.msie?'allowtransparency="true""':"")+' scrolling="{scrolling}" src="{href}"></iframe>',swf:'<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"><param name="wmode" value="transparent" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{href}" /><embed src="{href}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="100%" height="100%" wmode="transparent"></embed></object>',
4
+ error:'<p class="fancybox-error">The requested content cannot be loaded.<br/>Please try again later.</p>',closeBtn:'<div title="Close" class="fancybox-item fancybox-close"></div>',next:'<a title="Next" class="fancybox-item fancybox-next"><span></span></a>',prev:'<a title="Previous" class="fancybox-item fancybox-prev"><span></span></a>'},openEffect:"fade",openSpeed:500,openEasing:"swing",openOpacity:!0,openMethod:"zoomIn",closeEffect:"fade",closeSpeed:500,closeEasing:"swing",closeOpacity:!0,closeMethod:"zoomOut",
5
+ nextEffect:"elastic",nextSpeed:300,nextEasing:"swing",nextMethod:"changeIn",prevEffect:"elastic",prevSpeed:300,prevEasing:"swing",prevMethod:"changeOut",helpers:{overlay:{speedIn:0,speedOut:0,opacity:0.85,css:{cursor:"pointer","background-color":"rgba(0, 0, 0, 0.85)"},closeClick:!0},title:{type:"float"}}},group:{},opts:{},coming:null,current:null,isOpen:!1,isOpened:!1,wrap:null,outer:null,inner:null,player:{timer:null,isActive:!1},ajaxLoad:null,imgPreload:null,transitions:{},helpers:{},open:function(b,
6
+ c){e.isArray(b)||(b=[b]);if(b.length)a.close(!0),a.opts=e.extend(!0,{},a.defaults,c),a.group=b,a._start(a.opts.index||0)},cancel:function(){if(!(a.coming&&!1===a.trigger("onCancel"))&&(a.coming=null,a.hideLoading(),a.ajaxLoad&&a.ajaxLoad.abort(),a.ajaxLoad=null,a.imgPreload))a.imgPreload.onload=a.imgPreload.onabort=a.imgPreload.onerror=null},close:function(b){a.cancel();if(a.current&&!1!==a.trigger("beforeClose"))!a.isOpen||b&&!0===b[0]?(e(".fancybox-wrap").stop().trigger("onReset").remove(),a._afterZoomOut()):
7
+ (a.isOpen=a.isOpened=!1,e(".fancybox-item").remove(),a.wrap.stop(!0).removeClass("fancybox-opened"),a.inner.css("overflow","hidden"),a.transitions[a.current.closeMethod]())},play:function(b){var c=function(){clearTimeout(a.player.timer)},d=function(){c();if(a.current&&a.player.isActive)a.player.timer=setTimeout(a.next,a.current.playSpeed)},f=function(){c();i.unbind(".player");a.player.isActive=!1;a.trigger("onPlayEnd")};if(a.player.isActive||b&&!1===b[0])f();else if(a.current&&(a.current.loop||a.current.index<
8
+ a.group.length-1))a.player.isActive=!0,d(),i.bind({"onCancel.player onComplete.player onUpdate.player":d,"onClose.player":f,"onStart.player":c}),a.trigger("onPlayStart")},next:function(){a.current&&a.jumpto(a.current.index+1)},prev:function(){a.current&&a.jumpto(a.current.index-1)},jumpto:function(b){a.current&&(b=parseInt(b,10),1<a.group.length&&a.current.loop&&(b>=a.group.length?b=0:0>b&&(b=a.group.length-1)),"undefined"!==typeof a.group[b]&&(a.cancel(),a._start(b)))},reposition:function(b){a.isOpen&&
9
+ a.wrap.css(a._getPosition(b))},update:function(){a.isOpen&&(n||(o=setInterval(function(){if(n&&(n=!1,clearTimeout(o),a.current)){if(a.current.autoSize)a.inner.height("auto"),a.current.height=a.inner.height();a._setDimension();a.current.canGrow&&a.inner.height("auto");a.reposition();a.trigger("onUpdate")}},100)),n=!0)},toggle:function(){if(a.isOpen)a.current.fitToView=!a.current.fitToView,a.update()},hideLoading:function(){e("#fancybox-loading").remove()},showLoading:function(){a.hideLoading();e('<div id="fancybox-loading"></div>').click(a.cancel).appendTo("body")},
10
+ getViewport:function(){return{x:h.scrollLeft(),y:h.scrollTop(),w:h.width(),h:h.height()}},unbindEvents:function(){i.unbind(".fb");h.unbind(".fb")},bindEvents:function(){var b=a.current,c=b.keys;b&&(h.bind("resize.fb, orientationchange.fb",a.update),c&&i.bind("keydown.fb",function(b){-1<e.inArray(b.target.tagName.toLowerCase(),["input","textarea","select","button"])||(-1<e.inArray(b.keyCode,c.close)?(a.close(),b.preventDefault()):-1<e.inArray(b.keyCode,c.next)?(a.next(),b.preventDefault()):-1<e.inArray(b.keyCode,
11
+ c.prev)&&(a.prev(),b.preventDefault()))}),e.fn.mousewheel&&b.mouseWheel&&1<a.group.length&&a.wrap.bind("mousewheel.fb",function(b,c){if(0===e(b.target).get(0).clientHeight||e(b.target).get(0).scrollHeight===e(b.target).get(0).clientHeight)b.preventDefault(),a[0<c?"prev":"next"]()}))},trigger:function(b){var c,d=-1<e.inArray(b,["onCancel","beforeLoad","afterLoad"])?"coming":"current";if(a[d]){e.isFunction(a[d][b])&&(c=a[d][b].apply(a[d],Array.prototype.slice.call(arguments,1)));if(!1===c)return!1;
12
+ a[d].helpers&&e.each(a[d].helpers,function(c,d){if(d&&"undefined"!==typeof a.helpers[c]&&e.isFunction(a.helpers[c][b]))a.helpers[c][b](d)});e.event.trigger(b+".fb")}},isImage:function(a){return a&&a.match(/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i)},isSWF:function(a){return a&&a.match(/\.(swf)(.*)?$/i)},_start:function(b){var c=a.group[b]||null,d,f,g;coming=e.extend(!0,{},a.opts,e.isPlainObject(c)?c:{},{index:b,element:c});if("number"===typeof coming.margin)coming.margin=[coming.margin,coming.margin,coming.margin,
13
+ coming.margin];a.coming=coming;if(!1===a.trigger("beforeLoad"))a.coming=null;else{if(coming.content)c=coming.content;if("object"==typeof c&&(c.nodeType||c instanceof e))d=!0,coming.href=e(c).attr("href")||coming.href,coming.title=e(c).attr("title")||coming.title;f=coming.type;b=coming.href;c=coming.element;if(!f){if(b)d&&(g=e(c).data("fancybox-type"),!g&&c.className&&(g=(g=c.className.match(/fancybox\.(\w+)/))?g[1]:!1)),g?f=g:a.isImage(b)?f="image":a.isSWF(b)?f="swf":b.match(/^#/)?f="inline":coming.content=
14
+ b;f||(f=d?"inline":"html");coming.type=f}if(!coming.content)coming.content="inline"===f&&b?e(b):c;a.coming=coming;"image"===f?a._loadImage():"ajax"===f?a._loadAjax():!f||"inline"===f&&!coming.content.length?a._error():a._afterLoad()}},_error:function(){a.coming.type="html";a.coming.minHeight=0;a.coming.autoSize=!0;a.coming.content=a.coming.tpl.error;a._afterLoad()},_loadImage:function(){a.imgPreload=new Image;a.imgPreload.onload=function(){this.onload=this.onerror=null;a.coming.width=this.width;a.coming.height=
15
+ this.height;a._afterLoad()};a.imgPreload.onerror=function(){this.onload=this.onerror=null;a._error()};a.imgPreload.src=a.coming.href;a.imgPreload.complete||a.showLoading()},_loadAjax:function(){a.showLoading();a.ajaxLoad=e.ajax(e.extend({},a.coming.ajax,{url:a.coming.href,error:function(b,c,d){"abort"!==c&&0<b.status?(a.coming.content=d,a._error()):a.hideLoading()},success:function(b,c){if("success"===c)a.coming.content=b,a._afterLoad()}}))},_afterLoad:function(){a.hideLoading();if(!a.coming||!1===
16
+ a.trigger("afterLoad",a.current))a.coming=!1;else if(a.isOpened?(e(".fancybox-item").remove(),a.wrap.stop(!0).removeClass("fancybox-opened"),a.transitions[a.current.prevMethod]()):e(".fancybox-wrap").stop().trigger("onReset").remove(),a.isOpen=!1,a.current=a.coming,a.coming=!1,a.wrap=e(a.current.tpl.wrap).addClass(a.current.wrapCSS).appendTo("body"),a.outer=e(".fancybox-outer",a.wrap).css("padding",a.current.padding+"px"),a.inner=e(".fancybox-inner",a.wrap),a._setContent(),a.unbindEvents(),a.bindEvents(),
17
+ a.trigger("beforeShow"),a._setDimension(),a.isOpened)a.transitions[a.current.nextMethod]();else a.transitions[a.current.openMethod]()},_setContent:function(){var b,c,d=a.current,f=d.type;switch(f){case "inline":case "ajax":case "html":"inline"===f?(b=d.content.show().detach(),b.parent().hasClass("fancybox-inner")&&b.parents(".fancybox-wrap").trigger("onReset").remove(),e(a.wrap).bind("onReset",function(){b.appendTo("body").hide()})):b=d.content;if(d.autoSize)c=e('<div class="fancybox-tmp"></div>').appendTo(e("body")).append(b),
18
+ d.width=c.outerWidth(),d.height=c.outerHeight(!0),b=c.children().detach(),c.remove();break;case "image":b=d.tpl.image.replace("{href}",d.href);d.aspectRatio=!0;break;case "swf":b=d.tpl.swf.replace(/\{width\}/g,d.width).replace(/\{height\}/g,d.height).replace(/\{href\}/g,d.href);break;case "iframe":b=d.tpl.iframe.replace("{href}",d.href).replace("{scrolling}",d.scrolling).replace("{rnd}",(new Date).getTime())}if(-1<e.inArray(f,["image","swf","iframe"]))d.autoSize=!1,d.scrolling=!1;a.current=d;a.inner.append(b)},
19
+ _setDimension:function(){var b=a.getViewport(),c=a.current.margin,d=2*a.current.padding,f=a.current.width+d,g=a.current.height+d,j=a.current.width/a.current.height,l=a.current.maxWidth,k=a.current.maxHeight,h=a.current.minWidth,i=a.current.minHeight;b.w-=c[1]+c[3];b.h-=c[0]+c[2];-1<f.toString().indexOf("%")&&(f=b.w*parseFloat(f)/100);-1<g.toString().indexOf("%")&&(g=b.h*parseFloat(g)/100);a.current.fitToView&&(l=Math.min(b.w,l),k=Math.min(b.h,k));l=Math.max(h,l);k=Math.max(i,k);a.current.aspectRatio?
20
+ (f>l&&(f=l,g=(f-d)/j+d),g>k&&(g=k,f=(g-d)*j+d),f<h&&(f=h,g=(f-d)/j+d),g<i&&(g=i,f=(g-d)*j+d)):(f=Math.max(h,Math.min(f,l)),g=Math.max(i,Math.min(g,k)));f=Math.round(f);g=Math.round(g);e(a.wrap.add(a.outer).add(a.inner)).width("auto").height("auto");a.inner.width(f-d).height(g-d);a.wrap.width(f);c=a.wrap.height();if(f>l||c>k)for(;(f>l||c>k)&&f>h&&c>i;)g-=10,a.current.aspectRatio?(f=Math.round((g-d)*j+d),f<h&&(f=h,g=(f-d)/j+d)):f-=10,a.inner.width(f-d).height(g-d),a.wrap.width(f),c=a.wrap.height();
21
+ a.current.dim={width:f,height:c};a.current.canGrow=a.current.autoSize&&g>i&&g<k;a.current.canShrink=!1;a.current.canExpand=!1;if(f-d<a.current.width||g-d<a.current.height)a.current.canExpand=!0;else if((f>b.w||c>b.h)&&f>h&&g>i)a.current.canShrink=!0},_getPosition:function(b){var c=a.getViewport(),d=a.current.margin,f=a.wrap.width()+d[1]+d[3],e=a.wrap.height()+d[0]+d[2],j={position:"absolute",top:d[0]+c.y,left:d[3]+c.x};if(a.current.fixed&&(!b||!1===b[0])&&e<=c.h&&f<=c.w)j={position:"fixed",top:d[0],
22
+ left:d[3]};j.top=Math.ceil(Math.max(j.top,j.top+(c.h-e)*a.current.topRatio))+"px";j.left=Math.ceil(Math.max(j.left,j.left+0.5*(c.w-f)))+"px";return j},_afterZoomIn:function(){var b=a.current;a.isOpen=a.isOpened=!0;a.wrap.addClass("fancybox-opened").css("overflow","visible");a.update();a.inner.css("overflow","auto"===b.scrolling?"auto":"yes"===b.scrolling?"scroll":"hidden");b.closeClick&&a.inner.bind("click.fb",a.close);b.closeBtn&&e(a.current.tpl.closeBtn).appendTo(a.wrap).bind("click.fb",a.close);
23
+ b.arrows&&1<a.group.length&&((b.loop||0<b.index)&&e(b.tpl.prev).appendTo(a.wrap).bind("click.fb",a.prev),(b.loop||b.index<a.group.length-1)&&e(b.tpl.next).appendTo(a.wrap).bind("click.fb",a.next));a.trigger("afterShow");if(a.opts.autoPlay&&!a.player.isActive)a.opts.autoPlay=!1,a.play()},_afterZoomOut:function(){a.unbindEvents();a.trigger("afterClose");a.wrap.trigger("onReset").remove();e.extend(a,{group:{},opts:{},current:null,isOpened:!1,isOpen:!1,wrap:null,outer:null,inner:null})}});a.transitions=
24
+ {getOrigPosition:function(){var b=a.current.element,c={},d=50,f=50,g;b&&b.nodeName&&e(b).is(":visible")?(g=e(b).find("img:first"),g.length?(c=g.offset(),d=g.outerWidth(),f=g.outerHeight()):c=e(b).offset()):(b=a.getViewport(),c.top=b.y+0.5*(b.h-f),c.left=b.x+0.5*(b.w-d));return c={top:Math.ceil(c.top)+"px",left:Math.ceil(c.left)+"px",width:Math.ceil(d)+"px",height:Math.ceil(f)+"px"}},step:function(b,c){var d,f,e;if("width"===c.prop||"height"===c.prop)f=e=Math.ceil(b-2*a.current.padding),"height"===
25
+ c.prop&&(d=(b-c.start)/(c.end-c.start),c.start>c.end&&(d=1-d),f-=a.innerSpace*d,e-=a.outerSpace*d),a.inner[c.prop](f),a.outer[c.prop](e)},zoomIn:function(){var b,c;b=a.current.dim;c=b.height-2*a.current.padding;a.innerSpace=c-a.inner.height();a.outerSpace=c-a.outer.height();if("elastic"===a.current.openEffect){c=e.extend({},b,a._getPosition(!0));delete c.position;b=this.getOrigPosition();if(a.current.openOpacity)b.opacity=0,c.opacity=1;a.wrap.css(b).animate(c,{duration:a.current.openSpeed,easing:a.current.openEasing,
26
+ step:this.step,complete:a._afterZoomIn})}else a.wrap.css(e.extend({},a.current.dim,a._getPosition())),"fade"===a.current.openEffect?a.wrap.hide().fadeIn(a.current.openSpeed,a._afterZoomIn):a._afterZoomIn()},zoomOut:function(){var b;b=a.wrap.height()-2*a.current.padding;if("elastic"===a.current.closeEffect){"fixed"===a.wrap.css("position")&&a.wrap.css(a._getPosition(!0));a.innerSpace=b-a.inner.height();a.outerSpace=b-a.outer.height();b=this.getOrigPosition();if(a.current.closeOpacity)b.opacity=0;a.wrap.animate(b,
27
+ {duration:a.current.closeSpeed,easing:a.current.closeEasing,step:this.step,complete:a._afterZoomOut})}else a.wrap.fadeOut("fade"===a.current.closeEffect?a.current.Speed:0,a._afterZoomOut)},changeIn:function(){var b;"elastic"===a.current.nextEffect?(b=a._getPosition(!0),b.opacity=0,b.top=parseInt(b.top,10)-200+"px",a.wrap.css(b).animate({opacity:1,top:"+=200px"},{duration:a.current.nextSpeed,complete:a._afterZoomIn})):(a.wrap.css(a._getPosition()),"fade"===a.current.nextEffect?a.wrap.hide().fadeIn(a.current.nextSpeed,
28
+ a._afterZoomIn):a._afterZoomIn())},changeOut:function(){function b(){e(this).trigger("onReset").remove()}a.wrap.removeClass("fancybox-opened");"elastic"===a.current.prevEffect?a.wrap.animate({opacity:0,top:"+=200px"},{duration:a.current.prevSpeed,complete:b}):a.wrap.fadeOut("fade"===a.current.prevEffect?a.current.prevSpeed:0,b)}};a.helpers.overlay={overlay:null,update:function(){var a,c;this.overlay.width(0).height(0);e.browser.msie?(a=Math.max(m.documentElement.scrollWidth,m.body.scrollWidth),c=
29
+ Math.max(m.documentElement.offsetWidth,m.body.offsetWidth),a=a<c?h.width():a):a=i.width();this.overlay.width(a).height(i.height())},beforeShow:function(b){if(!this.overlay)this.overlay=e('<div id="fancybox-overlay"></div>').css(b.css||{background:"black"}).appendTo("body"),b.closeClick&&this.overlay.bind("click.fb",a.close),h.bind("resize.fb",e.proxy(this.update,this)),this.update(),this.overlay.fadeTo(b.speedIn||"fast",b.opacity||1)},onUpdate:function(){this.update()},afterClose:function(a){this.overlay&&
30
+ this.overlay.fadeOut(a.speedOut||"fast",function(){e(this).remove()});this.overlay=null}};a.helpers.title={beforeShow:function(b){var c;if(c=a.current.title||a.current.element.title||"")c=e('<div class="fancybox-title fancybox-title-'+b.type+'-wrap">'+c+"</div>").appendTo("body"),"float"===b.type&&(c.width(c.width()),c.wrapInner('<span class="child"></span>'),a.current.margin[2]+=Math.abs(parseInt(c.css("margin-bottom"),10))),c.appendTo("over"===b.type?a.inner:"outside"===b.type?a.wrap:a.outer)}};
31
+ e.fn.fancybox=function(b){function c(b){var c=[];b.preventDefault();this.rel&&""!==this.rel&&"nofollow"!==this.rel&&(c=f.length?e(f).filter('[rel="'+this.rel+'"]'):e('[rel="'+this.rel+'"]'));c.length?(d.index=c.index(this),a(c.get(),d)):a(this,d);return!1}var d=b||{},f=this.selector||"";f?i.undelegate(f,"click.fb-start").delegate(f,"click.fb-start",c):e(this).unbind("click.fb-start").bind("click.fb-start",c)}})(window,document,jQuery);
@@ -0,0 +1,84 @@
1
+ (function($){
2
+ /* hoverIntent by Brian Cherne */
3
+ $.fn.hoverIntent = function(f,g) {
4
+ // default configuration options
5
+ var cfg = {
6
+ sensitivity: 7,
7
+ interval: 100,
8
+ timeout: 0
9
+ };
10
+ // override configuration options with user supplied object
11
+ cfg = $.extend(cfg, g ? { over: f, out: g } : f );
12
+
13
+ // instantiate variables
14
+ // cX, cY = current X and Y position of mouse, updated by mousemove event
15
+ // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
16
+ var cX, cY, pX, pY;
17
+
18
+ // A private function for getting mouse position
19
+ var track = function(ev) {
20
+ cX = ev.pageX;
21
+ cY = ev.pageY;
22
+ };
23
+
24
+ // A private function for comparing current and previous mouse position
25
+ var compare = function(ev,ob) {
26
+ ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
27
+ // compare mouse positions to see if they've crossed the threshold
28
+ if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) {
29
+ $(ob).unbind("mousemove",track);
30
+ // set hoverIntent state to true (so mouseOut can be called)
31
+ ob.hoverIntent_s = 1;
32
+ return cfg.over.apply(ob,[ev]);
33
+ } else {
34
+ // set previous coordinates for next time
35
+ pX = cX; pY = cY;
36
+ // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
37
+ ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
38
+ }
39
+ };
40
+
41
+ // A private function for delaying the mouseOut function
42
+ var delay = function(ev,ob) {
43
+ ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
44
+ ob.hoverIntent_s = 0;
45
+ return cfg.out.apply(ob,[ev]);
46
+ };
47
+
48
+ // A private function for handling mouse 'hovering'
49
+ var handleHover = function(e) {
50
+ // next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut
51
+ var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
52
+ while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } }
53
+ if ( p == this ) { return false; }
54
+
55
+ // copy objects to be passed into t (required for event object to be passed in IE)
56
+ var ev = jQuery.extend({},e);
57
+ var ob = this;
58
+
59
+ // cancel hoverIntent timer if it exists
60
+ if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }
61
+
62
+ // else e.type == "onmouseover"
63
+ if (e.type == "mouseover") {
64
+ // set "previous" X and Y position based on initial entry point
65
+ pX = ev.pageX; pY = ev.pageY;
66
+ // update "current" X and Y position based on mousemove
67
+ $(ob).bind("mousemove",track);
68
+ // start polling interval (self-calling timeout) to compare mouse coordinates over time
69
+ if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}
70
+
71
+ // else e.type == "onmouseout"
72
+ } else {
73
+ // unbind expensive mousemove event
74
+ $(ob).unbind("mousemove",track);
75
+ // if hoverIntent state is true, then call the mouseOut function after the specified delay
76
+ if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
77
+ }
78
+ };
79
+
80
+ // bind the function to the two event listeners
81
+ return this.mouseover(handleHover).mouseout(handleHover);
82
+ };
83
+
84
+ })(jQuery);
@@ -0,0 +1,13 @@
1
+ /*! Copyright (c) 2011 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.6
9
+ *
10
+ * Requires: 1.2.2+
11
+ */
12
+ (function(d){function e(a){var b=a||window.event,c=[].slice.call(arguments,1),f=0,e=0,g=0,a=d.event.fix(b);a.type="mousewheel";b.wheelDelta&&(f=b.wheelDelta/120);b.detail&&(f=-b.detail/3);g=f;b.axis!==void 0&&b.axis===b.HORIZONTAL_AXIS&&(g=0,e=-1*f);b.wheelDeltaY!==void 0&&(g=b.wheelDeltaY/120);b.wheelDeltaX!==void 0&&(e=-1*b.wheelDeltaX/120);c.unshift(a,f,e,g);return(d.event.dispatch||d.event.handle).apply(this,c)}var c=["DOMMouseScroll","mousewheel"];if(d.event.fixHooks)for(var h=c.length;h;)d.event.fixHooks[c[--h]]=
13
+ d.event.mouseHooks;d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=c.length;a;)this.addEventListener(c[--a],e,false);else this.onmousewheel=e},teardown:function(){if(this.removeEventListener)for(var a=c.length;a;)this.removeEventListener(c[--a],e,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);
@@ -0,0 +1,62 @@
1
+ (function($){
2
+ $.fn.popupWindow = function(instanceSettings){
3
+
4
+ return this.each(function(){
5
+
6
+ $(this).click(function(){
7
+
8
+ $.fn.popupWindow.defaultSettings = {
9
+ centerBrowser:0, // center window over browser window? {1 (YES) or 0 (NO)}. overrides top and left
10
+ centerScreen:0, // center window over entire screen? {1 (YES) or 0 (NO)}. overrides top and left
11
+ height:500, // sets the height in pixels of the window.
12
+ left:0, // left position when the window appears.
13
+ location:0, // determines whether the address bar is displayed {1 (YES) or 0 (NO)}.
14
+ menubar:0, // determines whether the menu bar is displayed {1 (YES) or 0 (NO)}.
15
+ resizable:0, // whether the window can be resized {1 (YES) or 0 (NO)}. Can also be overloaded using resizable.
16
+ scrollbars:0, // determines whether scrollbars appear on the window {1 (YES) or 0 (NO)}.
17
+ status:0, // whether a status line appears at the bottom of the window {1 (YES) or 0 (NO)}.
18
+ width:500, // sets the width in pixels of the window.
19
+ windowName:null, // name of window set from the name attribute of the element that invokes the click
20
+ windowURL:null, // url used for the popup
21
+ top:0, // top position when the window appears.
22
+ toolbar:0 // determines whether a toolbar (includes the forward and back buttons) is displayed {1 (YES) or 0 (NO)}.
23
+ };
24
+
25
+ settings = $.extend({}, $.fn.popupWindow.defaultSettings, instanceSettings || {});
26
+
27
+ var windowFeatures = 'height=' + settings.height +
28
+ ',width=' + settings.width +
29
+ ',toolbar=' + settings.toolbar +
30
+ ',scrollbars=' + settings.scrollbars +
31
+ ',status=' + settings.status +
32
+ ',resizable=' + settings.resizable +
33
+ ',location=' + settings.location +
34
+ ',menuBar=' + settings.menubar;
35
+
36
+ settings.windowName = this.name || settings.windowName;
37
+ settings.windowURL = this.href || settings.windowURL;
38
+ var centeredY,centeredX;
39
+
40
+ if(settings.centerBrowser){
41
+
42
+ if ($.browser.msie) {//hacked together for IE browsers
43
+ centeredY = (window.screenTop - 120) + ((((document.documentElement.clientHeight + 120)/2) - (settings.height/2)));
44
+ centeredX = window.screenLeft + ((((document.body.offsetWidth + 20)/2) - (settings.width/2)));
45
+ }else{
46
+ centeredY = window.screenY + (((window.outerHeight/2) - (settings.height/2)));
47
+ centeredX = window.screenX + (((window.outerWidth/2) - (settings.width/2)));
48
+ }
49
+ window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + centeredX +',top=' + centeredY).focus();
50
+ }else if(settings.centerScreen){
51
+ centeredY = (screen.height - settings.height)/2;
52
+ centeredX = (screen.width - settings.width)/2;
53
+ window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + centeredX +',top=' + centeredY).focus();
54
+ }else{
55
+ window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + settings.left +',top=' + settings.top).focus();
56
+ }
57
+ return false;
58
+ });
59
+
60
+ });
61
+ };
62
+ })(jQuery);
@@ -0,0 +1,51 @@
1
+ /**
2
+ * jQuery Validation Plugin 1.9.0
3
+ *
4
+ * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
5
+ * http://docs.jquery.com/Plugins/Validation
6
+ *
7
+ * Copyright (c) 2006 - 2011 Jörn Zaefferer
8
+ *
9
+ * Dual licensed under the MIT and GPL licenses:
10
+ * http://www.opensource.org/licenses/mit-license.php
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ */
13
+ (function(c){c.extend(c.fn,{validate:function(a){if(this.length){var b=c.data(this[0],"validator");if(b)return b;this.attr("novalidate","novalidate");b=new c.validator(a,this[0]);c.data(this[0],"validator",b);if(b.settings.onsubmit){a=this.find("input, button");a.filter(".cancel").click(function(){b.cancelSubmit=true});b.settings.submitHandler&&a.filter(":submit").click(function(){b.submitButton=this});this.submit(function(d){function e(){if(b.settings.submitHandler){if(b.submitButton)var f=c("<input type='hidden'/>").attr("name",
14
+ b.submitButton.name).val(b.submitButton.value).appendTo(b.currentForm);b.settings.submitHandler.call(b,b.currentForm);b.submitButton&&f.remove();return false}return true}b.settings.debug&&d.preventDefault();if(b.cancelSubmit){b.cancelSubmit=false;return e()}if(b.form()){if(b.pendingRequest){b.formSubmitted=true;return false}return e()}else{b.focusInvalid();return false}})}return b}else a&&a.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing")},valid:function(){if(c(this[0]).is("form"))return this.validate().form();
15
+ else{var a=true,b=c(this[0].form).validate();this.each(function(){a&=b.element(this)});return a}},removeAttrs:function(a){var b={},d=this;c.each(a.split(/\s/),function(e,f){b[f]=d.attr(f);d.removeAttr(f)});return b},rules:function(a,b){var d=this[0];if(a){var e=c.data(d.form,"validator").settings,f=e.rules,g=c.validator.staticRules(d);switch(a){case "add":c.extend(g,c.validator.normalizeRule(b));f[d.name]=g;if(b.messages)e.messages[d.name]=c.extend(e.messages[d.name],b.messages);break;case "remove":if(!b){delete f[d.name];
16
+ return g}var h={};c.each(b.split(/\s/),function(j,i){h[i]=g[i];delete g[i]});return h}}d=c.validator.normalizeRules(c.extend({},c.validator.metadataRules(d),c.validator.classRules(d),c.validator.attributeRules(d),c.validator.staticRules(d)),d);if(d.required){e=d.required;delete d.required;d=c.extend({required:e},d)}return d}});c.extend(c.expr[":"],{blank:function(a){return!c.trim(""+a.value)},filled:function(a){return!!c.trim(""+a.value)},unchecked:function(a){return!a.checked}});c.validator=function(a,
17
+ b){this.settings=c.extend(true,{},c.validator.defaults,a);this.currentForm=b;this.init()};c.validator.format=function(a,b){if(arguments.length==1)return function(){var d=c.makeArray(arguments);d.unshift(a);return c.validator.format.apply(this,d)};if(arguments.length>2&&b.constructor!=Array)b=c.makeArray(arguments).slice(1);if(b.constructor!=Array)b=[b];c.each(b,function(d,e){a=a.replace(RegExp("\\{"+d+"\\}","g"),e)});return a};c.extend(c.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",
18
+ validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:c([]),errorLabelContainer:c([]),onsubmit:true,ignore:":hidden",ignoreTitle:false,onfocusin:function(a){this.lastActive=a;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass);this.addWrapper(this.errorsFor(a)).hide()}},onfocusout:function(a){if(!this.checkable(a)&&(a.name in this.submitted||!this.optional(a)))this.element(a)},
19
+ onkeyup:function(a){if(a.name in this.submitted||a==this.lastElement)this.element(a)},onclick:function(a){if(a.name in this.submitted)this.element(a);else a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(a,b,d){a.type==="radio"?this.findByName(a.name).addClass(b).removeClass(d):c(a).addClass(b).removeClass(d)},unhighlight:function(a,b,d){a.type==="radio"?this.findByName(a.name).removeClass(b).addClass(d):c(a).removeClass(b).addClass(d)}},setDefaults:function(a){c.extend(c.validator.defaults,
20
+ a)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:c.validator.format("Please enter no more than {0} characters."),
21
+ minlength:c.validator.format("Please enter at least {0} characters."),rangelength:c.validator.format("Please enter a value between {0} and {1} characters long."),range:c.validator.format("Please enter a value between {0} and {1}."),max:c.validator.format("Please enter a value less than or equal to {0}."),min:c.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){function a(e){var f=c.data(this[0].form,"validator"),g="on"+e.type.replace(/^validate/,
22
+ "");f.settings[g]&&f.settings[g].call(f,this[0],e)}this.labelContainer=c(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||c(this.currentForm);this.containers=c(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var b=this.groups={};c.each(this.settings.groups,function(e,f){c.each(f.split(/\s/),function(g,h){b[h]=e})});var d=
23
+ this.settings.rules;c.each(d,function(e,f){d[e]=c.validator.normalizeRule(f)});c(this.currentForm).validateDelegate("[type='text'], [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] ","focusin focusout keyup",a).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",
24
+ a);this.settings.invalidHandler&&c(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){this.checkForm();c.extend(this.submitted,this.errorMap);this.invalid=c.extend({},this.errorMap);this.valid()||c(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(a){this.lastElement=
25
+ a=this.validationTargetFor(this.clean(a));this.prepareElement(a);this.currentElements=c(a);var b=this.check(a);if(b)delete this.invalid[a.name];else this.invalid[a.name]=true;if(!this.numberOfInvalids())this.toHide=this.toHide.add(this.containers);this.showErrors();return b},showErrors:function(a){if(a){c.extend(this.errorMap,a);this.errorList=[];for(var b in a)this.errorList.push({message:a[b],element:this.findByName(b)[0]});this.successList=c.grep(this.successList,function(d){return!(d.name in a)})}this.settings.showErrors?
26
+ this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){c.fn.resetForm&&c(this.currentForm).resetForm();this.submitted={};this.lastElement=null;this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b=0,d;for(d in a)b++;return b},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return this.size()==
27
+ 0},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{c(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(a){}},findLastActive:function(){var a=this.lastActive;return a&&c.grep(this.errorList,function(b){return b.element.name==a.name}).length==1&&a},elements:function(){var a=this,b={};return c(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&
28
+ a.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in b||!a.objectLength(c(this).rules()))return false;return b[this.name]=true})},clean:function(a){return c(a)[0]},errors:function(){return c(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext)},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=c([]);this.toHide=c([]);this.currentElements=c([])},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers)},
29
+ prepareElement:function(a){this.reset();this.toHide=this.errorsFor(a)},check:function(a){a=this.validationTargetFor(this.clean(a));var b=c(a).rules(),d=false,e;for(e in b){var f={method:e,parameters:b[e]};try{var g=c.validator.methods[e].call(this,a.value.replace(/\r/g,""),a,f.parameters);if(g=="dependency-mismatch")d=true;else{d=false;if(g=="pending"){this.toHide=this.toHide.not(this.errorsFor(a));return}if(!g){this.formatAndAdd(a,f);return false}}}catch(h){this.settings.debug&&window.console&&console.log("exception occured when checking element "+
30
+ a.id+", check the '"+f.method+"' method",h);throw h;}}if(!d){this.objectLength(b)&&this.successList.push(a);return true}},customMetaMessage:function(a,b){if(c.metadata){var d=this.settings.meta?c(a).metadata()[this.settings.meta]:c(a).metadata();return d&&d.messages&&d.messages[b]}},customMessage:function(a,b){var d=this.settings.messages[a];return d&&(d.constructor==String?d:d[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(arguments[a]!==undefined)return arguments[a]},defaultMessage:function(a,
31
+ b){return this.findDefined(this.customMessage(a.name,b),this.customMetaMessage(a,b),!this.settings.ignoreTitle&&a.title||undefined,c.validator.messages[b],"<strong>Warning: No message defined for "+a.name+"</strong>")},formatAndAdd:function(a,b){var d=this.defaultMessage(a,b.method),e=/\$?\{(\d+)\}/g;if(typeof d=="function")d=d.call(this,b.parameters,a);else if(e.test(d))d=jQuery.format(d.replace(e,"{$1}"),b.parameters);this.errorList.push({message:d,element:a});this.errorMap[a.name]=d;this.submitted[a.name]=
32
+ d},addWrapper:function(a){if(this.settings.wrapper)a=a.add(a.parent(this.settings.wrapper));return a},defaultShowErrors:function(){for(var a=0;this.errorList[a];a++){var b=this.errorList[a];this.settings.highlight&&this.settings.highlight.call(this,b.element,this.settings.errorClass,this.settings.validClass);this.showLabel(b.element,b.message)}if(this.errorList.length)this.toShow=this.toShow.add(this.containers);if(this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);
33
+ if(this.settings.unhighlight){a=0;for(b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass)}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return c(this.errorList).map(function(){return this.element})},showLabel:function(a,b){var d=this.errorsFor(a);if(d.length){d.removeClass(this.settings.validClass).addClass(this.settings.errorClass);
34
+ d.attr("generated")&&d.html(b)}else{d=c("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(a),generated:true}).addClass(this.settings.errorClass).html(b||"");if(this.settings.wrapper)d=d.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();this.labelContainer.append(d).length||(this.settings.errorPlacement?this.settings.errorPlacement(d,c(a)):d.insertAfter(a))}if(!b&&this.settings.success){d.text("");typeof this.settings.success=="string"?d.addClass(this.settings.success):this.settings.success(d)}this.toShow=
35
+ this.toShow.add(d)},errorsFor:function(a){var b=this.idOrName(a);return this.errors().filter(function(){return c(this).attr("for")==b})},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(a){if(this.checkable(a))a=this.findByName(a.name).not(this.settings.ignore)[0];return a},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(a){var b=this.currentForm;return c(document.getElementsByName(a)).map(function(d,
36
+ e){return e.form==b&&e.name==a&&e||null})},getLength:function(a,b){switch(b.nodeName.toLowerCase()){case "select":return c("option:selected",b).length;case "input":if(this.checkable(b))return this.findByName(b.name).filter(":checked").length}return a.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):true},dependTypes:{"boolean":function(a){return a},string:function(a,b){return!!c(a,b.form).length},"function":function(a,b){return a(b)}},optional:function(a){return!c.validator.methods.required.call(this,
37
+ c.trim(a.value),a)&&"dependency-mismatch"},startRequest:function(a){if(!this.pending[a.name]){this.pendingRequest++;this.pending[a.name]=true}},stopRequest:function(a,b){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[a.name];if(b&&this.pendingRequest==0&&this.formSubmitted&&this.form()){c(this.currentForm).submit();this.formSubmitted=false}else if(!b&&this.pendingRequest==0&&this.formSubmitted){c(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=
38
+ false}},previousValue:function(a){return c.data(a,"previousValue")||c.data(a,"previousValue",{old:null,valid:true,message:this.defaultMessage(a,"remote")})}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(a,b){a.constructor==String?this.classRuleSettings[a]=b:c.extend(this.classRuleSettings,
39
+ a)},classRules:function(a){var b={};(a=c(a).attr("class"))&&c.each(a.split(" "),function(){this in c.validator.classRuleSettings&&c.extend(b,c.validator.classRuleSettings[this])});return b},attributeRules:function(a){var b={};a=c(a);for(var d in c.validator.methods){var e;if(e=d==="required"&&typeof c.fn.prop==="function"?a.prop(d):a.attr(d))b[d]=e;else if(a[0].getAttribute("type")===d)b[d]=true}b.maxlength&&/-1|2147483647|524288/.test(b.maxlength)&&delete b.maxlength;return b},metadataRules:function(a){if(!c.metadata)return{};
40
+ var b=c.data(a.form,"validator").settings.meta;return b?c(a).metadata()[b]:c(a).metadata()},staticRules:function(a){var b={},d=c.data(a.form,"validator");if(d.settings.rules)b=c.validator.normalizeRule(d.settings.rules[a.name])||{};return b},normalizeRules:function(a,b){c.each(a,function(d,e){if(e===false)delete a[d];else if(e.param||e.depends){var f=true;switch(typeof e.depends){case "string":f=!!c(e.depends,b.form).length;break;case "function":f=e.depends.call(b,b)}if(f)a[d]=e.param!==undefined?
41
+ e.param:true;else delete a[d]}});c.each(a,function(d,e){a[d]=c.isFunction(e)?e(b):e});c.each(["minlength","maxlength","min","max"],function(){if(a[this])a[this]=Number(a[this])});c.each(["rangelength","range"],function(){if(a[this])a[this]=[Number(a[this][0]),Number(a[this][1])]});if(c.validator.autoCreateRanges){if(a.min&&a.max){a.range=[a.min,a.max];delete a.min;delete a.max}if(a.minlength&&a.maxlength){a.rangelength=[a.minlength,a.maxlength];delete a.minlength;delete a.maxlength}}a.messages&&delete a.messages;
42
+ return a},normalizeRule:function(a){if(typeof a=="string"){var b={};c.each(a.split(/\s/),function(){b[this]=true});a=b}return a},addMethod:function(a,b,d){c.validator.methods[a]=b;c.validator.messages[a]=d!=undefined?d:c.validator.messages[a];b.length<3&&c.validator.addClassRules(a,c.validator.normalizeRule(a))},methods:{required:function(a,b,d){if(!this.depend(d,b))return"dependency-mismatch";switch(b.nodeName.toLowerCase()){case "select":return(a=c(b).val())&&a.length>0;case "input":if(this.checkable(b))return this.getLength(a,
43
+ b)>0;default:return c.trim(a).length>0}},remote:function(a,b,d){if(this.optional(b))return"dependency-mismatch";var e=this.previousValue(b);this.settings.messages[b.name]||(this.settings.messages[b.name]={});e.originalMessage=this.settings.messages[b.name].remote;this.settings.messages[b.name].remote=e.message;d=typeof d=="string"&&{url:d}||d;if(this.pending[b.name])return"pending";if(e.old===a)return e.valid;e.old=a;var f=this;this.startRequest(b);var g={};g[b.name]=a;c.ajax(c.extend(true,{url:d,
44
+ mode:"abort",port:"validate"+b.name,dataType:"json",data:g,success:function(h){f.settings.messages[b.name].remote=e.originalMessage;var j=h===true;if(j){var i=f.formSubmitted;f.prepareElement(b);f.formSubmitted=i;f.successList.push(b);f.showErrors()}else{i={};h=h||f.defaultMessage(b,"remote");i[b.name]=e.message=c.isFunction(h)?h(a):h;f.showErrors(i)}e.valid=j;f.stopRequest(b,j)}},d));return"pending"},minlength:function(a,b,d){return this.optional(b)||this.getLength(c.trim(a),b)>=d},maxlength:function(a,
45
+ b,d){return this.optional(b)||this.getLength(c.trim(a),b)<=d},rangelength:function(a,b,d){a=this.getLength(c.trim(a),b);return this.optional(b)||a>=d[0]&&a<=d[1]},min:function(a,b,d){return this.optional(b)||a>=d},max:function(a,b,d){return this.optional(b)||a<=d},range:function(a,b,d){return this.optional(b)||a>=d[0]&&a<=d[1]},email:function(a,b){return this.optional(b)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(a)},
46
+ url:function(a,b){return this.optional(b)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},
47
+ date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a))},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return"dependency-mismatch";if(/[^0-9 -]+/.test(a))return false;var d=0,e=0,f=false;a=a.replace(/\D/g,"");for(var g=a.length-1;g>=
48
+ 0;g--){e=a.charAt(g);e=parseInt(e,10);if(f)if((e*=2)>9)e-=9;d+=e;f=!f}return d%10==0},accept:function(a,b,d){d=typeof d=="string"?d.replace(/,/g,"|"):"png|jpe?g|gif";return this.optional(b)||a.match(RegExp(".("+d+")$","i"))},equalTo:function(a,b,d){d=c(d).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){c(b).valid()});return a==d.val()}}});c.format=c.validator.format})(jQuery);
49
+ (function(c){var a={};if(c.ajaxPrefilter)c.ajaxPrefilter(function(d,e,f){e=d.port;if(d.mode=="abort"){a[e]&&a[e].abort();a[e]=f}});else{var b=c.ajax;c.ajax=function(d){var e=("port"in d?d:c.ajaxSettings).port;if(("mode"in d?d:c.ajaxSettings).mode=="abort"){a[e]&&a[e].abort();return a[e]=b.apply(this,arguments)}return b.apply(this,arguments)}}})(jQuery);
50
+ (function(c){!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.handle.call(this,e)}c.event.special[b]={setup:function(){this.addEventListener(a,d,true)},teardown:function(){this.removeEventListener(a,d,true)},handler:function(e){arguments[0]=c.event.fix(e);arguments[0].type=b;return c.event.handle.apply(this,arguments)}}});c.extend(c.fn,{validateDelegate:function(a,
51
+ b,d){return this.bind(b,function(e){var f=c(e.target);if(f.is(a))return d.apply(f,arguments)})}})})(jQuery);
@@ -0,0 +1,4 @@
1
+ // Login screen javascript files
2
+ //
3
+ //= require jquery
4
+ //= require jquery_ujs
@@ -0,0 +1,4 @@
1
+ // Public screen javascript files
2
+ //
3
+ //= require jquery
4
+ //= require jquery_ujs
@@ -0,0 +1,8 @@
1
+ // Login screen javascript files
2
+ // For personalized layouts, use a ERB manifest
3
+ // * require_tree ./<%= Settings.layout %>
4
+ //
5
+ //= require jquery
6
+ //= require jquery_ujs
7
+ //= require_tree ../jquery
8
+ //= require_tree ./template
@@ -0,0 +1,21 @@
1
+ $(function() {
2
+
3
+ $('body').append("<div id='ajax-loader'></div>");
4
+ $('#ajax-loader').css( {
5
+ 'background': 'url(mdwa/ajax-loader.gif) no-repeat scroll 0 0 transparent',
6
+ 'display': 'none',
7
+ 'height': '42px',
8
+ 'left': '50%',
9
+ 'position': 'fixed',
10
+ 'text-align': 'center',
11
+ 'top': '50%',
12
+ 'width': '42px',
13
+ 'z-index': '10001'
14
+ });
15
+
16
+ $(document).bind("ajaxSend", function() {
17
+ $('#ajax-loader').show();
18
+ }).bind("ajaxComplete", function() {
19
+ $('#ajax-loader').hide();
20
+ });
21
+ });
@@ -0,0 +1,41 @@
1
+ $(function() {
2
+
3
+ // todo link toggle tem um atributo rel que identifica o elemento que vai ser feito display
4
+ $('a.toggle').live('click', function() {
5
+ $($(this).attr('rel')).toggle();
6
+ });
7
+
8
+ // tudo com a classe lightbox, abre o modalbox
9
+ $('.lightbox').fancybox({
10
+ closeClick: false,
11
+ autoSize: true
12
+ });
13
+
14
+ $('a#system_notice_close, #system_notice').live('click', function() {
15
+ $('#system_notice').fadeOut();
16
+ });
17
+
18
+ });
19
+
20
+ function checkOrUncheckAll( to_be_checked ){
21
+ var to_be_checked = to_be_checked || false;
22
+ $( ".cid" ).attr( "checked", to_be_checked );
23
+ }
24
+
25
+ function defineAction( form, action, confirmation ) {
26
+ var response = true;
27
+ if( confirmation ) {
28
+ response = confirm("Are you sure?");
29
+ }
30
+ if( response ) {
31
+ $( "#" + form ).attr( "action", action);
32
+ $( "#" + form ).submit();
33
+ }
34
+ }
35
+
36
+ function defineOrder( form, action, id ) {
37
+ $( "#" + form ).attr( "action", action);
38
+ $( "#cb" + id ).attr( "checked", true);
39
+ $( "#" + form ).submit();
40
+ }
41
+
@@ -0,0 +1,19 @@
1
+ $(function() {
2
+ $.each($('.titulo_clicavel'), function(index, value) {
3
+ if($(this).val() == '')
4
+ $(this).val($(this).attr('title'));
5
+ });
6
+ $('.titulo_clicavel').live({
7
+ blur: function() {
8
+ if($(this).val() == '') $(this).val($(this).attr('title'));
9
+ },
10
+ click: function() {
11
+ $(this).select();
12
+ if($(this).val() == $(this).attr('title')) $(this).val('');
13
+ },
14
+ focus: function() {
15
+ $(this).select();
16
+ if($(this).val() == $(this).attr('title')) $(this).val('');
17
+ }
18
+ });
19
+ });
@@ -0,0 +1,46 @@
1
+ $(function() {
2
+ $('form a.add_nested_fields').live('click', function() {
3
+ // Setup
4
+ var assoc = $(this).attr('data-association'); // Name of child
5
+ var content = $('#' + assoc + '_fields_blueprint').html(); // Fields template
6
+
7
+ // Make the context correct by replacing new_<parents> with the generated ID
8
+ // of each of the parent objects
9
+ var context = ($(this).closest('.fields').find('input:first').attr('name') || '').replace(new RegExp('\[[a-z]+\]$'), '');
10
+
11
+ // context will be something like this for a brand new form:
12
+ // project[tasks_attributes][1255929127459][assignments_attributes][1255929128105]
13
+ // or for an edit form:
14
+ // project[tasks_attributes][0][assignments_attributes][1]
15
+ if(context) {
16
+ var parent_names = context.match(/[a-z_]+_attributes/g) || [];
17
+ var parent_ids = context.match(/[0-9]+/g);
18
+
19
+ for(i = 0; i < parent_names.length; i++) {
20
+ if(parent_ids[i]) {
21
+ content = content.replace(
22
+ new RegExp('(\\[' + parent_names[i] + '\\])\\[.+?\\]', 'g'),
23
+ '$1[' + parent_ids[i] + ']'
24
+ )
25
+ }
26
+ }
27
+ }
28
+
29
+ // Make a unique ID for the new child
30
+ var regexp = new RegExp('new_' + assoc, 'g');
31
+ var new_id = new Date().getTime();
32
+ content = content.replace(regexp, new_id);
33
+
34
+ $(this).before(content);
35
+ return false;
36
+ });
37
+
38
+ $('form a.remove_nested_fields').live('click', function() {
39
+ var hidden_field = $(this).prev('input[type=hidden]')[0];
40
+ if(hidden_field) {
41
+ hidden_field.value = '1';
42
+ }
43
+ $(this).closest('.fields').hide();
44
+ return false;
45
+ });
46
+ });