Shortcodes Ultimate - Version 4.9.4

Version Description

  • Updated: Japanese translation
  • Updated: Polish translation
  • Fixed: minor fixes in shortcode settings window
  • Fixed: vulnerability in Examples preview. Added wp_nonce check. Thanks to Kacper Szurek
  • Fixed: vulnerability at Custom CSS page. Added wp_nonce check. Thanks to Ryan Satterfield
  • Removed: skins directory creation
Download this release

Release Info

Developer gn_themes
Plugin Icon 128x128 Shortcodes Ultimate
Version 4.9.4
Comparing to
See all releases

Code changes from version 4.9.3 to 4.9.4

assets/css/animate.css CHANGED
@@ -1,6 +1,6 @@
1
- @charset "UTF-8";/*!
2
- Animate.css - http://daneden.me/animate
3
- Licensed under the MIT license - http://opensource.org/licenses/MIT
4
-
5
- Copyright (c) 2013 Daniel Eden
6
- */.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;animation-duration:2s}@-webkit-keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);transform:translateY(-15px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);-ms-transform:translateY(-15px);transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;animation-name:bounce}@-webkit-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pulse{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.pulse{-webkit-animation-name:pulse;animation-name:pulse}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes rubberBand{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);-ms-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);-ms-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);-ms-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.shake{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);-ms-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);-ms-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);-ms-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);-ms-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@keyframes tada{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);-ms-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);-ms-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);-ms-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);-ms-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);transform:translateX(0%)}}@keyframes wobble{0%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);-ms-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);-ms-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);-ms-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);-ms-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);-ms-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);-ms-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);-ms-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);-ms-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);-ms-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}}@keyframes bounceOut{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);-ms-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes bounceOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes bounceOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-ms-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;-ms-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);-ms-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);-ms-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);-ms-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);-ms-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);-ms-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);-ms-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);-ms-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);-ms-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes slideOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes slideOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes slideOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}@-webkit-keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes slideOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);transform:translateY(700px);opacity:0}}@keyframes hinge{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-ms-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-ms-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);-ms-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);-ms-transform:translateY(700px);transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);-ms-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}.zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);-ms-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}@keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}.zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;transform-origin:center bottom}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}}.zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;transform-origin:left center}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);-ms-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center}}.zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;transform-origin:right center}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);-ms-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}}.zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;transform-origin:center top}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}}.zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp}
1
+ @charset "UTF-8";/*!
2
+ Animate.css - http://daneden.me/animate
3
+ Licensed under the MIT license - http://opensource.org/licenses/MIT
4
+
5
+ Copyright (c) 2013 Daniel Eden
6
+ */.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;animation-duration:2s}@-webkit-keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);transform:translateY(-15px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);-ms-transform:translateY(-15px);transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;animation-name:bounce}@-webkit-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pulse{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.pulse{-webkit-animation-name:pulse;animation-name:pulse}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes rubberBand{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);-ms-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);-ms-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);-ms-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.shake{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);-ms-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);-ms-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);-ms-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);-ms-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@keyframes tada{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);-ms-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);-ms-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);-ms-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);-ms-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);transform:translateX(0%)}}@keyframes wobble{0%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);-ms-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);-ms-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);-ms-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);-ms-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);-ms-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);-ms-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);-ms-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);-ms-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);-ms-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}}@keyframes bounceOut{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);-ms-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes bounceOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes bounceOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(-360deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-190deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(-170deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-ms-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(0deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;-ms-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);-ms-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);-ms-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);-ms-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);-ms-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);-ms-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);-ms-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);-ms-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);-ms-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes slideOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes slideOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes slideOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}@-webkit-keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes slideOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);transform:translateY(700px);opacity:0}}@keyframes hinge{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-ms-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-ms-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);-ms-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);-ms-transform:translateY(700px);transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);-ms-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}.zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);-ms-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}@keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}.zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;transform-origin:center bottom}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}}.zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;transform-origin:left center}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);-ms-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center}}.zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;transform-origin:right center}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);-ms-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}}.zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;transform-origin:center top}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}}.zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp}
assets/css/box-shortcodes.css CHANGED
@@ -1,548 +1,548 @@
1
- /*** Shortcodes Ultimate - box elements ***/
2
-
3
- /* Common styles
4
- ---------------------------------------------------------------*/
5
-
6
- .su-clearfix:before,
7
- .su-clearfix:after {
8
- display: table;
9
- content: " ";
10
- }
11
- .su-clearfix:after { clear: both; }
12
-
13
- /* Tabs + Tab
14
- ---------------------------------------------------------------*/
15
-
16
- .su-tabs {
17
- margin: 0 0 1.5em 0;
18
- padding: 3px;
19
- -webkit-border-radius: 3px;
20
- -moz-border-radius: 3px;
21
- border-radius: 3px;
22
- background: #eee;
23
- }
24
- .su-tabs-nav span {
25
- display: inline-block;
26
- margin-right: 3px;
27
- padding: 10px 15px;
28
- font-size: 13px;
29
- min-height: 40px;
30
- line-height: 20px;
31
- -webkit-border-top-left-radius: 3px;
32
- -moz-border-radius-topleft: 3px;
33
- border-top-left-radius: 3px;
34
- -webkit-border-top-right-radius: 3px;
35
- -moz-border-radius-topright: 3px;
36
- border-top-right-radius: 3px;
37
- color: #333;
38
- cursor: pointer;
39
- -webkit-transition: all .2s;
40
- -moz-transition: all .2s;
41
- -o-transition: all .2s;
42
- transition: all .2s;
43
- }
44
- .su-tabs-nav span:hover { background: #f5f5f5; }
45
- .su-tabs-nav span.su-tabs-current { background: #fff; cursor: default; }
46
- .su-tabs-nav span.su-tabs-disabled {
47
- opacity: 0.5;
48
- filter: alpha(opacity=50);
49
- cursor: default;
50
- }
51
- .su-tabs-pane {
52
- padding: 15px;
53
- font-size: 13px;
54
- -webkit-border-bottom-right-radius: 3px;
55
- -moz-border-radius-bottomright: 3px;
56
- border-bottom-right-radius: 3px;
57
- -webkit-border-bottom-left-radius: 3px;
58
- -moz-border-radius-bottomleft: 3px;
59
- border-bottom-left-radius: 3px;
60
- background: #fff;
61
- color: #333;
62
- }
63
- .su-tabs-vertical:before,
64
- .su-tabs-vertical:after {
65
- content: " ";
66
- display: table;
67
- }
68
- .su-tabs-vertical:after { clear: both; }
69
- .su-tabs-vertical .su-tabs-nav {
70
- float: left;
71
- width: 30%;
72
- }
73
- .su-tabs-vertical .su-tabs-nav span {
74
- display: block;
75
- margin-right: 0;
76
- -webkit-border-radius: 0;
77
- -moz-border-radius: 0;
78
- border-radius: 0;
79
- -webkit-border-top-left-radius: 3px;
80
- -moz-border-radius-topleft: 3px;
81
- border-top-left-radius: 3px;
82
- -webkit-border-bottom-left-radius: 3px;
83
- -moz-border-radius-bottomleft: 3px;
84
- border-bottom-left-radius: 3px;
85
- }
86
- .su-tabs-vertical .su-tabs-panes {
87
- float: left;
88
- width: 70%;
89
- }
90
- .su-tabs-vertical .su-tabs-pane {
91
- -webkit-border-radius: 0;
92
- -moz-border-radius: 0;
93
- border-radius: 0;
94
- -webkit-border-top-right-radius: 3px;
95
- -webkit-border-bottom-right-radius: 3px;
96
- -moz-border-radius-topright: 3px;
97
- -moz-border-radius-bottomright: 3px;
98
- border-top-right-radius: 3px;
99
- border-bottom-right-radius: 3px;
100
- }
101
- .su-tabs-nav,
102
- .su-tabs-nav span,
103
- .su-tabs-panes,
104
- .su-tabs-pane {
105
- -webkit-box-sizing: border-box !important;
106
- -moz-box-sizing: border-box !important;
107
- box-sizing: border-box !important;
108
- }
109
- /* Styles for screens that are less than 768px */
110
- @media only screen and (max-width: 768px) {
111
- .su-tabs-nav span { display: block; }
112
- .su-tabs-vertical .su-tabs-nav {
113
- float: none;
114
- width: auto;
115
- }
116
- .su-tabs-vertical .su-tabs-panes {
117
- float: none;
118
- width: auto;
119
- }
120
- }
121
-
122
- /* Spoiler + Accordion
123
- ---------------------------------------------------------------*/
124
-
125
- .su-spoiler { margin-bottom: 1.5em; }
126
- .su-spoiler .su-spoiler:last-child { margin-bottom: 0; }
127
- .su-accordion { margin-bottom: 1.5em; }
128
- .su-accordion .su-spoiler { margin-bottom: 0.5em; }
129
- .su-spoiler-title {
130
- position: relative;
131
- cursor: pointer;
132
- min-height: 20px;
133
- line-height: 20px;
134
- padding: 7px 7px 7px 34px;
135
- font-weight: bold;
136
- font-size: 13px;
137
- }
138
- .su-spoiler-icon {
139
- position: absolute;
140
- left: 7px;
141
- top: 7px;
142
- display: block;
143
- width: 20px;
144
- height: 20px;
145
- line-height: 21px;
146
- text-align: center;
147
- font-size: 14px;
148
- font-family: FontAwesome;
149
- font-weight: normal;
150
- font-style: normal;
151
- -webkit-font-smoothing: antialiased;
152
- *margin-right: .3em;
153
- }
154
- .su-spoiler-content {
155
- padding: 14px;
156
- -webkit-transition: padding-top .2s;
157
- -moz-transition: padding-top .2s;
158
- -o-transition: padding-top .2s;
159
- transition: padding-top .2s;
160
- -ie-transition: padding-top .2s;
161
- }
162
- .su-spoiler.su-spoiler-closed > .su-spoiler-content {
163
- height: 0;
164
- margin: 0;
165
- padding: 0;
166
- overflow: hidden;
167
- border: none;
168
- opacity: 0;
169
- }
170
- .su-spoiler-icon-plus .su-spoiler-icon:before { content: "\f068"; }
171
- .su-spoiler-icon-plus.su-spoiler-closed .su-spoiler-icon:before { content: "\f067"; }
172
- .su-spoiler-icon-plus-circle .su-spoiler-icon:before { content: "\f056"; }
173
- .su-spoiler-icon-plus-circle.su-spoiler-closed .su-spoiler-icon:before { content: "\f055"; }
174
- .su-spoiler-icon-plus-square-1 .su-spoiler-icon:before { content: "\f146"; }
175
- .su-spoiler-icon-plus-square-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f0fe"; }
176
- .su-spoiler-icon-plus-square-2 .su-spoiler-icon:before { content: "\f117"; }
177
- .su-spoiler-icon-plus-square-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f116"; }
178
- .su-spoiler-icon-arrow .su-spoiler-icon:before { content: "\f063"; }
179
- .su-spoiler-icon-arrow.su-spoiler-closed .su-spoiler-icon:before { content: "\f061"; }
180
- .su-spoiler-icon-arrow-circle-1 .su-spoiler-icon:before { content: "\f0ab"; }
181
- .su-spoiler-icon-arrow-circle-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f0a9"; }
182
- .su-spoiler-icon-arrow-circle-2 .su-spoiler-icon:before { content: "\f01a"; }
183
- .su-spoiler-icon-arrow-circle-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f18e"; }
184
- .su-spoiler-icon-chevron .su-spoiler-icon:before { content: "\f078"; }
185
- .su-spoiler-icon-chevron.su-spoiler-closed .su-spoiler-icon:before { content: "\f054"; }
186
- .su-spoiler-icon-chevron-circle .su-spoiler-icon:before { content: "\f13a"; }
187
- .su-spoiler-icon-chevron-circle.su-spoiler-closed .su-spoiler-icon:before { content: "\f138"; }
188
- .su-spoiler-icon-caret .su-spoiler-icon:before { content: "\f0d7"; }
189
- .su-spoiler-icon-caret.su-spoiler-closed .su-spoiler-icon:before { content: "\f0da"; }
190
- .su-spoiler-icon-caret-square .su-spoiler-icon:before { content: "\f150"; }
191
- .su-spoiler-icon-caret-square.su-spoiler-closed .su-spoiler-icon:before { content: "\f152"; }
192
- .su-spoiler-icon-folder-1 .su-spoiler-icon:before { content: "\f07c"; }
193
- .su-spoiler-icon-folder-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f07b"; }
194
- .su-spoiler-icon-folder-2 .su-spoiler-icon:before { content: "\f115"; }
195
- .su-spoiler-icon-folder-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f114"; }
196
- .su-spoiler-style-default { }
197
- .su-spoiler-style-default > .su-spoiler-title {
198
- padding-left: 27px;
199
- padding-right: 0;
200
- }
201
- .su-spoiler-style-default > .su-spoiler-title > .su-spoiler-icon { left: 0; }
202
- .su-spoiler-style-default > .su-spoiler-content { padding: 1em 0 1em 27px; }
203
- .su-spoiler-style-fancy {
204
- border: 1px solid #ccc;
205
- -webkit-border-radius: 10px;
206
- -moz-border-radius: 10px;
207
- border-radius: 10px;
208
- background: #fff;
209
- color: #333;
210
- }
211
- .su-spoiler-style-fancy > .su-spoiler-title {
212
- border-bottom: 1px solid #ccc;
213
- -webkit-border-radius: 10px;
214
- -moz-border-radius: 10px;
215
- border-radius: 10px;
216
- background: #f0f0f0;
217
- font-size: 0.9em;
218
- }
219
- .su-spoiler-style-fancy.su-spoiler-closed > .su-spoiler-title { border: none; }
220
- .su-spoiler-style-fancy > .su-spoiler-content {
221
- -webkit-border-radius: 10px;
222
- -moz-border-radius: 10px;
223
- border-radius: 10px;
224
- }
225
- .su-spoiler-style-simple {
226
- border-top: 1px solid #ccc;
227
- border-bottom: 1px solid #ccc;
228
- }
229
- .su-spoiler-style-simple > .su-spoiler-title {
230
- padding: 5px 10px;
231
- background: #f0f0f0;
232
- color: #333;
233
- font-size: 0.9em;
234
- }
235
- .su-spoiler-style-simple > .su-spoiler-title > .su-spoiler-icon { display: none; }
236
- .su-spoiler-style-simple > .su-spoiler-content {
237
- padding: 1em 10px;
238
- background: #fff;
239
- color: #333;
240
- }
241
-
242
- /* Quote
243
- ---------------------------------------------------------------*/
244
-
245
- .su-quote-style-default {
246
- position: relative;
247
- margin-bottom: 1.5em;
248
- padding: 0.5em 3em;
249
- font-style: italic;
250
- }
251
- .su-quote-style-default.su-quote-has-cite { margin-bottom: 3em; }
252
- .su-quote-style-default:before,
253
- .su-quote-style-default:after {
254
- position: absolute;
255
- display: block;
256
- width: 20px;
257
- height: 20px;
258
- background-image: url('../images/quote.png');
259
- content: '';
260
- }
261
- .su-quote-style-default:before {
262
- top: 0;
263
- left: 0;
264
- background-position: 0 0;
265
- }
266
- .su-quote-style-default:after {
267
- right: 0;
268
- bottom: 0;
269
- background-position: -20px 0;
270
- }
271
- .su-quote-style-default .su-quote-cite {
272
- position: absolute;
273
- right: 4em;
274
- bottom: -1.5em;
275
- font-style: normal;
276
- }
277
- .su-quote-style-default .su-quote-cite:before { content: "\2014\0000a0"; }
278
- .su-quote-style-default .su-quote-cite a { text-decoration: underline; }
279
-
280
- /* Pullquote
281
- ---------------------------------------------------------------*/
282
-
283
- .su-pullquote {
284
- display: block;
285
- width: 30%;
286
- padding: 0.5em 1em;
287
- }
288
- .su-pullquote-align-left {
289
- margin: 0.5em 1.5em 1em 0;
290
- padding-left: 0;
291
- float: left;
292
- border-right: 5px solid #eee;
293
- }
294
- .su-pullquote-align-right {
295
- margin: 0.5em 0 1em 1.5em;
296
- padding-right: 0;
297
- float: right;
298
- border-left: 5px solid #eee;
299
- }
300
-
301
- /* Row + Column
302
- ---------------------------------------------------------------*/
303
-
304
- .su-row {
305
- clear: both;
306
- zoom: 1;
307
- margin-bottom: 1.5em;
308
- }
309
- .su-row:before,
310
- .su-row:after {
311
- display: table;
312
- content: "";
313
- }
314
- .su-row:after { clear: both; }
315
- .su-column {
316
- display: block;
317
- margin: 0 4% 0 0;
318
- float: left;
319
- -webkit-box-sizing: border-box;
320
- -moz-box-sizing: border-box;
321
- box-sizing: border-box;
322
- }
323
- .su-column-last { margin-right: 0; }
324
- .su-row .su-column { margin: 0 0 0 4%; }
325
- .su-row .su-column.su-column-size-1-1 { margin-left: 0; margin-right: 0; }
326
- .su-row .su-column:first-child { margin-left: 0; }
327
- .su-column-centered {
328
- margin-right: auto !important;
329
- margin-left: auto !important;
330
- float: none !important;
331
- }
332
- .su-column img,
333
- .su-column iframe,
334
- .su-column object,
335
- .su-column embed { max-width: 100%; }
336
- @media only screen {
337
- [class*="su-column"] + [class*="su-column"]:last-child { float: right; }
338
- }
339
- .su-column-size-1-1 { width: 100%; }
340
- .su-column-size-1-2 { width: 48%; }
341
- .su-column-size-1-3 { width: 30.66%; }
342
- .su-column-size-2-3 { width: 65.33%; }
343
- .su-column-size-1-4 { width: 22%; }
344
- .su-column-size-3-4 { width: 74%; }
345
- .su-column-size-1-5 { width: 16.8%; }
346
- .su-column-size-2-5 { width: 37.6%; }
347
- .su-column-size-3-5 { width: 58.4%; }
348
- .su-column-size-4-5 { width: 79.2%; }
349
- .su-column-size-1-6 { width: 13.33%; }
350
- .su-column-size-5-6 { width: 82.66%; }
351
- /* Styles for screens that are less than 768px */
352
- @media only screen and (max-width: 768px) {
353
- .su-column {
354
- width: 100% !important;
355
- margin: 0 0 1.5em 0 !important;
356
- float: none !important;
357
- }
358
- .su-row .su-column:last-child {
359
- margin-bottom: 0 !important;
360
- }
361
- }
362
-
363
- /* Service
364
- ---------------------------------------------------------------*/
365
-
366
- .su-service {
367
- position: relative;
368
- margin: 0 0 1.5em 0;
369
- }
370
- .su-service-title {
371
- display: block;
372
- margin-bottom: 0.5em;
373
- color: #333;
374
- font-weight: bold;
375
- font-size: 1.1em;
376
- }
377
- .su-service-title img {
378
- position: absolute;
379
- top: 0;
380
- left: 0;
381
- display: block !important;
382
- margin: 0 !important;
383
- padding: 0 !important;
384
- border: none !important;
385
- -webkit-box-shadow: none !important;
386
- -moz-box-shadow: none !important;
387
- box-shadow: none !important;
388
- }
389
- .su-service-title i {
390
- position: absolute;
391
- top: 0;
392
- left: 0;
393
- display: block !important;
394
- width: 1em;
395
- height: 1em;
396
- text-align: center;
397
- line-height: 1em;
398
- }
399
- .su-service-content { line-height: 1.4; }
400
-
401
- /* Box
402
- ---------------------------------------------------------------*/
403
-
404
- .su-box {
405
- margin: 0 0 1.5em 0;
406
- border-width: 2px;
407
- border-style: solid;
408
- }
409
- .su-box-title {
410
- display: block;
411
- padding: 0.5em 1em;
412
- font-weight: bold;
413
- font-size: 1.1em;
414
- }
415
- .su-box-content {
416
- background-color: #fff;
417
- color: #444;
418
- padding: 1em;
419
- }
420
- .su-box-style-soft .su-box-title {
421
- background-image: url('../images/styles/style-soft.png');
422
- background-position: 0 0;
423
- background-repeat: repeat-x;
424
- }
425
- .su-box-style-glass .su-box-title {
426
- background-image: url('../images/styles/style-glass.png');
427
- background-position: 0 50%;
428
- background-repeat: repeat-x;
429
- }
430
- .su-box-style-bubbles .su-box-title {
431
- background-image: url('../images/styles/style-bubbles.png');
432
- background-position: 0 50%;
433
- background-repeat: repeat-x;
434
- }
435
- .su-box-style-noise .su-box-title {
436
- background-image: url('../images/styles/style-noise.png');
437
- background-position: 0 0;
438
- background-repeat: repeat-x;
439
- }
440
-
441
- /* Note
442
- ---------------------------------------------------------------*/
443
-
444
- .su-note {
445
- margin: 0 0 1.5em 0;
446
- border-width: 1px;
447
- border-style: solid;
448
- }
449
- .su-note-inner {
450
- padding: 1em;
451
- border-width: 1px;
452
- border-style: solid;
453
- }
454
-
455
- /* Expand
456
- ---------------------------------------------------------------*/
457
-
458
- .su-expand { margin: 0 0 1.5em 0; }
459
- .su-expand-content { overflow: hidden; }
460
- .su-expand-link {
461
- margin-top: 0.5em;
462
- cursor: pointer;
463
- }
464
- .su-expand-link:hover {
465
- opacity: 0.7;
466
- filter: alpha(opacity=70);
467
- }
468
- .su-expand-link a,
469
- .su-expand-link a:hover,
470
- .su-expand-link a:active,
471
- .su-expand-link a:visited,
472
- .su-expand-link a:focus {
473
- display: inline;
474
- text-decoration: none;
475
- background: transparent;
476
- border: none;
477
- }
478
- .su-expand-link-style-default .su-expand-link a,
479
- .su-expand-link-style-default .su-expand-link a:hover { text-decoration: none; }
480
- .su-expand-link-style-underlined .su-expand-link span { text-decoration: underline; }
481
- .su-expand-link-style-dotted .su-expand-link span { border-bottom: 1px dotted #333; }
482
- .su-expand-link-style-dashed .su-expand-link span { border-bottom: 1px dashed #333; }
483
- .su-expand-link-style-button .su-expand-link a {
484
- display: inline-block;
485
- margin-top: 0.2em;
486
- padding: 0.2em 0.4em;
487
- border: 2px solid #333;
488
- }
489
- .su-expand-link-more { display: none; }
490
- .su-expand-link-less { display: block; }
491
- .su-expand-collapsed .su-expand-link-more { display: block; }
492
- .su-expand-collapsed .su-expand-link-less { display: none; }
493
- .su-expand-link i {
494
- display: inline-block;
495
- margin: 0 0.3em 0 0;
496
- vertical-align: middle;
497
- color: inherit;
498
- }
499
- .su-expand-link img {
500
- display: inline-block;
501
- width: 1em;
502
- height: 1em;
503
- margin: 0 0.3em 0 0;
504
- vertical-align: middle;
505
- }
506
-
507
- /* Lightbox content
508
- ---------------------------------------------------------------*/
509
-
510
- .su-lightbox-content {
511
- position: relative;
512
- margin: 0 auto;
513
- }
514
- .mfp-content .su-lightbox-content,
515
- #su-generator .su-lightbox-content { display: block !important; }
516
- .su-lightbox-content-preview {
517
- width: 100%;
518
- min-height: 300px;
519
- background: #444;
520
- overflow: hidden;
521
- }
522
- .su-lightbox-content h1,
523
- .su-lightbox-content h2,
524
- .su-lightbox-content h3,
525
- .su-lightbox-content h4,
526
- .su-lightbox-content h5,
527
- .su-lightbox-content h6 { color: inherit; }
528
-
529
- /* Common margin resets for box elements
530
- ---------------------------------------------------------------*/
531
-
532
- .su-column-inner > *:first-child,
533
- .su-accordion > *:first-child,
534
- .su-spoiler-content > *:first-child,
535
- .su-service-content > *:first-child,
536
- .su-box-content > *:first-child,
537
- .su-note-inner > *:first-child,
538
- .su-expand-content > *:first-child,
539
- .su-lightbox-content > *:first-child { margin-top: 0; }
540
- .su-column-inner > *:last-child,
541
- .su-tabs-pane > *:last-child,
542
- .su-accordion > *:last-child,
543
- .su-spoiler-content > *:last-child,
544
- .su-service-content > *:last-child,
545
- .su-box-content > *:last-child,
546
- .su-note-inner > *:last-child,
547
- .su-expand-content > *:last-child,
548
- .su-lightbox-content > *:last-child { margin-bottom: 0; }
1
+ /*** Shortcodes Ultimate - box elements ***/
2
+
3
+ /* Common styles
4
+ ---------------------------------------------------------------*/
5
+
6
+ .su-clearfix:before,
7
+ .su-clearfix:after {
8
+ display: table;
9
+ content: " ";
10
+ }
11
+ .su-clearfix:after { clear: both; }
12
+
13
+ /* Tabs + Tab
14
+ ---------------------------------------------------------------*/
15
+
16
+ .su-tabs {
17
+ margin: 0 0 1.5em 0;
18
+ padding: 3px;
19
+ -webkit-border-radius: 3px;
20
+ -moz-border-radius: 3px;
21
+ border-radius: 3px;
22
+ background: #eee;
23
+ }
24
+ .su-tabs-nav span {
25
+ display: inline-block;
26
+ margin-right: 3px;
27
+ padding: 10px 15px;
28
+ font-size: 13px;
29
+ min-height: 40px;
30
+ line-height: 20px;
31
+ -webkit-border-top-left-radius: 3px;
32
+ -moz-border-radius-topleft: 3px;
33
+ border-top-left-radius: 3px;
34
+ -webkit-border-top-right-radius: 3px;
35
+ -moz-border-radius-topright: 3px;
36
+ border-top-right-radius: 3px;
37
+ color: #333;
38
+ cursor: pointer;
39
+ -webkit-transition: all .2s;
40
+ -moz-transition: all .2s;
41
+ -o-transition: all .2s;
42
+ transition: all .2s;
43
+ }
44
+ .su-tabs-nav span:hover { background: #f5f5f5; }
45
+ .su-tabs-nav span.su-tabs-current { background: #fff; cursor: default; }
46
+ .su-tabs-nav span.su-tabs-disabled {
47
+ opacity: 0.5;
48
+ filter: alpha(opacity=50);
49
+ cursor: default;
50
+ }
51
+ .su-tabs-pane {
52
+ padding: 15px;
53
+ font-size: 13px;
54
+ -webkit-border-bottom-right-radius: 3px;
55
+ -moz-border-radius-bottomright: 3px;
56
+ border-bottom-right-radius: 3px;
57
+ -webkit-border-bottom-left-radius: 3px;
58
+ -moz-border-radius-bottomleft: 3px;
59
+ border-bottom-left-radius: 3px;
60
+ background: #fff;
61
+ color: #333;
62
+ }
63
+ .su-tabs-vertical:before,
64
+ .su-tabs-vertical:after {
65
+ content: " ";
66
+ display: table;
67
+ }
68
+ .su-tabs-vertical:after { clear: both; }
69
+ .su-tabs-vertical .su-tabs-nav {
70
+ float: left;
71
+ width: 30%;
72
+ }
73
+ .su-tabs-vertical .su-tabs-nav span {
74
+ display: block;
75
+ margin-right: 0;
76
+ -webkit-border-radius: 0;
77
+ -moz-border-radius: 0;
78
+ border-radius: 0;
79
+ -webkit-border-top-left-radius: 3px;
80
+ -moz-border-radius-topleft: 3px;
81
+ border-top-left-radius: 3px;
82
+ -webkit-border-bottom-left-radius: 3px;
83
+ -moz-border-radius-bottomleft: 3px;
84
+ border-bottom-left-radius: 3px;
85
+ }
86
+ .su-tabs-vertical .su-tabs-panes {
87
+ float: left;
88
+ width: 70%;
89
+ }
90
+ .su-tabs-vertical .su-tabs-pane {
91
+ -webkit-border-radius: 0;
92
+ -moz-border-radius: 0;
93
+ border-radius: 0;
94
+ -webkit-border-top-right-radius: 3px;
95
+ -webkit-border-bottom-right-radius: 3px;
96
+ -moz-border-radius-topright: 3px;
97
+ -moz-border-radius-bottomright: 3px;
98
+ border-top-right-radius: 3px;
99
+ border-bottom-right-radius: 3px;
100
+ }
101
+ .su-tabs-nav,
102
+ .su-tabs-nav span,
103
+ .su-tabs-panes,
104
+ .su-tabs-pane {
105
+ -webkit-box-sizing: border-box !important;
106
+ -moz-box-sizing: border-box !important;
107
+ box-sizing: border-box !important;
108
+ }
109
+ /* Styles for screens that are less than 768px */
110
+ @media only screen and (max-width: 768px) {
111
+ .su-tabs-nav span { display: block; }
112
+ .su-tabs-vertical .su-tabs-nav {
113
+ float: none;
114
+ width: auto;
115
+ }
116
+ .su-tabs-vertical .su-tabs-panes {
117
+ float: none;
118
+ width: auto;
119
+ }
120
+ }
121
+
122
+ /* Spoiler + Accordion
123
+ ---------------------------------------------------------------*/
124
+
125
+ .su-spoiler { margin-bottom: 1.5em; }
126
+ .su-spoiler .su-spoiler:last-child { margin-bottom: 0; }
127
+ .su-accordion { margin-bottom: 1.5em; }
128
+ .su-accordion .su-spoiler { margin-bottom: 0.5em; }
129
+ .su-spoiler-title {
130
+ position: relative;
131
+ cursor: pointer;
132
+ min-height: 20px;
133
+ line-height: 20px;
134
+ padding: 7px 7px 7px 34px;
135
+ font-weight: bold;
136
+ font-size: 13px;
137
+ }
138
+ .su-spoiler-icon {
139
+ position: absolute;
140
+ left: 7px;
141
+ top: 7px;
142
+ display: block;
143
+ width: 20px;
144
+ height: 20px;
145
+ line-height: 21px;
146
+ text-align: center;
147
+ font-size: 14px;
148
+ font-family: FontAwesome;
149
+ font-weight: normal;
150
+ font-style: normal;
151
+ -webkit-font-smoothing: antialiased;
152
+ *margin-right: .3em;
153
+ }
154
+ .su-spoiler-content {
155
+ padding: 14px;
156
+ -webkit-transition: padding-top .2s;
157
+ -moz-transition: padding-top .2s;
158
+ -o-transition: padding-top .2s;
159
+ transition: padding-top .2s;
160
+ -ie-transition: padding-top .2s;
161
+ }
162
+ .su-spoiler.su-spoiler-closed > .su-spoiler-content {
163
+ height: 0;
164
+ margin: 0;
165
+ padding: 0;
166
+ overflow: hidden;
167
+ border: none;
168
+ opacity: 0;
169
+ }
170
+ .su-spoiler-icon-plus .su-spoiler-icon:before { content: "\f068"; }
171
+ .su-spoiler-icon-plus.su-spoiler-closed .su-spoiler-icon:before { content: "\f067"; }
172
+ .su-spoiler-icon-plus-circle .su-spoiler-icon:before { content: "\f056"; }
173
+ .su-spoiler-icon-plus-circle.su-spoiler-closed .su-spoiler-icon:before { content: "\f055"; }
174
+ .su-spoiler-icon-plus-square-1 .su-spoiler-icon:before { content: "\f146"; }
175
+ .su-spoiler-icon-plus-square-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f0fe"; }
176
+ .su-spoiler-icon-plus-square-2 .su-spoiler-icon:before { content: "\f117"; }
177
+ .su-spoiler-icon-plus-square-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f116"; }
178
+ .su-spoiler-icon-arrow .su-spoiler-icon:before { content: "\f063"; }
179
+ .su-spoiler-icon-arrow.su-spoiler-closed .su-spoiler-icon:before { content: "\f061"; }
180
+ .su-spoiler-icon-arrow-circle-1 .su-spoiler-icon:before { content: "\f0ab"; }
181
+ .su-spoiler-icon-arrow-circle-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f0a9"; }
182
+ .su-spoiler-icon-arrow-circle-2 .su-spoiler-icon:before { content: "\f01a"; }
183
+ .su-spoiler-icon-arrow-circle-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f18e"; }
184
+ .su-spoiler-icon-chevron .su-spoiler-icon:before { content: "\f078"; }
185
+ .su-spoiler-icon-chevron.su-spoiler-closed .su-spoiler-icon:before { content: "\f054"; }
186
+ .su-spoiler-icon-chevron-circle .su-spoiler-icon:before { content: "\f13a"; }
187
+ .su-spoiler-icon-chevron-circle.su-spoiler-closed .su-spoiler-icon:before { content: "\f138"; }
188
+ .su-spoiler-icon-caret .su-spoiler-icon:before { content: "\f0d7"; }
189
+ .su-spoiler-icon-caret.su-spoiler-closed .su-spoiler-icon:before { content: "\f0da"; }
190
+ .su-spoiler-icon-caret-square .su-spoiler-icon:before { content: "\f150"; }
191
+ .su-spoiler-icon-caret-square.su-spoiler-closed .su-spoiler-icon:before { content: "\f152"; }
192
+ .su-spoiler-icon-folder-1 .su-spoiler-icon:before { content: "\f07c"; }
193
+ .su-spoiler-icon-folder-1.su-spoiler-closed .su-spoiler-icon:before { content: "\f07b"; }
194
+ .su-spoiler-icon-folder-2 .su-spoiler-icon:before { content: "\f115"; }
195
+ .su-spoiler-icon-folder-2.su-spoiler-closed .su-spoiler-icon:before { content: "\f114"; }
196
+ .su-spoiler-style-default { }
197
+ .su-spoiler-style-default > .su-spoiler-title {
198
+ padding-left: 27px;
199
+ padding-right: 0;
200
+ }
201
+ .su-spoiler-style-default > .su-spoiler-title > .su-spoiler-icon { left: 0; }
202
+ .su-spoiler-style-default > .su-spoiler-content { padding: 1em 0 1em 27px; }
203
+ .su-spoiler-style-fancy {
204
+ border: 1px solid #ccc;
205
+ -webkit-border-radius: 10px;
206
+ -moz-border-radius: 10px;
207
+ border-radius: 10px;
208
+ background: #fff;
209
+ color: #333;
210
+ }
211
+ .su-spoiler-style-fancy > .su-spoiler-title {
212
+ border-bottom: 1px solid #ccc;
213
+ -webkit-border-radius: 10px;
214
+ -moz-border-radius: 10px;
215
+ border-radius: 10px;
216
+ background: #f0f0f0;
217
+ font-size: 0.9em;
218
+ }
219
+ .su-spoiler-style-fancy.su-spoiler-closed > .su-spoiler-title { border: none; }
220
+ .su-spoiler-style-fancy > .su-spoiler-content {
221
+ -webkit-border-radius: 10px;
222
+ -moz-border-radius: 10px;
223
+ border-radius: 10px;
224
+ }
225
+ .su-spoiler-style-simple {
226
+ border-top: 1px solid #ccc;
227
+ border-bottom: 1px solid #ccc;
228
+ }
229
+ .su-spoiler-style-simple > .su-spoiler-title {
230
+ padding: 5px 10px;
231
+ background: #f0f0f0;
232
+ color: #333;
233
+ font-size: 0.9em;
234
+ }
235
+ .su-spoiler-style-simple > .su-spoiler-title > .su-spoiler-icon { display: none; }
236
+ .su-spoiler-style-simple > .su-spoiler-content {
237
+ padding: 1em 10px;
238
+ background: #fff;
239
+ color: #333;
240
+ }
241
+
242
+ /* Quote
243
+ ---------------------------------------------------------------*/
244
+
245
+ .su-quote-style-default {
246
+ position: relative;
247
+ margin-bottom: 1.5em;
248
+ padding: 0.5em 3em;
249
+ font-style: italic;
250
+ }
251
+ .su-quote-style-default.su-quote-has-cite { margin-bottom: 3em; }
252
+ .su-quote-style-default:before,
253
+ .su-quote-style-default:after {
254
+ position: absolute;
255
+ display: block;
256
+ width: 20px;
257
+ height: 20px;
258
+ background-image: url('../images/quote.png');
259
+ content: '';
260
+ }
261
+ .su-quote-style-default:before {
262
+ top: 0;
263
+ left: 0;
264
+ background-position: 0 0;
265
+ }
266
+ .su-quote-style-default:after {
267
+ right: 0;
268
+ bottom: 0;
269
+ background-position: -20px 0;
270
+ }
271
+ .su-quote-style-default .su-quote-cite {
272
+ position: absolute;
273
+ right: 4em;
274
+ bottom: -1.5em;
275
+ font-style: normal;
276
+ }
277
+ .su-quote-style-default .su-quote-cite:before { content: "\2014\0000a0"; }
278
+ .su-quote-style-default .su-quote-cite a { text-decoration: underline; }
279
+
280
+ /* Pullquote
281
+ ---------------------------------------------------------------*/
282
+
283
+ .su-pullquote {
284
+ display: block;
285
+ width: 30%;
286
+ padding: 0.5em 1em;
287
+ }
288
+ .su-pullquote-align-left {
289
+ margin: 0.5em 1.5em 1em 0;
290
+ padding-left: 0;
291
+ float: left;
292
+ border-right: 5px solid #eee;
293
+ }
294
+ .su-pullquote-align-right {
295
+ margin: 0.5em 0 1em 1.5em;
296
+ padding-right: 0;
297
+ float: right;
298
+ border-left: 5px solid #eee;
299
+ }
300
+
301
+ /* Row + Column
302
+ ---------------------------------------------------------------*/
303
+
304
+ .su-row {
305
+ clear: both;
306
+ zoom: 1;
307
+ margin-bottom: 1.5em;
308
+ }
309
+ .su-row:before,
310
+ .su-row:after {
311
+ display: table;
312
+ content: "";
313
+ }
314
+ .su-row:after { clear: both; }
315
+ .su-column {
316
+ display: block;
317
+ margin: 0 4% 0 0;
318
+ float: left;
319
+ -webkit-box-sizing: border-box;
320
+ -moz-box-sizing: border-box;
321
+ box-sizing: border-box;
322
+ }
323
+ .su-column-last { margin-right: 0; }
324
+ .su-row .su-column { margin: 0 0 0 4%; }
325
+ .su-row .su-column.su-column-size-1-1 { margin-left: 0; margin-right: 0; }
326
+ .su-row .su-column:first-child { margin-left: 0; }
327
+ .su-column-centered {
328
+ margin-right: auto !important;
329
+ margin-left: auto !important;
330
+ float: none !important;
331
+ }
332
+ .su-column img,
333
+ .su-column iframe,
334
+ .su-column object,
335
+ .su-column embed { max-width: 100%; }
336
+ @media only screen {
337
+ [class*="su-column"] + [class*="su-column"]:last-child { float: right; }
338
+ }
339
+ .su-column-size-1-1 { width: 100%; }
340
+ .su-column-size-1-2 { width: 48%; }
341
+ .su-column-size-1-3 { width: 30.66%; }
342
+ .su-column-size-2-3 { width: 65.33%; }
343
+ .su-column-size-1-4 { width: 22%; }
344
+ .su-column-size-3-4 { width: 74%; }
345
+ .su-column-size-1-5 { width: 16.8%; }
346
+ .su-column-size-2-5 { width: 37.6%; }
347
+ .su-column-size-3-5 { width: 58.4%; }
348
+ .su-column-size-4-5 { width: 79.2%; }
349
+ .su-column-size-1-6 { width: 13.33%; }
350
+ .su-column-size-5-6 { width: 82.66%; }
351
+ /* Styles for screens that are less than 768px */
352
+ @media only screen and (max-width: 768px) {
353
+ .su-column {
354
+ width: 100% !important;
355
+ margin: 0 0 1.5em 0 !important;
356
+ float: none !important;
357
+ }
358
+ .su-row .su-column:last-child {
359
+ margin-bottom: 0 !important;
360
+ }
361
+ }
362
+
363
+ /* Service
364
+ ---------------------------------------------------------------*/
365
+
366
+ .su-service {
367
+ position: relative;
368
+ margin: 0 0 1.5em 0;
369
+ }
370
+ .su-service-title {
371
+ display: block;
372
+ margin-bottom: 0.5em;
373
+ color: #333;
374
+ font-weight: bold;
375
+ font-size: 1.1em;
376
+ }
377
+ .su-service-title img {
378
+ position: absolute;
379
+ top: 0;
380
+ left: 0;
381
+ display: block !important;
382
+ margin: 0 !important;
383
+ padding: 0 !important;
384
+ border: none !important;
385
+ -webkit-box-shadow: none !important;
386
+ -moz-box-shadow: none !important;
387
+ box-shadow: none !important;
388
+ }
389
+ .su-service-title i {
390
+ position: absolute;
391
+ top: 0;
392
+ left: 0;
393
+ display: block !important;
394
+ width: 1em;
395
+ height: 1em;
396
+ text-align: center;
397
+ line-height: 1em;
398
+ }
399
+ .su-service-content { line-height: 1.4; }
400
+
401
+ /* Box
402
+ ---------------------------------------------------------------*/
403
+
404
+ .su-box {
405
+ margin: 0 0 1.5em 0;
406
+ border-width: 2px;
407
+ border-style: solid;
408
+ }
409
+ .su-box-title {
410
+ display: block;
411
+ padding: 0.5em 1em;
412
+ font-weight: bold;
413
+ font-size: 1.1em;
414
+ }
415
+ .su-box-content {
416
+ background-color: #fff;
417
+ color: #444;
418
+ padding: 1em;
419
+ }
420
+ .su-box-style-soft .su-box-title {
421
+ background-image: url('../images/styles/style-soft.png');
422
+ background-position: 0 0;
423
+ background-repeat: repeat-x;
424
+ }
425
+ .su-box-style-glass .su-box-title {
426
+ background-image: url('../images/styles/style-glass.png');
427
+ background-position: 0 50%;
428
+ background-repeat: repeat-x;
429
+ }
430
+ .su-box-style-bubbles .su-box-title {
431
+ background-image: url('../images/styles/style-bubbles.png');
432
+ background-position: 0 50%;
433
+ background-repeat: repeat-x;
434
+ }
435
+ .su-box-style-noise .su-box-title {
436
+ background-image: url('../images/styles/style-noise.png');
437
+ background-position: 0 0;
438
+ background-repeat: repeat-x;
439
+ }
440
+
441
+ /* Note
442
+ ---------------------------------------------------------------*/
443
+
444
+ .su-note {
445
+ margin: 0 0 1.5em 0;
446
+ border-width: 1px;
447
+ border-style: solid;
448
+ }
449
+ .su-note-inner {
450
+ padding: 1em;
451
+ border-width: 1px;
452
+ border-style: solid;
453
+ }
454
+
455
+ /* Expand
456
+ ---------------------------------------------------------------*/
457
+
458
+ .su-expand { margin: 0 0 1.5em 0; }
459
+ .su-expand-content { overflow: hidden; }
460
+ .su-expand-link {
461
+ margin-top: 0.5em;
462
+ cursor: pointer;
463
+ }
464
+ .su-expand-link:hover {
465
+ opacity: 0.7;
466
+ filter: alpha(opacity=70);
467
+ }
468
+ .su-expand-link a,
469
+ .su-expand-link a:hover,
470
+ .su-expand-link a:active,
471
+ .su-expand-link a:visited,
472
+ .su-expand-link a:focus {
473
+ display: inline;
474
+ text-decoration: none;
475
+ background: transparent;
476
+ border: none;
477
+ }
478
+ .su-expand-link-style-default .su-expand-link a,
479
+ .su-expand-link-style-default .su-expand-link a:hover { text-decoration: none; }
480
+ .su-expand-link-style-underlined .su-expand-link span { text-decoration: underline; }
481
+ .su-expand-link-style-dotted .su-expand-link span { border-bottom: 1px dotted #333; }
482
+ .su-expand-link-style-dashed .su-expand-link span { border-bottom: 1px dashed #333; }
483
+ .su-expand-link-style-button .su-expand-link a {
484
+ display: inline-block;
485
+ margin-top: 0.2em;
486
+ padding: 0.2em 0.4em;
487
+ border: 2px solid #333;
488
+ }
489
+ .su-expand-link-more { display: none; }
490
+ .su-expand-link-less { display: block; }
491
+ .su-expand-collapsed .su-expand-link-more { display: block; }
492
+ .su-expand-collapsed .su-expand-link-less { display: none; }
493
+ .su-expand-link i {
494
+ display: inline-block;
495
+ margin: 0 0.3em 0 0;
496
+ vertical-align: middle;
497
+ color: inherit;
498
+ }
499
+ .su-expand-link img {
500
+ display: inline-block;
501
+ width: 1em;
502
+ height: 1em;
503
+ margin: 0 0.3em 0 0;
504
+ vertical-align: middle;
505
+ }
506
+
507
+ /* Lightbox content
508
+ ---------------------------------------------------------------*/
509
+
510
+ .su-lightbox-content {
511
+ position: relative;
512
+ margin: 0 auto;
513
+ }
514
+ .mfp-content .su-lightbox-content,
515
+ #su-generator .su-lightbox-content { display: block !important; }
516
+ .su-lightbox-content-preview {
517
+ width: 100%;
518
+ min-height: 300px;
519
+ background: #444;
520
+ overflow: hidden;
521
+ }
522
+ .su-lightbox-content h1,
523
+ .su-lightbox-content h2,
524
+ .su-lightbox-content h3,
525
+ .su-lightbox-content h4,
526
+ .su-lightbox-content h5,
527
+ .su-lightbox-content h6 { color: inherit; }
528
+
529
+ /* Common margin resets for box elements
530
+ ---------------------------------------------------------------*/
531
+
532
+ .su-column-inner > *:first-child,
533
+ .su-accordion > *:first-child,
534
+ .su-spoiler-content > *:first-child,
535
+ .su-service-content > *:first-child,
536
+ .su-box-content > *:first-child,
537
+ .su-note-inner > *:first-child,
538
+ .su-expand-content > *:first-child,
539
+ .su-lightbox-content > *:first-child { margin-top: 0; }
540
+ .su-column-inner > *:last-child,
541
+ .su-tabs-pane > *:last-child,
542
+ .su-accordion > *:last-child,
543
+ .su-spoiler-content > *:last-child,
544
+ .su-service-content > *:last-child,
545
+ .su-box-content > *:last-child,
546
+ .su-note-inner > *:last-child,
547
+ .su-expand-content > *:last-child,
548
+ .su-lightbox-content > *:last-child { margin-bottom: 0; }
assets/css/cheatsheet.css CHANGED
@@ -1,88 +1,88 @@
1
- #su-cheatsheet-screen table {
2
- margin: 30px 0;
3
- margin-bottom: 1.11111rem;
4
- border: solid 1px #ddd;
5
- background: #fff;
6
- }
7
- #su-cheatsheet-screen table thead {
8
- background: #f5f5f5;
9
- }
10
- #su-cheatsheet-screen table thead tr th,
11
- #su-cheatsheet-screen table thead tr td {
12
- padding: 0.44444rem 0.55556rem 0.55556rem;
13
- color: #222;
14
- font-weight: bold;
15
- }
16
- #su-cheatsheet-screen table tfoot {
17
- background: #f5f5f5;
18
- }
19
- #su-cheatsheet-screen table tfoot tr th,
20
- #su-cheatsheet-screen table tfoot tr td {
21
- padding: 0.44444rem 0.55556rem 0.55556rem;
22
- color: #222;
23
- font-weight: bold;
24
- }
25
- #su-cheatsheet-screen table tr th,
26
- #su-cheatsheet-screen table tr td {
27
- padding: 0.5rem 0.55556rem;
28
- color: #222;
29
- text-align: left;
30
- }
31
- #su-cheatsheet-screen table tr.even,
32
- #su-cheatsheet-screen table tr.alt,
33
- #su-cheatsheet-screen table tr:nth-of-type(even) {
34
- background: #f9f9f9;
35
- }
36
- #su-cheatsheet-screen table thead tr th,
37
- #su-cheatsheet-screen table tfoot tr th,
38
- #su-cheatsheet-screen table tfoot tr td,
39
- #su-cheatsheet-screen table tbody tr th,
40
- #su-cheatsheet-screen table tbody tr td,
41
- #su-cheatsheet-screen table tr td {
42
- display: table-cell;
43
- vertical-align: top;
44
- }
45
-
46
- #su-cheatsheet-screen table .su-shortcode-icon {
47
- display: inline-block;
48
- width: 24px;
49
- opacity: 0.5;
50
- filter: alpha(opacity=50);
51
- }
52
- #su-cheatsheet-screen table .su-shortcode-desc {
53
- font-size: 0.8em;
54
- color: #777;
55
- margin: 5px 0 0 0;
56
- font-style: normal;
57
- }
58
-
59
- #su-cheatsheet-screen table .su-shortcode-attribute {
60
- margin-top: 1.5em;
61
- color: #666;
62
- }
63
- #su-cheatsheet-screen table .su-shortcode-attribute:first-child { margin-top: 0; }
64
- #su-cheatsheet-screen table .su-shortcode-attribute p { margin: 5px; }
65
- #su-cheatsheet-screen table .su-shortcode-attribute strong,
66
- #su-cheatsheet-screen table .su-shortcode-attribute em {
67
- color: #000;
68
- font-style: normal;
69
- }
70
- #su-cheatsheet-screen table .su-shortcode-attribute strong em {
71
- color: #666;
72
- font-weight: normal;
73
- font-style: normal;
74
- }
75
- #su-cheatsheet-screen table code {
76
- display: block;
77
- white-space: pre-wrap;
78
- font-family: monospace;
79
- }
80
-
81
- body.su-print-cheatsheet #wpadminbar,
82
- body.su-print-cheatsheet #adminmenuback,
83
- body.su-print-cheatsheet #adminmenuwrap,
84
- body.su-print-cheatsheet #wpfooter { display: none; }
85
- body.su-print-cheatsheet #wpcontent { margin: 0 0 0 30px; }
86
- #su-cheatsheet-print-head { display: none; }
87
- body.su-print-cheatsheet #su-cheatsheet-print-head { display: inline-block; }
88
- body.su-print-cheatsheet #su-cheatsheet-print { display: none; }
1
+ #su-cheatsheet-screen table {
2
+ margin: 30px 0;
3
+ margin-bottom: 1.11111rem;
4
+ border: solid 1px #ddd;
5
+ background: #fff;
6
+ }
7
+ #su-cheatsheet-screen table thead {
8
+ background: #f5f5f5;
9
+ }
10
+ #su-cheatsheet-screen table thead tr th,
11
+ #su-cheatsheet-screen table thead tr td {
12
+ padding: 0.44444rem 0.55556rem 0.55556rem;
13
+ color: #222;
14
+ font-weight: bold;
15
+ }
16
+ #su-cheatsheet-screen table tfoot {
17
+ background: #f5f5f5;
18
+ }
19
+ #su-cheatsheet-screen table tfoot tr th,
20
+ #su-cheatsheet-screen table tfoot tr td {
21
+ padding: 0.44444rem 0.55556rem 0.55556rem;
22
+ color: #222;
23
+ font-weight: bold;
24
+ }
25
+ #su-cheatsheet-screen table tr th,
26
+ #su-cheatsheet-screen table tr td {
27
+ padding: 0.5rem 0.55556rem;
28
+ color: #222;
29
+ text-align: left;
30
+ }
31
+ #su-cheatsheet-screen table tr.even,
32
+ #su-cheatsheet-screen table tr.alt,
33
+ #su-cheatsheet-screen table tr:nth-of-type(even) {
34
+ background: #f9f9f9;
35
+ }
36
+ #su-cheatsheet-screen table thead tr th,
37
+ #su-cheatsheet-screen table tfoot tr th,
38
+ #su-cheatsheet-screen table tfoot tr td,
39
+ #su-cheatsheet-screen table tbody tr th,
40
+ #su-cheatsheet-screen table tbody tr td,
41
+ #su-cheatsheet-screen table tr td {
42
+ display: table-cell;
43
+ vertical-align: top;
44
+ }
45
+
46
+ #su-cheatsheet-screen table .su-shortcode-icon {
47
+ display: inline-block;
48
+ width: 24px;
49
+ opacity: 0.5;
50
+ filter: alpha(opacity=50);
51
+ }
52
+ #su-cheatsheet-screen table .su-shortcode-desc {
53
+ font-size: 0.8em;
54
+ color: #777;
55
+ margin: 5px 0 0 0;
56
+ font-style: normal;
57
+ }
58
+
59
+ #su-cheatsheet-screen table .su-shortcode-attribute {
60
+ margin-top: 1.5em;
61
+ color: #666;
62
+ }
63
+ #su-cheatsheet-screen table .su-shortcode-attribute:first-child { margin-top: 0; }
64
+ #su-cheatsheet-screen table .su-shortcode-attribute p { margin: 5px; }
65
+ #su-cheatsheet-screen table .su-shortcode-attribute strong,
66
+ #su-cheatsheet-screen table .su-shortcode-attribute em {
67
+ color: #000;
68
+ font-style: normal;
69
+ }
70
+ #su-cheatsheet-screen table .su-shortcode-attribute strong em {
71
+ color: #666;
72
+ font-weight: normal;
73
+ font-style: normal;
74
+ }
75
+ #su-cheatsheet-screen table code {
76
+ display: block;
77
+ white-space: pre-wrap;
78
+ font-family: monospace;
79
+ }
80
+
81
+ body.su-print-cheatsheet #wpadminbar,
82
+ body.su-print-cheatsheet #adminmenuback,
83
+ body.su-print-cheatsheet #adminmenuwrap,
84
+ body.su-print-cheatsheet #wpfooter { display: none; }
85
+ body.su-print-cheatsheet #wpcontent { margin: 0 0 0 30px; }
86
+ #su-cheatsheet-print-head { display: none; }
87
+ body.su-print-cheatsheet #su-cheatsheet-print-head { display: inline-block; }
88
+ body.su-print-cheatsheet #su-cheatsheet-print { display: none; }
assets/css/content-shortcodes.css CHANGED
@@ -1,396 +1,396 @@
1
- /*** Shortcodes Ultimate - content elements ***/
2
-
3
- /* Heading
4
- ---------------------------------------------------------------*/
5
-
6
- .su-heading-style-default {
7
- padding: 2px 0;
8
- border-top: 1px solid #999;
9
- border-bottom: 1px solid #999;
10
- }
11
- .su-heading-style-default .su-heading-inner {
12
- padding: 1em 0.5em;
13
- border-top: 4px solid #eee;
14
- border-bottom: 4px solid #eee;
15
- }
16
- .su-heading.su-heading-align-left { text-align: left; }
17
- .su-heading.su-heading-align-left .su-heading-inner { padding-left: 0.2em; }
18
- .su-heading.su-heading-align-right { text-align: right; }
19
- .su-heading.su-heading-align-right .su-heading-inner { padding-right: 0.2em; }
20
- .su-heading.su-heading-align-center { text-align: center; }
21
-
22
- /* Divider
23
- ---------------------------------------------------------------*/
24
-
25
- .su-divider {
26
- clear: both;
27
- border: none;
28
- text-align: right;
29
- line-height: 1;
30
- }
31
- .su-divider a {
32
- display: inline-block;
33
- font-size: 0.8em;
34
- text-decoration: none;
35
- outline: none;
36
- padding-bottom: 5px;
37
- }
38
- .su-divider-style-default { border-bottom-style: solid; }
39
- .su-divider-style-dotted { border-bottom-style: dotted; }
40
- .su-divider-style-dashed { border-bottom-style: dashed; }
41
- .su-divider-style-double { border-bottom-style: double; }
42
-
43
- /* Spacer
44
- ---------------------------------------------------------------*/
45
-
46
- .su-spacer {
47
- display: block;
48
- height: 0;
49
- clear: both;
50
- overflow: hidden;
51
- }
52
- .su-spacer-5 { height: 5px }
53
- .su-spacer-10 { height: 10px }
54
- .su-spacer-20 { height: 20px }
55
- .su-spacer-30 { height: 30px }
56
- .su-spacer-40 { height: 40px }
57
-
58
- /* Highlight
59
- ---------------------------------------------------------------*/
60
-
61
- .su-highlight {
62
- display: inline;
63
- padding: 1px 0;
64
- }
65
-
66
- /* Label
67
- ---------------------------------------------------------------*/
68
-
69
- .su-label {
70
- display: inline;
71
- margin-right: 0.3em;
72
- padding: 0.1em 0.3em;
73
- font-size: 0.8em;
74
- height: 0.8em;
75
- line-height: 0.8em;
76
- color: #fff;
77
- border-radius: 3px;
78
- -moz-border-radius: 3px;
79
- -webkit-border-radius: 3px;
80
- }
81
- .su-label-type-default { background: #999 }
82
- .su-label-type-success { background: #090 }
83
- .su-label-type-warning { background: #f90 }
84
- .su-label-type-important { background: #f03 }
85
- .su-label-type-black { background: #111 }
86
- .su-label-type-info { background: #09c }
87
-
88
- /* Dropcap
89
- ---------------------------------------------------------------*/
90
-
91
- .su-dropcap {
92
- float: left;
93
- display: inline-block;
94
- width: 2em;
95
- height: 2em;
96
- margin: 0.2em 0.5em 0.2em 0;
97
- line-height: 2em;
98
- text-align: center;
99
- overflow: hidden;
100
- text-transform: uppercase;
101
- }
102
- .su-dropcap-style-default {
103
- color: #fff;
104
- background: rgb(69, 72, 77); /* Old browsers */
105
- background: -moz-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* FF3.6+ */
106
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(69, 72, 77, 1)), color-stop(100%, rgba(0, 0, 0, 1))); /* Chrome,Safari4+ */
107
- background: -webkit-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* Chrome10+,Safari5.1+ */
108
- background: -o-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* Opera 11.10+ */
109
- background: -ms-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* IE10+ */
110
- background: linear-gradient(to bottom, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* W3C */
111
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#45484d', endColorstr='#000000', GradientType=0); /* IE6-9 */
112
- text-shadow: -1px -1px 0 #000;
113
- -moz-text-shadow: -1px -1px 0 #000;
114
- -webkit-text-shadow: -1px -1px 0 #000;
115
- border-radius: 50%;
116
- -moz-border-radius: 50%;
117
- -webkit-border-radius: 50%;
118
- }
119
- .su-dropcap-style-flat {
120
- background: #444;
121
- color: #fff;
122
- }
123
- .su-dropcap-style-light {
124
- color: #333;
125
- border-radius: 50%;
126
- -moz-border-radius: 50%;
127
- -webkit-border-radius: 50%;
128
- background: rgb(255, 255, 255); /* Old browsers */
129
- background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* FF3.6+ */
130
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(234, 234, 234, 1))); /* Chrome,Safari4+ */
131
- background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* Chrome10+,Safari5.1+ */
132
- background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* Opera 11.10+ */
133
- background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* IE10+ */
134
- background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* W3C */
135
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eaeaea', GradientType=0); /* IE6-9 */
136
- }
137
- .su-dropcap-style-simple {
138
- width: 1em;
139
- height: 1em;
140
- line-height: 1em;
141
- text-align: left;
142
- }
143
-
144
- /* Frame
145
- ---------------------------------------------------------------*/
146
-
147
- .su-frame,
148
- .su-frame-inner { display: block; }
149
- .su-frame-align-left {
150
- float: left;
151
- margin: 0 1em 1em 0;
152
- }
153
- .su-frame-align-center {
154
- float: none;
155
- margin: 1em auto;
156
- }
157
- .su-frame-align-right {
158
- float: right;
159
- margin: 0 0 1em 1em;
160
- }
161
- .su-frame img {
162
- display: block !important;
163
- float: none !important;
164
- padding: 0 !important;
165
- margin: 0 !important;
166
- border: none !important;
167
- box-shadow: none !important;
168
- }
169
- .su-frame-style-default {
170
- padding: 2px;
171
- border: 1px solid #999;
172
- background: #fff;
173
- -webkit-box-shadow: 1px 1px 4px #ccc;
174
- -moz-box-shadow: 1px 1px 4px #ccc;
175
- box-shadow: 1px 1px 4px #ccc;
176
- }
177
- .su-frame-style-default .su-frame-inner {
178
- padding: 2px;
179
- border: 4px solid #eee;
180
- }
181
-
182
- /* List
183
- ---------------------------------------------------------------*/
184
-
185
- .su-list ul {
186
- list-style: none !important;
187
- margin: 0 0 1.5em 0 !important;
188
- padding: 0 !important;
189
- }
190
- .su-list ul li {
191
- position: relative;
192
- list-style-type: none !important;
193
- display: block !important;
194
- line-height: 1.3em;
195
- margin: 0 !important;
196
- padding: 4px 0 4px 2em !important;
197
- }
198
- .su-list ul li > img {
199
- position: absolute;
200
- left: 0;
201
- top: 4px;
202
- width: 1.3em;
203
- height: 1.3em;
204
- padding: 0;
205
- margin: 0;
206
- border: none;
207
- }
208
- .su-list ul li i {
209
- position: absolute;
210
- left: 0;
211
- top: 4px;
212
- width: 1.3em;
213
- height: 1.3em;
214
- line-height: 1.3em;
215
- text-align: center;
216
- }
217
-
218
- /* Button
219
- ---------------------------------------------------------------*/
220
-
221
- .su-button {
222
- display: inline-block !important;
223
- text-align: center;
224
- text-decoration: none !important;
225
- box-sizing: content-box !important;
226
- -moz-box-sizing: content-box !important;
227
- -webkit-box-sizing: content-box !important;
228
- transition: all .2s;
229
- -o-transition: all .2s;
230
- -ie-transition: all .2s;
231
- -moz-transition: all .2s;
232
- -webkit-transition: all .2s;
233
- }
234
- .su-button-wide {
235
- display: block !important;
236
- margin: 1em 0;
237
- }
238
- .su-button-center { text-align: center; }
239
- .su-button span {
240
- display: block !important;
241
- text-decoration: none !important;
242
- box-sizing: content-box !important;
243
- -moz-box-sizing: content-box !important;
244
- -webkit-box-sizing: content-box !important;
245
- transition: all .2s;
246
- -o-transition: all .2s;
247
- -ie-transition: all .2s;
248
- -moz-transition: all .2s;
249
- -webkit-transition: all .2s;
250
- }
251
- .su-button img {
252
- border: none !important;
253
- vertical-align: middle !important;
254
- margin: -0.2em 0.4em 0 -0.3em !important;
255
- box-shadow: none !important;
256
- -moz-box-shadow: none !important;
257
- -webkit-box-shadow: none !important;
258
- }
259
- .su-button i {
260
- display: inline-block;
261
- width: 1em;
262
- height: 1em;
263
- margin: 0 0.5em 0 0 !important;
264
- text-align: center;
265
- line-height: 1em;
266
- }
267
- .su-button.su-button-float-icon img { margin: 0 0.5em !important }
268
- .su-button small {
269
- display: block;
270
- margin: -0.2em 0 0 0;
271
- color: inherit;
272
- text-align: center;
273
- font-style: normal;
274
- font-size: 0.8em;
275
- line-height: 1;
276
- opacity: 0.7;
277
- filter: alpha(opacity=70);
278
- }
279
- .su-button-style-default {
280
- border-width: 1px;
281
- border-style: solid;
282
- }
283
- .su-button-style-default:hover {
284
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
285
- filter: alpha(opacity=70);
286
- -moz-opacity: 0.7;
287
- -khtml-opacity: 0.7;
288
- opacity: 0.7;
289
- }
290
- .su-button-style-default span {
291
- border-top-width: 1px;
292
- border-bottom-width: 1px;
293
- border-top-style: solid;
294
- border-bottom-style: solid;
295
- }
296
- .su-button-style-flat,
297
- .su-button-style-flat span { border: none }
298
- .su-button-style-flat span { position: relative }
299
- .su-button-style-flat:hover span { top: 1px }
300
- .su-button-style-ghost { background: transparent !important; }
301
- .su-button-style-ghost span {
302
- border-width: 3px;
303
- border-style: solid;
304
- }
305
- .su-button-style-ghost:hover span { border-color: inherit !important; }
306
- .su-button-style-soft span { background: 0 -20px url('../images/styles/style-soft.png') repeat-x }
307
- .su-button-style-soft:hover span { background: 0 0 url('../images/styles/style-soft.png') repeat-x }
308
- .su-button-style-glass span { background: 0 50% url('../images/styles/style-glass.png') repeat-x }
309
- .su-button-style-glass:hover span { background: 100% 50% url('../images/styles/style-glass.png') repeat-x }
310
- .su-button-style-bubbles span { background: 0 50% url('../images/styles/style-bubbles.png') no-repeat }
311
- .su-button-style-bubbles:hover span { background: -710px 50% url('../images/styles/style-bubbles.png') no-repeat }
312
- .su-button-style-noise span { background: 0 0 url('../images/styles/style-noise.png') repeat-x }
313
- .su-button-style-noise:hover span { background: 0 0 url('../images/styles/style-noise.png') repeat-x }
314
- .su-button-style-stroked span {
315
- margin: 1px;
316
- border: 1px dashed #fff !important;
317
- }
318
- .su-button-style-stroked:hover span {
319
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
320
- filter: alpha(opacity=70);
321
- -moz-opacity: 0.7;
322
- -khtml-opacity: 0.7;
323
- opacity: 0.7;
324
- }
325
- .su-button-style-3d {
326
- border-bottom-style: solid;
327
- border-bottom-width: 6px;
328
- }
329
- .su-button-style-3d span {
330
- border-bottom-style: solid;
331
- border-bottom-width: 1px;
332
- }
333
- .su-button-style-3d:hover {
334
- position: relative;
335
- top: 3px;
336
- border-bottom-width: 3px;
337
- }
338
-
339
- /* Table
340
- ---------------------------------------------------------------*/
341
-
342
- .su-table table {
343
- width: 100% !important;
344
- margin: 0 0 1.5em 0 !important;
345
- border-collapse: collapse !important;
346
- font-size: 1em !important;
347
- border: 1px solid #ccc !important;
348
- }
349
- .su-table th {
350
- text-align: center !important;
351
- padding: 1em !important;
352
- font-size: 1em !important;
353
- font-weight: normal !important;
354
- color: #333 !important;
355
- border: 1px solid #ccc !important;
356
- background: #f0f0f0 !important;
357
- }
358
- .su-table td {
359
- padding: 0.5em 1em !important;
360
- border: 1px solid #ccc !important;
361
- background: #fff !important;
362
- }
363
- .su-table .su-even td { background: #f7f7f7 !important }
364
-
365
- /* QR code
366
- ---------------------------------------------------------------*/
367
-
368
- .su-qrcode { display: inline-block; }
369
- .su-qrcode-align-left {
370
- float: left;
371
- margin: 0 0.5em 0.5em 0;
372
- }
373
- .su-qrcode-align-center {
374
- display: block;
375
- clear: both;
376
- margin: 1em auto;
377
- text-align: center;
378
- }
379
- .su-qrcode-align-right {
380
- float: right;
381
- margin: 0 0 0.5em 0.5em;
382
- }
383
- .su-qrcode a,
384
- .su-qrcode a:hover,
385
- .su-qrcode a:active,
386
- .su-qrcode a:focus {
387
- background: transparent;
388
- outline: none;
389
- display: inline;
390
- text-decoration: none;
391
- }
392
- .su-qrcode-clickable a:hover {
393
- opacity: 0.7;
394
- filter: alpha(opacity=70);
395
- }
396
  .su-qrcode img { max-width: 100%; }
1
+ /*** Shortcodes Ultimate - content elements ***/
2
+
3
+ /* Heading
4
+ ---------------------------------------------------------------*/
5
+
6
+ .su-heading-style-default {
7
+ padding: 2px 0;
8
+ border-top: 1px solid #999;
9
+ border-bottom: 1px solid #999;
10
+ }
11
+ .su-heading-style-default .su-heading-inner {
12
+ padding: 1em 0.5em;
13
+ border-top: 4px solid #eee;
14
+ border-bottom: 4px solid #eee;
15
+ }
16
+ .su-heading.su-heading-align-left { text-align: left; }
17
+ .su-heading.su-heading-align-left .su-heading-inner { padding-left: 0.2em; }
18
+ .su-heading.su-heading-align-right { text-align: right; }
19
+ .su-heading.su-heading-align-right .su-heading-inner { padding-right: 0.2em; }
20
+ .su-heading.su-heading-align-center { text-align: center; }
21
+
22
+ /* Divider
23
+ ---------------------------------------------------------------*/
24
+
25
+ .su-divider {
26
+ clear: both;
27
+ border: none;
28
+ text-align: right;
29
+ line-height: 1;
30
+ }
31
+ .su-divider a {
32
+ display: inline-block;
33
+ font-size: 0.8em;
34
+ text-decoration: none;
35
+ outline: none;
36
+ padding-bottom: 5px;
37
+ }
38
+ .su-divider-style-default { border-bottom-style: solid; }
39
+ .su-divider-style-dotted { border-bottom-style: dotted; }
40
+ .su-divider-style-dashed { border-bottom-style: dashed; }
41
+ .su-divider-style-double { border-bottom-style: double; }
42
+
43
+ /* Spacer
44
+ ---------------------------------------------------------------*/
45
+
46
+ .su-spacer {
47
+ display: block;
48
+ height: 0;
49
+ clear: both;
50
+ overflow: hidden;
51
+ }
52
+ .su-spacer-5 { height: 5px }
53
+ .su-spacer-10 { height: 10px }
54
+ .su-spacer-20 { height: 20px }
55
+ .su-spacer-30 { height: 30px }
56
+ .su-spacer-40 { height: 40px }
57
+
58
+ /* Highlight
59
+ ---------------------------------------------------------------*/
60
+
61
+ .su-highlight {
62
+ display: inline;
63
+ padding: 1px 0;
64
+ }
65
+
66
+ /* Label
67
+ ---------------------------------------------------------------*/
68
+
69
+ .su-label {
70
+ display: inline;
71
+ margin-right: 0.3em;
72
+ padding: 0.1em 0.3em;
73
+ font-size: 0.8em;
74
+ height: 0.8em;
75
+ line-height: 0.8em;
76
+ color: #fff;
77
+ border-radius: 3px;
78
+ -moz-border-radius: 3px;
79
+ -webkit-border-radius: 3px;
80
+ }
81
+ .su-label-type-default { background: #999 }
82
+ .su-label-type-success { background: #090 }
83
+ .su-label-type-warning { background: #f90 }
84
+ .su-label-type-important { background: #f03 }
85
+ .su-label-type-black { background: #111 }
86
+ .su-label-type-info { background: #09c }
87
+
88
+ /* Dropcap
89
+ ---------------------------------------------------------------*/
90
+
91
+ .su-dropcap {
92
+ float: left;
93
+ display: inline-block;
94
+ width: 2em;
95
+ height: 2em;
96
+ margin: 0.2em 0.5em 0.2em 0;
97
+ line-height: 2em;
98
+ text-align: center;
99
+ overflow: hidden;
100
+ text-transform: uppercase;
101
+ }
102
+ .su-dropcap-style-default {
103
+ color: #fff;
104
+ background: rgb(69, 72, 77); /* Old browsers */
105
+ background: -moz-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* FF3.6+ */
106
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(69, 72, 77, 1)), color-stop(100%, rgba(0, 0, 0, 1))); /* Chrome,Safari4+ */
107
+ background: -webkit-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* Chrome10+,Safari5.1+ */
108
+ background: -o-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* Opera 11.10+ */
109
+ background: -ms-linear-gradient(top, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* IE10+ */
110
+ background: linear-gradient(to bottom, rgba(69, 72, 77, 1) 0%, rgba(0, 0, 0, 1) 100%); /* W3C */
111
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#45484d', endColorstr='#000000', GradientType=0); /* IE6-9 */
112
+ text-shadow: -1px -1px 0 #000;
113
+ -moz-text-shadow: -1px -1px 0 #000;
114
+ -webkit-text-shadow: -1px -1px 0 #000;
115
+ border-radius: 50%;
116
+ -moz-border-radius: 50%;
117
+ -webkit-border-radius: 50%;
118
+ }
119
+ .su-dropcap-style-flat {
120
+ background: #444;
121
+ color: #fff;
122
+ }
123
+ .su-dropcap-style-light {
124
+ color: #333;
125
+ border-radius: 50%;
126
+ -moz-border-radius: 50%;
127
+ -webkit-border-radius: 50%;
128
+ background: rgb(255, 255, 255); /* Old browsers */
129
+ background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* FF3.6+ */
130
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(234, 234, 234, 1))); /* Chrome,Safari4+ */
131
+ background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* Chrome10+,Safari5.1+ */
132
+ background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* Opera 11.10+ */
133
+ background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* IE10+ */
134
+ background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(234, 234, 234, 1) 100%); /* W3C */
135
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eaeaea', GradientType=0); /* IE6-9 */
136
+ }
137
+ .su-dropcap-style-simple {
138
+ width: 1em;
139
+ height: 1em;
140
+ line-height: 1em;
141
+ text-align: left;
142
+ }
143
+
144
+ /* Frame
145
+ ---------------------------------------------------------------*/
146
+
147
+ .su-frame,
148
+ .su-frame-inner { display: block; }
149
+ .su-frame-align-left {
150
+ float: left;
151
+ margin: 0 1em 1em 0;
152
+ }
153
+ .su-frame-align-center {
154
+ float: none;
155
+ margin: 1em auto;
156
+ }
157
+ .su-frame-align-right {
158
+ float: right;
159
+ margin: 0 0 1em 1em;
160
+ }
161
+ .su-frame img {
162
+ display: block !important;
163
+ float: none !important;
164
+ padding: 0 !important;
165
+ margin: 0 !important;
166
+ border: none !important;
167
+ box-shadow: none !important;
168
+ }
169
+ .su-frame-style-default {
170
+ padding: 2px;
171
+ border: 1px solid #999;
172
+ background: #fff;
173
+ -webkit-box-shadow: 1px 1px 4px #ccc;
174
+ -moz-box-shadow: 1px 1px 4px #ccc;
175
+ box-shadow: 1px 1px 4px #ccc;
176
+ }
177
+ .su-frame-style-default .su-frame-inner {
178
+ padding: 2px;
179
+ border: 4px solid #eee;
180
+ }
181
+
182
+ /* List
183
+ ---------------------------------------------------------------*/
184
+
185
+ .su-list ul {
186
+ list-style: none !important;
187
+ margin: 0 0 1.5em 0 !important;
188
+ padding: 0 !important;
189
+ }
190
+ .su-list ul li {
191
+ position: relative;
192
+ list-style-type: none !important;
193
+ display: block !important;
194
+ line-height: 1.3em;
195
+ margin: 0 !important;
196
+ padding: 4px 0 4px 2em !important;
197
+ }
198
+ .su-list ul li > img {
199
+ position: absolute;
200
+ left: 0;
201
+ top: 4px;
202
+ width: 1.3em;
203
+ height: 1.3em;
204
+ padding: 0;
205
+ margin: 0;
206
+ border: none;
207
+ }
208
+ .su-list ul li i {
209
+ position: absolute;
210
+ left: 0;
211
+ top: 4px;
212
+ width: 1.3em;
213
+ height: 1.3em;
214
+ line-height: 1.3em;
215
+ text-align: center;
216
+ }
217
+
218
+ /* Button
219
+ ---------------------------------------------------------------*/
220
+
221
+ .su-button {
222
+ display: inline-block !important;
223
+ text-align: center;
224
+ text-decoration: none !important;
225
+ box-sizing: content-box !important;
226
+ -moz-box-sizing: content-box !important;
227
+ -webkit-box-sizing: content-box !important;
228
+ transition: all .2s;
229
+ -o-transition: all .2s;
230
+ -ie-transition: all .2s;
231
+ -moz-transition: all .2s;
232
+ -webkit-transition: all .2s;
233
+ }
234
+ .su-button-wide {
235
+ display: block !important;
236
+ margin: 1em 0;
237
+ }
238
+ .su-button-center { text-align: center; }
239
+ .su-button span {
240
+ display: block !important;
241
+ text-decoration: none !important;
242
+ box-sizing: content-box !important;
243
+ -moz-box-sizing: content-box !important;
244
+ -webkit-box-sizing: content-box !important;
245
+ transition: all .2s;
246
+ -o-transition: all .2s;
247
+ -ie-transition: all .2s;
248
+ -moz-transition: all .2s;
249
+ -webkit-transition: all .2s;
250
+ }
251
+ .su-button img {
252
+ border: none !important;
253
+ vertical-align: middle !important;
254
+ margin: -0.2em 0.4em 0 -0.3em !important;
255
+ box-shadow: none !important;
256
+ -moz-box-shadow: none !important;
257
+ -webkit-box-shadow: none !important;
258
+ }
259
+ .su-button i {
260
+ display: inline-block;
261
+ width: 1em;
262
+ height: 1em;
263
+ margin: 0 0.5em 0 0 !important;
264
+ text-align: center;
265
+ line-height: 1em;
266
+ }
267
+ .su-button.su-button-float-icon img { margin: 0 0.5em !important }
268
+ .su-button small {
269
+ display: block;
270
+ margin: -0.2em 0 0 0;
271
+ color: inherit;
272
+ text-align: center;
273
+ font-style: normal;
274
+ font-size: 0.8em;
275
+ line-height: 1;
276
+ opacity: 0.7;
277
+ filter: alpha(opacity=70);
278
+ }
279
+ .su-button-style-default {
280
+ border-width: 1px;
281
+ border-style: solid;
282
+ }
283
+ .su-button-style-default:hover {
284
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
285
+ filter: alpha(opacity=70);
286
+ -moz-opacity: 0.7;
287
+ -khtml-opacity: 0.7;
288
+ opacity: 0.7;
289
+ }
290
+ .su-button-style-default span {
291
+ border-top-width: 1px;
292
+ border-bottom-width: 1px;
293
+ border-top-style: solid;
294
+ border-bottom-style: solid;
295
+ }
296
+ .su-button-style-flat,
297
+ .su-button-style-flat span { border: none }
298
+ .su-button-style-flat span { position: relative }
299
+ .su-button-style-flat:hover span { top: 1px }
300
+ .su-button-style-ghost { background: transparent !important; }
301
+ .su-button-style-ghost span {
302
+ border-width: 3px;
303
+ border-style: solid;
304
+ }
305
+ .su-button-style-ghost:hover span { border-color: inherit !important; }
306
+ .su-button-style-soft span { background: 0 -20px url('../images/styles/style-soft.png') repeat-x }
307
+ .su-button-style-soft:hover span { background: 0 0 url('../images/styles/style-soft.png') repeat-x }
308
+ .su-button-style-glass span { background: 0 50% url('../images/styles/style-glass.png') repeat-x }
309
+ .su-button-style-glass:hover span { background: 100% 50% url('../images/styles/style-glass.png') repeat-x }
310
+ .su-button-style-bubbles span { background: 0 50% url('../images/styles/style-bubbles.png') no-repeat }
311
+ .su-button-style-bubbles:hover span { background: -710px 50% url('../images/styles/style-bubbles.png') no-repeat }
312
+ .su-button-style-noise span { background: 0 0 url('../images/styles/style-noise.png') repeat-x }
313
+ .su-button-style-noise:hover span { background: 0 0 url('../images/styles/style-noise.png') repeat-x }
314
+ .su-button-style-stroked span {
315
+ margin: 1px;
316
+ border: 1px dashed #fff !important;
317
+ }
318
+ .su-button-style-stroked:hover span {
319
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
320
+ filter: alpha(opacity=70);
321
+ -moz-opacity: 0.7;
322
+ -khtml-opacity: 0.7;
323
+ opacity: 0.7;
324
+ }
325
+ .su-button-style-3d {
326
+ border-bottom-style: solid;
327
+ border-bottom-width: 6px;
328
+ }
329
+ .su-button-style-3d span {
330
+ border-bottom-style: solid;
331
+ border-bottom-width: 1px;
332
+ }
333
+ .su-button-style-3d:hover {
334
+ position: relative;
335
+ top: 3px;
336
+ border-bottom-width: 3px;
337
+ }
338
+
339
+ /* Table
340
+ ---------------------------------------------------------------*/
341
+
342
+ .su-table table {
343
+ width: 100% !important;
344
+ margin: 0 0 1.5em 0 !important;
345
+ border-collapse: collapse !important;
346
+ font-size: 1em !important;
347
+ border: 1px solid #ccc !important;
348
+ }
349
+ .su-table th {
350
+ text-align: center !important;
351
+ padding: 1em !important;
352
+ font-size: 1em !important;
353
+ font-weight: normal !important;
354
+ color: #333 !important;
355
+ border: 1px solid #ccc !important;
356
+ background: #f0f0f0 !important;
357
+ }
358
+ .su-table td {
359
+ padding: 0.5em 1em !important;
360
+ border: 1px solid #ccc !important;
361
+ background: #fff !important;
362
+ }
363
+ .su-table .su-even td { background: #f7f7f7 !important }
364
+
365
+ /* QR code
366
+ ---------------------------------------------------------------*/
367
+
368
+ .su-qrcode { display: inline-block; }
369
+ .su-qrcode-align-left {
370
+ float: left;
371
+ margin: 0 0.5em 0.5em 0;
372
+ }
373
+ .su-qrcode-align-center {
374
+ display: block;
375
+ clear: both;
376
+ margin: 1em auto;
377
+ text-align: center;
378
+ }
379
+ .su-qrcode-align-right {
380
+ float: right;
381
+ margin: 0 0 0.5em 0.5em;
382
+ }
383
+ .su-qrcode a,
384
+ .su-qrcode a:hover,
385
+ .su-qrcode a:active,
386
+ .su-qrcode a:focus {
387
+ background: transparent;
388
+ outline: none;
389
+ display: inline;
390
+ text-decoration: none;
391
+ }
392
+ .su-qrcode-clickable a:hover {
393
+ opacity: 0.7;
394
+ filter: alpha(opacity=70);
395
+ }
396
  .su-qrcode img { max-width: 100%; }
assets/css/galleries-shortcodes.css CHANGED
@@ -1,455 +1,455 @@
1
- /*** Shortcodes Ultimate - galleries elements ***/
2
-
3
- .su-slider {
4
- position: relative;
5
- margin-bottom: 1.5em;
6
- overflow: hidden;
7
- -webkit-backface-visibility: hidden;
8
- -moz-backface-visibility: hidden;
9
- -ms-backface-visibility: hidden;
10
- -o-backface-visibility: hidden;
11
- backface-visibility: hidden;
12
- z-index: 1;
13
- }
14
- .su-slider-centered { margin: 0 auto 1.5em auto }
15
- .su-slider-slides {
16
- position: relative;
17
- width: 100%;
18
- -webkit-transition-property: -webkit-transform, left, top;
19
- -webkit-transition-duration: 0s;
20
- -webkit-transform: translate3d(0px, 0, 0);
21
- -webkit-transition-timing-function: ease;
22
- -moz-transition-property: -moz-transform, left, top;
23
- -moz-transition-duration: 0s;
24
- -moz-transform: translate3d(0px, 0, 0);
25
- -moz-transition-timing-function: ease;
26
- -o-transition-property: -o-transform, left, top;
27
- -o-transition-duration: 0s;
28
- -o-transform: translate3d(0px, 0, 0);
29
- -o-transition-timing-function: ease;
30
- -o-transform: translate(0px, 0px);
31
- -ms-transition-property: -ms-transform, left, top;
32
- -ms-transition-duration: 0s;
33
- -ms-transform: translate3d(0px, 0, 0);
34
- -ms-transition-timing-function: ease;
35
- transition-property: transform, left, top;
36
- transition-duration: 0s;
37
- transform: translate3d(0px, 0, 0);
38
- transition-timing-function: ease;
39
- }
40
- .swiper-free-mode > .su-slider-slides {
41
- -webkit-transition-timing-function: ease-out;
42
- -moz-transition-timing-function: ease-out;
43
- -ms-transition-timing-function: ease-out;
44
- -o-transition-timing-function: ease-out;
45
- transition-timing-function: ease-out;
46
- margin: 0 auto;
47
- }
48
- .su-slider-slide {
49
- position: relative;
50
- float: left;
51
- }
52
- .su-slider-slide > a,
53
- .su-slider-slide > img,
54
- .su-slider-slide > a > img {
55
- position: relative;
56
- display: block;
57
- width: 100%;
58
- height: 100%;
59
- text-decoration: none;
60
- }
61
- .su-slider-responsive-yes .su-slider-slide > a,
62
- .su-slider-responsive-yes .su-slider-slide > img,
63
- .su-slider-responsive-yes .su-slider-slide > a > img { height: auto }
64
- .su-slider-pages-no .su-slider-pagination { display: none }
65
- .swiper-wp8-horizontal { -ms-touch-action: pan-y }
66
- .swiper-wp8-vertical { -ms-touch-action: pan-x }
67
- .su-slider-slide-title {
68
- position: absolute;
69
- left: 20px;
70
- bottom: 20px;
71
- display: block;
72
- max-width: 90%;
73
- padding: 5px 10px;
74
- color: #fff;
75
- line-height: 1.3;
76
- background: rgb(0, 0, 0);
77
- background: rgba(0, 0, 0, 0.5);
78
- border-radius: 5px;
79
- -moz-border-radius: 5px;
80
- -webkit-border-radius: 5px;
81
- box-sizing: border-box;
82
- -moz-box-sizing: border-box;
83
- -webkit-box-sizing: border-box;
84
- filter: alpha(opacity=0);
85
- opacity: 0;
86
- transition: opacity 1s;
87
- -o-transition: opacity 1s;
88
- -ie-transition: opacity 1s;
89
- -moz-transition: opacity 1s;
90
- -webkit-transition: opacity 1s;
91
- }
92
- .su-slider-slide-visible .su-slider-slide-title {
93
- filter: alpha(opacity=100);
94
- opacity: 1;
95
- }
96
- .su-slider-prev,
97
- .su-slider-next {
98
- position: absolute;
99
- top: 50%;
100
- display: block;
101
- width: 40px;
102
- height: 40px;
103
- margin-top: -20px !important;
104
- background: rgb(0, 0, 0) 0 0 url('../images/swiper/default.png') no-repeat;
105
- background-color: rgba(0, 0, 0, 0.5);
106
- cursor: pointer;
107
- border-radius: 50%;
108
- -moz-border-radius: 50%;
109
- -webkit-border-radius: 50%;
110
- filter: alpha(opacity=0);
111
- opacity: 0;
112
- transition: all .2s;
113
- -o-transition: all .2s;
114
- -ie-transition: all .2s;
115
- -moz-transition: all .2s;
116
- -webkit-transition: all .2s;
117
- }
118
- .su-slider-prev {
119
- right: 10px;
120
- margin-right: 30px;
121
- background-position: -40px 0;
122
- }
123
- .su-slider-next {
124
- left: 10px;
125
- margin-left: 30px;
126
- background-position: 0 0;
127
- }
128
- .su-slider:hover .su-slider-prev,
129
- .su-slider:hover .su-slider-next {
130
- margin-left: 0;
131
- margin-right: 0;
132
- filter: alpha(opacity=70);
133
- opacity: 0.7;
134
- }
135
- .su-slider .su-slider-prev:hover,
136
- .su-slider .su-slider-next:hover {
137
- filter: alpha(opacity=100);
138
- opacity: 1;
139
- }
140
- .su-slider-pagination {
141
- position: absolute;
142
- left: 15%;
143
- right: 15%;
144
- top: 50%;
145
- width: 70%;
146
- height: 0;
147
- margin-top: -7px;
148
- text-align: center;
149
- cursor: default;
150
- filter: alpha(opacity=0);
151
- opacity: 0;
152
- transition: all .2s;
153
- -o-transition: all .2s;
154
- -ie-transition: all .2s;
155
- -moz-transition: all .2s;
156
- -webkit-transition: all .2s;
157
- }
158
- .su-slider:hover .su-slider-pagination {
159
- bottom: 20px;
160
- filter: alpha(opacity=100);
161
- opacity: 1;
162
- }
163
- .su-slider-pagination span {
164
- display: inline-block;
165
- width: 14px;
166
- height: 14px;
167
- margin: 0;
168
- background: rgb(0, 0, 0) 0 -999px url('../images/swiper/default.png') no-repeat;
169
- background-color: rgba(0, 0, 0, 0.5);
170
- cursor: pointer;
171
- border-radius: 50%;
172
- -moz-border-radius: 50%;
173
- -webkit-border-radius: 50%;
174
- transition: all .2s;
175
- -o-transition: all .2s;
176
- -ie-transition: all .2s;
177
- -moz-transition: all .2s;
178
- -webkit-transition: all .2s;
179
- }
180
- .su-slider:hover .su-slider-pagination span { margin: 0 3px }
181
- .su-slider .su-slider-pagination span.swiper-visible-switch {
182
- background-color: rgb(255, 255, 255);
183
- background-color: rgba(255, 255, 255, 0.5);
184
- }
185
- .su-slider-pagination span:hover,
186
- .su-slider-pagination span.swiper-active-switch { background-position: 0 -40px }
187
-
188
- /* Carousel
189
- ---------------------------------------------------------------*/
190
-
191
- .su-carousel {
192
- position: relative;
193
- margin-bottom: 1.5em;
194
- overflow: hidden;
195
- -webkit-backface-visibility: hidden;
196
- -moz-backface-visibility: hidden;
197
- -ms-backface-visibility: hidden;
198
- -o-backface-visibility: hidden;
199
- backface-visibility: hidden;
200
- z-index: 1;
201
- }
202
- .su-carousel-centered { margin: 0 auto 1.5em auto }
203
- .su-carousel-slides {
204
- position: relative;
205
- width: 100%;
206
- -webkit-transition-property: -webkit-transform, left, top;
207
- -webkit-transition-duration: 0s;
208
- -webkit-transform: translate3d(0px, 0, 0);
209
- -webkit-transition-timing-function: ease;
210
- -moz-transition-property: -moz-transform, left, top;
211
- -moz-transition-duration: 0s;
212
- -moz-transform: translate3d(0px, 0, 0);
213
- -moz-transition-timing-function: ease;
214
- -o-transition-property: -o-transform, left, top;
215
- -o-transition-duration: 0s;
216
- -o-transform: translate3d(0px, 0, 0);
217
- -o-transition-timing-function: ease;
218
- -o-transform: translate(0px, 0px);
219
- -ms-transition-property: -ms-transform, left, top;
220
- -ms-transition-duration: 0s;
221
- -ms-transform: translate3d(0px, 0, 0);
222
- -ms-transition-timing-function: ease;
223
- transition-property: transform, left, top;
224
- transition-duration: 0s;
225
- transform: translate3d(0px, 0, 0);
226
- transition-timing-function: ease;
227
- }
228
- .swiper-free-mode > .su-carousel-slides {
229
- -webkit-transition-timing-function: ease-out;
230
- -moz-transition-timing-function: ease-out;
231
- -ms-transition-timing-function: ease-out;
232
- -o-transition-timing-function: ease-out;
233
- transition-timing-function: ease-out;
234
- margin: 0 auto;
235
- }
236
- .su-carousel-slide {
237
- position: relative;
238
- float: left;
239
- }
240
- .su-carousel-slide > a,
241
- .su-carousel-slide > img,
242
- .su-carousel-slide > a > img {
243
- position: relative;
244
- display: block;
245
- width: 100%;
246
- height: 100%;
247
- text-decoration: none;
248
- box-sizing: border-box;
249
- -moz-box-sizing: border-box;
250
- -webkit-box-sizing: border-box;
251
- }
252
- .su-carousel-responsive-yes .su-carousel-slide > a,
253
- .su-carousel-responsive-yes .su-carousel-slide > img,
254
- .su-carousel-responsive-yes .su-carousel-slide > a > img { height: auto }
255
- .su-carousel-pages-no .su-carousel-pagination { display: none }
256
- .swiper-wp8-horizontal { -ms-touch-action: pan-y }
257
- .swiper-wp8-vertical { -ms-touch-action: pan-x }
258
- .su-carousel { }
259
- .su-carousel .su-carousel-slide a { padding: 0 5px }
260
- .su-carousel .su-carousel-slide img {
261
- padding: 3px;
262
- border: 1px solid #ccc;
263
- background: #fff;
264
- border-radius: 5px;
265
- -moz-border-radius: 5px;
266
- -webkit-border-radius: 5px;
267
- }
268
- .su-carousel .su-carousel-slide-title {
269
- position: absolute;
270
- left: 9px;
271
- right: 9px;
272
- bottom: 4px;
273
- display: block;
274
- padding: 2px 3px;
275
- color: #fff;
276
- line-height: 1.2;
277
- font-size: 11px;
278
- background: rgb(0, 0, 0);
279
- background: rgba(0, 0, 0, 0.5);
280
- box-sizing: border-box;
281
- -moz-box-sizing: border-box;
282
- -webkit-box-sizing: border-box;
283
- transition: opacity 1s;
284
- -o-transition: opacity 1s;
285
- -ie-transition: opacity 1s;
286
- -moz-transition: opacity 1s;
287
- -webkit-transition: opacity 1s;
288
- }
289
- .su-carousel .su-carousel-prev,
290
- .su-carousel .su-carousel-next {
291
- position: absolute;
292
- top: 50%;
293
- display: block;
294
- width: 40px;
295
- height: 40px;
296
- margin-top: -20px;
297
- background: rgb(0, 0, 0) 0 0 url('../images/swiper/default.png') no-repeat;
298
- background-color: rgba(0, 0, 0, 0.5);
299
- cursor: pointer;
300
- border-radius: 50%;
301
- -moz-border-radius: 50%;
302
- -webkit-border-radius: 50%;
303
- filter: alpha(opacity=0);
304
- opacity: 0;
305
- transition: all .2s;
306
- -o-transition: all .2s;
307
- -ie-transition: all .2s;
308
- -moz-transition: all .2s;
309
- -webkit-transition: all .2s;
310
- }
311
- .su-carousel .su-carousel-prev {
312
- right: 20px;
313
- margin-right: 40px;
314
- background-position: -40px 0;
315
- }
316
- .su-carousel .su-carousel-next {
317
- left: 20px;
318
- margin-left: 40px;
319
- background-position: 0 0;
320
- }
321
- .su-carousel:hover .su-carousel-prev,
322
- .su-carousel:hover .su-carousel-next {
323
- margin-left: 0;
324
- margin-right: 0;
325
- filter: alpha(opacity=70);
326
- opacity: 0.7;
327
- }
328
- .su-carousel .su-carousel-prev:hover,
329
- .su-carousel .su-carousel-next:hover {
330
- filter: alpha(opacity=100);
331
- opacity: 1;
332
- }
333
- .su-carousel .su-carousel-pagination {
334
- position: absolute;
335
- left: 15%;
336
- right: 15%;
337
- top: 50%;
338
- width: 70%;
339
- height: 0;
340
- margin-top: -7px;
341
- text-align: center;
342
- cursor: default;
343
- filter: alpha(opacity=0);
344
- opacity: 0;
345
- transition: all .2s;
346
- -o-transition: all .2s;
347
- -ie-transition: all .2s;
348
- -moz-transition: all .2s;
349
- -webkit-transition: all .2s;
350
- }
351
- .su-carousel:hover .su-carousel-pagination {
352
- bottom: 20px;
353
- filter: alpha(opacity=100);
354
- opacity: 1;
355
- }
356
- .su-carousel .su-carousel-pagination span {
357
- display: inline-block;
358
- width: 14px;
359
- height: 14px;
360
- margin: 0;
361
- background: rgb(0, 0, 0) 0 -999px url('../images/swiper/default.png') no-repeat;
362
- background-color: rgba(0, 0, 0, 0.5);
363
- cursor: pointer;
364
- border-radius: 50%;
365
- -moz-border-radius: 50%;
366
- -webkit-border-radius: 50%;
367
- transition: all .2s;
368
- -o-transition: all .2s;
369
- -ie-transition: all .2s;
370
- -moz-transition: all .2s;
371
- -webkit-transition: all .2s;
372
- }
373
- .su-carousel:hover .su-carousel-pagination span { margin: 0 3px }
374
- .su-carousel .su-carousel-pagination span.swiper-visible-switch {
375
- background-color: rgb(255, 255, 255);
376
- background-color: rgba(255, 255, 255, 0.5);
377
- }
378
- .su-carousel .su-carousel-pagination span:hover,
379
- .su-carousel .su-carousel-pagination span.swiper-active-switch { background-position: 0 -40px }
380
-
381
- /* Custom gallery
382
- ---------------------------------------------------------------*/
383
-
384
- .su-custom-gallery { margin-bottom: 1.5em }
385
- .su-custom-gallery:after,
386
- .su-custom-gallery:before {
387
- content: "";
388
- display: table;
389
- }
390
- .su-custom-gallery:after { clear: both }
391
- .su-custom-gallery-slide {
392
- position: relative;
393
- float: left;
394
- margin: 0.5em;
395
- overflow: hidden;
396
- }
397
- .su-custom-gallery-slide a {
398
- display: block;
399
- width: 100%;
400
- height: 100%;
401
- }
402
- .su-custom-gallery-slide img {
403
- display: block;
404
- margin: 0;
405
- padding: 3px;
406
- border: 1px solid #ccc;
407
- background: #fff;
408
- box-sizing: border-box;
409
- -moz-box-sizing: border-box;
410
- -webkit-box-sizing: border-box;
411
- border-radius: 5px;
412
- -moz-border-radius: 5px;
413
- -webkit-border-radius: 5px;
414
- box-shadow: none;
415
- -moz-box-shadow: none;
416
- -webkit-box-shadow: none;
417
- transition: all .2s;
418
- -o-transition: all .2s;
419
- -ie-transition: all .2s;
420
- -moz-transition: all .2s;
421
- -webkit-transition: all .2s;
422
- }
423
- .su-custom-gallery-slide:hover img {
424
- background: #eee;
425
- border: 1px solid #aaa;
426
- }
427
- .su-custom-gallery-slide span {
428
- position: absolute;
429
- left: 4px;
430
- bottom: 4px;
431
- right: 4px;
432
- display: block;
433
- padding: 2px 4px;
434
- font-size: 12px;
435
- color: #fff;
436
- background: rgb(0, 0, 0);
437
- background: rgba(0, 0, 0, 0.5);
438
- line-height: 1.3;
439
- opacity: 0;
440
- filter: alpha(opacity=0);
441
- transition: all .2s;
442
- -o-transition: all .2s;
443
- -ie-transition: all .2s;
444
- -moz-transition: all .2s;
445
- -webkit-transition: all .2s;
446
- }
447
- .su-custom-gallery-slide:hover span {
448
- opacity: 1;
449
- filter: alpha(opacity=100);
450
- }
451
- .su-custom-gallery-title-never span { display: none }
452
- .su-custom-gallery-title-always span {
453
- opacity: 1;
454
- filter: alpha(opacity=100);
455
  }
1
+ /*** Shortcodes Ultimate - galleries elements ***/
2
+
3
+ .su-slider {
4
+ position: relative;
5
+ margin-bottom: 1.5em;
6
+ overflow: hidden;
7
+ -webkit-backface-visibility: hidden;
8
+ -moz-backface-visibility: hidden;
9
+ -ms-backface-visibility: hidden;
10
+ -o-backface-visibility: hidden;
11
+ backface-visibility: hidden;
12
+ z-index: 1;
13
+ }
14
+ .su-slider-centered { margin: 0 auto 1.5em auto }
15
+ .su-slider-slides {
16
+ position: relative;
17
+ width: 100%;
18
+ -webkit-transition-property: -webkit-transform, left, top;
19
+ -webkit-transition-duration: 0s;
20
+ -webkit-transform: translate3d(0px, 0, 0);
21
+ -webkit-transition-timing-function: ease;
22
+ -moz-transition-property: -moz-transform, left, top;
23
+ -moz-transition-duration: 0s;
24
+ -moz-transform: translate3d(0px, 0, 0);
25
+ -moz-transition-timing-function: ease;
26
+ -o-transition-property: -o-transform, left, top;
27
+ -o-transition-duration: 0s;
28
+ -o-transform: translate3d(0px, 0, 0);
29
+ -o-transition-timing-function: ease;
30
+ -o-transform: translate(0px, 0px);
31
+ -ms-transition-property: -ms-transform, left, top;
32
+ -ms-transition-duration: 0s;
33
+ -ms-transform: translate3d(0px, 0, 0);
34
+ -ms-transition-timing-function: ease;
35
+ transition-property: transform, left, top;
36
+ transition-duration: 0s;
37
+ transform: translate3d(0px, 0, 0);
38
+ transition-timing-function: ease;
39
+ }
40
+ .swiper-free-mode > .su-slider-slides {
41
+ -webkit-transition-timing-function: ease-out;
42
+ -moz-transition-timing-function: ease-out;
43
+ -ms-transition-timing-function: ease-out;
44
+ -o-transition-timing-function: ease-out;
45
+ transition-timing-function: ease-out;
46
+ margin: 0 auto;
47
+ }
48
+ .su-slider-slide {
49
+ position: relative;
50
+ float: left;
51
+ }
52
+ .su-slider-slide > a,
53
+ .su-slider-slide > img,
54
+ .su-slider-slide > a > img {
55
+ position: relative;
56
+ display: block;
57
+ width: 100%;
58
+ height: 100%;
59
+ text-decoration: none;
60
+ }
61
+ .su-slider-responsive-yes .su-slider-slide > a,
62
+ .su-slider-responsive-yes .su-slider-slide > img,
63
+ .su-slider-responsive-yes .su-slider-slide > a > img { height: auto }
64
+ .su-slider-pages-no .su-slider-pagination { display: none }
65
+ .swiper-wp8-horizontal { -ms-touch-action: pan-y }
66
+ .swiper-wp8-vertical { -ms-touch-action: pan-x }
67
+ .su-slider-slide-title {
68
+ position: absolute;
69
+ left: 20px;
70
+ bottom: 20px;
71
+ display: block;
72
+ max-width: 90%;
73
+ padding: 5px 10px;
74
+ color: #fff;
75
+ line-height: 1.3;
76
+ background: rgb(0, 0, 0);
77
+ background: rgba(0, 0, 0, 0.5);
78
+ border-radius: 5px;
79
+ -moz-border-radius: 5px;
80
+ -webkit-border-radius: 5px;
81
+ box-sizing: border-box;
82
+ -moz-box-sizing: border-box;
83
+ -webkit-box-sizing: border-box;
84
+ filter: alpha(opacity=0);
85
+ opacity: 0;
86
+ transition: opacity 1s;
87
+ -o-transition: opacity 1s;
88
+ -ie-transition: opacity 1s;
89
+ -moz-transition: opacity 1s;
90
+ -webkit-transition: opacity 1s;
91
+ }
92
+ .su-slider-slide-visible .su-slider-slide-title {
93
+ filter: alpha(opacity=100);
94
+ opacity: 1;
95
+ }
96
+ .su-slider-prev,
97
+ .su-slider-next {
98
+ position: absolute;
99
+ top: 50%;
100
+ display: block;
101
+ width: 40px;
102
+ height: 40px;
103
+ margin-top: -20px !important;
104
+ background: rgb(0, 0, 0) 0 0 url('../images/swiper/default.png') no-repeat;
105
+ background-color: rgba(0, 0, 0, 0.5);
106
+ cursor: pointer;
107
+ border-radius: 50%;
108
+ -moz-border-radius: 50%;
109
+ -webkit-border-radius: 50%;
110
+ filter: alpha(opacity=0);
111
+ opacity: 0;
112
+ transition: all .2s;
113
+ -o-transition: all .2s;
114
+ -ie-transition: all .2s;
115
+ -moz-transition: all .2s;
116
+ -webkit-transition: all .2s;
117
+ }
118
+ .su-slider-prev {
119
+ right: 10px;
120
+ margin-right: 30px;
121
+ background-position: -40px 0;
122
+ }
123
+ .su-slider-next {
124
+ left: 10px;
125
+ margin-left: 30px;
126
+ background-position: 0 0;
127
+ }
128
+ .su-slider:hover .su-slider-prev,
129
+ .su-slider:hover .su-slider-next {
130
+ margin-left: 0;
131
+ margin-right: 0;
132
+ filter: alpha(opacity=70);
133
+ opacity: 0.7;
134
+ }
135
+ .su-slider .su-slider-prev:hover,
136
+ .su-slider .su-slider-next:hover {
137
+ filter: alpha(opacity=100);
138
+ opacity: 1;
139
+ }
140
+ .su-slider-pagination {
141
+ position: absolute;
142
+ left: 15%;
143
+ right: 15%;
144
+ top: 50%;
145
+ width: 70%;
146
+ height: 0;
147
+ margin-top: -7px;
148
+ text-align: center;
149
+ cursor: default;
150
+ filter: alpha(opacity=0);
151
+ opacity: 0;
152
+ transition: all .2s;
153
+ -o-transition: all .2s;
154
+ -ie-transition: all .2s;
155
+ -moz-transition: all .2s;
156
+ -webkit-transition: all .2s;
157
+ }
158
+ .su-slider:hover .su-slider-pagination {
159
+ bottom: 20px;
160
+ filter: alpha(opacity=100);
161
+ opacity: 1;
162
+ }
163
+ .su-slider-pagination span {
164
+ display: inline-block;
165
+ width: 14px;
166
+ height: 14px;
167
+ margin: 0;
168
+ background: rgb(0, 0, 0) 0 -999px url('../images/swiper/default.png') no-repeat;
169
+ background-color: rgba(0, 0, 0, 0.5);
170
+ cursor: pointer;
171
+ border-radius: 50%;
172
+ -moz-border-radius: 50%;
173
+ -webkit-border-radius: 50%;
174
+ transition: all .2s;
175
+ -o-transition: all .2s;
176
+ -ie-transition: all .2s;
177
+ -moz-transition: all .2s;
178
+ -webkit-transition: all .2s;
179
+ }
180
+ .su-slider:hover .su-slider-pagination span { margin: 0 3px }
181
+ .su-slider .su-slider-pagination span.swiper-visible-switch {
182
+ background-color: rgb(255, 255, 255);
183
+ background-color: rgba(255, 255, 255, 0.5);
184
+ }
185
+ .su-slider-pagination span:hover,
186
+ .su-slider-pagination span.swiper-active-switch { background-position: 0 -40px }
187
+
188
+ /* Carousel
189
+ ---------------------------------------------------------------*/
190
+
191
+ .su-carousel {
192
+ position: relative;
193
+ margin-bottom: 1.5em;
194
+ overflow: hidden;
195
+ -webkit-backface-visibility: hidden;
196
+ -moz-backface-visibility: hidden;
197
+ -ms-backface-visibility: hidden;
198
+ -o-backface-visibility: hidden;
199
+ backface-visibility: hidden;
200
+ z-index: 1;
201
+ }
202
+ .su-carousel-centered { margin: 0 auto 1.5em auto }
203
+ .su-carousel-slides {
204
+ position: relative;
205
+ width: 100%;
206
+ -webkit-transition-property: -webkit-transform, left, top;
207
+ -webkit-transition-duration: 0s;
208
+ -webkit-transform: translate3d(0px, 0, 0);
209
+ -webkit-transition-timing-function: ease;
210
+ -moz-transition-property: -moz-transform, left, top;
211
+ -moz-transition-duration: 0s;
212
+ -moz-transform: translate3d(0px, 0, 0);
213
+ -moz-transition-timing-function: ease;
214
+ -o-transition-property: -o-transform, left, top;
215
+ -o-transition-duration: 0s;
216
+ -o-transform: translate3d(0px, 0, 0);
217
+ -o-transition-timing-function: ease;
218
+ -o-transform: translate(0px, 0px);
219
+ -ms-transition-property: -ms-transform, left, top;
220
+ -ms-transition-duration: 0s;
221
+ -ms-transform: translate3d(0px, 0, 0);
222
+ -ms-transition-timing-function: ease;
223
+ transition-property: transform, left, top;
224
+ transition-duration: 0s;
225
+ transform: translate3d(0px, 0, 0);
226
+ transition-timing-function: ease;
227
+ }
228
+ .swiper-free-mode > .su-carousel-slides {
229
+ -webkit-transition-timing-function: ease-out;
230
+ -moz-transition-timing-function: ease-out;
231
+ -ms-transition-timing-function: ease-out;
232
+ -o-transition-timing-function: ease-out;
233
+ transition-timing-function: ease-out;
234
+ margin: 0 auto;
235
+ }
236
+ .su-carousel-slide {
237
+ position: relative;
238
+ float: left;
239
+ }
240
+ .su-carousel-slide > a,
241
+ .su-carousel-slide > img,
242
+ .su-carousel-slide > a > img {
243
+ position: relative;
244
+ display: block;
245
+ width: 100%;
246
+ height: 100%;
247
+ text-decoration: none;
248
+ box-sizing: border-box;
249
+ -moz-box-sizing: border-box;
250
+ -webkit-box-sizing: border-box;
251
+ }
252
+ .su-carousel-responsive-yes .su-carousel-slide > a,
253
+ .su-carousel-responsive-yes .su-carousel-slide > img,
254
+ .su-carousel-responsive-yes .su-carousel-slide > a > img { height: auto }
255
+ .su-carousel-pages-no .su-carousel-pagination { display: none }
256
+ .swiper-wp8-horizontal { -ms-touch-action: pan-y }
257
+ .swiper-wp8-vertical { -ms-touch-action: pan-x }
258
+ .su-carousel { }
259
+ .su-carousel .su-carousel-slide a { padding: 0 5px }
260
+ .su-carousel .su-carousel-slide img {
261
+ padding: 3px;
262
+ border: 1px solid #ccc;
263
+ background: #fff;
264
+ border-radius: 5px;
265
+ -moz-border-radius: 5px;
266
+ -webkit-border-radius: 5px;
267
+ }
268
+ .su-carousel .su-carousel-slide-title {
269
+ position: absolute;
270
+ left: 9px;
271
+ right: 9px;
272
+ bottom: 4px;
273
+ display: block;
274
+ padding: 2px 3px;
275
+ color: #fff;
276
+ line-height: 1.2;
277
+ font-size: 11px;
278
+ background: rgb(0, 0, 0);
279
+ background: rgba(0, 0, 0, 0.5);
280
+ box-sizing: border-box;
281
+ -moz-box-sizing: border-box;
282
+ -webkit-box-sizing: border-box;
283
+ transition: opacity 1s;
284
+ -o-transition: opacity 1s;
285
+ -ie-transition: opacity 1s;
286
+ -moz-transition: opacity 1s;
287
+ -webkit-transition: opacity 1s;
288
+ }
289
+ .su-carousel .su-carousel-prev,
290
+ .su-carousel .su-carousel-next {
291
+ position: absolute;
292
+ top: 50%;
293
+ display: block;
294
+ width: 40px;
295
+ height: 40px;
296
+ margin-top: -20px;
297
+ background: rgb(0, 0, 0) 0 0 url('../images/swiper/default.png') no-repeat;
298
+ background-color: rgba(0, 0, 0, 0.5);
299
+ cursor: pointer;
300
+ border-radius: 50%;
301
+ -moz-border-radius: 50%;
302
+ -webkit-border-radius: 50%;
303
+ filter: alpha(opacity=0);
304
+ opacity: 0;
305
+ transition: all .2s;
306
+ -o-transition: all .2s;
307
+ -ie-transition: all .2s;
308
+ -moz-transition: all .2s;
309
+ -webkit-transition: all .2s;
310
+ }
311
+ .su-carousel .su-carousel-prev {
312
+ right: 20px;
313
+ margin-right: 40px;
314
+ background-position: -40px 0;
315
+ }
316
+ .su-carousel .su-carousel-next {
317
+ left: 20px;
318
+ margin-left: 40px;
319
+ background-position: 0 0;
320
+ }
321
+ .su-carousel:hover .su-carousel-prev,
322
+ .su-carousel:hover .su-carousel-next {
323
+ margin-left: 0;
324
+ margin-right: 0;
325
+ filter: alpha(opacity=70);
326
+ opacity: 0.7;
327
+ }
328
+ .su-carousel .su-carousel-prev:hover,
329
+ .su-carousel .su-carousel-next:hover {
330
+ filter: alpha(opacity=100);
331
+ opacity: 1;
332
+ }
333
+ .su-carousel .su-carousel-pagination {
334
+ position: absolute;
335
+ left: 15%;
336
+ right: 15%;
337
+ top: 50%;
338
+ width: 70%;
339
+ height: 0;
340
+ margin-top: -7px;
341
+ text-align: center;
342
+ cursor: default;
343
+ filter: alpha(opacity=0);
344
+ opacity: 0;
345
+ transition: all .2s;
346
+ -o-transition: all .2s;
347
+ -ie-transition: all .2s;
348
+ -moz-transition: all .2s;
349
+ -webkit-transition: all .2s;
350
+ }
351
+ .su-carousel:hover .su-carousel-pagination {
352
+ bottom: 20px;
353
+ filter: alpha(opacity=100);
354
+ opacity: 1;
355
+ }
356
+ .su-carousel .su-carousel-pagination span {
357
+ display: inline-block;
358
+ width: 14px;
359
+ height: 14px;
360
+ margin: 0;
361
+ background: rgb(0, 0, 0) 0 -999px url('../images/swiper/default.png') no-repeat;
362
+ background-color: rgba(0, 0, 0, 0.5);
363
+ cursor: pointer;
364
+ border-radius: 50%;
365
+ -moz-border-radius: 50%;
366
+ -webkit-border-radius: 50%;
367
+ transition: all .2s;
368
+ -o-transition: all .2s;
369
+ -ie-transition: all .2s;
370
+ -moz-transition: all .2s;
371
+ -webkit-transition: all .2s;
372
+ }
373
+ .su-carousel:hover .su-carousel-pagination span { margin: 0 3px }
374
+ .su-carousel .su-carousel-pagination span.swiper-visible-switch {
375
+ background-color: rgb(255, 255, 255);
376
+ background-color: rgba(255, 255, 255, 0.5);
377
+ }
378
+ .su-carousel .su-carousel-pagination span:hover,
379
+ .su-carousel .su-carousel-pagination span.swiper-active-switch { background-position: 0 -40px }
380
+
381
+ /* Custom gallery
382
+ ---------------------------------------------------------------*/
383
+
384
+ .su-custom-gallery { margin-bottom: 1.5em }
385
+ .su-custom-gallery:after,
386
+ .su-custom-gallery:before {
387
+ content: "";
388
+ display: table;
389
+ }
390
+ .su-custom-gallery:after { clear: both }
391
+ .su-custom-gallery-slide {
392
+ position: relative;
393
+ float: left;
394
+ margin: 0.5em;
395
+ overflow: hidden;
396
+ }
397
+ .su-custom-gallery-slide a {
398
+ display: block;
399
+ width: 100%;
400
+ height: 100%;
401
+ }
402
+ .su-custom-gallery-slide img {
403
+ display: block;
404
+ margin: 0;
405
+ padding: 3px;
406
+ border: 1px solid #ccc;
407
+ background: #fff;
408
+ box-sizing: border-box;
409
+ -moz-box-sizing: border-box;
410
+ -webkit-box-sizing: border-box;
411
+ border-radius: 5px;
412
+ -moz-border-radius: 5px;
413
+ -webkit-border-radius: 5px;
414
+ box-shadow: none;
415
+ -moz-box-shadow: none;
416
+ -webkit-box-shadow: none;
417
+ transition: all .2s;
418
+ -o-transition: all .2s;
419
+ -ie-transition: all .2s;
420
+ -moz-transition: all .2s;
421
+ -webkit-transition: all .2s;
422
+ }
423
+ .su-custom-gallery-slide:hover img {
424
+ background: #eee;
425
+ border: 1px solid #aaa;
426
+ }
427
+ .su-custom-gallery-slide span {
428
+ position: absolute;
429
+ left: 4px;
430
+ bottom: 4px;
431
+ right: 4px;
432
+ display: block;
433
+ padding: 2px 4px;
434
+ font-size: 12px;
435
+ color: #fff;
436
+ background: rgb(0, 0, 0);
437
+ background: rgba(0, 0, 0, 0.5);
438
+ line-height: 1.3;
439
+ opacity: 0;
440
+ filter: alpha(opacity=0);
441
+ transition: all .2s;
442
+ -o-transition: all .2s;
443
+ -ie-transition: all .2s;
444
+ -moz-transition: all .2s;
445
+ -webkit-transition: all .2s;
446
+ }
447
+ .su-custom-gallery-slide:hover span {
448
+ opacity: 1;
449
+ filter: alpha(opacity=100);
450
+ }
451
+ .su-custom-gallery-title-never span { display: none }
452
+ .su-custom-gallery-title-always span {
453
+ opacity: 1;
454
+ filter: alpha(opacity=100);
455
  }
assets/css/generator.css CHANGED
@@ -1,644 +1,644 @@
1
- .su-generator-clearfix:before,
2
- .su-generator-clearfix:after {
3
- display: table;
4
- content: " ";
5
- }
6
- .su-generator-clearfix:after { clear: both; }
7
- .su-generator-clear {
8
- height: 0;
9
- clear: both;
10
- overflow: hidden;
11
- }
12
- .su-generator-hidden { display: none !important; }
13
-
14
- .su-generator-loading {
15
- min-height: 60px;
16
- background: 50% 50% url("../images/spinner.gif") no-repeat !important;
17
- }
18
- .su-generator-loading * { visibility: hidden; }
19
-
20
- .su-generator-button img {
21
- margin: -1px 2px 0 -5px;
22
- vertical-align: middle;
23
- }
24
- .wp-media-buttons .su-generator-button img {
25
- margin: -1px -1px 0 -4px;
26
- vertical-align: middle;
27
- }
28
-
29
- #su-generator-wrap { display: none; }
30
- #su-generator {
31
- position: relative;
32
- width: 85%;
33
- max-width: 1000px;
34
- margin: 28px auto 100px;
35
- padding: 20px;
36
- background: #fff;
37
- -webkit-box-shadow: 0 2px 25px #000;
38
- -moz-box-shadow: 0 2px 25px #000;
39
- box-shadow: 0 2px 25px #000;
40
- -webkit-transition: max-width .2s;
41
- -moz-transition: max-width .2s;
42
- transition: max-width .2s;
43
- }
44
- #su-generator.su-generator-narrow { max-width: 500px; }
45
-
46
- /* Generator tools */
47
- #su-generator-tools { margin: 0 20px 20px 0; }
48
- #su-generator-tools span {
49
- display: inline-block;
50
- width: 1px;
51
- height: 1em;
52
- margin: 0 0.5em;
53
- border-right: 1px dotted #555;
54
- vertical-align: middle;
55
- }
56
- #su-generator-tools a { text-decoration: none; }
57
- #su-generator-tools a.su-add-ons {
58
- display: inline-block;
59
- padding: 2px 7px;
60
- background: #FF7654;
61
- color: #fff;
62
- border: 1px solid #ff4d21;
63
- border-radius: 3px;
64
- }
65
- #su-generator-tools a.su-add-ons:hover { background: #ff4d21; }
66
-
67
- /* Search box */
68
- #su-generator-search {
69
- width: 100%;
70
- margin-bottom: 30px;
71
- padding: 10px 10px 10px 42px;
72
- background: 5px 50% url('../images/search.png') no-repeat;
73
- font-size: 1.3em;
74
- }
75
-
76
- /* Filter box */
77
- #su-generator-filter {
78
- margin: 0 -20px;
79
- padding: 14px 20px;
80
- border-top: 1px solid #ccc;
81
- border-bottom: 1px solid #ccc;
82
- background: #eee;
83
- color: #555;
84
- text-align: center;
85
- line-height: 24px;
86
- }
87
- #su-generator-filter a,
88
- #su-generator-filter strong {
89
- display: inline-block;
90
- margin: 0 1em;
91
- line-height: 1;
92
- }
93
- #su-generator-filter a {
94
- border-bottom: 1px dotted #ccc;
95
- text-decoration: none;
96
- }
97
-
98
- /* Dropdown choices */
99
- #su-generator-choices {
100
- margin-top: 20px;
101
- text-align: left;
102
- }
103
- #su-generator-choices > span {
104
- position: relative;
105
- display: block;
106
- width: 20%;
107
- height: 28px;
108
- min-width: 130px;
109
- padding: 0 5px 0 30px;
110
- float: left;
111
- overflow: hidden;
112
- -webkit-box-sizing: border-box;
113
- -moz-box-sizing: border-box;
114
- box-sizing: border-box;
115
- border-bottom: 1px dotted #e5e5e5;
116
- color: #222;
117
- vertical-align: top;
118
- text-align: left;
119
- line-height: 28px;
120
- cursor: pointer;
121
- }
122
- #su-generator-choices span:hover {
123
- border-bottom: 1px solid #333;
124
- background: #333;
125
- color: #fff;
126
- }
127
- #su-generator-choices span img {
128
- position: absolute;
129
- top: 7px;
130
- left: 7px;
131
- width: 14px;
132
- height: 14px;
133
- }
134
- #su-generator-choices span i {
135
- position: absolute;
136
- top: 1px;
137
- left: 1px;
138
- display: block;
139
- width: 26px;
140
- height: 26px;
141
- color: #888;
142
- text-align: center;
143
- font-size: 14px;
144
- line-height: 26px;
145
- }
146
- #su-generator-choices span:hover i { color: #fff; }
147
- .su-generator-choice-first {
148
- outline: 1px solid #09f;
149
- box-shadow: 0 0 3px rgba(30,140,190,.8);
150
- }
151
-
152
- /* Breadcrumbs */
153
- #su-generator-breadcrumbs {
154
- margin: 0 -20px;
155
- padding: 14px 20px;
156
- border-top: 1px solid #ccc;
157
- border-bottom: 1px solid #ccc;
158
- background: #eee;
159
- color: #555;
160
- line-height: 24px;
161
- }
162
- #su-generator-breadcrumbs span {
163
- margin-right: 1em;
164
- font-weight: bold;
165
- }
166
- #su-generator-breadcrumbs small {
167
- color: #bbb;
168
- font-weight: normal;
169
- font-size: 0.9em;
170
- }
171
-
172
- /* Notes */
173
- .su-generator-note {
174
- position: relative;
175
- margin: 0 -20px;
176
- padding: 5px 20px;
177
- background: #FFFFB8;
178
- border-bottom: 1px solid #ccc;
179
- color: #333;
180
- line-height: 18px;
181
- }
182
- .su-generator-note-content {
183
- min-height: 20px;
184
- margin-left: 35px;
185
- }
186
- .su-generator-note p { margin: 10px 0; }
187
- .su-generator-note a {
188
- text-decoration: underline;
189
- }
190
- .su-generator-note i {
191
- position: absolute;
192
- top: 15px;
193
- left: 20px;
194
- display: block;
195
- width: 1em;
196
- height: 1em;
197
- color: #555;
198
- text-align: left;
199
- font-size: 20px;
200
- line-height: 1em;
201
- }
202
-
203
- /* Attribute container */
204
- #su-generator-settings .su-generator-attr-container {
205
- margin: 0 -20px;
206
- padding: 1.5em 20px;
207
- border-bottom: 1px solid #ccc;
208
- }
209
-
210
- /* Attribute name */
211
- #su-generator-settings h5,
212
- #su-generator-preview h5 {
213
- margin: 0 0 15px 0;
214
- font-size: 1em;
215
- }
216
-
217
- /* Attribute description */
218
- .su-generator-attr-desc {
219
- margin-top: 15px;
220
- color: #aaa;
221
- font-style: italic;
222
- line-height: 1.6;
223
- }
224
- .su-generator-attr-desc b { color: #999; }
225
-
226
- /* Small text after text field */
227
- .su-generator-px-units {
228
- position: relative;
229
- margin-right: 15px;
230
- }
231
- .su-generator-px-units:before {
232
- position: absolute;
233
- right: -18px;
234
- bottom: 3px;
235
- display: block;
236
- width: 15px;
237
- color: #999;
238
- content: 'px';
239
- text-align: left;
240
- font-size: 0.9em;
241
- }
242
-
243
- /* Clickable values in attribute description */
244
- .su-generator-attr-desc b.su-generator-set-value {
245
- border-bottom: 1px dotted #999;
246
- cursor: pointer;
247
- }
248
- .su-generator-attr-desc b.su-generator-set-value:hover {
249
- border-bottom: 1px dotted #333;
250
- color: #333;
251
- }
252
-
253
- /* Common attribute fields */
254
- #su-generator-settings input[type="text"],
255
- #su-generator-settings input[type="number"],
256
- #su-generator-settings textarea,
257
- #su-generator-settings select {
258
- width: 100%;
259
- height: auto;
260
- padding: 10px;
261
- }
262
-
263
- /* Upload fields */
264
- .su-generator-field-actions { padding-top: 10px; }
265
- .su-generator-field-actions .button,
266
- .su-generator-field-actions span { margin-right: 5px; }
267
- .su-generator-field-actions img {
268
- margin: 0 6px 0 -4px;
269
- vertical-align: middle;
270
- }
271
-
272
- /* Icon picker */
273
- .su-generator-icon-picker {
274
- height: 0;
275
- margin: 0 -20px;
276
- padding: 0 20px;
277
- overflow: hidden;
278
- background: #eee;
279
- line-height: 24px;
280
- -webkit-transition: all .2s;
281
- -moz-transition: all .2s;
282
- transition: all .2s;
283
- }
284
- .su-generator-icon-picker.su-generator-icon-picker-visible {
285
- height: auto;
286
- margin: 1em -20px 0 -20px;
287
- padding: 14px 20px;
288
- overflow: visible;
289
- border-top: 1px solid #ccc;
290
- border-bottom: 1px solid #ccc;
291
- }
292
- .su-generator-icon-picker input { margin-bottom: 15px; }
293
- .su-generator-icon-picker i {
294
- display: block;
295
- width: 24px;
296
- height: 24px;
297
- margin-left: 2px;
298
- float: left;
299
- color: #555;
300
- text-align: center;
301
- font-size: 14px;
302
- line-height: 24px;
303
- cursor: pointer;
304
- }
305
- .su-generator-icon-picker i:hover {
306
- color: #000;
307
- font-size: 24px;
308
- }
309
-
310
- /* Shadow picker */
311
- .su-generator-shadow-picker { }
312
- .su-generator-shadow-picker-field {
313
- position: relative;
314
- display: inline-block;
315
- width: 22%;
316
- padding-right: 3%;
317
- }
318
- .su-generator-shadow-picker-field small {
319
- display: block;
320
- color: #ccc;
321
- }
322
- .su-generator-shadow-picker-field input { text-align: right; }
323
- .su-generator-shadow-picker-field.su-generator-shadow-picker-color {
324
- width: 25%;
325
- padding-right: 0;
326
- }
327
- .su-generator-shadow-picker-field.su-generator-shadow-picker-color input { text-align: left; }
328
- .su-generator-shadow-picker-color { position: relative; }
329
- .su-generator-shadow-picker-color-wheel {
330
- position: absolute;
331
- top: 100%;
332
- right: 0;
333
- z-index: 9999;
334
- display: none;
335
- border: 1px solid #aaa;
336
- -webkit-border-radius: 50%;
337
- -moz-border-radius: 50%;
338
- border-radius: 50%;
339
- background: #fff;
340
- -webkit-box-shadow: 0 2px 5px #ccc;
341
- -moz-box-shadow: 0 2px 5px #ccc;
342
- box-shadow: 0 2px 5px #ccc;
343
- }
344
-
345
- /* Border picker */
346
- .su-generator-border-picker { }
347
- .su-generator-border-picker-field {
348
- position: relative;
349
- display: inline-block;
350
- width: 30%;
351
- padding-right: 3%;
352
- }
353
- .su-generator-border-picker-field small {
354
- display: block;
355
- color: #ccc;
356
- }
357
- .su-generator-border-picker-field input { text-align: right; }
358
- .su-generator-border-picker-field.su-generator-border-picker-color {
359
- width: 34%;
360
- padding-right: 0;
361
- }
362
- .su-generator-border-picker-field.su-generator-border-picker-color input { text-align: left; }
363
- .su-generator-border-picker-color { position: relative; }
364
- .su-generator-border-picker-color-wheel {
365
- position: absolute;
366
- top: 100%;
367
- right: 0;
368
- z-index: 9999;
369
- display: none;
370
- border: 1px solid #aaa;
371
- -webkit-border-radius: 50%;
372
- -moz-border-radius: 50%;
373
- border-radius: 50%;
374
- background: #fff;
375
- -webkit-box-shadow: 0 2px 5px #ccc;
376
- -moz-box-shadow: 0 2px 5px #ccc;
377
- box-shadow: 0 2px 5px #ccc;
378
- }
379
-
380
- /* Range pickers */
381
- .su-generator-range-picker { }
382
- .su-generator-range-picker .slider {
383
- width: 420px;
384
- margin: 10px 0 0 0 !important;
385
- padding: 0;
386
- float: left;
387
- }
388
- .su-generator-range-picker .slider > .dragger { background: #fff !important; }
389
- .su-generator-range-picker .slider:hover > .dragger {
390
- background: #fff !important;
391
- -webkit-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
392
- -moz-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
393
- box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
394
- }
395
- .su-generator-range-picker .slider > .dragger.dragging {
396
- background: #ccc !important;
397
- -webkit-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
398
- -moz-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
399
- box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
400
- }
401
- .su-generator-range-picker .slider > .track {
402
- height: 12px !important;
403
- border: 1px solid #ccc !important;
404
- background: #fff !important;
405
- }
406
- .su-generator-range-picker input {
407
- width: 60px !important;
408
- float: right;
409
- text-align: center;
410
- }
411
-
412
- /* Switches */
413
- .su-generator-switch {
414
- display: inline-block;
415
- width: 100%;
416
- font-weight: bold;
417
- cursor: pointer;
418
- }
419
- .su-generator-switch span {
420
- display: none;
421
- padding: 10px;
422
- -webkit-border-radius: 3px;
423
- -moz-border-radius: 3px;
424
- border-radius: 3px;
425
- }
426
- .su-generator-switch-yes span.su-generator-yes {
427
- display: block;
428
- background: #e0ffe0;
429
- color: #0c0;
430
- }
431
- .su-generator-switch-no span.su-generator-no {
432
- display: block;
433
- background: #f5f5f5;
434
- color: #777;
435
- }
436
-
437
- /* Color pickers */
438
- .su-generator-select-color {
439
- position: relative;
440
- display: inline-block;
441
- width: 100%;
442
- }
443
- .su-generator-select-color-wheel {
444
- position: absolute;
445
- top: 100%;
446
- left: 0;
447
- z-index: 9999;
448
- display: none;
449
- border: 1px solid #aaa;
450
- -webkit-border-radius: 50%;
451
- -moz-border-radius: 50%;
452
- border-radius: 50%;
453
- background: #fff;
454
- -webkit-box-shadow: 0 2px 5px #ccc;
455
- -moz-box-shadow: 0 2px 5px #ccc;
456
- box-shadow: 0 2px 5px #ccc;
457
- }
458
-
459
- /* Image source picker */
460
- .su-generator-isp { margin-bottom: 15px; }
461
- .su-generator-isp-source {
462
- height: 0;
463
- margin: 0 -20px;
464
- padding: 0 20px;
465
- overflow: hidden;
466
- background: #eee;
467
- color: #555;
468
- opacity: 0;
469
- -webkit-transition: opacity .2s;
470
- -moz-transition: opacity .2s;
471
- transition: opacity .2s;
472
- }
473
- .su-generator-isp-source.su-generator-isp-source-open {
474
- height: auto;
475
- margin: 20px -20px 0;
476
- padding: 14px 20px;
477
- border-top: 1px solid #ccc;
478
- border-bottom: 1px solid #ccc;
479
- opacity: 1;
480
- }
481
- .su-generator-isp-images {
482
- margin-top: 1em;
483
- overflow: auto;
484
- }
485
- .su-generator-isp-images span {
486
- position: relative;
487
- display: block;
488
- width: 84px;
489
- height: 84px;
490
- margin: 5px 5px 5px 0;
491
- float: left;
492
- border: 3px solid #fff;
493
- -webkit-border-radius: 50%;
494
- -moz-border-radius: 50%;
495
- border-radius: 50%;
496
- background: #fff;
497
- -webkit-box-shadow: 0 1px 2px #999;
498
- -moz-box-shadow: 0 1px 2px #999;
499
- box-shadow: 0 1px 2px #999;
500
- }
501
- .su-generator-isp-images span:hover,
502
- .su-generator-isp-images span.ui-sortable-helper {
503
- -webkit-box-shadow: 0 1px 6px #777;
504
- -moz-box-shadow: 0 1px 6px #777;
505
- box-shadow: 0 1px 6px #777;
506
- }
507
- .su-generator-isp-images img {
508
- display: block;
509
- width: 100%;
510
- height: 100%;
511
- margin: 0;
512
- padding: 0;
513
- border: none;
514
- -webkit-border-radius: 50%;
515
- -moz-border-radius: 50%;
516
- border-radius: 50%;
517
- }
518
- .su-generator-isp-images span i {
519
- position: absolute;
520
- top: -3px;
521
- right: -3px;
522
- display: none;
523
- width: 16px;
524
- height: 16px;
525
- -webkit-border-radius: 50%;
526
- -moz-border-radius: 50%;
527
- border-radius: 50%;
528
- background: #fff;
529
- color: #f03;
530
- text-align: center;
531
- font-size: 12px;
532
- line-height: 16px;
533
- cursor: pointer;
534
- }
535
- .su-generator-isp-images span:hover i { display: block; }
536
- .su-generator-isp-images span i:hover {
537
- background: #f03;
538
- color: #fff;
539
- }
540
- .su-generator-isp-categories,
541
- .su-generator-isp-taxonomies,
542
- .su-generator-isp-terms { margin-top: 15px; }
543
-
544
-
545
- /* Preview box */
546
- #su-generator-preview {
547
- display: none;
548
- margin: 0 -20px;
549
- padding: 1.5em 20px;
550
- overflow: hidden;
551
- border-bottom: 1px solid #ccc;
552
- }
553
- /* make some previews visible */
554
- #su-generator-preview .su-column { outline: 1px dotted #ccc; }
555
-
556
- /* Actions box */
557
- .su-generator-actions {
558
- margin: 0 -20px -20px;
559
- padding: 1.5em 15px;
560
- background: #eee;
561
- }
562
- .su-generator-actions > .button { margin: 0 5px; }
563
- .su-generator-actions .button i { margin: 0 5px 0 -3px; }
564
-
565
- .su-generator-presets { position: relative; }
566
- .su-generator-presets > .button { cursor: default; }
567
- .su-gp-popup {
568
- position: absolute;
569
- right: 0;
570
- bottom: 0;
571
- display: none;
572
- min-width: 160px;
573
- max-width: 500px;
574
- border: 1px solid #aaa;
575
- -webkit-border-radius: 5px;
576
- -moz-border-radius: 5px;
577
- border-radius: 5px;
578
- background: #fff;
579
- }
580
- .su-gp-head {
581
- margin-bottom: 10px;
582
- padding: 10px;
583
- border-bottom: 1px dotted #ccc;
584
- }
585
- .su-gp-head .button {
586
- display: block;
587
- text-align: center;
588
- }
589
- .su-gp-list {
590
- margin: 5px 0;
591
- }
592
- .su-gp-list b {
593
- display: block;
594
- padding: 5px 10px;
595
- color: #aaa;
596
- font-weight: normal;
597
- font-style: italic;
598
- }
599
- .su-gp-list span {
600
- position: relative;
601
- display: block;
602
- padding: 5px 10px;
603
- overflow: hidden;
604
- color: #21759b;
605
- cursor: pointer;
606
- }
607
- .su-gp-list span:nth-child(odd) { background: #f8f8f8; }
608
- .su-gp-list span:hover {
609
- background: #eee;
610
- color: #d54e21;
611
- }
612
- .su-gp-list span em {
613
- margin-right: 32px;
614
- white-space: nowrap;
615
- font-style: normal;
616
- }
617
- .su-gp-list span i {
618
- position: absolute;
619
- top: 50%;
620
- right: 10px;
621
- display: block;
622
- width: 20px;
623
- height: 20px;
624
- margin-top: -10px;
625
- -webkit-border-radius: 50%;
626
- -moz-border-radius: 50%;
627
- border-radius: 50%;
628
- color: #999;
629
- text-align: center;
630
- font-weight: normal;
631
- font-size: 12px;
632
- line-height: 20px;
633
- }
634
- .su-gp-list span i:hover {
635
- background: #f03;
636
- color: #fff;
637
- }
638
-
639
- body.su-mfp-shown .mfp-bg { z-index: 101000 !important; }
640
- body.su-mfp-shown .mfp-wrap { z-index: 101001 !important; }
641
- body.su-mfp-shown .mfp-preloader { z-index: 101002 !important; }
642
- body.su-mfp-shown .mfp-content { z-index: 101003 !important; }
643
- body.su-mfp-shown button.mfp-close,
644
- body.su-mfp-shown button.mfp-arrow { z-index: 101004 !important; }
1
+ .su-generator-clearfix:before,
2
+ .su-generator-clearfix:after {
3
+ display: table;
4
+ content: " ";
5
+ }
6
+ .su-generator-clearfix:after { clear: both; }
7
+ .su-generator-clear {
8
+ height: 0;
9
+ clear: both;
10
+ overflow: hidden;
11
+ }
12
+ .su-generator-hidden { display: none !important; }
13
+
14
+ .su-generator-loading {
15
+ min-height: 60px;
16
+ background: 50% 50% url("../images/spinner.gif") no-repeat !important;
17
+ }
18
+ .su-generator-loading * { visibility: hidden; }
19
+
20
+ .su-generator-button img {
21
+ margin: -1px 2px 0 -5px;
22
+ vertical-align: middle;
23
+ }
24
+ .wp-media-buttons .su-generator-button img {
25
+ margin: -1px -1px 0 -4px;
26
+ vertical-align: middle;
27
+ }
28
+
29
+ #su-generator-wrap { display: none; }
30
+ #su-generator {
31
+ position: relative;
32
+ width: 85%;
33
+ max-width: 1000px;
34
+ margin: 60px auto;
35
+ padding: 20px;
36
+ background: #fff;
37
+ -webkit-box-shadow: 0 2px 25px #000;
38
+ -moz-box-shadow: 0 2px 25px #000;
39
+ box-shadow: 0 2px 25px #000;
40
+ -webkit-transition: max-width .2s;
41
+ -moz-transition: max-width .2s;
42
+ transition: max-width .2s;
43
+ }
44
+ #su-generator.su-generator-narrow { max-width: 500px; }
45
+
46
+ /* Generator tools */
47
+ #su-generator-tools { margin: 0 20px 20px 0; }
48
+ #su-generator-tools span {
49
+ display: inline-block;
50
+ width: 1px;
51
+ height: 1em;
52
+ margin: 0 0.5em;
53
+ border-right: 1px dotted #555;
54
+ vertical-align: middle;
55
+ }
56
+ #su-generator-tools a { text-decoration: none; }
57
+ #su-generator-tools a.su-add-ons {
58
+ display: inline-block;
59
+ padding: 2px 7px;
60
+ background: #FF7654;
61
+ color: #fff;
62
+ border: 1px solid #ff4d21;
63
+ border-radius: 3px;
64
+ }
65
+ #su-generator-tools a.su-add-ons:hover { background: #ff4d21; }
66
+
67
+ /* Search box */
68
+ #su-generator-search {
69
+ width: 100%;
70
+ margin-bottom: 30px;
71
+ padding: 10px 10px 10px 42px;
72
+ background: 5px 50% url('../images/search.png') no-repeat;
73
+ font-size: 1.3em;
74
+ }
75
+
76
+ /* Filter box */
77
+ #su-generator-filter {
78
+ margin: 0 -20px;
79
+ padding: 14px 20px;
80
+ border-top: 1px solid #ccc;
81
+ border-bottom: 1px solid #ccc;
82
+ background: #eee;
83
+ color: #555;
84
+ text-align: center;
85
+ line-height: 24px;
86
+ }
87
+ #su-generator-filter a,
88
+ #su-generator-filter strong {
89
+ display: inline-block;
90
+ margin: 0 1em;
91
+ line-height: 1;
92
+ }
93
+ #su-generator-filter a {
94
+ border-bottom: 1px dotted #ccc;
95
+ text-decoration: none;
96
+ }
97
+
98
+ /* Dropdown choices */
99
+ #su-generator-choices {
100
+ margin-top: 20px;
101
+ text-align: left;
102
+ }
103
+ #su-generator-choices > span {
104
+ position: relative;
105
+ display: block;
106
+ width: 20%;
107
+ height: 28px;
108
+ min-width: 130px;
109
+ padding: 0 5px 0 30px;
110
+ float: left;
111
+ overflow: hidden;
112
+ -webkit-box-sizing: border-box;
113
+ -moz-box-sizing: border-box;
114
+ box-sizing: border-box;
115
+ border-bottom: 1px dotted #e5e5e5;
116
+ color: #222;
117
+ vertical-align: top;
118
+ text-align: left;
119
+ line-height: 28px;
120
+ cursor: pointer;
121
+ }
122
+ #su-generator-choices span:hover {
123
+ border-bottom: 1px solid #333;
124
+ background: #333;
125
+ color: #fff;
126
+ }
127
+ #su-generator-choices span img {
128
+ position: absolute;
129
+ top: 7px;
130
+ left: 7px;
131
+ width: 14px;
132
+ height: 14px;
133
+ }
134
+ #su-generator-choices span i {
135
+ position: absolute;
136
+ top: 1px;
137
+ left: 1px;
138
+ display: block;
139
+ width: 26px;
140
+ height: 26px;
141
+ color: #888;
142
+ text-align: center;
143
+ font-size: 14px;
144
+ line-height: 26px;
145
+ }
146
+ #su-generator-choices span:hover i { color: #fff; }
147
+ .su-generator-choice-first {
148
+ outline: 1px solid #09f;
149
+ box-shadow: 0 0 3px rgba(30,140,190,.8);
150
+ }
151
+
152
+ /* Breadcrumbs */
153
+ #su-generator-breadcrumbs {
154
+ margin: 0 -20px;
155
+ padding: 14px 20px;
156
+ border-top: 1px solid #ccc;
157
+ border-bottom: 1px solid #ccc;
158
+ background: #eee;
159
+ color: #555;
160
+ line-height: 24px;
161
+ }
162
+ #su-generator-breadcrumbs span {
163
+ margin-right: 1em;
164
+ font-weight: bold;
165
+ }
166
+ #su-generator-breadcrumbs small {
167
+ color: #bbb;
168
+ font-weight: normal;
169
+ font-size: 0.9em;
170
+ }
171
+
172
+ /* Notes */
173
+ .su-generator-note {
174
+ position: relative;
175
+ margin: 0 -20px;
176
+ padding: 5px 20px;
177
+ background: #FFFFB8;
178
+ border-bottom: 1px solid #ccc;
179
+ color: #333;
180
+ line-height: 18px;
181
+ }
182
+ .su-generator-note-content {
183
+ min-height: 20px;
184
+ margin-left: 35px;
185
+ }
186
+ .su-generator-note p { margin: 10px 0; }
187
+ .su-generator-note a {
188
+ text-decoration: underline;
189
+ }
190
+ .su-generator-note i {
191
+ position: absolute;
192
+ top: 15px;
193
+ left: 20px;
194
+ display: block;
195
+ width: 1em;
196
+ height: 1em;
197
+ color: #555;
198
+ text-align: left;
199
+ font-size: 20px;
200
+ line-height: 1em;
201
+ }
202
+
203
+ /* Attribute container */
204
+ #su-generator-settings .su-generator-attr-container {
205
+ margin: 0 -20px;
206
+ padding: 1.5em 20px;
207
+ border-bottom: 1px solid #ccc;
208
+ }
209
+
210
+ /* Attribute name */
211
+ #su-generator-settings h5,
212
+ #su-generator-preview h5 {
213
+ margin: 0 0 15px 0;
214
+ font-size: 1em;
215
+ }
216
+
217
+ /* Attribute description */
218
+ .su-generator-attr-desc {
219
+ margin-top: 15px;
220
+ color: #aaa;
221
+ font-style: italic;
222
+ line-height: 1.6;
223
+ }
224
+ .su-generator-attr-desc b { color: #999; }
225
+
226
+ /* Small text after text field */
227
+ .su-generator-px-units {
228
+ position: relative;
229
+ margin-right: 15px;
230
+ }
231
+ .su-generator-px-units:before {
232
+ position: absolute;
233
+ right: -18px;
234
+ bottom: 3px;
235
+ display: block;
236
+ width: 15px;
237
+ color: #999;
238
+ content: 'px';
239
+ text-align: left;
240
+ font-size: 0.9em;
241
+ }
242
+
243
+ /* Clickable values in attribute description */
244
+ .su-generator-attr-desc b.su-generator-set-value {
245
+ border-bottom: 1px dotted #999;
246
+ cursor: pointer;
247
+ }
248
+ .su-generator-attr-desc b.su-generator-set-value:hover {
249
+ border-bottom: 1px dotted #333;
250
+ color: #333;
251
+ }
252
+
253
+ /* Common attribute fields */
254
+ #su-generator-settings input[type="text"],
255
+ #su-generator-settings input[type="number"],
256
+ #su-generator-settings textarea,
257
+ #su-generator-settings select {
258
+ width: 100%;
259
+ height: auto;
260
+ padding: 10px;
261
+ }
262
+
263
+ /* Upload fields */
264
+ .su-generator-field-actions { padding-top: 10px; }
265
+ .su-generator-field-actions .button,
266
+ .su-generator-field-actions span { margin-right: 5px; }
267
+ .su-generator-field-actions img {
268
+ margin: 0 6px 0 -4px;
269
+ vertical-align: middle;
270
+ }
271
+
272
+ /* Icon picker */
273
+ .su-generator-icon-picker {
274
+ height: 0;
275
+ margin: 0 -20px;
276
+ padding: 0 20px;
277
+ overflow: hidden;
278
+ background: #eee;
279
+ line-height: 24px;
280
+ -webkit-transition: all .2s;
281
+ -moz-transition: all .2s;
282
+ transition: all .2s;
283
+ }
284
+ .su-generator-icon-picker.su-generator-icon-picker-visible {
285
+ height: auto;
286
+ margin: 1em -20px 0 -20px;
287
+ padding: 14px 20px;
288
+ overflow: visible;
289
+ border-top: 1px solid #ccc;
290
+ border-bottom: 1px solid #ccc;
291
+ }
292
+ .su-generator-icon-picker input { margin-bottom: 15px; }
293
+ .su-generator-icon-picker i {
294
+ display: block;
295
+ width: 24px;
296
+ height: 24px;
297
+ margin-left: 2px;
298
+ float: left;
299
+ color: #555;
300
+ text-align: center;
301
+ font-size: 14px;
302
+ line-height: 24px;
303
+ cursor: pointer;
304
+ }
305
+ .su-generator-icon-picker i:hover {
306
+ color: #000;
307
+ font-size: 24px;
308
+ }
309
+
310
+ /* Shadow picker */
311
+ .su-generator-shadow-picker { }
312
+ .su-generator-shadow-picker-field {
313
+ position: relative;
314
+ display: inline-block;
315
+ width: 22%;
316
+ padding-right: 3%;
317
+ }
318
+ .su-generator-shadow-picker-field small {
319
+ display: block;
320
+ color: #ccc;
321
+ }
322
+ .su-generator-shadow-picker-field input { text-align: right; }
323
+ .su-generator-shadow-picker-field.su-generator-shadow-picker-color {
324
+ width: 25%;
325
+ padding-right: 0;
326
+ }
327
+ .su-generator-shadow-picker-field.su-generator-shadow-picker-color input { text-align: left; }
328
+ .su-generator-shadow-picker-color { position: relative; }
329
+ .su-generator-shadow-picker-color-wheel {
330
+ position: absolute;
331
+ top: 100%;
332
+ right: 0;
333
+ z-index: 9999;
334
+ display: none;
335
+ border: 1px solid #aaa;
336
+ -webkit-border-radius: 50%;
337
+ -moz-border-radius: 50%;
338
+ border-radius: 50%;
339
+ background: #fff;
340
+ -webkit-box-shadow: 0 2px 5px #ccc;
341
+ -moz-box-shadow: 0 2px 5px #ccc;
342
+ box-shadow: 0 2px 5px #ccc;
343
+ }
344
+
345
+ /* Border picker */
346
+ .su-generator-border-picker { }
347
+ .su-generator-border-picker-field {
348
+ position: relative;
349
+ display: inline-block;
350
+ width: 30%;
351
+ padding-right: 3%;
352
+ }
353
+ .su-generator-border-picker-field small {
354
+ display: block;
355
+ color: #ccc;
356
+ }
357
+ .su-generator-border-picker-field input { text-align: right; }
358
+ .su-generator-border-picker-field.su-generator-border-picker-color {
359
+ width: 34%;
360
+ padding-right: 0;
361
+ }
362
+ .su-generator-border-picker-field.su-generator-border-picker-color input { text-align: left; }
363
+ .su-generator-border-picker-color { position: relative; }
364
+ .su-generator-border-picker-color-wheel {
365
+ position: absolute;
366
+ top: 100%;
367
+ right: 0;
368
+ z-index: 9999;
369
+ display: none;
370
+ border: 1px solid #aaa;
371
+ -webkit-border-radius: 50%;
372
+ -moz-border-radius: 50%;
373
+ border-radius: 50%;
374
+ background: #fff;
375
+ -webkit-box-shadow: 0 2px 5px #ccc;
376
+ -moz-box-shadow: 0 2px 5px #ccc;
377
+ box-shadow: 0 2px 5px #ccc;
378
+ }
379
+
380
+ /* Range pickers */
381
+ .su-generator-range-picker { }
382
+ .su-generator-range-picker .slider {
383
+ width: 420px;
384
+ margin: 10px 0 0 0 !important;
385
+ padding: 0;
386
+ float: left;
387
+ }
388
+ .su-generator-range-picker .slider > .dragger { background: #fff !important; }
389
+ .su-generator-range-picker .slider:hover > .dragger {
390
+ background: #fff !important;
391
+ -webkit-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
392
+ -moz-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
393
+ box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
394
+ }
395
+ .su-generator-range-picker .slider > .dragger.dragging {
396
+ background: #ccc !important;
397
+ -webkit-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
398
+ -moz-box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
399
+ box-shadow: 0 0 0 5px rgba(33,117,155,0.5);
400
+ }
401
+ .su-generator-range-picker .slider > .track {
402
+ height: 12px !important;
403
+ border: 1px solid #ccc !important;
404
+ background: #fff !important;
405
+ }
406
+ .su-generator-range-picker input {
407
+ width: 60px !important;
408
+ float: right;
409
+ text-align: center;
410
+ }
411
+
412
+ /* Switches */
413
+ .su-generator-switch {
414
+ display: inline-block;
415
+ width: 100%;
416
+ font-weight: bold;
417
+ cursor: pointer;
418
+ }
419
+ .su-generator-switch span {
420
+ display: none;
421
+ padding: 10px;
422
+ -webkit-border-radius: 3px;
423
+ -moz-border-radius: 3px;
424
+ border-radius: 3px;
425
+ }
426
+ .su-generator-switch-yes span.su-generator-yes {
427
+ display: block;
428
+ background: #e0ffe0;
429
+ color: #0c0;
430
+ }
431
+ .su-generator-switch-no span.su-generator-no {
432
+ display: block;
433
+ background: #f5f5f5;
434
+ color: #777;
435
+ }
436
+
437
+ /* Color pickers */
438
+ .su-generator-select-color {
439
+ position: relative;
440
+ display: inline-block;
441
+ width: 100%;
442
+ }
443
+ .su-generator-select-color-wheel {
444
+ position: absolute;
445
+ top: 100%;
446
+ left: 0;
447
+ z-index: 9999;
448
+ display: none;
449
+ border: 1px solid #aaa;
450
+ -webkit-border-radius: 50%;
451
+ -moz-border-radius: 50%;
452
+ border-radius: 50%;
453
+ background: #fff;
454
+ -webkit-box-shadow: 0 2px 5px #ccc;
455
+ -moz-box-shadow: 0 2px 5px #ccc;
456
+ box-shadow: 0 2px 5px #ccc;
457
+ }
458
+
459
+ /* Image source picker */
460
+ .su-generator-isp { margin-bottom: 15px; }
461
+ .su-generator-isp-source {
462
+ height: 0;
463
+ margin: 0 -20px;
464
+ padding: 0 20px;
465
+ overflow: hidden;
466
+ background: #eee;
467
+ color: #555;
468
+ opacity: 0;
469
+ -webkit-transition: opacity .2s;
470
+ -moz-transition: opacity .2s;
471
+ transition: opacity .2s;
472
+ }
473
+ .su-generator-isp-source.su-generator-isp-source-open {
474
+ height: auto;
475
+ margin: 20px -20px 0;
476
+ padding: 14px 20px;
477
+ border-top: 1px solid #ccc;
478
+ border-bottom: 1px solid #ccc;
479
+ opacity: 1;
480
+ }
481
+ .su-generator-isp-images {
482
+ margin-top: 1em;
483
+ overflow: auto;
484
+ }
485
+ .su-generator-isp-images span {
486
+ position: relative;
487
+ display: block;
488
+ width: 84px;
489
+ height: 84px;
490
+ margin: 5px 5px 5px 0;
491
+ float: left;
492
+ border: 3px solid #fff;
493
+ -webkit-border-radius: 50%;
494
+ -moz-border-radius: 50%;
495
+ border-radius: 50%;
496
+ background: #fff;
497
+ -webkit-box-shadow: 0 1px 2px #999;
498
+ -moz-box-shadow: 0 1px 2px #999;
499
+ box-shadow: 0 1px 2px #999;
500
+ }
501
+ .su-generator-isp-images span:hover,
502
+ .su-generator-isp-images span.ui-sortable-helper {
503
+ -webkit-box-shadow: 0 1px 6px #777;
504
+ -moz-box-shadow: 0 1px 6px #777;
505
+ box-shadow: 0 1px 6px #777;
506
+ }
507
+ .su-generator-isp-images img {
508
+ display: block;
509
+ width: 100%;
510
+ height: 100%;
511
+ margin: 0;
512
+ padding: 0;
513
+ border: none;
514
+ -webkit-border-radius: 50%;
515
+ -moz-border-radius: 50%;
516
+ border-radius: 50%;
517
+ }
518
+ .su-generator-isp-images span i {
519
+ position: absolute;
520
+ top: -3px;
521
+ right: -3px;
522
+ display: none;
523
+ width: 16px;
524
+ height: 16px;
525
+ -webkit-border-radius: 50%;
526
+ -moz-border-radius: 50%;
527
+ border-radius: 50%;
528
+ background: #fff;
529
+ color: #f03;
530
+ text-align: center;
531
+ font-size: 12px;
532
+ line-height: 16px;
533
+ cursor: pointer;
534
+ }
535
+ .su-generator-isp-images span:hover i { display: block; }
536
+ .su-generator-isp-images span i:hover {
537
+ background: #f03;
538
+ color: #fff;
539
+ }
540
+ .su-generator-isp-categories,
541
+ .su-generator-isp-taxonomies,
542
+ .su-generator-isp-terms { margin-top: 15px; }
543
+
544
+
545
+ /* Preview box */
546
+ #su-generator-preview {
547
+ display: none;
548
+ margin: 0 -20px;
549
+ padding: 1.5em 20px;
550
+ overflow: hidden;
551
+ border-bottom: 1px solid #ccc;
552
+ }
553
+ /* make some previews visible */
554
+ #su-generator-preview .su-column { outline: 1px dotted #ccc; }
555
+
556
+ /* Actions box */
557
+ .su-generator-actions {
558
+ margin: 0 -20px -20px;
559
+ padding: 1.5em 15px;
560
+ background: #eee;
561
+ }
562
+ .su-generator-actions > .button { margin: 0 5px; }
563
+ .su-generator-actions .button i { margin: 0 5px 0 -3px; }
564
+
565
+ .su-generator-presets { position: relative; }
566
+ .su-generator-presets > .button { cursor: default; }
567
+ .su-gp-popup {
568
+ position: absolute;
569
+ right: 0;
570
+ bottom: 0;
571
+ display: none;
572
+ min-width: 160px;
573
+ max-width: 500px;
574
+ border: 1px solid #aaa;
575
+ -webkit-border-radius: 5px;
576
+ -moz-border-radius: 5px;
577
+ border-radius: 5px;
578
+ background: #fff;
579
+ }
580
+ .su-gp-head {
581
+ margin-bottom: 10px;
582
+ padding: 10px;
583
+ border-bottom: 1px dotted #ccc;
584
+ }
585
+ .su-gp-head .button {
586
+ display: block;
587
+ text-align: center;
588
+ }
589
+ .su-gp-list {
590
+ margin: 5px 0;
591
+ }
592
+ .su-gp-list b {
593
+ display: block;
594
+ padding: 5px 10px;
595
+ color: #aaa;
596
+ font-weight: normal;
597
+ font-style: italic;
598
+ }
599
+ .su-gp-list span {
600
+ position: relative;
601
+ display: block;
602
+ padding: 5px 10px;
603
+ overflow: hidden;
604
+ color: #21759b;
605
+ cursor: pointer;
606
+ }
607
+ .su-gp-list span:nth-child(odd) { background: #f8f8f8; }
608
+ .su-gp-list span:hover {
609
+ background: #eee;
610
+ color: #d54e21;
611
+ }
612
+ .su-gp-list span em {
613
+ margin-right: 32px;
614
+ white-space: nowrap;
615
+ font-style: normal;
616
+ }
617
+ .su-gp-list span i {
618
+ position: absolute;
619
+ top: 50%;
620
+ right: 10px;
621
+ display: block;
622
+ width: 20px;
623
+ height: 20px;
624
+ margin-top: -10px;
625
+ -webkit-border-radius: 50%;
626
+ -moz-border-radius: 50%;
627
+ border-radius: 50%;
628
+ color: #999;
629
+ text-align: center;
630
+ font-weight: normal;
631
+ font-size: 12px;
632
+ line-height: 20px;
633
+ }
634
+ .su-gp-list span i:hover {
635
+ background: #f03;
636
+ color: #fff;
637
+ }
638
+
639
+ body.su-mfp-shown .mfp-bg { z-index: 101000 !important; }
640
+ body.su-mfp-shown .mfp-wrap { z-index: 101001 !important; }
641
+ body.su-mfp-shown .mfp-preloader { z-index: 101002 !important; }
642
+ body.su-mfp-shown .mfp-content { z-index: 101003 !important; }
643
+ body.su-mfp-shown button.mfp-close,
644
+ body.su-mfp-shown button.mfp-arrow { z-index: 101004 !important; }
assets/css/magnific-popup.css CHANGED
@@ -1,368 +1,368 @@
1
- /* Magnific Popup CSS */
2
- .mfp-bg {
3
- top: 0;
4
- left: 0;
5
- width: 100%;
6
- height: 100%;
7
- z-index: 1042;
8
- overflow: hidden;
9
- position: fixed;
10
- background: #0b0b0b;
11
- opacity: 0.8;
12
- filter: alpha(opacity=80); }
13
-
14
- .mfp-wrap {
15
- top: 0;
16
- left: 0;
17
- width: 100%;
18
- height: 100%;
19
- z-index: 1043;
20
- position: fixed;
21
- outline: none !important;
22
- -webkit-backface-visibility: hidden; }
23
-
24
- .mfp-container {
25
- text-align: center;
26
- position: absolute;
27
- width: 100%;
28
- height: 100%;
29
- left: 0;
30
- top: 0;
31
- padding: 0 8px;
32
- -webkit-box-sizing: border-box;
33
- -moz-box-sizing: border-box;
34
- box-sizing: border-box; }
35
-
36
- .mfp-container:before {
37
- content: '';
38
- display: inline-block;
39
- height: 100%;
40
- vertical-align: middle; }
41
-
42
- .mfp-align-top .mfp-container:before {
43
- display: none; }
44
-
45
- .mfp-content {
46
- position: relative;
47
- display: inline-block;
48
- vertical-align: middle;
49
- margin: 0 auto;
50
- text-align: left;
51
- z-index: 1045; }
52
-
53
- .mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
54
- width: 100%;
55
- cursor: auto; }
56
-
57
- .mfp-ajax-cur {
58
- cursor: progress; }
59
-
60
- .mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
61
- cursor: -moz-zoom-out;
62
- cursor: -webkit-zoom-out;
63
- cursor: zoom-out; }
64
-
65
- .mfp-zoom {
66
- cursor: pointer;
67
- cursor: -webkit-zoom-in;
68
- cursor: -moz-zoom-in;
69
- cursor: zoom-in; }
70
-
71
- .mfp-auto-cursor .mfp-content {
72
- cursor: auto; }
73
-
74
- .mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
75
- -webkit-user-select: none;
76
- -moz-user-select: none;
77
- user-select: none; }
78
-
79
- .mfp-loading.mfp-figure {
80
- display: none; }
81
-
82
- .mfp-hide {
83
- display: none !important; }
84
-
85
- .mfp-preloader {
86
- color: #cccccc;
87
- position: absolute;
88
- top: 50%;
89
- width: auto;
90
- text-align: center;
91
- margin-top: -0.8em;
92
- left: 8px;
93
- right: 8px;
94
- z-index: 1044; }
95
- .mfp-preloader a {
96
- color: #cccccc; }
97
- .mfp-preloader a:hover {
98
- color: white; }
99
-
100
- .mfp-s-ready .mfp-preloader {
101
- display: none; }
102
-
103
- .mfp-s-error .mfp-content {
104
- display: none; }
105
-
106
- button.mfp-close, button.mfp-arrow {
107
- overflow: visible;
108
- cursor: pointer;
109
- background: transparent;
110
- border: 0;
111
- -webkit-appearance: none;
112
- display: block;
113
- outline: none;
114
- padding: 0;
115
- z-index: 1046;
116
- -webkit-box-shadow: none;
117
- box-shadow: none; }
118
- button::-moz-focus-inner {
119
- padding: 0;
120
- border: 0; }
121
-
122
- .mfp-close {
123
- width: 44px;
124
- height: 44px;
125
- line-height: 44px;
126
- position: absolute;
127
- right: 0;
128
- top: 0;
129
- text-decoration: none;
130
- text-align: center;
131
- opacity: 0.65;
132
- filter: alpha(opacity=65);
133
- padding: 0 0 18px 10px;
134
- color: white;
135
- font-style: normal;
136
- font-size: 28px;
137
- font-family: Arial, Baskerville, monospace; }
138
- .mfp-close:hover, .mfp-close:focus {
139
- opacity: 1;
140
- filter: alpha(opacity=100); }
141
- .mfp-close:active {
142
- top: 1px; }
143
-
144
- .mfp-close-btn-in .mfp-close {
145
- color: #333333; }
146
-
147
- .mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
148
- color: white;
149
- right: -6px;
150
- text-align: right;
151
- padding-right: 6px;
152
- width: 100%; }
153
-
154
- .mfp-counter {
155
- position: absolute;
156
- top: 0;
157
- right: 0;
158
- color: #cccccc;
159
- font-size: 12px;
160
- line-height: 18px; }
161
-
162
- .mfp-arrow {
163
- position: absolute;
164
- opacity: 0.65;
165
- filter: alpha(opacity=65);
166
- margin: 0;
167
- top: 50%;
168
- margin-top: -55px;
169
- padding: 0;
170
- width: 90px;
171
- height: 110px;
172
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
173
- .mfp-arrow:active {
174
- margin-top: -54px; }
175
- .mfp-arrow:hover, .mfp-arrow:focus {
176
- opacity: 1;
177
- filter: alpha(opacity=100); }
178
- .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
179
- content: '';
180
- display: block;
181
- width: 0;
182
- height: 0;
183
- position: absolute;
184
- left: 0;
185
- top: 0;
186
- margin-top: 35px;
187
- margin-left: 35px;
188
- border: medium inset transparent; }
189
- .mfp-arrow:after, .mfp-arrow .mfp-a {
190
- border-top-width: 13px;
191
- border-bottom-width: 13px;
192
- top: 8px; }
193
- .mfp-arrow:before, .mfp-arrow .mfp-b {
194
- border-top-width: 21px;
195
- border-bottom-width: 21px;
196
- opacity: 0.7; }
197
-
198
- .mfp-arrow-left {
199
- left: 0; }
200
- .mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
201
- border-right: 17px solid white;
202
- margin-left: 31px; }
203
- .mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
204
- margin-left: 25px;
205
- border-right: 27px solid #3f3f3f; }
206
-
207
- .mfp-arrow-right {
208
- right: 0; }
209
- .mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
210
- border-left: 17px solid white;
211
- margin-left: 39px; }
212
- .mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
213
- border-left: 27px solid #3f3f3f; }
214
-
215
- .mfp-iframe-holder {
216
- padding-top: 40px;
217
- padding-bottom: 40px; }
218
- .mfp-iframe-holder .mfp-content {
219
- line-height: 0;
220
- width: 100%;
221
- max-width: 900px; }
222
- .mfp-iframe-holder .mfp-close {
223
- top: -40px; }
224
-
225
- .mfp-iframe-scaler {
226
- width: 100%;
227
- height: 0;
228
- overflow: hidden;
229
- padding-top: 56.25%; }
230
- .mfp-iframe-scaler iframe {
231
- position: absolute;
232
- display: block;
233
- top: 0;
234
- left: 0;
235
- width: 100%;
236
- height: 100%;
237
- box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
238
- background: black; }
239
-
240
- /* Main image in popup */
241
- img.mfp-img {
242
- width: auto;
243
- max-width: 100%;
244
- height: auto;
245
- display: block;
246
- line-height: 0;
247
- -webkit-box-sizing: border-box;
248
- -moz-box-sizing: border-box;
249
- box-sizing: border-box;
250
- padding: 40px 0 40px;
251
- margin: 0 auto; }
252
-
253
- /* The shadow behind the image */
254
- .mfp-figure {
255
- line-height: 0; }
256
- .mfp-figure:after {
257
- content: '';
258
- position: absolute;
259
- left: 0;
260
- top: 40px;
261
- bottom: 40px;
262
- display: block;
263
- right: 0;
264
- width: auto;
265
- height: auto;
266
- z-index: -1;
267
- box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
268
- background: #444444; }
269
- .mfp-figure small {
270
- color: #bdbdbd;
271
- display: block;
272
- font-size: 12px;
273
- line-height: 14px; }
274
- .mfp-figure figure {
275
- margin: 0; }
276
-
277
- .mfp-bottom-bar {
278
- margin-top: -36px;
279
- position: absolute;
280
- top: 100%;
281
- left: 0;
282
- width: 100%;
283
- cursor: auto; }
284
-
285
- .mfp-title {
286
- text-align: left;
287
- line-height: 18px;
288
- color: #f3f3f3;
289
- word-wrap: break-word;
290
- padding-right: 36px; }
291
-
292
- .mfp-image-holder .mfp-content {
293
- max-width: 100%; }
294
-
295
- .mfp-gallery .mfp-image-holder .mfp-figure {
296
- cursor: pointer; }
297
-
298
- @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
299
- /**
300
- * Remove all paddings around the image on small screen
301
- */
302
- .mfp-img-mobile .mfp-image-holder {
303
- padding-left: 0;
304
- padding-right: 0; }
305
- .mfp-img-mobile img.mfp-img {
306
- padding: 0; }
307
- .mfp-img-mobile .mfp-figure:after {
308
- top: 0;
309
- bottom: 0; }
310
- .mfp-img-mobile .mfp-figure small {
311
- display: inline;
312
- margin-left: 5px; }
313
- .mfp-img-mobile .mfp-bottom-bar {
314
- background: rgba(0, 0, 0, 0.6);
315
- bottom: 0;
316
- margin: 0;
317
- top: auto;
318
- padding: 3px 5px;
319
- position: fixed;
320
- -webkit-box-sizing: border-box;
321
- -moz-box-sizing: border-box;
322
- box-sizing: border-box; }
323
- .mfp-img-mobile .mfp-bottom-bar:empty {
324
- padding: 0; }
325
- .mfp-img-mobile .mfp-counter {
326
- right: 5px;
327
- top: 3px; }
328
- .mfp-img-mobile .mfp-close {
329
- top: 0;
330
- right: 0;
331
- width: 35px;
332
- height: 35px;
333
- line-height: 35px;
334
- background: rgba(0, 0, 0, 0.6);
335
- position: fixed;
336
- text-align: center;
337
- padding: 0; } }
338
-
339
- @media all and (max-width: 900px) {
340
- .mfp-arrow {
341
- -webkit-transform: scale(0.75);
342
- transform: scale(0.75); }
343
- .mfp-arrow-left {
344
- -webkit-transform-origin: 0;
345
- transform-origin: 0; }
346
- .mfp-arrow-right {
347
- -webkit-transform-origin: 100%;
348
- transform-origin: 100%; }
349
- .mfp-container {
350
- padding-left: 6px;
351
- padding-right: 6px; } }
352
-
353
- .mfp-ie7 .mfp-img {
354
- padding: 0; }
355
- .mfp-ie7 .mfp-bottom-bar {
356
- width: 600px;
357
- left: 50%;
358
- margin-left: -300px;
359
- margin-top: 5px;
360
- padding-bottom: 5px; }
361
- .mfp-ie7 .mfp-container {
362
- padding: 0; }
363
- .mfp-ie7 .mfp-content {
364
- padding-top: 44px; }
365
- .mfp-ie7 .mfp-close {
366
- top: 0;
367
- right: 0;
368
- padding-top: 0; }
1
+ /* Magnific Popup CSS */
2
+ .mfp-bg {
3
+ top: 0;
4
+ left: 0;
5
+ width: 100%;
6
+ height: 100%;
7
+ z-index: 1042;
8
+ overflow: hidden;
9
+ position: fixed;
10
+ background: #0b0b0b;
11
+ opacity: 0.8;
12
+ filter: alpha(opacity=80); }
13
+
14
+ .mfp-wrap {
15
+ top: 0;
16
+ left: 0;
17
+ width: 100%;
18
+ height: 100%;
19
+ z-index: 1043;
20
+ position: fixed;
21
+ outline: none !important;
22
+ -webkit-backface-visibility: hidden; }
23
+
24
+ .mfp-container {
25
+ text-align: center;
26
+ position: absolute;
27
+ width: 100%;
28
+ height: 100%;
29
+ left: 0;
30
+ top: 0;
31
+ padding: 0 8px;
32
+ -webkit-box-sizing: border-box;
33
+ -moz-box-sizing: border-box;
34
+ box-sizing: border-box; }
35
+
36
+ .mfp-container:before {
37
+ content: '';
38
+ display: inline-block;
39
+ height: 100%;
40
+ vertical-align: middle; }
41
+
42
+ .mfp-align-top .mfp-container:before {
43
+ display: none; }
44
+
45
+ .mfp-content {
46
+ position: relative;
47
+ display: inline-block;
48
+ vertical-align: middle;
49
+ margin: 0 auto;
50
+ text-align: left;
51
+ z-index: 1045; }
52
+
53
+ .mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
54
+ width: 100%;
55
+ cursor: auto; }
56
+
57
+ .mfp-ajax-cur {
58
+ cursor: progress; }
59
+
60
+ .mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
61
+ cursor: -moz-zoom-out;
62
+ cursor: -webkit-zoom-out;
63
+ cursor: zoom-out; }
64
+
65
+ .mfp-zoom {
66
+ cursor: pointer;
67
+ cursor: -webkit-zoom-in;
68
+ cursor: -moz-zoom-in;
69
+ cursor: zoom-in; }
70
+
71
+ .mfp-auto-cursor .mfp-content {
72
+ cursor: auto; }
73
+
74
+ .mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
75
+ -webkit-user-select: none;
76
+ -moz-user-select: none;
77
+ user-select: none; }
78
+
79
+ .mfp-loading.mfp-figure {
80
+ display: none; }
81
+
82
+ .mfp-hide {
83
+ display: none !important; }
84
+
85
+ .mfp-preloader {
86
+ color: #cccccc;
87
+ position: absolute;
88
+ top: 50%;
89
+ width: auto;
90
+ text-align: center;
91
+ margin-top: -0.8em;
92
+ left: 8px;
93
+ right: 8px;
94
+ z-index: 1044; }
95
+ .mfp-preloader a {
96
+ color: #cccccc; }
97
+ .mfp-preloader a:hover {
98
+ color: white; }
99
+
100
+ .mfp-s-ready .mfp-preloader {
101
+ display: none; }
102
+
103
+ .mfp-s-error .mfp-content {
104
+ display: none; }
105
+
106
+ button.mfp-close, button.mfp-arrow {
107
+ overflow: visible;
108
+ cursor: pointer;
109
+ background: transparent;
110
+ border: 0;
111
+ -webkit-appearance: none;
112
+ display: block;
113
+ outline: none;
114
+ padding: 0;
115
+ z-index: 1046;
116
+ -webkit-box-shadow: none;
117
+ box-shadow: none; }
118
+ button::-moz-focus-inner {
119
+ padding: 0;
120
+ border: 0; }
121
+
122
+ .mfp-close {
123
+ width: 44px;
124
+ height: 44px;
125
+ line-height: 44px;
126
+ position: absolute;
127
+ right: 0;
128
+ top: 0;
129
+ text-decoration: none;
130
+ text-align: center;
131
+ opacity: 0.65;
132
+ filter: alpha(opacity=65);
133
+ padding: 0 0 18px 10px;
134
+ color: white;
135
+ font-style: normal;
136
+ font-size: 28px;
137
+ font-family: Arial, Baskerville, monospace; }
138
+ .mfp-close:hover, .mfp-close:focus {
139
+ opacity: 1;
140
+ filter: alpha(opacity=100); }
141
+ .mfp-close:active {
142
+ top: 1px; }
143
+
144
+ .mfp-close-btn-in .mfp-close {
145
+ color: #333333; }
146
+
147
+ .mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
148
+ color: white;
149
+ right: -6px;
150
+ text-align: right;
151
+ padding-right: 6px;
152
+ width: 100%; }
153
+
154
+ .mfp-counter {
155
+ position: absolute;
156
+ top: 0;
157
+ right: 0;
158
+ color: #cccccc;
159
+ font-size: 12px;
160
+ line-height: 18px; }
161
+
162
+ .mfp-arrow {
163
+ position: absolute;
164
+ opacity: 0.65;
165
+ filter: alpha(opacity=65);
166
+ margin: 0;
167
+ top: 50%;
168
+ margin-top: -55px;
169
+ padding: 0;
170
+ width: 90px;
171
+ height: 110px;
172
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
173
+ .mfp-arrow:active {
174
+ margin-top: -54px; }
175
+ .mfp-arrow:hover, .mfp-arrow:focus {
176
+ opacity: 1;
177
+ filter: alpha(opacity=100); }
178
+ .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
179
+ content: '';
180
+ display: block;
181
+ width: 0;
182
+ height: 0;
183
+ position: absolute;
184
+ left: 0;
185
+ top: 0;
186
+ margin-top: 35px;
187
+ margin-left: 35px;
188
+ border: medium inset transparent; }
189
+ .mfp-arrow:after, .mfp-arrow .mfp-a {
190
+ border-top-width: 13px;
191
+ border-bottom-width: 13px;
192
+ top: 8px; }
193
+ .mfp-arrow:before, .mfp-arrow .mfp-b {
194
+ border-top-width: 21px;
195
+ border-bottom-width: 21px;
196
+ opacity: 0.7; }
197
+
198
+ .mfp-arrow-left {
199
+ left: 0; }
200
+ .mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
201
+ border-right: 17px solid white;
202
+ margin-left: 31px; }
203
+ .mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
204
+ margin-left: 25px;
205
+ border-right: 27px solid #3f3f3f; }
206
+
207
+ .mfp-arrow-right {
208
+ right: 0; }
209
+ .mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
210
+ border-left: 17px solid white;
211
+ margin-left: 39px; }
212
+ .mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
213
+ border-left: 27px solid #3f3f3f; }
214
+
215
+ .mfp-iframe-holder {
216
+ padding-top: 40px;
217
+ padding-bottom: 40px; }
218
+ .mfp-iframe-holder .mfp-content {
219
+ line-height: 0;
220
+ width: 100%;
221
+ max-width: 900px; }
222
+ .mfp-iframe-holder .mfp-close {
223
+ top: -40px; }
224
+
225
+ .mfp-iframe-scaler {
226
+ width: 100%;
227
+ height: 0;
228
+ overflow: hidden;
229
+ padding-top: 56.25%; }
230
+ .mfp-iframe-scaler iframe {
231
+ position: absolute;
232
+ display: block;
233
+ top: 0;
234
+ left: 0;
235
+ width: 100%;
236
+ height: 100%;
237
+ box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
238
+ background: black; }
239
+
240
+ /* Main image in popup */
241
+ img.mfp-img {
242
+ width: auto;
243
+ max-width: 100%;
244
+ height: auto;
245
+ display: block;
246
+ line-height: 0;
247
+ -webkit-box-sizing: border-box;
248
+ -moz-box-sizing: border-box;
249
+ box-sizing: border-box;
250
+ padding: 40px 0 40px;
251
+ margin: 0 auto; }
252
+
253
+ /* The shadow behind the image */
254
+ .mfp-figure {
255
+ line-height: 0; }
256
+ .mfp-figure:after {
257
+ content: '';
258
+ position: absolute;
259
+ left: 0;
260
+ top: 40px;
261
+ bottom: 40px;
262
+ display: block;
263
+ right: 0;
264
+ width: auto;
265
+ height: auto;
266
+ z-index: -1;
267
+ box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
268
+ background: #444444; }
269
+ .mfp-figure small {
270
+ color: #bdbdbd;
271
+ display: block;
272
+ font-size: 12px;
273
+ line-height: 14px; }
274
+ .mfp-figure figure {
275
+ margin: 0; }
276
+
277
+ .mfp-bottom-bar {
278
+ margin-top: -36px;
279
+ position: absolute;
280
+ top: 100%;
281
+ left: 0;
282
+ width: 100%;
283
+ cursor: auto; }
284
+
285
+ .mfp-title {
286
+ text-align: left;
287
+ line-height: 18px;
288
+ color: #f3f3f3;
289
+ word-wrap: break-word;
290
+ padding-right: 36px; }
291
+
292
+ .mfp-image-holder .mfp-content {
293
+ max-width: 100%; }
294
+
295
+ .mfp-gallery .mfp-image-holder .mfp-figure {
296
+ cursor: pointer; }
297
+
298
+ @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
299
+ /**
300
+ * Remove all paddings around the image on small screen
301
+ */
302
+ .mfp-img-mobile .mfp-image-holder {
303
+ padding-left: 0;
304
+ padding-right: 0; }
305
+ .mfp-img-mobile img.mfp-img {
306
+ padding: 0; }
307
+ .mfp-img-mobile .mfp-figure:after {
308
+ top: 0;
309
+ bottom: 0; }
310
+ .mfp-img-mobile .mfp-figure small {
311
+ display: inline;
312
+ margin-left: 5px; }
313
+ .mfp-img-mobile .mfp-bottom-bar {
314
+ background: rgba(0, 0, 0, 0.6);
315
+ bottom: 0;
316
+ margin: 0;
317
+ top: auto;
318
+ padding: 3px 5px;
319
+ position: fixed;
320
+ -webkit-box-sizing: border-box;
321
+ -moz-box-sizing: border-box;
322
+ box-sizing: border-box; }
323
+ .mfp-img-mobile .mfp-bottom-bar:empty {
324
+ padding: 0; }
325
+ .mfp-img-mobile .mfp-counter {
326
+ right: 5px;
327
+ top: 3px; }
328
+ .mfp-img-mobile .mfp-close {
329
+ top: 0;
330
+ right: 0;
331
+ width: 35px;
332
+ height: 35px;
333
+ line-height: 35px;
334
+ background: rgba(0, 0, 0, 0.6);
335
+ position: fixed;
336
+ text-align: center;
337
+ padding: 0; } }
338
+
339
+ @media all and (max-width: 900px) {
340
+ .mfp-arrow {
341
+ -webkit-transform: scale(0.75);
342
+ transform: scale(0.75); }
343
+ .mfp-arrow-left {
344
+ -webkit-transform-origin: 0;
345
+ transform-origin: 0; }
346
+ .mfp-arrow-right {
347
+ -webkit-transform-origin: 100%;
348
+ transform-origin: 100%; }
349
+ .mfp-container {
350
+ padding-left: 6px;
351
+ padding-right: 6px; } }
352
+
353
+ .mfp-ie7 .mfp-img {
354
+ padding: 0; }
355
+ .mfp-ie7 .mfp-bottom-bar {
356
+ width: 600px;
357
+ left: 50%;
358
+ margin-left: -300px;
359
+ margin-top: 5px;
360
+ padding-bottom: 5px; }
361
+ .mfp-ie7 .mfp-container {
362
+ padding: 0; }
363
+ .mfp-ie7 .mfp-content {
364
+ padding-top: 44px; }
365
+ .mfp-ie7 .mfp-close {
366
+ top: 0;
367
+ right: 0;
368
+ padding-top: 0; }
assets/css/media-shortcodes.css CHANGED
@@ -1,55 +1,55 @@
1
- /*** Shortcodes Ultimate - media elements ***/
2
-
3
- /* Container for responsive media elements */
4
-
5
- .su-responsive-media-yes {
6
- position: relative;
7
- padding-bottom: 56.25%;
8
- height: 0;
9
- overflow: hidden;
10
- }
11
- .su-responsive-media-yes iframe,
12
- .su-responsive-media-yes object,
13
- .su-responsive-media-yes embed {
14
- position: absolute;
15
- top: 0;
16
- left: 0;
17
- width: 100%;
18
- height: 100%;
19
- }
20
-
21
- /* YouTube
22
- ---------------------------------------------------------------*/
23
-
24
- .su-youtube { margin: 0 0 1.5em 0 }
25
- .su-youtube iframe { border: none !important }
26
-
27
- /* Vimeo
28
- ---------------------------------------------------------------*/
29
-
30
- .su-vimeo { margin: 0 0 1.5em 0 }
31
- .su-vimeo iframe { border: none !important }
32
-
33
- /* Screenr
34
- ---------------------------------------------------------------*/
35
-
36
- .su-screenr { margin: 0 0 1.5em 0 }
37
- .su-screenr iframe { border: none !important }
38
-
39
- /* Dailymotion
40
- ---------------------------------------------------------------*/
41
-
42
- .su-dailymotion { margin: 0 0 1.5em 0 }
43
- .su-dailymotion iframe { border: none !important }
44
-
45
- /* Document
46
- ---------------------------------------------------------------*/
47
-
48
- .su-document { margin: 0 0 1.5em 0 }
49
- .su-document iframe { border: none !important }
50
-
51
- /* Gmap
52
- ---------------------------------------------------------------*/
53
-
54
- .su-gmap { margin: 0 0 1.5em 0 }
55
  .su-gmap iframe { border: none !important }
1
+ /*** Shortcodes Ultimate - media elements ***/
2
+
3
+ /* Container for responsive media elements */
4
+
5
+ .su-responsive-media-yes {
6
+ position: relative;
7
+ padding-bottom: 56.25%;
8
+ height: 0;
9
+ overflow: hidden;
10
+ }
11
+ .su-responsive-media-yes iframe,
12
+ .su-responsive-media-yes object,
13
+ .su-responsive-media-yes embed {
14
+ position: absolute;
15
+ top: 0;
16
+ left: 0;
17
+ width: 100%;
18
+ height: 100%;
19
+ }
20
+
21
+ /* YouTube
22
+ ---------------------------------------------------------------*/
23
+
24
+ .su-youtube { margin: 0 0 1.5em 0 }
25
+ .su-youtube iframe { border: none !important }
26
+
27
+ /* Vimeo
28
+ ---------------------------------------------------------------*/
29
+
30
+ .su-vimeo { margin: 0 0 1.5em 0 }
31
+ .su-vimeo iframe { border: none !important }
32
+
33
+ /* Screenr
34
+ ---------------------------------------------------------------*/
35
+
36
+ .su-screenr { margin: 0 0 1.5em 0 }
37
+ .su-screenr iframe { border: none !important }
38
+
39
+ /* Dailymotion
40
+ ---------------------------------------------------------------*/
41
+
42
+ .su-dailymotion { margin: 0 0 1.5em 0 }
43
+ .su-dailymotion iframe { border: none !important }
44
+
45
+ /* Document
46
+ ---------------------------------------------------------------*/
47
+
48
+ .su-document { margin: 0 0 1.5em 0 }
49
+ .su-document iframe { border: none !important }
50
+
51
+ /* Gmap
52
+ ---------------------------------------------------------------*/
53
+
54
+ .su-gmap { margin: 0 0 1.5em 0 }
55
  .su-gmap iframe { border: none !important }
assets/css/options-page.css CHANGED
@@ -1,264 +1,264 @@
1
- .su-clear {
2
- height: 0;
3
- clear: both;
4
- }
5
- .su-clearfix:before,
6
- .su-clearfix:after {
7
- display: table;
8
- content: " ";
9
- }
10
- .su-clearfix:after { clear: both; }
11
-
12
- .su-ajax {
13
- min-height: 60px;
14
- background-image: url("../images/loading.gif") !important;
15
- background-position: 50% 50% !important;
16
- background-repeat: no-repeat !important;
17
- }
18
- .su-ajax * { visibility: hidden; }
19
-
20
- /* About screen */
21
- #su-about-screen { }
22
- #su-about-screen h1 { margin: 1.5em 0; }
23
- #su-about-screen h1 small {
24
- display: block;
25
- margin: 7px 0 0 20px;
26
- color: #aaa;
27
- font-weight: normal;
28
- font-size: 0.5em;
29
- }
30
- #su-about-screen .su-about-column {
31
- width: 400px;
32
- margin-bottom: 1em;
33
- float: left;
34
- }
35
- #su-links {
36
- margin-bottom: 1.5em;
37
- line-height: 1.6;
38
- }
39
- #su-links span {
40
- display: inline-block;
41
- width: 1px;
42
- height: 1em;
43
- margin: 0 0.5em;
44
- border-right: 1px dotted #777;
45
- vertical-align: middle;
46
- }
47
- #su-video {
48
- width: 100%;
49
- min-width: 200px;
50
- max-width: 630px;
51
- margin-top: 40px;
52
- }
53
- #su-video iframe {
54
- width: 100%;
55
- height: 370px;
56
- }
57
-
58
- /* Custom CSS screen */
59
- #su-custom-css-screen { }
60
- #su-custom-css-screen textarea {
61
- width: 100%;
62
- border: 1px solid #ccc;
63
- }
64
-
65
- .su-custom-css-originals,
66
- .su-custom-css-vars {
67
- margin: 1.5em 0;
68
- line-height: 1.8;
69
- }
70
- .su-custom-css-originals span {
71
- display: inline-block;
72
- width: 1px;
73
- height: 1em;
74
- margin: 0 0.5em;
75
- border-right: 1px dotted #777;
76
- vertical-align: middle;
77
- }
78
-
79
- body.toplevel_page_shortcodes-ultimate .mfp-iframe-scaler iframe { background: #fff; }
80
-
81
- .js #sunrise-field-custom-css-editor { height: 300px; }
82
- #sunrise-field-custom-css-editor .ace_scrollbar { overflow-y: auto !important; }
83
-
84
- /* Add-ons screen */
85
- #su-addons-screen { margin: 40px 20px; }
86
- #su-addons-screen h2 {
87
- margin: 0 0 1.2em 0;
88
- padding: 0 0 0.8em 0;
89
- border-bottom: 1px solid #ddd;
90
- color: #666;
91
- font-weight: normal;
92
- font-size: 2em;
93
- }
94
- .su-addons-loop { margin-bottom: 40px; }
95
- .su-addons-item {
96
- position: relative;
97
- width: 220px;
98
- margin: 0 20px 20px 0;
99
- float: left;
100
- border: 1px solid #ccc;
101
- -webkit-border-radius: 3px;
102
- -moz-border-radius: 3px;
103
- border-radius: 3px;
104
- background: #fafafa;
105
- -webkit-box-shadow: 0 2px 4px #ddd;
106
- -moz-box-shadow: 0 2px 4px #ddd;
107
- box-shadow: 0 2px 4px #ddd;
108
- cursor: pointer;
109
- -webkit-transition: all .2s;
110
- -moz-transition: all .2s;
111
- transition: all .2s;
112
- }
113
- .su-addons-item:hover {
114
- top: -5px;
115
- border-color: #26779C;
116
- background: #fff;
117
- -webkit-box-shadow: 0 4px 9px #ccc;
118
- -moz-box-shadow: 0 4px 9px #ccc;
119
- box-shadow: 0 4px 9px #ccc;
120
- }
121
- .su-addons-item img {
122
- display: block;
123
- width: 100%;
124
- height: 140px;
125
- margin: 0;
126
- padding: 0;
127
- border: none;
128
- border-bottom: 7px solid #ddd;
129
- -webkit-border-top-left-radius: 3px;
130
- -moz-border-radius-topleft: 3px;
131
- border-top-left-radius: 3px;
132
- -webkit-border-top-right-radius: 3px;
133
- -moz-border-radius-topright: 3px;
134
- border-top-right-radius: 3px;
135
- background: #eee;
136
- }
137
- .su-addons-item-content { padding: 15px; }
138
- .su-addons-item-content h4 {
139
- height: 16px;
140
- margin: 0 0 15px 0;
141
- overflow: hidden;
142
- color: #000;
143
- font-weight: bold;
144
- font-size: 14px;
145
- }
146
- .su-addons-item-content p {
147
- height: 90px;
148
- margin: 15px 0;
149
- overflow: hidden;
150
- color: #555;
151
- font-size: 12px;
152
- line-height: 1.5;
153
- }
154
- .su-addons-item-button {
155
- margin-top: 30px;
156
- text-align: right;
157
- }
158
-
159
- /* Examples screen */
160
- #su-examples-screen { margin: 40px 20px; }
161
- #su-examples-screen h2 {
162
- margin: 0 0 1.2em 0;
163
- padding: 0 0 0.8em 0;
164
- border-bottom: 1px solid #ddd;
165
- color: #666;
166
- font-weight: normal;
167
- font-size: 2em;
168
- }
169
- .su-examples-group { margin-bottom: 40px; }
170
- .su-examples-item {
171
- position: relative;
172
- height: 15px;
173
- max-width: 700px;
174
- margin: 0 0 10px 0;
175
- padding: 15px 20px 15px 65px;
176
- overflow: hidden;
177
- border: 1px solid #ddd;
178
- -webkit-border-radius: 3px;
179
- -moz-border-radius: 3px;
180
- border-radius: 3px;
181
- background: #f8f8f8;
182
- color: #444;
183
- font-size: 13px;
184
- line-height: 15px;
185
- cursor: pointer;
186
- }
187
- .su-examples-item:hover {
188
- border-color: #53ACD5;
189
- background: #fff;
190
- color: #26779C;
191
- }
192
- .su-examples-item i {
193
- position: absolute;
194
- top: 0;
195
- left: 0;
196
- display: block;
197
- width: 45px;
198
- height: 45px;
199
- -webkit-border-top-left-radius: 3px;
200
- -moz-border-radius-topleft: 3px;
201
- border-top-left-radius: 3px;
202
- -webkit-border-bottom-left-radius: 3px;
203
- -moz-border-radius-bottomleft: 3px;
204
- border-bottom-left-radius: 3px;
205
- background: #eee;
206
- text-align: center;
207
- font-size: 17px;
208
- line-height: 45px;
209
- -webkit-transition: all .2s;
210
- -moz-transition: all .2s;
211
- transition: all .2s;
212
- }
213
- .su-examples-item:hover i { font-size: 25px; }
214
- #su-examples-window {
215
- position: relative;
216
- width: 85%;
217
- min-height: 60px;
218
- max-width: 700px;
219
- margin: 28px auto 100px;
220
- padding: 20px;
221
- -webkit-border-bottom-right-radius: 5px;
222
- -moz-border-radius-bottomright: 5px;
223
- border-bottom-right-radius: 5px;
224
- -webkit-border-bottom-left-radius: 5px;
225
- -moz-border-radius-bottomleft: 5px;
226
- border-bottom-left-radius: 5px;
227
- background: #fff;
228
- -webkit-box-shadow: 0 2px 25px #000;
229
- -moz-box-shadow: 0 2px 25px #000;
230
- box-shadow: 0 2px 25px #000;
231
- -webkit-transition: max-width .2s;
232
- -moz-transition: max-width .2s;
233
- transition: max-width .2s;
234
- }
235
- .su-examples-error {
236
- width: 100%;
237
- height: 40px;
238
- color: #f03;
239
- text-align: center;
240
- line-height: 40px;
241
- }
242
- #su-examples-window h2 {
243
- margin: 30px 0 20px;
244
- border-bottom: 1px solid #ddd;
245
- padding: 0 0 10px 0;
246
- font-size: 1.2em;
247
- color: #555;
248
- }
249
- .su-examples-code {
250
- margin: 20px 0;
251
- }
252
- .su-examples-code textarea {
253
- display: none;
254
- width: 99%;
255
- background: #FFFFE0;
256
- font-family: Monaco, Consolas, monospace;
257
- }
258
-
259
- body.su-mfp-shown .mfp-bg { z-index: 10000 !important; }
260
- body.su-mfp-shown .mfp-wrap { z-index: 10001 !important; }
261
- body.su-mfp-shown .mfp-preloader { z-index: 10002 !important; }
262
- body.su-mfp-shown .mfp-content { z-index: 10003 !important; }
263
- body.su-mfp-shown button.mfp-close,
264
- body.su-mfp-shown button.mfp-arrow { z-index: 10004 !important; }
1
+ .su-clear {
2
+ height: 0;
3
+ clear: both;
4
+ }
5
+ .su-clearfix:before,
6
+ .su-clearfix:after {
7
+ display: table;
8
+ content: " ";
9
+ }
10
+ .su-clearfix:after { clear: both; }
11
+
12
+ .su-ajax {
13
+ min-height: 60px;
14
+ background-image: url("../images/loading.gif") !important;
15
+ background-position: 50% 50% !important;
16
+ background-repeat: no-repeat !important;
17
+ }
18
+ .su-ajax * { visibility: hidden; }
19
+
20
+ /* About screen */
21
+ #su-about-screen { }
22
+ #su-about-screen h1 { margin: 1.5em 0; }
23
+ #su-about-screen h1 small {
24
+ display: block;
25
+ margin: 7px 0 0 20px;
26
+ color: #aaa;
27
+ font-weight: normal;
28
+ font-size: 0.5em;
29
+ }
30
+ #su-about-screen .su-about-column {
31
+ width: 400px;
32
+ margin-bottom: 1em;
33
+ float: left;
34
+ }
35
+ #su-links {
36
+ margin-bottom: 1.5em;
37
+ line-height: 1.6;
38
+ }
39
+ #su-links span {
40
+ display: inline-block;
41
+ width: 1px;
42
+ height: 1em;
43
+ margin: 0 0.5em;
44
+ border-right: 1px dotted #777;
45
+ vertical-align: middle;
46
+ }
47
+ #su-video {
48
+ width: 100%;
49
+ min-width: 200px;
50
+ max-width: 630px;
51
+ margin-top: 40px;
52
+ }
53
+ #su-video iframe {
54
+ width: 100%;
55
+ height: 370px;
56
+ }
57
+
58
+ /* Custom CSS screen */
59
+ #su-custom-css-screen { }
60
+ #su-custom-css-screen textarea {
61
+ width: 100%;
62
+ border: 1px solid #ccc;
63
+ }
64
+
65
+ .su-custom-css-originals,
66
+ .su-custom-css-vars {
67
+ margin: 1.5em 0;
68
+ line-height: 1.8;
69
+ }
70
+ .su-custom-css-originals span {
71
+ display: inline-block;
72
+ width: 1px;
73
+ height: 1em;
74
+ margin: 0 0.5em;
75
+ border-right: 1px dotted #777;
76
+ vertical-align: middle;
77
+ }
78
+
79
+ body.toplevel_page_shortcodes-ultimate .mfp-iframe-scaler iframe { background: #fff; }
80
+
81
+ .js #sunrise-field-custom-css-editor { height: 300px; }
82
+ #sunrise-field-custom-css-editor .ace_scrollbar { overflow-y: auto !important; }
83
+
84
+ /* Add-ons screen */
85
+ #su-addons-screen { margin: 40px 20px; }
86
+ #su-addons-screen h2 {
87
+ margin: 0 0 1.2em 0;
88
+ padding: 0 0 0.8em 0;
89
+ border-bottom: 1px solid #ddd;
90
+ color: #666;
91
+ font-weight: normal;
92
+ font-size: 2em;
93
+ }
94
+ .su-addons-loop { margin-bottom: 40px; }
95
+ .su-addons-item {
96
+ position: relative;
97
+ width: 220px;
98
+ margin: 0 20px 20px 0;
99
+ float: left;
100
+ border: 1px solid #ccc;
101
+ -webkit-border-radius: 3px;
102
+ -moz-border-radius: 3px;
103
+ border-radius: 3px;
104
+ background: #fafafa;
105
+ -webkit-box-shadow: 0 2px 4px #ddd;
106
+ -moz-box-shadow: 0 2px 4px #ddd;
107
+ box-shadow: 0 2px 4px #ddd;
108
+ cursor: pointer;
109
+ -webkit-transition: all .2s;
110
+ -moz-transition: all .2s;
111
+ transition: all .2s;
112
+ }
113
+ .su-addons-item:hover {
114
+ top: -5px;
115
+ border-color: #26779C;
116
+ background: #fff;
117
+ -webkit-box-shadow: 0 4px 9px #ccc;
118
+ -moz-box-shadow: 0 4px 9px #ccc;
119
+ box-shadow: 0 4px 9px #ccc;
120
+ }
121
+ .su-addons-item img {
122
+ display: block;
123
+ width: 100%;
124
+ height: 140px;
125
+ margin: 0;
126
+ padding: 0;
127
+ border: none;
128
+ border-bottom: 7px solid #ddd;
129
+ -webkit-border-top-left-radius: 3px;
130
+ -moz-border-radius-topleft: 3px;
131
+ border-top-left-radius: 3px;
132
+ -webkit-border-top-right-radius: 3px;
133
+ -moz-border-radius-topright: 3px;
134
+ border-top-right-radius: 3px;
135
+ background: #eee;
136
+ }
137
+ .su-addons-item-content { padding: 15px; }
138
+ .su-addons-item-content h4 {
139
+ height: 16px;
140
+ margin: 0 0 15px 0;
141
+ overflow: hidden;
142
+ color: #000;
143
+ font-weight: bold;
144
+ font-size: 14px;
145
+ }
146
+ .su-addons-item-content p {
147
+ height: 90px;
148
+ margin: 15px 0;
149
+ overflow: hidden;
150
+ color: #555;
151
+ font-size: 12px;
152
+ line-height: 1.5;
153
+ }
154
+ .su-addons-item-button {
155
+ margin-top: 30px;
156
+ text-align: right;
157
+ }
158
+
159
+ /* Examples screen */
160
+ #su-examples-screen { margin: 40px 20px; }
161
+ #su-examples-screen h2 {
162
+ margin: 0 0 1.2em 0;
163
+ padding: 0 0 0.8em 0;
164
+ border-bottom: 1px solid #ddd;
165
+ color: #666;
166
+ font-weight: normal;
167
+ font-size: 2em;
168
+ }
169
+ .su-examples-group { margin-bottom: 40px; }
170
+ .su-examples-item {
171
+ position: relative;
172
+ height: 15px;
173
+ max-width: 700px;
174
+ margin: 0 0 10px 0;
175
+ padding: 15px 20px 15px 65px;
176
+ overflow: hidden;
177
+ border: 1px solid #ddd;
178
+ -webkit-border-radius: 3px;
179
+ -moz-border-radius: 3px;
180
+ border-radius: 3px;
181
+ background: #f8f8f8;
182
+ color: #444;
183
+ font-size: 13px;
184
+ line-height: 15px;
185
+ cursor: pointer;
186
+ }
187
+ .su-examples-item:hover {
188
+ border-color: #53ACD5;
189
+ background: #fff;
190
+ color: #26779C;
191
+ }
192
+ .su-examples-item i {
193
+ position: absolute;
194
+ top: 0;
195
+ left: 0;
196
+ display: block;
197
+ width: 45px;
198
+ height: 45px;
199
+ -webkit-border-top-left-radius: 3px;
200
+ -moz-border-radius-topleft: 3px;
201
+ border-top-left-radius: 3px;
202
+ -webkit-border-bottom-left-radius: 3px;
203
+ -moz-border-radius-bottomleft: 3px;
204
+ border-bottom-left-radius: 3px;
205
+ background: #eee;
206
+ text-align: center;
207
+ font-size: 17px;
208
+ line-height: 45px;
209
+ -webkit-transition: all .2s;
210
+ -moz-transition: all .2s;
211
+ transition: all .2s;
212
+ }
213
+ .su-examples-item:hover i { font-size: 25px; }
214
+ #su-examples-window {
215
+ position: relative;
216
+ width: 85%;
217
+ min-height: 60px;
218
+ max-width: 700px;
219
+ margin: 28px auto 100px;
220
+ padding: 20px;
221
+ -webkit-border-bottom-right-radius: 5px;
222
+ -moz-border-radius-bottomright: 5px;
223
+ border-bottom-right-radius: 5px;
224
+ -webkit-border-bottom-left-radius: 5px;
225
+ -moz-border-radius-bottomleft: 5px;
226
+ border-bottom-left-radius: 5px;
227
+ background: #fff;
228
+ -webkit-box-shadow: 0 2px 25px #000;
229
+ -moz-box-shadow: 0 2px 25px #000;
230
+ box-shadow: 0 2px 25px #000;
231
+ -webkit-transition: max-width .2s;
232
+ -moz-transition: max-width .2s;
233
+ transition: max-width .2s;
234
+ }
235
+ .su-examples-error {
236
+ width: 100%;
237
+ height: 40px;
238
+ color: #f03;
239
+ text-align: center;
240
+ line-height: 40px;
241
+ }
242
+ #su-examples-window h2 {
243
+ margin: 30px 0 20px;
244
+ border-bottom: 1px solid #ddd;
245
+ padding: 0 0 10px 0;
246
+ font-size: 1.2em;
247
+ color: #555;
248
+ }
249
+ .su-examples-code {
250
+ margin: 20px 0;
251
+ }
252
+ .su-examples-code textarea {
253
+ display: none;
254
+ width: 99%;
255
+ background: #FFFFE0;
256
+ font-family: Monaco, Consolas, monospace;
257
+ }
258
+
259
+ body.su-mfp-shown .mfp-bg { z-index: 10000 !important; }
260
+ body.su-mfp-shown .mfp-wrap { z-index: 10001 !important; }
261
+ body.su-mfp-shown .mfp-preloader { z-index: 10002 !important; }
262
+ body.su-mfp-shown .mfp-content { z-index: 10003 !important; }
263
+ body.su-mfp-shown button.mfp-close,
264
+ body.su-mfp-shown button.mfp-arrow { z-index: 10004 !important; }
assets/css/other-shortcodes.css CHANGED
@@ -1,146 +1,146 @@
1
- /*** Shortcodes Ultimate - other elements ***/
2
-
3
- /* Tooltip
4
- ---------------------------------------------------------------*/
5
-
6
- .qtip.su-qtip { max-width: 480px !important; }
7
- .su-tooltip { display: inline-block; }
8
- .su-qtip-size-1 { font-size: 0.8em !important; }
9
- .su-qtip-size-2 { font-size: 0.9em !important; }
10
- .su-qtip-size-3 { font-size: 1em !important; }
11
- .su-qtip-size-4 { font-size: 1.1em !important; }
12
- .su-qtip-size-5 { font-size: 1.2em !important; }
13
- .su-qtip-size-6 { font-size: 1.3em !important; }
14
- .su-tooltip-content { display: none; }
15
- .su-tooltip-content > :last-child { margin-bottom: 0; }
16
- .qtip-content .su-tooltip-content img,
17
- .qtip-content .su-tooltip-content object,
18
- .qtip-content .su-tooltip-content iframe,
19
- .qtip-content .su-tooltip-content embed { max-width: 430px; }
20
- .qtip-content .su-tooltip-content .su-responsive-media-yes { width: 430px; }
21
-
22
- /* Private
23
- ---------------------------------------------------------------*/
24
-
25
- .su-private { margin: 0 0 1.5em 0 }
26
-
27
- /* Members
28
- ---------------------------------------------------------------*/
29
-
30
- .su-members {
31
- margin-bottom: 1.5em;
32
- padding: 1em;
33
- border-width: 1px 0;
34
- border-style: solid;
35
- text-align: center;
36
- }
37
- .su-members a {
38
- text-decoration: underline;
39
- color: inherit;
40
- }
41
-
42
- /* Guests
43
- ---------------------------------------------------------------*/
44
-
45
- .su-guests { margin-bottom: 1.5em }
46
-
47
- /* Posts
48
- ---------------------------------------------------------------*/
49
-
50
- .su-posts-default-loop { }
51
- .su-posts-default-loop .su-post {
52
- margin-bottom: 2.5em;
53
- line-height: 1.5;
54
- }
55
- .su-posts-default-loop .su-post:after {
56
- content: '';
57
- display: table;
58
- clear: both;
59
- }
60
- .su-posts-default-loop .su-post-thumbnail {
61
- float: left;
62
- display: block;
63
- width: 100px;
64
- height: 100px;
65
- margin-right: 1em;
66
- }
67
- .su-posts-default-loop .su-post-thumbnail img {
68
- max-width: 100px;
69
- max-height: 100px;
70
- }
71
- .su-posts-default-loop h2.su-post-title {
72
- clear: none;
73
- margin: 0 0 0.3em 0;
74
- font-size: 1.2em;
75
- font-weight: bold;
76
- }
77
- .su-posts-default-loop .su-post-meta {
78
- margin-bottom: 0.7em;
79
- font-size: 0.8em;
80
- opacity: 0.6;
81
- filter: alpha(opacity=60);
82
- }
83
- .su-posts-default-loop .su-post-excerpt { margin-bottom: 0.5em }
84
- .su-posts-default-loop .su-post-excerpt p:last-child { margin-bottom: 0 }
85
- .su-posts-default-loop .su-post-comments-link { font-size: 0.9em }
86
- .su-posts-teaser-loop { }
87
- .su-posts-teaser-loop .su-post {
88
- margin-bottom: 1.5em;
89
- line-height: 1.2;
90
- }
91
- .su-posts-teaser-loop .su-post:after {
92
- content: '';
93
- display: table;
94
- clear: both;
95
- }
96
- .su-posts-teaser-loop .su-post-thumbnail {
97
- float: left;
98
- display: block;
99
- width: 56px;
100
- height: 56px;
101
- margin: 0 1em 0 0;
102
- }
103
- .su-posts-teaser-loop .su-post-thumbnail img {
104
- display: block;
105
- margin: 0;
106
- padding: 2px;
107
- border: 1px solid #ccc;
108
- border-radius: 5px;
109
- -moz-border-radius: 5px;
110
- -webkit-border-radius: 5px;
111
- max-width: 100%;
112
- max-height: 100%;
113
- }
114
- .su-posts-teaser-loop h2.su-post-title {
115
- display: block;
116
- margin: 0;
117
- padding: 0;
118
- border: none;
119
- font-size: 0.9em;
120
- font-weight: normal;
121
- clear: none;
122
- }
123
- .su-posts-single-post { }
124
- .su-posts-single-post .su-post {
125
- margin-bottom: 2.5em;
126
- line-height: 1.5;
127
- }
128
- .su-posts-single-post .su-post:after {
129
- content: '';
130
- display: table;
131
- clear: both;
132
- }
133
- .su-posts-single-post h1.su-post-title {
134
- clear: none;
135
- margin: 0 0 0.3em 0;
136
- font-size: 1.2em;
137
- font-weight: bold;
138
- }
139
- .su-posts-single-post .su-post-meta {
140
- margin-bottom: 0.7em;
141
- font-size: 0.8em;
142
- opacity: 0.6;
143
- filter: alpha(opacity=60);
144
- }
145
- .su-posts-single-post .su-post-content { margin-bottom: 0.5em }
146
- .su-posts-single-post .su-post-content p:last-child { margin-bottom: 0 }
1
+ /*** Shortcodes Ultimate - other elements ***/
2
+
3
+ /* Tooltip
4
+ ---------------------------------------------------------------*/
5
+
6
+ .qtip.su-qtip { max-width: 480px !important; }
7
+ .su-tooltip { display: inline-block; }
8
+ .su-qtip-size-1 { font-size: 0.8em !important; }
9
+ .su-qtip-size-2 { font-size: 0.9em !important; }
10
+ .su-qtip-size-3 { font-size: 1em !important; }
11
+ .su-qtip-size-4 { font-size: 1.1em !important; }
12
+ .su-qtip-size-5 { font-size: 1.2em !important; }
13
+ .su-qtip-size-6 { font-size: 1.3em !important; }
14
+ .su-tooltip-content { display: none; }
15
+ .su-tooltip-content > :last-child { margin-bottom: 0; }
16
+ .qtip-content .su-tooltip-content img,
17
+ .qtip-content .su-tooltip-content object,
18
+ .qtip-content .su-tooltip-content iframe,
19
+ .qtip-content .su-tooltip-content embed { max-width: 430px; }
20
+ .qtip-content .su-tooltip-content .su-responsive-media-yes { width: 430px; }
21
+
22
+ /* Private
23
+ ---------------------------------------------------------------*/
24
+
25
+ .su-private { margin: 0 0 1.5em 0 }
26
+
27
+ /* Members
28
+ ---------------------------------------------------------------*/
29
+
30
+ .su-members {
31
+ margin-bottom: 1.5em;
32
+ padding: 1em;
33
+ border-width: 1px 0;
34
+ border-style: solid;
35
+ text-align: center;
36
+ }
37
+ .su-members a {
38
+ text-decoration: underline;
39
+ color: inherit;
40
+ }
41
+
42
+ /* Guests
43
+ ---------------------------------------------------------------*/
44
+
45
+ .su-guests { margin-bottom: 1.5em }
46
+
47
+ /* Posts
48
+ ---------------------------------------------------------------*/
49
+
50
+ .su-posts-default-loop { }
51
+ .su-posts-default-loop .su-post {
52
+ margin-bottom: 2.5em;
53
+ line-height: 1.5;
54
+ }
55
+ .su-posts-default-loop .su-post:after {
56
+ content: '';
57
+ display: table;
58
+ clear: both;
59
+ }
60
+ .su-posts-default-loop .su-post-thumbnail {
61
+ float: left;
62
+ display: block;
63
+ width: 100px;
64
+ height: 100px;
65
+ margin-right: 1em;
66
+ }
67
+ .su-posts-default-loop .su-post-thumbnail img {
68
+ max-width: 100px;
69
+ max-height: 100px;
70
+ }
71
+ .su-posts-default-loop h2.su-post-title {
72
+ clear: none;
73
+ margin: 0 0 0.3em 0;
74
+ font-size: 1.2em;
75
+ font-weight: bold;
76
+ }
77
+ .su-posts-default-loop .su-post-meta {
78
+ margin-bottom: 0.7em;
79
+ font-size: 0.8em;
80
+ opacity: 0.6;
81
+ filter: alpha(opacity=60);
82
+ }
83
+ .su-posts-default-loop .su-post-excerpt { margin-bottom: 0.5em }
84
+ .su-posts-default-loop .su-post-excerpt p:last-child { margin-bottom: 0 }
85
+ .su-posts-default-loop .su-post-comments-link { font-size: 0.9em }
86
+ .su-posts-teaser-loop { }
87
+ .su-posts-teaser-loop .su-post {
88
+ margin-bottom: 1.5em;
89
+ line-height: 1.2;
90
+ }
91
+ .su-posts-teaser-loop .su-post:after {
92
+ content: '';
93
+ display: table;
94
+ clear: both;
95
+ }
96
+ .su-posts-teaser-loop .su-post-thumbnail {
97
+ float: left;
98
+ display: block;
99
+ width: 56px;
100
+ height: 56px;
101
+ margin: 0 1em 0 0;
102
+ }
103
+ .su-posts-teaser-loop .su-post-thumbnail img {
104
+ display: block;
105
+ margin: 0;
106
+ padding: 2px;
107
+ border: 1px solid #ccc;
108
+ border-radius: 5px;
109
+ -moz-border-radius: 5px;
110
+ -webkit-border-radius: 5px;
111
+ max-width: 100%;
112
+ max-height: 100%;
113
+ }
114
+ .su-posts-teaser-loop h2.su-post-title {
115
+ display: block;
116
+ margin: 0;
117
+ padding: 0;
118
+ border: none;
119
+ font-size: 0.9em;
120
+ font-weight: normal;
121
+ clear: none;
122
+ }
123
+ .su-posts-single-post { }
124
+ .su-posts-single-post .su-post {
125
+ margin-bottom: 2.5em;
126
+ line-height: 1.5;
127
+ }
128
+ .su-posts-single-post .su-post:after {
129
+ content: '';
130
+ display: table;
131
+ clear: both;
132
+ }
133
+ .su-posts-single-post h1.su-post-title {
134
+ clear: none;
135
+ margin: 0 0 0.3em 0;
136
+ font-size: 1.2em;
137
+ font-weight: bold;
138
+ }
139
+ .su-posts-single-post .su-post-meta {
140
+ margin-bottom: 0.7em;
141
+ font-size: 0.8em;
142
+ opacity: 0.6;
143
+ filter: alpha(opacity=60);
144
+ }
145
+ .su-posts-single-post .su-post-content { margin-bottom: 0.5em }
146
+ .su-posts-single-post .su-post-content p:last-child { margin-bottom: 0 }
assets/css/owl-carousel-transitions.css CHANGED
@@ -1,163 +1,163 @@
1
- /*
2
- * Owl Carousel CSS3 Transitions
3
- * v1.3.2
4
- */
5
-
6
- .owl-origin {
7
- -webkit-perspective: 1200px;
8
- -webkit-perspective-origin-x : 50%;
9
- -webkit-perspective-origin-y : 50%;
10
- -moz-perspective : 1200px;
11
- -moz-perspective-origin-x : 50%;
12
- -moz-perspective-origin-y : 50%;
13
- perspective : 1200px;
14
- }
15
- /* fade */
16
- .owl-fade-out {
17
- z-index: 10;
18
- -webkit-animation: fadeOut .7s both ease;
19
- -moz-animation: fadeOut .7s both ease;
20
- animation: fadeOut .7s both ease;
21
- }
22
- .owl-fade-in {
23
- -webkit-animation: fadeIn .7s both ease;
24
- -moz-animation: fadeIn .7s both ease;
25
- animation: fadeIn .7s both ease;
26
- }
27
- /* backSlide */
28
- .owl-backSlide-out {
29
- -webkit-animation: backSlideOut 1s both ease;
30
- -moz-animation: backSlideOut 1s both ease;
31
- animation: backSlideOut 1s both ease;
32
- }
33
- .owl-backSlide-in {
34
- -webkit-animation: backSlideIn 1s both ease;
35
- -moz-animation: backSlideIn 1s both ease;
36
- animation: backSlideIn 1s both ease;
37
- }
38
- /* goDown */
39
- .owl-goDown-out {
40
- -webkit-animation: scaleToFade .7s ease both;
41
- -moz-animation: scaleToFade .7s ease both;
42
- animation: scaleToFade .7s ease both;
43
- }
44
- .owl-goDown-in {
45
- -webkit-animation: goDown .6s ease both;
46
- -moz-animation: goDown .6s ease both;
47
- animation: goDown .6s ease both;
48
- }
49
- /* scaleUp */
50
- .owl-fadeUp-in {
51
- -webkit-animation: scaleUpFrom .5s ease both;
52
- -moz-animation: scaleUpFrom .5s ease both;
53
- animation: scaleUpFrom .5s ease both;
54
- }
55
-
56
- .owl-fadeUp-out {
57
- -webkit-animation: scaleUpTo .5s ease both;
58
- -moz-animation: scaleUpTo .5s ease both;
59
- animation: scaleUpTo .5s ease both;
60
- }
61
- /* Keyframes */
62
- /*empty*/
63
- @-webkit-keyframes empty {
64
- 0% {opacity: 1}
65
- }
66
- @-moz-keyframes empty {
67
- 0% {opacity: 1}
68
- }
69
- @keyframes empty {
70
- 0% {opacity: 1}
71
- }
72
- @-webkit-keyframes fadeIn {
73
- 0% { opacity:0; }
74
- 100% { opacity:1; }
75
- }
76
- @-moz-keyframes fadeIn {
77
- 0% { opacity:0; }
78
- 100% { opacity:1; }
79
- }
80
- @keyframes fadeIn {
81
- 0% { opacity:0; }
82
- 100% { opacity:1; }
83
- }
84
- @-webkit-keyframes fadeOut {
85
- 0% { opacity:1; }
86
- 100% { opacity:0; }
87
- }
88
- @-moz-keyframes fadeOut {
89
- 0% { opacity:1; }
90
- 100% { opacity:0; }
91
- }
92
- @keyframes fadeOut {
93
- 0% { opacity:1; }
94
- 100% { opacity:0; }
95
- }
96
- @-webkit-keyframes backSlideOut {
97
- 25% { opacity: .5; -webkit-transform: translateZ(-500px); }
98
- 75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
99
- 100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
100
- }
101
- @-moz-keyframes backSlideOut {
102
- 25% { opacity: .5; -moz-transform: translateZ(-500px); }
103
- 75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
104
- 100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
105
- }
106
- @keyframes backSlideOut {
107
- 25% { opacity: .5; transform: translateZ(-500px); }
108
- 75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
109
- 100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
110
- }
111
- @-webkit-keyframes backSlideIn {
112
- 0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
113
- 75% { opacity: .5; -webkit-transform: translateZ(-500px); }
114
- 100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
115
- }
116
- @-moz-keyframes backSlideIn {
117
- 0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
118
- 75% { opacity: .5; -moz-transform: translateZ(-500px); }
119
- 100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
120
- }
121
- @keyframes backSlideIn {
122
- 0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
123
- 75% { opacity: .5; transform: translateZ(-500px); }
124
- 100% { opacity: 1; transform: translateZ(0) translateX(0); }
125
- }
126
- @-webkit-keyframes scaleToFade {
127
- to { opacity: 0; -webkit-transform: scale(.8); }
128
- }
129
- @-moz-keyframes scaleToFade {
130
- to { opacity: 0; -moz-transform: scale(.8); }
131
- }
132
- @keyframes scaleToFade {
133
- to { opacity: 0; transform: scale(.8); }
134
- }
135
- @-webkit-keyframes goDown {
136
- from { -webkit-transform: translateY(-100%); }
137
- }
138
- @-moz-keyframes goDown {
139
- from { -moz-transform: translateY(-100%); }
140
- }
141
- @keyframes goDown {
142
- from { transform: translateY(-100%); }
143
- }
144
-
145
- @-webkit-keyframes scaleUpFrom {
146
- from { opacity: 0; -webkit-transform: scale(1.5); }
147
- }
148
- @-moz-keyframes scaleUpFrom {
149
- from { opacity: 0; -moz-transform: scale(1.5); }
150
- }
151
- @keyframes scaleUpFrom {
152
- from { opacity: 0; transform: scale(1.5); }
153
- }
154
-
155
- @-webkit-keyframes scaleUpTo {
156
- to { opacity: 0; -webkit-transform: scale(1.5); }
157
- }
158
- @-moz-keyframes scaleUpTo {
159
- to { opacity: 0; -moz-transform: scale(1.5); }
160
- }
161
- @keyframes scaleUpTo {
162
- to { opacity: 0; transform: scale(1.5); }
163
  }
1
+ /*
2
+ * Owl Carousel CSS3 Transitions
3
+ * v1.3.2
4
+ */
5
+
6
+ .owl-origin {
7
+ -webkit-perspective: 1200px;
8
+ -webkit-perspective-origin-x : 50%;
9
+ -webkit-perspective-origin-y : 50%;
10
+ -moz-perspective : 1200px;
11
+ -moz-perspective-origin-x : 50%;
12
+ -moz-perspective-origin-y : 50%;
13
+ perspective : 1200px;
14
+ }
15
+ /* fade */
16
+ .owl-fade-out {
17
+ z-index: 10;
18
+ -webkit-animation: fadeOut .7s both ease;
19
+ -moz-animation: fadeOut .7s both ease;
20
+ animation: fadeOut .7s both ease;
21
+ }
22
+ .owl-fade-in {
23
+ -webkit-animation: fadeIn .7s both ease;
24
+ -moz-animation: fadeIn .7s both ease;
25
+ animation: fadeIn .7s both ease;
26
+ }
27
+ /* backSlide */
28
+ .owl-backSlide-out {
29
+ -webkit-animation: backSlideOut 1s both ease;
30
+ -moz-animation: backSlideOut 1s both ease;
31
+ animation: backSlideOut 1s both ease;
32
+ }
33
+ .owl-backSlide-in {
34
+ -webkit-animation: backSlideIn 1s both ease;
35
+ -moz-animation: backSlideIn 1s both ease;
36
+ animation: backSlideIn 1s both ease;
37
+ }
38
+ /* goDown */
39
+ .owl-goDown-out {
40
+ -webkit-animation: scaleToFade .7s ease both;
41
+ -moz-animation: scaleToFade .7s ease both;
42
+ animation: scaleToFade .7s ease both;
43
+ }
44
+ .owl-goDown-in {
45
+ -webkit-animation: goDown .6s ease both;
46
+ -moz-animation: goDown .6s ease both;
47
+ animation: goDown .6s ease both;
48
+ }
49
+ /* scaleUp */
50
+ .owl-fadeUp-in {
51
+ -webkit-animation: scaleUpFrom .5s ease both;
52
+ -moz-animation: scaleUpFrom .5s ease both;
53
+ animation: scaleUpFrom .5s ease both;
54
+ }
55
+
56
+ .owl-fadeUp-out {
57
+ -webkit-animation: scaleUpTo .5s ease both;
58
+ -moz-animation: scaleUpTo .5s ease both;
59
+ animation: scaleUpTo .5s ease both;
60
+ }
61
+ /* Keyframes */
62
+ /*empty*/
63
+ @-webkit-keyframes empty {
64
+ 0% {opacity: 1}
65
+ }
66
+ @-moz-keyframes empty {
67
+ 0% {opacity: 1}
68
+ }
69
+ @keyframes empty {
70
+ 0% {opacity: 1}
71
+ }
72
+ @-webkit-keyframes fadeIn {
73
+ 0% { opacity:0; }
74
+ 100% { opacity:1; }
75
+ }
76
+ @-moz-keyframes fadeIn {
77
+ 0% { opacity:0; }
78
+ 100% { opacity:1; }
79
+ }
80
+ @keyframes fadeIn {
81
+ 0% { opacity:0; }
82
+ 100% { opacity:1; }
83
+ }
84
+ @-webkit-keyframes fadeOut {
85
+ 0% { opacity:1; }
86
+ 100% { opacity:0; }
87
+ }
88
+ @-moz-keyframes fadeOut {
89
+ 0% { opacity:1; }
90
+ 100% { opacity:0; }
91
+ }
92
+ @keyframes fadeOut {
93
+ 0% { opacity:1; }
94
+ 100% { opacity:0; }
95
+ }
96
+ @-webkit-keyframes backSlideOut {
97
+ 25% { opacity: .5; -webkit-transform: translateZ(-500px); }
98
+ 75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
99
+ 100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
100
+ }
101
+ @-moz-keyframes backSlideOut {
102
+ 25% { opacity: .5; -moz-transform: translateZ(-500px); }
103
+ 75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
104
+ 100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
105
+ }
106
+ @keyframes backSlideOut {
107
+ 25% { opacity: .5; transform: translateZ(-500px); }
108
+ 75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
109
+ 100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
110
+ }
111
+ @-webkit-keyframes backSlideIn {
112
+ 0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
113
+ 75% { opacity: .5; -webkit-transform: translateZ(-500px); }
114
+ 100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
115
+ }
116
+ @-moz-keyframes backSlideIn {
117
+ 0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
118
+ 75% { opacity: .5; -moz-transform: translateZ(-500px); }
119
+ 100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
120
+ }
121
+ @keyframes backSlideIn {
122
+ 0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
123
+ 75% { opacity: .5; transform: translateZ(-500px); }
124
+ 100% { opacity: 1; transform: translateZ(0) translateX(0); }
125
+ }
126
+ @-webkit-keyframes scaleToFade {
127
+ to { opacity: 0; -webkit-transform: scale(.8); }
128
+ }
129
+ @-moz-keyframes scaleToFade {
130
+ to { opacity: 0; -moz-transform: scale(.8); }
131
+ }
132
+ @keyframes scaleToFade {
133
+ to { opacity: 0; transform: scale(.8); }
134
+ }
135
+ @-webkit-keyframes goDown {
136
+ from { -webkit-transform: translateY(-100%); }
137
+ }
138
+ @-moz-keyframes goDown {
139
+ from { -moz-transform: translateY(-100%); }
140
+ }
141
+ @keyframes goDown {
142
+ from { transform: translateY(-100%); }
143
+ }
144
+
145
+ @-webkit-keyframes scaleUpFrom {
146
+ from { opacity: 0; -webkit-transform: scale(1.5); }
147
+ }
148
+ @-moz-keyframes scaleUpFrom {
149
+ from { opacity: 0; -moz-transform: scale(1.5); }
150
+ }
151
+ @keyframes scaleUpFrom {
152
+ from { opacity: 0; transform: scale(1.5); }
153
+ }
154
+
155
+ @-webkit-keyframes scaleUpTo {
156
+ to { opacity: 0; -webkit-transform: scale(1.5); }
157
+ }
158
+ @-moz-keyframes scaleUpTo {
159
+ to { opacity: 0; -moz-transform: scale(1.5); }
160
+ }
161
+ @keyframes scaleUpTo {
162
+ to { opacity: 0; transform: scale(1.5); }
163
  }
assets/css/owl-carousel.css CHANGED
@@ -1,71 +1,71 @@
1
- /*
2
- * Core Owl Carousel CSS File
3
- * v1.3.2
4
- */
5
-
6
- /* clearfix */
7
- .owl-carousel .owl-wrapper:after {
8
- content: ".";
9
- display: block;
10
- clear: both;
11
- visibility: hidden;
12
- line-height: 0;
13
- height: 0;
14
- }
15
- /* display none until init */
16
- .owl-carousel{
17
- display: none;
18
- position: relative;
19
- width: 100%;
20
- -ms-touch-action: pan-y;
21
- }
22
- .owl-carousel .owl-wrapper{
23
- display: none;
24
- position: relative;
25
- -webkit-transform: translate3d(0px, 0px, 0px);
26
- }
27
- .owl-carousel .owl-wrapper-outer{
28
- overflow: hidden;
29
- position: relative;
30
- width: 100%;
31
- }
32
- .owl-carousel .owl-wrapper-outer.autoHeight{
33
- -webkit-transition: height 500ms ease-in-out;
34
- -moz-transition: height 500ms ease-in-out;
35
- -ms-transition: height 500ms ease-in-out;
36
- -o-transition: height 500ms ease-in-out;
37
- transition: height 500ms ease-in-out;
38
- }
39
-
40
- .owl-carousel .owl-item{
41
- float: left;
42
- }
43
- .owl-controls .owl-page,
44
- .owl-controls .owl-buttons div{
45
- cursor: pointer;
46
- }
47
- .owl-controls {
48
- -webkit-user-select: none;
49
- -khtml-user-select: none;
50
- -moz-user-select: none;
51
- -ms-user-select: none;
52
- user-select: none;
53
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
54
- }
55
-
56
- /* mouse grab icon */
57
- .grabbing {
58
- cursor:url('../images/grabbing.png') 8 8, move;
59
- }
60
-
61
- /* fix */
62
- .owl-carousel .owl-wrapper,
63
- .owl-carousel .owl-item{
64
- -webkit-backface-visibility: hidden;
65
- -moz-backface-visibility: hidden;
66
- -ms-backface-visibility: hidden;
67
- -webkit-transform: translate3d(0,0,0);
68
- -moz-transform: translate3d(0,0,0);
69
- -ms-transform: translate3d(0,0,0);
70
- }
71
-
1
+ /*
2
+ * Core Owl Carousel CSS File
3
+ * v1.3.2
4
+ */
5
+
6
+ /* clearfix */
7
+ .owl-carousel .owl-wrapper:after {
8
+ content: ".";
9
+ display: block;
10
+ clear: both;
11
+ visibility: hidden;
12
+ line-height: 0;
13
+ height: 0;
14
+ }
15
+ /* display none until init */
16
+ .owl-carousel{
17
+ display: none;
18
+ position: relative;
19
+ width: 100%;
20
+ -ms-touch-action: pan-y;
21
+ }
22
+ .owl-carousel .owl-wrapper{
23
+ display: none;
24
+ position: relative;
25
+ -webkit-transform: translate3d(0px, 0px, 0px);
26
+ }
27
+ .owl-carousel .owl-wrapper-outer{
28
+ overflow: hidden;
29
+ position: relative;
30
+ width: 100%;
31
+ }
32
+ .owl-carousel .owl-wrapper-outer.autoHeight{
33
+ -webkit-transition: height 500ms ease-in-out;
34
+ -moz-transition: height 500ms ease-in-out;
35
+ -ms-transition: height 500ms ease-in-out;
36
+ -o-transition: height 500ms ease-in-out;
37
+ transition: height 500ms ease-in-out;
38
+ }
39
+
40
+ .owl-carousel .owl-item{
41
+ float: left;
42
+ }
43
+ .owl-controls .owl-page,
44
+ .owl-controls .owl-buttons div{
45
+ cursor: pointer;
46
+ }
47
+ .owl-controls {
48
+ -webkit-user-select: none;
49
+ -khtml-user-select: none;
50
+ -moz-user-select: none;
51
+ -ms-user-select: none;
52
+ user-select: none;
53
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
54
+ }
55
+
56
+ /* mouse grab icon */
57
+ .grabbing {
58
+ cursor:url('../images/grabbing.png') 8 8, move;
59
+ }
60
+
61
+ /* fix */
62
+ .owl-carousel .owl-wrapper,
63
+ .owl-carousel .owl-item{
64
+ -webkit-backface-visibility: hidden;
65
+ -moz-backface-visibility: hidden;
66
+ -ms-backface-visibility: hidden;
67
+ -webkit-transform: translate3d(0,0,0);
68
+ -moz-transform: translate3d(0,0,0);
69
+ -ms-transform: translate3d(0,0,0);
70
+ }
71
+
assets/css/players-shortcodes.css CHANGED
@@ -1,297 +1,297 @@
1
- /*** Shortcodes Ultimate - players elements ***/
2
-
3
- /* Audio
4
- ---------------------------------------------------------------*/
5
-
6
- .su-audio { }
7
- .su-audio {
8
- position: relative;
9
- width: 100%;
10
- height: 30px;
11
- margin-bottom: 1.5em;
12
- background: #7c8781; /* Old browsers */
13
- background: -moz-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* FF3.6+ */
14
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7c8781), color-stop(100%, #0a0809)); /* Chrome,Safari4+ */
15
- background: -webkit-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Chrome10+,Safari5.1+ */
16
- background: -o-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Opera 11.10+ */
17
- background: -ms-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* IE10+ */
18
- background: linear-gradient(to bottom, #7c8781 0%, #0a0809 100%); /* W3C */
19
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7c8781', endColorstr='#0a0809', GradientType=0); /* IE6-9 */
20
- border-radius: 3px;
21
- -moz-border-radius: 3px;
22
- -webkit-border-radius: 3px;
23
- }
24
- .su-audio .jp-play,
25
- .su-audio .jp-pause {
26
- position: absolute;
27
- left: 0;
28
- top: 0;
29
- display: block;
30
- width: 30px;
31
- height: 30px;
32
- -webkit-border-top-left-radius: 3px;
33
- -webkit-border-bottom-left-radius: 3px;
34
- -moz-border-radius-topleft: 3px;
35
- -moz-border-radius-bottomleft: 3px;
36
- border-top-left-radius: 3px;
37
- border-bottom-left-radius: 3px;
38
- cursor: pointer;
39
- border-right: 1px solid #454947;
40
- background-image: url('../images/player/default.png');
41
- background-repeat: no-repeat;
42
- }
43
- .su-audio .jp-play { background-position: 0 0 }
44
- .su-audio .jp-pause { background-position: -30px 0 }
45
- .su-audio .jp-current-time,
46
- .su-audio .jp-duration {
47
- position: absolute;
48
- top: 0;
49
- display: block;
50
- height: 30px;
51
- line-height: 30px;
52
- font-size: 10px;
53
- color: #eee;
54
- text-shadow: 0 -1px 0 #000;
55
- -moz-text-shadow: 0 -1px 0 #000;
56
- -webkit-text-shadow: 0 -1px 0 #000;
57
- }
58
- .su-audio .jp-current-time { left: 45px }
59
- .su-audio .jp-duration { right: 10px }
60
- .su-audio .jp-seek-bar,
61
- .su-audio .jp-play-bar {
62
- position: absolute;
63
- top: 0;
64
- left: 0;
65
- height: 10px;
66
- border-radius: 3px;
67
- -moz-border-radius: 3px;
68
- -webkit-border-radius: 3px;
69
- cursor: pointer;
70
- }
71
- .su-audio .jp-progress {
72
- position: absolute;
73
- top: 10px;
74
- left: 85px;
75
- right: 50px;
76
- height: 10px;
77
- background: #333;
78
- box-shadow: 0 0 5px #000 inset;
79
- -moz-box-shadow: 0 0 5px #000 inset;
80
- -webkit-box-shadow: 0 0 5px #000 inset;
81
- border-radius: 3px;
82
- -moz-border-radius: 3px;
83
- -webkit-border-radius: 3px;
84
- }
85
- .su-audio .jp-seek-bar {
86
- background: #0b0b0b; /* Old browsers */
87
- background: -moz-linear-gradient(top, #0b0b0b 0%, #666 100%); /* FF3.6+ */
88
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0b0b0b), color-stop(100%, #666)); /* Chrome,Safari4+ */
89
- background: -webkit-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Chrome10+,Safari5.1+ */
90
- background: -o-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Opera 11.10+ */
91
- background: -ms-linear-gradient(top, #0b0b0b 0%, #666 100%); /* IE10+ */
92
- background: linear-gradient(to bottom, #0b0b0b 0%, #666 100%); /* W3C */
93
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b0b0b', endColorstr='#666666', GradientType=0); /* IE6-9 */
94
- }
95
- .su-audio .jp-play-bar {
96
- background: #6db3f2; /* Old browsers */
97
- background: -moz-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* FF3.6+ */
98
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6db3f2), color-stop(50%, #54a3ee), color-stop(51%, #3690f0), color-stop(100%, #1e69de)); /* Chrome,Safari4+ */
99
- background: -webkit-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Chrome10+,Safari5.1+ */
100
- background: -o-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Opera 11.10+ */
101
- background: -ms-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* IE10+ */
102
- background: linear-gradient(to bottom, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* W3C */
103
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6db3f2', endColorstr='#1e69de', GradientType=0); /* IE6-9 */
104
- }
105
-
106
- /* Video
107
- ---------------------------------------------------------------*/
108
-
109
- .su-video {
110
- position: relative;
111
- margin-bottom: 1.5em;
112
- overflow: hidden;
113
- }
114
- .su-video .jp-title {
115
- position: absolute;
116
- top: -100px;
117
- left: 0;
118
- width: 100%;
119
- height: 30px;
120
- padding: 0 1em;
121
- line-height: 30px;
122
- font-size: 0.9em;
123
- background: rgb(0, 0, 0);
124
- background: rgba(0, 0, 0, 0.5);
125
- color: #fff;
126
- transition: top .2s;
127
- -o-transition: top .2s;
128
- -ie-transition: top .2s;
129
- -moz-transition: top .2s;
130
- -webkit-transition: top .2s;
131
- }
132
- .su-video:hover .jp-title { top: 0 }
133
- .su-video .jp-start {
134
- position: absolute;
135
- left: 0;
136
- top: 0;
137
- width: 100%;
138
- height: 100%;
139
- cursor: pointer;
140
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
141
- filter: alpha(opacity=50);
142
- -moz-opacity: 0.5;
143
- -khtml-opacity: 0.5;
144
- opacity: 0.5;
145
- transition: opacity .2s;
146
- -moz-transition: opacity .2s;
147
- -webkit-transition: opacity .2s;
148
- -o-transition: opacity .2s;
149
- }
150
- .su-video:hover .jp-start {
151
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
152
- filter: alpha(opacity=80);
153
- -moz-opacity: 0.8;
154
- -khtml-opacity: 0.8;
155
- opacity: 0.8;
156
- }
157
- .su-video.jp-video-full {
158
- position: fixed;
159
- left: 0;
160
- top: 0;
161
- width: 100%;
162
- height: 100%;
163
- }
164
- .su-video.jp-video-full .jp-jplayer {
165
- position: fixed !important;
166
- left: 0;
167
- top: 0;
168
- overflow: hidden;
169
- }
170
- .su-video .jp-gui { position: relative }
171
- .su-video.jp-video-full .jp-gui {
172
- position: fixed;
173
- left: 0;
174
- bottom: 0;
175
- width: 100%;
176
- }
177
- .su-video-controls-no .jp-gui {
178
- position: absolute !important;
179
- bottom: -100px;
180
- left: 0;
181
- right: 0;
182
- transition: bottom .2s;
183
- -o-transition: bottom .2s;
184
- -ie-transition: bottom .2s;
185
- -moz-transition: bottom .2s;
186
- -webkit-transition: bottom .2s;
187
- }
188
- .su-video-controls-no:hover .jp-gui { bottom: 0 }
189
- .su-video img {
190
- border-radius: 0 !important;
191
- -moz-border-radius: 0 !important;
192
- -webkit-border-radius: 0 !important;
193
- border: none !important;
194
- margin: 0 !important;
195
- padding: 0 !important;
196
- }
197
- .su-video .jp-start { background: 50% 50% url('../images/player/default-start.png') no-repeat }
198
- .su-video .jp-gui {
199
- height: 30px;
200
- background: #7c8781; /* Old browsers */
201
- background: -moz-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* FF3.6+ */
202
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7c8781), color-stop(100%, #0a0809)); /* Chrome,Safari4+ */
203
- background: -webkit-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Chrome10+,Safari5.1+ */
204
- background: -o-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Opera 11.10+ */
205
- background: -ms-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* IE10+ */
206
- background: linear-gradient(to bottom, #7c8781 0%, #0a0809 100%); /* W3C */
207
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7c8781', endColorstr='#0a0809', GradientType=0); /* IE6-9 */
208
- -webkit-border-bottom-right-radius: 3px;
209
- -webkit-border-bottom-left-radius: 3px;
210
- -moz-border-radius-bottomright: 3px;
211
- -moz-border-radius-bottomleft: 3px;
212
- border-bottom-right-radius: 3px;
213
- border-bottom-left-radius: 3px;
214
- }
215
- .su-video .jp-gui .jp-play,
216
- .su-video .jp-gui .jp-pause {
217
- position: absolute;
218
- left: 0;
219
- top: 0;
220
- display: block;
221
- width: 30px;
222
- height: 30px;
223
- border-right: 1px solid #454947;
224
- cursor: pointer;
225
- }
226
- .su-video .jp-gui .jp-play { background: 0 0 url('../images/player/default.png') no-repeat }
227
- .su-video .jp-gui .jp-pause { background: -30px 0 url('../images/player/default.png') no-repeat }
228
- .su-video .jp-full-screen,
229
- .su-video .jp-restore-screen {
230
- position: absolute;
231
- top: 0;
232
- right: 0;
233
- display: block;
234
- width: 30px;
235
- height: 30px;
236
- border-left: 1px solid #454947;
237
- cursor: pointer;
238
- }
239
- .su-video .jp-full-screen { background: 0 -30px url('../images/player/default.png') no-repeat }
240
- .su-video .jp-restore-screen { background: -30px -30px url('../images/player/default.png') no-repeat }
241
- .su-video .jp-progress {
242
- position: absolute;
243
- top: 10px;
244
- left: 90px;
245
- right: 90px;
246
- height: 10px;
247
- background: #333;
248
- border-radius: 3px;
249
- -moz-border-radius: 3px;
250
- -webkit-border-radius: 3px;
251
- box-shadow: 0 0 5px #000 inset;
252
- -moz-box-shadow: 0 0 5px #000 inset;
253
- -webkit-box-shadow: 0 0 5px #000 inset;
254
- }
255
- .su-video .jp-seek-bar,
256
- .su-video .jp-play-bar {
257
- position: absolute;
258
- top: 0;
259
- left: 0;
260
- height: 100%;
261
- cursor: pointer;
262
- border-radius: 3px;
263
- -moz-border-radius: 3px;
264
- -webkit-border-radius: 3px;
265
- }
266
- .su-video .jp-seek-bar {
267
- background: #0b0b0b; /* Old browsers */
268
- background: -moz-linear-gradient(top, #0b0b0b 0%, #666 100%); /* FF3.6+ */
269
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0b0b0b), color-stop(100%, #666)); /* Chrome,Safari4+ */
270
- background: -webkit-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Chrome10+,Safari5.1+ */
271
- background: -o-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Opera 11.10+ */
272
- background: -ms-linear-gradient(top, #0b0b0b 0%, #666 100%); /* IE10+ */
273
- background: linear-gradient(to bottom, #0b0b0b 0%, #666 100%); /* W3C */
274
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b0b0b', endColorstr='#666666', GradientType=0); /* IE6-9 */
275
- }
276
- .su-video .jp-play-bar {
277
- background: #6db3f2; /* Old browsers */
278
- background: -moz-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* FF3.6+ */
279
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6db3f2), color-stop(50%, #54a3ee), color-stop(51%, #3690f0), color-stop(100%, #1e69de)); /* Chrome,Safari4+ */
280
- background: -webkit-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Chrome10+,Safari5.1+ */
281
- background: -o-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Opera 11.10+ */
282
- background: -ms-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* IE10+ */
283
- background: linear-gradient(to bottom, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* W3C */
284
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6db3f2', endColorstr='#1e69de', GradientType=0); /* IE6-9 */
285
- }
286
- .su-video .jp-current-time,
287
- .su-video .jp-duration {
288
- position: absolute;
289
- top: 0;
290
- display: block;
291
- height: 30px;
292
- line-height: 30px;
293
- color: #f5f5f5;
294
- font-size: 10px;
295
- }
296
- .su-video .jp-current-time { left: 50px }
297
  .su-video .jp-duration { right: 50px }
1
+ /*** Shortcodes Ultimate - players elements ***/
2
+
3
+ /* Audio
4
+ ---------------------------------------------------------------*/
5
+
6
+ .su-audio { }
7
+ .su-audio {
8
+ position: relative;
9
+ width: 100%;
10
+ height: 30px;
11
+ margin-bottom: 1.5em;
12
+ background: #7c8781; /* Old browsers */
13
+ background: -moz-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* FF3.6+ */
14
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7c8781), color-stop(100%, #0a0809)); /* Chrome,Safari4+ */
15
+ background: -webkit-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Chrome10+,Safari5.1+ */
16
+ background: -o-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Opera 11.10+ */
17
+ background: -ms-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* IE10+ */
18
+ background: linear-gradient(to bottom, #7c8781 0%, #0a0809 100%); /* W3C */
19
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7c8781', endColorstr='#0a0809', GradientType=0); /* IE6-9 */
20
+ border-radius: 3px;
21
+ -moz-border-radius: 3px;
22
+ -webkit-border-radius: 3px;
23
+ }
24
+ .su-audio .jp-play,
25
+ .su-audio .jp-pause {
26
+ position: absolute;
27
+ left: 0;
28
+ top: 0;
29
+ display: block;
30
+ width: 30px;
31
+ height: 30px;
32
+ -webkit-border-top-left-radius: 3px;
33
+ -webkit-border-bottom-left-radius: 3px;
34
+ -moz-border-radius-topleft: 3px;
35
+ -moz-border-radius-bottomleft: 3px;
36
+ border-top-left-radius: 3px;
37
+ border-bottom-left-radius: 3px;
38
+ cursor: pointer;
39
+ border-right: 1px solid #454947;
40
+ background-image: url('../images/player/default.png');
41
+ background-repeat: no-repeat;
42
+ }
43
+ .su-audio .jp-play { background-position: 0 0 }
44
+ .su-audio .jp-pause { background-position: -30px 0 }
45
+ .su-audio .jp-current-time,
46
+ .su-audio .jp-duration {
47
+ position: absolute;
48
+ top: 0;
49
+ display: block;
50
+ height: 30px;
51
+ line-height: 30px;
52
+ font-size: 10px;
53
+ color: #eee;
54
+ text-shadow: 0 -1px 0 #000;
55
+ -moz-text-shadow: 0 -1px 0 #000;
56
+ -webkit-text-shadow: 0 -1px 0 #000;
57
+ }
58
+ .su-audio .jp-current-time { left: 45px }
59
+ .su-audio .jp-duration { right: 10px }
60
+ .su-audio .jp-seek-bar,
61
+ .su-audio .jp-play-bar {
62
+ position: absolute;
63
+ top: 0;
64
+ left: 0;
65
+ height: 10px;
66
+ border-radius: 3px;
67
+ -moz-border-radius: 3px;
68
+ -webkit-border-radius: 3px;
69
+ cursor: pointer;
70
+ }
71
+ .su-audio .jp-progress {
72
+ position: absolute;
73
+ top: 10px;
74
+ left: 85px;
75
+ right: 50px;
76
+ height: 10px;
77
+ background: #333;
78
+ box-shadow: 0 0 5px #000 inset;
79
+ -moz-box-shadow: 0 0 5px #000 inset;
80
+ -webkit-box-shadow: 0 0 5px #000 inset;
81
+ border-radius: 3px;
82
+ -moz-border-radius: 3px;
83
+ -webkit-border-radius: 3px;
84
+ }
85
+ .su-audio .jp-seek-bar {
86
+ background: #0b0b0b; /* Old browsers */
87
+ background: -moz-linear-gradient(top, #0b0b0b 0%, #666 100%); /* FF3.6+ */
88
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0b0b0b), color-stop(100%, #666)); /* Chrome,Safari4+ */
89
+ background: -webkit-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Chrome10+,Safari5.1+ */
90
+ background: -o-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Opera 11.10+ */
91
+ background: -ms-linear-gradient(top, #0b0b0b 0%, #666 100%); /* IE10+ */
92
+ background: linear-gradient(to bottom, #0b0b0b 0%, #666 100%); /* W3C */
93
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b0b0b', endColorstr='#666666', GradientType=0); /* IE6-9 */
94
+ }
95
+ .su-audio .jp-play-bar {
96
+ background: #6db3f2; /* Old browsers */
97
+ background: -moz-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* FF3.6+ */
98
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6db3f2), color-stop(50%, #54a3ee), color-stop(51%, #3690f0), color-stop(100%, #1e69de)); /* Chrome,Safari4+ */
99
+ background: -webkit-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Chrome10+,Safari5.1+ */
100
+ background: -o-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Opera 11.10+ */
101
+ background: -ms-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* IE10+ */
102
+ background: linear-gradient(to bottom, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* W3C */
103
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6db3f2', endColorstr='#1e69de', GradientType=0); /* IE6-9 */
104
+ }
105
+
106
+ /* Video
107
+ ---------------------------------------------------------------*/
108
+
109
+ .su-video {
110
+ position: relative;
111
+ margin-bottom: 1.5em;
112
+ overflow: hidden;
113
+ }
114
+ .su-video .jp-title {
115
+ position: absolute;
116
+ top: -100px;
117
+ left: 0;
118
+ width: 100%;
119
+ height: 30px;
120
+ padding: 0 1em;
121
+ line-height: 30px;
122
+ font-size: 0.9em;
123
+ background: rgb(0, 0, 0);
124
+ background: rgba(0, 0, 0, 0.5);
125
+ color: #fff;
126
+ transition: top .2s;
127
+ -o-transition: top .2s;
128
+ -ie-transition: top .2s;
129
+ -moz-transition: top .2s;
130
+ -webkit-transition: top .2s;
131
+ }
132
+ .su-video:hover .jp-title { top: 0 }
133
+ .su-video .jp-start {
134
+ position: absolute;
135
+ left: 0;
136
+ top: 0;
137
+ width: 100%;
138
+ height: 100%;
139
+ cursor: pointer;
140
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
141
+ filter: alpha(opacity=50);
142
+ -moz-opacity: 0.5;
143
+ -khtml-opacity: 0.5;
144
+ opacity: 0.5;
145
+ transition: opacity .2s;
146
+ -moz-transition: opacity .2s;
147
+ -webkit-transition: opacity .2s;
148
+ -o-transition: opacity .2s;
149
+ }
150
+ .su-video:hover .jp-start {
151
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
152
+ filter: alpha(opacity=80);
153
+ -moz-opacity: 0.8;
154
+ -khtml-opacity: 0.8;
155
+ opacity: 0.8;
156
+ }
157
+ .su-video.jp-video-full {
158
+ position: fixed;
159
+ left: 0;
160
+ top: 0;
161
+ width: 100%;
162
+ height: 100%;
163
+ }
164
+ .su-video.jp-video-full .jp-jplayer {
165
+ position: fixed !important;
166
+ left: 0;
167
+ top: 0;
168
+ overflow: hidden;
169
+ }
170
+ .su-video .jp-gui { position: relative }
171
+ .su-video.jp-video-full .jp-gui {
172
+ position: fixed;
173
+ left: 0;
174
+ bottom: 0;
175
+ width: 100%;
176
+ }
177
+ .su-video-controls-no .jp-gui {
178
+ position: absolute !important;
179
+ bottom: -100px;
180
+ left: 0;
181
+ right: 0;
182
+ transition: bottom .2s;
183
+ -o-transition: bottom .2s;
184
+ -ie-transition: bottom .2s;
185
+ -moz-transition: bottom .2s;
186
+ -webkit-transition: bottom .2s;
187
+ }
188
+ .su-video-controls-no:hover .jp-gui { bottom: 0 }
189
+ .su-video img {
190
+ border-radius: 0 !important;
191
+ -moz-border-radius: 0 !important;
192
+ -webkit-border-radius: 0 !important;
193
+ border: none !important;
194
+ margin: 0 !important;
195
+ padding: 0 !important;
196
+ }
197
+ .su-video .jp-start { background: 50% 50% url('../images/player/default-start.png') no-repeat }
198
+ .su-video .jp-gui {
199
+ height: 30px;
200
+ background: #7c8781; /* Old browsers */
201
+ background: -moz-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* FF3.6+ */
202
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7c8781), color-stop(100%, #0a0809)); /* Chrome,Safari4+ */
203
+ background: -webkit-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Chrome10+,Safari5.1+ */
204
+ background: -o-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* Opera 11.10+ */
205
+ background: -ms-linear-gradient(top, #7c8781 0%, #0a0809 100%); /* IE10+ */
206
+ background: linear-gradient(to bottom, #7c8781 0%, #0a0809 100%); /* W3C */
207
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7c8781', endColorstr='#0a0809', GradientType=0); /* IE6-9 */
208
+ -webkit-border-bottom-right-radius: 3px;
209
+ -webkit-border-bottom-left-radius: 3px;
210
+ -moz-border-radius-bottomright: 3px;
211
+ -moz-border-radius-bottomleft: 3px;
212
+ border-bottom-right-radius: 3px;
213
+ border-bottom-left-radius: 3px;
214
+ }
215
+ .su-video .jp-gui .jp-play,
216
+ .su-video .jp-gui .jp-pause {
217
+ position: absolute;
218
+ left: 0;
219
+ top: 0;
220
+ display: block;
221
+ width: 30px;
222
+ height: 30px;
223
+ border-right: 1px solid #454947;
224
+ cursor: pointer;
225
+ }
226
+ .su-video .jp-gui .jp-play { background: 0 0 url('../images/player/default.png') no-repeat }
227
+ .su-video .jp-gui .jp-pause { background: -30px 0 url('../images/player/default.png') no-repeat }
228
+ .su-video .jp-full-screen,
229
+ .su-video .jp-restore-screen {
230
+ position: absolute;
231
+ top: 0;
232
+ right: 0;
233
+ display: block;
234
+ width: 30px;
235
+ height: 30px;
236
+ border-left: 1px solid #454947;
237
+ cursor: pointer;
238
+ }
239
+ .su-video .jp-full-screen { background: 0 -30px url('../images/player/default.png') no-repeat }
240
+ .su-video .jp-restore-screen { background: -30px -30px url('../images/player/default.png') no-repeat }
241
+ .su-video .jp-progress {
242
+ position: absolute;
243
+ top: 10px;
244
+ left: 90px;
245
+ right: 90px;
246
+ height: 10px;
247
+ background: #333;
248
+ border-radius: 3px;
249
+ -moz-border-radius: 3px;
250
+ -webkit-border-radius: 3px;
251
+ box-shadow: 0 0 5px #000 inset;
252
+ -moz-box-shadow: 0 0 5px #000 inset;
253
+ -webkit-box-shadow: 0 0 5px #000 inset;
254
+ }
255
+ .su-video .jp-seek-bar,
256
+ .su-video .jp-play-bar {
257
+ position: absolute;
258
+ top: 0;
259
+ left: 0;
260
+ height: 100%;
261
+ cursor: pointer;
262
+ border-radius: 3px;
263
+ -moz-border-radius: 3px;
264
+ -webkit-border-radius: 3px;
265
+ }
266
+ .su-video .jp-seek-bar {
267
+ background: #0b0b0b; /* Old browsers */
268
+ background: -moz-linear-gradient(top, #0b0b0b 0%, #666 100%); /* FF3.6+ */
269
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0b0b0b), color-stop(100%, #666)); /* Chrome,Safari4+ */
270
+ background: -webkit-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Chrome10+,Safari5.1+ */
271
+ background: -o-linear-gradient(top, #0b0b0b 0%, #666 100%); /* Opera 11.10+ */
272
+ background: -ms-linear-gradient(top, #0b0b0b 0%, #666 100%); /* IE10+ */
273
+ background: linear-gradient(to bottom, #0b0b0b 0%, #666 100%); /* W3C */
274
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b0b0b', endColorstr='#666666', GradientType=0); /* IE6-9 */
275
+ }
276
+ .su-video .jp-play-bar {
277
+ background: #6db3f2; /* Old browsers */
278
+ background: -moz-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* FF3.6+ */
279
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6db3f2), color-stop(50%, #54a3ee), color-stop(51%, #3690f0), color-stop(100%, #1e69de)); /* Chrome,Safari4+ */
280
+ background: -webkit-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Chrome10+,Safari5.1+ */
281
+ background: -o-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* Opera 11.10+ */
282
+ background: -ms-linear-gradient(top, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* IE10+ */
283
+ background: linear-gradient(to bottom, #6db3f2 0%, #54a3ee 50%, #3690f0 51%, #1e69de 100%); /* W3C */
284
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6db3f2', endColorstr='#1e69de', GradientType=0); /* IE6-9 */
285
+ }
286
+ .su-video .jp-current-time,
287
+ .su-video .jp-duration {
288
+ position: absolute;
289
+ top: 0;
290
+ display: block;
291
+ height: 30px;
292
+ line-height: 30px;
293
+ color: #f5f5f5;
294
+ font-size: 10px;
295
+ }
296
+ .su-video .jp-current-time { left: 50px }
297
  .su-video .jp-duration { right: 50px }
assets/css/qtip.css CHANGED
@@ -1,2 +1,2 @@
1
- /* qTip2 v2.1.1 basic css3 | qtip2.com | Licensed MIT, GPL | Thu Jul 11 2013 14:03:02 */
2
  .qtip{position:absolute;left:-28000px;top:-28000px;display:none;max-width:280px;min-width:50px;font-size:10.5px;line-height:12px;direction:ltr;box-shadow:none;padding:0}.qtip-content{position:relative;padding:5px 9px;overflow:hidden;text-align:left;word-wrap:break-word}.qtip-titlebar{position:relative;padding:5px 35px 5px 10px;overflow:hidden;border-width:0 0 1px;font-weight:700}.qtip-titlebar+.qtip-content{border-top-width:0!important}.qtip-close{position:absolute;right:-9px;top:-9px;cursor:pointer;outline:medium none;border-width:1px;border-style:solid;border-color:transparent}.qtip-titlebar .qtip-close{right:4px;top:50%;margin-top:-9px}* html .qtip-titlebar .qtip-close{top:16px}.qtip-titlebar .ui-icon,.qtip-icon .ui-icon{display:block;text-indent:-1000em;direction:ltr}.qtip-icon,.qtip-icon .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none}.qtip-icon .ui-icon{width:18px;height:14px;line-height:14px;text-align:center;text-indent:0;font:400 bold 10px/13px Tahoma,sans-serif;color:inherit;background:transparent none no-repeat -100em -100em}.qtip-focus{}.qtip-hover{}.qtip-default{border-width:1px;border-style:solid;border-color:#F1D031;background-color:#FFFFA3;color:#555}.qtip-default .qtip-titlebar{background-color:#FFEF93}.qtip-default .qtip-icon{border-color:#CCC;background:#F1F1F1;color:#777}.qtip-default .qtip-titlebar .qtip-close{border-color:#AAA;color:#111} .qtip-light{background-color:#fff;border-color:#E2E2E2;color:#454545}.qtip-light .qtip-titlebar{background-color:#f1f1f1} .qtip-dark{background-color:#505050;border-color:#303030;color:#f3f3f3}.qtip-dark .qtip-titlebar{background-color:#404040}.qtip-dark .qtip-icon{border-color:#444}.qtip-dark .qtip-titlebar .ui-state-hover{border-color:#303030} .qtip-cream{background-color:#FBF7AA;border-color:#F9E98E;color:#A27D35}.qtip-cream .qtip-titlebar{background-color:#F0DE7D}.qtip-cream .qtip-close .qtip-icon{background-position:-82px 0} .qtip-red{background-color:#F78B83;border-color:#D95252;color:#912323}.qtip-red .qtip-titlebar{background-color:#F06D65}.qtip-red .qtip-close .qtip-icon{background-position:-102px 0}.qtip-red .qtip-icon{border-color:#D95252}.qtip-red .qtip-titlebar .ui-state-hover{border-color:#D95252} .qtip-green{background-color:#CAED9E;border-color:#90D93F;color:#3F6219}.qtip-green .qtip-titlebar{background-color:#B0DE78}.qtip-green .qtip-close .qtip-icon{background-position:-42px 0} .qtip-blue{background-color:#E5F6FE;border-color:#ADD9ED;color:#5E99BD}.qtip-blue .qtip-titlebar{background-color:#D0E9F5}.qtip-blue .qtip-close .qtip-icon{background-position:-2px 0}.qtip-shadow{-webkit-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);-moz-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);box-shadow:1px 1px 3px 1px rgba(0,0,0,.15)}.qtip-rounded,.qtip-tipsy,.qtip-bootstrap{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.qtip-rounded .qtip-titlebar{-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.qtip-youtube{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 3px #333;-moz-box-shadow:0 0 3px #333;box-shadow:0 0 3px #333;color:#fff;border-width:0;background:#4A4A4A;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,#000));background-image:-webkit-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-moz-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-ms-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-o-linear-gradient(top,#4A4A4A 0,#000 100%)}.qtip-youtube .qtip-titlebar{background-color:#4A4A4A;background-color:rgba(0,0,0,0)}.qtip-youtube .qtip-content{padding:.75em;font:12px arial,sans-serif;filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);-ms-filter:"progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);"}.qtip-youtube .qtip-icon{border-color:#222}.qtip-youtube .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-jtools{background:#232323;background:rgba(0,0,0,.7);background-image:-webkit-gradient(linear,left top,left bottom,from(#717171),to(#232323));background-image:-moz-linear-gradient(top,#717171,#232323);background-image:-webkit-linear-gradient(top,#717171,#232323);background-image:-ms-linear-gradient(top,#717171,#232323);background-image:-o-linear-gradient(top,#717171,#232323);border:2px solid #ddd;border:2px solid rgba(241,241,241,1);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 12px #333;-moz-box-shadow:0 0 12px #333;box-shadow:0 0 12px #333}.qtip-jtools .qtip-titlebar{background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A)"}.qtip-jtools .qtip-content{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323)"}.qtip-jtools .qtip-titlebar,.qtip-jtools .qtip-content{background:transparent;color:#fff;border:0 dashed transparent}.qtip-jtools .qtip-icon{border-color:#555}.qtip-jtools .qtip-titlebar .ui-state-hover{border-color:#333}.qtip-cluetip{-webkit-box-shadow:4px 4px 5px rgba(0,0,0,.4);-moz-box-shadow:4px 4px 5px rgba(0,0,0,.4);box-shadow:4px 4px 5px rgba(0,0,0,.4);background-color:#D9D9C2;color:#111;border:0 dashed transparent}.qtip-cluetip .qtip-titlebar{background-color:#87876A;color:#fff;border:0 dashed transparent}.qtip-cluetip .qtip-icon{border-color:#808064}.qtip-cluetip .qtip-titlebar .ui-state-hover{border-color:#696952;color:#696952}.qtip-tipsy{background:#000;background:rgba(0,0,0,.87);color:#fff;border:0 solid transparent;font-size:11px;font-family:'Lucida Grande',sans-serif;font-weight:700;line-height:16px;text-shadow:0 1px #000}.qtip-tipsy .qtip-titlebar{padding:6px 35px 0 10px;background-color:transparent}.qtip-tipsy .qtip-content{padding:6px 10px}.qtip-tipsy .qtip-icon{border-color:#222;text-shadow:none}.qtip-tipsy .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-tipped{border:3px solid #959FA9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#F9F9F9;color:#454545;font-weight:400;font-family:serif}.qtip-tipped .qtip-titlebar{border-bottom-width:0;color:#fff;background:#3A79B8;background-image:-webkit-gradient(linear,left top,left bottom,from(#3A79B8),to(#2E629D));background-image:-webkit-linear-gradient(top,#3A79B8,#2E629D);background-image:-moz-linear-gradient(top,#3A79B8,#2E629D);background-image:-ms-linear-gradient(top,#3A79B8,#2E629D);background-image:-o-linear-gradient(top,#3A79B8,#2E629D);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D)"}.qtip-tipped .qtip-icon{border:2px solid #285589;background:#285589}.qtip-tipped .qtip-icon .ui-icon{background-color:#FBFBFB;color:#555}.qtip-bootstrap{font-size:14px;line-height:20px;color:#333;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.qtip-bootstrap .qtip-titlebar{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.qtip-bootstrap .qtip-titlebar .qtip-close{right:11px;top:45%;border-style:none}.qtip-bootstrap .qtip-content{padding:9px 14px}.qtip-bootstrap .qtip-icon{background:transparent}.qtip-bootstrap .qtip-icon .ui-icon{width:auto;height:auto;float:right;font-size:20px;font-weight:700;line-height:18px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.qtip-bootstrap .qtip-icon .ui-icon:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}.qtip:not(.ie9haxors) div.qtip-content,.qtip:not(.ie9haxors) div.qtip-titlebar{filter:none;-ms-filter:none}.qtip .qtip-tip{margin:0 auto;overflow:hidden;z-index:10}x:-o-prefocus,.qtip .qtip-tip{visibility:hidden}.qtip .qtip-tip,.qtip .qtip-tip .qtip-vml,.qtip .qtip-tip canvas{position:absolute;color:#123456;background:transparent;border:0 dashed transparent}.qtip .qtip-tip canvas{top:0;left:0}.qtip .qtip-tip .qtip-vml{behavior:url(#default#VML);display:inline-block;visibility:visible}#qtip-overlay{position:fixed;left:-10000em;top:-10000em}#qtip-overlay.blurs{cursor:pointer}#qtip-overlay div{position:absolute;left:0;top:0;width:100%;height:100%;background-color:#000;opacity:.7;filter:alpha(opacity=70);-ms-filter:"alpha(Opacity=70)"}.qtipmodal-ie6fix{position:absolute!important}
1
+ /* qTip2 v2.1.1 basic css3 | qtip2.com | Licensed MIT, GPL | Thu Jul 11 2013 14:03:02 */
2
  .qtip{position:absolute;left:-28000px;top:-28000px;display:none;max-width:280px;min-width:50px;font-size:10.5px;line-height:12px;direction:ltr;box-shadow:none;padding:0}.qtip-content{position:relative;padding:5px 9px;overflow:hidden;text-align:left;word-wrap:break-word}.qtip-titlebar{position:relative;padding:5px 35px 5px 10px;overflow:hidden;border-width:0 0 1px;font-weight:700}.qtip-titlebar+.qtip-content{border-top-width:0!important}.qtip-close{position:absolute;right:-9px;top:-9px;cursor:pointer;outline:medium none;border-width:1px;border-style:solid;border-color:transparent}.qtip-titlebar .qtip-close{right:4px;top:50%;margin-top:-9px}* html .qtip-titlebar .qtip-close{top:16px}.qtip-titlebar .ui-icon,.qtip-icon .ui-icon{display:block;text-indent:-1000em;direction:ltr}.qtip-icon,.qtip-icon .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none}.qtip-icon .ui-icon{width:18px;height:14px;line-height:14px;text-align:center;text-indent:0;font:400 bold 10px/13px Tahoma,sans-serif;color:inherit;background:transparent none no-repeat -100em -100em}.qtip-focus{}.qtip-hover{}.qtip-default{border-width:1px;border-style:solid;border-color:#F1D031;background-color:#FFFFA3;color:#555}.qtip-default .qtip-titlebar{background-color:#FFEF93}.qtip-default .qtip-icon{border-color:#CCC;background:#F1F1F1;color:#777}.qtip-default .qtip-titlebar .qtip-close{border-color:#AAA;color:#111} .qtip-light{background-color:#fff;border-color:#E2E2E2;color:#454545}.qtip-light .qtip-titlebar{background-color:#f1f1f1} .qtip-dark{background-color:#505050;border-color:#303030;color:#f3f3f3}.qtip-dark .qtip-titlebar{background-color:#404040}.qtip-dark .qtip-icon{border-color:#444}.qtip-dark .qtip-titlebar .ui-state-hover{border-color:#303030} .qtip-cream{background-color:#FBF7AA;border-color:#F9E98E;color:#A27D35}.qtip-cream .qtip-titlebar{background-color:#F0DE7D}.qtip-cream .qtip-close .qtip-icon{background-position:-82px 0} .qtip-red{background-color:#F78B83;border-color:#D95252;color:#912323}.qtip-red .qtip-titlebar{background-color:#F06D65}.qtip-red .qtip-close .qtip-icon{background-position:-102px 0}.qtip-red .qtip-icon{border-color:#D95252}.qtip-red .qtip-titlebar .ui-state-hover{border-color:#D95252} .qtip-green{background-color:#CAED9E;border-color:#90D93F;color:#3F6219}.qtip-green .qtip-titlebar{background-color:#B0DE78}.qtip-green .qtip-close .qtip-icon{background-position:-42px 0} .qtip-blue{background-color:#E5F6FE;border-color:#ADD9ED;color:#5E99BD}.qtip-blue .qtip-titlebar{background-color:#D0E9F5}.qtip-blue .qtip-close .qtip-icon{background-position:-2px 0}.qtip-shadow{-webkit-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);-moz-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);box-shadow:1px 1px 3px 1px rgba(0,0,0,.15)}.qtip-rounded,.qtip-tipsy,.qtip-bootstrap{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.qtip-rounded .qtip-titlebar{-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.qtip-youtube{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 3px #333;-moz-box-shadow:0 0 3px #333;box-shadow:0 0 3px #333;color:#fff;border-width:0;background:#4A4A4A;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,#000));background-image:-webkit-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-moz-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-ms-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-o-linear-gradient(top,#4A4A4A 0,#000 100%)}.qtip-youtube .qtip-titlebar{background-color:#4A4A4A;background-color:rgba(0,0,0,0)}.qtip-youtube .qtip-content{padding:.75em;font:12px arial,sans-serif;filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);-ms-filter:"progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);"}.qtip-youtube .qtip-icon{border-color:#222}.qtip-youtube .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-jtools{background:#232323;background:rgba(0,0,0,.7);background-image:-webkit-gradient(linear,left top,left bottom,from(#717171),to(#232323));background-image:-moz-linear-gradient(top,#717171,#232323);background-image:-webkit-linear-gradient(top,#717171,#232323);background-image:-ms-linear-gradient(top,#717171,#232323);background-image:-o-linear-gradient(top,#717171,#232323);border:2px solid #ddd;border:2px solid rgba(241,241,241,1);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 12px #333;-moz-box-shadow:0 0 12px #333;box-shadow:0 0 12px #333}.qtip-jtools .qtip-titlebar{background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A)"}.qtip-jtools .qtip-content{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323)"}.qtip-jtools .qtip-titlebar,.qtip-jtools .qtip-content{background:transparent;color:#fff;border:0 dashed transparent}.qtip-jtools .qtip-icon{border-color:#555}.qtip-jtools .qtip-titlebar .ui-state-hover{border-color:#333}.qtip-cluetip{-webkit-box-shadow:4px 4px 5px rgba(0,0,0,.4);-moz-box-shadow:4px 4px 5px rgba(0,0,0,.4);box-shadow:4px 4px 5px rgba(0,0,0,.4);background-color:#D9D9C2;color:#111;border:0 dashed transparent}.qtip-cluetip .qtip-titlebar{background-color:#87876A;color:#fff;border:0 dashed transparent}.qtip-cluetip .qtip-icon{border-color:#808064}.qtip-cluetip .qtip-titlebar .ui-state-hover{border-color:#696952;color:#696952}.qtip-tipsy{background:#000;background:rgba(0,0,0,.87);color:#fff;border:0 solid transparent;font-size:11px;font-family:'Lucida Grande',sans-serif;font-weight:700;line-height:16px;text-shadow:0 1px #000}.qtip-tipsy .qtip-titlebar{padding:6px 35px 0 10px;background-color:transparent}.qtip-tipsy .qtip-content{padding:6px 10px}.qtip-tipsy .qtip-icon{border-color:#222;text-shadow:none}.qtip-tipsy .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-tipped{border:3px solid #959FA9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#F9F9F9;color:#454545;font-weight:400;font-family:serif}.qtip-tipped .qtip-titlebar{border-bottom-width:0;color:#fff;background:#3A79B8;background-image:-webkit-gradient(linear,left top,left bottom,from(#3A79B8),to(#2E629D));background-image:-webkit-linear-gradient(top,#3A79B8,#2E629D);background-image:-moz-linear-gradient(top,#3A79B8,#2E629D);background-image:-ms-linear-gradient(top,#3A79B8,#2E629D);background-image:-o-linear-gradient(top,#3A79B8,#2E629D);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D)"}.qtip-tipped .qtip-icon{border:2px solid #285589;background:#285589}.qtip-tipped .qtip-icon .ui-icon{background-color:#FBFBFB;color:#555}.qtip-bootstrap{font-size:14px;line-height:20px;color:#333;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.qtip-bootstrap .qtip-titlebar{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.qtip-bootstrap .qtip-titlebar .qtip-close{right:11px;top:45%;border-style:none}.qtip-bootstrap .qtip-content{padding:9px 14px}.qtip-bootstrap .qtip-icon{background:transparent}.qtip-bootstrap .qtip-icon .ui-icon{width:auto;height:auto;float:right;font-size:20px;font-weight:700;line-height:18px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.qtip-bootstrap .qtip-icon .ui-icon:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}.qtip:not(.ie9haxors) div.qtip-content,.qtip:not(.ie9haxors) div.qtip-titlebar{filter:none;-ms-filter:none}.qtip .qtip-tip{margin:0 auto;overflow:hidden;z-index:10}x:-o-prefocus,.qtip .qtip-tip{visibility:hidden}.qtip .qtip-tip,.qtip .qtip-tip .qtip-vml,.qtip .qtip-tip canvas{position:absolute;color:#123456;background:transparent;border:0 dashed transparent}.qtip .qtip-tip canvas{top:0;left:0}.qtip .qtip-tip .qtip-vml{behavior:url(#default#VML);display:inline-block;visibility:visible}#qtip-overlay{position:fixed;left:-10000em;top:-10000em}#qtip-overlay.blurs{cursor:pointer}#qtip-overlay div{position:absolute;left:0;top:0;width:100%;height:100%;background-color:#000;opacity:.7;filter:alpha(opacity=70);-ms-filter:"alpha(Opacity=70)"}.qtipmodal-ie6fix{position:absolute!important}
assets/css/simpleslider.css CHANGED
@@ -1,55 +1,55 @@
1
- .slider {
2
- width: 300px;
3
- }
4
-
5
- .slider > .dragger {
6
- background: #8DCA09;
7
- background: -webkit-linear-gradient(top, #8DCA09, #72A307);
8
- background: -moz-linear-gradient(top, #8DCA09, #72A307);
9
- background: linear-gradient(top, #8DCA09, #72A307);
10
-
11
- -webkit-box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
12
- -moz-box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
13
- box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
14
-
15
- -webkit-border-radius: 10px;
16
- -moz-border-radius: 10px;
17
- border-radius: 10px;
18
-
19
- border: 1px solid #496805;
20
- width: 16px;
21
- height: 16px;
22
- }
23
-
24
- .slider > .dragger:hover {
25
- background: -webkit-linear-gradient(top, #8DCA09, #8DCA09);
26
- }
27
-
28
-
29
- .slider > .track, .slider > .highlight-track {
30
- background: #ccc;
31
- background: -webkit-linear-gradient(top, #bbb, #ddd);
32
- background: -moz-linear-gradient(top, #bbb, #ddd);
33
- background: linear-gradient(top, #bbb, #ddd);
34
-
35
- -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
36
- -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
37
- box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
38
-
39
- -webkit-border-radius: 8px;
40
- -moz-border-radius: 8px;
41
- border-radius: 8px;
42
-
43
- border: 1px solid #aaa;
44
- height: 4px;
45
- }
46
-
47
- .slider > .highlight-track {
48
- background-color: #8DCA09;
49
- background: -webkit-linear-gradient(top, #8DCA09, #72A307);
50
- background: -moz-linear-gradient(top, #8DCA09, #72A307);
51
- background: linear-gradient(top, #8DCA09, #72A307);
52
-
53
- border-color: #496805;
54
- }
55
-
1
+ .slider {
2
+ width: 300px;
3
+ }
4
+
5
+ .slider > .dragger {
6
+ background: #8DCA09;
7
+ background: -webkit-linear-gradient(top, #8DCA09, #72A307);
8
+ background: -moz-linear-gradient(top, #8DCA09, #72A307);
9
+ background: linear-gradient(top, #8DCA09, #72A307);
10
+
11
+ -webkit-box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
12
+ -moz-box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
13
+ box-shadow: inset 0 2px 2px rgba(255,255,255,0.5), 0 2px 8px rgba(0,0,0,0.2);
14
+
15
+ -webkit-border-radius: 10px;
16
+ -moz-border-radius: 10px;
17
+ border-radius: 10px;
18
+
19
+ border: 1px solid #496805;
20
+ width: 16px;
21
+ height: 16px;
22
+ }
23
+
24
+ .slider > .dragger:hover {
25
+ background: -webkit-linear-gradient(top, #8DCA09, #8DCA09);
26
+ }
27
+
28
+
29
+ .slider > .track, .slider > .highlight-track {
30
+ background: #ccc;
31
+ background: -webkit-linear-gradient(top, #bbb, #ddd);
32
+ background: -moz-linear-gradient(top, #bbb, #ddd);
33
+ background: linear-gradient(top, #bbb, #ddd);
34
+
35
+ -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
36
+ -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
37
+ box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
38
+
39
+ -webkit-border-radius: 8px;
40
+ -moz-border-radius: 8px;
41
+ border-radius: 8px;
42
+
43
+ border: 1px solid #aaa;
44
+ height: 4px;
45
+ }
46
+
47
+ .slider > .highlight-track {
48
+ background-color: #8DCA09;
49
+ background: -webkit-linear-gradient(top, #8DCA09, #72A307);
50
+ background: -moz-linear-gradient(top, #8DCA09, #72A307);
51
+ background: linear-gradient(top, #8DCA09, #72A307);
52
+
53
+ border-color: #496805;
54
+ }
55
+
assets/css/sunrise.css CHANGED
@@ -1,173 +1,173 @@
1
- /***********************************
2
- Common styles
3
- ***********************************/
4
-
5
- .sunrise-onehalf {
6
- float: left;
7
- width: 46%;
8
- margin: 0 4% 1em 0;
9
- }
10
- .sunrise-onethird {
11
- float: left;
12
- width: 31%;
13
- margin: 0 2% 1em 0;
14
- }
15
- .sunrise-clear {
16
- display: block;
17
- height: 0;
18
- overflow: hidden;
19
- clear: both;
20
- }
21
- .sunrise-hidden { display: none }
22
-
23
-
24
- /***********************************
25
- Nav tabs
26
- ***********************************/
27
-
28
- #sunrise-tabs {}
29
- #sunrise-tabs span { cursor: pointer }
30
- #sunrise-tabs .nav-tab-active,
31
- #sunrise-tabs span:hover { color: #464646 }
32
- #sunrise-tabs .nav-tab-active { cursor: default; }
33
- h3.sunrise-no-js-tab {
34
- margin: 1em 0;
35
- padding: 1em;
36
- border-top: 2px solid #ccc;
37
- border-bottom: 2px solid #ccc;
38
- background: #f2f2f2;
39
- color: #555;
40
- }
41
-
42
-
43
- /***********************************
44
- Panes
45
- ***********************************/
46
-
47
- .sunrise-pane {
48
- margin: 2em 0;
49
- }
50
- .js .sunrise-pane {
51
- display: none;
52
- border: none;
53
- }
54
-
55
-
56
- /***********************************
57
- Notices
58
- ***********************************/
59
-
60
- #sunrise-settings div.sunrise-notice { margin: 1.5em 0; }
61
-
62
-
63
- /***********************************
64
- Inline menus
65
- ***********************************/
66
-
67
- .sunrise-inline-menu {
68
- margin: 1.5em 0;
69
- line-height: 1.5em;
70
- }
71
- .sunrise-inline-menu a {
72
- display: inline-block;
73
- padding: 0 0.7em;
74
- border-right: 1px dotted #ccc;
75
- text-decoration: none;
76
- line-height: 1.5em;
77
- }
78
- .sunrise-inline-menu a:hover {
79
- text-decoration: underline;
80
- }
81
- .sunrise-inline-menu a:first-child {
82
- padding-left: 0;
83
- }
84
- .sunrise-inline-menu a:last-child {
85
- display: inline-block;
86
- padding-right: 0;
87
- border-right: none;
88
- }
89
-
90
-
91
- /***********************************
92
- Common fields
93
- ***********************************/
94
-
95
- #sunrise-settings .form-table td,
96
- #sunrise-settings .form-table th { padding-bottom: 20px }
97
-
98
- #sunrise-settings .description {
99
- display: block;
100
- margin-top: 5px;
101
- }
102
-
103
- #sunrise-settings textarea {
104
- min-width: 200px;
105
- }
106
-
107
- .sunrise-checkbox-group label {
108
- display: inline-block;
109
- margin: 0 0 5px 0;
110
- }
111
-
112
-
113
- /***********************************
114
- Color picker
115
- ***********************************/
116
-
117
- .sunrise-color-picker { position: relative; }
118
- .sunrise-color-picker-wheel {
119
- position: absolute;
120
- top: 100%;
121
- left: 0;
122
- z-index: 9999;
123
- display: none;
124
- border: 1px solid #aaa;
125
- background: #fff;
126
- -webkit-box-shadow: 0 2px 5px #ccc;
127
- -moz-box-shadow: 0 2px 5px #ccc;
128
- box-shadow: 0 2px 5px #ccc;
129
- -webkit-border-radius: 50%;
130
- -moz-border-radius: 50%;
131
- border-radius: 50%;
132
- }
133
- .sunrise-color-picker .button img {
134
- vertical-align: middle;
135
- margin: -3px 4px 0 -4px;
136
- }
137
-
138
-
139
- /***********************************
140
- Media manager
141
- ***********************************/
142
-
143
- .sunrise-media {}
144
- .sunrise-media .button img {
145
- vertical-align: middle;
146
- margin: -3px 4px 0 -4px;
147
- }
148
-
149
-
150
- /***********************************
151
- Actions bar
152
- ***********************************/
153
-
154
- .sunrise-actions-bar {
155
- margin-top: 20px;
156
- padding: 10px;
157
- background: #f5f5f5;
158
- border-top: 1px solid #eee;
159
- -webkit-border-bottom-right-radius: 5px;
160
- -webkit-border-bottom-left-radius: 5px;
161
- -moz-border-radius-bottomright: 5px;
162
- -moz-border-radius-bottomleft: 5px;
163
- border-bottom-right-radius: 5px;
164
- border-bottom-left-radius: 5px;
165
- }
166
- .sunrise-spin,
167
- .sunrise-success-tip {
168
- display: none;
169
- margin-left: 10px;
170
- }
171
- .sunrise-success-tip { color: #0b0 }
172
- .sunrise-spin img,
173
  .sunrise-success-tip img { margin: 0 5px -3px 0 }
1
+ /***********************************
2
+ Common styles
3
+ ***********************************/
4
+
5
+ .sunrise-onehalf {
6
+ float: left;
7
+ width: 46%;
8
+ margin: 0 4% 1em 0;
9
+ }
10
+ .sunrise-onethird {
11
+ float: left;
12
+ width: 31%;
13
+ margin: 0 2% 1em 0;
14
+ }
15
+ .sunrise-clear {
16
+ display: block;
17
+ height: 0;
18
+ overflow: hidden;
19
+ clear: both;
20
+ }
21
+ .sunrise-hidden { display: none }
22
+
23
+
24
+ /***********************************
25
+ Nav tabs
26
+ ***********************************/
27
+
28
+ #sunrise-tabs {}
29
+ #sunrise-tabs span { cursor: pointer }
30
+ #sunrise-tabs .nav-tab-active,
31
+ #sunrise-tabs span:hover { color: #464646 }
32
+ #sunrise-tabs .nav-tab-active { cursor: default; }
33
+ h3.sunrise-no-js-tab {
34
+ margin: 1em 0;
35
+ padding: 1em;
36
+ border-top: 2px solid #ccc;
37
+ border-bottom: 2px solid #ccc;
38
+ background: #f2f2f2;
39
+ color: #555;
40
+ }
41
+
42
+
43
+ /***********************************
44
+ Panes
45
+ ***********************************/
46
+
47
+ .sunrise-pane {
48
+ margin: 2em 0;
49
+ }
50
+ .js .sunrise-pane {
51
+ display: none;
52
+ border: none;
53
+ }
54
+
55
+
56
+ /***********************************
57
+ Notices
58
+ ***********************************/
59
+
60
+ #sunrise-settings div.sunrise-notice { margin: 1.5em 0; }
61
+
62
+
63
+ /***********************************
64
+ Inline menus
65
+ ***********************************/
66
+
67
+ .sunrise-inline-menu {
68
+ margin: 1.5em 0;
69
+ line-height: 1.5em;
70
+ }
71
+ .sunrise-inline-menu a {
72
+ display: inline-block;
73
+ padding: 0 0.7em;
74
+ border-right: 1px dotted #ccc;
75
+ text-decoration: none;
76
+ line-height: 1.5em;
77
+ }
78
+ .sunrise-inline-menu a:hover {
79
+ text-decoration: underline;
80
+ }
81
+ .sunrise-inline-menu a:first-child {
82
+ padding-left: 0;
83
+ }
84
+ .sunrise-inline-menu a:last-child {
85
+ display: inline-block;
86
+ padding-right: 0;
87
+ border-right: none;
88
+ }
89
+
90
+
91
+ /***********************************
92
+ Common fields
93
+ ***********************************/
94
+
95
+ #sunrise-settings .form-table td,
96
+ #sunrise-settings .form-table th { padding-bottom: 20px }
97
+
98
+ #sunrise-settings .description {
99
+ display: block;
100
+ margin-top: 5px;
101
+ }
102
+
103
+ #sunrise-settings textarea {
104
+ min-width: 200px;
105
+ }
106
+
107
+ .sunrise-checkbox-group label {
108
+ display: inline-block;
109
+ margin: 0 0 5px 0;
110
+ }
111
+
112
+
113
+ /***********************************
114
+ Color picker
115
+ ***********************************/
116
+
117
+ .sunrise-color-picker { position: relative; }
118
+ .sunrise-color-picker-wheel {
119
+ position: absolute;
120
+ top: 100%;
121
+ left: 0;
122
+ z-index: 9999;
123
+ display: none;
124
+ border: 1px solid #aaa;
125
+ background: #fff;
126
+ -webkit-box-shadow: 0 2px 5px #ccc;
127
+ -moz-box-shadow: 0 2px 5px #ccc;
128
+ box-shadow: 0 2px 5px #ccc;
129
+ -webkit-border-radius: 50%;
130
+ -moz-border-radius: 50%;
131
+ border-radius: 50%;
132
+ }
133
+ .sunrise-color-picker .button img {
134
+ vertical-align: middle;
135
+ margin: -3px 4px 0 -4px;
136
+ }
137
+
138
+
139
+ /***********************************
140
+ Media manager
141
+ ***********************************/
142
+
143
+ .sunrise-media {}
144
+ .sunrise-media .button img {
145
+ vertical-align: middle;
146
+ margin: -3px 4px 0 -4px;
147
+ }
148
+
149
+
150
+ /***********************************
151
+ Actions bar
152
+ ***********************************/
153
+
154
+ .sunrise-actions-bar {
155
+ margin-top: 20px;
156
+ padding: 10px;
157
+ background: #f5f5f5;
158
+ border-top: 1px solid #eee;
159
+ -webkit-border-bottom-right-radius: 5px;
160
+ -webkit-border-bottom-left-radius: 5px;
161
+ -moz-border-radius-bottomright: 5px;
162
+ -moz-border-radius-bottomleft: 5px;
163
+ border-bottom-right-radius: 5px;
164
+ border-bottom-left-radius: 5px;
165
+ }
166
+ .sunrise-spin,
167
+ .sunrise-success-tip {
168
+ display: none;
169
+ margin-left: 10px;
170
+ }
171
+ .sunrise-success-tip { color: #0b0 }
172
+ .sunrise-spin img,
173
  .sunrise-success-tip img { margin: 0 5px -3px 0 }
assets/css/tinymce.css CHANGED
@@ -1,28 +1,28 @@
1
- .su-row {
2
- padding: 5px 0;
3
- background: #eee;
4
- }
5
- .su-row:before,
6
- .su-row:after {
7
- display: table;
8
- content: " ";
9
- }
10
- .su-row:after { clear: both; }
11
- .su-row > br { display: none; }
12
-
13
- .su-column {
14
- -webkit-box-sizing: border-box;
15
- -moz-box-sizing: border-box;
16
- box-sizing: border-box;
17
- padding: 10px;
18
- border: 1px dashed #ccc;
19
- background: #fff;
20
- float: left;
21
- margin: 0 1%;
22
- }
23
- .su-column-size-1-2 {
24
- width: 48%;
25
- }
26
- .su-column-size-1-3 {
27
- width: 31%;
28
- }
1
+ .su-row {
2
+ padding: 5px 0;
3
+ background: #eee;
4
+ }
5
+ .su-row:before,
6
+ .su-row:after {
7
+ display: table;
8
+ content: " ";
9
+ }
10
+ .su-row:after { clear: both; }
11
+ .su-row > br { display: none; }
12
+
13
+ .su-column {
14
+ -webkit-box-sizing: border-box;
15
+ -moz-box-sizing: border-box;
16
+ box-sizing: border-box;
17
+ padding: 10px;
18
+ border: 1px dashed #ccc;
19
+ background: #fff;
20
+ float: left;
21
+ margin: 0 1%;
22
+ }
23
+ .su-column-size-1-2 {
24
+ width: 48%;
25
+ }
26
+ .su-column-size-1-3 {
27
+ width: 31%;
28
+ }
assets/css/vote.css CHANGED
@@ -1,49 +1,49 @@
1
- .su-vote {
2
- overflow: auto;
3
- background: #2685B0;
4
- color: #111;
5
- }
6
- .su-vote-wrap {
7
- margin: 1em;
8
- background: #eee;
9
- -webkit-border-radius: 5px;
10
- -moz-border-radius: 5px;
11
- border-radius: 5px;
12
- -webkit-box-shadow: 0 0 10px #173859;
13
- -moz-box-shadow: 0 0 10px #173859;
14
- box-shadow: 0 0 10px #173859;
15
-
16
- }
17
- .su-vote-clear {
18
- height: 0;
19
- clear: both;
20
- }
21
- .su-vote-gravatar {
22
- float: left;
23
- width: 70px;
24
- }
25
- .su-vote-gravatar img {
26
- margin: 10px;
27
- -webkit-border-radius: 50%;
28
- -moz-border-radius: 50%;
29
- border-radius: 50%;
30
- }
31
- .su-vote-message {
32
- overflow: auto;
33
- margin-left: 70px;
34
- padding: 0 2em;
35
- background: #fff;
36
- border-left: 1px solid #ddd;
37
- -webkit-border-top-right-radius: 5px;
38
- -webkit-border-bottom-right-radius: 5px;
39
- -moz-border-radius-topright: 5px;
40
- -moz-border-radius-bottomright: 5px;
41
- border-top-right-radius: 5px;
42
- border-bottom-right-radius: 5px;
43
- }
44
- .su-vote-message p {
45
- margin: 1.5em 0;
46
- line-height: 1.5;
47
- }
48
- .su-vote-message a.button,
49
  .su-vote-message span { margin-right: 0.5em; }
1
+ .su-vote {
2
+ overflow: auto;
3
+ background: #2685B0;
4
+ color: #111;
5
+ }
6
+ .su-vote-wrap {
7
+ margin: 1em;
8
+ background: #eee;
9
+ -webkit-border-radius: 5px;
10
+ -moz-border-radius: 5px;
11
+ border-radius: 5px;
12
+ -webkit-box-shadow: 0 0 10px #173859;
13
+ -moz-box-shadow: 0 0 10px #173859;
14
+ box-shadow: 0 0 10px #173859;
15
+
16
+ }
17
+ .su-vote-clear {
18
+ height: 0;
19
+ clear: both;
20
+ }
21
+ .su-vote-gravatar {
22
+ float: left;
23
+ width: 70px;
24
+ }
25
+ .su-vote-gravatar img {
26
+ margin: 10px;
27
+ -webkit-border-radius: 50%;
28
+ -moz-border-radius: 50%;
29
+ border-radius: 50%;
30
+ }
31
+ .su-vote-message {
32
+ overflow: auto;
33
+ margin-left: 70px;
34
+ padding: 0 2em;
35
+ background: #fff;
36
+ border-left: 1px solid #ddd;
37
+ -webkit-border-top-right-radius: 5px;
38
+ -webkit-border-bottom-right-radius: 5px;
39
+ -moz-border-radius-topright: 5px;
40
+ -moz-border-radius-bottomright: 5px;
41
+ border-top-right-radius: 5px;
42
+ border-bottom-right-radius: 5px;
43
+ }
44
+ .su-vote-message p {
45
+ margin: 1.5em 0;
46
+ line-height: 1.5;
47
+ }
48
+ .su-vote-message a.button,
49
  .su-vote-message span { margin-right: 0.5em; }
assets/js/chart.js CHANGED
@@ -1,39 +1,39 @@
1
- var Chart=function(s){function v(a,c,b){a=A((a-c.graphMin)/(c.steps*c.stepValue),1,0);return b*c.steps*a}function x(a,c,b,e){function h(){g+=f;var k=a.animation?A(d(g),null,0):1;e.clearRect(0,0,q,u);a.scaleOverlay?(b(k),c()):(c(),b(k));if(1>=g)D(h);else if("function"==typeof a.onAnimationComplete)a.onAnimationComplete()}var f=a.animation?1/A(a.animationSteps,Number.MAX_VALUE,1):1,d=B[a.animationEasing],g=a.animation?0:1;"function"!==typeof c&&(c=function(){});D(h)}function C(a,c,b,e,h,f){var d;a=
2
- Math.floor(Math.log(e-h)/Math.LN10);h=Math.floor(h/(1*Math.pow(10,a)))*Math.pow(10,a);e=Math.ceil(e/(1*Math.pow(10,a)))*Math.pow(10,a)-h;a=Math.pow(10,a);for(d=Math.round(e/a);d<b||d>c;)a=d<b?a/2:2*a,d=Math.round(e/a);c=[];z(f,c,d,h,a);return{steps:d,stepValue:a,graphMin:h,labels:c}}function z(a,c,b,e,h){if(a)for(var f=1;f<b+1;f++)c.push(E(a,{value:(e+h*f).toFixed(0!=h%1?h.toString().split(".")[1].length:0)}))}function A(a,c,b){return!isNaN(parseFloat(c))&&isFinite(c)&&a>c?c:!isNaN(parseFloat(b))&&
3
- isFinite(b)&&a<b?b:a}function y(a,c){var b={},e;for(e in a)b[e]=a[e];for(e in c)b[e]=c[e];return b}function E(a,c){var b=!/\W/.test(a)?F[a]=F[a]||E(document.getElementById(a).innerHTML):new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push('"+a.replace(/[\r\t\n]/g," ").split("<%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return c?
4
- b(c):b}var r=this,B={linear:function(a){return a},easeInQuad:function(a){return a*a},easeOutQuad:function(a){return-1*a*(a-2)},easeInOutQuad:function(a){return 1>(a/=0.5)?0.5*a*a:-0.5*(--a*(a-2)-1)},easeInCubic:function(a){return a*a*a},easeOutCubic:function(a){return 1*((a=a/1-1)*a*a+1)},easeInOutCubic:function(a){return 1>(a/=0.5)?0.5*a*a*a:0.5*((a-=2)*a*a+2)},easeInQuart:function(a){return a*a*a*a},easeOutQuart:function(a){return-1*((a=a/1-1)*a*a*a-1)},easeInOutQuart:function(a){return 1>(a/=0.5)?
5
- 0.5*a*a*a*a:-0.5*((a-=2)*a*a*a-2)},easeInQuint:function(a){return 1*(a/=1)*a*a*a*a},easeOutQuint:function(a){return 1*((a=a/1-1)*a*a*a*a+1)},easeInOutQuint:function(a){return 1>(a/=0.5)?0.5*a*a*a*a*a:0.5*((a-=2)*a*a*a*a+2)},easeInSine:function(a){return-1*Math.cos(a/1*(Math.PI/2))+1},easeOutSine:function(a){return 1*Math.sin(a/1*(Math.PI/2))},easeInOutSine:function(a){return-0.5*(Math.cos(Math.PI*a/1)-1)},easeInExpo:function(a){return 0==a?1:1*Math.pow(2,10*(a/1-1))},easeOutExpo:function(a){return 1==
6
- a?1:1*(-Math.pow(2,-10*a/1)+1)},easeInOutExpo:function(a){return 0==a?0:1==a?1:1>(a/=0.5)?0.5*Math.pow(2,10*(a-1)):0.5*(-Math.pow(2,-10*--a)+2)},easeInCirc:function(a){return 1<=a?a:-1*(Math.sqrt(1-(a/=1)*a)-1)},easeOutCirc:function(a){return 1*Math.sqrt(1-(a=a/1-1)*a)},easeInOutCirc:function(a){return 1>(a/=0.5)?-0.5*(Math.sqrt(1-a*a)-1):0.5*(Math.sqrt(1-(a-=2)*a)+1)},easeInElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(1==(a/=1))return 1;b||(b=0.3);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*
7
- Math.PI)*Math.asin(1/e);return-(e*Math.pow(2,10*(a-=1))*Math.sin((1*a-c)*2*Math.PI/b))},easeOutElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(1==(a/=1))return 1;b||(b=0.3);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/e);return e*Math.pow(2,-10*a)*Math.sin((1*a-c)*2*Math.PI/b)+1},easeInOutElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(2==(a/=0.5))return 1;b||(b=1*0.3*1.5);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/e);return 1>a?-0.5*e*Math.pow(2,10*
8
- (a-=1))*Math.sin((1*a-c)*2*Math.PI/b):0.5*e*Math.pow(2,-10*(a-=1))*Math.sin((1*a-c)*2*Math.PI/b)+1},easeInBack:function(a){return 1*(a/=1)*a*(2.70158*a-1.70158)},easeOutBack:function(a){return 1*((a=a/1-1)*a*(2.70158*a+1.70158)+1)},easeInOutBack:function(a){var c=1.70158;return 1>(a/=0.5)?0.5*a*a*(((c*=1.525)+1)*a-c):0.5*((a-=2)*a*(((c*=1.525)+1)*a+c)+2)},easeInBounce:function(a){return 1-B.easeOutBounce(1-a)},easeOutBounce:function(a){return(a/=1)<1/2.75?1*7.5625*a*a:a<2/2.75?1*(7.5625*(a-=1.5/2.75)*
9
- a+0.75):a<2.5/2.75?1*(7.5625*(a-=2.25/2.75)*a+0.9375):1*(7.5625*(a-=2.625/2.75)*a+0.984375)},easeInOutBounce:function(a){return 0.5>a?0.5*B.easeInBounce(2*a):0.5*B.easeOutBounce(2*a-1)+0.5}},q=s.canvas.width,u=s.canvas.height;window.devicePixelRatio&&(s.canvas.style.width=q+"px",s.canvas.style.height=u+"px",s.canvas.height=u*window.devicePixelRatio,s.canvas.width=q*window.devicePixelRatio,s.scale(window.devicePixelRatio,window.devicePixelRatio));this.PolarArea=function(a,c){r.PolarArea.defaults={scaleOverlay:!0,
10
- scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleShowLine:!0,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:!0,scaleBackdropColor:"rgba(255,255,255,0.75)",scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",
11
- animateRotate:!0,animateScale:!1,onAnimationComplete:null};var b=c?y(r.PolarArea.defaults,c):r.PolarArea.defaults;return new G(a,b,s)};this.Radar=function(a,c){r.Radar.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleShowLine:!0,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!1,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:!0,scaleBackdropColor:"rgba(255,255,255,0.75)",
12
- scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,angleShowLineOut:!0,angleLineColor:"rgba(0,0,0,.1)",angleLineWidth:1,pointLabelFontFamily:"'Arial'",pointLabelFontStyle:"normal",pointLabelFontSize:12,pointLabelFontColor:"#666",pointDot:!0,pointDotRadius:3,pointDotStrokeWidth:1,datasetStroke:!0,datasetStrokeWidth:2,datasetFill:!0,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Radar.defaults,c):r.Radar.defaults;return new H(a,b,s)};this.Pie=function(a,
13
- c){r.Pie.defaults={segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:!0,animateScale:!1,onAnimationComplete:null};var b=c?y(r.Pie.defaults,c):r.Pie.defaults;return new I(a,b,s)};this.Doughnut=function(a,c){r.Doughnut.defaults={segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,percentageInnerCutout:50,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:!0,animateScale:!1,
14
- onAnimationComplete:null};var b=c?y(r.Doughnut.defaults,c):r.Doughnut.defaults;return new J(a,b,s)};this.Line=function(a,c){r.Line.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:!0,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,bezierCurve:!0,
15
- pointDot:!0,pointDotRadius:4,pointDotStrokeWidth:2,datasetStroke:!0,datasetStrokeWidth:2,datasetFill:!0,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Line.defaults,c):r.Line.defaults;return new K(a,b,s)};this.Bar=function(a,c){r.Bar.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",
16
- scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:!0,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,barShowStroke:!0,barStrokeWidth:2,barValueSpacing:5,barDatasetSpacing:1,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Bar.defaults,c):r.Bar.defaults;return new L(a,b,s)};var G=function(a,c,b){var e,h,f,d,g,k,j,l,m;g=Math.min.apply(Math,[q,u])/2;g-=Math.max.apply(Math,[0.5*c.scaleFontSize,0.5*c.scaleLineWidth]);
17
- d=2*c.scaleFontSize;c.scaleShowLabelBackdrop&&(d+=2*c.scaleBackdropPaddingY,g-=1.5*c.scaleBackdropPaddingY);l=g;d=d?d:5;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.length;f++)a[f].value>e&&(e=a[f].value),a[f].value<h&&(h=a[f].value);f=Math.floor(l/(0.66*d));d=Math.floor(0.5*(l/d));m=c.scaleShowLabels?c.scaleLabel:null;c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(m,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(l,f,d,e,h,
18
- m);k=g/j.steps;x(c,function(){for(var a=0;a<j.steps;a++)if(c.scaleShowLine&&(b.beginPath(),b.arc(q/2,u/2,k*(a+1),0,2*Math.PI,!0),b.strokeStyle=c.scaleLineColor,b.lineWidth=c.scaleLineWidth,b.stroke()),c.scaleShowLabels){b.textAlign="center";b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;var e=j.labels[a];if(c.scaleShowLabelBackdrop){var d=b.measureText(e).width;b.fillStyle=c.scaleBackdropColor;b.beginPath();b.rect(Math.round(q/2-d/2-c.scaleBackdropPaddingX),Math.round(u/2-k*(a+
19
- 1)-0.5*c.scaleFontSize-c.scaleBackdropPaddingY),Math.round(d+2*c.scaleBackdropPaddingX),Math.round(c.scaleFontSize+2*c.scaleBackdropPaddingY));b.fill()}b.textBaseline="middle";b.fillStyle=c.scaleFontColor;b.fillText(e,q/2,u/2-k*(a+1))}},function(e){var d=-Math.PI/2,g=2*Math.PI/a.length,f=1,h=1;c.animation&&(c.animateScale&&(f=e),c.animateRotate&&(h=e));for(e=0;e<a.length;e++)b.beginPath(),b.arc(q/2,u/2,f*v(a[e].value,j,k),d,d+h*g,!1),b.lineTo(q/2,u/2),b.closePath(),b.fillStyle=a[e].color,b.fill(),
20
- c.segmentShowStroke&&(b.strokeStyle=c.segmentStrokeColor,b.lineWidth=c.segmentStrokeWidth,b.stroke()),d+=h*g},b)},H=function(a,c,b){var e,h,f,d,g,k,j,l,m;a.labels||(a.labels=[]);g=Math.min.apply(Math,[q,u])/2;d=2*c.scaleFontSize;for(e=l=0;e<a.labels.length;e++)b.font=c.pointLabelFontStyle+" "+c.pointLabelFontSize+"px "+c.pointLabelFontFamily,h=b.measureText(a.labels[e]).width,h>l&&(l=h);g-=Math.max.apply(Math,[l,1.5*(c.pointLabelFontSize/2)]);g-=c.pointLabelFontSize;l=g=A(g,null,0);d=d?d:5;e=Number.MIN_VALUE;
21
- h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(m=0;m<a.datasets[f].data.length;m++)a.datasets[f].data[m]>e&&(e=a.datasets[f].data[m]),a.datasets[f].data[m]<h&&(h=a.datasets[f].data[m]);f=Math.floor(l/(0.66*d));d=Math.floor(0.5*(l/d));m=c.scaleShowLabels?c.scaleLabel:null;c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(m,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(l,f,d,e,h,m);k=g/j.steps;x(c,function(){var e=2*Math.PI/
22
- a.datasets[0].data.length;b.save();b.translate(q/2,u/2);if(c.angleShowLineOut){b.strokeStyle=c.angleLineColor;b.lineWidth=c.angleLineWidth;for(var d=0;d<a.datasets[0].data.length;d++)b.rotate(e),b.beginPath(),b.moveTo(0,0),b.lineTo(0,-g),b.stroke()}for(d=0;d<j.steps;d++){b.beginPath();if(c.scaleShowLine){b.strokeStyle=c.scaleLineColor;b.lineWidth=c.scaleLineWidth;b.moveTo(0,-k*(d+1));for(var f=0;f<a.datasets[0].data.length;f++)b.rotate(e),b.lineTo(0,-k*(d+1));b.closePath();b.stroke()}c.scaleShowLabels&&
23
- (b.textAlign="center",b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily,b.textBaseline="middle",c.scaleShowLabelBackdrop&&(f=b.measureText(j.labels[d]).width,b.fillStyle=c.scaleBackdropColor,b.beginPath(),b.rect(Math.round(-f/2-c.scaleBackdropPaddingX),Math.round(-k*(d+1)-0.5*c.scaleFontSize-c.scaleBackdropPaddingY),Math.round(f+2*c.scaleBackdropPaddingX),Math.round(c.scaleFontSize+2*c.scaleBackdropPaddingY)),b.fill()),b.fillStyle=c.scaleFontColor,b.fillText(j.labels[d],0,-k*(d+
24
- 1)))}for(d=0;d<a.labels.length;d++){b.font=c.pointLabelFontStyle+" "+c.pointLabelFontSize+"px "+c.pointLabelFontFamily;b.fillStyle=c.pointLabelFontColor;var f=Math.sin(e*d)*(g+c.pointLabelFontSize),h=Math.cos(e*d)*(g+c.pointLabelFontSize);b.textAlign=e*d==Math.PI||0==e*d?"center":e*d>Math.PI?"right":"left";b.textBaseline="middle";b.fillText(a.labels[d],f,-h)}b.restore()},function(d){var e=2*Math.PI/a.datasets[0].data.length;b.save();b.translate(q/2,u/2);for(var g=0;g<a.datasets.length;g++){b.beginPath();
25
- b.moveTo(0,d*-1*v(a.datasets[g].data[0],j,k));for(var f=1;f<a.datasets[g].data.length;f++)b.rotate(e),b.lineTo(0,d*-1*v(a.datasets[g].data[f],j,k));b.closePath();b.fillStyle=a.datasets[g].fillColor;b.strokeStyle=a.datasets[g].strokeColor;b.lineWidth=c.datasetStrokeWidth;b.fill();b.stroke();if(c.pointDot){b.fillStyle=a.datasets[g].pointColor;b.strokeStyle=a.datasets[g].pointStrokeColor;b.lineWidth=c.pointDotStrokeWidth;for(f=0;f<a.datasets[g].data.length;f++)b.rotate(e),b.beginPath(),b.arc(0,d*-1*
26
- v(a.datasets[g].data[f],j,k),c.pointDotRadius,2*Math.PI,!1),b.fill(),b.stroke()}b.rotate(e)}b.restore()},b)},I=function(a,c,b){for(var e=0,h=Math.min.apply(Math,[u/2,q/2])-5,f=0;f<a.length;f++)e+=a[f].value;x(c,null,function(d){var g=-Math.PI/2,f=1,j=1;c.animation&&(c.animateScale&&(f=d),c.animateRotate&&(j=d));for(d=0;d<a.length;d++){var l=j*a[d].value/e*2*Math.PI;b.beginPath();b.arc(q/2,u/2,f*h,g,g+l);b.lineTo(q/2,u/2);b.closePath();b.fillStyle=a[d].color;b.fill();c.segmentShowStroke&&(b.lineWidth=
27
- c.segmentStrokeWidth,b.strokeStyle=c.segmentStrokeColor,b.stroke());g+=l}},b)},J=function(a,c,b){for(var e=0,h=Math.min.apply(Math,[u/2,q/2])-5,f=h*(c.percentageInnerCutout/100),d=0;d<a.length;d++)e+=a[d].value;x(c,null,function(d){var k=-Math.PI/2,j=1,l=1;c.animation&&(c.animateScale&&(j=d),c.animateRotate&&(l=d));for(d=0;d<a.length;d++){var m=l*a[d].value/e*2*Math.PI;b.beginPath();b.arc(q/2,u/2,j*h,k,k+m,!1);b.arc(q/2,u/2,j*f,k+m,k,!0);b.closePath();b.fillStyle=a[d].color;b.fill();c.segmentShowStroke&&
28
- (b.lineWidth=c.segmentStrokeWidth,b.strokeStyle=c.segmentStrokeColor,b.stroke());k+=m}},b)},K=function(a,c,b){var e,h,f,d,g,k,j,l,m,t,r,n,p,s=0;g=u;b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;t=1;for(d=0;d<a.labels.length;d++)e=b.measureText(a.labels[d]).width,t=e>t?e:t;q/a.labels.length<t?(s=45,q/a.labels.length<Math.cos(s)*t?(s=90,g-=t):g-=Math.sin(s)*t):g-=c.scaleFontSize;d=c.scaleFontSize;g=g-5-d;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(l=
29
- 0;l<a.datasets[f].data.length;l++)a.datasets[f].data[l]>e&&(e=a.datasets[f].data[l]),a.datasets[f].data[l]<h&&(h=a.datasets[f].data[l]);f=Math.floor(g/(0.66*d));d=Math.floor(0.5*(g/d));l=c.scaleShowLabels?c.scaleLabel:"";c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(l,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(g,f,d,e,h,l);k=Math.floor(g/j.steps);d=1;if(c.scaleShowLabels){b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;
30
- for(e=0;e<j.labels.length;e++)h=b.measureText(j.labels[e]).width,d=h>d?h:d;d+=10}r=q-d-t;m=Math.floor(r/(a.labels.length-1));n=q-t/2-r;p=g+c.scaleFontSize/2;x(c,function(){b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(q-t/2+5,p);b.lineTo(q-t/2-r-5,p);b.stroke();0<s?(b.save(),b.textAlign="right"):b.textAlign="center";b.fillStyle=c.scaleFontColor;for(var d=0;d<a.labels.length;d++)b.save(),0<s?(b.translate(n+d*m,p+c.scaleFontSize),b.rotate(-(s*(Math.PI/180))),b.fillText(a.labels[d],
31
- 0,0),b.restore()):b.fillText(a.labels[d],n+d*m,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+d*m,p+3),c.scaleShowGridLines&&0<d?(b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+d*m,5)):b.lineTo(n+d*m,p+3),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;d<j.steps;d++)b.beginPath(),b.moveTo(n-3,p-(d+1)*k),c.scaleShowGridLines?(b.lineWidth=c.scaleGridLineWidth,
32
- b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+r+5,p-(d+1)*k)):b.lineTo(n-0.5,p-(d+1)*k),b.stroke(),c.scaleShowLabels&&b.fillText(j.labels[d],n-8,p-(d+1)*k)},function(d){function e(b,c){return p-d*v(a.datasets[b].data[c],j,k)}for(var f=0;f<a.datasets.length;f++){b.strokeStyle=a.datasets[f].strokeColor;b.lineWidth=c.datasetStrokeWidth;b.beginPath();b.moveTo(n,p-d*v(a.datasets[f].data[0],j,k));for(var g=1;g<a.datasets[f].data.length;g++)c.bezierCurve?b.bezierCurveTo(n+m*(g-0.5),e(f,g-1),n+m*(g-0.5),
33
- e(f,g),n+m*g,e(f,g)):b.lineTo(n+m*g,e(f,g));b.stroke();c.datasetFill?(b.lineTo(n+m*(a.datasets[f].data.length-1),p),b.lineTo(n,p),b.closePath(),b.fillStyle=a.datasets[f].fillColor,b.fill()):b.closePath();if(c.pointDot){b.fillStyle=a.datasets[f].pointColor;b.strokeStyle=a.datasets[f].pointStrokeColor;b.lineWidth=c.pointDotStrokeWidth;for(g=0;g<a.datasets[f].data.length;g++)b.beginPath(),b.arc(n+m*g,p-d*v(a.datasets[f].data[g],j,k),c.pointDotRadius,0,2*Math.PI,!0),b.fill(),b.stroke()}}},b)},L=function(a,
34
- c,b){var e,h,f,d,g,k,j,l,m,t,r,n,p,s,w=0;g=u;b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;t=1;for(d=0;d<a.labels.length;d++)e=b.measureText(a.labels[d]).width,t=e>t?e:t;q/a.labels.length<t?(w=45,q/a.labels.length<Math.cos(w)*t?(w=90,g-=t):g-=Math.sin(w)*t):g-=c.scaleFontSize;d=c.scaleFontSize;g=g-5-d;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(l=0;l<a.datasets[f].data.length;l++)a.datasets[f].data[l]>e&&(e=a.datasets[f].data[l]),a.datasets[f].data[l]<
35
- h&&(h=a.datasets[f].data[l]);f=Math.floor(g/(0.66*d));d=Math.floor(0.5*(g/d));l=c.scaleShowLabels?c.scaleLabel:"";c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(l,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(g,f,d,e,h,l);k=Math.floor(g/j.steps);d=1;if(c.scaleShowLabels){b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;for(e=0;e<j.labels.length;e++)h=b.measureText(j.labels[e]).width,d=h>d?h:d;d+=10}r=q-d-t;m=
36
- Math.floor(r/a.labels.length);s=(m-2*c.scaleGridLineWidth-2*c.barValueSpacing-(c.barDatasetSpacing*a.datasets.length-1)-(c.barStrokeWidth/2*a.datasets.length-1))/a.datasets.length;n=q-t/2-r;p=g+c.scaleFontSize/2;x(c,function(){b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(q-t/2+5,p);b.lineTo(q-t/2-r-5,p);b.stroke();0<w?(b.save(),b.textAlign="right"):b.textAlign="center";b.fillStyle=c.scaleFontColor;for(var d=0;d<a.labels.length;d++)b.save(),0<w?(b.translate(n+
37
- d*m,p+c.scaleFontSize),b.rotate(-(w*(Math.PI/180))),b.fillText(a.labels[d],0,0),b.restore()):b.fillText(a.labels[d],n+d*m+m/2,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+(d+1)*m,p+3),b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+(d+1)*m,5),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;d<j.steps;d++)b.beginPath(),b.moveTo(n-3,p-(d+1)*
38
- k),c.scaleShowGridLines?(b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+r+5,p-(d+1)*k)):b.lineTo(n-0.5,p-(d+1)*k),b.stroke(),c.scaleShowLabels&&b.fillText(j.labels[d],n-8,p-(d+1)*k)},function(d){b.lineWidth=c.barStrokeWidth;for(var e=0;e<a.datasets.length;e++){b.fillStyle=a.datasets[e].fillColor;b.strokeStyle=a.datasets[e].strokeColor;for(var f=0;f<a.datasets[e].data.length;f++){var g=n+c.barValueSpacing+m*f+s*e+c.barDatasetSpacing*e+c.barStrokeWidth*e;b.beginPath();
39
  b.moveTo(g,p);b.lineTo(g,p-d*v(a.datasets[e].data[f],j,k)+c.barStrokeWidth/2);b.lineTo(g+s,p-d*v(a.datasets[e].data[f],j,k)+c.barStrokeWidth/2);b.lineTo(g+s,p);c.barShowStroke&&b.stroke();b.closePath();b.fill()}}},b)},D=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)},F={}};
1
+ var Chart=function(s){function v(a,c,b){a=A((a-c.graphMin)/(c.steps*c.stepValue),1,0);return b*c.steps*a}function x(a,c,b,e){function h(){g+=f;var k=a.animation?A(d(g),null,0):1;e.clearRect(0,0,q,u);a.scaleOverlay?(b(k),c()):(c(),b(k));if(1>=g)D(h);else if("function"==typeof a.onAnimationComplete)a.onAnimationComplete()}var f=a.animation?1/A(a.animationSteps,Number.MAX_VALUE,1):1,d=B[a.animationEasing],g=a.animation?0:1;"function"!==typeof c&&(c=function(){});D(h)}function C(a,c,b,e,h,f){var d;a=
2
+ Math.floor(Math.log(e-h)/Math.LN10);h=Math.floor(h/(1*Math.pow(10,a)))*Math.pow(10,a);e=Math.ceil(e/(1*Math.pow(10,a)))*Math.pow(10,a)-h;a=Math.pow(10,a);for(d=Math.round(e/a);d<b||d>c;)a=d<b?a/2:2*a,d=Math.round(e/a);c=[];z(f,c,d,h,a);return{steps:d,stepValue:a,graphMin:h,labels:c}}function z(a,c,b,e,h){if(a)for(var f=1;f<b+1;f++)c.push(E(a,{value:(e+h*f).toFixed(0!=h%1?h.toString().split(".")[1].length:0)}))}function A(a,c,b){return!isNaN(parseFloat(c))&&isFinite(c)&&a>c?c:!isNaN(parseFloat(b))&&
3
+ isFinite(b)&&a<b?b:a}function y(a,c){var b={},e;for(e in a)b[e]=a[e];for(e in c)b[e]=c[e];return b}function E(a,c){var b=!/\W/.test(a)?F[a]=F[a]||E(document.getElementById(a).innerHTML):new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push('"+a.replace(/[\r\t\n]/g," ").split("<%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return c?
4
+ b(c):b}var r=this,B={linear:function(a){return a},easeInQuad:function(a){return a*a},easeOutQuad:function(a){return-1*a*(a-2)},easeInOutQuad:function(a){return 1>(a/=0.5)?0.5*a*a:-0.5*(--a*(a-2)-1)},easeInCubic:function(a){return a*a*a},easeOutCubic:function(a){return 1*((a=a/1-1)*a*a+1)},easeInOutCubic:function(a){return 1>(a/=0.5)?0.5*a*a*a:0.5*((a-=2)*a*a+2)},easeInQuart:function(a){return a*a*a*a},easeOutQuart:function(a){return-1*((a=a/1-1)*a*a*a-1)},easeInOutQuart:function(a){return 1>(a/=0.5)?
5
+ 0.5*a*a*a*a:-0.5*((a-=2)*a*a*a-2)},easeInQuint:function(a){return 1*(a/=1)*a*a*a*a},easeOutQuint:function(a){return 1*((a=a/1-1)*a*a*a*a+1)},easeInOutQuint:function(a){return 1>(a/=0.5)?0.5*a*a*a*a*a:0.5*((a-=2)*a*a*a*a+2)},easeInSine:function(a){return-1*Math.cos(a/1*(Math.PI/2))+1},easeOutSine:function(a){return 1*Math.sin(a/1*(Math.PI/2))},easeInOutSine:function(a){return-0.5*(Math.cos(Math.PI*a/1)-1)},easeInExpo:function(a){return 0==a?1:1*Math.pow(2,10*(a/1-1))},easeOutExpo:function(a){return 1==
6
+ a?1:1*(-Math.pow(2,-10*a/1)+1)},easeInOutExpo:function(a){return 0==a?0:1==a?1:1>(a/=0.5)?0.5*Math.pow(2,10*(a-1)):0.5*(-Math.pow(2,-10*--a)+2)},easeInCirc:function(a){return 1<=a?a:-1*(Math.sqrt(1-(a/=1)*a)-1)},easeOutCirc:function(a){return 1*Math.sqrt(1-(a=a/1-1)*a)},easeInOutCirc:function(a){return 1>(a/=0.5)?-0.5*(Math.sqrt(1-a*a)-1):0.5*(Math.sqrt(1-(a-=2)*a)+1)},easeInElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(1==(a/=1))return 1;b||(b=0.3);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*
7
+ Math.PI)*Math.asin(1/e);return-(e*Math.pow(2,10*(a-=1))*Math.sin((1*a-c)*2*Math.PI/b))},easeOutElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(1==(a/=1))return 1;b||(b=0.3);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/e);return e*Math.pow(2,-10*a)*Math.sin((1*a-c)*2*Math.PI/b)+1},easeInOutElastic:function(a){var c=1.70158,b=0,e=1;if(0==a)return 0;if(2==(a/=0.5))return 1;b||(b=1*0.3*1.5);e<Math.abs(1)?(e=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/e);return 1>a?-0.5*e*Math.pow(2,10*
8
+ (a-=1))*Math.sin((1*a-c)*2*Math.PI/b):0.5*e*Math.pow(2,-10*(a-=1))*Math.sin((1*a-c)*2*Math.PI/b)+1},easeInBack:function(a){return 1*(a/=1)*a*(2.70158*a-1.70158)},easeOutBack:function(a){return 1*((a=a/1-1)*a*(2.70158*a+1.70158)+1)},easeInOutBack:function(a){var c=1.70158;return 1>(a/=0.5)?0.5*a*a*(((c*=1.525)+1)*a-c):0.5*((a-=2)*a*(((c*=1.525)+1)*a+c)+2)},easeInBounce:function(a){return 1-B.easeOutBounce(1-a)},easeOutBounce:function(a){return(a/=1)<1/2.75?1*7.5625*a*a:a<2/2.75?1*(7.5625*(a-=1.5/2.75)*
9
+ a+0.75):a<2.5/2.75?1*(7.5625*(a-=2.25/2.75)*a+0.9375):1*(7.5625*(a-=2.625/2.75)*a+0.984375)},easeInOutBounce:function(a){return 0.5>a?0.5*B.easeInBounce(2*a):0.5*B.easeOutBounce(2*a-1)+0.5}},q=s.canvas.width,u=s.canvas.height;window.devicePixelRatio&&(s.canvas.style.width=q+"px",s.canvas.style.height=u+"px",s.canvas.height=u*window.devicePixelRatio,s.canvas.width=q*window.devicePixelRatio,s.scale(window.devicePixelRatio,window.devicePixelRatio));this.PolarArea=function(a,c){r.PolarArea.defaults={scaleOverlay:!0,
10
+ scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleShowLine:!0,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:!0,scaleBackdropColor:"rgba(255,255,255,0.75)",scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",
11
+ animateRotate:!0,animateScale:!1,onAnimationComplete:null};var b=c?y(r.PolarArea.defaults,c):r.PolarArea.defaults;return new G(a,b,s)};this.Radar=function(a,c){r.Radar.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleShowLine:!0,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!1,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:!0,scaleBackdropColor:"rgba(255,255,255,0.75)",
12
+ scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,angleShowLineOut:!0,angleLineColor:"rgba(0,0,0,.1)",angleLineWidth:1,pointLabelFontFamily:"'Arial'",pointLabelFontStyle:"normal",pointLabelFontSize:12,pointLabelFontColor:"#666",pointDot:!0,pointDotRadius:3,pointDotStrokeWidth:1,datasetStroke:!0,datasetStrokeWidth:2,datasetFill:!0,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Radar.defaults,c):r.Radar.defaults;return new H(a,b,s)};this.Pie=function(a,
13
+ c){r.Pie.defaults={segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:!0,animateScale:!1,onAnimationComplete:null};var b=c?y(r.Pie.defaults,c):r.Pie.defaults;return new I(a,b,s)};this.Doughnut=function(a,c){r.Doughnut.defaults={segmentShowStroke:!0,segmentStrokeColor:"#fff",segmentStrokeWidth:2,percentageInnerCutout:50,animation:!0,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:!0,animateScale:!1,
14
+ onAnimationComplete:null};var b=c?y(r.Doughnut.defaults,c):r.Doughnut.defaults;return new J(a,b,s)};this.Line=function(a,c){r.Line.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:!0,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,bezierCurve:!0,
15
+ pointDot:!0,pointDotRadius:4,pointDotStrokeWidth:2,datasetStroke:!0,datasetStrokeWidth:2,datasetFill:!0,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Line.defaults,c):r.Line.defaults;return new K(a,b,s)};this.Bar=function(a,c){r.Bar.defaults={scaleOverlay:!1,scaleOverride:!1,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:!0,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",
16
+ scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:!0,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,barShowStroke:!0,barStrokeWidth:2,barValueSpacing:5,barDatasetSpacing:1,animation:!0,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var b=c?y(r.Bar.defaults,c):r.Bar.defaults;return new L(a,b,s)};var G=function(a,c,b){var e,h,f,d,g,k,j,l,m;g=Math.min.apply(Math,[q,u])/2;g-=Math.max.apply(Math,[0.5*c.scaleFontSize,0.5*c.scaleLineWidth]);
17
+ d=2*c.scaleFontSize;c.scaleShowLabelBackdrop&&(d+=2*c.scaleBackdropPaddingY,g-=1.5*c.scaleBackdropPaddingY);l=g;d=d?d:5;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.length;f++)a[f].value>e&&(e=a[f].value),a[f].value<h&&(h=a[f].value);f=Math.floor(l/(0.66*d));d=Math.floor(0.5*(l/d));m=c.scaleShowLabels?c.scaleLabel:null;c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(m,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(l,f,d,e,h,
18
+ m);k=g/j.steps;x(c,function(){for(var a=0;a<j.steps;a++)if(c.scaleShowLine&&(b.beginPath(),b.arc(q/2,u/2,k*(a+1),0,2*Math.PI,!0),b.strokeStyle=c.scaleLineColor,b.lineWidth=c.scaleLineWidth,b.stroke()),c.scaleShowLabels){b.textAlign="center";b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;var e=j.labels[a];if(c.scaleShowLabelBackdrop){var d=b.measureText(e).width;b.fillStyle=c.scaleBackdropColor;b.beginPath();b.rect(Math.round(q/2-d/2-c.scaleBackdropPaddingX),Math.round(u/2-k*(a+
19
+ 1)-0.5*c.scaleFontSize-c.scaleBackdropPaddingY),Math.round(d+2*c.scaleBackdropPaddingX),Math.round(c.scaleFontSize+2*c.scaleBackdropPaddingY));b.fill()}b.textBaseline="middle";b.fillStyle=c.scaleFontColor;b.fillText(e,q/2,u/2-k*(a+1))}},function(e){var d=-Math.PI/2,g=2*Math.PI/a.length,f=1,h=1;c.animation&&(c.animateScale&&(f=e),c.animateRotate&&(h=e));for(e=0;e<a.length;e++)b.beginPath(),b.arc(q/2,u/2,f*v(a[e].value,j,k),d,d+h*g,!1),b.lineTo(q/2,u/2),b.closePath(),b.fillStyle=a[e].color,b.fill(),
20
+ c.segmentShowStroke&&(b.strokeStyle=c.segmentStrokeColor,b.lineWidth=c.segmentStrokeWidth,b.stroke()),d+=h*g},b)},H=function(a,c,b){var e,h,f,d,g,k,j,l,m;a.labels||(a.labels=[]);g=Math.min.apply(Math,[q,u])/2;d=2*c.scaleFontSize;for(e=l=0;e<a.labels.length;e++)b.font=c.pointLabelFontStyle+" "+c.pointLabelFontSize+"px "+c.pointLabelFontFamily,h=b.measureText(a.labels[e]).width,h>l&&(l=h);g-=Math.max.apply(Math,[l,1.5*(c.pointLabelFontSize/2)]);g-=c.pointLabelFontSize;l=g=A(g,null,0);d=d?d:5;e=Number.MIN_VALUE;
21
+ h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(m=0;m<a.datasets[f].data.length;m++)a.datasets[f].data[m]>e&&(e=a.datasets[f].data[m]),a.datasets[f].data[m]<h&&(h=a.datasets[f].data[m]);f=Math.floor(l/(0.66*d));d=Math.floor(0.5*(l/d));m=c.scaleShowLabels?c.scaleLabel:null;c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(m,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(l,f,d,e,h,m);k=g/j.steps;x(c,function(){var e=2*Math.PI/
22
+ a.datasets[0].data.length;b.save();b.translate(q/2,u/2);if(c.angleShowLineOut){b.strokeStyle=c.angleLineColor;b.lineWidth=c.angleLineWidth;for(var d=0;d<a.datasets[0].data.length;d++)b.rotate(e),b.beginPath(),b.moveTo(0,0),b.lineTo(0,-g),b.stroke()}for(d=0;d<j.steps;d++){b.beginPath();if(c.scaleShowLine){b.strokeStyle=c.scaleLineColor;b.lineWidth=c.scaleLineWidth;b.moveTo(0,-k*(d+1));for(var f=0;f<a.datasets[0].data.length;f++)b.rotate(e),b.lineTo(0,-k*(d+1));b.closePath();b.stroke()}c.scaleShowLabels&&
23
+ (b.textAlign="center",b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily,b.textBaseline="middle",c.scaleShowLabelBackdrop&&(f=b.measureText(j.labels[d]).width,b.fillStyle=c.scaleBackdropColor,b.beginPath(),b.rect(Math.round(-f/2-c.scaleBackdropPaddingX),Math.round(-k*(d+1)-0.5*c.scaleFontSize-c.scaleBackdropPaddingY),Math.round(f+2*c.scaleBackdropPaddingX),Math.round(c.scaleFontSize+2*c.scaleBackdropPaddingY)),b.fill()),b.fillStyle=c.scaleFontColor,b.fillText(j.labels[d],0,-k*(d+
24
+ 1)))}for(d=0;d<a.labels.length;d++){b.font=c.pointLabelFontStyle+" "+c.pointLabelFontSize+"px "+c.pointLabelFontFamily;b.fillStyle=c.pointLabelFontColor;var f=Math.sin(e*d)*(g+c.pointLabelFontSize),h=Math.cos(e*d)*(g+c.pointLabelFontSize);b.textAlign=e*d==Math.PI||0==e*d?"center":e*d>Math.PI?"right":"left";b.textBaseline="middle";b.fillText(a.labels[d],f,-h)}b.restore()},function(d){var e=2*Math.PI/a.datasets[0].data.length;b.save();b.translate(q/2,u/2);for(var g=0;g<a.datasets.length;g++){b.beginPath();
25
+ b.moveTo(0,d*-1*v(a.datasets[g].data[0],j,k));for(var f=1;f<a.datasets[g].data.length;f++)b.rotate(e),b.lineTo(0,d*-1*v(a.datasets[g].data[f],j,k));b.closePath();b.fillStyle=a.datasets[g].fillColor;b.strokeStyle=a.datasets[g].strokeColor;b.lineWidth=c.datasetStrokeWidth;b.fill();b.stroke();if(c.pointDot){b.fillStyle=a.datasets[g].pointColor;b.strokeStyle=a.datasets[g].pointStrokeColor;b.lineWidth=c.pointDotStrokeWidth;for(f=0;f<a.datasets[g].data.length;f++)b.rotate(e),b.beginPath(),b.arc(0,d*-1*
26
+ v(a.datasets[g].data[f],j,k),c.pointDotRadius,2*Math.PI,!1),b.fill(),b.stroke()}b.rotate(e)}b.restore()},b)},I=function(a,c,b){for(var e=0,h=Math.min.apply(Math,[u/2,q/2])-5,f=0;f<a.length;f++)e+=a[f].value;x(c,null,function(d){var g=-Math.PI/2,f=1,j=1;c.animation&&(c.animateScale&&(f=d),c.animateRotate&&(j=d));for(d=0;d<a.length;d++){var l=j*a[d].value/e*2*Math.PI;b.beginPath();b.arc(q/2,u/2,f*h,g,g+l);b.lineTo(q/2,u/2);b.closePath();b.fillStyle=a[d].color;b.fill();c.segmentShowStroke&&(b.lineWidth=
27
+ c.segmentStrokeWidth,b.strokeStyle=c.segmentStrokeColor,b.stroke());g+=l}},b)},J=function(a,c,b){for(var e=0,h=Math.min.apply(Math,[u/2,q/2])-5,f=h*(c.percentageInnerCutout/100),d=0;d<a.length;d++)e+=a[d].value;x(c,null,function(d){var k=-Math.PI/2,j=1,l=1;c.animation&&(c.animateScale&&(j=d),c.animateRotate&&(l=d));for(d=0;d<a.length;d++){var m=l*a[d].value/e*2*Math.PI;b.beginPath();b.arc(q/2,u/2,j*h,k,k+m,!1);b.arc(q/2,u/2,j*f,k+m,k,!0);b.closePath();b.fillStyle=a[d].color;b.fill();c.segmentShowStroke&&
28
+ (b.lineWidth=c.segmentStrokeWidth,b.strokeStyle=c.segmentStrokeColor,b.stroke());k+=m}},b)},K=function(a,c,b){var e,h,f,d,g,k,j,l,m,t,r,n,p,s=0;g=u;b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;t=1;for(d=0;d<a.labels.length;d++)e=b.measureText(a.labels[d]).width,t=e>t?e:t;q/a.labels.length<t?(s=45,q/a.labels.length<Math.cos(s)*t?(s=90,g-=t):g-=Math.sin(s)*t):g-=c.scaleFontSize;d=c.scaleFontSize;g=g-5-d;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(l=
29
+ 0;l<a.datasets[f].data.length;l++)a.datasets[f].data[l]>e&&(e=a.datasets[f].data[l]),a.datasets[f].data[l]<h&&(h=a.datasets[f].data[l]);f=Math.floor(g/(0.66*d));d=Math.floor(0.5*(g/d));l=c.scaleShowLabels?c.scaleLabel:"";c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(l,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(g,f,d,e,h,l);k=Math.floor(g/j.steps);d=1;if(c.scaleShowLabels){b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;
30
+ for(e=0;e<j.labels.length;e++)h=b.measureText(j.labels[e]).width,d=h>d?h:d;d+=10}r=q-d-t;m=Math.floor(r/(a.labels.length-1));n=q-t/2-r;p=g+c.scaleFontSize/2;x(c,function(){b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(q-t/2+5,p);b.lineTo(q-t/2-r-5,p);b.stroke();0<s?(b.save(),b.textAlign="right"):b.textAlign="center";b.fillStyle=c.scaleFontColor;for(var d=0;d<a.labels.length;d++)b.save(),0<s?(b.translate(n+d*m,p+c.scaleFontSize),b.rotate(-(s*(Math.PI/180))),b.fillText(a.labels[d],
31
+ 0,0),b.restore()):b.fillText(a.labels[d],n+d*m,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+d*m,p+3),c.scaleShowGridLines&&0<d?(b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+d*m,5)):b.lineTo(n+d*m,p+3),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;d<j.steps;d++)b.beginPath(),b.moveTo(n-3,p-(d+1)*k),c.scaleShowGridLines?(b.lineWidth=c.scaleGridLineWidth,
32
+ b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+r+5,p-(d+1)*k)):b.lineTo(n-0.5,p-(d+1)*k),b.stroke(),c.scaleShowLabels&&b.fillText(j.labels[d],n-8,p-(d+1)*k)},function(d){function e(b,c){return p-d*v(a.datasets[b].data[c],j,k)}for(var f=0;f<a.datasets.length;f++){b.strokeStyle=a.datasets[f].strokeColor;b.lineWidth=c.datasetStrokeWidth;b.beginPath();b.moveTo(n,p-d*v(a.datasets[f].data[0],j,k));for(var g=1;g<a.datasets[f].data.length;g++)c.bezierCurve?b.bezierCurveTo(n+m*(g-0.5),e(f,g-1),n+m*(g-0.5),
33
+ e(f,g),n+m*g,e(f,g)):b.lineTo(n+m*g,e(f,g));b.stroke();c.datasetFill?(b.lineTo(n+m*(a.datasets[f].data.length-1),p),b.lineTo(n,p),b.closePath(),b.fillStyle=a.datasets[f].fillColor,b.fill()):b.closePath();if(c.pointDot){b.fillStyle=a.datasets[f].pointColor;b.strokeStyle=a.datasets[f].pointStrokeColor;b.lineWidth=c.pointDotStrokeWidth;for(g=0;g<a.datasets[f].data.length;g++)b.beginPath(),b.arc(n+m*g,p-d*v(a.datasets[f].data[g],j,k),c.pointDotRadius,0,2*Math.PI,!0),b.fill(),b.stroke()}}},b)},L=function(a,
34
+ c,b){var e,h,f,d,g,k,j,l,m,t,r,n,p,s,w=0;g=u;b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;t=1;for(d=0;d<a.labels.length;d++)e=b.measureText(a.labels[d]).width,t=e>t?e:t;q/a.labels.length<t?(w=45,q/a.labels.length<Math.cos(w)*t?(w=90,g-=t):g-=Math.sin(w)*t):g-=c.scaleFontSize;d=c.scaleFontSize;g=g-5-d;e=Number.MIN_VALUE;h=Number.MAX_VALUE;for(f=0;f<a.datasets.length;f++)for(l=0;l<a.datasets[f].data.length;l++)a.datasets[f].data[l]>e&&(e=a.datasets[f].data[l]),a.datasets[f].data[l]<
35
+ h&&(h=a.datasets[f].data[l]);f=Math.floor(g/(0.66*d));d=Math.floor(0.5*(g/d));l=c.scaleShowLabels?c.scaleLabel:"";c.scaleOverride?(j={steps:c.scaleSteps,stepValue:c.scaleStepWidth,graphMin:c.scaleStartValue,labels:[]},z(l,j.labels,j.steps,c.scaleStartValue,c.scaleStepWidth)):j=C(g,f,d,e,h,l);k=Math.floor(g/j.steps);d=1;if(c.scaleShowLabels){b.font=c.scaleFontStyle+" "+c.scaleFontSize+"px "+c.scaleFontFamily;for(e=0;e<j.labels.length;e++)h=b.measureText(j.labels[e]).width,d=h>d?h:d;d+=10}r=q-d-t;m=
36
+ Math.floor(r/a.labels.length);s=(m-2*c.scaleGridLineWidth-2*c.barValueSpacing-(c.barDatasetSpacing*a.datasets.length-1)-(c.barStrokeWidth/2*a.datasets.length-1))/a.datasets.length;n=q-t/2-r;p=g+c.scaleFontSize/2;x(c,function(){b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(q-t/2+5,p);b.lineTo(q-t/2-r-5,p);b.stroke();0<w?(b.save(),b.textAlign="right"):b.textAlign="center";b.fillStyle=c.scaleFontColor;for(var d=0;d<a.labels.length;d++)b.save(),0<w?(b.translate(n+
37
+ d*m,p+c.scaleFontSize),b.rotate(-(w*(Math.PI/180))),b.fillText(a.labels[d],0,0),b.restore()):b.fillText(a.labels[d],n+d*m+m/2,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+(d+1)*m,p+3),b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+(d+1)*m,5),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;d<j.steps;d++)b.beginPath(),b.moveTo(n-3,p-(d+1)*
38
+ k),c.scaleShowGridLines?(b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+r+5,p-(d+1)*k)):b.lineTo(n-0.5,p-(d+1)*k),b.stroke(),c.scaleShowLabels&&b.fillText(j.labels[d],n-8,p-(d+1)*k)},function(d){b.lineWidth=c.barStrokeWidth;for(var e=0;e<a.datasets.length;e++){b.fillStyle=a.datasets[e].fillColor;b.strokeStyle=a.datasets[e].strokeColor;for(var f=0;f<a.datasets[e].data.length;f++){var g=n+c.barValueSpacing+m*f+s*e+c.barDatasetSpacing*e+c.barStrokeWidth*e;b.beginPath();
39
  b.moveTo(g,p);b.lineTo(g,p-d*v(a.datasets[e].data[f],j,k)+c.barStrokeWidth/2);b.lineTo(g+s,p-d*v(a.datasets[e].data[f],j,k)+c.barStrokeWidth/2);b.lineTo(g+s,p);c.barShowStroke&&b.stroke();b.closePath();b.fill()}}},b)},D=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)},F={}};
assets/js/form.js CHANGED
@@ -1,815 +1,815 @@
1
- /*!
2
- * jQuery Form Plugin
3
- * version: 2.69 (06-APR-2011)
4
- * @requires jQuery v1.3.2 or later
5
- *
6
- * Examples and documentation at: http://malsup.com/jquery/form/
7
- * Dual licensed under the MIT and GPL licenses:
8
- * http://www.opensource.org/licenses/mit-license.php
9
- * http://www.gnu.org/licenses/gpl.html
10
- */
11
- ;(function($) {
12
-
13
- /*
14
- Usage Note:
15
- -----------
16
- Do not use both ajaxSubmit and ajaxForm on the same form. These
17
- functions are intended to be exclusive. Use ajaxSubmit if you want
18
- to bind your own submit handler to the form. For example,
19
-
20
- $(document).ready(function() {
21
- $('#myForm').bind('submit', function(e) {
22
- e.preventDefault(); // <-- important
23
- $(this).ajaxSubmit({
24
- target: '#output'
25
- });
26
- });
27
- });
28
-
29
- Use ajaxForm when you want the plugin to manage all the event binding
30
- for you. For example,
31
-
32
- $(document).ready(function() {
33
- $('#myForm').ajaxForm({
34
- target: '#output'
35
- });
36
- });
37
-
38
- When using ajaxForm, the ajaxSubmit function will be invoked for you
39
- at the appropriate time.
40
- */
41
-
42
- /**
43
- * ajaxSubmit() provides a mechanism for immediately submitting
44
- * an HTML form using AJAX.
45
- */
46
- $.fn.ajaxSubmit = function(options) {
47
- // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
48
- if (!this.length) {
49
- log('ajaxSubmit: skipping submit process - no element selected');
50
- return this;
51
- }
52
-
53
- if (typeof options == 'function') {
54
- options = { success: options };
55
- }
56
-
57
- var action = this.attr('action');
58
- var url = (typeof action === 'string') ? $.trim(action) : '';
59
- if (url) {
60
- // clean url (don't include hash vaue)
61
- url = (url.match(/^([^#]+)/)||[])[1];
62
- }
63
- url = url || window.location.href || '';
64
-
65
- options = $.extend(true, {
66
- url: url,
67
- success: $.ajaxSettings.success,
68
- type: this[0].getAttribute('method') || 'GET', // IE7 massage (see issue 57)
69
- iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
70
- }, options);
71
-
72
- // hook for manipulating the form data before it is extracted;
73
- // convenient for use with rich editors like tinyMCE or FCKEditor
74
- var veto = {};
75
- this.trigger('form-pre-serialize', [this, options, veto]);
76
- if (veto.veto) {
77
- log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
78
- return this;
79
- }
80
-
81
- // provide opportunity to alter form data before it is serialized
82
- if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
83
- log('ajaxSubmit: submit aborted via beforeSerialize callback');
84
- return this;
85
- }
86
-
87
- var n,v,a = this.formToArray(options.semantic);
88
- if (options.data) {
89
- options.extraData = options.data;
90
- for (n in options.data) {
91
- if(options.data[n] instanceof Array) {
92
- for (var k in options.data[n]) {
93
- a.push( { name: n, value: options.data[n][k] } );
94
- }
95
- }
96
- else {
97
- v = options.data[n];
98
- v = $.isFunction(v) ? v() : v; // if value is fn, invoke it
99
- a.push( { name: n, value: v } );
100
- }
101
- }
102
- }
103
-
104
- // give pre-submit callback an opportunity to abort the submit
105
- if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
106
- log('ajaxSubmit: submit aborted via beforeSubmit callback');
107
- return this;
108
- }
109
-
110
- // fire vetoable 'validate' event
111
- this.trigger('form-submit-validate', [a, this, options, veto]);
112
- if (veto.veto) {
113
- log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
114
- return this;
115
- }
116
-
117
- var q = $.param(a);
118
-
119
- if (options.type.toUpperCase() == 'GET') {
120
- options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
121
- options.data = null; // data is null for 'get'
122
- }
123
- else {
124
- options.data = q; // data is the query string for 'post'
125
- }
126
-
127
- var $form = this, callbacks = [];
128
- if (options.resetForm) {
129
- callbacks.push(function() { $form.resetForm(); });
130
- }
131
- if (options.clearForm) {
132
- callbacks.push(function() { $form.clearForm(); });
133
- }
134
-
135
- // perform a load on the target only if dataType is not provided
136
- if (!options.dataType && options.target) {
137
- var oldSuccess = options.success || function(){};
138
- callbacks.push(function(data) {
139
- var fn = options.replaceTarget ? 'replaceWith' : 'html';
140
- $(options.target)[fn](data).each(oldSuccess, arguments);
141
- });
142
- }
143
- else if (options.success) {
144
- callbacks.push(options.success);
145
- }
146
-
147
- options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
148
- var context = options.context || options; // jQuery 1.4+ supports scope context
149
- for (var i=0, max=callbacks.length; i < max; i++) {
150
- callbacks[i].apply(context, [data, status, xhr || $form, $form]);
151
- }
152
- };
153
-
154
- // are there files to upload?
155
- var fileInputs = $('input:file', this).length > 0;
156
- var mp = 'multipart/form-data';
157
- var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
158
-
159
- // options.iframe allows user to force iframe mode
160
- // 06-NOV-09: now defaulting to iframe mode if file input is detected
161
- if (options.iframe !== false && (fileInputs || options.iframe || multipart)) {
162
- // hack to fix Safari hang (thanks to Tim Molendijk for this)
163
- // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
164
- if (options.closeKeepAlive) {
165
- $.get(options.closeKeepAlive, fileUpload);
166
- }
167
- else {
168
- fileUpload();
169
- }
170
- }
171
- else {
172
- $.ajax(options);
173
- }
174
-
175
- // fire 'notify' event
176
- this.trigger('form-submit-notify', [this, options]);
177
- return this;
178
-
179
-
180
- // private function for handling file uploads (hat tip to YAHOO!)
181
- function fileUpload() {
182
- var form = $form[0];
183
-
184
- if ($(':input[name=submit],:input[id=submit]', form).length) {
185
- // if there is an input with a name or id of 'submit' then we won't be
186
- // able to invoke the submit fn on the form (at least not x-browser)
187
- alert('Error: Form elements must not have name or id of "submit".');
188
- return;
189
- }
190
-
191
- var s = $.extend(true, {}, $.ajaxSettings, options);
192
- s.context = s.context || s;
193
- var id = 'jqFormIO' + (new Date().getTime()), fn = '_'+id;
194
- var $io = $('<iframe id="' + id + '" name="' + id + '" src="'+ s.iframeSrc +'" />');
195
- var io = $io[0];
196
-
197
- $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
198
-
199
- var xhr = { // mock object
200
- aborted: 0,
201
- responseText: null,
202
- responseXML: null,
203
- status: 0,
204
- statusText: 'n/a',
205
- getAllResponseHeaders: function() {},
206
- getResponseHeader: function() {},
207
- setRequestHeader: function() {},
208
- abort: function() {
209
- log('aborting upload...');
210
- var e = 'aborted';
211
- this.aborted = 1;
212
- $io.attr('src', s.iframeSrc); // abort op in progress
213
- xhr.error = e;
214
- s.error && s.error.call(s.context, xhr, 'error', e);
215
- g && $.event.trigger("ajaxError", [xhr, s, e]);
216
- s.complete && s.complete.call(s.context, xhr, 'error');
217
- }
218
- };
219
-
220
- var g = s.global;
221
- // trigger ajax global events so that activity/block indicators work like normal
222
- if (g && ! $.active++) {
223
- $.event.trigger("ajaxStart");
224
- }
225
- if (g) {
226
- $.event.trigger("ajaxSend", [xhr, s]);
227
- }
228
-
229
- if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
230
- if (s.global) {
231
- $.active--;
232
- }
233
- return;
234
- }
235
- if (xhr.aborted) {
236
- return;
237
- }
238
-
239
- var timedOut = 0;
240
-
241
- // add submitting element to data if we know it
242
- var sub = form.clk;
243
- if (sub) {
244
- var n = sub.name;
245
- if (n && !sub.disabled) {
246
- s.extraData = s.extraData || {};
247
- s.extraData[n] = sub.value;
248
- if (sub.type == "image") {
249
- s.extraData[n+'.x'] = form.clk_x;
250
- s.extraData[n+'.y'] = form.clk_y;
251
- }
252
- }
253
- }
254
-
255
- // take a breath so that pending repaints get some cpu time before the upload starts
256
- function doSubmit() {
257
- // make sure form attrs are set
258
- var t = $form.attr('target'), a = $form.attr('action');
259
-
260
- // update form attrs in IE friendly way
261
- form.setAttribute('target',id);
262
- if (form.getAttribute('method') != 'POST') {
263
- form.setAttribute('method', 'POST');
264
- }
265
- if (form.getAttribute('action') != s.url) {
266
- form.setAttribute('action', s.url);
267
- }
268
-
269
- // ie borks in some cases when setting encoding
270
- if (! s.skipEncodingOverride) {
271
- $form.attr({
272
- encoding: 'multipart/form-data',
273
- enctype: 'multipart/form-data'
274
- });
275
- }
276
-
277
- // support timout
278
- if (s.timeout) {
279
- setTimeout(function() { timedOut = true; cb(); }, s.timeout);
280
- }
281
-
282
- // add "extra" data to form if provided in options
283
- var extraInputs = [];
284
- try {
285
- if (s.extraData) {
286
- for (var n in s.extraData) {
287
- extraInputs.push(
288
- $('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />')
289
- .appendTo(form)[0]);
290
- }
291
- }
292
-
293
- // add iframe to doc and submit the form
294
- $io.appendTo('body');
295
- io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false);
296
- form.submit();
297
- }
298
- finally {
299
- // reset attrs and remove "extra" input elements
300
- form.setAttribute('action',a);
301
- if(t) {
302
- form.setAttribute('target', t);
303
- } else {
304
- $form.removeAttr('target');
305
- }
306
- $(extraInputs).remove();
307
- }
308
- }
309
-
310
- if (s.forceSync) {
311
- doSubmit();
312
- }
313
- else {
314
- setTimeout(doSubmit, 10); // this lets dom updates render
315
- }
316
-
317
- var data, doc, domCheckCount = 50;
318
-
319
- function cb() {
320
- if (xhr.aborted) {
321
- return;
322
- }
323
-
324
- var doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
325
- if (!doc || doc.location.href == s.iframeSrc) {
326
- // response not received yet
327
- if (!timedOut)
328
- return;
329
- }
330
- io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false);
331
-
332
- var ok = true;
333
- try {
334
- if (timedOut) {
335
- throw 'timeout';
336
- }
337
-
338
- var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
339
- log('isXml='+isXml);
340
- if (!isXml && window.opera && (doc.body == null || doc.body.innerHTML == '')) {
341
- if (--domCheckCount) {
342
- // in some browsers (Opera) the iframe DOM is not always traversable when
343
- // the onload callback fires, so we loop a bit to accommodate
344
- log('requeing onLoad callback, DOM not available');
345
- setTimeout(cb, 250);
346
- return;
347
- }
348
- // let this fall through because server response could be an empty document
349
- //log('Could not access iframe DOM after mutiple tries.');
350
- //throw 'DOMException: not available';
351
- }
352
-
353
- //log('response detected');
354
- xhr.responseText = doc.body ? doc.body.innerHTML : doc.documentElement ? doc.documentElement.innerHTML : null;
355
- xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
356
- xhr.getResponseHeader = function(header){
357
- var headers = {'content-type': s.dataType};
358
- return headers[header];
359
- };
360
-
361
- var scr = /(json|script)/.test(s.dataType);
362
- if (scr || s.textarea) {
363
- // see if user embedded response in textarea
364
- var ta = doc.getElementsByTagName('textarea')[0];
365
- if (ta) {
366
- xhr.responseText = ta.value;
367
- }
368
- else if (scr) {
369
- // account for browsers injecting pre around json response
370
- var pre = doc.getElementsByTagName('pre')[0];
371
- var b = doc.getElementsByTagName('body')[0];
372
- if (pre) {
373
- xhr.responseText = pre.textContent;
374
- }
375
- else if (b) {
376
- xhr.responseText = b.innerHTML;
377
- }
378
- }
379
- }
380
- else if (s.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
381
- xhr.responseXML = toXml(xhr.responseText);
382
- }
383
-
384
- data = httpData(xhr, s.dataType, s);
385
- }
386
- catch(e){
387
- log('error caught:',e);
388
- ok = false;
389
- xhr.error = e;
390
- s.error && s.error.call(s.context, xhr, 'error', e);
391
- g && $.event.trigger("ajaxError", [xhr, s, e]);
392
- }
393
-
394
- if (xhr.aborted) {
395
- log('upload aborted');
396
- ok = false;
397
- }
398
-
399
- // ordering of these callbacks/triggers is odd, but that's how $.ajax does it
400
- if (ok) {
401
- s.success && s.success.call(s.context, data, 'success', xhr);
402
- g && $.event.trigger("ajaxSuccess", [xhr, s]);
403
- }
404
-
405
- g && $.event.trigger("ajaxComplete", [xhr, s]);
406
-
407
- if (g && ! --$.active) {
408
- $.event.trigger("ajaxStop");
409
- }
410
-
411
- s.complete && s.complete.call(s.context, xhr, ok ? 'success' : 'error');
412
-
413
- // clean up
414
- setTimeout(function() {
415
- $io.removeData('form-plugin-onload');
416
- $io.remove();
417
- xhr.responseXML = null;
418
- }, 100);
419
- }
420
-
421
- var toXml = $.parseXML || function(s, doc) { // use parseXML if available (jQuery 1.5+)
422
- if (window.ActiveXObject) {
423
- doc = new ActiveXObject('Microsoft.XMLDOM');
424
- doc.async = 'false';
425
- doc.loadXML(s);
426
- }
427
- else {
428
- doc = (new DOMParser()).parseFromString(s, 'text/xml');
429
- }
430
- return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
431
- };
432
- var parseJSON = $.parseJSON || function(s) {
433
- return window['eval']('(' + s + ')');
434
- };
435
-
436
- var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
437
- var ct = xhr.getResponseHeader('content-type') || '',
438
- xml = type === 'xml' || !type && ct.indexOf('xml') >= 0,
439
- data = xml ? xhr.responseXML : xhr.responseText;
440
-
441
- if (xml && data.documentElement.nodeName === 'parsererror') {
442
- $.error && $.error('parsererror');
443
- }
444
- if (s && s.dataFilter) {
445
- data = s.dataFilter(data, type);
446
- }
447
- if (typeof data === 'string') {
448
- if (type === 'json' || !type && ct.indexOf('json') >= 0) {
449
- data = parseJSON(data);
450
- } else if (type === "script" || !type && ct.indexOf("javascript") >= 0) {
451
- $.globalEval(data);
452
- }
453
- }
454
- return data;
455
- };
456
- }
457
- };
458
-
459
- /**
460
- * ajaxForm() provides a mechanism for fully automating form submission.
461
- *
462
- * The advantages of using this method instead of ajaxSubmit() are:
463
- *
464
- * 1: This method will include coordinates for <input type="image" /> elements (if the element
465
- * is used to submit the form).
466
- * 2. This method will include the submit element's name/value data (for the element that was
467
- * used to submit the form).
468
- * 3. This method binds the submit() method to the form for you.
469
- *
470
- * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
471
- * passes the options argument along after properly binding events for submit elements and
472
- * the form itself.
473
- */
474
- $.fn.ajaxForm = function(options) {
475
- // in jQuery 1.3+ we can fix mistakes with the ready state
476
- if (this.length === 0) {
477
- var o = { s: this.selector, c: this.context };
478
- if (!$.isReady && o.s) {
479
- log('DOM not ready, queuing ajaxForm');
480
- $(function() {
481
- $(o.s,o.c).ajaxForm(options);
482
- });
483
- return this;
484
- }
485
- // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
486
- log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
487
- return this;
488
- }
489
-
490
- return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
491
- if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
492
- e.preventDefault();
493
- $(this).ajaxSubmit(options);
494
- }
495
- }).bind('click.form-plugin', function(e) {
496
- var target = e.target;
497
- var $el = $(target);
498
- if (!($el.is(":submit,input:image"))) {
499
- // is this a child element of the submit el? (ex: a span within a button)
500
- var t = $el.closest(':submit');
501
- if (t.length == 0) {
502
- return;
503
- }
504
- target = t[0];
505
- }
506
- var form = this;
507
- form.clk = target;
508
- if (target.type == 'image') {
509
- if (e.offsetX != undefined) {
510
- form.clk_x = e.offsetX;
511
- form.clk_y = e.offsetY;
512
- } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
513
- var offset = $el.offset();
514
- form.clk_x = e.pageX - offset.left;
515
- form.clk_y = e.pageY - offset.top;
516
- } else {
517
- form.clk_x = e.pageX - target.offsetLeft;
518
- form.clk_y = e.pageY - target.offsetTop;
519
- }
520
- }
521
- // clear form vars
522
- setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
523
- });
524
- };
525
-
526
- // ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
527
- $.fn.ajaxFormUnbind = function() {
528
- return this.unbind('submit.form-plugin click.form-plugin');
529
- };
530
-
531
- /**
532
- * formToArray() gathers form element data into an array of objects that can
533
- * be passed to any of the following ajax functions: $.get, $.post, or load.
534
- * Each object in the array has both a 'name' and 'value' property. An example of
535
- * an array for a simple login form might be:
536
- *
537
- * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
538
- *
539
- * It is this array that is passed to pre-submit callback functions provided to the
540
- * ajaxSubmit() and ajaxForm() methods.
541
- */
542
- $.fn.formToArray = function(semantic) {
543
- var a = [];
544
- if (this.length === 0) {
545
- return a;
546
- }
547
-
548
- var form = this[0];
549
- var els = semantic ? form.getElementsByTagName('*') : form.elements;
550
- if (!els) {
551
- return a;
552
- }
553
-
554
- var i,j,n,v,el,max,jmax;
555
- for(i=0, max=els.length; i < max; i++) {
556
- el = els[i];
557
- n = el.name;
558
- if (!n) {
559
- continue;
560
- }
561
-
562
- if (semantic && form.clk && el.type == "image") {
563
- // handle image inputs on the fly when semantic == true
564
- if(!el.disabled && form.clk == el) {
565
- a.push({name: n, value: $(el).val()});
566
- a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
567
- }
568
- continue;
569
- }
570
-
571
- v = $.fieldValue(el, true);
572
- if (v && v.constructor == Array) {
573
- for(j=0, jmax=v.length; j < jmax; j++) {
574
- a.push({name: n, value: v[j]});
575
- }
576
- }
577
- else if (v !== null && typeof v != 'undefined') {
578
- a.push({name: n, value: v});
579
- }
580
- }
581
-
582
- if (!semantic && form.clk) {
583
- // input type=='image' are not found in elements array! handle it here
584
- var $input = $(form.clk), input = $input[0];
585
- n = input.name;
586
- if (n && !input.disabled && input.type == 'image') {
587
- a.push({name: n, value: $input.val()});
588
- a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
589
- }
590
- }
591
- return a;
592
- };
593
-
594
- /**
595
- * Serializes form data into a 'submittable' string. This method will return a string
596
- * in the format: name1=value1&amp;name2=value2
597
- */
598
- $.fn.formSerialize = function(semantic) {
599
- //hand off to jQuery.param for proper encoding
600
- return $.param(this.formToArray(semantic));
601
- };
602
-
603
- /**
604
- * Serializes all field elements in the jQuery object into a query string.
605
- * This method will return a string in the format: name1=value1&amp;name2=value2
606
- */
607
- $.fn.fieldSerialize = function(successful) {
608
- var a = [];
609
- this.each(function() {
610
- var n = this.name;
611
- if (!n) {
612
- return;
613
- }
614
- var v = $.fieldValue(this, successful);
615
- if (v && v.constructor == Array) {
616
- for (var i=0,max=v.length; i < max; i++) {
617
- a.push({name: n, value: v[i]});
618
- }
619
- }
620
- else if (v !== null && typeof v != 'undefined') {
621
- a.push({name: this.name, value: v});
622
- }
623
- });
624
- //hand off to jQuery.param for proper encoding
625
- return $.param(a);
626
- };
627
-
628
- /**
629
- * Returns the value(s) of the element in the matched set. For example, consider the following form:
630
- *
631
- * <form><fieldset>
632
- * <input name="A" type="text" />
633
- * <input name="A" type="text" />
634
- * <input name="B" type="checkbox" value="B1" />
635
- * <input name="B" type="checkbox" value="B2"/>
636
- * <input name="C" type="radio" value="C1" />
637
- * <input name="C" type="radio" value="C2" />
638
- * </fieldset></form>
639
- *
640
- * var v = $(':text').fieldValue();
641
- * // if no values are entered into the text inputs
642
- * v == ['','']
643
- * // if values entered into the text inputs are 'foo' and 'bar'
644
- * v == ['foo','bar']
645
- *
646
- * var v = $(':checkbox').fieldValue();
647
- * // if neither checkbox is checked
648
- * v === undefined
649
- * // if both checkboxes are checked
650
- * v == ['B1', 'B2']
651
- *
652
- * var v = $(':radio').fieldValue();
653
- * // if neither radio is checked
654
- * v === undefined
655
- * // if first radio is checked
656
- * v == ['C1']
657
- *
658
- * The successful argument controls whether or not the field element must be 'successful'
659
- * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
660
- * The default value of the successful argument is true. If this value is false the value(s)
661
- * for each element is returned.
662
- *
663
- * Note: This method *always* returns an array. If no valid value can be determined the
664
- * array will be empty, otherwise it will contain one or more values.
665
- */
666
- $.fn.fieldValue = function(successful) {
667
- for (var val=[], i=0, max=this.length; i < max; i++) {
668
- var el = this[i];
669
- var v = $.fieldValue(el, successful);
670
- if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
671
- continue;
672
- }
673
- v.constructor == Array ? $.merge(val, v) : val.push(v);
674
- }
675
- return val;
676
- };
677
-
678
- /**
679
- * Returns the value of the field element.
680
- */
681
- $.fieldValue = function(el, successful) {
682
- var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
683
- if (successful === undefined) {
684
- successful = true;
685
- }
686
-
687
- if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
688
- (t == 'checkbox' || t == 'radio') && !el.checked ||
689
- (t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
690
- tag == 'select' && el.selectedIndex == -1)) {
691
- return null;
692
- }
693
-
694
- if (tag == 'select') {
695
- var index = el.selectedIndex;
696
- if (index < 0) {
697
- return null;
698
- }
699
- var a = [], ops = el.options;
700
- var one = (t == 'select-one');
701
- var max = (one ? index+1 : ops.length);
702
- for(var i=(one ? index : 0); i < max; i++) {
703
- var op = ops[i];
704
- if (op.selected) {
705
- var v = op.value;
706
- if (!v) { // extra pain for IE...
707
- v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
708
- }
709
- if (one) {
710
- return v;
711
- }
712
- a.push(v);
713
- }
714
- }
715
- return a;
716
- }
717
- return $(el).val();
718
- };
719
-
720
- /**
721
- * Clears the form data. Takes the following actions on the form's input fields:
722
- * - input text fields will have their 'value' property set to the empty string
723
- * - select elements will have their 'selectedIndex' property set to -1
724
- * - checkbox and radio inputs will have their 'checked' property set to false
725
- * - inputs of type submit, button, reset, and hidden will *not* be effected
726
- * - button elements will *not* be effected
727
- */
728
- $.fn.clearForm = function() {
729
- return this.each(function() {
730
- $('input,select,textarea', this).clearFields();
731
- });
732
- };
733
-
734
- /**
735
- * Clears the selected form elements.
736
- */
737
- $.fn.clearFields = $.fn.clearInputs = function() {
738
- return this.each(function() {
739
- var t = this.type, tag = this.tagName.toLowerCase();
740
- if (t == 'text' || t == 'password' || tag == 'textarea') {
741
- this.value = '';
742
- }
743
- else if (t == 'checkbox' || t == 'radio') {
744
- this.checked = false;
745
- }
746
- else if (tag == 'select') {
747
- this.selectedIndex = -1;
748
- }
749
- });
750
- };
751
-
752
- /**
753
- * Resets the form data. Causes all form elements to be reset to their original value.
754
- */
755
- $.fn.resetForm = function() {
756
- return this.each(function() {
757
- // guard against an input with the name of 'reset'
758
- // note that IE reports the reset function as an 'object'
759
- if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
760
- this.reset();
761
- }
762
- });
763
- };
764
-
765
- /**
766
- * Enables or disables any matching elements.
767
- */
768
- $.fn.enable = function(b) {
769
- if (b === undefined) {
770
- b = true;
771
- }
772
- return this.each(function() {
773
- this.disabled = !b;
774
- });
775
- };
776
-
777
- /**
778
- * Checks/unchecks any matching checkboxes or radio buttons and
779
- * selects/deselects and matching option elements.
780
- */
781
- $.fn.selected = function(select) {
782
- if (select === undefined) {
783
- select = true;
784
- }
785
- return this.each(function() {
786
- var t = this.type;
787
- if (t == 'checkbox' || t == 'radio') {
788
- this.checked = select;
789
- }
790
- else if (this.tagName.toLowerCase() == 'option') {
791
- var $sel = $(this).parent('select');
792
- if (select && $sel[0] && $sel[0].type == 'select-one') {
793
- // deselect all other options
794
- $sel.find('option').selected(false);
795
- }
796
- this.selected = select;
797
- }
798
- });
799
- };
800
-
801
- // helper fn for console logging
802
- // set $.fn.ajaxSubmit.debug to true to enable debug logging
803
- function log() {
804
- if ($.fn.ajaxSubmit.debug) {
805
- var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
806
- if (window.console && window.console.log) {
807
- window.console.log(msg);
808
- }
809
- else if (window.opera && window.opera.postError) {
810
- window.opera.postError(msg);
811
- }
812
- }
813
- };
814
-
815
- })(jQuery);
1
+ /*!
2
+ * jQuery Form Plugin
3
+ * version: 2.69 (06-APR-2011)
4
+ * @requires jQuery v1.3.2 or later
5
+ *
6
+ * Examples and documentation at: http://malsup.com/jquery/form/
7
+ * Dual licensed under the MIT and GPL licenses:
8
+ * http://www.opensource.org/licenses/mit-license.php
9
+ * http://www.gnu.org/licenses/gpl.html
10
+ */
11
+ ;(function($) {
12
+
13
+ /*
14
+ Usage Note:
15
+ -----------
16
+ Do not use both ajaxSubmit and ajaxForm on the same form. These
17
+ functions are intended to be exclusive. Use ajaxSubmit if you want
18
+ to bind your own submit handler to the form. For example,
19
+
20
+ $(document).ready(function() {
21
+ $('#myForm').bind('submit', function(e) {
22
+ e.preventDefault(); // <-- important
23
+ $(this).ajaxSubmit({
24
+ target: '#output'
25
+ });
26
+ });
27
+ });
28
+
29
+ Use ajaxForm when you want the plugin to manage all the event binding
30
+ for you. For example,
31
+
32
+ $(document).ready(function() {
33
+ $('#myForm').ajaxForm({
34
+ target: '#output'
35
+ });
36
+ });
37
+
38
+ When using ajaxForm, the ajaxSubmit function will be invoked for you
39
+ at the appropriate time.
40
+ */
41
+
42
+ /**
43
+ * ajaxSubmit() provides a mechanism for immediately submitting
44
+ * an HTML form using AJAX.
45
+ */
46
+ $.fn.ajaxSubmit = function(options) {
47
+ // fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
48
+ if (!this.length) {
49
+ log('ajaxSubmit: skipping submit process - no element selected');
50
+ return this;
51
+ }
52
+
53
+ if (typeof options == 'function') {
54
+ options = { success: options };
55
+ }
56
+
57
+ var action = this.attr('action');
58
+ var url = (typeof action === 'string') ? $.trim(action) : '';
59
+ if (url) {
60
+ // clean url (don't include hash vaue)
61
+ url = (url.match(/^([^#]+)/)||[])[1];
62
+ }
63
+ url = url || window.location.href || '';
64
+
65
+ options = $.extend(true, {
66
+ url: url,
67
+ success: $.ajaxSettings.success,
68
+ type: this[0].getAttribute('method') || 'GET', // IE7 massage (see issue 57)
69
+ iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
70
+ }, options);
71
+
72
+ // hook for manipulating the form data before it is extracted;
73
+ // convenient for use with rich editors like tinyMCE or FCKEditor
74
+ var veto = {};
75
+ this.trigger('form-pre-serialize', [this, options, veto]);
76
+ if (veto.veto) {
77
+ log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
78
+ return this;
79
+ }
80
+
81
+ // provide opportunity to alter form data before it is serialized
82
+ if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
83
+ log('ajaxSubmit: submit aborted via beforeSerialize callback');
84
+ return this;
85
+ }
86
+
87
+ var n,v,a = this.formToArray(options.semantic);
88
+ if (options.data) {
89
+ options.extraData = options.data;
90
+ for (n in options.data) {
91
+ if(options.data[n] instanceof Array) {
92
+ for (var k in options.data[n]) {
93
+ a.push( { name: n, value: options.data[n][k] } );
94
+ }
95
+ }
96
+ else {
97
+ v = options.data[n];
98
+ v = $.isFunction(v) ? v() : v; // if value is fn, invoke it
99
+ a.push( { name: n, value: v } );
100
+ }
101
+ }
102
+ }
103
+
104
+ // give pre-submit callback an opportunity to abort the submit
105
+ if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
106
+ log('ajaxSubmit: submit aborted via beforeSubmit callback');
107
+ return this;
108
+ }
109
+
110
+ // fire vetoable 'validate' event
111
+ this.trigger('form-submit-validate', [a, this, options, veto]);
112
+ if (veto.veto) {
113
+ log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
114
+ return this;
115
+ }
116
+
117
+ var q = $.param(a);
118
+
119
+ if (options.type.toUpperCase() == 'GET') {
120
+ options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
121
+ options.data = null; // data is null for 'get'
122
+ }
123
+ else {
124
+ options.data = q; // data is the query string for 'post'
125
+ }
126
+
127
+ var $form = this, callbacks = [];
128
+ if (options.resetForm) {
129
+ callbacks.push(function() { $form.resetForm(); });
130
+ }
131
+ if (options.clearForm) {
132
+ callbacks.push(function() { $form.clearForm(); });
133
+ }
134
+
135
+ // perform a load on the target only if dataType is not provided
136
+ if (!options.dataType && options.target) {
137
+ var oldSuccess = options.success || function(){};
138
+ callbacks.push(function(data) {
139
+ var fn = options.replaceTarget ? 'replaceWith' : 'html';
140
+ $(options.target)[fn](data).each(oldSuccess, arguments);
141
+ });
142
+ }
143
+ else if (options.success) {
144
+ callbacks.push(options.success);
145
+ }
146
+
147
+ options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
148
+ var context = options.context || options; // jQuery 1.4+ supports scope context
149
+ for (var i=0, max=callbacks.length; i < max; i++) {
150
+ callbacks[i].apply(context, [data, status, xhr || $form, $form]);
151
+ }
152
+ };
153
+
154
+ // are there files to upload?
155
+ var fileInputs = $('input:file', this).length > 0;
156
+ var mp = 'multipart/form-data';
157
+ var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
158
+
159
+ // options.iframe allows user to force iframe mode
160
+ // 06-NOV-09: now defaulting to iframe mode if file input is detected
161
+ if (options.iframe !== false && (fileInputs || options.iframe || multipart)) {
162
+ // hack to fix Safari hang (thanks to Tim Molendijk for this)
163
+ // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
164
+ if (options.closeKeepAlive) {
165
+ $.get(options.closeKeepAlive, fileUpload);
166
+ }
167
+ else {
168
+ fileUpload();
169
+ }
170
+ }
171
+ else {
172
+ $.ajax(options);
173
+ }
174
+
175
+ // fire 'notify' event
176
+ this.trigger('form-submit-notify', [this, options]);
177
+ return this;
178
+
179
+
180
+ // private function for handling file uploads (hat tip to YAHOO!)
181
+ function fileUpload() {
182
+ var form = $form[0];
183
+
184
+ if ($(':input[name=submit],:input[id=submit]', form).length) {
185
+ // if there is an input with a name or id of 'submit' then we won't be
186
+ // able to invoke the submit fn on the form (at least not x-browser)
187
+ alert('Error: Form elements must not have name or id of "submit".');
188
+ return;
189
+ }
190
+
191
+ var s = $.extend(true, {}, $.ajaxSettings, options);
192
+ s.context = s.context || s;
193
+ var id = 'jqFormIO' + (new Date().getTime()), fn = '_'+id;
194
+ var $io = $('<iframe id="' + id + '" name="' + id + '" src="'+ s.iframeSrc +'" />');
195
+ var io = $io[0];
196
+
197
+ $io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
198
+
199
+ var xhr = { // mock object
200
+ aborted: 0,
201
+ responseText: null,
202
+ responseXML: null,
203
+ status: 0,
204
+ statusText: 'n/a',
205
+ getAllResponseHeaders: function() {},
206
+ getResponseHeader: function() {},
207
+ setRequestHeader: function() {},
208
+ abort: function() {
209
+ log('aborting upload...');
210
+ var e = 'aborted';
211
+ this.aborted = 1;
212
+ $io.attr('src', s.iframeSrc); // abort op in progress
213
+ xhr.error = e;
214
+ s.error && s.error.call(s.context, xhr, 'error', e);
215
+ g && $.event.trigger("ajaxError", [xhr, s, e]);
216
+ s.complete && s.complete.call(s.context, xhr, 'error');
217
+ }
218
+ };
219
+
220
+ var g = s.global;
221
+ // trigger ajax global events so that activity/block indicators work like normal
222
+ if (g && ! $.active++) {
223
+ $.event.trigger("ajaxStart");
224
+ }
225
+ if (g) {
226
+ $.event.trigger("ajaxSend", [xhr, s]);
227
+ }
228
+
229
+ if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
230
+ if (s.global) {
231
+ $.active--;
232
+ }
233
+ return;
234
+ }
235
+ if (xhr.aborted) {
236
+ return;
237
+ }
238
+
239
+ var timedOut = 0;
240
+
241
+ // add submitting element to data if we know it
242
+ var sub = form.clk;
243
+ if (sub) {
244
+ var n = sub.name;
245
+ if (n && !sub.disabled) {
246
+ s.extraData = s.extraData || {};
247
+ s.extraData[n] = sub.value;
248
+ if (sub.type == "image") {
249
+ s.extraData[n+'.x'] = form.clk_x;
250
+ s.extraData[n+'.y'] = form.clk_y;
251
+ }
252
+ }
253
+ }
254
+
255
+ // take a breath so that pending repaints get some cpu time before the upload starts
256
+ function doSubmit() {
257
+ // make sure form attrs are set
258
+ var t = $form.attr('target'), a = $form.attr('action');
259
+
260
+ // update form attrs in IE friendly way
261
+ form.setAttribute('target',id);
262
+ if (form.getAttribute('method') != 'POST') {
263
+ form.setAttribute('method', 'POST');
264
+ }
265
+ if (form.getAttribute('action') != s.url) {
266
+ form.setAttribute('action', s.url);
267
+ }
268
+
269
+ // ie borks in some cases when setting encoding
270
+ if (! s.skipEncodingOverride) {
271
+ $form.attr({
272
+ encoding: 'multipart/form-data',
273
+ enctype: 'multipart/form-data'
274
+ });
275
+ }
276
+
277
+ // support timout
278
+ if (s.timeout) {
279
+ setTimeout(function() { timedOut = true; cb(); }, s.timeout);
280
+ }
281
+
282
+ // add "extra" data to form if provided in options
283
+ var extraInputs = [];
284
+ try {
285
+ if (s.extraData) {
286
+ for (var n in s.extraData) {
287
+ extraInputs.push(
288
+ $('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />')
289
+ .appendTo(form)[0]);
290
+ }
291
+ }
292
+
293
+ // add iframe to doc and submit the form
294
+ $io.appendTo('body');
295
+ io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false);
296
+ form.submit();
297
+ }
298
+ finally {
299
+ // reset attrs and remove "extra" input elements
300
+ form.setAttribute('action',a);
301
+ if(t) {
302
+ form.setAttribute('target', t);
303
+ } else {
304
+ $form.removeAttr('target');
305
+ }
306
+ $(extraInputs).remove();
307
+ }
308
+ }
309
+
310
+ if (s.forceSync) {
311
+ doSubmit();
312
+ }
313
+ else {
314
+ setTimeout(doSubmit, 10); // this lets dom updates render
315
+ }
316
+
317
+ var data, doc, domCheckCount = 50;
318
+
319
+ function cb() {
320
+ if (xhr.aborted) {
321
+ return;
322
+ }
323
+
324
+ var doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
325
+ if (!doc || doc.location.href == s.iframeSrc) {
326
+ // response not received yet
327
+ if (!timedOut)
328
+ return;
329
+ }
330
+ io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false);
331
+
332
+ var ok = true;
333
+ try {
334
+ if (timedOut) {
335
+ throw 'timeout';
336
+ }
337
+
338
+ var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
339
+ log('isXml='+isXml);
340
+ if (!isXml && window.opera && (doc.body == null || doc.body.innerHTML == '')) {
341
+ if (--domCheckCount) {
342
+ // in some browsers (Opera) the iframe DOM is not always traversable when
343
+ // the onload callback fires, so we loop a bit to accommodate
344
+ log('requeing onLoad callback, DOM not available');
345
+ setTimeout(cb, 250);
346
+ return;
347
+ }
348
+ // let this fall through because server response could be an empty document
349
+ //log('Could not access iframe DOM after mutiple tries.');
350
+ //throw 'DOMException: not available';
351
+ }
352
+
353
+ //log('response detected');
354
+ xhr.responseText = doc.body ? doc.body.innerHTML : doc.documentElement ? doc.documentElement.innerHTML : null;
355
+ xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
356
+ xhr.getResponseHeader = function(header){
357
+ var headers = {'content-type': s.dataType};
358
+ return headers[header];
359
+ };
360
+
361
+ var scr = /(json|script)/.test(s.dataType);
362
+ if (scr || s.textarea) {
363
+ // see if user embedded response in textarea
364
+ var ta = doc.getElementsByTagName('textarea')[0];
365
+ if (ta) {
366
+ xhr.responseText = ta.value;
367
+ }
368
+ else if (scr) {
369
+ // account for browsers injecting pre around json response
370
+ var pre = doc.getElementsByTagName('pre')[0];
371
+ var b = doc.getElementsByTagName('body')[0];
372
+ if (pre) {
373
+ xhr.responseText = pre.textContent;
374
+ }
375
+ else if (b) {
376
+ xhr.responseText = b.innerHTML;
377
+ }
378
+ }
379
+ }
380
+ else if (s.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
381
+ xhr.responseXML = toXml(xhr.responseText);
382
+ }
383
+
384
+ data = httpData(xhr, s.dataType, s);
385
+ }
386
+ catch(e){
387
+ log('error caught:',e);
388
+ ok = false;
389
+ xhr.error = e;
390
+ s.error && s.error.call(s.context, xhr, 'error', e);
391
+ g && $.event.trigger("ajaxError", [xhr, s, e]);
392
+ }
393
+
394
+ if (xhr.aborted) {
395
+ log('upload aborted');
396
+ ok = false;
397
+ }
398
+
399
+ // ordering of these callbacks/triggers is odd, but that's how $.ajax does it
400
+ if (ok) {
401
+ s.success && s.success.call(s.context, data, 'success', xhr);
402
+ g && $.event.trigger("ajaxSuccess", [xhr, s]);
403
+ }
404
+
405
+ g && $.event.trigger("ajaxComplete", [xhr, s]);
406
+
407
+ if (g && ! --$.active) {
408
+ $.event.trigger("ajaxStop");
409
+ }
410
+
411
+ s.complete && s.complete.call(s.context, xhr, ok ? 'success' : 'error');
412
+
413
+ // clean up
414
+ setTimeout(function() {
415
+ $io.removeData('form-plugin-onload');
416
+ $io.remove();
417
+ xhr.responseXML = null;
418
+ }, 100);
419
+ }
420
+
421
+ var toXml = $.parseXML || function(s, doc) { // use parseXML if available (jQuery 1.5+)
422
+ if (window.ActiveXObject) {
423
+ doc = new ActiveXObject('Microsoft.XMLDOM');
424
+ doc.async = 'false';
425
+ doc.loadXML(s);
426
+ }
427
+ else {
428
+ doc = (new DOMParser()).parseFromString(s, 'text/xml');
429
+ }
430
+ return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
431
+ };
432
+ var parseJSON = $.parseJSON || function(s) {
433
+ return window['eval']('(' + s + ')');
434
+ };
435
+
436
+ var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
437
+ var ct = xhr.getResponseHeader('content-type') || '',
438
+ xml = type === 'xml' || !type && ct.indexOf('xml') >= 0,
439
+ data = xml ? xhr.responseXML : xhr.responseText;
440
+
441
+ if (xml && data.documentElement.nodeName === 'parsererror') {
442
+ $.error && $.error('parsererror');
443
+ }
444
+ if (s && s.dataFilter) {
445
+ data = s.dataFilter(data, type);
446
+ }
447
+ if (typeof data === 'string') {
448
+ if (type === 'json' || !type && ct.indexOf('json') >= 0) {
449
+ data = parseJSON(data);
450
+ } else if (type === "script" || !type && ct.indexOf("javascript") >= 0) {
451
+ $.globalEval(data);
452
+ }
453
+ }
454
+ return data;
455
+ };
456
+ }
457
+ };
458
+
459
+ /**
460
+ * ajaxForm() provides a mechanism for fully automating form submission.
461
+ *
462
+ * The advantages of using this method instead of ajaxSubmit() are:
463
+ *
464
+ * 1: This method will include coordinates for <input type="image" /> elements (if the element
465
+ * is used to submit the form).
466
+ * 2. This method will include the submit element's name/value data (for the element that was
467
+ * used to submit the form).
468
+ * 3. This method binds the submit() method to the form for you.
469
+ *
470
+ * The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
471
+ * passes the options argument along after properly binding events for submit elements and
472
+ * the form itself.
473
+ */
474
+ $.fn.ajaxForm = function(options) {
475
+ // in jQuery 1.3+ we can fix mistakes with the ready state
476
+ if (this.length === 0) {
477
+ var o = { s: this.selector, c: this.context };
478
+ if (!$.isReady && o.s) {
479
+ log('DOM not ready, queuing ajaxForm');
480
+ $(function() {
481
+ $(o.s,o.c).ajaxForm(options);
482
+ });
483
+ return this;
484
+ }
485
+ // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
486
+ log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
487
+ return this;
488
+ }
489
+
490
+ return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
491
+ if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
492
+ e.preventDefault();
493
+ $(this).ajaxSubmit(options);
494
+ }
495
+ }).bind('click.form-plugin', function(e) {
496
+ var target = e.target;
497
+ var $el = $(target);
498
+ if (!($el.is(":submit,input:image"))) {
499
+ // is this a child element of the submit el? (ex: a span within a button)
500
+ var t = $el.closest(':submit');
501
+ if (t.length == 0) {
502
+ return;
503
+ }
504
+ target = t[0];
505
+ }
506
+ var form = this;
507
+ form.clk = target;
508
+ if (target.type == 'image') {
509
+ if (e.offsetX != undefined) {
510
+ form.clk_x = e.offsetX;
511
+ form.clk_y = e.offsetY;
512
+ } else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
513
+ var offset = $el.offset();
514
+ form.clk_x = e.pageX - offset.left;
515
+ form.clk_y = e.pageY - offset.top;
516
+ } else {
517
+ form.clk_x = e.pageX - target.offsetLeft;
518
+ form.clk_y = e.pageY - target.offsetTop;
519
+ }
520
+ }
521
+ // clear form vars
522
+ setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
523
+ });
524
+ };
525
+
526
+ // ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
527
+ $.fn.ajaxFormUnbind = function() {
528
+ return this.unbind('submit.form-plugin click.form-plugin');
529
+ };
530
+
531
+ /**
532
+ * formToArray() gathers form element data into an array of objects that can
533
+ * be passed to any of the following ajax functions: $.get, $.post, or load.
534
+ * Each object in the array has both a 'name' and 'value' property. An example of
535
+ * an array for a simple login form might be:
536
+ *
537
+ * [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
538
+ *
539
+ * It is this array that is passed to pre-submit callback functions provided to the
540
+ * ajaxSubmit() and ajaxForm() methods.
541
+ */
542
+ $.fn.formToArray = function(semantic) {
543
+ var a = [];
544
+ if (this.length === 0) {
545
+ return a;
546
+ }
547
+
548
+ var form = this[0];
549
+ var els = semantic ? form.getElementsByTagName('*') : form.elements;
550
+ if (!els) {
551
+ return a;
552
+ }
553
+
554
+ var i,j,n,v,el,max,jmax;
555
+ for(i=0, max=els.length; i < max; i++) {
556
+ el = els[i];
557
+ n = el.name;
558
+ if (!n) {
559
+ continue;
560
+ }
561
+
562
+ if (semantic && form.clk && el.type == "image") {
563
+ // handle image inputs on the fly when semantic == true
564
+ if(!el.disabled && form.clk == el) {
565
+ a.push({name: n, value: $(el).val()});
566
+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
567
+ }
568
+ continue;
569
+ }
570
+
571
+ v = $.fieldValue(el, true);
572
+ if (v && v.constructor == Array) {
573
+ for(j=0, jmax=v.length; j < jmax; j++) {
574
+ a.push({name: n, value: v[j]});
575
+ }
576
+ }
577
+ else if (v !== null && typeof v != 'undefined') {
578
+ a.push({name: n, value: v});
579
+ }
580
+ }
581
+
582
+ if (!semantic && form.clk) {
583
+ // input type=='image' are not found in elements array! handle it here
584
+ var $input = $(form.clk), input = $input[0];
585
+ n = input.name;
586
+ if (n && !input.disabled && input.type == 'image') {
587
+ a.push({name: n, value: $input.val()});
588
+ a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
589
+ }
590
+ }
591
+ return a;
592
+ };
593
+
594
+ /**
595
+ * Serializes form data into a 'submittable' string. This method will return a string
596
+ * in the format: name1=value1&amp;name2=value2
597
+ */
598
+ $.fn.formSerialize = function(semantic) {
599
+ //hand off to jQuery.param for proper encoding
600
+ return $.param(this.formToArray(semantic));
601
+ };
602
+
603
+ /**
604
+ * Serializes all field elements in the jQuery object into a query string.
605
+ * This method will return a string in the format: name1=value1&amp;name2=value2
606
+ */
607
+ $.fn.fieldSerialize = function(successful) {
608
+ var a = [];
609
+ this.each(function() {
610
+ var n = this.name;
611
+ if (!n) {
612
+ return;
613
+ }
614
+ var v = $.fieldValue(this, successful);
615
+ if (v && v.constructor == Array) {
616
+ for (var i=0,max=v.length; i < max; i++) {
617
+ a.push({name: n, value: v[i]});
618
+ }
619
+ }
620
+ else if (v !== null && typeof v != 'undefined') {
621
+ a.push({name: this.name, value: v});
622
+ }
623
+ });
624
+ //hand off to jQuery.param for proper encoding
625
+ return $.param(a);
626
+ };
627
+
628
+ /**
629
+ * Returns the value(s) of the element in the matched set. For example, consider the following form:
630
+ *
631
+ * <form><fieldset>
632
+ * <input name="A" type="text" />
633
+ * <input name="A" type="text" />
634
+ * <input name="B" type="checkbox" value="B1" />
635
+ * <input name="B" type="checkbox" value="B2"/>
636
+ * <input name="C" type="radio" value="C1" />
637
+ * <input name="C" type="radio" value="C2" />
638
+ * </fieldset></form>
639
+ *
640
+ * var v = $(':text').fieldValue();
641
+ * // if no values are entered into the text inputs
642
+ * v == ['','']
643
+ * // if values entered into the text inputs are 'foo' and 'bar'
644
+ * v == ['foo','bar']
645
+ *
646
+ * var v = $(':checkbox').fieldValue();
647
+ * // if neither checkbox is checked
648
+ * v === undefined
649
+ * // if both checkboxes are checked
650
+ * v == ['B1', 'B2']
651
+ *
652
+ * var v = $(':radio').fieldValue();
653
+ * // if neither radio is checked
654
+ * v === undefined
655
+ * // if first radio is checked
656
+ * v == ['C1']
657
+ *
658
+ * The successful argument controls whether or not the field element must be 'successful'
659
+ * (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
660
+ * The default value of the successful argument is true. If this value is false the value(s)
661
+ * for each element is returned.
662
+ *
663
+ * Note: This method *always* returns an array. If no valid value can be determined the
664
+ * array will be empty, otherwise it will contain one or more values.
665
+ */
666
+ $.fn.fieldValue = function(successful) {
667
+ for (var val=[], i=0, max=this.length; i < max; i++) {
668
+ var el = this[i];
669
+ var v = $.fieldValue(el, successful);
670
+ if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
671
+ continue;
672
+ }
673
+ v.constructor == Array ? $.merge(val, v) : val.push(v);
674
+ }
675
+ return val;
676
+ };
677
+
678
+ /**
679
+ * Returns the value of the field element.
680
+ */
681
+ $.fieldValue = function(el, successful) {
682
+ var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
683
+ if (successful === undefined) {
684
+ successful = true;
685
+ }
686
+
687
+ if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
688
+ (t == 'checkbox' || t == 'radio') && !el.checked ||
689
+ (t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
690
+ tag == 'select' && el.selectedIndex == -1)) {
691
+ return null;
692
+ }
693
+
694
+ if (tag == 'select') {
695
+ var index = el.selectedIndex;
696
+ if (index < 0) {
697
+ return null;
698
+ }
699
+ var a = [], ops = el.options;
700
+ var one = (t == 'select-one');
701
+ var max = (one ? index+1 : ops.length);
702
+ for(var i=(one ? index : 0); i < max; i++) {
703
+ var op = ops[i];
704
+ if (op.selected) {
705
+ var v = op.value;
706
+ if (!v) { // extra pain for IE...
707
+ v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
708
+ }
709
+ if (one) {
710
+ return v;
711
+ }
712
+ a.push(v);
713
+ }
714
+ }
715
+ return a;
716
+ }
717
+ return $(el).val();
718
+ };
719
+
720
+ /**
721
+ * Clears the form data. Takes the following actions on the form's input fields:
722
+ * - input text fields will have their 'value' property set to the empty string
723
+ * - select elements will have their 'selectedIndex' property set to -1
724
+ * - checkbox and radio inputs will have their 'checked' property set to false
725
+ * - inputs of type submit, button, reset, and hidden will *not* be effected
726
+ * - button elements will *not* be effected
727
+ */
728
+ $.fn.clearForm = function() {
729
+ return this.each(function() {
730
+ $('input,select,textarea', this).clearFields();
731
+ });
732
+ };
733
+
734
+ /**
735
+ * Clears the selected form elements.
736
+ */
737
+ $.fn.clearFields = $.fn.clearInputs = function() {
738
+ return this.each(function() {
739
+ var t = this.type, tag = this.tagName.toLowerCase();
740
+ if (t == 'text' || t == 'password' || tag == 'textarea') {
741
+ this.value = '';
742
+ }
743
+ else if (t == 'checkbox' || t == 'radio') {
744
+ this.checked = false;
745
+ }
746
+ else if (tag == 'select') {
747
+ this.selectedIndex = -1;
748
+ }
749
+ });
750
+ };
751
+
752
+ /**
753
+ * Resets the form data. Causes all form elements to be reset to their original value.
754
+ */
755
+ $.fn.resetForm = function() {
756
+ return this.each(function() {
757
+ // guard against an input with the name of 'reset'
758
+ // note that IE reports the reset function as an 'object'
759
+ if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
760
+ this.reset();
761
+ }
762
+ });
763
+ };
764
+
765
+ /**
766
+ * Enables or disables any matching elements.
767
+ */
768
+ $.fn.enable = function(b) {
769
+ if (b === undefined) {
770
+ b = true;
771
+ }
772
+ return this.each(function() {
773
+ this.disabled = !b;
774
+ });
775
+ };
776
+
777
+ /**
778
+ * Checks/unchecks any matching checkboxes or radio buttons and
779
+ * selects/deselects and matching option elements.
780
+ */
781
+ $.fn.selected = function(select) {
782
+ if (select === undefined) {
783
+ select = true;
784
+ }
785
+ return this.each(function() {
786
+ var t = this.type;
787
+ if (t == 'checkbox' || t == 'radio') {
788
+ this.checked = select;
789
+ }
790
+ else if (this.tagName.toLowerCase() == 'option') {
791
+ var $sel = $(this).parent('select');
792
+ if (select && $sel[0] && $sel[0].type == 'select-one') {
793
+ // deselect all other options
794
+ $sel.find('option').selected(false);
795
+ }
796
+ this.selected = select;
797
+ }
798
+ });
799
+ };
800
+
801
+ // helper fn for console logging
802
+ // set $.fn.ajaxSubmit.debug to true to enable debug logging
803
+ function log() {
804
+ if ($.fn.ajaxSubmit.debug) {
805
+ var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
806
+ if (window.console && window.console.log) {
807
+ window.console.log(msg);
808
+ }
809
+ else if (window.opera && window.opera.postError) {
810
+ window.opera.postError(msg);
811
+ }
812
+ }
813
+ };
814
+
815
+ })(jQuery);
assets/js/galleries-shortcodes.js CHANGED
@@ -1,94 +1,94 @@
1
- jQuery(document).ready(function ($) {
2
- // Prepare items arrays for lightbox
3
- $('.su-lightbox-gallery').each(function () {
4
- var slides = [];
5
- $(this).find('.su-slider-slide, .su-carousel-slide, .su-custom-gallery-slide').each(function (i) {
6
- $(this).attr('data-index', i);
7
- slides.push({
8
- src: $(this).children('a').attr('href')
9
- });
10
- });
11
- $(this).data('slides', slides);
12
- });
13
- // Enable sliders
14
- $('.su-slider').each(function () {
15
- // Prepare data
16
- var $slider = $(this);
17
- // Apply Swiper
18
- var $swiper = $slider.swiper({
19
- wrapperClass: 'su-slider-slides',
20
- slideClass: 'su-slider-slide',
21
- slideActiveClass: 'su-slider-slide-active',
22
- slideVisibleClass: 'su-slider-slide-visible',
23
- pagination: '#' + $slider.attr('id') + ' .su-slider-pagination',
24
- autoplay: $slider.data('autoplay'),
25
- paginationClickable: true,
26
- grabCursor: true,
27
- mode: 'horizontal',
28
- mousewheelControl: $slider.data('mousewheel'),
29
- speed: $slider.data('speed'),
30
- calculateHeight: $slider.hasClass('su-slider-responsive-yes'),
31
- loop: true
32
- });
33
- // Prev button
34
- $slider.find('.su-slider-prev').click(function (e) {
35
- $swiper.swipeNext();
36
- });
37
- // Next button
38
- $slider.find('.su-slider-next').click(function (e) {
39
- $swiper.swipePrev();
40
- });
41
- });
42
- // Enable carousels
43
- $('.su-carousel').each(function () {
44
- // Prepare data
45
- var $carousel = $(this),
46
- $slides = $carousel.find('.su-carousel-slide');
47
- // Apply Swiper
48
- var $swiper = $carousel.swiper({
49
- wrapperClass: 'su-carousel-slides',
50
- slideClass: 'su-carousel-slide',
51
- slideActiveClass: 'su-carousel-slide-active',
52
- slideVisibleClass: 'su-carousel-slide-visible',
53
- pagination: '#' + $carousel.attr('id') + ' .su-carousel-pagination',
54
- autoplay: $carousel.data('autoplay'),
55
- paginationClickable: true,
56
- grabCursor: true,
57
- mode: 'horizontal',
58
- mousewheelControl: $carousel.data('mousewheel'),
59
- speed: $carousel.data('speed'),
60
- slidesPerView: ($carousel.data('items') > $slides.length) ? $slides.length : $carousel.data('items'),
61
- slidesPerGroup: $carousel.data('scroll'),
62
- calculateHeight: $carousel.hasClass('su-carousel-responsive-yes'),
63
- loop: true
64
- });
65
- // Prev button
66
- $carousel.find('.su-carousel-prev').click(function (e) {
67
- $swiper.swipeNext();
68
- });
69
- // Next button
70
- $carousel.find('.su-carousel-next').click(function (e) {
71
- $swiper.swipePrev();
72
- });
73
- });
74
- // Enable lightbox
75
- $('.su-lightbox-gallery').on('click', '.su-slider-slide, .su-carousel-slide, .su-custom-gallery-slide', function (e) {
76
- e.preventDefault();
77
- var slides = $(this).parents('.su-lightbox-gallery').data('slides');
78
- $.magnificPopup.open({
79
- items: slides,
80
- type: 'image',
81
- mainClass: 'mfp-img-mobile',
82
- gallery: {
83
- enabled: true,
84
- navigateByImgClick: true,
85
- preload: [0, 1],
86
- tPrev: su_magnific_popup.prev,
87
- tNext: su_magnific_popup.next,
88
- tCounter: su_magnific_popup.counter
89
- },
90
- tClose: su_magnific_popup.close,
91
- tLoading: su_magnific_popup.loading
92
- }, $(this).data('index'));
93
- });
94
  });
1
+ jQuery(document).ready(function ($) {
2
+ // Prepare items arrays for lightbox
3
+ $('.su-lightbox-gallery').each(function () {
4
+ var slides = [];
5
+ $(this).find('.su-slider-slide, .su-carousel-slide, .su-custom-gallery-slide').each(function (i) {
6
+ $(this).attr('data-index', i);
7
+ slides.push({
8
+ src: $(this).children('a').attr('href')
9
+ });
10
+ });
11
+ $(this).data('slides', slides);
12
+ });
13
+ // Enable sliders
14
+ $('.su-slider').each(function () {
15
+ // Prepare data
16
+ var $slider = $(this);
17
+ // Apply Swiper
18
+ var $swiper = $slider.swiper({
19
+ wrapperClass: 'su-slider-slides',
20
+ slideClass: 'su-slider-slide',
21
+ slideActiveClass: 'su-slider-slide-active',
22
+ slideVisibleClass: 'su-slider-slide-visible',
23
+ pagination: '#' + $slider.attr('id') + ' .su-slider-pagination',
24
+ autoplay: $slider.data('autoplay'),
25
+ paginationClickable: true,
26
+ grabCursor: true,
27
+ mode: 'horizontal',
28
+ mousewheelControl: $slider.data('mousewheel'),
29
+ speed: $slider.data('speed'),
30
+ calculateHeight: $slider.hasClass('su-slider-responsive-yes'),
31
+ loop: true
32
+ });
33
+ // Prev button
34
+ $slider.find('.su-slider-prev').click(function (e) {
35
+ $swiper.swipeNext();
36
+ });
37
+ // Next button
38
+ $slider.find('.su-slider-next').click(function (e) {
39
+ $swiper.swipePrev();
40
+ });
41
+ });
42
+ // Enable carousels
43
+ $('.su-carousel').each(function () {
44
+ // Prepare data
45
+ var $carousel = $(this),
46
+ $slides = $carousel.find('.su-carousel-slide');
47
+ // Apply Swiper
48
+ var $swiper = $carousel.swiper({
49
+ wrapperClass: 'su-carousel-slides',
50
+ slideClass: 'su-carousel-slide',
51
+ slideActiveClass: 'su-carousel-slide-active',
52
+ slideVisibleClass: 'su-carousel-slide-visible',
53
+ pagination: '#' + $carousel.attr('id') + ' .su-carousel-pagination',
54
+ autoplay: $carousel.data('autoplay'),
55
+ paginationClickable: true,
56
+ grabCursor: true,
57
+ mode: 'horizontal',
58
+ mousewheelControl: $carousel.data('mousewheel'),
59
+ speed: $carousel.data('speed'),
60
+ slidesPerView: ($carousel.data('items') > $slides.length) ? $slides.length : $carousel.data('items'),
61
+ slidesPerGroup: $carousel.data('scroll'),
62
+ calculateHeight: $carousel.hasClass('su-carousel-responsive-yes'),
63
+ loop: true
64
+ });
65
+ // Prev button
66
+ $carousel.find('.su-carousel-prev').click(function (e) {
67
+ $swiper.swipeNext();
68
+ });
69
+ // Next button
70
+ $carousel.find('.su-carousel-next').click(function (e) {
71
+ $swiper.swipePrev();
72
+ });
73
+ });
74
+ // Enable lightbox
75
+ $('.su-lightbox-gallery').on('click', '.su-slider-slide, .su-carousel-slide, .su-custom-gallery-slide', function (e) {
76
+ e.preventDefault();
77
+ var slides = $(this).parents('.su-lightbox-gallery').data('slides');
78
+ $.magnificPopup.open({
79
+ items: slides,
80
+ type: 'image',
81
+ mainClass: 'mfp-img-mobile',
82
+ gallery: {
83
+ enabled: true,
84
+ navigateByImgClick: true,
85
+ preload: [0, 1],
86
+ tPrev: su_magnific_popup.prev,
87
+ tNext: su_magnific_popup.next,
88
+ tCounter: su_magnific_popup.counter
89
+ },
90
+ tClose: su_magnific_popup.close,
91
+ tLoading: su_magnific_popup.loading
92
+ }, $(this).data('index'));
93
+ });
94
  });
assets/js/generator.js CHANGED
@@ -1,924 +1,924 @@
1
- jQuery(document).ready(function ($) {
2
-
3
- // Prepare data
4
- var $generator = $('#su-generator'),
5
- $search = $('#su-generator-search'),
6
- $filter = $('#su-generator-filter'),
7
- $filters = $filter.children('a'),
8
- $choices = $('#su-generator-choices'),
9
- $choice = $choices.find('span'),
10
- $settings = $('#su-generator-settings'),
11
- $prefix = $('#su-compatibility-mode-prefix'),
12
- $result = $('#su-generator-result'),
13
- $selected = $('#su-generator-selected'),
14
- mce_selection = '';
15
-
16
- // Generator button
17
- $('body').on('click', '.su-generator-button', function (e) {
18
- e.preventDefault();
19
- // Save the target
20
- window.su_generator_target = $(this).data('target');
21
- // Get open shortcode
22
- var shortcode = $(this).data('shortcode');
23
- // Open magnificPopup
24
- $(this).magnificPopup({
25
- type: 'inline',
26
- alignTop: true,
27
- callbacks: {
28
- open: function () {
29
- // Open queried shortcode
30
- if (shortcode) $choice.filter('[data-shortcode="' + shortcode + '"]').trigger('click');
31
- // Focus search field when popup is opened
32
- else window.setTimeout(function () {
33
- $search.focus();
34
- }, 200);
35
- // Change z-index
36
- $('body').addClass('su-mfp-shown');
37
- // Save selection
38
- mce_selection = (typeof tinyMCE !== 'undefined' && tinyMCE.activeEditor != null && tinyMCE.activeEditor.hasOwnProperty('selection')) ? tinyMCE.activeEditor.selection.getContent({
39
- format: "text"
40
- }) : '';
41
- },
42
- close: function () {
43
- // Clear search field
44
- $search.val('');
45
- // Hide settings
46
- $settings.html('').hide();
47
- // Remove narrow class
48
- $generator.removeClass('su-generator-narrow');
49
- // Show filters
50
- $filter.show();
51
- // Show choices panel
52
- $choices.show();
53
- $choice.show();
54
- // Clear selection
55
- mce_selection = '';
56
- // Change z-index
57
- $('body').removeClass('su-mfp-shown');
58
- }
59
- }
60
- }).magnificPopup('open');
61
- });
62
-
63
- // Filters
64
- $filters.click(function (e) {
65
- // Prepare data
66
- var filter = $(this).data('filter');
67
- // If filter All, show all choices
68
- if (filter === 'all') $choice.css({
69
- opacity: 1
70
- }).removeClass('su-generator-choice-first');
71
- // Else run search
72
- else {
73
- var regex = new RegExp(filter, 'gi');
74
- // Hide all choices
75
- $choice.css({
76
- opacity: 0.2
77
- });
78
- // Find searched choices and show
79
- $choice.each(function () {
80
- // Get shortcode name
81
- var group = $(this).data('group');
82
- // Show choice if matched
83
- if (group.match(regex) !== null) $(this).css({
84
- opacity: 1
85
- }).removeClass('su-generator-choice-first');
86
- });
87
- }
88
- e.preventDefault();
89
- });
90
-
91
- // Go to home link
92
- $('#su-generator').on('click', '.su-generator-home', function (e) {
93
- // Clear search field
94
- $search.val('');
95
- // Hide settings
96
- $settings.html('').hide();
97
- // Remove narrow class
98
- $generator.removeClass('su-generator-narrow');
99
- // Show filters
100
- $filter.show();
101
- // Show choices panel
102
- $choices.show();
103
- $choice.show();
104
- // Clear selection
105
- mce_selection = '';
106
- // Focus search field
107
- $search.focus();
108
- e.preventDefault();
109
- });
110
-
111
- // Generator close button
112
- $('#su-generator').on('click', '.su-generator-close', function (e) {
113
- // Close popup
114
- $.magnificPopup.close();
115
- // Prevent default action
116
- e.preventDefault();
117
- });
118
-
119
- // Search field
120
- $search.on({
121
- focus: function () {
122
- // Clear field
123
- $(this).val('');
124
- // Hide settings
125
- $settings.html('').hide();
126
- // Remove narrow class
127
- $generator.removeClass('su-generator-narrow');
128
- // Show choices panel
129
- $choices.show();
130
- $choice.css({
131
- opacity: 1
132
- }).removeClass('su-generator-choice-first');
133
- // Show filters
134
- $filter.show();
135
- },
136
- blur: function () {},
137
- keyup: function (e) {
138
- var $first = $('.su-generator-choice-first:first'),
139
- val = $(this).val(),
140
- regex = new RegExp(val, 'gi');
141
- // Hotkey action
142
- if (e.keyCode === 13 && $first.length > 0) {
143
- e.preventDefault();
144
- $(this).val('').blur();
145
- $first.trigger('click');
146
- }
147
- // Hide all choices
148
- $choice.css({
149
- opacity: 0.2
150
- }).removeClass('su-generator-choice-first');
151
- // Find searched choices and show
152
- $choice.each(function () {
153
- // Get shortcode name
154
- var id = $(this).data('shortcode'),
155
- name = $(this).data('name'),
156
- desc = $(this).data('desc'),
157
- group = $(this).data('group');
158
- // Show choice if matched
159
- if ((id + name + desc + group).match(regex) !== null) {
160
- $(this).css({
161
- opacity: 1
162
- }).removeClass('su-generator-choice-first');
163
- if (val === id || val === name || val === name.toLowerCase()) {
164
- $(this).addClass('su-generator-choice-first');
165
- }
166
- }
167
- });
168
- }
169
- });
170
-
171
- // Click on shortcode choice
172
- $choice.on('click', function (e) {
173
- // Prepare data
174
- var shortcode = $(this).data('shortcode');
175
- // Load shortcode options
176
- $.ajax({
177
- type: 'POST',
178
- url: ajaxurl,
179
- data: {
180
- action: 'su_generator_settings',
181
- shortcode: shortcode
182
- },
183
- beforeSend: function () {
184
- // Hide preview box
185
- $('#su-generator-preview').hide();
186
- // Hide choices panel
187
- $choices.hide();
188
- // Show loading animation
189
- $settings.addClass('su-generator-loading').show();
190
- // Add narrow class
191
- $generator.addClass('su-generator-narrow');
192
- // Hide filters
193
- $filter.hide();
194
- },
195
- success: function (data) {
196
- // Hide loading animation
197
- $settings.removeClass('su-generator-loading');
198
- // Insert new HTML
199
- $settings.html(data);
200
- // Apply selected text to the content field
201
- if (typeof mce_selection !== 'undefined' && mce_selection !== '') $('#su-generator-content').val(mce_selection);
202
- // Init range pickers
203
- $('.su-generator-range-picker').each(function (index) {
204
- var $picker = $(this),
205
- $val = $picker.find('input'),
206
- min = $val.attr('min'),
207
- max = $val.attr('max'),
208
- step = $val.attr('step');
209
- // Apply noUIslider
210
- $val.simpleSlider({
211
- snap: true,
212
- step: step,
213
- range: [min, max]
214
- });
215
- $val.attr('type', 'text').show();
216
- $val.on('keyup blur', function (e) {
217
- $val.simpleSlider('setValue', $val.val());
218
- });
219
- });
220
- // Init color pickers
221
- $('.su-generator-select-color').each(function (index) {
222
- $(this).find('.su-generator-select-color-wheel').filter(':first').farbtastic('.su-generator-select-color-value:eq(' +
223
- index + ')');
224
- $(this).find('.su-generator-select-color-value').focus(function () {
225
- $('.su-generator-select-color-wheel:eq(' + index + ')').show();
226
- });
227
- $(this).find('.su-generator-select-color-value').blur(function () {
228
- $('.su-generator-select-color-wheel:eq(' + index + ')').hide();
229
- });
230
- });
231
- // Init image sourse pickers
232
- $('.su-generator-isp').each(function () {
233
- var $picker = $(this),
234
- $sources = $picker.find('.su-generator-isp-sources'),
235
- $source = $picker.find('.su-generator-isp-source'),
236
- $add_media = $picker.find('.su-generator-isp-add-media'),
237
- $images = $picker.find('.su-generator-isp-images'),
238
- $cats = $picker.find('.su-generator-isp-categories'),
239
- $taxes = $picker.find('.su-generator-isp-taxonomies'),
240
- $terms = $('.su-generator-isp-terms'),
241
- $val = $picker.find('.su-generator-attr'),
242
- frame;
243
- // Update hidden value
244
- var update = function () {
245
- var val = 'none',
246
- ids = '',
247
- source = $sources.val();
248
- // Media library
249
- if (source === 'media') {
250
- var images = [];
251
- $images.find('span').each(function (i) {
252
- images[i] = $(this).data('id');
253
- });
254
- if (images.length > 0) ids = images.join(',');
255
- }
256
- // Category
257
- else if (source === 'category') {
258
- var categories = $cats.val() || [];
259
- if (categories.length > 0) ids = categories.join(',');
260
- }
261
- // Taxonomy
262
- else if (source === 'taxonomy') {
263
- var tax = $taxes.val() || '',
264
- terms = $terms.val() || [];
265
- if (tax !== '0' && terms.length > 0) val = 'taxonomy: ' + tax + '/' + terms.join(',');
266
- }
267
- // Deselect
268
- else if (source === '0') {
269
- val = 'none';
270
- }
271
- // Other options
272
- else {
273
- val = source;
274
- }
275
- if (ids !== '') val = source + ': ' + ids;
276
- $val.val(val).trigger('change');
277
- }
278
- // Switch source
279
- $sources.on('change', function (e) {
280
- var source = $(this).val();
281
- e.preventDefault();
282
- $source.removeClass('su-generator-isp-source-open');
283
- if (source.indexOf(':') === -1) $picker.find('.su-generator-isp-source-' + source).addClass('su-generator-isp-source-open');
284
- update();
285
- });
286
- // Remove image
287
- $images.on('click', 'span i', function () {
288
- $(this).parent('span').css('border-color', '#f03').fadeOut(300, function () {
289
- $(this).remove();
290
- update();
291
- });
292
- });
293
- // Add image
294
- $add_media.click(function (e) {
295
- e.preventDefault();
296
- if (typeof (frame) !== 'undefined') frame.close();
297
- frame = wp.media.frames.su_media_frame_1 = wp.media({
298
- title: su_generator.isp_media_title,
299
- library: {
300
- type: 'image'
301
- },
302
- button: {
303
- text: su_generator.isp_media_insert
304
- },
305
- multiple: true
306
- });
307
- frame.on('select', function () {
308
- var files = frame.state().get('selection').toJSON();
309
- $images.find('em').remove();
310
- $.each(files, function (i) {
311
- $images.append('<span data-id="' + this.id + '" title="' + this.title + '"><img src="' + this.url + '" alt="" /><i class="fa fa-times"></i></span>');
312
- });
313
- update();
314
- }).open();
315
- });
316
- // Sort images
317
- $images.sortable({
318
- revert: 200,
319
- containment: $picker,
320
- tolerance: 'pointer',
321
- stop: function () {
322
- update();
323
- }
324
- });
325
- // Select categories and terms
326
- $cats.on('change', update);
327
- $terms.on('change', update);
328
- // Select taxonomy
329
- $taxes.on('change', function () {
330
- var $cont = $(this).parents('.su-generator-isp-source'),
331
- tax = $(this).val();
332
- // Remove terms
333
- $terms.hide().find('option').remove();
334
- update();
335
- // Taxonomy is not selected
336
- if (tax === '0') return;
337
- // Taxonomy selected
338
- else {
339
- var ajax_term_select = $.ajax({
340
- url: ajaxurl,
341
- type: 'post',
342
- dataType: 'html',
343
- data: {
344
- 'action': 'su_generator_get_terms',
345
- 'tax': tax,
346
- 'class': 'su-generator-isp-terms',
347
- 'multiple': true,
348
- 'size': 10
349
- },
350
- beforeSend: function () {
351
- if (typeof ajax_term_select === 'object') ajax_term_select.abort();
352
- $terms.html('').attr('disabled', true).hide();
353
- $cont.addClass('su-generator-loading');
354
- },
355
- success: function (data) {
356
- $terms.html(data).attr('disabled', false).show();
357
- $cont.removeClass('su-generator-loading');
358
- }
359
- });
360
- }
361
- });
362
- });
363
- // Init media buttons
364
- $('.su-generator-upload-button').each(function () {
365
- var $button = $(this),
366
- $val = $(this).parents('.su-generator-attr-container').find('input:text'),
367
- file;
368
- $button.on('click', function (e) {
369
- e.preventDefault();
370
- e.stopPropagation();
371
- // If the frame already exists, reopen it
372
- if (typeof (file) !== 'undefined') file.close();
373
- // Create WP media frame.
374
- file = wp.media.frames.su_media_frame_2 = wp.media({
375
- // Title of media manager frame
376
- title: su_generator.upload_title,
377
- button: {
378
- //Button text
379
- text: su_generator.upload_insert
380
- },
381
- // Do not allow multiple files, if you want multiple, set true
382
- multiple: false
383
- });
384
- //callback for selected image
385
- file.on('select', function () {
386
- var attachment = file.state().get('selection').first().toJSON();
387
- $val.val(attachment.url).trigger('change');
388
- });
389
- // Open modal
390
- file.open();
391
- });
392
- });
393
- // Init icon pickers
394
- $('.su-generator-icon-picker-button').each(function () {
395
- var $button = $(this),
396
- $field = $(this).parents('.su-generator-attr-container'),
397
- $val = $field.find('.su-generator-attr'),
398
- $picker = $field.find('.su-generator-icon-picker'),
399
- $filter = $picker.find('input:text');
400
-
401
- $button.click(function (e) {
402
- $picker.toggleClass('su-generator-icon-picker-visible');
403
- $filter.val('').trigger('keyup');
404
- if ($picker.hasClass('su-generator-icon-picker-loaded')) return;
405
- // Load icons
406
- $.ajax({
407
- type: 'post',
408
- url: ajaxurl,
409
- data: {
410
- action: 'su_generator_get_icons'
411
- },
412
- dataType: 'html',
413
- beforeSend: function () {
414
- // Show loading animation
415
- $picker.addClass('su-generator-loading');
416
- // Add loaded class
417
- $picker.addClass('su-generator-icon-picker-loaded');
418
- },
419
- success: function (data) {
420
- $picker.append(data);
421
- var $icons = $picker.children('i');
422
- $icons.click(function (e) {
423
- $val.val('icon: ' + $(this).attr('title'));
424
- $picker.removeClass('su-generator-icon-picker-visible');
425
- $val.trigger('change');
426
- e.preventDefault();
427
- });
428
- $filter.on({
429
- keyup: function () {
430
- var val = $(this).val(),
431
- regex = new RegExp(val, 'gi');
432
- // Hide all choices
433
- $icons.hide();
434
- // Find searched choices and show
435
- $icons.each(function () {
436
- // Get shortcode name
437
- var name = $(this).attr('title');
438
- // Show choice if matched
439
- if (name.match(regex) !== null) $(this).show();
440
- });
441
- },
442
- focus: function () {
443
- $(this).val('');
444
- $icons.show();
445
- }
446
- });
447
- $picker.removeClass('su-generator-loading');
448
- }
449
- });
450
- e.preventDefault();
451
- });
452
- });
453
- // Init switches
454
- $('.su-generator-switch').click(function (e) {
455
- // Prepare data
456
- var $switch = $(this),
457
- $value = $switch.parent().children('input'),
458
- is_on = $value.val() === 'yes';
459
- // Disable
460
- if (is_on) {
461
- // Change value
462
- $value.val('no').trigger('change');
463
- }
464
- // Enable
465
- else {
466
- // Change value
467
- $value.val('yes').trigger('change');
468
- }
469
- e.preventDefault();
470
- });
471
- $('.su-generator-switch-value').on('change', function () {
472
- // Prepare data
473
- var $value = $(this),
474
- $switch = $value.parent().children('.su-generator-switch'),
475
- value = $value.val();
476
- // Disable
477
- if (value === 'yes') $switch.removeClass('su-generator-switch-no').addClass('su-generator-switch-yes');
478
- // Enable
479
- else if (value === 'no') $switch.removeClass('su-generator-switch-yes').addClass('su-generator-switch-no');
480
- });
481
- // Init tax_term selects
482
- $('select#su-generator-attr-taxonomy').on('change', function () {
483
- var $taxonomy = $(this),
484
- tax = $taxonomy.val(),
485
- $terms = $('select#su-generator-attr-tax_term');
486
- // Load new options
487
- window.su_generator_get_terms = $.ajax({
488
- type: 'POST',
489
- url: ajaxurl,
490
- data: {
491
- action: 'su_generator_get_terms',
492
- tax: tax,
493
- noselect: true
494
- },
495
- dataType: 'html',
496
- beforeSend: function () {
497
- // Check previous requests
498
- if (typeof window.su_generator_get_terms === 'object') window.su_generator_get_terms.abort();
499
- // Show loading animation
500
- $terms.parent().addClass('su-generator-loading');
501
- },
502
- success: function (data) {
503
- // Remove previous options
504
- $terms.find('option').remove();
505
- // Append new options
506
- $terms.append(data);
507
- // Hide loading animation
508
- $terms.parent().removeClass('su-generator-loading');
509
- }
510
- });
511
- });
512
- // Init shadow pickers
513
- $('.su-generator-shadow-picker').each(function (index) {
514
- var $picker = $(this),
515
- $fields = $picker.find('.su-generator-shadow-picker-field input'),
516
- $hoff = $picker.find('.su-generator-sp-hoff'),
517
- $voff = $picker.find('.su-generator-sp-voff'),
518
- $blur = $picker.find('.su-generator-sp-blur'),
519
- $color = {
520
- cnt: $picker.find('.su-generator-shadow-picker-color'),
521
- value: $picker.find('.su-generator-shadow-picker-color-value'),
522
- wheel: $picker.find('.su-generator-shadow-picker-color-wheel')
523
- },
524
- $val = $picker.find('.su-generator-attr');
525
- // Init color picker
526
- $color.wheel.farbtastic($color.value);
527
- $color.value.focus(function () {
528
- $color.wheel.show();
529
- });
530
- $color.value.blur(function () {
531
- $color.wheel.hide();
532
- });
533
- // Handle text fields
534
- $fields.on('change blur keyup', function () {
535
- $val.val($hoff.val() + 'px ' + $voff.val() + 'px ' + $blur.val() + 'px ' + $color.value.val()).trigger('change');
536
- });
537
- $val.on('keyup', function () {
538
- var value = $(this).val().split(' ');
539
- // Value is correct
540
- if (value.length === 4) {
541
- $hoff.val(value[0].replace('px', ''));
542
- $voff.val(value[1].replace('px', ''));
543
- $blur.val(value[2].replace('px', ''));
544
- $color.value.val(value[3]);
545
- $fields.trigger('keyup');
546
- }
547
- });
548
- });
549
- // Init border pickers
550
- $('.su-generator-border-picker').each(function (index) {
551
- var $picker = $(this),
552
- $fields = $picker.find('.su-generator-border-picker-field input, .su-generator-border-picker-field select'),
553
- $width = $picker.find('.su-generator-bp-width'),
554
- $style = $picker.find('.su-generator-bp-style'),
555
- $color = {
556
- cnt: $picker.find('.su-generator-border-picker-color'),
557
- value: $picker.find('.su-generator-border-picker-color-value'),
558
- wheel: $picker.find('.su-generator-border-picker-color-wheel')
559
- },
560
- $val = $picker.find('.su-generator-attr');
561
- // Init color picker
562
- $color.wheel.farbtastic($color.value);
563
- $color.value.focus(function () {
564
- $color.wheel.show();
565
- });
566
- $color.value.blur(function () {
567
- $color.wheel.hide();
568
- });
569
- // Handle text fields
570
- $fields.on('change blur keyup', function () {
571
- $val.val($width.val() + 'px ' + $style.val() + ' ' + $color.value.val()).trigger('change');
572
- });
573
- $val.on('keyup', function () {
574
- var value = $(this).val().split(' ');
575
- // Value is correct
576
- if (value.length === 3) {
577
- $width.val(value[0].replace('px', ''));
578
- $style.val(value[1]);
579
- $color.value.val(value[2]);
580
- $fields.trigger('keyup');
581
- }
582
- });
583
- });
584
- // Remove skip class when setting is changed
585
- $settings.find('.su-generator-attr').on('change keyup blur', function () {
586
- var $cnt = $(this).parents('.su-generator-attr-container'),
587
- _default = $cnt.data('default'),
588
- val = $(this).val();
589
- // Value is changed
590
- if (val != _default) $cnt.removeClass('su-generator-skip');
591
- else $cnt.addClass('su-generator-skip');
592
- });
593
- // Init value setters
594
- $('.su-generator-set-value').click(function (e) {
595
- $(this).parents('.su-generator-attr-container').find('input').val($(this).text()).trigger('change');
596
- });
597
- // Save selected value
598
- $selected.val(shortcode);
599
- // Load last used preset
600
- $.ajax({
601
- type: 'GET',
602
- url: ajaxurl,
603
- data: {
604
- action: 'su_generator_get_preset',
605
- id: 'last_used',
606
- shortcode: shortcode
607
- },
608
- beforeSend: function () {
609
- // Show loading animation
610
- // $settings.addClass('su-generator-loading');
611
- },
612
- success: function (data) {
613
- // Remove loading animation
614
- // $settings.removeClass('su-generator-loading');
615
- // Set new settings
616
- set(data);
617
- // Apply selected text to the content field
618
- if (typeof mce_selection !== 'undefined' && mce_selection !== '') $('#su-generator-content').val(mce_selection);
619
- },
620
- dataType: 'json'
621
- });
622
- },
623
- dataType: 'html'
624
- });
625
- });
626
-
627
- // Insert shortcode
628
- $('#su-generator').on('click', '.su-generator-insert', function (e) {
629
- // Prepare data
630
- var shortcode = parse();
631
- // Save current settings to presets
632
- add_preset('last_used', su_generator.last_used);
633
- // Close popup
634
- $.magnificPopup.close();
635
- // Save shortcode to div
636
- $result.text(shortcode);
637
- // Prevent default action
638
- e.preventDefault();
639
- // Save original activeeditor
640
- window.su_wpActiveEditor = window.wpActiveEditor;
641
- // Set new active editor
642
- window.wpActiveEditor = window.su_generator_target;
643
- // Insert shortcode
644
- window.wp.media.editor.insert(shortcode);
645
- // Restore previous editor
646
- window.wpActiveEditor = window.su_wpActiveEditor;
647
- // Check for target content editor
648
- // if (typeof window.su_generator_target === 'undefined') return;
649
- // Insert into default content editor
650
- // else if (window.su_generator_target === 'content') window.wp.media.editor.insert(shortcode);
651
- // Insert into ET page builder (text box)
652
- // else if (window.su_generator_target === 'et_pb_content_new') window.wp.media.editor.insert(shortcode);
653
- // Insert into textarea
654
- // else {
655
- // var $target = $('textarea#' + window.su_generator_target);
656
- // if ($target.length > 0) $target.val($target.val() + shortcode);
657
- // }
658
- });
659
-
660
- // Preview shortcode
661
- $('#su-generator').on('click', '.su-generator-toggle-preview', function (e) {
662
- // Prepare data
663
- var $preview = $('#su-generator-preview'),
664
- $button = $(this);
665
- // Hide button
666
- $button.hide();
667
- // Show preview box
668
- $preview.addClass('su-generator-loading').show();
669
- // Bind updating on settings changes
670
- $settings.find('input, textarea, select').on('change keyup blur', function () {
671
- update_preview();
672
- });
673
- // Update preview box
674
- update_preview(true);
675
- // Prevent default action
676
- e.preventDefault();
677
- });
678
-
679
- var gp_hover_timer;
680
-
681
- // Presets manager - mouseenter
682
- $('#su-generator').on('mouseenter click', '.su-generator-presets', function () {
683
- clearTimeout(gp_hover_timer);
684
- $('.su-gp-popup').show();
685
- });
686
- // Presets manager - mouseleave
687
- $('#su-generator').on('mouseleave', '.su-generator-presets', function () {
688
- gp_hover_timer = window.setTimeout(function () {
689
- $('.su-gp-popup').fadeOut(200);
690
- }, 600);
691
- });
692
- // Presets manager - add new preset
693
- $('#su-generator').on('click', '.su-gp-new', function (e) {
694
- // Prepare data
695
- var $container = $(this).parents('.su-generator-presets'),
696
- $list = $('.su-gp-list'),
697
- id = new Date().getTime();
698
- // Ask for preset name
699
- var name = prompt(su_generator.presets_prompt_msg, su_generator.presets_prompt_value);
700
- // Name is entered
701
- if (name !== '' && name !== null) {
702
- // Hide default text
703
- $list.find('b').hide();
704
- // Add new option
705
- $list.append('<span data-id="' + id + '"><em>' + name + '</em><i class="fa fa-times"></i></span>');
706
- // Perform AJAX request
707
- add_preset(id, name);
708
- }
709
- });
710
- // Presets manager - load preset
711
- $('#su-generator').on('click', '.su-gp-list span', function (e) {
712
- // Prepare data
713
- var shortcode = $('.su-generator-presets').data('shortcode'),
714
- id = $(this).data('id'),
715
- $insert = $('.su-generator-insert');
716
- // Hide popup
717
- $('.su-gp-popup').hide();
718
- // Disable hover timer
719
- clearTimeout(gp_hover_timer);
720
- // Get the preset
721
- $.ajax({
722
- type: 'GET',
723
- url: ajaxurl,
724
- data: {
725
- action: 'su_generator_get_preset',
726
- id: id,
727
- shortcode: shortcode
728
- },
729
- beforeSend: function () {
730
- // Disable insert button
731
- $insert.addClass('button-primary-disabled').attr('disabled', true);
732
- },
733
- success: function (data) {
734
- // Enable insert button
735
- $insert.removeClass('button-primary-disabled').attr('disabled', false);
736
- // Set new settings
737
- set(data);
738
- },
739
- dataType: 'json'
740
- });
741
- // Prevent default action
742
- e.preventDefault();
743
- e.stopPropagation();
744
- });
745
- // Presets manager - remove preset
746
- $('#su-generator').on('click', '.su-gp-list i', function (e) {
747
- // Prepare data
748
- var $list = $(this).parents('.su-gp-list'),
749
- $preset = $(this).parent('span'),
750
- id = $preset.data('id');
751
- // Remove DOM element
752
- $preset.remove();
753
- // Show default text if last preset was removed
754
- if ($list.find('span').length < 1) $list.find('b').show();
755
- // Perform ajax request
756
- remove_preset(id);
757
- // Prevent <span> action
758
- e.stopPropagation();
759
- // Prevent default action
760
- e.preventDefault();
761
- });
762
-
763
- /**
764
- * Create new preset with specified name from current settings
765
- */
766
- function add_preset(id, name) {
767
- // Prepare shortcode name and current settings
768
- var shortcode = $('.su-generator-presets').data('shortcode'),
769
- settings = get();
770
- // Perform AJAX request
771
- $.ajax({
772
- type: 'POST',
773
- url: ajaxurl,
774
- data: {
775
- action: 'su_generator_add_preset',
776
- id: id,
777
- name: name,
778
- shortcode: shortcode,
779
- settings: settings
780
- }
781
- });
782
- }
783
-
784
- /**
785
- * Remove preset by ID
786
- */
787
- function remove_preset(id) {
788
- // Get current shortcode name
789
- var shortcode = $('.su-generator-presets').data('shortcode');
790
- // Perform AJAX request
791
- $.ajax({
792
- type: 'POST',
793
- url: ajaxurl,
794
- data: {
795
- action: 'su_generator_remove_preset',
796
- id: id,
797
- shortcode: shortcode
798
- }
799
- });
800
- }
801
-
802
- function parse() {
803
- // Prepare data
804
- var query = $selected.val(),
805
- prefix = $prefix.val(),
806
- $settings = $('#su-generator-settings .su-generator-attr-container:not(.su-generator-skip) .su-generator-attr'),
807
- content = $('#su-generator-content').val(),
808
- result = new String('');
809
- // Open shortcode
810
- result += '[' + prefix + query;
811
- // Add shortcode attributes
812
- $settings.each(function () {
813
- // Prepare field and value
814
- var $this = $(this),
815
- value = '';
816
- // Selects
817
- if ($this.is('select')) value = $this.find('option:selected').val();
818
- // Other fields
819
- else value = $this.val();
820
- // Check that value is not empty
821
- if (value == null) value = '';
822
- else if (typeof value === 'array') value = value.join(',');
823
- // Add attribute
824
- if (value !== '') result += ' ' + $(this).attr('name') + '="' + $(this).val().toString().replace(/"/gi, "'") + '"';
825
- });
826
- // End of opening tag
827
- result += ']';
828
- // Wrap shortcode if content presented
829
- if (content != 'false') result += content + '[/' + prefix + query + ']';
830
- // Return result
831
- return result;
832
- }
833
-
834
- function get() {
835
- // Prepare data
836
- var query = $selected.val(),
837
- $settings = $('#su-generator-settings .su-generator-attr'),
838
- content = $('#su-generator-content').val(),
839
- data = {};
840
- // Add shortcode attributes
841
- $settings.each(function (i) {
842
- // Prepare field and value
843
- var $this = $(this),
844
- value = '',
845
- name = $this.attr('name');
846
- // Selects
847
- if ($this.is('select')) value = $this.find('option:selected').val();
848
- // Other fields
849
- else value = $this.val();
850
- // Check that value is not empty
851
- if (value == null) value = '';
852
- // Save value
853
- data[name] = value;
854
- });
855
- // Add content
856
- data['content'] = content.toString();
857
- // Return data
858
- return data;
859
- }
860
-
861
- function set(data) {
862
- // Prepare data
863
- var $settings = $('#su-generator-settings .su-generator-attr'),
864
- $content = $('#su-generator-content');
865
- // Loop through settings
866
- $settings.each(function () {
867
- var $this = $(this),
868
- name = $this.attr('name');
869
- // Data contains value for this field
870
- if (data.hasOwnProperty(name)) {
871
- // Set new value
872
- $this.val(data[name]);
873
- $this.trigger('keyup').trigger('change').trigger('blur');
874
- }
875
- });
876
- // Set content
877
- if (data.hasOwnProperty('content')) $content.val(data['content']).trigger('keyup').trigger('change').trigger('blur');
878
- // Update preview
879
- update_preview();
880
- }
881
-
882
- var update_preview_timer,
883
- update_preview_request;
884
-
885
- function update_preview(forced) {
886
- // Prepare data
887
- var $preview = $('#su-generator-preview'),
888
- shortcode = parse(),
889
- previous = $result.text();
890
- // Check forced mode
891
- forced = forced || false;
892
- // Break if preview box is hidden (preview isn't enabled)
893
- if (!$preview.is(':visible')) return;
894
- // Check shortcode is changed is this is not a forced mode
895
- if (shortcode === previous && !forced) return;
896
- // Run timer to filter often calls
897
- window.clearTimeout(update_preview_timer);
898
- update_preview_timer = window.setTimeout(function () {
899
- update_preview_request = $.ajax({
900
- type: 'POST',
901
- url: ajaxurl,
902
- cache: false,
903
- data: {
904
- action: 'su_generator_preview',
905
- shortcode: shortcode
906
- },
907
- beforeSend: function () {
908
- // Abort previous requests
909
- if (typeof update_preview_request === 'object') update_preview_request.abort();
910
- // Show loading animation
911
- $preview.addClass('su-generator-loading').html('');
912
- },
913
- success: function (data) {
914
- // Hide loading animation and set new HTML
915
- $preview.html(data).removeClass('su-generator-loading');
916
- },
917
- dataType: 'html'
918
- });
919
- }, 300);
920
- // Save shortcode to div
921
- $result.text(shortcode);
922
- }
923
-
924
  });
1
+ jQuery(document).ready(function ($) {
2
+
3
+ // Prepare data
4
+ var $generator = $('#su-generator'),
5
+ $search = $('#su-generator-search'),
6
+ $filter = $('#su-generator-filter'),
7
+ $filters = $filter.children('a'),
8
+ $choices = $('#su-generator-choices'),
9
+ $choice = $choices.find('span'),
10
+ $settings = $('#su-generator-settings'),
11
+ $prefix = $('#su-compatibility-mode-prefix'),
12
+ $result = $('#su-generator-result'),
13
+ $selected = $('#su-generator-selected'),
14
+ mce_selection = '';
15
+
16
+ // Generator button
17
+ $('body').on('click', '.su-generator-button', function (e) {
18
+ e.preventDefault();
19
+ // Save the target
20
+ window.su_generator_target = $(this).data('target');
21
+ // Get open shortcode
22
+ var shortcode = $(this).data('shortcode');
23
+ // Open magnificPopup
24
+ $(this).magnificPopup({
25
+ type: 'inline',
26
+ alignTop: true,
27
+ callbacks: {
28
+ open: function () {
29
+ // Open queried shortcode
30
+ if (shortcode) $choice.filter('[data-shortcode="' + shortcode + '"]').trigger('click');
31
+ // Focus search field when popup is opened
32
+ else window.setTimeout(function () {
33
+ $search.focus();
34
+ }, 200);
35
+ // Change z-index
36
+ $('body').addClass('su-mfp-shown');
37
+ // Save selection
38
+ mce_selection = (typeof tinyMCE !== 'undefined' && tinyMCE.activeEditor != null && tinyMCE.activeEditor.hasOwnProperty('selection')) ? tinyMCE.activeEditor.selection.getContent({
39
+ format: "text"
40
+ }) : '';
41
+ },
42
+ close: function () {
43
+ // Clear search field
44
+ $search.val('');
45
+ // Hide settings
46
+ $settings.html('').hide();
47
+ // Remove narrow class
48
+ $generator.removeClass('su-generator-narrow');
49
+ // Show filters
50
+ $filter.show();
51
+ // Show choices panel
52
+ $choices.show();
53
+ $choice.show();
54
+ // Clear selection
55
+ mce_selection = '';
56
+ // Change z-index
57
+ $('body').removeClass('su-mfp-shown');
58
+ }
59
+ }
60
+ }).magnificPopup('open');
61
+ });
62
+
63
+ // Filters
64
+ $filters.click(function (e) {
65
+ // Prepare data
66
+ var filter = $(this).data('filter');
67
+ // If filter All, show all choices
68
+ if (filter === 'all') $choice.css({
69
+ opacity: 1
70
+ }).removeClass('su-generator-choice-first');
71
+ // Else run search
72
+ else {
73
+ var regex = new RegExp(filter, 'gi');
74
+ // Hide all choices
75
+ $choice.css({
76
+ opacity: 0.2
77
+ });
78
+ // Find searched choices and show
79
+ $choice.each(function () {
80
+ // Get shortcode name
81
+ var group = $(this).data('group');
82
+ // Show choice if matched
83
+ if (group.match(regex) !== null) $(this).css({
84
+ opacity: 1
85
+ }).removeClass('su-generator-choice-first');
86
+ });
87
+ }
88
+ e.preventDefault();
89
+ });
90
+
91
+ // Go to home link
92
+ $('#su-generator').on('click', '.su-generator-home', function (e) {
93
+ // Clear search field
94
+ $search.val('');
95
+ // Hide settings
96
+ $settings.html('').hide();
97
+ // Remove narrow class
98
+ $generator.removeClass('su-generator-narrow');
99
+ // Show filters
100
+ $filter.show();
101
+ // Show choices panel
102
+ $choices.show();
103
+ $choice.show();
104
+ // Clear selection
105
+ mce_selection = '';
106
+ // Focus search field
107
+ $search.focus();
108
+ e.preventDefault();
109
+ });
110
+
111
+ // Generator close button
112
+ $('#su-generator').on('click', '.su-generator-close', function (e) {
113
+ // Close popup
114
+ $.magnificPopup.close();
115
+ // Prevent default action
116
+ e.preventDefault();
117
+ });
118
+
119
+ // Search field
120
+ $search.on({
121
+ focus: function () {
122
+ // Clear field
123
+ $(this).val('');
124
+ // Hide settings
125
+ $settings.html('').hide();
126
+ // Remove narrow class
127
+ $generator.removeClass('su-generator-narrow');
128
+ // Show choices panel
129
+ $choices.show();
130
+ $choice.css({
131
+ opacity: 1
132
+ }).removeClass('su-generator-choice-first');
133
+ // Show filters
134
+ $filter.show();
135
+ },
136
+ blur: function () {},
137
+ keyup: function (e) {
138
+ var $first = $('.su-generator-choice-first:first'),
139
+ val = $(this).val(),
140
+ regex = new RegExp(val, 'gi');
141
+ // Hotkey action
142
+ if (e.keyCode === 13 && $first.length > 0) {
143
+ e.preventDefault();
144
+ $(this).val('').blur();
145
+ $first.trigger('click');
146
+ }
147
+ // Hide all choices
148
+ $choice.css({
149
+ opacity: 0.2
150
+ }).removeClass('su-generator-choice-first');
151
+ // Find searched choices and show
152
+ $choice.each(function () {
153
+ // Get shortcode name
154
+ var id = $(this).data('shortcode'),
155
+ name = $(this).data('name'),
156
+ desc = $(this).data('desc'),
157
+ group = $(this).data('group');
158
+ // Show choice if matched
159
+ if ((id + name + desc + group).match(regex) !== null) {
160
+ $(this).css({
161
+ opacity: 1
162
+ }).removeClass('su-generator-choice-first');
163
+ if (val === id || val === name || val === name.toLowerCase()) {
164
+ $(this).addClass('su-generator-choice-first');
165
+ }
166
+ }
167
+ });
168
+ }
169
+ });
170
+
171
+ // Click on shortcode choice
172
+ $choice.on('click', function (e) {
173
+ // Prepare data
174
+ var shortcode = $(this).data('shortcode');
175
+ // Load shortcode options
176
+ $.ajax({
177
+ type: 'POST',
178
+ url: ajaxurl,
179
+ data: {
180
+ action: 'su_generator_settings',
181
+ shortcode: shortcode
182
+ },
183
+ beforeSend: function () {
184
+ // Hide preview box
185
+ $('#su-generator-preview').hide();
186
+ // Hide choices panel
187
+ $choices.hide();
188
+ // Show loading animation
189
+ $settings.addClass('su-generator-loading').show();
190
+ // Add narrow class
191
+ $generator.addClass('su-generator-narrow');
192
+ // Hide filters
193
+ $filter.hide();
194
+ },
195
+ success: function (data) {
196
+ // Hide loading animation
197
+ $settings.removeClass('su-generator-loading');
198
+ // Insert new HTML
199
+ $settings.html(data);
200
+ // Apply selected text to the content field
201
+ if (typeof mce_selection !== 'undefined' && mce_selection !== '') $('#su-generator-content').val(mce_selection);
202
+ // Init range pickers
203
+ $('.su-generator-range-picker').each(function (index) {
204
+ var $picker = $(this),
205
+ $val = $picker.find('input'),
206
+ min = $val.attr('min'),
207
+ max = $val.attr('max'),
208
+ step = $val.attr('step');
209
+ // Apply noUIslider
210
+ $val.simpleSlider({
211
+ snap: true,
212
+ step: step,
213
+ range: [min, max]
214
+ });
215
+ $val.attr('type', 'text').show();
216
+ $val.on('keyup blur', function (e) {
217
+ $val.simpleSlider('setValue', $val.val());
218
+ });
219
+ });
220
+ // Init color pickers
221
+ $('.su-generator-select-color').each(function (index) {
222
+ $(this).find('.su-generator-select-color-wheel').filter(':first').farbtastic('.su-generator-select-color-value:eq(' +
223
+ index + ')');
224
+ $(this).find('.su-generator-select-color-value').focus(function () {
225
+ $('.su-generator-select-color-wheel:eq(' + index + ')').show();
226
+ });
227
+ $(this).find('.su-generator-select-color-value').blur(function () {
228
+ $('.su-generator-select-color-wheel:eq(' + index + ')').hide();
229
+ });
230
+ });
231
+ // Init image sourse pickers
232
+ $('.su-generator-isp').each(function () {
233
+ var $picker = $(this),
234
+ $sources = $picker.find('.su-generator-isp-sources'),
235
+ $source = $picker.find('.su-generator-isp-source'),
236
+ $add_media = $picker.find('.su-generator-isp-add-media'),
237
+ $images = $picker.find('.su-generator-isp-images'),
238
+ $cats = $picker.find('.su-generator-isp-categories'),
239
+ $taxes = $picker.find('.su-generator-isp-taxonomies'),
240
+ $terms = $('.su-generator-isp-terms'),
241
+ $val = $picker.find('.su-generator-attr'),
242
+ frame;
243
+ // Update hidden value
244
+ var update = function () {
245
+ var val = 'none',
246
+ ids = '',
247
+ source = $sources.val();
248
+ // Media library
249
+ if (source === 'media') {
250
+ var images = [];
251
+ $images.find('span').each(function (i) {
252
+ images[i] = $(this).data('id');
253
+ });
254
+ if (images.length > 0) ids = images.join(',');
255
+ }
256
+ // Category
257
+ else if (source === 'category') {
258
+ var categories = $cats.val() || [];
259
+ if (categories.length > 0) ids = categories.join(',');
260
+ }
261
+ // Taxonomy
262
+ else if (source === 'taxonomy') {
263
+ var tax = $taxes.val() || '',
264
+ terms = $terms.val() || [];
265
+ if (tax !== '0' && terms.length > 0) val = 'taxonomy: ' + tax + '/' + terms.join(',');
266
+ }
267
+ // Deselect
268
+ else if (source === '0') {
269
+ val = 'none';
270
+ }
271
+ // Other options
272
+ else {
273
+ val = source;
274
+ }
275
+ if (ids !== '') val = source + ': ' + ids;
276
+ $val.val(val).trigger('change');
277
+ }
278
+ // Switch source
279
+ $sources.on('change', function (e) {
280
+ var source = $(this).val();
281
+ e.preventDefault();
282
+ $source.removeClass('su-generator-isp-source-open');
283
+ if (source.indexOf(':') === -1) $picker.find('.su-generator-isp-source-' + source).addClass('su-generator-isp-source-open');
284
+ update();
285
+ });
286
+ // Remove image
287
+ $images.on('click', 'span i', function () {
288
+ $(this).parent('span').css('border-color', '#f03').fadeOut(300, function () {
289
+ $(this).remove();
290
+ update();
291
+ });
292
+ });
293
+ // Add image
294
+ $add_media.click(function (e) {
295
+ e.preventDefault();
296
+ if (typeof (frame) !== 'undefined') frame.close();
297
+ frame = wp.media.frames.su_media_frame_1 = wp.media({
298
+ title: su_generator.isp_media_title,
299
+ library: {
300
+ type: 'image'
301
+ },
302
+ button: {
303
+ text: su_generator.isp_media_insert
304
+ },
305
+ multiple: true
306
+ });
307
+ frame.on('select', function () {
308
+ var files = frame.state().get('selection').toJSON();
309
+ $images.find('em').remove();
310
+ $.each(files, function (i) {
311
+ $images.append('<span data-id="' + this.id + '" title="' + this.title + '"><img src="' + this.url + '" alt="" /><i class="fa fa-times"></i></span>');
312
+ });
313
+ update();
314
+ }).open();
315
+ });
316
+ // Sort images
317
+ $images.sortable({
318
+ revert: 200,
319
+ containment: $picker,
320
+ tolerance: 'pointer',
321
+ stop: function () {
322
+ update();
323
+ }
324
+ });
325
+ // Select categories and terms
326
+ $cats.on('change', update);
327
+ $terms.on('change', update);
328
+ // Select taxonomy
329
+ $taxes.on('change', function () {
330
+ var $cont = $(this).parents('.su-generator-isp-source'),
331
+ tax = $(this).val();
332
+ // Remove terms
333
+ $terms.hide().find('option').remove();
334
+ update();
335
+ // Taxonomy is not selected
336
+ if (tax === '0') return;
337
+ // Taxonomy selected
338
+ else {
339
+ var ajax_term_select = $.ajax({
340
+ url: ajaxurl,
341
+ type: 'post',
342
+ dataType: 'html',
343
+ data: {
344
+ 'action': 'su_generator_get_terms',
345
+ 'tax': tax,
346
+ 'class': 'su-generator-isp-terms',
347
+ 'multiple': true,
348
+ 'size': 10
349
+ },
350
+ beforeSend: function () {
351
+ if (typeof ajax_term_select === 'object') ajax_term_select.abort();
352
+ $terms.html('').attr('disabled', true).hide();
353
+ $cont.addClass('su-generator-loading');
354
+ },
355
+ success: function (data) {
356
+ $terms.html(data).attr('disabled', false).show();
357
+ $cont.removeClass('su-generator-loading');
358
+ }
359
+ });
360
+ }
361
+ });
362
+ });
363
+ // Init media buttons
364
+ $('.su-generator-upload-button').each(function () {
365
+ var $button = $(this),
366
+ $val = $(this).parents('.su-generator-attr-container').find('input:text'),
367
+ file;
368
+ $button.on('click', function (e) {
369
+ e.preventDefault();
370
+ e.stopPropagation();
371
+ // If the frame already exists, reopen it
372
+ if (typeof (file) !== 'undefined') file.close();
373
+ // Create WP media frame.
374
+ file = wp.media.frames.su_media_frame_2 = wp.media({
375
+ // Title of media manager frame
376
+ title: su_generator.upload_title,
377
+ button: {
378
+ //Button text
379
+ text: su_generator.upload_insert
380
+ },
381
+ // Do not allow multiple files, if you want multiple, set true
382
+ multiple: false
383
+ });
384
+ //callback for selected image
385
+ file.on('select', function () {
386
+ var attachment = file.state().get('selection').first().toJSON();
387
+ $val.val(attachment.url).trigger('change');
388
+ });
389
+ // Open modal
390
+ file.open();
391
+ });
392
+ });
393
+ // Init icon pickers
394
+ $('.su-generator-icon-picker-button').each(function () {
395
+ var $button = $(this),
396
+ $field = $(this).parents('.su-generator-attr-container'),
397
+ $val = $field.find('.su-generator-attr'),
398
+ $picker = $field.find('.su-generator-icon-picker'),
399
+ $filter = $picker.find('input:text');
400
+
401
+ $button.click(function (e) {
402
+ $picker.toggleClass('su-generator-icon-picker-visible');
403
+ $filter.val('').trigger('keyup');
404
+ if ($picker.hasClass('su-generator-icon-picker-loaded')) return;
405
+ // Load icons
406
+ $.ajax({
407
+ type: 'post',
408
+ url: ajaxurl,
409
+ data: {
410
+ action: 'su_generator_get_icons'
411
+ },
412
+ dataType: 'html',
413
+ beforeSend: function () {
414
+ // Show loading animation
415
+ $picker.addClass('su-generator-loading');
416
+ // Add loaded class
417
+ $picker.addClass('su-generator-icon-picker-loaded');
418
+ },
419
+ success: function (data) {
420
+ $picker.append(data);
421
+ var $icons = $picker.children('i');
422
+ $icons.click(function (e) {
423
+ $val.val('icon: ' + $(this).attr('title'));
424
+ $picker.removeClass('su-generator-icon-picker-visible');
425
+ $val.trigger('change');
426
+ e.preventDefault();
427
+ });
428
+ $filter.on({
429
+ keyup: function () {
430
+ var val = $(this).val(),
431
+ regex = new RegExp(val, 'gi');
432
+ // Hide all choices
433
+ $icons.hide();
434
+ // Find searched choices and show
435
+ $icons.each(function () {
436
+ // Get shortcode name
437
+ var name = $(this).attr('title');
438
+ // Show choice if matched
439
+ if (name.match(regex) !== null) $(this).show();
440
+ });
441
+ },
442
+ focus: function () {
443
+ $(this).val('');
444
+ $icons.show();
445
+ }
446
+ });
447
+ $picker.removeClass('su-generator-loading');
448
+ }
449
+ });
450
+ e.preventDefault();
451
+ });
452
+ });
453
+ // Init switches
454
+ $('.su-generator-switch').click(function (e) {
455
+ // Prepare data
456
+ var $switch = $(this),
457
+ $value = $switch.parent().children('input'),
458
+ is_on = $value.val() === 'yes';
459
+ // Disable
460
+ if (is_on) {
461
+ // Change value
462
+ $value.val('no').trigger('change');
463
+ }
464
+ // Enable
465
+ else {
466
+ // Change value
467
+ $value.val('yes').trigger('change');
468
+ }
469
+ e.preventDefault();
470
+ });
471
+ $('.su-generator-switch-value').on('change', function () {
472
+ // Prepare data
473
+ var $value = $(this),
474
+ $switch = $value.parent().children('.su-generator-switch'),
475
+ value = $value.val();
476
+ // Disable
477
+ if (value === 'yes') $switch.removeClass('su-generator-switch-no').addClass('su-generator-switch-yes');
478
+ // Enable
479
+ else if (value === 'no') $switch.removeClass('su-generator-switch-yes').addClass('su-generator-switch-no');
480
+ });
481
+ // Init tax_term selects
482
+ $('select#su-generator-attr-taxonomy').on('change', function () {
483
+ var $taxonomy = $(this),
484
+ tax = $taxonomy.val(),
485
+ $terms = $('select#su-generator-attr-tax_term');
486
+ // Load new options
487
+ window.su_generator_get_terms = $.ajax({
488
+ type: 'POST',
489
+ url: ajaxurl,
490
+ data: {
491
+ action: 'su_generator_get_terms',
492
+ tax: tax,
493
+ noselect: true
494
+ },
495
+ dataType: 'html',
496
+ beforeSend: function () {
497
+ // Check previous requests
498
+ if (typeof window.su_generator_get_terms === 'object') window.su_generator_get_terms.abort();
499
+ // Show loading animation
500
+ $terms.parent().addClass('su-generator-loading');
501
+ },
502
+ success: function (data) {
503
+ // Remove previous options
504
+ $terms.find('option').remove();
505
+ // Append new options
506
+ $terms.append(data);
507
+ // Hide loading animation
508
+ $terms.parent().removeClass('su-generator-loading');
509
+ }
510
+ });
511
+ });
512
+ // Init shadow pickers
513
+ $('.su-generator-shadow-picker').each(function (index) {
514
+ var $picker = $(this),
515
+ $fields = $picker.find('.su-generator-shadow-picker-field input'),
516
+ $hoff = $picker.find('.su-generator-sp-hoff'),
517
+ $voff = $picker.find('.su-generator-sp-voff'),
518
+ $blur = $picker.find('.su-generator-sp-blur'),
519
+ $color = {
520
+ cnt: $picker.find('.su-generator-shadow-picker-color'),
521
+ value: $picker.find('.su-generator-shadow-picker-color-value'),
522
+ wheel: $picker.find('.su-generator-shadow-picker-color-wheel')
523
+ },
524
+ $val = $picker.find('.su-generator-attr');
525
+ // Init color picker
526
+ $color.wheel.farbtastic($color.value);
527
+ $color.value.focus(function () {
528
+ $color.wheel.show();
529
+ });
530
+ $color.value.blur(function () {
531
+ $color.wheel.hide();
532
+ });
533
+ // Handle text fields
534
+ $fields.on('change blur keyup', function () {
535
+ $val.val($hoff.val() + 'px ' + $voff.val() + 'px ' + $blur.val() + 'px ' + $color.value.val()).trigger('change');
536
+ });
537
+ $val.on('keyup', function () {
538
+ var value = $(this).val().split(' ');
539
+ // Value is correct
540
+ if (value.length === 4) {
541
+ $hoff.val(value[0].replace('px', ''));
542
+ $voff.val(value[1].replace('px', ''));
543
+ $blur.val(value[2].replace('px', ''));
544
+ $color.value.val(value[3]);
545
+ $fields.trigger('keyup');
546
+ }
547
+ });
548
+ });
549
+ // Init border pickers
550
+ $('.su-generator-border-picker').each(function (index) {
551
+ var $picker = $(this),
552
+ $fields = $picker.find('.su-generator-border-picker-field input, .su-generator-border-picker-field select'),
553
+ $width = $picker.find('.su-generator-bp-width'),
554
+ $style = $picker.find('.su-generator-bp-style'),
555
+ $color = {
556
+ cnt: $picker.find('.su-generator-border-picker-color'),
557
+ value: $picker.find('.su-generator-border-picker-color-value'),
558
+ wheel: $picker.find('.su-generator-border-picker-color-wheel')
559
+ },
560
+ $val = $picker.find('.su-generator-attr');
561
+ // Init color picker
562
+ $color.wheel.farbtastic($color.value);
563
+ $color.value.focus(function () {
564
+ $color.wheel.show();
565
+ });
566
+ $color.value.blur(function () {
567
+ $color.wheel.hide();
568
+ });
569
+ // Handle text fields
570
+ $fields.on('change blur keyup', function () {
571
+ $val.val($width.val() + 'px ' + $style.val() + ' ' + $color.value.val()).trigger('change');
572
+ });
573
+ $val.on('keyup', function () {
574
+ var value = $(this).val().split(' ');
575
+ // Value is correct
576
+ if (value.length === 3) {
577
+ $width.val(value[0].replace('px', ''));
578
+ $style.val(value[1]);
579
+ $color.value.val(value[2]);
580
+ $fields.trigger('keyup');
581
+ }
582
+ });
583
+ });
584
+ // Remove skip class when setting is changed
585
+ $settings.find('.su-generator-attr').on('change keyup blur', function () {
586
+ var $cnt = $(this).parents('.su-generator-attr-container'),
587
+ _default = $cnt.data('default'),
588
+ val = $(this).val();
589
+ // Value is changed
590
+ if (val != _default) $cnt.removeClass('su-generator-skip');
591
+ else $cnt.addClass('su-generator-skip');
592
+ });
593
+ // Init value setters
594
+ $('.su-generator-set-value').click(function (e) {
595
+ $(this).parents('.su-generator-attr-container').find('input').val($(this).text()).trigger('change');
596
+ });
597
+ // Save selected value
598
+ $selected.val(shortcode);
599
+ // Load last used preset
600
+ $.ajax({
601
+ type: 'GET',
602
+ url: ajaxurl,
603
+ data: {
604
+ action: 'su_generator_get_preset',
605
+ id: 'last_used',
606
+ shortcode: shortcode
607
+ },
608
+ beforeSend: function () {
609
+ // Show loading animation
610
+ // $settings.addClass('su-generator-loading');
611
+ },
612
+ success: function (data) {
613
+ // Remove loading animation
614
+ // $settings.removeClass('su-generator-loading');
615
+ // Set new settings
616
+ set(data);
617
+ // Apply selected text to the content field
618
+ if (typeof mce_selection !== 'undefined' && mce_selection !== '') $('#su-generator-content').val(mce_selection);
619
+ },
620
+ dataType: 'json'
621
+ });
622
+ },
623
+ dataType: 'html'
624
+ });
625
+ });
626
+
627
+ // Insert shortcode
628
+ $('#su-generator').on('click', '.su-generator-insert', function (e) {
629
+ // Prepare data
630
+ var shortcode = parse();
631
+ // Save current settings to presets
632
+ add_preset('last_used', su_generator.last_used);
633
+ // Close popup
634
+ $.magnificPopup.close();
635
+ // Save shortcode to div
636
+ $result.text(shortcode);
637
+ // Prevent default action
638
+ e.preventDefault();
639
+ // Save original activeeditor
640
+ window.su_wpActiveEditor = window.wpActiveEditor;
641
+ // Set new active editor
642
+ window.wpActiveEditor = window.su_generator_target;
643
+ // Insert shortcode
644
+ window.wp.media.editor.insert(shortcode);
645
+ // Restore previous editor
646
+ window.wpActiveEditor = window.su_wpActiveEditor;
647
+ // Check for target content editor
648
+ // if (typeof window.su_generator_target === 'undefined') return;
649
+ // Insert into default content editor
650
+ // else if (window.su_generator_target === 'content') window.wp.media.editor.insert(shortcode);
651
+ // Insert into ET page builder (text box)
652
+ // else if (window.su_generator_target === 'et_pb_content_new') window.wp.media.editor.insert(shortcode);
653
+ // Insert into textarea
654
+ // else {
655
+ // var $target = $('textarea#' + window.su_generator_target);
656
+ // if ($target.length > 0) $target.val($target.val() + shortcode);
657
+ // }
658
+ });
659
+
660
+ // Preview shortcode
661
+ $('#su-generator').on('click', '.su-generator-toggle-preview', function (e) {
662
+ // Prepare data
663
+ var $preview = $('#su-generator-preview'),
664
+ $button = $(this);
665
+ // Hide button
666
+ $button.hide();
667
+ // Show preview box
668
+ $preview.addClass('su-generator-loading').show();
669
+ // Bind updating on settings changes
670
+ $settings.find('input, textarea, select').on('change keyup blur', function () {
671
+ update_preview();
672
+ });
673
+ // Update preview box
674
+ update_preview(true);
675
+ // Prevent default action
676
+ e.preventDefault();
677
+ });
678
+
679
+ var gp_hover_timer;
680
+
681
+ // Presets manager - mouseenter
682
+ $('#su-generator').on('mouseenter click', '.su-generator-presets', function () {
683
+ clearTimeout(gp_hover_timer);
684
+ $('.su-gp-popup').show();
685
+ });
686
+ // Presets manager - mouseleave
687
+ $('#su-generator').on('mouseleave', '.su-generator-presets', function () {
688
+ gp_hover_timer = window.setTimeout(function () {
689
+ $('.su-gp-popup').fadeOut(200);
690
+ }, 600);
691
+ });
692
+ // Presets manager - add new preset
693
+ $('#su-generator').on('click', '.su-gp-new', function (e) {
694
+ // Prepare data
695
+ var $container = $(this).parents('.su-generator-presets'),
696
+ $list = $('.su-gp-list'),
697
+ id = new Date().getTime();
698
+ // Ask for preset name
699
+ var name = prompt(su_generator.presets_prompt_msg, su_generator.presets_prompt_value);
700
+ // Name is entered
701
+ if (name !== '' && name !== null) {
702
+ // Hide default text
703
+ $list.find('b').hide();
704
+ // Add new option
705
+ $list.append('<span data-id="' + id + '"><em>' + name + '</em><i class="fa fa-times"></i></span>');
706
+ // Perform AJAX request
707
+ add_preset(id, name);
708
+ }
709
+ });
710
+ // Presets manager - load preset
711
+ $('#su-generator').on('click', '.su-gp-list span', function (e) {
712
+ // Prepare data
713
+ var shortcode = $('.su-generator-presets').data('shortcode'),
714
+ id = $(this).data('id'),
715
+ $insert = $('.su-generator-insert');
716
+ // Hide popup
717
+ $('.su-gp-popup').hide();
718
+ // Disable hover timer
719
+ clearTimeout(gp_hover_timer);
720
+ // Get the preset
721
+ $.ajax({
722
+ type: 'GET',
723
+ url: ajaxurl,
724
+ data: {
725
+ action: 'su_generator_get_preset',
726
+ id: id,
727
+ shortcode: shortcode
728
+ },
729
+ beforeSend: function () {
730
+ // Disable insert button
731
+ $insert.addClass('button-primary-disabled').attr('disabled', true);
732
+ },
733
+ success: function (data) {
734
+ // Enable insert button
735
+ $insert.removeClass('button-primary-disabled').attr('disabled', false);
736
+ // Set new settings
737
+ set(data);
738
+ },
739
+ dataType: 'json'
740
+ });
741
+ // Prevent default action
742
+ e.preventDefault();
743
+ e.stopPropagation();
744
+ });
745
+ // Presets manager - remove preset
746
+ $('#su-generator').on('click', '.su-gp-list i', function (e) {
747
+ // Prepare data
748
+ var $list = $(this).parents('.su-gp-list'),
749
+ $preset = $(this).parent('span'),
750
+ id = $preset.data('id');
751
+ // Remove DOM element
752
+ $preset.remove();
753
+ // Show default text if last preset was removed
754
+ if ($list.find('span').length < 1) $list.find('b').show();
755
+ // Perform ajax request
756
+ remove_preset(id);
757
+ // Prevent <span> action
758
+ e.stopPropagation();
759
+ // Prevent default action
760
+ e.preventDefault();
761
+ });
762
+
763
+ /**
764
+ * Create new preset with specified name from current settings
765
+ */
766
+ function add_preset(id, name) {
767
+ // Prepare shortcode name and current settings
768
+ var shortcode = $('.su-generator-presets').data('shortcode'),
769
+ settings = get();
770
+ // Perform AJAX request
771
+ $.ajax({
772
+ type: 'POST',
773
+ url: ajaxurl,
774
+ data: {
775
+ action: 'su_generator_add_preset',
776
+ id: id,
777
+ name: name,
778
+ shortcode: shortcode,
779
+ settings: settings
780
+ }
781
+ });
782
+ }
783
+
784
+ /**
785
+ * Remove preset by ID
786
+ */
787
+ function remove_preset(id) {
788
+ // Get current shortcode name
789
+ var shortcode = $('.su-generator-presets').data('shortcode');
790
+ // Perform AJAX request
791
+ $.ajax({
792
+ type: 'POST',
793
+ url: ajaxurl,
794
+ data: {
795
+ action: 'su_generator_remove_preset',
796
+ id: id,
797
+ shortcode: shortcode
798
+ }
799
+ });
800
+ }
801
+
802
+ function parse() {
803
+ // Prepare data
804
+ var query = $selected.val(),
805
+ prefix = $prefix.val(),
806
+ $settings = $('#su-generator-settings .su-generator-attr-container:not(.su-generator-skip) .su-generator-attr'),
807
+ content = $('#su-generator-content').val(),
808
+ result = new String('');
809
+ // Open shortcode
810
+ result += '[' + prefix + query;
811
+ // Add shortcode attributes
812
+ $settings.each(function () {
813
+ // Prepare field and value
814
+ var $this = $(this),
815
+ value = '';
816
+ // Selects
817
+ if ($this.is('select')) value = $this.find('option:selected').val();
818
+ // Other fields
819
+ else value = $this.val();
820
+ // Check that value is not empty
821
+ if (value == null) value = '';
822
+ else if (typeof value === 'array') value = value.join(',');
823
+ // Add attribute
824
+ if (value !== '') result += ' ' + $(this).attr('name') + '="' + $(this).val().toString().replace(/"/gi, "'") + '"';
825
+ });
826
+ // End of opening tag
827
+ result += ']';
828
+ // Wrap shortcode if content presented
829
+ if (content != 'false') result += content + '[/' + prefix + query + ']';
830
+ // Return result
831
+ return result;
832
+ }
833
+
834
+ function get() {
835
+ // Prepare data
836
+ var query = $selected.val(),
837
+ $settings = $('#su-generator-settings .su-generator-attr'),
838
+ content = $('#su-generator-content').val(),
839
+ data = {};
840
+ // Add shortcode attributes
841
+ $settings.each(function (i) {
842
+ // Prepare field and value
843
+ var $this = $(this),
844
+ value = '',
845
+ name = $this.attr('name');
846
+ // Selects
847
+ if ($this.is('select')) value = $this.find('option:selected').val();
848
+ // Other fields
849
+ else value = $this.val();
850
+ // Check that value is not empty
851
+ if (value == null) value = '';
852
+ // Save value
853
+ data[name] = value;
854
+ });
855
+ // Add content
856
+ data['content'] = content.toString();
857
+ // Return data
858
+ return data;
859
+ }
860
+
861
+ function set(data) {
862
+ // Prepare data
863
+ var $settings = $('#su-generator-settings .su-generator-attr'),
864
+ $content = $('#su-generator-content');
865
+ // Loop through settings
866
+ $settings.each(function () {
867
+ var $this = $(this),
868
+ name = $this.attr('name');
869
+ // Data contains value for this field
870
+ if (data.hasOwnProperty(name)) {
871
+ // Set new value
872
+ $this.val(data[name]);
873
+ $this.trigger('keyup').trigger('change').trigger('blur');
874
+ }
875
+ });
876
+ // Set content
877
+ if (data.hasOwnProperty('content')) $content.val(data['content']).trigger('keyup').trigger('change').trigger('blur');
878
+ // Update preview
879
+ update_preview();
880
+ }
881
+
882
+ var update_preview_timer,
883
+ update_preview_request;
884
+
885
+ function update_preview(forced) {
886
+ // Prepare data
887
+ var $preview = $('#su-generator-preview'),
888
+ shortcode = parse(),
889
+ previous = $result.text();
890
+ // Check forced mode
891
+ forced = forced || false;
892
+ // Break if preview box is hidden (preview isn't enabled)
893
+ if (!$preview.is(':visible')) return;
894
+ // Check shortcode is changed is this is not a forced mode
895
+ if (shortcode === previous && !forced) return;
896
+ // Run timer to filter often calls
897
+ window.clearTimeout(update_preview_timer);
898
+ update_preview_timer = window.setTimeout(function () {
899
+ update_preview_request = $.ajax({
900
+ type: 'POST',
901
+ url: ajaxurl,
902
+ cache: false,
903
+ data: {
904
+ action: 'su_generator_preview',
905
+ shortcode: shortcode
906
+ },
907
+ beforeSend: function () {
908
+ // Abort previous requests
909
+ if (typeof update_preview_request === 'object') update_preview_request.abort();
910
+ // Show loading animation
911
+ $preview.addClass('su-generator-loading').html('');
912
+ },
913
+ success: function (data) {
914
+ // Hide loading animation and set new HTML
915
+ $preview.html(data).removeClass('su-generator-loading');
916
+ },
917
+ dataType: 'html'
918
+ });
919
+ }, 300);
920
+ // Save shortcode to div
921
+ $result.text(shortcode);
922
+ }
923
+
924
  });
assets/js/inview.js CHANGED
@@ -1,3 +1,3 @@
1
- (function(d){var p={},e,a,h=document,i=window,f=h.documentElement,j=d.expando;d.event.special.inview={add:function(a){p[a.guid+"-"+this[j]]={data:a,$element:d(this)}},remove:function(a){try{delete p[a.guid+"-"+this[j]]}catch(d){}}};d(i).bind("scroll resize",function(){e=a=null});!f.addEventListener&&f.attachEvent&&f.attachEvent("onfocusin",function(){a=null});setInterval(function(){var k=d(),j,n=0;d.each(p,function(a,b){var c=b.data.selector,d=b.$element;k=k.add(c?d.find(c):d)});if(j=k.length){var b;
2
- if(!(b=e)){var g={height:i.innerHeight,width:i.innerWidth};if(!g.height&&((b=h.compatMode)||!d.support.boxModel))b="CSS1Compat"===b?f:h.body,g={height:b.clientHeight,width:b.clientWidth};b=g}e=b;for(a=a||{top:i.pageYOffset||f.scrollTop||h.body.scrollTop,left:i.pageXOffset||f.scrollLeft||h.body.scrollLeft};n<j;n++)if(d.contains(f,k[n])){b=d(k[n]);var l=b.height(),m=b.width(),c=b.offset(),g=b.data("inview");if(!a||!e)break;c.top+l>a.top&&c.top<a.top+e.height&&c.left+m>a.left&&c.left<a.left+e.width?
3
  (m=a.left>c.left?"right":a.left+e.width<c.left+m?"left":"both",l=a.top>c.top?"bottom":a.top+e.height<c.top+l?"top":"both",c=m+"-"+l,(!g||g!==c)&&b.data("inview",c).trigger("inview",[!0,m,l])):g&&b.data("inview",!1).trigger("inview",[!1])}}},250)})(jQuery);
1
+ (function(d){var p={},e,a,h=document,i=window,f=h.documentElement,j=d.expando;d.event.special.inview={add:function(a){p[a.guid+"-"+this[j]]={data:a,$element:d(this)}},remove:function(a){try{delete p[a.guid+"-"+this[j]]}catch(d){}}};d(i).bind("scroll resize",function(){e=a=null});!f.addEventListener&&f.attachEvent&&f.attachEvent("onfocusin",function(){a=null});setInterval(function(){var k=d(),j,n=0;d.each(p,function(a,b){var c=b.data.selector,d=b.$element;k=k.add(c?d.find(c):d)});if(j=k.length){var b;
2
+ if(!(b=e)){var g={height:i.innerHeight,width:i.innerWidth};if(!g.height&&((b=h.compatMode)||!d.support.boxModel))b="CSS1Compat"===b?f:h.body,g={height:b.clientHeight,width:b.clientWidth};b=g}e=b;for(a=a||{top:i.pageYOffset||f.scrollTop||h.body.scrollTop,left:i.pageXOffset||f.scrollLeft||h.body.scrollLeft};n<j;n++)if(d.contains(f,k[n])){b=d(k[n]);var l=b.height(),m=b.width(),c=b.offset(),g=b.data("inview");if(!a||!e)break;c.top+l>a.top&&c.top<a.top+e.height&&c.left+m>a.left&&c.left<a.left+e.width?
3
  (m=a.left>c.left?"right":a.left+e.width<c.left+m?"left":"both",l=a.top>c.top?"bottom":a.top+e.height<c.top+l?"top":"both",c=m+"-"+l,(!g||g!==c)&&b.data("inview",c).trigger("inview",[!0,m,l])):g&&b.data("inview",!1).trigger("inview",[!1])}}},250)})(jQuery);
assets/js/jplayer.js CHANGED
@@ -1,107 +1,107 @@
1
- /*
2
- * jPlayer Plugin for jQuery JavaScript Library
3
- * http://www.jplayer.org
4
- *
5
- * Copyright (c) 2009 - 2013 Happyworm Ltd
6
- * Licensed under the MIT license.
7
- * http://opensource.org/licenses/MIT
8
- *
9
- * Author: Mark J Panaghiston
10
- * Version: 2.4.0
11
- * Date: 5th June 2013
12
- */
13
-
14
- (function(b,f){"function"===typeof define&&define.amd?define(["jquery"],f):b.jQuery?f(b.jQuery):f(b.Zepto)})(this,function(b,f){b.fn.jPlayer=function(a){var c="string"===typeof a,d=Array.prototype.slice.call(arguments,1),e=this;a=!c&&d.length?b.extend.apply(null,[!0,a].concat(d)):a;if(c&&"_"===a.charAt(0))return e;c?this.each(function(){var c=b(this).data("jPlayer"),h=c&&b.isFunction(c[a])?c[a].apply(c,d):c;if(h!==c&&h!==f)return e=h,!1}):this.each(function(){var c=b(this).data("jPlayer");c?c.option(a||
15
- {}):b(this).data("jPlayer",new b.jPlayer(a,this))});return e};b.jPlayer=function(a,c){if(arguments.length){this.element=b(c);this.options=b.extend(!0,{},this.options,a);var d=this;this.element.bind("remove.jPlayer",function(){d.destroy()});this._init()}};"function"!==typeof b.fn.stop&&(b.fn.stop=function(){});b.jPlayer.emulateMethods="load play pause";b.jPlayer.emulateStatus="src readyState networkState currentTime duration paused ended playbackRate";b.jPlayer.emulateOptions="muted volume";b.jPlayer.reservedEvent=
16
- "ready flashreset resize repeat error warning";b.jPlayer.event={};b.each("ready flashreset resize repeat click error warning loadstart progress suspend abort emptied stalled play pause loadedmetadata loadeddata waiting playing canplay canplaythrough seeking seeked timeupdate ended ratechange durationchange volumechange".split(" "),function(){b.jPlayer.event[this]="jPlayer_"+this});b.jPlayer.htmlEvent="loadstart abort emptied stalled loadedmetadata loadeddata canplay canplaythrough ratechange".split(" ");
17
- b.jPlayer.pause=function(){b.each(b.jPlayer.prototype.instances,function(a,c){c.data("jPlayer").status.srcSet&&c.jPlayer("pause")})};b.jPlayer.timeFormat={showHour:!1,showMin:!0,showSec:!0,padHour:!1,padMin:!0,padSec:!0,sepHour:":",sepMin:":",sepSec:""};var l=function(){this.init()};l.prototype={init:function(){this.options={timeFormat:b.jPlayer.timeFormat}},time:function(a){var c=new Date(1E3*(a&&"number"===typeof a?a:0)),b=c.getUTCHours();a=this.options.timeFormat.showHour?c.getUTCMinutes():c.getUTCMinutes()+
18
- 60*b;c=this.options.timeFormat.showMin?c.getUTCSeconds():c.getUTCSeconds()+60*a;b=this.options.timeFormat.padHour&&10>b?"0"+b:b;a=this.options.timeFormat.padMin&&10>a?"0"+a:a;c=this.options.timeFormat.padSec&&10>c?"0"+c:c;b=""+(this.options.timeFormat.showHour?b+this.options.timeFormat.sepHour:"");b+=this.options.timeFormat.showMin?a+this.options.timeFormat.sepMin:"";return b+=this.options.timeFormat.showSec?c+this.options.timeFormat.sepSec:""}};var m=new l;b.jPlayer.convertTime=function(a){return m.time(a)};
19
- b.jPlayer.uaBrowser=function(a){a=a.toLowerCase();var b=/(opera)(?:.*version)?[ \/]([\w.]+)/,d=/(msie) ([\w.]+)/,e=/(mozilla)(?:.*? rv:([\w.]+))?/;a=/(webkit)[ \/]([\w.]+)/.exec(a)||b.exec(a)||d.exec(a)||0>a.indexOf("compatible")&&e.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}};b.jPlayer.uaPlatform=function(a){var b=a.toLowerCase(),d=/(android)/,e=/(mobile)/;a=/(ipad|iphone|ipod|android|blackberry|playbook|windows ce|webos)/.exec(b)||[];b=/(ipad|playbook)/.exec(b)||!e.exec(b)&&d.exec(b)||
20
- [];a[1]&&(a[1]=a[1].replace(/\s/g,"_"));return{platform:a[1]||"",tablet:b[1]||""}};b.jPlayer.browser={};b.jPlayer.platform={};var j=b.jPlayer.uaBrowser(navigator.userAgent);j.browser&&(b.jPlayer.browser[j.browser]=!0,b.jPlayer.browser.version=j.version);j=b.jPlayer.uaPlatform(navigator.userAgent);j.platform&&(b.jPlayer.platform[j.platform]=!0,b.jPlayer.platform.mobile=!j.tablet,b.jPlayer.platform.tablet=!!j.tablet);b.jPlayer.getDocMode=function(){var a;b.jPlayer.browser.msie&&(document.documentMode?
21
- a=document.documentMode:(a=5,document.compatMode&&"CSS1Compat"===document.compatMode&&(a=7)));return a};b.jPlayer.browser.documentMode=b.jPlayer.getDocMode();b.jPlayer.nativeFeatures={init:function(){var a=document,b=a.createElement("video"),d={w3c:"fullscreenEnabled fullscreenElement requestFullscreen exitFullscreen fullscreenchange fullscreenerror".split(" "),moz:"mozFullScreenEnabled mozFullScreenElement mozRequestFullScreen mozCancelFullScreen mozfullscreenchange mozfullscreenerror".split(" "),
22
- webkit:" webkitCurrentFullScreenElement webkitRequestFullScreen webkitCancelFullScreen webkitfullscreenchange ".split(" "),webkitVideo:"webkitSupportsFullscreen webkitDisplayingFullscreen webkitEnterFullscreen webkitExitFullscreen ".split(" ")},e=["w3c","moz","webkit","webkitVideo"],g,h;this.fullscreen=b={support:{w3c:!!a[d.w3c[0]],moz:!!a[d.moz[0]],webkit:"function"===typeof a[d.webkit[3]],webkitVideo:"function"===typeof b[d.webkitVideo[2]]},used:{}};g=0;for(h=e.length;g<h;g++){var f=e[g];if(b.support[f]){b.spec=
23
- f;b.used[f]=!0;break}}if(b.spec){var k=d[b.spec];b.api={fullscreenEnabled:!0,fullscreenElement:function(b){b=b?b:a;return b[k[1]]},requestFullscreen:function(a){return a[k[2]]()},exitFullscreen:function(b){b=b?b:a;return b[k[3]]()}};b.event={fullscreenchange:k[4],fullscreenerror:k[5]}}else b.api={fullscreenEnabled:!1,fullscreenElement:function(){return null},requestFullscreen:function(){},exitFullscreen:function(){}},b.event={}}};b.jPlayer.nativeFeatures.init();b.jPlayer.focus=null;b.jPlayer.keyIgnoreElementNames=
24
- "INPUT TEXTAREA";var n=function(a){var c=b.jPlayer.focus,d;c&&(b.each(b.jPlayer.keyIgnoreElementNames.split(/\s+/g),function(b,c){if(a.target.nodeName.toUpperCase()===c.toUpperCase())return d=!0,!1}),d||b.each(c.options.keyBindings,function(d,g){if(g&&a.which===g.key&&b.isFunction(g.fn))return a.preventDefault(),g.fn(c),!1}))};b.jPlayer.keys=function(a){b(document.documentElement).unbind("keydown.jPlayer");a&&b(document.documentElement).bind("keydown.jPlayer",n)};b.jPlayer.keys(!0);b.jPlayer.prototype=
25
- {count:0,version:{script:"2.4.0",needFlash:"2.4.0",flash:"unknown"},options:{swfPath:"js",solution:"html, flash",supplied:"mp3",preload:"metadata",volume:0.8,muted:!1,wmode:"opaque",backgroundColor:"#000000",cssSelectorAncestor:"#jp_container_1",cssSelector:{videoPlay:".jp-video-play",play:".jp-play",pause:".jp-pause",stop:".jp-stop",seekBar:".jp-seek-bar",playBar:".jp-play-bar",mute:".jp-mute",unmute:".jp-unmute",volumeBar:".jp-volume-bar",volumeBarValue:".jp-volume-bar-value",volumeMax:".jp-volume-max",
26
- currentTime:".jp-current-time",duration:".jp-duration",fullScreen:".jp-full-screen",restoreScreen:".jp-restore-screen",repeat:".jp-repeat",repeatOff:".jp-repeat-off",gui:".jp-gui",noSolution:".jp-no-solution"},smoothPlayBar:!1,fullScreen:!1,fullWindow:!1,autohide:{restored:!1,full:!0,fadeIn:200,fadeOut:600,hold:1E3},loop:!1,repeat:function(a){a.jPlayer.options.loop?b(this).unbind(".jPlayerRepeat").bind(b.jPlayer.event.ended+".jPlayer.jPlayerRepeat",function(){b(this).jPlayer("play")}):b(this).unbind(".jPlayerRepeat")},
27
- nativeVideoControls:{},noFullWindow:{msie:/msie [0-6]\./,ipad:/ipad.*?os [0-4]\./,iphone:/iphone/,ipod:/ipod/,android_pad:/android [0-3]\.(?!.*?mobile)/,android_phone:/android.*?mobile/,blackberry:/blackberry/,windows_ce:/windows ce/,iemobile:/iemobile/,webos:/webos/},noVolume:{ipad:/ipad/,iphone:/iphone/,ipod:/ipod/,android_pad:/android(?!.*?mobile)/,android_phone:/android.*?mobile/,blackberry:/blackberry/,windows_ce:/windows ce/,iemobile:/iemobile/,webos:/webos/,playbook:/playbook/},timeFormat:{},
28
- keyEnabled:!1,audioFullScreen:!1,keyBindings:{play:{key:32,fn:function(a){a.status.paused?a.play():a.pause()}},fullScreen:{key:13,fn:function(a){(a.status.video||a.options.audioFullScreen)&&a._setOption("fullScreen",!a.options.fullScreen)}},muted:{key:8,fn:function(a){a._muted(!a.options.muted)}},volumeUp:{key:38,fn:function(a){a.volume(a.options.volume+0.1)}},volumeDown:{key:40,fn:function(a){a.volume(a.options.volume-0.1)}}},verticalVolume:!1,idPrefix:"jp",noConflict:"jQuery",emulateHtml:!1,errorAlerts:!1,
29
- warningAlerts:!1},optionsAudio:{size:{width:"0px",height:"0px",cssClass:""},sizeFull:{width:"0px",height:"0px",cssClass:""}},optionsVideo:{size:{width:"480px",height:"270px",cssClass:"jp-video-270p"},sizeFull:{width:"100%",height:"100%",cssClass:"jp-video-full"}},instances:{},status:{src:"",media:{},paused:!0,format:{},formatType:"",waitForPlay:!0,waitForLoad:!0,srcSet:!1,video:!1,seekPercent:0,currentPercentRelative:0,currentPercentAbsolute:0,currentTime:0,duration:0,videoWidth:0,videoHeight:0,readyState:0,
30
- networkState:0,playbackRate:1,ended:0},internal:{ready:!1},solution:{html:!0,flash:!0},format:{mp3:{codec:'audio/mpeg; codecs="mp3"',flashCanPlay:!0,media:"audio"},m4a:{codec:'audio/mp4; codecs="mp4a.40.2"',flashCanPlay:!0,media:"audio"},oga:{codec:'audio/ogg; codecs="vorbis"',flashCanPlay:!1,media:"audio"},wav:{codec:'audio/wav; codecs="1"',flashCanPlay:!1,media:"audio"},webma:{codec:'audio/webm; codecs="vorbis"',flashCanPlay:!1,media:"audio"},fla:{codec:"audio/x-flv",flashCanPlay:!0,media:"audio"},
31
- rtmpa:{codec:'audio/rtmp; codecs="rtmp"',flashCanPlay:!0,media:"audio"},m4v:{codec:'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',flashCanPlay:!0,media:"video"},ogv:{codec:'video/ogg; codecs="theora, vorbis"',flashCanPlay:!1,media:"video"},webmv:{codec:'video/webm; codecs="vorbis, vp8"',flashCanPlay:!1,media:"video"},flv:{codec:"video/x-flv",flashCanPlay:!0,media:"video"},rtmpv:{codec:'video/rtmp; codecs="rtmp"',flashCanPlay:!0,media:"video"}},_init:function(){var a=this;this.element.empty();this.status=
32
- b.extend({},this.status);this.internal=b.extend({},this.internal);this.options.timeFormat=b.extend({},b.jPlayer.timeFormat,this.options.timeFormat);this.internal.cmdsIgnored=b.jPlayer.platform.ipad||b.jPlayer.platform.iphone||b.jPlayer.platform.ipod;this.internal.domNode=this.element.get(0);this.options.keyEnabled&&!b.jPlayer.focus&&(b.jPlayer.focus=this);this.formats=[];this.solutions=[];this.require={};this.htmlElement={};this.html={};this.html.audio={};this.html.video={};this.flash={};this.css=
33
- {};this.css.cs={};this.css.jq={};this.ancestorJq=[];this.options.volume=this._limitValue(this.options.volume,0,1);b.each(this.options.supplied.toLowerCase().split(","),function(c,d){var e=d.replace(/^\s+|\s+$/g,"");if(a.format[e]){var f=!1;b.each(a.formats,function(a,b){if(e===b)return f=!0,!1});f||a.formats.push(e)}});b.each(this.options.solution.toLowerCase().split(","),function(c,d){var e=d.replace(/^\s+|\s+$/g,"");if(a.solution[e]){var f=!1;b.each(a.solutions,function(a,b){if(e===b)return f=!0,
34
- !1});f||a.solutions.push(e)}});this.internal.instance="jp_"+this.count;this.instances[this.internal.instance]=this.element;this.element.attr("id")||this.element.attr("id",this.options.idPrefix+"_jplayer_"+this.count);this.internal.self=b.extend({},{id:this.element.attr("id"),jq:this.element});this.internal.audio=b.extend({},{id:this.options.idPrefix+"_audio_"+this.count,jq:f});this.internal.video=b.extend({},{id:this.options.idPrefix+"_video_"+this.count,jq:f});this.internal.flash=b.extend({},{id:this.options.idPrefix+
35
- "_flash_"+this.count,jq:f,swf:this.options.swfPath+(".swf"!==this.options.swfPath.toLowerCase().slice(-4)?(this.options.swfPath&&"/"!==this.options.swfPath.slice(-1)?"/":"")+"Jplayer.swf":"")});this.internal.poster=b.extend({},{id:this.options.idPrefix+"_poster_"+this.count,jq:f});b.each(b.jPlayer.event,function(b,c){a.options[b]!==f&&(a.element.bind(c+".jPlayer",a.options[b]),a.options[b]=f)});this.require.audio=!1;this.require.video=!1;b.each(this.formats,function(b,c){a.require[a.format[c].media]=
36
- !0});this.options=this.require.video?b.extend(!0,{},this.optionsVideo,this.options):b.extend(!0,{},this.optionsAudio,this.options);this._setSize();this.status.nativeVideoControls=this._uaBlocklist(this.options.nativeVideoControls);this.status.noFullWindow=this._uaBlocklist(this.options.noFullWindow);this.status.noVolume=this._uaBlocklist(this.options.noVolume);b.jPlayer.nativeFeatures.fullscreen.api.fullscreenEnabled&&this._fullscreenAddEventListeners();this._restrictNativeVideoControls();this.htmlElement.poster=
37
- document.createElement("img");this.htmlElement.poster.id=this.internal.poster.id;this.htmlElement.poster.onload=function(){(!a.status.video||a.status.waitForPlay)&&a.internal.poster.jq.show()};this.element.append(this.htmlElement.poster);this.internal.poster.jq=b("#"+this.internal.poster.id);this.internal.poster.jq.css({width:this.status.width,height:this.status.height});this.internal.poster.jq.hide();this.internal.poster.jq.bind("click.jPlayer",function(){a._trigger(b.jPlayer.event.click)});this.html.audio.available=
38
- !1;this.require.audio&&(this.htmlElement.audio=document.createElement("audio"),this.htmlElement.audio.id=this.internal.audio.id,this.html.audio.available=!!this.htmlElement.audio.canPlayType&&this._testCanPlayType(this.htmlElement.audio));this.html.video.available=!1;this.require.video&&(this.htmlElement.video=document.createElement("video"),this.htmlElement.video.id=this.internal.video.id,this.html.video.available=!!this.htmlElement.video.canPlayType&&this._testCanPlayType(this.htmlElement.video));
39
- this.flash.available=this._checkForFlash(10.1);this.html.canPlay={};this.flash.canPlay={};b.each(this.formats,function(b,c){a.html.canPlay[c]=a.html[a.format[c].media].available&&""!==a.htmlElement[a.format[c].media].canPlayType(a.format[c].codec);a.flash.canPlay[c]=a.format[c].flashCanPlay&&a.flash.available});this.html.desired=!1;this.flash.desired=!1;b.each(this.solutions,function(c,d){if(0===c)a[d].desired=!0;else{var e=!1,f=!1;b.each(a.formats,function(b,c){a[a.solutions[0]].canPlay[c]&&("video"===
40
- a.format[c].media?f=!0:e=!0)});a[d].desired=a.require.audio&&!e||a.require.video&&!f}});this.html.support={};this.flash.support={};b.each(this.formats,function(b,c){a.html.support[c]=a.html.canPlay[c]&&a.html.desired;a.flash.support[c]=a.flash.canPlay[c]&&a.flash.desired});this.html.used=!1;this.flash.used=!1;b.each(this.solutions,function(c,d){b.each(a.formats,function(b,c){if(a[d].support[c])return a[d].used=!0,!1})});this._resetActive();this._resetGate();this._cssSelectorAncestor(this.options.cssSelectorAncestor);
41
- !this.html.used&&!this.flash.used?(this._error({type:b.jPlayer.error.NO_SOLUTION,context:"{solution:'"+this.options.solution+"', supplied:'"+this.options.supplied+"'}",message:b.jPlayer.errorMsg.NO_SOLUTION,hint:b.jPlayer.errorHint.NO_SOLUTION}),this.css.jq.noSolution.length&&this.css.jq.noSolution.show()):this.css.jq.noSolution.length&&this.css.jq.noSolution.hide();if(this.flash.used){var c,d="jQuery="+encodeURI(this.options.noConflict)+"&id="+encodeURI(this.internal.self.id)+"&vol="+this.options.volume+
42
- "&muted="+this.options.muted;if(b.jPlayer.browser.msie&&(9>Number(b.jPlayer.browser.version)||9>b.jPlayer.browser.documentMode)){d=['<param name="movie" value="'+this.internal.flash.swf+'" />','<param name="FlashVars" value="'+d+'" />','<param name="allowScriptAccess" value="always" />','<param name="bgcolor" value="'+this.options.backgroundColor+'" />','<param name="wmode" value="'+this.options.wmode+'" />'];c=document.createElement('<object id="'+this.internal.flash.id+'" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="0" height="0" tabindex="-1"></object>');
43
- for(var e=0;e<d.length;e++)c.appendChild(document.createElement(d[e]))}else e=function(a,b,c){var d=document.createElement("param");d.setAttribute("name",b);d.setAttribute("value",c);a.appendChild(d)},c=document.createElement("object"),c.setAttribute("id",this.internal.flash.id),c.setAttribute("name",this.internal.flash.id),c.setAttribute("data",this.internal.flash.swf),c.setAttribute("type","application/x-shockwave-flash"),c.setAttribute("width","1"),c.setAttribute("height","1"),c.setAttribute("tabindex",
44
- "-1"),e(c,"flashvars",d),e(c,"allowscriptaccess","always"),e(c,"bgcolor",this.options.backgroundColor),e(c,"wmode",this.options.wmode);this.element.append(c);this.internal.flash.jq=b(c)}this.html.used&&(this.html.audio.available&&(this._addHtmlEventListeners(this.htmlElement.audio,this.html.audio),this.element.append(this.htmlElement.audio),this.internal.audio.jq=b("#"+this.internal.audio.id)),this.html.video.available&&(this._addHtmlEventListeners(this.htmlElement.video,this.html.video),this.element.append(this.htmlElement.video),
45
- this.internal.video.jq=b("#"+this.internal.video.id),this.status.nativeVideoControls?this.internal.video.jq.css({width:this.status.width,height:this.status.height}):this.internal.video.jq.css({width:"0px",height:"0px"}),this.internal.video.jq.bind("click.jPlayer",function(){a._trigger(b.jPlayer.event.click)})));this.options.emulateHtml&&this._emulateHtmlBridge();this.html.used&&!this.flash.used&&setTimeout(function(){a.internal.ready=!0;a.version.flash="n/a";a._trigger(b.jPlayer.event.repeat);a._trigger(b.jPlayer.event.ready)},
46
- 100);this._updateNativeVideoControls();this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide();b.jPlayer.prototype.count++},destroy:function(){this.clearMedia();this._removeUiClass();this.css.jq.currentTime.length&&this.css.jq.currentTime.text("");this.css.jq.duration.length&&this.css.jq.duration.text("");b.each(this.css.jq,function(a,b){b.length&&b.unbind(".jPlayer")});this.internal.poster.jq.unbind(".jPlayer");this.internal.video.jq&&this.internal.video.jq.unbind(".jPlayer");this._fullscreenRemoveEventListeners();
47
- this===b.jPlayer.focus&&(b.jPlayer.focus=null);this.options.emulateHtml&&this._destroyHtmlBridge();this.element.removeData("jPlayer");this.element.unbind(".jPlayer");this.element.empty();delete this.instances[this.internal.instance]},enable:function(){},disable:function(){},_testCanPlayType:function(a){try{return a.canPlayType(this.format.mp3.codec),!0}catch(b){return!1}},_uaBlocklist:function(a){var c=navigator.userAgent.toLowerCase(),d=!1;b.each(a,function(a,b){if(b&&b.test(c))return d=!0,!1});
48
- return d},_restrictNativeVideoControls:function(){this.require.audio&&this.status.nativeVideoControls&&(this.status.nativeVideoControls=!1,this.status.noFullWindow=!0)},_updateNativeVideoControls:function(){this.html.video.available&&this.html.used&&(this.htmlElement.video.controls=this.status.nativeVideoControls,this._updateAutohide(),this.status.nativeVideoControls&&this.require.video?(this.internal.poster.jq.hide(),this.internal.video.jq.css({width:this.status.width,height:this.status.height})):
49
- this.status.waitForPlay&&this.status.video&&(this.internal.poster.jq.show(),this.internal.video.jq.css({width:"0px",height:"0px"})))},_addHtmlEventListeners:function(a,c){var d=this;a.preload=this.options.preload;a.muted=this.options.muted;a.volume=this.options.volume;a.addEventListener("progress",function(){c.gate&&(d.internal.cmdsIgnored&&0<this.readyState&&(d.internal.cmdsIgnored=!1),d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.progress))},!1);a.addEventListener("timeupdate",
50
- function(){c.gate&&(d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.timeupdate))},!1);a.addEventListener("durationchange",function(){c.gate&&(d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.durationchange))},!1);a.addEventListener("play",function(){c.gate&&(d._updateButtons(!0),d._html_checkWaitForPlay(),d._trigger(b.jPlayer.event.play))},!1);a.addEventListener("playing",function(){c.gate&&(d._updateButtons(!0),d._seeked(),d._trigger(b.jPlayer.event.playing))},
51
- !1);a.addEventListener("pause",function(){c.gate&&(d._updateButtons(!1),d._trigger(b.jPlayer.event.pause))},!1);a.addEventListener("waiting",function(){c.gate&&(d._seeking(),d._trigger(b.jPlayer.event.waiting))},!1);a.addEventListener("seeking",function(){c.gate&&(d._seeking(),d._trigger(b.jPlayer.event.seeking))},!1);a.addEventListener("seeked",function(){c.gate&&(d._seeked(),d._trigger(b.jPlayer.event.seeked))},!1);a.addEventListener("volumechange",function(){c.gate&&(d.options.volume=a.volume,
52
- d.options.muted=a.muted,d._updateMute(),d._updateVolume(),d._trigger(b.jPlayer.event.volumechange))},!1);a.addEventListener("suspend",function(){c.gate&&(d._seeked(),d._trigger(b.jPlayer.event.suspend))},!1);a.addEventListener("ended",function(){c.gate&&(b.jPlayer.browser.webkit||(d.htmlElement.media.currentTime=0),d.htmlElement.media.pause(),d._updateButtons(!1),d._getHtmlStatus(a,!0),d._updateInterface(),d._trigger(b.jPlayer.event.ended))},!1);a.addEventListener("error",function(){c.gate&&(d._updateButtons(!1),
53
- d._seeked(),d.status.srcSet&&(clearTimeout(d.internal.htmlDlyCmdId),d.status.waitForLoad=!0,d.status.waitForPlay=!0,d.status.video&&!d.status.nativeVideoControls&&d.internal.video.jq.css({width:"0px",height:"0px"}),d._validString(d.status.media.poster)&&!d.status.nativeVideoControls&&d.internal.poster.jq.show(),d.css.jq.videoPlay.length&&d.css.jq.videoPlay.show(),d._error({type:b.jPlayer.error.URL,context:d.status.src,message:b.jPlayer.errorMsg.URL,hint:b.jPlayer.errorHint.URL})))},!1);b.each(b.jPlayer.htmlEvent,
54
- function(e,g){a.addEventListener(this,function(){c.gate&&d._trigger(b.jPlayer.event[g])},!1)})},_getHtmlStatus:function(a,b){var d=0,e=0,g=0,f=0;isFinite(a.duration)&&(this.status.duration=a.duration);d=a.currentTime;e=0<this.status.duration?100*d/this.status.duration:0;"object"===typeof a.seekable&&0<a.seekable.length?(g=0<this.status.duration?100*a.seekable.end(a.seekable.length-1)/this.status.duration:100,f=0<this.status.duration?100*a.currentTime/a.seekable.end(a.seekable.length-1):0):(g=100,
55
- f=e);b&&(e=f=d=0);this.status.seekPercent=g;this.status.currentPercentRelative=f;this.status.currentPercentAbsolute=e;this.status.currentTime=d;this.status.videoWidth=a.videoWidth;this.status.videoHeight=a.videoHeight;this.status.readyState=a.readyState;this.status.networkState=a.networkState;this.status.playbackRate=a.playbackRate;this.status.ended=a.ended},_resetStatus:function(){this.status=b.extend({},this.status,b.jPlayer.prototype.status)},_trigger:function(a,c,d){a=b.Event(a);a.jPlayer={};
56
- a.jPlayer.version=b.extend({},this.version);a.jPlayer.options=b.extend(!0,{},this.options);a.jPlayer.status=b.extend(!0,{},this.status);a.jPlayer.html=b.extend(!0,{},this.html);a.jPlayer.flash=b.extend(!0,{},this.flash);c&&(a.jPlayer.error=b.extend({},c));d&&(a.jPlayer.warning=b.extend({},d));this.element.trigger(a)},jPlayerFlashEvent:function(a,c){if(a===b.jPlayer.event.ready)if(this.internal.ready){if(this.flash.gate){if(this.status.srcSet){var d=this.status.currentTime,e=this.status.paused;this.setMedia(this.status.media);
57
- 0<d&&(e?this.pause(d):this.play(d))}this._trigger(b.jPlayer.event.flashreset)}}else this.internal.ready=!0,this.internal.flash.jq.css({width:"0px",height:"0px"}),this.version.flash=c.version,this.version.needFlash!==this.version.flash&&this._error({type:b.jPlayer.error.VERSION,context:this.version.flash,message:b.jPlayer.errorMsg.VERSION+this.version.flash,hint:b.jPlayer.errorHint.VERSION}),this._trigger(b.jPlayer.event.repeat),this._trigger(a);if(this.flash.gate)switch(a){case b.jPlayer.event.progress:this._getFlashStatus(c);
58
- this._updateInterface();this._trigger(a);break;case b.jPlayer.event.timeupdate:this._getFlashStatus(c);this._updateInterface();this._trigger(a);break;case b.jPlayer.event.play:this._seeked();this._updateButtons(!0);this._trigger(a);break;case b.jPlayer.event.pause:this._updateButtons(!1);this._trigger(a);break;case b.jPlayer.event.ended:this._updateButtons(!1);this._trigger(a);break;case b.jPlayer.event.click:this._trigger(a);break;case b.jPlayer.event.error:this.status.waitForLoad=!0;this.status.waitForPlay=
59
- !0;this.status.video&&this.internal.flash.jq.css({width:"0px",height:"0px"});this._validString(this.status.media.poster)&&this.internal.poster.jq.show();this.css.jq.videoPlay.length&&this.status.video&&this.css.jq.videoPlay.show();this.status.video?this._flash_setVideo(this.status.media):this._flash_setAudio(this.status.media);this._updateButtons(!1);this._error({type:b.jPlayer.error.URL,context:c.src,message:b.jPlayer.errorMsg.URL,hint:b.jPlayer.errorHint.URL});break;case b.jPlayer.event.seeking:this._seeking();
60
- this._trigger(a);break;case b.jPlayer.event.seeked:this._seeked();this._trigger(a);break;case b.jPlayer.event.ready:break;default:this._trigger(a)}return!1},_getFlashStatus:function(a){this.status.seekPercent=a.seekPercent;this.status.currentPercentRelative=a.currentPercentRelative;this.status.currentPercentAbsolute=a.currentPercentAbsolute;this.status.currentTime=a.currentTime;this.status.duration=a.duration;this.status.videoWidth=a.videoWidth;this.status.videoHeight=a.videoHeight;this.status.readyState=
61
- 4;this.status.networkState=0;this.status.playbackRate=1;this.status.ended=!1},_updateButtons:function(a){a===f?a=!this.status.paused:this.status.paused=!a;this.css.jq.play.length&&this.css.jq.pause.length&&(a?(this.css.jq.play.hide(),this.css.jq.pause.show()):(this.css.jq.play.show(),this.css.jq.pause.hide()));this.css.jq.restoreScreen.length&&this.css.jq.fullScreen.length&&(this.status.noFullWindow?(this.css.jq.fullScreen.hide(),this.css.jq.restoreScreen.hide()):this.options.fullWindow?(this.css.jq.fullScreen.hide(),
62
- this.css.jq.restoreScreen.show()):(this.css.jq.fullScreen.show(),this.css.jq.restoreScreen.hide()));this.css.jq.repeat.length&&this.css.jq.repeatOff.length&&(this.options.loop?(this.css.jq.repeat.hide(),this.css.jq.repeatOff.show()):(this.css.jq.repeat.show(),this.css.jq.repeatOff.hide()))},_updateInterface:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.width(this.status.seekPercent+"%");this.css.jq.playBar.length&&(this.options.smoothPlayBar?this.css.jq.playBar.stop().animate({width:this.status.currentPercentAbsolute+
63
- "%"},250,"linear"):this.css.jq.playBar.width(this.status.currentPercentRelative+"%"));this.css.jq.currentTime.length&&this.css.jq.currentTime.text(this._convertTime(this.status.currentTime));this.css.jq.duration.length&&this.css.jq.duration.text(this._convertTime(this.status.duration))},_convertTime:l.prototype.time,_seeking:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.addClass("jp-seeking-bg")},_seeked:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.removeClass("jp-seeking-bg")},
64
- _resetGate:function(){this.html.audio.gate=!1;this.html.video.gate=!1;this.flash.gate=!1},_resetActive:function(){this.html.active=!1;this.flash.active=!1},setMedia:function(a){var c=this,d=!1,e=this.status.media.poster!==a.poster;this._resetMedia();this._resetGate();this._resetActive();b.each(this.formats,function(e,f){var j="video"===c.format[f].media;b.each(c.solutions,function(b,e){if(c[e].support[f]&&c._validString(a[f])){var g="html"===e;j?(g?(c.html.video.gate=!0,c._html_setVideo(a),c.html.active=
65
- !0):(c.flash.gate=!0,c._flash_setVideo(a),c.flash.active=!0),c.css.jq.videoPlay.length&&c.css.jq.videoPlay.show(),c.status.video=!0):(g?(c.html.audio.gate=!0,c._html_setAudio(a),c.html.active=!0):(c.flash.gate=!0,c._flash_setAudio(a),c.flash.active=!0),c.css.jq.videoPlay.length&&c.css.jq.videoPlay.hide(),c.status.video=!1);d=!0;return!1}});if(d)return!1});if(d){if((!this.status.nativeVideoControls||!this.html.video.gate)&&this._validString(a.poster))e?this.htmlElement.poster.src=a.poster:this.internal.poster.jq.show();
66
- this.status.srcSet=!0;this.status.media=b.extend({},a);this._updateButtons(!1);this._updateInterface()}else this._error({type:b.jPlayer.error.NO_SUPPORT,context:"{supplied:'"+this.options.supplied+"'}",message:b.jPlayer.errorMsg.NO_SUPPORT,hint:b.jPlayer.errorHint.NO_SUPPORT})},_resetMedia:function(){this._resetStatus();this._updateButtons(!1);this._updateInterface();this._seeked();this.internal.poster.jq.hide();clearTimeout(this.internal.htmlDlyCmdId);this.html.active?this._html_resetMedia():this.flash.active&&
67
- this._flash_resetMedia()},clearMedia:function(){this._resetMedia();this.html.active?this._html_clearMedia():this.flash.active&&this._flash_clearMedia();this._resetGate();this._resetActive()},load:function(){this.status.srcSet?this.html.active?this._html_load():this.flash.active&&this._flash_load():this._urlNotSetError("load")},focus:function(){this.options.keyEnabled&&(b.jPlayer.focus=this)},play:function(a){a="number"===typeof a?a:NaN;this.status.srcSet?(this.focus(),this.html.active?this._html_play(a):
68
- this.flash.active&&this._flash_play(a)):this._urlNotSetError("play")},videoPlay:function(){this.play()},pause:function(a){a="number"===typeof a?a:NaN;this.status.srcSet?this.html.active?this._html_pause(a):this.flash.active&&this._flash_pause(a):this._urlNotSetError("pause")},pauseOthers:function(){var a=this;b.each(this.instances,function(b,d){a.element!==d&&d.data("jPlayer").status.srcSet&&d.jPlayer("pause")})},stop:function(){this.status.srcSet?this.html.active?this._html_pause(0):this.flash.active&&
69
- this._flash_pause(0):this._urlNotSetError("stop")},playHead:function(a){a=this._limitValue(a,0,100);this.status.srcSet?this.html.active?this._html_playHead(a):this.flash.active&&this._flash_playHead(a):this._urlNotSetError("playHead")},_muted:function(a){this.options.muted=a;this.html.used&&this._html_mute(a);this.flash.used&&this._flash_mute(a);!this.html.video.gate&&!this.html.audio.gate&&(this._updateMute(a),this._updateVolume(this.options.volume),this._trigger(b.jPlayer.event.volumechange))},
70
- mute:function(a){a=a===f?!0:!!a;this._muted(a)},unmute:function(a){a=a===f?!0:!!a;this._muted(!a)},_updateMute:function(a){a===f&&(a=this.options.muted);this.css.jq.mute.length&&this.css.jq.unmute.length&&(this.status.noVolume?(this.css.jq.mute.hide(),this.css.jq.unmute.hide()):a?(this.css.jq.mute.hide(),this.css.jq.unmute.show()):(this.css.jq.mute.show(),this.css.jq.unmute.hide()))},volume:function(a){a=this._limitValue(a,0,1);this.options.volume=a;this.html.used&&this._html_volume(a);this.flash.used&&
71
- this._flash_volume(a);!this.html.video.gate&&!this.html.audio.gate&&(this._updateVolume(a),this._trigger(b.jPlayer.event.volumechange))},volumeBar:function(a){if(this.css.jq.volumeBar.length){var c=b(a.currentTarget),d=c.offset(),e=a.pageX-d.left,g=c.width();a=c.height()-a.pageY+d.top;c=c.height();this.options.verticalVolume?this.volume(a/c):this.volume(e/g)}this.options.muted&&this._muted(!1)},volumeBarValue:function(){},_updateVolume:function(a){a===f&&(a=this.options.volume);a=this.options.muted?
72
- 0:a;this.status.noVolume?(this.css.jq.volumeBar.length&&this.css.jq.volumeBar.hide(),this.css.jq.volumeBarValue.length&&this.css.jq.volumeBarValue.hide(),this.css.jq.volumeMax.length&&this.css.jq.volumeMax.hide()):(this.css.jq.volumeBar.length&&this.css.jq.volumeBar.show(),this.css.jq.volumeBarValue.length&&(this.css.jq.volumeBarValue.show(),this.css.jq.volumeBarValue[this.options.verticalVolume?"height":"width"](100*a+"%")),this.css.jq.volumeMax.length&&this.css.jq.volumeMax.show())},volumeMax:function(){this.volume(1);
73
- this.options.muted&&this._muted(!1)},_cssSelectorAncestor:function(a){var c=this;this.options.cssSelectorAncestor=a;this._removeUiClass();this.ancestorJq=a?b(a):[];a&&1!==this.ancestorJq.length&&this._warning({type:b.jPlayer.warning.CSS_SELECTOR_COUNT,context:a,message:b.jPlayer.warningMsg.CSS_SELECTOR_COUNT+this.ancestorJq.length+" found for cssSelectorAncestor.",hint:b.jPlayer.warningHint.CSS_SELECTOR_COUNT});this._addUiClass();b.each(this.options.cssSelector,function(a,b){c._cssSelector(a,b)});
74
- this._updateInterface();this._updateButtons();this._updateAutohide();this._updateVolume();this._updateMute()},_cssSelector:function(a,c){var d=this;"string"===typeof c?b.jPlayer.prototype.options.cssSelector[a]?(this.css.jq[a]&&this.css.jq[a].length&&this.css.jq[a].unbind(".jPlayer"),this.options.cssSelector[a]=c,this.css.cs[a]=this.options.cssSelectorAncestor+" "+c,this.css.jq[a]=c?b(this.css.cs[a]):[],this.css.jq[a].length&&this.css.jq[a].bind("click.jPlayer",function(c){c.preventDefault();d[a](c);
75
- b(this).blur()}),c&&1!==this.css.jq[a].length&&this._warning({type:b.jPlayer.warning.CSS_SELECTOR_COUNT,context:this.css.cs[a],message:b.jPlayer.warningMsg.CSS_SELECTOR_COUNT+this.css.jq[a].length+" found for "+a+" method.",hint:b.jPlayer.warningHint.CSS_SELECTOR_COUNT})):this._warning({type:b.jPlayer.warning.CSS_SELECTOR_METHOD,context:a,message:b.jPlayer.warningMsg.CSS_SELECTOR_METHOD,hint:b.jPlayer.warningHint.CSS_SELECTOR_METHOD}):this._warning({type:b.jPlayer.warning.CSS_SELECTOR_STRING,context:c,
76
- message:b.jPlayer.warningMsg.CSS_SELECTOR_STRING,hint:b.jPlayer.warningHint.CSS_SELECTOR_STRING})},seekBar:function(a){if(this.css.jq.seekBar.length){var c=b(a.currentTarget),d=c.offset();a=a.pageX-d.left;c=c.width();this.playHead(100*a/c)}},playBar:function(){},repeat:function(){this._loop(!0)},repeatOff:function(){this._loop(!1)},_loop:function(a){this.options.loop!==a&&(this.options.loop=a,this._updateButtons(),this._trigger(b.jPlayer.event.repeat))},currentTime:function(){},duration:function(){},
77
- gui:function(){},noSolution:function(){},option:function(a,c){var d=a;if(0===arguments.length)return b.extend(!0,{},this.options);if("string"===typeof a){var e=a.split(".");if(c===f){for(var d=b.extend(!0,{},this.options),g=0;g<e.length;g++)if(d[e[g]]!==f)d=d[e[g]];else return this._warning({type:b.jPlayer.warning.OPTION_KEY,context:a,message:b.jPlayer.warningMsg.OPTION_KEY,hint:b.jPlayer.warningHint.OPTION_KEY}),f;return d}for(var g=d={},h=0;h<e.length;h++)h<e.length-1?(g[e[h]]={},g=g[e[h]]):g[e[h]]=
78
- c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,c){var d=this;switch(a){case "volume":this.volume(c);break;case "muted":this._muted(c);break;case "cssSelectorAncestor":this._cssSelectorAncestor(c);break;case "cssSelector":b.each(c,function(a,b){d._cssSelector(a,b)});break;case "fullScreen":if(this.options[a]!==c){var e=b.jPlayer.nativeFeatures.fullscreen.used.webkitVideo;if(!e||e&&!this.status.waitForPlay)e||
79
- (this.options[a]=c),c?this._requestFullscreen():this._exitFullscreen(),e||this._setOption("fullWindow",c)}break;case "fullWindow":this.options[a]!==c&&(this._removeUiClass(),this.options[a]=c,this._refreshSize());break;case "size":!this.options.fullWindow&&this.options[a].cssClass!==c.cssClass&&this._removeUiClass();this.options[a]=b.extend({},this.options[a],c);this._refreshSize();break;case "sizeFull":this.options.fullWindow&&this.options[a].cssClass!==c.cssClass&&this._removeUiClass();this.options[a]=
80
- b.extend({},this.options[a],c);this._refreshSize();break;case "autohide":this.options[a]=b.extend({},this.options[a],c);this._updateAutohide();break;case "loop":this._loop(c);break;case "nativeVideoControls":this.options[a]=b.extend({},this.options[a],c);this.status.nativeVideoControls=this._uaBlocklist(this.options.nativeVideoControls);this._restrictNativeVideoControls();this._updateNativeVideoControls();break;case "noFullWindow":this.options[a]=b.extend({},this.options[a],c);this.status.nativeVideoControls=
81
- this._uaBlocklist(this.options.nativeVideoControls);this.status.noFullWindow=this._uaBlocklist(this.options.noFullWindow);this._restrictNativeVideoControls();this._updateButtons();break;case "noVolume":this.options[a]=b.extend({},this.options[a],c);this.status.noVolume=this._uaBlocklist(this.options.noVolume);this._updateVolume();this._updateMute();break;case "emulateHtml":this.options[a]!==c&&((this.options[a]=c)?this._emulateHtmlBridge():this._destroyHtmlBridge());break;case "timeFormat":this.options[a]=
82
- b.extend({},this.options[a],c);break;case "keyEnabled":this.options[a]=c;!c&&this===b.jPlayer.focus&&(b.jPlayer.focus=null);break;case "keyBindings":this.options[a]=b.extend(!0,{},this.options[a],c);break;case "audioFullScreen":this.options[a]=c}return this},_refreshSize:function(){this._setSize();this._addUiClass();this._updateSize();this._updateButtons();this._updateAutohide();this._trigger(b.jPlayer.event.resize)},_setSize:function(){this.options.fullWindow?(this.status.width=this.options.sizeFull.width,
83
- this.status.height=this.options.sizeFull.height,this.status.cssClass=this.options.sizeFull.cssClass):(this.status.width=this.options.size.width,this.status.height=this.options.size.height,this.status.cssClass=this.options.size.cssClass);this.element.css({width:this.status.width,height:this.status.height})},_addUiClass:function(){this.ancestorJq.length&&this.ancestorJq.addClass(this.status.cssClass)},_removeUiClass:function(){this.ancestorJq.length&&this.ancestorJq.removeClass(this.status.cssClass)},
84
- _updateSize:function(){this.internal.poster.jq.css({width:this.status.width,height:this.status.height});!this.status.waitForPlay&&this.html.active&&this.status.video||this.html.video.available&&this.html.used&&this.status.nativeVideoControls?this.internal.video.jq.css({width:this.status.width,height:this.status.height}):!this.status.waitForPlay&&(this.flash.active&&this.status.video)&&this.internal.flash.jq.css({width:this.status.width,height:this.status.height})},_updateAutohide:function(){var a=
85
- this,b=function(){a.css.jq.gui.fadeIn(a.options.autohide.fadeIn,function(){clearTimeout(a.internal.autohideId);a.internal.autohideId=setTimeout(function(){a.css.jq.gui.fadeOut(a.options.autohide.fadeOut)},a.options.autohide.hold)})};this.css.jq.gui.length&&(this.css.jq.gui.stop(!0,!0),clearTimeout(this.internal.autohideId),this.element.unbind(".jPlayerAutohide"),this.css.jq.gui.unbind(".jPlayerAutohide"),this.status.nativeVideoControls?this.css.jq.gui.hide():this.options.fullWindow&&this.options.autohide.full||
86
- !this.options.fullWindow&&this.options.autohide.restored?(this.element.bind("mousemove.jPlayer.jPlayerAutohide",b),this.css.jq.gui.bind("mousemove.jPlayer.jPlayerAutohide",b),this.css.jq.gui.hide()):this.css.jq.gui.show())},fullScreen:function(){this._setOption("fullScreen",!0)},restoreScreen:function(){this._setOption("fullScreen",!1)},_fullscreenAddEventListeners:function(){var a=this,c=b.jPlayer.nativeFeatures.fullscreen;c.api.fullscreenEnabled&&c.event.fullscreenchange&&("function"!==typeof this.internal.fullscreenchangeHandler&&
87
- (this.internal.fullscreenchangeHandler=function(){a._fullscreenchange()}),document.addEventListener(c.event.fullscreenchange,this.internal.fullscreenchangeHandler,!1))},_fullscreenRemoveEventListeners:function(){var a=b.jPlayer.nativeFeatures.fullscreen;this.internal.fullscreenchangeHandler&&document.addEventListener(a.event.fullscreenchange,this.internal.fullscreenchangeHandler,!1)},_fullscreenchange:function(){this.options.fullScreen&&!b.jPlayer.nativeFeatures.fullscreen.api.fullscreenElement()&&
88
- this._setOption("fullScreen",!1)},_requestFullscreen:function(){var a=this.ancestorJq.length?this.ancestorJq[0]:this.element[0],c=b.jPlayer.nativeFeatures.fullscreen;c.used.webkitVideo&&(a=this.htmlElement.video);c.api.fullscreenEnabled&&c.api.requestFullscreen(a)},_exitFullscreen:function(){var a=b.jPlayer.nativeFeatures.fullscreen,c;a.used.webkitVideo&&(c=this.htmlElement.video);a.api.fullscreenEnabled&&a.api.exitFullscreen(c)},_html_initMedia:function(a){var c=b(this.htmlElement.media).empty();
89
- b.each(a.track||[],function(a,b){var g=document.createElement("track");g.setAttribute("kind",b.kind?b.kind:"");g.setAttribute("src",b.src?b.src:"");g.setAttribute("srclang",b.srclang?b.srclang:"");g.setAttribute("label",b.label?b.label:"");b.def&&g.setAttribute("default",b.def);c.append(g)});this.htmlElement.media.src=this.status.src;"none"!==this.options.preload&&this._html_load();this._trigger(b.jPlayer.event.timeupdate)},_html_setFormat:function(a){var c=this;b.each(this.formats,function(b,e){if(c.html.support[e]&&
90
- a[e])return c.status.src=a[e],c.status.format[e]=!0,c.status.formatType=e,!1})},_html_setAudio:function(a){this._html_setFormat(a);this.htmlElement.media=this.htmlElement.audio;this._html_initMedia(a)},_html_setVideo:function(a){this._html_setFormat(a);this.status.nativeVideoControls&&(this.htmlElement.video.poster=this._validString(a.poster)?a.poster:"");this.htmlElement.media=this.htmlElement.video;this._html_initMedia(a)},_html_resetMedia:function(){this.htmlElement.media&&(this.htmlElement.media.id===
91
- this.internal.video.id&&!this.status.nativeVideoControls&&this.internal.video.jq.css({width:"0px",height:"0px"}),this.htmlElement.media.pause())},_html_clearMedia:function(){this.htmlElement.media&&(this.htmlElement.media.src="about:blank",this.htmlElement.media.load())},_html_load:function(){this.status.waitForLoad&&(this.status.waitForLoad=!1,this.htmlElement.media.load());clearTimeout(this.internal.htmlDlyCmdId)},_html_play:function(a){var b=this,d=this.htmlElement.media;this._html_load();if(isNaN(a))d.play();
92
- else{this.internal.cmdsIgnored&&d.play();try{if(!d.seekable||"object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a,d.play();else throw 1;}catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.play(a)},250);return}}this._html_checkWaitForPlay()},_html_pause:function(a){var b=this,d=this.htmlElement.media;0<a?this._html_load():clearTimeout(this.internal.htmlDlyCmdId);d.pause();if(!isNaN(a))try{if(!d.seekable||"object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a;else throw 1;
93
- }catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.pause(a)},250);return}0<a&&this._html_checkWaitForPlay()},_html_playHead:function(a){var b=this,d=this.htmlElement.media;this._html_load();try{if("object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a*d.seekable.end(d.seekable.length-1)/100;else if(0<d.duration&&!isNaN(d.duration))d.currentTime=a*d.duration/100;else throw"e";}catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.playHead(a)},250);return}this.status.waitForLoad||
94
- this._html_checkWaitForPlay()},_html_checkWaitForPlay:function(){this.status.waitForPlay&&(this.status.waitForPlay=!1,this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide(),this.status.video&&(this.internal.poster.jq.hide(),this.internal.video.jq.css({width:this.status.width,height:this.status.height})))},_html_volume:function(a){this.html.audio.available&&(this.htmlElement.audio.volume=a);this.html.video.available&&(this.htmlElement.video.volume=a)},_html_mute:function(a){this.html.audio.available&&
95
- (this.htmlElement.audio.muted=a);this.html.video.available&&(this.htmlElement.video.muted=a)},_flash_setAudio:function(a){var c=this;try{b.each(this.formats,function(b,d){if(c.flash.support[d]&&a[d]){switch(d){case "m4a":case "fla":c._getMovie().fl_setAudio_m4a(a[d]);break;case "mp3":c._getMovie().fl_setAudio_mp3(a[d]);break;case "rtmpa":c._getMovie().fl_setAudio_rtmp(a[d])}c.status.src=a[d];c.status.format[d]=!0;c.status.formatType=d;return!1}}),"auto"===this.options.preload&&(this._flash_load(),
96
- this.status.waitForLoad=!1)}catch(d){this._flashError(d)}},_flash_setVideo:function(a){var c=this;try{b.each(this.formats,function(b,d){if(c.flash.support[d]&&a[d]){switch(d){case "m4v":case "flv":c._getMovie().fl_setVideo_m4v(a[d]);break;case "rtmpv":c._getMovie().fl_setVideo_rtmp(a[d])}c.status.src=a[d];c.status.format[d]=!0;c.status.formatType=d;return!1}}),"auto"===this.options.preload&&(this._flash_load(),this.status.waitForLoad=!1)}catch(d){this._flashError(d)}},_flash_resetMedia:function(){this.internal.flash.jq.css({width:"0px",
97
- height:"0px"});this._flash_pause(NaN)},_flash_clearMedia:function(){try{this._getMovie().fl_clearMedia()}catch(a){this._flashError(a)}},_flash_load:function(){try{this._getMovie().fl_load()}catch(a){this._flashError(a)}this.status.waitForLoad=!1},_flash_play:function(a){try{this._getMovie().fl_play(a)}catch(b){this._flashError(b)}this.status.waitForLoad=!1;this._flash_checkWaitForPlay()},_flash_pause:function(a){try{this._getMovie().fl_pause(a)}catch(b){this._flashError(b)}0<a&&(this.status.waitForLoad=
98
- !1,this._flash_checkWaitForPlay())},_flash_playHead:function(a){try{this._getMovie().fl_play_head(a)}catch(b){this._flashError(b)}this.status.waitForLoad||this._flash_checkWaitForPlay()},_flash_checkWaitForPlay:function(){this.status.waitForPlay&&(this.status.waitForPlay=!1,this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide(),this.status.video&&(this.internal.poster.jq.hide(),this.internal.flash.jq.css({width:this.status.width,height:this.status.height})))},_flash_volume:function(a){try{this._getMovie().fl_volume(a)}catch(b){this._flashError(b)}},
99
- _flash_mute:function(a){try{this._getMovie().fl_mute(a)}catch(b){this._flashError(b)}},_getMovie:function(){return document[this.internal.flash.id]},_getFlashPluginVersion:function(){var a=0,b;if(window.ActiveXObject)try{if(b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")){var d=b.GetVariable("$version");d&&(d=d.split(" ")[1].split(","),a=parseInt(d[0],10)+"."+parseInt(d[1],10))}}catch(e){}else navigator.plugins&&0<navigator.mimeTypes.length&&(b=navigator.plugins["Shockwave Flash"])&&(a=navigator.plugins["Shockwave Flash"].description.replace(/.*\s(\d+\.\d+).*/,
100
- "$1"));return 1*a},_checkForFlash:function(a){var b=!1;this._getFlashPluginVersion()>=a&&(b=!0);return b},_validString:function(a){return a&&"string"===typeof a},_limitValue:function(a,b,d){return a<b?b:a>d?d:a},_urlNotSetError:function(a){this._error({type:b.jPlayer.error.URL_NOT_SET,context:a,message:b.jPlayer.errorMsg.URL_NOT_SET,hint:b.jPlayer.errorHint.URL_NOT_SET})},_flashError:function(a){var c;c=this.internal.ready?"FLASH_DISABLED":"FLASH";this._error({type:b.jPlayer.error[c],context:this.internal.flash.swf,
101
- message:b.jPlayer.errorMsg[c]+a.message,hint:b.jPlayer.errorHint[c]});this.internal.flash.jq.css({width:"1px",height:"1px"})},_error:function(a){this._trigger(b.jPlayer.event.error,a);this.options.errorAlerts&&this._alert("Error!"+(a.message?"\n\n"+a.message:"")+(a.hint?"\n\n"+a.hint:"")+"\n\nContext: "+a.context)},_warning:function(a){this._trigger(b.jPlayer.event.warning,f,a);this.options.warningAlerts&&this._alert("Warning!"+(a.message?"\n\n"+a.message:"")+(a.hint?"\n\n"+a.hint:"")+"\n\nContext: "+
102
- a.context)},_alert:function(a){alert("jPlayer "+this.version.script+" : id='"+this.internal.self.id+"' : "+a)},_emulateHtmlBridge:function(){var a=this;b.each(b.jPlayer.emulateMethods.split(/\s+/g),function(b,d){a.internal.domNode[d]=function(b){a[d](b)}});b.each(b.jPlayer.event,function(c,d){var e=!0;b.each(b.jPlayer.reservedEvent.split(/\s+/g),function(a,b){if(b===c)return e=!1});e&&a.element.bind(d+".jPlayer.jPlayerHtml",function(){a._emulateHtmlUpdate();var b=document.createEvent("Event");b.initEvent(c,
103
- !1,!0);a.internal.domNode.dispatchEvent(b)})})},_emulateHtmlUpdate:function(){var a=this;b.each(b.jPlayer.emulateStatus.split(/\s+/g),function(b,d){a.internal.domNode[d]=a.status[d]});b.each(b.jPlayer.emulateOptions.split(/\s+/g),function(b,d){a.internal.domNode[d]=a.options[d]})},_destroyHtmlBridge:function(){var a=this;this.element.unbind(".jPlayerHtml");b.each((b.jPlayer.emulateMethods+" "+b.jPlayer.emulateStatus+" "+b.jPlayer.emulateOptions).split(/\s+/g),function(b,d){delete a.internal.domNode[d]})}};
104
- b.jPlayer.error={FLASH:"e_flash",FLASH_DISABLED:"e_flash_disabled",NO_SOLUTION:"e_no_solution",NO_SUPPORT:"e_no_support",URL:"e_url",URL_NOT_SET:"e_url_not_set",VERSION:"e_version"};b.jPlayer.errorMsg={FLASH:"jPlayer's Flash fallback is not configured correctly, or a command was issued before the jPlayer Ready event. Details: ",FLASH_DISABLED:"jPlayer's Flash fallback has been disabled by the browser due to the CSS rules you have used. Details: ",NO_SOLUTION:"No solution can be found by jPlayer in this browser. Neither HTML nor Flash can be used.",
105
- NO_SUPPORT:"It is not possible to play any media format provided in setMedia() on this browser using your current options.",URL:"Media URL could not be loaded.",URL_NOT_SET:"Attempt to issue media playback commands, while no media url is set.",VERSION:"jPlayer "+b.jPlayer.prototype.version.script+" needs Jplayer.swf version "+b.jPlayer.prototype.version.needFlash+" but found "};b.jPlayer.errorHint={FLASH:"Check your swfPath option and that Jplayer.swf is there.",FLASH_DISABLED:"Check that you have not display:none; the jPlayer entity or any ancestor.",
106
- NO_SOLUTION:"Review the jPlayer options: support and supplied.",NO_SUPPORT:"Video or audio formats defined in the supplied option are missing.",URL:"Check media URL is valid.",URL_NOT_SET:"Use setMedia() to set the media URL.",VERSION:"Update jPlayer files."};b.jPlayer.warning={CSS_SELECTOR_COUNT:"e_css_selector_count",CSS_SELECTOR_METHOD:"e_css_selector_method",CSS_SELECTOR_STRING:"e_css_selector_string",OPTION_KEY:"e_option_key"};b.jPlayer.warningMsg={CSS_SELECTOR_COUNT:"The number of css selectors found did not equal one: ",
107
  CSS_SELECTOR_METHOD:"The methodName given in jPlayer('cssSelector') is not a valid jPlayer method.",CSS_SELECTOR_STRING:"The methodCssSelector given in jPlayer('cssSelector') is not a String or is empty.",OPTION_KEY:"The option requested in jPlayer('option') is undefined."};b.jPlayer.warningHint={CSS_SELECTOR_COUNT:"Check your css selector and the ancestor.",CSS_SELECTOR_METHOD:"Check your method name.",CSS_SELECTOR_STRING:"Check your css selector is a string.",OPTION_KEY:"Check your option name."}});
1
+ /*
2
+ * jPlayer Plugin for jQuery JavaScript Library
3
+ * http://www.jplayer.org
4
+ *
5
+ * Copyright (c) 2009 - 2013 Happyworm Ltd
6
+ * Licensed under the MIT license.
7
+ * http://opensource.org/licenses/MIT
8
+ *
9
+ * Author: Mark J Panaghiston
10
+ * Version: 2.4.0
11
+ * Date: 5th June 2013
12
+ */
13
+
14
+ (function(b,f){"function"===typeof define&&define.amd?define(["jquery"],f):b.jQuery?f(b.jQuery):f(b.Zepto)})(this,function(b,f){b.fn.jPlayer=function(a){var c="string"===typeof a,d=Array.prototype.slice.call(arguments,1),e=this;a=!c&&d.length?b.extend.apply(null,[!0,a].concat(d)):a;if(c&&"_"===a.charAt(0))return e;c?this.each(function(){var c=b(this).data("jPlayer"),h=c&&b.isFunction(c[a])?c[a].apply(c,d):c;if(h!==c&&h!==f)return e=h,!1}):this.each(function(){var c=b(this).data("jPlayer");c?c.option(a||
15
+ {}):b(this).data("jPlayer",new b.jPlayer(a,this))});return e};b.jPlayer=function(a,c){if(arguments.length){this.element=b(c);this.options=b.extend(!0,{},this.options,a);var d=this;this.element.bind("remove.jPlayer",function(){d.destroy()});this._init()}};"function"!==typeof b.fn.stop&&(b.fn.stop=function(){});b.jPlayer.emulateMethods="load play pause";b.jPlayer.emulateStatus="src readyState networkState currentTime duration paused ended playbackRate";b.jPlayer.emulateOptions="muted volume";b.jPlayer.reservedEvent=
16
+ "ready flashreset resize repeat error warning";b.jPlayer.event={};b.each("ready flashreset resize repeat click error warning loadstart progress suspend abort emptied stalled play pause loadedmetadata loadeddata waiting playing canplay canplaythrough seeking seeked timeupdate ended ratechange durationchange volumechange".split(" "),function(){b.jPlayer.event[this]="jPlayer_"+this});b.jPlayer.htmlEvent="loadstart abort emptied stalled loadedmetadata loadeddata canplay canplaythrough ratechange".split(" ");
17
+ b.jPlayer.pause=function(){b.each(b.jPlayer.prototype.instances,function(a,c){c.data("jPlayer").status.srcSet&&c.jPlayer("pause")})};b.jPlayer.timeFormat={showHour:!1,showMin:!0,showSec:!0,padHour:!1,padMin:!0,padSec:!0,sepHour:":",sepMin:":",sepSec:""};var l=function(){this.init()};l.prototype={init:function(){this.options={timeFormat:b.jPlayer.timeFormat}},time:function(a){var c=new Date(1E3*(a&&"number"===typeof a?a:0)),b=c.getUTCHours();a=this.options.timeFormat.showHour?c.getUTCMinutes():c.getUTCMinutes()+
18
+ 60*b;c=this.options.timeFormat.showMin?c.getUTCSeconds():c.getUTCSeconds()+60*a;b=this.options.timeFormat.padHour&&10>b?"0"+b:b;a=this.options.timeFormat.padMin&&10>a?"0"+a:a;c=this.options.timeFormat.padSec&&10>c?"0"+c:c;b=""+(this.options.timeFormat.showHour?b+this.options.timeFormat.sepHour:"");b+=this.options.timeFormat.showMin?a+this.options.timeFormat.sepMin:"";return b+=this.options.timeFormat.showSec?c+this.options.timeFormat.sepSec:""}};var m=new l;b.jPlayer.convertTime=function(a){return m.time(a)};
19
+ b.jPlayer.uaBrowser=function(a){a=a.toLowerCase();var b=/(opera)(?:.*version)?[ \/]([\w.]+)/,d=/(msie) ([\w.]+)/,e=/(mozilla)(?:.*? rv:([\w.]+))?/;a=/(webkit)[ \/]([\w.]+)/.exec(a)||b.exec(a)||d.exec(a)||0>a.indexOf("compatible")&&e.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}};b.jPlayer.uaPlatform=function(a){var b=a.toLowerCase(),d=/(android)/,e=/(mobile)/;a=/(ipad|iphone|ipod|android|blackberry|playbook|windows ce|webos)/.exec(b)||[];b=/(ipad|playbook)/.exec(b)||!e.exec(b)&&d.exec(b)||
20
+ [];a[1]&&(a[1]=a[1].replace(/\s/g,"_"));return{platform:a[1]||"",tablet:b[1]||""}};b.jPlayer.browser={};b.jPlayer.platform={};var j=b.jPlayer.uaBrowser(navigator.userAgent);j.browser&&(b.jPlayer.browser[j.browser]=!0,b.jPlayer.browser.version=j.version);j=b.jPlayer.uaPlatform(navigator.userAgent);j.platform&&(b.jPlayer.platform[j.platform]=!0,b.jPlayer.platform.mobile=!j.tablet,b.jPlayer.platform.tablet=!!j.tablet);b.jPlayer.getDocMode=function(){var a;b.jPlayer.browser.msie&&(document.documentMode?
21
+ a=document.documentMode:(a=5,document.compatMode&&"CSS1Compat"===document.compatMode&&(a=7)));return a};b.jPlayer.browser.documentMode=b.jPlayer.getDocMode();b.jPlayer.nativeFeatures={init:function(){var a=document,b=a.createElement("video"),d={w3c:"fullscreenEnabled fullscreenElement requestFullscreen exitFullscreen fullscreenchange fullscreenerror".split(" "),moz:"mozFullScreenEnabled mozFullScreenElement mozRequestFullScreen mozCancelFullScreen mozfullscreenchange mozfullscreenerror".split(" "),
22
+ webkit:" webkitCurrentFullScreenElement webkitRequestFullScreen webkitCancelFullScreen webkitfullscreenchange ".split(" "),webkitVideo:"webkitSupportsFullscreen webkitDisplayingFullscreen webkitEnterFullscreen webkitExitFullscreen ".split(" ")},e=["w3c","moz","webkit","webkitVideo"],g,h;this.fullscreen=b={support:{w3c:!!a[d.w3c[0]],moz:!!a[d.moz[0]],webkit:"function"===typeof a[d.webkit[3]],webkitVideo:"function"===typeof b[d.webkitVideo[2]]},used:{}};g=0;for(h=e.length;g<h;g++){var f=e[g];if(b.support[f]){b.spec=
23
+ f;b.used[f]=!0;break}}if(b.spec){var k=d[b.spec];b.api={fullscreenEnabled:!0,fullscreenElement:function(b){b=b?b:a;return b[k[1]]},requestFullscreen:function(a){return a[k[2]]()},exitFullscreen:function(b){b=b?b:a;return b[k[3]]()}};b.event={fullscreenchange:k[4],fullscreenerror:k[5]}}else b.api={fullscreenEnabled:!1,fullscreenElement:function(){return null},requestFullscreen:function(){},exitFullscreen:function(){}},b.event={}}};b.jPlayer.nativeFeatures.init();b.jPlayer.focus=null;b.jPlayer.keyIgnoreElementNames=
24
+ "INPUT TEXTAREA";var n=function(a){var c=b.jPlayer.focus,d;c&&(b.each(b.jPlayer.keyIgnoreElementNames.split(/\s+/g),function(b,c){if(a.target.nodeName.toUpperCase()===c.toUpperCase())return d=!0,!1}),d||b.each(c.options.keyBindings,function(d,g){if(g&&a.which===g.key&&b.isFunction(g.fn))return a.preventDefault(),g.fn(c),!1}))};b.jPlayer.keys=function(a){b(document.documentElement).unbind("keydown.jPlayer");a&&b(document.documentElement).bind("keydown.jPlayer",n)};b.jPlayer.keys(!0);b.jPlayer.prototype=
25
+ {count:0,version:{script:"2.4.0",needFlash:"2.4.0",flash:"unknown"},options:{swfPath:"js",solution:"html, flash",supplied:"mp3",preload:"metadata",volume:0.8,muted:!1,wmode:"opaque",backgroundColor:"#000000",cssSelectorAncestor:"#jp_container_1",cssSelector:{videoPlay:".jp-video-play",play:".jp-play",pause:".jp-pause",stop:".jp-stop",seekBar:".jp-seek-bar",playBar:".jp-play-bar",mute:".jp-mute",unmute:".jp-unmute",volumeBar:".jp-volume-bar",volumeBarValue:".jp-volume-bar-value",volumeMax:".jp-volume-max",
26
+ currentTime:".jp-current-time",duration:".jp-duration",fullScreen:".jp-full-screen",restoreScreen:".jp-restore-screen",repeat:".jp-repeat",repeatOff:".jp-repeat-off",gui:".jp-gui",noSolution:".jp-no-solution"},smoothPlayBar:!1,fullScreen:!1,fullWindow:!1,autohide:{restored:!1,full:!0,fadeIn:200,fadeOut:600,hold:1E3},loop:!1,repeat:function(a){a.jPlayer.options.loop?b(this).unbind(".jPlayerRepeat").bind(b.jPlayer.event.ended+".jPlayer.jPlayerRepeat",function(){b(this).jPlayer("play")}):b(this).unbind(".jPlayerRepeat")},
27
+ nativeVideoControls:{},noFullWindow:{msie:/msie [0-6]\./,ipad:/ipad.*?os [0-4]\./,iphone:/iphone/,ipod:/ipod/,android_pad:/android [0-3]\.(?!.*?mobile)/,android_phone:/android.*?mobile/,blackberry:/blackberry/,windows_ce:/windows ce/,iemobile:/iemobile/,webos:/webos/},noVolume:{ipad:/ipad/,iphone:/iphone/,ipod:/ipod/,android_pad:/android(?!.*?mobile)/,android_phone:/android.*?mobile/,blackberry:/blackberry/,windows_ce:/windows ce/,iemobile:/iemobile/,webos:/webos/,playbook:/playbook/},timeFormat:{},
28
+ keyEnabled:!1,audioFullScreen:!1,keyBindings:{play:{key:32,fn:function(a){a.status.paused?a.play():a.pause()}},fullScreen:{key:13,fn:function(a){(a.status.video||a.options.audioFullScreen)&&a._setOption("fullScreen",!a.options.fullScreen)}},muted:{key:8,fn:function(a){a._muted(!a.options.muted)}},volumeUp:{key:38,fn:function(a){a.volume(a.options.volume+0.1)}},volumeDown:{key:40,fn:function(a){a.volume(a.options.volume-0.1)}}},verticalVolume:!1,idPrefix:"jp",noConflict:"jQuery",emulateHtml:!1,errorAlerts:!1,
29
+ warningAlerts:!1},optionsAudio:{size:{width:"0px",height:"0px",cssClass:""},sizeFull:{width:"0px",height:"0px",cssClass:""}},optionsVideo:{size:{width:"480px",height:"270px",cssClass:"jp-video-270p"},sizeFull:{width:"100%",height:"100%",cssClass:"jp-video-full"}},instances:{},status:{src:"",media:{},paused:!0,format:{},formatType:"",waitForPlay:!0,waitForLoad:!0,srcSet:!1,video:!1,seekPercent:0,currentPercentRelative:0,currentPercentAbsolute:0,currentTime:0,duration:0,videoWidth:0,videoHeight:0,readyState:0,
30
+ networkState:0,playbackRate:1,ended:0},internal:{ready:!1},solution:{html:!0,flash:!0},format:{mp3:{codec:'audio/mpeg; codecs="mp3"',flashCanPlay:!0,media:"audio"},m4a:{codec:'audio/mp4; codecs="mp4a.40.2"',flashCanPlay:!0,media:"audio"},oga:{codec:'audio/ogg; codecs="vorbis"',flashCanPlay:!1,media:"audio"},wav:{codec:'audio/wav; codecs="1"',flashCanPlay:!1,media:"audio"},webma:{codec:'audio/webm; codecs="vorbis"',flashCanPlay:!1,media:"audio"},fla:{codec:"audio/x-flv",flashCanPlay:!0,media:"audio"},
31
+ rtmpa:{codec:'audio/rtmp; codecs="rtmp"',flashCanPlay:!0,media:"audio"},m4v:{codec:'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',flashCanPlay:!0,media:"video"},ogv:{codec:'video/ogg; codecs="theora, vorbis"',flashCanPlay:!1,media:"video"},webmv:{codec:'video/webm; codecs="vorbis, vp8"',flashCanPlay:!1,media:"video"},flv:{codec:"video/x-flv",flashCanPlay:!0,media:"video"},rtmpv:{codec:'video/rtmp; codecs="rtmp"',flashCanPlay:!0,media:"video"}},_init:function(){var a=this;this.element.empty();this.status=
32
+ b.extend({},this.status);this.internal=b.extend({},this.internal);this.options.timeFormat=b.extend({},b.jPlayer.timeFormat,this.options.timeFormat);this.internal.cmdsIgnored=b.jPlayer.platform.ipad||b.jPlayer.platform.iphone||b.jPlayer.platform.ipod;this.internal.domNode=this.element.get(0);this.options.keyEnabled&&!b.jPlayer.focus&&(b.jPlayer.focus=this);this.formats=[];this.solutions=[];this.require={};this.htmlElement={};this.html={};this.html.audio={};this.html.video={};this.flash={};this.css=
33
+ {};this.css.cs={};this.css.jq={};this.ancestorJq=[];this.options.volume=this._limitValue(this.options.volume,0,1);b.each(this.options.supplied.toLowerCase().split(","),function(c,d){var e=d.replace(/^\s+|\s+$/g,"");if(a.format[e]){var f=!1;b.each(a.formats,function(a,b){if(e===b)return f=!0,!1});f||a.formats.push(e)}});b.each(this.options.solution.toLowerCase().split(","),function(c,d){var e=d.replace(/^\s+|\s+$/g,"");if(a.solution[e]){var f=!1;b.each(a.solutions,function(a,b){if(e===b)return f=!0,
34
+ !1});f||a.solutions.push(e)}});this.internal.instance="jp_"+this.count;this.instances[this.internal.instance]=this.element;this.element.attr("id")||this.element.attr("id",this.options.idPrefix+"_jplayer_"+this.count);this.internal.self=b.extend({},{id:this.element.attr("id"),jq:this.element});this.internal.audio=b.extend({},{id:this.options.idPrefix+"_audio_"+this.count,jq:f});this.internal.video=b.extend({},{id:this.options.idPrefix+"_video_"+this.count,jq:f});this.internal.flash=b.extend({},{id:this.options.idPrefix+
35
+ "_flash_"+this.count,jq:f,swf:this.options.swfPath+(".swf"!==this.options.swfPath.toLowerCase().slice(-4)?(this.options.swfPath&&"/"!==this.options.swfPath.slice(-1)?"/":"")+"Jplayer.swf":"")});this.internal.poster=b.extend({},{id:this.options.idPrefix+"_poster_"+this.count,jq:f});b.each(b.jPlayer.event,function(b,c){a.options[b]!==f&&(a.element.bind(c+".jPlayer",a.options[b]),a.options[b]=f)});this.require.audio=!1;this.require.video=!1;b.each(this.formats,function(b,c){a.require[a.format[c].media]=
36
+ !0});this.options=this.require.video?b.extend(!0,{},this.optionsVideo,this.options):b.extend(!0,{},this.optionsAudio,this.options);this._setSize();this.status.nativeVideoControls=this._uaBlocklist(this.options.nativeVideoControls);this.status.noFullWindow=this._uaBlocklist(this.options.noFullWindow);this.status.noVolume=this._uaBlocklist(this.options.noVolume);b.jPlayer.nativeFeatures.fullscreen.api.fullscreenEnabled&&this._fullscreenAddEventListeners();this._restrictNativeVideoControls();this.htmlElement.poster=
37
+ document.createElement("img");this.htmlElement.poster.id=this.internal.poster.id;this.htmlElement.poster.onload=function(){(!a.status.video||a.status.waitForPlay)&&a.internal.poster.jq.show()};this.element.append(this.htmlElement.poster);this.internal.poster.jq=b("#"+this.internal.poster.id);this.internal.poster.jq.css({width:this.status.width,height:this.status.height});this.internal.poster.jq.hide();this.internal.poster.jq.bind("click.jPlayer",function(){a._trigger(b.jPlayer.event.click)});this.html.audio.available=
38
+ !1;this.require.audio&&(this.htmlElement.audio=document.createElement("audio"),this.htmlElement.audio.id=this.internal.audio.id,this.html.audio.available=!!this.htmlElement.audio.canPlayType&&this._testCanPlayType(this.htmlElement.audio));this.html.video.available=!1;this.require.video&&(this.htmlElement.video=document.createElement("video"),this.htmlElement.video.id=this.internal.video.id,this.html.video.available=!!this.htmlElement.video.canPlayType&&this._testCanPlayType(this.htmlElement.video));
39
+ this.flash.available=this._checkForFlash(10.1);this.html.canPlay={};this.flash.canPlay={};b.each(this.formats,function(b,c){a.html.canPlay[c]=a.html[a.format[c].media].available&&""!==a.htmlElement[a.format[c].media].canPlayType(a.format[c].codec);a.flash.canPlay[c]=a.format[c].flashCanPlay&&a.flash.available});this.html.desired=!1;this.flash.desired=!1;b.each(this.solutions,function(c,d){if(0===c)a[d].desired=!0;else{var e=!1,f=!1;b.each(a.formats,function(b,c){a[a.solutions[0]].canPlay[c]&&("video"===
40
+ a.format[c].media?f=!0:e=!0)});a[d].desired=a.require.audio&&!e||a.require.video&&!f}});this.html.support={};this.flash.support={};b.each(this.formats,function(b,c){a.html.support[c]=a.html.canPlay[c]&&a.html.desired;a.flash.support[c]=a.flash.canPlay[c]&&a.flash.desired});this.html.used=!1;this.flash.used=!1;b.each(this.solutions,function(c,d){b.each(a.formats,function(b,c){if(a[d].support[c])return a[d].used=!0,!1})});this._resetActive();this._resetGate();this._cssSelectorAncestor(this.options.cssSelectorAncestor);
41
+ !this.html.used&&!this.flash.used?(this._error({type:b.jPlayer.error.NO_SOLUTION,context:"{solution:'"+this.options.solution+"', supplied:'"+this.options.supplied+"'}",message:b.jPlayer.errorMsg.NO_SOLUTION,hint:b.jPlayer.errorHint.NO_SOLUTION}),this.css.jq.noSolution.length&&this.css.jq.noSolution.show()):this.css.jq.noSolution.length&&this.css.jq.noSolution.hide();if(this.flash.used){var c,d="jQuery="+encodeURI(this.options.noConflict)+"&id="+encodeURI(this.internal.self.id)+"&vol="+this.options.volume+
42
+ "&muted="+this.options.muted;if(b.jPlayer.browser.msie&&(9>Number(b.jPlayer.browser.version)||9>b.jPlayer.browser.documentMode)){d=['<param name="movie" value="'+this.internal.flash.swf+'" />','<param name="FlashVars" value="'+d+'" />','<param name="allowScriptAccess" value="always" />','<param name="bgcolor" value="'+this.options.backgroundColor+'" />','<param name="wmode" value="'+this.options.wmode+'" />'];c=document.createElement('<object id="'+this.internal.flash.id+'" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="0" height="0" tabindex="-1"></object>');
43
+ for(var e=0;e<d.length;e++)c.appendChild(document.createElement(d[e]))}else e=function(a,b,c){var d=document.createElement("param");d.setAttribute("name",b);d.setAttribute("value",c);a.appendChild(d)},c=document.createElement("object"),c.setAttribute("id",this.internal.flash.id),c.setAttribute("name",this.internal.flash.id),c.setAttribute("data",this.internal.flash.swf),c.setAttribute("type","application/x-shockwave-flash"),c.setAttribute("width","1"),c.setAttribute("height","1"),c.setAttribute("tabindex",
44
+ "-1"),e(c,"flashvars",d),e(c,"allowscriptaccess","always"),e(c,"bgcolor",this.options.backgroundColor),e(c,"wmode",this.options.wmode);this.element.append(c);this.internal.flash.jq=b(c)}this.html.used&&(this.html.audio.available&&(this._addHtmlEventListeners(this.htmlElement.audio,this.html.audio),this.element.append(this.htmlElement.audio),this.internal.audio.jq=b("#"+this.internal.audio.id)),this.html.video.available&&(this._addHtmlEventListeners(this.htmlElement.video,this.html.video),this.element.append(this.htmlElement.video),
45
+ this.internal.video.jq=b("#"+this.internal.video.id),this.status.nativeVideoControls?this.internal.video.jq.css({width:this.status.width,height:this.status.height}):this.internal.video.jq.css({width:"0px",height:"0px"}),this.internal.video.jq.bind("click.jPlayer",function(){a._trigger(b.jPlayer.event.click)})));this.options.emulateHtml&&this._emulateHtmlBridge();this.html.used&&!this.flash.used&&setTimeout(function(){a.internal.ready=!0;a.version.flash="n/a";a._trigger(b.jPlayer.event.repeat);a._trigger(b.jPlayer.event.ready)},
46
+ 100);this._updateNativeVideoControls();this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide();b.jPlayer.prototype.count++},destroy:function(){this.clearMedia();this._removeUiClass();this.css.jq.currentTime.length&&this.css.jq.currentTime.text("");this.css.jq.duration.length&&this.css.jq.duration.text("");b.each(this.css.jq,function(a,b){b.length&&b.unbind(".jPlayer")});this.internal.poster.jq.unbind(".jPlayer");this.internal.video.jq&&this.internal.video.jq.unbind(".jPlayer");this._fullscreenRemoveEventListeners();
47
+ this===b.jPlayer.focus&&(b.jPlayer.focus=null);this.options.emulateHtml&&this._destroyHtmlBridge();this.element.removeData("jPlayer");this.element.unbind(".jPlayer");this.element.empty();delete this.instances[this.internal.instance]},enable:function(){},disable:function(){},_testCanPlayType:function(a){try{return a.canPlayType(this.format.mp3.codec),!0}catch(b){return!1}},_uaBlocklist:function(a){var c=navigator.userAgent.toLowerCase(),d=!1;b.each(a,function(a,b){if(b&&b.test(c))return d=!0,!1});
48
+ return d},_restrictNativeVideoControls:function(){this.require.audio&&this.status.nativeVideoControls&&(this.status.nativeVideoControls=!1,this.status.noFullWindow=!0)},_updateNativeVideoControls:function(){this.html.video.available&&this.html.used&&(this.htmlElement.video.controls=this.status.nativeVideoControls,this._updateAutohide(),this.status.nativeVideoControls&&this.require.video?(this.internal.poster.jq.hide(),this.internal.video.jq.css({width:this.status.width,height:this.status.height})):
49
+ this.status.waitForPlay&&this.status.video&&(this.internal.poster.jq.show(),this.internal.video.jq.css({width:"0px",height:"0px"})))},_addHtmlEventListeners:function(a,c){var d=this;a.preload=this.options.preload;a.muted=this.options.muted;a.volume=this.options.volume;a.addEventListener("progress",function(){c.gate&&(d.internal.cmdsIgnored&&0<this.readyState&&(d.internal.cmdsIgnored=!1),d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.progress))},!1);a.addEventListener("timeupdate",
50
+ function(){c.gate&&(d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.timeupdate))},!1);a.addEventListener("durationchange",function(){c.gate&&(d._getHtmlStatus(a),d._updateInterface(),d._trigger(b.jPlayer.event.durationchange))},!1);a.addEventListener("play",function(){c.gate&&(d._updateButtons(!0),d._html_checkWaitForPlay(),d._trigger(b.jPlayer.event.play))},!1);a.addEventListener("playing",function(){c.gate&&(d._updateButtons(!0),d._seeked(),d._trigger(b.jPlayer.event.playing))},
51
+ !1);a.addEventListener("pause",function(){c.gate&&(d._updateButtons(!1),d._trigger(b.jPlayer.event.pause))},!1);a.addEventListener("waiting",function(){c.gate&&(d._seeking(),d._trigger(b.jPlayer.event.waiting))},!1);a.addEventListener("seeking",function(){c.gate&&(d._seeking(),d._trigger(b.jPlayer.event.seeking))},!1);a.addEventListener("seeked",function(){c.gate&&(d._seeked(),d._trigger(b.jPlayer.event.seeked))},!1);a.addEventListener("volumechange",function(){c.gate&&(d.options.volume=a.volume,
52
+ d.options.muted=a.muted,d._updateMute(),d._updateVolume(),d._trigger(b.jPlayer.event.volumechange))},!1);a.addEventListener("suspend",function(){c.gate&&(d._seeked(),d._trigger(b.jPlayer.event.suspend))},!1);a.addEventListener("ended",function(){c.gate&&(b.jPlayer.browser.webkit||(d.htmlElement.media.currentTime=0),d.htmlElement.media.pause(),d._updateButtons(!1),d._getHtmlStatus(a,!0),d._updateInterface(),d._trigger(b.jPlayer.event.ended))},!1);a.addEventListener("error",function(){c.gate&&(d._updateButtons(!1),
53
+ d._seeked(),d.status.srcSet&&(clearTimeout(d.internal.htmlDlyCmdId),d.status.waitForLoad=!0,d.status.waitForPlay=!0,d.status.video&&!d.status.nativeVideoControls&&d.internal.video.jq.css({width:"0px",height:"0px"}),d._validString(d.status.media.poster)&&!d.status.nativeVideoControls&&d.internal.poster.jq.show(),d.css.jq.videoPlay.length&&d.css.jq.videoPlay.show(),d._error({type:b.jPlayer.error.URL,context:d.status.src,message:b.jPlayer.errorMsg.URL,hint:b.jPlayer.errorHint.URL})))},!1);b.each(b.jPlayer.htmlEvent,
54
+ function(e,g){a.addEventListener(this,function(){c.gate&&d._trigger(b.jPlayer.event[g])},!1)})},_getHtmlStatus:function(a,b){var d=0,e=0,g=0,f=0;isFinite(a.duration)&&(this.status.duration=a.duration);d=a.currentTime;e=0<this.status.duration?100*d/this.status.duration:0;"object"===typeof a.seekable&&0<a.seekable.length?(g=0<this.status.duration?100*a.seekable.end(a.seekable.length-1)/this.status.duration:100,f=0<this.status.duration?100*a.currentTime/a.seekable.end(a.seekable.length-1):0):(g=100,
55
+ f=e);b&&(e=f=d=0);this.status.seekPercent=g;this.status.currentPercentRelative=f;this.status.currentPercentAbsolute=e;this.status.currentTime=d;this.status.videoWidth=a.videoWidth;this.status.videoHeight=a.videoHeight;this.status.readyState=a.readyState;this.status.networkState=a.networkState;this.status.playbackRate=a.playbackRate;this.status.ended=a.ended},_resetStatus:function(){this.status=b.extend({},this.status,b.jPlayer.prototype.status)},_trigger:function(a,c,d){a=b.Event(a);a.jPlayer={};
56
+ a.jPlayer.version=b.extend({},this.version);a.jPlayer.options=b.extend(!0,{},this.options);a.jPlayer.status=b.extend(!0,{},this.status);a.jPlayer.html=b.extend(!0,{},this.html);a.jPlayer.flash=b.extend(!0,{},this.flash);c&&(a.jPlayer.error=b.extend({},c));d&&(a.jPlayer.warning=b.extend({},d));this.element.trigger(a)},jPlayerFlashEvent:function(a,c){if(a===b.jPlayer.event.ready)if(this.internal.ready){if(this.flash.gate){if(this.status.srcSet){var d=this.status.currentTime,e=this.status.paused;this.setMedia(this.status.media);
57
+ 0<d&&(e?this.pause(d):this.play(d))}this._trigger(b.jPlayer.event.flashreset)}}else this.internal.ready=!0,this.internal.flash.jq.css({width:"0px",height:"0px"}),this.version.flash=c.version,this.version.needFlash!==this.version.flash&&this._error({type:b.jPlayer.error.VERSION,context:this.version.flash,message:b.jPlayer.errorMsg.VERSION+this.version.flash,hint:b.jPlayer.errorHint.VERSION}),this._trigger(b.jPlayer.event.repeat),this._trigger(a);if(this.flash.gate)switch(a){case b.jPlayer.event.progress:this._getFlashStatus(c);
58
+ this._updateInterface();this._trigger(a);break;case b.jPlayer.event.timeupdate:this._getFlashStatus(c);this._updateInterface();this._trigger(a);break;case b.jPlayer.event.play:this._seeked();this._updateButtons(!0);this._trigger(a);break;case b.jPlayer.event.pause:this._updateButtons(!1);this._trigger(a);break;case b.jPlayer.event.ended:this._updateButtons(!1);this._trigger(a);break;case b.jPlayer.event.click:this._trigger(a);break;case b.jPlayer.event.error:this.status.waitForLoad=!0;this.status.waitForPlay=
59
+ !0;this.status.video&&this.internal.flash.jq.css({width:"0px",height:"0px"});this._validString(this.status.media.poster)&&this.internal.poster.jq.show();this.css.jq.videoPlay.length&&this.status.video&&this.css.jq.videoPlay.show();this.status.video?this._flash_setVideo(this.status.media):this._flash_setAudio(this.status.media);this._updateButtons(!1);this._error({type:b.jPlayer.error.URL,context:c.src,message:b.jPlayer.errorMsg.URL,hint:b.jPlayer.errorHint.URL});break;case b.jPlayer.event.seeking:this._seeking();
60
+ this._trigger(a);break;case b.jPlayer.event.seeked:this._seeked();this._trigger(a);break;case b.jPlayer.event.ready:break;default:this._trigger(a)}return!1},_getFlashStatus:function(a){this.status.seekPercent=a.seekPercent;this.status.currentPercentRelative=a.currentPercentRelative;this.status.currentPercentAbsolute=a.currentPercentAbsolute;this.status.currentTime=a.currentTime;this.status.duration=a.duration;this.status.videoWidth=a.videoWidth;this.status.videoHeight=a.videoHeight;this.status.readyState=
61
+ 4;this.status.networkState=0;this.status.playbackRate=1;this.status.ended=!1},_updateButtons:function(a){a===f?a=!this.status.paused:this.status.paused=!a;this.css.jq.play.length&&this.css.jq.pause.length&&(a?(this.css.jq.play.hide(),this.css.jq.pause.show()):(this.css.jq.play.show(),this.css.jq.pause.hide()));this.css.jq.restoreScreen.length&&this.css.jq.fullScreen.length&&(this.status.noFullWindow?(this.css.jq.fullScreen.hide(),this.css.jq.restoreScreen.hide()):this.options.fullWindow?(this.css.jq.fullScreen.hide(),
62
+ this.css.jq.restoreScreen.show()):(this.css.jq.fullScreen.show(),this.css.jq.restoreScreen.hide()));this.css.jq.repeat.length&&this.css.jq.repeatOff.length&&(this.options.loop?(this.css.jq.repeat.hide(),this.css.jq.repeatOff.show()):(this.css.jq.repeat.show(),this.css.jq.repeatOff.hide()))},_updateInterface:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.width(this.status.seekPercent+"%");this.css.jq.playBar.length&&(this.options.smoothPlayBar?this.css.jq.playBar.stop().animate({width:this.status.currentPercentAbsolute+
63
+ "%"},250,"linear"):this.css.jq.playBar.width(this.status.currentPercentRelative+"%"));this.css.jq.currentTime.length&&this.css.jq.currentTime.text(this._convertTime(this.status.currentTime));this.css.jq.duration.length&&this.css.jq.duration.text(this._convertTime(this.status.duration))},_convertTime:l.prototype.time,_seeking:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.addClass("jp-seeking-bg")},_seeked:function(){this.css.jq.seekBar.length&&this.css.jq.seekBar.removeClass("jp-seeking-bg")},
64
+ _resetGate:function(){this.html.audio.gate=!1;this.html.video.gate=!1;this.flash.gate=!1},_resetActive:function(){this.html.active=!1;this.flash.active=!1},setMedia:function(a){var c=this,d=!1,e=this.status.media.poster!==a.poster;this._resetMedia();this._resetGate();this._resetActive();b.each(this.formats,function(e,f){var j="video"===c.format[f].media;b.each(c.solutions,function(b,e){if(c[e].support[f]&&c._validString(a[f])){var g="html"===e;j?(g?(c.html.video.gate=!0,c._html_setVideo(a),c.html.active=
65
+ !0):(c.flash.gate=!0,c._flash_setVideo(a),c.flash.active=!0),c.css.jq.videoPlay.length&&c.css.jq.videoPlay.show(),c.status.video=!0):(g?(c.html.audio.gate=!0,c._html_setAudio(a),c.html.active=!0):(c.flash.gate=!0,c._flash_setAudio(a),c.flash.active=!0),c.css.jq.videoPlay.length&&c.css.jq.videoPlay.hide(),c.status.video=!1);d=!0;return!1}});if(d)return!1});if(d){if((!this.status.nativeVideoControls||!this.html.video.gate)&&this._validString(a.poster))e?this.htmlElement.poster.src=a.poster:this.internal.poster.jq.show();
66
+ this.status.srcSet=!0;this.status.media=b.extend({},a);this._updateButtons(!1);this._updateInterface()}else this._error({type:b.jPlayer.error.NO_SUPPORT,context:"{supplied:'"+this.options.supplied+"'}",message:b.jPlayer.errorMsg.NO_SUPPORT,hint:b.jPlayer.errorHint.NO_SUPPORT})},_resetMedia:function(){this._resetStatus();this._updateButtons(!1);this._updateInterface();this._seeked();this.internal.poster.jq.hide();clearTimeout(this.internal.htmlDlyCmdId);this.html.active?this._html_resetMedia():this.flash.active&&
67
+ this._flash_resetMedia()},clearMedia:function(){this._resetMedia();this.html.active?this._html_clearMedia():this.flash.active&&this._flash_clearMedia();this._resetGate();this._resetActive()},load:function(){this.status.srcSet?this.html.active?this._html_load():this.flash.active&&this._flash_load():this._urlNotSetError("load")},focus:function(){this.options.keyEnabled&&(b.jPlayer.focus=this)},play:function(a){a="number"===typeof a?a:NaN;this.status.srcSet?(this.focus(),this.html.active?this._html_play(a):
68
+ this.flash.active&&this._flash_play(a)):this._urlNotSetError("play")},videoPlay:function(){this.play()},pause:function(a){a="number"===typeof a?a:NaN;this.status.srcSet?this.html.active?this._html_pause(a):this.flash.active&&this._flash_pause(a):this._urlNotSetError("pause")},pauseOthers:function(){var a=this;b.each(this.instances,function(b,d){a.element!==d&&d.data("jPlayer").status.srcSet&&d.jPlayer("pause")})},stop:function(){this.status.srcSet?this.html.active?this._html_pause(0):this.flash.active&&
69
+ this._flash_pause(0):this._urlNotSetError("stop")},playHead:function(a){a=this._limitValue(a,0,100);this.status.srcSet?this.html.active?this._html_playHead(a):this.flash.active&&this._flash_playHead(a):this._urlNotSetError("playHead")},_muted:function(a){this.options.muted=a;this.html.used&&this._html_mute(a);this.flash.used&&this._flash_mute(a);!this.html.video.gate&&!this.html.audio.gate&&(this._updateMute(a),this._updateVolume(this.options.volume),this._trigger(b.jPlayer.event.volumechange))},
70
+ mute:function(a){a=a===f?!0:!!a;this._muted(a)},unmute:function(a){a=a===f?!0:!!a;this._muted(!a)},_updateMute:function(a){a===f&&(a=this.options.muted);this.css.jq.mute.length&&this.css.jq.unmute.length&&(this.status.noVolume?(this.css.jq.mute.hide(),this.css.jq.unmute.hide()):a?(this.css.jq.mute.hide(),this.css.jq.unmute.show()):(this.css.jq.mute.show(),this.css.jq.unmute.hide()))},volume:function(a){a=this._limitValue(a,0,1);this.options.volume=a;this.html.used&&this._html_volume(a);this.flash.used&&
71
+ this._flash_volume(a);!this.html.video.gate&&!this.html.audio.gate&&(this._updateVolume(a),this._trigger(b.jPlayer.event.volumechange))},volumeBar:function(a){if(this.css.jq.volumeBar.length){var c=b(a.currentTarget),d=c.offset(),e=a.pageX-d.left,g=c.width();a=c.height()-a.pageY+d.top;c=c.height();this.options.verticalVolume?this.volume(a/c):this.volume(e/g)}this.options.muted&&this._muted(!1)},volumeBarValue:function(){},_updateVolume:function(a){a===f&&(a=this.options.volume);a=this.options.muted?
72
+ 0:a;this.status.noVolume?(this.css.jq.volumeBar.length&&this.css.jq.volumeBar.hide(),this.css.jq.volumeBarValue.length&&this.css.jq.volumeBarValue.hide(),this.css.jq.volumeMax.length&&this.css.jq.volumeMax.hide()):(this.css.jq.volumeBar.length&&this.css.jq.volumeBar.show(),this.css.jq.volumeBarValue.length&&(this.css.jq.volumeBarValue.show(),this.css.jq.volumeBarValue[this.options.verticalVolume?"height":"width"](100*a+"%")),this.css.jq.volumeMax.length&&this.css.jq.volumeMax.show())},volumeMax:function(){this.volume(1);
73
+ this.options.muted&&this._muted(!1)},_cssSelectorAncestor:function(a){var c=this;this.options.cssSelectorAncestor=a;this._removeUiClass();this.ancestorJq=a?b(a):[];a&&1!==this.ancestorJq.length&&this._warning({type:b.jPlayer.warning.CSS_SELECTOR_COUNT,context:a,message:b.jPlayer.warningMsg.CSS_SELECTOR_COUNT+this.ancestorJq.length+" found for cssSelectorAncestor.",hint:b.jPlayer.warningHint.CSS_SELECTOR_COUNT});this._addUiClass();b.each(this.options.cssSelector,function(a,b){c._cssSelector(a,b)});
74
+ this._updateInterface();this._updateButtons();this._updateAutohide();this._updateVolume();this._updateMute()},_cssSelector:function(a,c){var d=this;"string"===typeof c?b.jPlayer.prototype.options.cssSelector[a]?(this.css.jq[a]&&this.css.jq[a].length&&this.css.jq[a].unbind(".jPlayer"),this.options.cssSelector[a]=c,this.css.cs[a]=this.options.cssSelectorAncestor+" "+c,this.css.jq[a]=c?b(this.css.cs[a]):[],this.css.jq[a].length&&this.css.jq[a].bind("click.jPlayer",function(c){c.preventDefault();d[a](c);
75
+ b(this).blur()}),c&&1!==this.css.jq[a].length&&this._warning({type:b.jPlayer.warning.CSS_SELECTOR_COUNT,context:this.css.cs[a],message:b.jPlayer.warningMsg.CSS_SELECTOR_COUNT+this.css.jq[a].length+" found for "+a+" method.",hint:b.jPlayer.warningHint.CSS_SELECTOR_COUNT})):this._warning({type:b.jPlayer.warning.CSS_SELECTOR_METHOD,context:a,message:b.jPlayer.warningMsg.CSS_SELECTOR_METHOD,hint:b.jPlayer.warningHint.CSS_SELECTOR_METHOD}):this._warning({type:b.jPlayer.warning.CSS_SELECTOR_STRING,context:c,
76
+ message:b.jPlayer.warningMsg.CSS_SELECTOR_STRING,hint:b.jPlayer.warningHint.CSS_SELECTOR_STRING})},seekBar:function(a){if(this.css.jq.seekBar.length){var c=b(a.currentTarget),d=c.offset();a=a.pageX-d.left;c=c.width();this.playHead(100*a/c)}},playBar:function(){},repeat:function(){this._loop(!0)},repeatOff:function(){this._loop(!1)},_loop:function(a){this.options.loop!==a&&(this.options.loop=a,this._updateButtons(),this._trigger(b.jPlayer.event.repeat))},currentTime:function(){},duration:function(){},
77
+ gui:function(){},noSolution:function(){},option:function(a,c){var d=a;if(0===arguments.length)return b.extend(!0,{},this.options);if("string"===typeof a){var e=a.split(".");if(c===f){for(var d=b.extend(!0,{},this.options),g=0;g<e.length;g++)if(d[e[g]]!==f)d=d[e[g]];else return this._warning({type:b.jPlayer.warning.OPTION_KEY,context:a,message:b.jPlayer.warningMsg.OPTION_KEY,hint:b.jPlayer.warningHint.OPTION_KEY}),f;return d}for(var g=d={},h=0;h<e.length;h++)h<e.length-1?(g[e[h]]={},g=g[e[h]]):g[e[h]]=
78
+ c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,c){var d=this;switch(a){case "volume":this.volume(c);break;case "muted":this._muted(c);break;case "cssSelectorAncestor":this._cssSelectorAncestor(c);break;case "cssSelector":b.each(c,function(a,b){d._cssSelector(a,b)});break;case "fullScreen":if(this.options[a]!==c){var e=b.jPlayer.nativeFeatures.fullscreen.used.webkitVideo;if(!e||e&&!this.status.waitForPlay)e||
79
+ (this.options[a]=c),c?this._requestFullscreen():this._exitFullscreen(),e||this._setOption("fullWindow",c)}break;case "fullWindow":this.options[a]!==c&&(this._removeUiClass(),this.options[a]=c,this._refreshSize());break;case "size":!this.options.fullWindow&&this.options[a].cssClass!==c.cssClass&&this._removeUiClass();this.options[a]=b.extend({},this.options[a],c);this._refreshSize();break;case "sizeFull":this.options.fullWindow&&this.options[a].cssClass!==c.cssClass&&this._removeUiClass();this.options[a]=
80
+ b.extend({},this.options[a],c);this._refreshSize();break;case "autohide":this.options[a]=b.extend({},this.options[a],c);this._updateAutohide();break;case "loop":this._loop(c);break;case "nativeVideoControls":this.options[a]=b.extend({},this.options[a],c);this.status.nativeVideoControls=this._uaBlocklist(this.options.nativeVideoControls);this._restrictNativeVideoControls();this._updateNativeVideoControls();break;case "noFullWindow":this.options[a]=b.extend({},this.options[a],c);this.status.nativeVideoControls=
81
+ this._uaBlocklist(this.options.nativeVideoControls);this.status.noFullWindow=this._uaBlocklist(this.options.noFullWindow);this._restrictNativeVideoControls();this._updateButtons();break;case "noVolume":this.options[a]=b.extend({},this.options[a],c);this.status.noVolume=this._uaBlocklist(this.options.noVolume);this._updateVolume();this._updateMute();break;case "emulateHtml":this.options[a]!==c&&((this.options[a]=c)?this._emulateHtmlBridge():this._destroyHtmlBridge());break;case "timeFormat":this.options[a]=
82
+ b.extend({},this.options[a],c);break;case "keyEnabled":this.options[a]=c;!c&&this===b.jPlayer.focus&&(b.jPlayer.focus=null);break;case "keyBindings":this.options[a]=b.extend(!0,{},this.options[a],c);break;case "audioFullScreen":this.options[a]=c}return this},_refreshSize:function(){this._setSize();this._addUiClass();this._updateSize();this._updateButtons();this._updateAutohide();this._trigger(b.jPlayer.event.resize)},_setSize:function(){this.options.fullWindow?(this.status.width=this.options.sizeFull.width,
83
+ this.status.height=this.options.sizeFull.height,this.status.cssClass=this.options.sizeFull.cssClass):(this.status.width=this.options.size.width,this.status.height=this.options.size.height,this.status.cssClass=this.options.size.cssClass);this.element.css({width:this.status.width,height:this.status.height})},_addUiClass:function(){this.ancestorJq.length&&this.ancestorJq.addClass(this.status.cssClass)},_removeUiClass:function(){this.ancestorJq.length&&this.ancestorJq.removeClass(this.status.cssClass)},
84
+ _updateSize:function(){this.internal.poster.jq.css({width:this.status.width,height:this.status.height});!this.status.waitForPlay&&this.html.active&&this.status.video||this.html.video.available&&this.html.used&&this.status.nativeVideoControls?this.internal.video.jq.css({width:this.status.width,height:this.status.height}):!this.status.waitForPlay&&(this.flash.active&&this.status.video)&&this.internal.flash.jq.css({width:this.status.width,height:this.status.height})},_updateAutohide:function(){var a=
85
+ this,b=function(){a.css.jq.gui.fadeIn(a.options.autohide.fadeIn,function(){clearTimeout(a.internal.autohideId);a.internal.autohideId=setTimeout(function(){a.css.jq.gui.fadeOut(a.options.autohide.fadeOut)},a.options.autohide.hold)})};this.css.jq.gui.length&&(this.css.jq.gui.stop(!0,!0),clearTimeout(this.internal.autohideId),this.element.unbind(".jPlayerAutohide"),this.css.jq.gui.unbind(".jPlayerAutohide"),this.status.nativeVideoControls?this.css.jq.gui.hide():this.options.fullWindow&&this.options.autohide.full||
86
+ !this.options.fullWindow&&this.options.autohide.restored?(this.element.bind("mousemove.jPlayer.jPlayerAutohide",b),this.css.jq.gui.bind("mousemove.jPlayer.jPlayerAutohide",b),this.css.jq.gui.hide()):this.css.jq.gui.show())},fullScreen:function(){this._setOption("fullScreen",!0)},restoreScreen:function(){this._setOption("fullScreen",!1)},_fullscreenAddEventListeners:function(){var a=this,c=b.jPlayer.nativeFeatures.fullscreen;c.api.fullscreenEnabled&&c.event.fullscreenchange&&("function"!==typeof this.internal.fullscreenchangeHandler&&
87
+ (this.internal.fullscreenchangeHandler=function(){a._fullscreenchange()}),document.addEventListener(c.event.fullscreenchange,this.internal.fullscreenchangeHandler,!1))},_fullscreenRemoveEventListeners:function(){var a=b.jPlayer.nativeFeatures.fullscreen;this.internal.fullscreenchangeHandler&&document.addEventListener(a.event.fullscreenchange,this.internal.fullscreenchangeHandler,!1)},_fullscreenchange:function(){this.options.fullScreen&&!b.jPlayer.nativeFeatures.fullscreen.api.fullscreenElement()&&
88
+ this._setOption("fullScreen",!1)},_requestFullscreen:function(){var a=this.ancestorJq.length?this.ancestorJq[0]:this.element[0],c=b.jPlayer.nativeFeatures.fullscreen;c.used.webkitVideo&&(a=this.htmlElement.video);c.api.fullscreenEnabled&&c.api.requestFullscreen(a)},_exitFullscreen:function(){var a=b.jPlayer.nativeFeatures.fullscreen,c;a.used.webkitVideo&&(c=this.htmlElement.video);a.api.fullscreenEnabled&&a.api.exitFullscreen(c)},_html_initMedia:function(a){var c=b(this.htmlElement.media).empty();
89
+ b.each(a.track||[],function(a,b){var g=document.createElement("track");g.setAttribute("kind",b.kind?b.kind:"");g.setAttribute("src",b.src?b.src:"");g.setAttribute("srclang",b.srclang?b.srclang:"");g.setAttribute("label",b.label?b.label:"");b.def&&g.setAttribute("default",b.def);c.append(g)});this.htmlElement.media.src=this.status.src;"none"!==this.options.preload&&this._html_load();this._trigger(b.jPlayer.event.timeupdate)},_html_setFormat:function(a){var c=this;b.each(this.formats,function(b,e){if(c.html.support[e]&&
90
+ a[e])return c.status.src=a[e],c.status.format[e]=!0,c.status.formatType=e,!1})},_html_setAudio:function(a){this._html_setFormat(a);this.htmlElement.media=this.htmlElement.audio;this._html_initMedia(a)},_html_setVideo:function(a){this._html_setFormat(a);this.status.nativeVideoControls&&(this.htmlElement.video.poster=this._validString(a.poster)?a.poster:"");this.htmlElement.media=this.htmlElement.video;this._html_initMedia(a)},_html_resetMedia:function(){this.htmlElement.media&&(this.htmlElement.media.id===
91
+ this.internal.video.id&&!this.status.nativeVideoControls&&this.internal.video.jq.css({width:"0px",height:"0px"}),this.htmlElement.media.pause())},_html_clearMedia:function(){this.htmlElement.media&&(this.htmlElement.media.src="about:blank",this.htmlElement.media.load())},_html_load:function(){this.status.waitForLoad&&(this.status.waitForLoad=!1,this.htmlElement.media.load());clearTimeout(this.internal.htmlDlyCmdId)},_html_play:function(a){var b=this,d=this.htmlElement.media;this._html_load();if(isNaN(a))d.play();
92
+ else{this.internal.cmdsIgnored&&d.play();try{if(!d.seekable||"object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a,d.play();else throw 1;}catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.play(a)},250);return}}this._html_checkWaitForPlay()},_html_pause:function(a){var b=this,d=this.htmlElement.media;0<a?this._html_load():clearTimeout(this.internal.htmlDlyCmdId);d.pause();if(!isNaN(a))try{if(!d.seekable||"object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a;else throw 1;
93
+ }catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.pause(a)},250);return}0<a&&this._html_checkWaitForPlay()},_html_playHead:function(a){var b=this,d=this.htmlElement.media;this._html_load();try{if("object"===typeof d.seekable&&0<d.seekable.length)d.currentTime=a*d.seekable.end(d.seekable.length-1)/100;else if(0<d.duration&&!isNaN(d.duration))d.currentTime=a*d.duration/100;else throw"e";}catch(e){this.internal.htmlDlyCmdId=setTimeout(function(){b.playHead(a)},250);return}this.status.waitForLoad||
94
+ this._html_checkWaitForPlay()},_html_checkWaitForPlay:function(){this.status.waitForPlay&&(this.status.waitForPlay=!1,this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide(),this.status.video&&(this.internal.poster.jq.hide(),this.internal.video.jq.css({width:this.status.width,height:this.status.height})))},_html_volume:function(a){this.html.audio.available&&(this.htmlElement.audio.volume=a);this.html.video.available&&(this.htmlElement.video.volume=a)},_html_mute:function(a){this.html.audio.available&&
95
+ (this.htmlElement.audio.muted=a);this.html.video.available&&(this.htmlElement.video.muted=a)},_flash_setAudio:function(a){var c=this;try{b.each(this.formats,function(b,d){if(c.flash.support[d]&&a[d]){switch(d){case "m4a":case "fla":c._getMovie().fl_setAudio_m4a(a[d]);break;case "mp3":c._getMovie().fl_setAudio_mp3(a[d]);break;case "rtmpa":c._getMovie().fl_setAudio_rtmp(a[d])}c.status.src=a[d];c.status.format[d]=!0;c.status.formatType=d;return!1}}),"auto"===this.options.preload&&(this._flash_load(),
96
+ this.status.waitForLoad=!1)}catch(d){this._flashError(d)}},_flash_setVideo:function(a){var c=this;try{b.each(this.formats,function(b,d){if(c.flash.support[d]&&a[d]){switch(d){case "m4v":case "flv":c._getMovie().fl_setVideo_m4v(a[d]);break;case "rtmpv":c._getMovie().fl_setVideo_rtmp(a[d])}c.status.src=a[d];c.status.format[d]=!0;c.status.formatType=d;return!1}}),"auto"===this.options.preload&&(this._flash_load(),this.status.waitForLoad=!1)}catch(d){this._flashError(d)}},_flash_resetMedia:function(){this.internal.flash.jq.css({width:"0px",
97
+ height:"0px"});this._flash_pause(NaN)},_flash_clearMedia:function(){try{this._getMovie().fl_clearMedia()}catch(a){this._flashError(a)}},_flash_load:function(){try{this._getMovie().fl_load()}catch(a){this._flashError(a)}this.status.waitForLoad=!1},_flash_play:function(a){try{this._getMovie().fl_play(a)}catch(b){this._flashError(b)}this.status.waitForLoad=!1;this._flash_checkWaitForPlay()},_flash_pause:function(a){try{this._getMovie().fl_pause(a)}catch(b){this._flashError(b)}0<a&&(this.status.waitForLoad=
98
+ !1,this._flash_checkWaitForPlay())},_flash_playHead:function(a){try{this._getMovie().fl_play_head(a)}catch(b){this._flashError(b)}this.status.waitForLoad||this._flash_checkWaitForPlay()},_flash_checkWaitForPlay:function(){this.status.waitForPlay&&(this.status.waitForPlay=!1,this.css.jq.videoPlay.length&&this.css.jq.videoPlay.hide(),this.status.video&&(this.internal.poster.jq.hide(),this.internal.flash.jq.css({width:this.status.width,height:this.status.height})))},_flash_volume:function(a){try{this._getMovie().fl_volume(a)}catch(b){this._flashError(b)}},
99
+ _flash_mute:function(a){try{this._getMovie().fl_mute(a)}catch(b){this._flashError(b)}},_getMovie:function(){return document[this.internal.flash.id]},_getFlashPluginVersion:function(){var a=0,b;if(window.ActiveXObject)try{if(b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")){var d=b.GetVariable("$version");d&&(d=d.split(" ")[1].split(","),a=parseInt(d[0],10)+"."+parseInt(d[1],10))}}catch(e){}else navigator.plugins&&0<navigator.mimeTypes.length&&(b=navigator.plugins["Shockwave Flash"])&&(a=navigator.plugins["Shockwave Flash"].description.replace(/.*\s(\d+\.\d+).*/,
100
+ "$1"));return 1*a},_checkForFlash:function(a){var b=!1;this._getFlashPluginVersion()>=a&&(b=!0);return b},_validString:function(a){return a&&"string"===typeof a},_limitValue:function(a,b,d){return a<b?b:a>d?d:a},_urlNotSetError:function(a){this._error({type:b.jPlayer.error.URL_NOT_SET,context:a,message:b.jPlayer.errorMsg.URL_NOT_SET,hint:b.jPlayer.errorHint.URL_NOT_SET})},_flashError:function(a){var c;c=this.internal.ready?"FLASH_DISABLED":"FLASH";this._error({type:b.jPlayer.error[c],context:this.internal.flash.swf,
101
+ message:b.jPlayer.errorMsg[c]+a.message,hint:b.jPlayer.errorHint[c]});this.internal.flash.jq.css({width:"1px",height:"1px"})},_error:function(a){this._trigger(b.jPlayer.event.error,a);this.options.errorAlerts&&this._alert("Error!"+(a.message?"\n\n"+a.message:"")+(a.hint?"\n\n"+a.hint:"")+"\n\nContext: "+a.context)},_warning:function(a){this._trigger(b.jPlayer.event.warning,f,a);this.options.warningAlerts&&this._alert("Warning!"+(a.message?"\n\n"+a.message:"")+(a.hint?"\n\n"+a.hint:"")+"\n\nContext: "+
102
+ a.context)},_alert:function(a){alert("jPlayer "+this.version.script+" : id='"+this.internal.self.id+"' : "+a)},_emulateHtmlBridge:function(){var a=this;b.each(b.jPlayer.emulateMethods.split(/\s+/g),function(b,d){a.internal.domNode[d]=function(b){a[d](b)}});b.each(b.jPlayer.event,function(c,d){var e=!0;b.each(b.jPlayer.reservedEvent.split(/\s+/g),function(a,b){if(b===c)return e=!1});e&&a.element.bind(d+".jPlayer.jPlayerHtml",function(){a._emulateHtmlUpdate();var b=document.createEvent("Event");b.initEvent(c,
103
+ !1,!0);a.internal.domNode.dispatchEvent(b)})})},_emulateHtmlUpdate:function(){var a=this;b.each(b.jPlayer.emulateStatus.split(/\s+/g),function(b,d){a.internal.domNode[d]=a.status[d]});b.each(b.jPlayer.emulateOptions.split(/\s+/g),function(b,d){a.internal.domNode[d]=a.options[d]})},_destroyHtmlBridge:function(){var a=this;this.element.unbind(".jPlayerHtml");b.each((b.jPlayer.emulateMethods+" "+b.jPlayer.emulateStatus+" "+b.jPlayer.emulateOptions).split(/\s+/g),function(b,d){delete a.internal.domNode[d]})}};
104
+ b.jPlayer.error={FLASH:"e_flash",FLASH_DISABLED:"e_flash_disabled",NO_SOLUTION:"e_no_solution",NO_SUPPORT:"e_no_support",URL:"e_url",URL_NOT_SET:"e_url_not_set",VERSION:"e_version"};b.jPlayer.errorMsg={FLASH:"jPlayer's Flash fallback is not configured correctly, or a command was issued before the jPlayer Ready event. Details: ",FLASH_DISABLED:"jPlayer's Flash fallback has been disabled by the browser due to the CSS rules you have used. Details: ",NO_SOLUTION:"No solution can be found by jPlayer in this browser. Neither HTML nor Flash can be used.",
105
+ NO_SUPPORT:"It is not possible to play any media format provided in setMedia() on this browser using your current options.",URL:"Media URL could not be loaded.",URL_NOT_SET:"Attempt to issue media playback commands, while no media url is set.",VERSION:"jPlayer "+b.jPlayer.prototype.version.script+" needs Jplayer.swf version "+b.jPlayer.prototype.version.needFlash+" but found "};b.jPlayer.errorHint={FLASH:"Check your swfPath option and that Jplayer.swf is there.",FLASH_DISABLED:"Check that you have not display:none; the jPlayer entity or any ancestor.",
106
+ NO_SOLUTION:"Review the jPlayer options: support and supplied.",NO_SUPPORT:"Video or audio formats defined in the supplied option are missing.",URL:"Check media URL is valid.",URL_NOT_SET:"Use setMedia() to set the media URL.",VERSION:"Update jPlayer files."};b.jPlayer.warning={CSS_SELECTOR_COUNT:"e_css_selector_count",CSS_SELECTOR_METHOD:"e_css_selector_method",CSS_SELECTOR_STRING:"e_css_selector_string",OPTION_KEY:"e_option_key"};b.jPlayer.warningMsg={CSS_SELECTOR_COUNT:"The number of css selectors found did not equal one: ",
107
  CSS_SELECTOR_METHOD:"The methodName given in jPlayer('cssSelector') is not a valid jPlayer method.",CSS_SELECTOR_STRING:"The methodCssSelector given in jPlayer('cssSelector') is not a String or is empty.",OPTION_KEY:"The option requested in jPlayer('option') is undefined."};b.jPlayer.warningHint={CSS_SELECTOR_COUNT:"Check your css selector and the ancestor.",CSS_SELECTOR_METHOD:"Check your method name.",CSS_SELECTOR_STRING:"Check your css selector is a string.",OPTION_KEY:"Check your option name."}});
assets/js/jsrender.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! JsRender v1.0.0-beta: http://github.com/BorisMoore/jsrender and http://jsviews.com/jsviews
2
- informal pre V1.0 commit counter: 42 */
3
- (function(n,t,i){"use strict";function it(n,t){t&&t.onError&&t.onError(n)===!1||(this.name="JsRender Error",this.message=n||"JsRender error")}function o(n,t){var i;n=n||{};for(i in t)n[i]=t[i];return n}function ct(n,t,i){return(!k.rTag||arguments.length)&&(v=n?n.charAt(0):v,y=n?n.charAt(1):y,f=t?t.charAt(0):f,h=t?t.charAt(1):h,w=i||w,n="\\"+v+"(\\"+w+")?\\"+y,t="\\"+f+"\\"+h,a="(?:(?:(\\w+(?=[\\/\\s\\"+f+"]))|(?:(\\w+)?(:)|(>)|!--((?:[^-]|-(?!-))*)--|(\\*)))\\s*((?:[^\\"+f+"]|\\"+f+"(?!\\"+h+"))*?)",k.rTag=a+")",a=new RegExp(n+a+"(\\/)?|(?:\\/(\\w+)))"+t,"g"),et=new RegExp("<.*>|([^\\\\]|^)[{}]|"+n+".*"+t)),[v,y,f,h,w]}function ei(n,t){t||(t=n,n=i);var e,f,o,u,r=this,s=!t||t==="root";if(n){if(u=r.type===t?r:i,!u)if(e=r.views,r._.useKey){for(f in e)if(u=e[f].get(n,t))break}else for(f=0,o=e.length;!u&&f<o;f++)u=e[f].get(n,t)}else if(s)while(r.parent.parent)u=r=r.parent;else while(r&&!u)u=r.type===t?r:i,r=r.parent;return u}function lt(){var n=this.get("item");return n?n.index:i}function oi(n,t){var u,f=this,r=t&&t[n]||(f.ctx||{})[n];return r=r===i?f.getRsc("helpers",n):r,r&&typeof r=="function"&&(u=function(){return r.apply(f,arguments)},o(u,r)),u||r}function si(n,t,u){var h,f,s,e=+u===u&&u,o=t.linkCtx;return e&&(u=(e=t.tmpl.bnds[e-1])(t.data,t,r)),s=u.args[0],(n||e)&&(f=o&&o.tag||{_:{inline:!o,bnd:e},tagName:n+":",flow:!0,_is:"tag"},o&&(o.tag=f,f.linkCtx=f.linkCtx||o,u.ctx=l(u.ctx,o.view.ctx)),f.tagCtx=u,u.view=t,f.ctx=u.ctx||{},delete u.ctx,t._.tag=f,n=n!=="true"&&n,n&&((h=t.getRsc("converters",n))||c("Unknown converter: {{"+n+":"))&&(f.depends=h.depends,s=h.apply(f,u.args)),s=e&&t._.onRender?t._.onRender(s,t,e):s,t._.tag=i),s}function hi(n,t){for(var e=this,u=r[n],f=u&&u[t];f===i&&e;)u=e.tmpl[n],f=u&&u[t],e=e.parent;return f}function ci(n,t,u,f,s){var et,h,ot,it,g,v,ut,p,a,nt,k,st,w,ft,b="",tt=+f===f&&f,y=t.linkCtx||0,d=t.ctx,ht=u||t.tmpl,ct=t._;for(n._is==="tag"&&(h=n,n=h.tagName),tt&&(f=(st=ht.bnds[tt-1])(t.data,t,r)),ut=f.length,h=h||y.tag,v=0;v<ut;v++)a=f[v],k=a.tmpl,k=a.content=k&&ht.tmpls[k-1],u=a.props.tmpl,v||u&&h||(w=t.getRsc("tags",n)||c("Unknown tag: {{"+n+"}}")),u=u||(h?h:w).template||k,u=""+u===u?t.getRsc("templates",u)||e(u):u,o(a,{tmpl:u,render:rt,index:v,view:t,ctx:l(a.ctx,d)}),h||(w._ctr?(h=new w._ctr,ft=!!h.init,h.attr=h.attr||w.attr||i):h={render:w.render},h._={inline:!y},y&&(y.attr=h.attr=y.attr||h.attr,y.tag=h,h.linkCtx=y),(h._.bnd=st||y.fn)?h._.arrVws={}:h.dataBoundOnly&&c("{^{"+n+"}} tag must be data-bound"),h.tagName=n,h.parent=g=d&&d.tag,h._is="tag",h._def=w),ct.tag=h,a.tag=h,h.tagCtxs=f,h.flow||(nt=a.ctx=a.ctx||{},ot=h.parents=nt.parentTags=d&&l(nt.parentTags,d.parentTags)||{},g&&(ot[g.tagName]=g),nt.tag=h);for(h.rendering={},v=0;v<ut;v++)a=h.tagCtx=f[v],h.ctx=a.ctx,!v&&ft&&(h.init(a,y,h.ctx),ft=i),p=i,(et=h.render)&&(p=et.apply(h,a.args)),p=p!==i?p:a.tmpl&&a.render()||(s?i:""),b=b?b+(p||""):p;return delete h.rendering,h.tagCtx=h.tagCtxs[0],h.ctx=h.tagCtx.ctx,h._.inline&&(it=h.attr)&&it!=="html"&&(b=it==="text"?wt.html(b):""),tt&&t._.onRender?t._.onRender(b,t,tt):b}function b(n,t,r,u,f,e,o,s){var c,l,a,y=t==="array",v={key:0,useKey:y?0:1,id:""+fi++,onRender:s,bnds:{}},h={data:u,tmpl:f,content:o,views:y?[]:{},parent:r,ctx:n,type:t,get:ei,getIndex:lt,getRsc:hi,hlp:oi,_:v,_is:"view"};return r&&(c=r.views,l=r._,l.useKey?(c[v.key="_"+l.useKey++]=h,a=l.tag,v.bnd=y&&(!a||!!a._.bnd&&a)):c.splice(v.key=h.index=e!==i?e:c.length,0,h),h.ctx=n||r.ctx),h}function li(n){var t,i,r,u,f;for(t in p)if(u=p[t],(f=u.compile)&&(i=n[t+"s"]))for(r in i)i[r]=f(r,i[r],n,t,u)}function ai(n,t,i){var u,r;return typeof t=="function"?t={depends:t.depends,render:t}:((r=t.template)&&(t.template=""+r===r?e[r]||e(r):r),t.init!==!1&&(u=t._ctr=function(){},(u.prototype=t).constructor=u)),i&&(t._parentTmpl=i),t}function at(r,u,f,o,s,h){function v(i){if(""+i===i||i.nodeType>0){try{a=i.nodeType>0?i:!et.test(i)&&t&&t(n.document).find(i)[0]}catch(u){}return a&&(i=a.getAttribute(ht),r=r||i,i=e[i],i||(r=r||"_"+ui++,a.setAttribute(ht,r),i=e[r]=at(r,a.innerHTML,f,o,s,h))),i}}var c,a;return u=u||"",c=v(u),h=h||(u.markup?u:{}),h.tmplName=r,f&&(h._parentTmpl=f),!c&&u.markup&&(c=v(u.markup))&&c.fn&&(c.debug!==u.debug||c.allowCode!==u.allowCode)&&(c=c.markup),c!==i?(r&&!f&&(tt[r]=function(){return u.render.apply(u,arguments)}),c.fn||u.fn?c.fn&&(u=r&&r!==c.tmplName?l(h,c):c):(u=vt(c,h),ut(c,u)),li(h),u):void 0}function vt(n,t){var i,f=d.wrapMap||{},r=o({markup:n,tmpls:[],links:{},tags:{},bnds:[],_is:"template",render:rt},t);return t.htmlTag||(i=ii.exec(n),r.htmlTag=i?i[1].toLowerCase():""),i=f[r.htmlTag],i&&i!==f.div&&(r.markup=u.trim(r.markup),r._elCnt=!0),r}function vi(n,t){function u(e,o,s){var l,h,a,c;if(e&&""+e!==e&&!e.nodeType&&!e.markup){for(a in e)u(a,e[a],o);return r}return o===i&&(o=e,e=i),e&&""+e!==e&&(s=o,o=e,e=i),c=s?s[f]=s[f]||{}:u,h=t.compile,(l=k.onBeforeStoreItem)&&(h=l(c,e,o,h)||h),e?o===null?delete c[e]:c[e]=h?o=h(e,o,s,n,t):o:o=h(i,o),h&&o&&(o._is=n),(l=k.onStoreItem)&&l(c,e,o,h),o}var f=n+"s";r[f]=u,p[n]=t}function rt(n,t,f,o,s,h){var w,ut,nt,y,tt,it,rt,k,p,ft,d,et,v,a=this,ot=!a.attr||a.attr==="html",g="";if(o===!0&&(rt=!0,o=0),a.tag?(k=a,a=a.tag,ft=a._,et=a.tagName,v=k.tmpl,t=l(t,a.ctx),p=k.content,k.props.link===!1&&(t=t||{},t.link=!1),f=f||k.view,n=n===i?f:n):v=a.jquery&&(a[0]||c('Unknown template: "'+a.selector+'"'))||a,v&&(!f&&n&&n._is==="view"&&(f=n),f&&(p=p||f.content,h=h||f._.onRender,n===f&&(n=f.data,s=!0),t=l(t,f.ctx)),f&&f.data!==i||((t=t||{}).root=n),v.fn||(v=e[v]||e(v)),v)){if(h=(t&&t.link)!==!1&&ot&&h,d=h,h===!0&&(d=i,h=f._.onRender),u.isArray(n)&&!s)for(y=rt?f:o!==i&&f||b(t,"array",f,n,v,o,p,h),w=0,ut=n.length;w<ut;w++)nt=n[w],tt=b(t,"item",y,nt,v,(o||0)+w,p,h),it=v.fn(nt,tt,r),g+=y._.onRender?y._.onRender(it,tt):it;else y=rt?f:b(t,et||"data",f,n,v,o,p,h),ft&&!a.flow&&(y.tag=a),g+=v.fn(n,y,r);return d?d(g,y):g}return""}function c(n){throw new r.sub.Error(n);}function s(n){c("Syntax error\n"+n)}function ut(n,t,i,r){function v(t){t-=f,t&&h.push(n.substr(f,t).replace(nt,"\\n"))}function c(t){t&&s('Unmatched or missing tag: "{{/'+t+'}}" in template:\n'+n)}function y(e,a,y,w,b,k,d,g,tt,it,rt,ut){k&&(b=":",w="html"),it=it||i;var at,st,ht=a&&[],ot="",et="",ct="",lt=!it&&!b&&!d;y=y||b,v(ut),f=ut+e.length,g?p&&h.push(["*","\n"+tt.replace(dt,"$1")+"\n"]):y?(y==="else"&&(ti.test(tt)&&s('for "{{else if expr}}" use "{{else expr}}"'),ht=u[6],u[7]=n.substring(u[7],ut),u=o.pop(),h=u[3],lt=!0),tt&&(tt=tt.replace(nt," "),ot=ft(tt,ht,t).replace(ni,function(n,t,i){return t?ct+=i+",":et+=i+",",""})),et=et.slice(0,-1),ot=ot.slice(0,-1),at=et&&et.indexOf("noerror:true")+1&&et||"",l=[y,w||!!r||"",ot,lt&&[],'params:"'+tt+'",props:{'+et+"}"+(ct?",ctx:{"+ct.slice(0,-1)+"}":""),at,ht||0],h.push(l),lt&&(o.push(u),u=l,u[7]=f)):rt&&(st=u[0],c(rt!==st&&st!=="else"&&rt),u[7]=n.substring(u[7],ut),u=o.pop()),c(!u&&rt),h=u[3]}var l,p=t&&t.allowCode,e=[],f=0,o=[],h=e,u=[,,,e];return n=n.replace(gt,"\\$&"),c(o[0]&&o[0][3].pop()[0]),n.replace(a,y),v(n.length),(f=e[e.length-1])&&c(""+f!==f&&+f[7]===f[7]&&f[0]),yt(e,i?n:t,i)}function yt(n,i,r){var c,f,e,l,a,y,st,ht,ct,lt,ft,p,o,et,v,tt,w,it,at,b,pt,wt,ot,rt,k,h=0,u="",g="",ut={},bt=n.length;for(""+i===i?(v=r?'data-link="'+i.replace(nt," ").slice(1,-1)+'"':i,i=0):(v=i.tmplName||"unnamed",i.allowCode&&(ut.allowCode=!0),i.debug&&(ut.debug=!0),p=i.bnds,et=i.tmpls),c=0;c<bt;c++)if(f=n[c],""+f===f)u+='\nret+="'+f+'";';else if(e=f[0],e==="*")u+=""+f[1];else{if(l=f[1],a=f[2],it=f[3],y=f[4],g=f[5],at=f[7],(wt=e==="else")||(h=0,p&&(o=f[6])&&(h=p.push(o))),(ot=e===":")?(l&&(e=l==="html"?">":l+e),g&&(rt="prm"+c,g="try{var "+rt+"=["+a+"][0];}catch(e){"+rt+'="";}\n',a=rt)):(it&&(tt=vt(at,ut),tt.tmplName=v+"/"+e,yt(it,tt),et.push(tt)),wt||(w=e,pt=u,u=""),b=n[c+1],b=b&&b[0]==="else"),y+=",args:["+a+"]}",ot&&o||l&&e!==">"){if(k=new Function("data,view,j,u"," // "+v+" "+h+" "+e+"\n"+g+"return {"+y+";"),k.paths=o,k._ctxs=e,r)return k;ft=1}if(u+=ot?"\n"+(o?"":g)+(r?"return ":"ret+=")+(ft?(ft=0,lt=!0,'c("'+l+'",view,'+(o?(p[h-1]=k,h):"{"+y)+");"):e===">"?(ht=!0,"h("+a+");"):(ct=!0,"(v="+a+")!="+(r?"=":"")+'u?v:"";')):(st=!0,"{view:view,tmpl:"+(it?et.length:"0")+","+y+","),w&&!b){if(u="["+u.slice(0,-1)+"]",(r||o)&&(u=new Function("data,view,j,u"," // "+v+" "+h+" "+w+"\nreturn "+u+";"),o&&((p[h-1]=u).paths=o),u._ctxs=e,r))return u;u=pt+'\nret+=t("'+w+'",view,this,'+(h||u)+");",o=0,w=0}}u="// "+v+"\nvar j=j||"+(t?"jQuery.":"js")+"views"+(ct?",v":"")+(st?",t=j._tag":"")+(lt?",c=j._cnvt":"")+(ht?",h=j.converters.html":"")+(r?";\n":',ret="";\n')+(d.tryCatch?"try{\n":"")+(ut.debug?"debugger;":"")+u+(r?"\n":"\nreturn ret;\n")+(d.tryCatch?"\n}catch(e){return j._err(e);}":"");try{u=new Function("data,view,j,u",u)}catch(kt){s("Compiled template code:\n\n"+u,kt)}return i&&(i.fn=u),u}function ft(n,t,i){function b(b,k,d,g,nt,tt,it,rt,et,ot,st,ht,ct,lt,at,vt,yt,pt,wt,kt){function gt(n,i,r,f,o,s,h){if(i&&(t&&(u==="linkTo"&&(e=t.to=t.to||[],e.push(nt)),(!u||l)&&t.push(nt)),i!==".")){var c=(r?'view.hlp("'+r+'")':f?"view":"data")+(h?(o?"."+o:r?"":f?"":"."+i)+(s||""):(h=r?"":f?o||"":i,""));return c=c+(h?"."+h:""),c.slice(0,9)==="view.data"?c.slice(5):c}return n}var dt;if(tt=tt||"",d=d||k||ht,nt=nt||et,ot=ot||yt||"",it)s(n);else return t&&vt&&!c&&!o&&(!u||l||e)&&(dt=p[r],kt.length-2>wt-dt&&(dt=kt.slice(dt,wt+1),vt=y+":"+dt+f,vt=w[vt]=w[vt]||ut(v+vt+h,i,!0),vt.paths||ft(dt,vt.paths=[],i),(e||t).push({_jsvOb:vt}))),c?(c=!ct,c?b:'"'):o?(o=!lt,o?b:'"'):(d?(r++,p[r]=wt++,d):"")+(pt?r?"":u?(u=l=e=!1,"\b"):",":rt?(r&&s(n),u=nt,l=g,"\b"+nt+":"):nt?nt.split("^").join(".").replace(bt,gt)+(ot?(a[++r]=!0,nt.charAt(0)!=="."&&(p[r]=wt),ot):tt):tt?tt:at?(a[r--]=!1,at)+(ot?(a[++r]=!0,ot):""):st?(a[r]||s(n),","):k?"":(c=ct,o=lt,'"'))}var u,e,l,w=i.links,a={},p={0:-1},r=0,o=!1,c=!1;return(n+" ").replace(kt,b)}function l(n,t){return n&&n!==t?t?o(o({},t),n):n:t&&o({},t)}function pt(n){return st[n]||(st[n]="&#"+n.charCodeAt(0)+";")}if((!t||!t.views)&&!n.jsviews){var u,g,a,et,v="{",y="{",f="}",h="}",w="^",bt=/^(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g,kt=/(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)([#~]?[\w$.^]+)?\s*((\+\+|--)|\+|-|&&|\|\||===|!==|==|!=|<=|>=|[<>%*!:?\/]|(=))\s*|([#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=\s*\.|\s*\^)|[)\]])([([]?))|(\s+)/g,nt=/[ \t]*(\r\n|\n|\r)/g,dt=/\\(['"])/g,gt=/['"\\]/g,ni=/\x08(~)?([^\x08]+)\x08/g,ti=/^if\s/,ii=/<(\w+)[>\s]/,ot=/[\x00`><"'&]/g,ri=ot,ui=0,fi=0,st={"&":"&amp;","<":"&lt;",">":"&gt;","\x00":"&#0;","'":"&#39;",'"':"&#34;","`":"&#96;"},ht="data-jsv-tmpl",tt={},p={template:{compile:at},tag:{compile:ai},helper:{},converter:{}},r={jsviews:"v1.0.0-beta",render:tt,settings:{delimiters:ct,debugMode:!0,tryCatch:!0},sub:{View:b,Error:it,tmplFn:ut,parse:ft,extend:o,error:c,syntaxError:s},_cnvt:si,_tag:ci,_err:function(n){return d.debugMode?"Error: "+(n.message||n)+". ":""}};(it.prototype=new Error).constructor=it,lt.depends=function(){return[this.get("item"),"index"]};for(g in p)vi(g,p[g]);var e=r.templates,wt=r.converters,pi=r.helpers,yi=r.tags,k=r.sub,d=r.settings;t?(u=t,u.fn.render=rt):(u=n.jsviews={},u.isArray=Array&&Array.isArray||function(n){return Object.prototype.toString.call(n)==="[object Array]"}),u.render=tt,u.views=r,u.templates=e=r.templates,yi({"else":function(){},"if":{render:function(n){var t=this;return t.rendering.done||!n&&(arguments.length||!t.tagCtx.index)?"":(t.rendering.done=!0,t.selected=t.tagCtx.index,t.tagCtx.render())},onUpdate:function(n,t,i){for(var r,f,u=0;(r=this.tagCtxs[u])&&r.args.length;u++)if(r=r.args[0],f=!r!=!i[u].args[0],!!r||f)return f;return!1},flow:!0},"for":{render:function(n){var t=this,f=t.tagCtx,e=!arguments.length,r="",o=e||0;return t.rendering.done||(e?r=i:n!==i&&(r+=f.render(n),o+=u.isArray(n)?n.length:1),(t.rendering.done=o)&&(t.selected=f.index)),r},onArrayChange:function(n,t){var i,u=this,r=t.change;if(this.tagCtxs[1]&&(r==="insert"&&n.target.length===t.items.length||r==="remove"&&!n.target.length||r==="refresh"&&!t.oldItems.length!=!n.target.length))this.refresh();else for(i in u._.arrVws)i=u._.arrVws[i],i.data===n.target&&i._.onArrayChange.apply(i,arguments);n.done=!0},flow:!0},include:{flow:!0},"*":{render:function(n){return n},flow:!0}}),wt({html:function(n){return n!=i?String(n).replace(ri,pt):""},attr:function(n){return n!=i?String(n).replace(ot,pt):n===null?null:""},url:function(n){return n!=i?encodeURI(String(n)):n===null?null:""}}),ct()}})(this,this.jQuery);
4
  //@ sourceMappingURL=jsrender.min.js.map
1
+ /*! JsRender v1.0.0-beta: http://github.com/BorisMoore/jsrender and http://jsviews.com/jsviews
2
+ informal pre V1.0 commit counter: 42 */
3
+ (function(n,t,i){"use strict";function it(n,t){t&&t.onError&&t.onError(n)===!1||(this.name="JsRender Error",this.message=n||"JsRender error")}function o(n,t){var i;n=n||{};for(i in t)n[i]=t[i];return n}function ct(n,t,i){return(!k.rTag||arguments.length)&&(v=n?n.charAt(0):v,y=n?n.charAt(1):y,f=t?t.charAt(0):f,h=t?t.charAt(1):h,w=i||w,n="\\"+v+"(\\"+w+")?\\"+y,t="\\"+f+"\\"+h,a="(?:(?:(\\w+(?=[\\/\\s\\"+f+"]))|(?:(\\w+)?(:)|(>)|!--((?:[^-]|-(?!-))*)--|(\\*)))\\s*((?:[^\\"+f+"]|\\"+f+"(?!\\"+h+"))*?)",k.rTag=a+")",a=new RegExp(n+a+"(\\/)?|(?:\\/(\\w+)))"+t,"g"),et=new RegExp("<.*>|([^\\\\]|^)[{}]|"+n+".*"+t)),[v,y,f,h,w]}function ei(n,t){t||(t=n,n=i);var e,f,o,u,r=this,s=!t||t==="root";if(n){if(u=r.type===t?r:i,!u)if(e=r.views,r._.useKey){for(f in e)if(u=e[f].get(n,t))break}else for(f=0,o=e.length;!u&&f<o;f++)u=e[f].get(n,t)}else if(s)while(r.parent.parent)u=r=r.parent;else while(r&&!u)u=r.type===t?r:i,r=r.parent;return u}function lt(){var n=this.get("item");return n?n.index:i}function oi(n,t){var u,f=this,r=t&&t[n]||(f.ctx||{})[n];return r=r===i?f.getRsc("helpers",n):r,r&&typeof r=="function"&&(u=function(){return r.apply(f,arguments)},o(u,r)),u||r}function si(n,t,u){var h,f,s,e=+u===u&&u,o=t.linkCtx;return e&&(u=(e=t.tmpl.bnds[e-1])(t.data,t,r)),s=u.args[0],(n||e)&&(f=o&&o.tag||{_:{inline:!o,bnd:e},tagName:n+":",flow:!0,_is:"tag"},o&&(o.tag=f,f.linkCtx=f.linkCtx||o,u.ctx=l(u.ctx,o.view.ctx)),f.tagCtx=u,u.view=t,f.ctx=u.ctx||{},delete u.ctx,t._.tag=f,n=n!=="true"&&n,n&&((h=t.getRsc("converters",n))||c("Unknown converter: {{"+n+":"))&&(f.depends=h.depends,s=h.apply(f,u.args)),s=e&&t._.onRender?t._.onRender(s,t,e):s,t._.tag=i),s}function hi(n,t){for(var e=this,u=r[n],f=u&&u[t];f===i&&e;)u=e.tmpl[n],f=u&&u[t],e=e.parent;return f}function ci(n,t,u,f,s){var et,h,ot,it,g,v,ut,p,a,nt,k,st,w,ft,b="",tt=+f===f&&f,y=t.linkCtx||0,d=t.ctx,ht=u||t.tmpl,ct=t._;for(n._is==="tag"&&(h=n,n=h.tagName),tt&&(f=(st=ht.bnds[tt-1])(t.data,t,r)),ut=f.length,h=h||y.tag,v=0;v<ut;v++)a=f[v],k=a.tmpl,k=a.content=k&&ht.tmpls[k-1],u=a.props.tmpl,v||u&&h||(w=t.getRsc("tags",n)||c("Unknown tag: {{"+n+"}}")),u=u||(h?h:w).template||k,u=""+u===u?t.getRsc("templates",u)||e(u):u,o(a,{tmpl:u,render:rt,index:v,view:t,ctx:l(a.ctx,d)}),h||(w._ctr?(h=new w._ctr,ft=!!h.init,h.attr=h.attr||w.attr||i):h={render:w.render},h._={inline:!y},y&&(y.attr=h.attr=y.attr||h.attr,y.tag=h,h.linkCtx=y),(h._.bnd=st||y.fn)?h._.arrVws={}:h.dataBoundOnly&&c("{^{"+n+"}} tag must be data-bound"),h.tagName=n,h.parent=g=d&&d.tag,h._is="tag",h._def=w),ct.tag=h,a.tag=h,h.tagCtxs=f,h.flow||(nt=a.ctx=a.ctx||{},ot=h.parents=nt.parentTags=d&&l(nt.parentTags,d.parentTags)||{},g&&(ot[g.tagName]=g),nt.tag=h);for(h.rendering={},v=0;v<ut;v++)a=h.tagCtx=f[v],h.ctx=a.ctx,!v&&ft&&(h.init(a,y,h.ctx),ft=i),p=i,(et=h.render)&&(p=et.apply(h,a.args)),p=p!==i?p:a.tmpl&&a.render()||(s?i:""),b=b?b+(p||""):p;return delete h.rendering,h.tagCtx=h.tagCtxs[0],h.ctx=h.tagCtx.ctx,h._.inline&&(it=h.attr)&&it!=="html"&&(b=it==="text"?wt.html(b):""),tt&&t._.onRender?t._.onRender(b,t,tt):b}function b(n,t,r,u,f,e,o,s){var c,l,a,y=t==="array",v={key:0,useKey:y?0:1,id:""+fi++,onRender:s,bnds:{}},h={data:u,tmpl:f,content:o,views:y?[]:{},parent:r,ctx:n,type:t,get:ei,getIndex:lt,getRsc:hi,hlp:oi,_:v,_is:"view"};return r&&(c=r.views,l=r._,l.useKey?(c[v.key="_"+l.useKey++]=h,a=l.tag,v.bnd=y&&(!a||!!a._.bnd&&a)):c.splice(v.key=h.index=e!==i?e:c.length,0,h),h.ctx=n||r.ctx),h}function li(n){var t,i,r,u,f;for(t in p)if(u=p[t],(f=u.compile)&&(i=n[t+"s"]))for(r in i)i[r]=f(r,i[r],n,t,u)}function ai(n,t,i){var u,r;return typeof t=="function"?t={depends:t.depends,render:t}:((r=t.template)&&(t.template=""+r===r?e[r]||e(r):r),t.init!==!1&&(u=t._ctr=function(){},(u.prototype=t).constructor=u)),i&&(t._parentTmpl=i),t}function at(r,u,f,o,s,h){function v(i){if(""+i===i||i.nodeType>0){try{a=i.nodeType>0?i:!et.test(i)&&t&&t(n.document).find(i)[0]}catch(u){}return a&&(i=a.getAttribute(ht),r=r||i,i=e[i],i||(r=r||"_"+ui++,a.setAttribute(ht,r),i=e[r]=at(r,a.innerHTML,f,o,s,h))),i}}var c,a;return u=u||"",c=v(u),h=h||(u.markup?u:{}),h.tmplName=r,f&&(h._parentTmpl=f),!c&&u.markup&&(c=v(u.markup))&&c.fn&&(c.debug!==u.debug||c.allowCode!==u.allowCode)&&(c=c.markup),c!==i?(r&&!f&&(tt[r]=function(){return u.render.apply(u,arguments)}),c.fn||u.fn?c.fn&&(u=r&&r!==c.tmplName?l(h,c):c):(u=vt(c,h),ut(c,u)),li(h),u):void 0}function vt(n,t){var i,f=d.wrapMap||{},r=o({markup:n,tmpls:[],links:{},tags:{},bnds:[],_is:"template",render:rt},t);return t.htmlTag||(i=ii.exec(n),r.htmlTag=i?i[1].toLowerCase():""),i=f[r.htmlTag],i&&i!==f.div&&(r.markup=u.trim(r.markup),r._elCnt=!0),r}function vi(n,t){function u(e,o,s){var l,h,a,c;if(e&&""+e!==e&&!e.nodeType&&!e.markup){for(a in e)u(a,e[a],o);return r}return o===i&&(o=e,e=i),e&&""+e!==e&&(s=o,o=e,e=i),c=s?s[f]=s[f]||{}:u,h=t.compile,(l=k.onBeforeStoreItem)&&(h=l(c,e,o,h)||h),e?o===null?delete c[e]:c[e]=h?o=h(e,o,s,n,t):o:o=h(i,o),h&&o&&(o._is=n),(l=k.onStoreItem)&&l(c,e,o,h),o}var f=n+"s";r[f]=u,p[n]=t}function rt(n,t,f,o,s,h){var w,ut,nt,y,tt,it,rt,k,p,ft,d,et,v,a=this,ot=!a.attr||a.attr==="html",g="";if(o===!0&&(rt=!0,o=0),a.tag?(k=a,a=a.tag,ft=a._,et=a.tagName,v=k.tmpl,t=l(t,a.ctx),p=k.content,k.props.link===!1&&(t=t||{},t.link=!1),f=f||k.view,n=n===i?f:n):v=a.jquery&&(a[0]||c('Unknown template: "'+a.selector+'"'))||a,v&&(!f&&n&&n._is==="view"&&(f=n),f&&(p=p||f.content,h=h||f._.onRender,n===f&&(n=f.data,s=!0),t=l(t,f.ctx)),f&&f.data!==i||((t=t||{}).root=n),v.fn||(v=e[v]||e(v)),v)){if(h=(t&&t.link)!==!1&&ot&&h,d=h,h===!0&&(d=i,h=f._.onRender),u.isArray(n)&&!s)for(y=rt?f:o!==i&&f||b(t,"array",f,n,v,o,p,h),w=0,ut=n.length;w<ut;w++)nt=n[w],tt=b(t,"item",y,nt,v,(o||0)+w,p,h),it=v.fn(nt,tt,r),g+=y._.onRender?y._.onRender(it,tt):it;else y=rt?f:b(t,et||"data",f,n,v,o,p,h),ft&&!a.flow&&(y.tag=a),g+=v.fn(n,y,r);return d?d(g,y):g}return""}function c(n){throw new r.sub.Error(n);}function s(n){c("Syntax error\n"+n)}function ut(n,t,i,r){function v(t){t-=f,t&&h.push(n.substr(f,t).replace(nt,"\\n"))}function c(t){t&&s('Unmatched or missing tag: "{{/'+t+'}}" in template:\n'+n)}function y(e,a,y,w,b,k,d,g,tt,it,rt,ut){k&&(b=":",w="html"),it=it||i;var at,st,ht=a&&[],ot="",et="",ct="",lt=!it&&!b&&!d;y=y||b,v(ut),f=ut+e.length,g?p&&h.push(["*","\n"+tt.replace(dt,"$1")+"\n"]):y?(y==="else"&&(ti.test(tt)&&s('for "{{else if expr}}" use "{{else expr}}"'),ht=u[6],u[7]=n.substring(u[7],ut),u=o.pop(),h=u[3],lt=!0),tt&&(tt=tt.replace(nt," "),ot=ft(tt,ht,t).replace(ni,function(n,t,i){return t?ct+=i+",":et+=i+",",""})),et=et.slice(0,-1),ot=ot.slice(0,-1),at=et&&et.indexOf("noerror:true")+1&&et||"",l=[y,w||!!r||"",ot,lt&&[],'params:"'+tt+'",props:{'+et+"}"+(ct?",ctx:{"+ct.slice(0,-1)+"}":""),at,ht||0],h.push(l),lt&&(o.push(u),u=l,u[7]=f)):rt&&(st=u[0],c(rt!==st&&st!=="else"&&rt),u[7]=n.substring(u[7],ut),u=o.pop()),c(!u&&rt),h=u[3]}var l,p=t&&t.allowCode,e=[],f=0,o=[],h=e,u=[,,,e];return n=n.replace(gt,"\\$&"),c(o[0]&&o[0][3].pop()[0]),n.replace(a,y),v(n.length),(f=e[e.length-1])&&c(""+f!==f&&+f[7]===f[7]&&f[0]),yt(e,i?n:t,i)}function yt(n,i,r){var c,f,e,l,a,y,st,ht,ct,lt,ft,p,o,et,v,tt,w,it,at,b,pt,wt,ot,rt,k,h=0,u="",g="",ut={},bt=n.length;for(""+i===i?(v=r?'data-link="'+i.replace(nt," ").slice(1,-1)+'"':i,i=0):(v=i.tmplName||"unnamed",i.allowCode&&(ut.allowCode=!0),i.debug&&(ut.debug=!0),p=i.bnds,et=i.tmpls),c=0;c<bt;c++)if(f=n[c],""+f===f)u+='\nret+="'+f+'";';else if(e=f[0],e==="*")u+=""+f[1];else{if(l=f[1],a=f[2],it=f[3],y=f[4],g=f[5],at=f[7],(wt=e==="else")||(h=0,p&&(o=f[6])&&(h=p.push(o))),(ot=e===":")?(l&&(e=l==="html"?">":l+e),g&&(rt="prm"+c,g="try{var "+rt+"=["+a+"][0];}catch(e){"+rt+'="";}\n',a=rt)):(it&&(tt=vt(at,ut),tt.tmplName=v+"/"+e,yt(it,tt),et.push(tt)),wt||(w=e,pt=u,u=""),b=n[c+1],b=b&&b[0]==="else"),y+=",args:["+a+"]}",ot&&o||l&&e!==">"){if(k=new Function("data,view,j,u"," // "+v+" "+h+" "+e+"\n"+g+"return {"+y+";"),k.paths=o,k._ctxs=e,r)return k;ft=1}if(u+=ot?"\n"+(o?"":g)+(r?"return ":"ret+=")+(ft?(ft=0,lt=!0,'c("'+l+'",view,'+(o?(p[h-1]=k,h):"{"+y)+");"):e===">"?(ht=!0,"h("+a+");"):(ct=!0,"(v="+a+")!="+(r?"=":"")+'u?v:"";')):(st=!0,"{view:view,tmpl:"+(it?et.length:"0")+","+y+","),w&&!b){if(u="["+u.slice(0,-1)+"]",(r||o)&&(u=new Function("data,view,j,u"," // "+v+" "+h+" "+w+"\nreturn "+u+";"),o&&((p[h-1]=u).paths=o),u._ctxs=e,r))return u;u=pt+'\nret+=t("'+w+'",view,this,'+(h||u)+");",o=0,w=0}}u="// "+v+"\nvar j=j||"+(t?"jQuery.":"js")+"views"+(ct?",v":"")+(st?",t=j._tag":"")+(lt?",c=j._cnvt":"")+(ht?",h=j.converters.html":"")+(r?";\n":',ret="";\n')+(d.tryCatch?"try{\n":"")+(ut.debug?"debugger;":"")+u+(r?"\n":"\nreturn ret;\n")+(d.tryCatch?"\n}catch(e){return j._err(e);}":"");try{u=new Function("data,view,j,u",u)}catch(kt){s("Compiled template code:\n\n"+u,kt)}return i&&(i.fn=u),u}function ft(n,t,i){function b(b,k,d,g,nt,tt,it,rt,et,ot,st,ht,ct,lt,at,vt,yt,pt,wt,kt){function gt(n,i,r,f,o,s,h){if(i&&(t&&(u==="linkTo"&&(e=t.to=t.to||[],e.push(nt)),(!u||l)&&t.push(nt)),i!==".")){var c=(r?'view.hlp("'+r+'")':f?"view":"data")+(h?(o?"."+o:r?"":f?"":"."+i)+(s||""):(h=r?"":f?o||"":i,""));return c=c+(h?"."+h:""),c.slice(0,9)==="view.data"?c.slice(5):c}return n}var dt;if(tt=tt||"",d=d||k||ht,nt=nt||et,ot=ot||yt||"",it)s(n);else return t&&vt&&!c&&!o&&(!u||l||e)&&(dt=p[r],kt.length-2>wt-dt&&(dt=kt.slice(dt,wt+1),vt=y+":"+dt+f,vt=w[vt]=w[vt]||ut(v+vt+h,i,!0),vt.paths||ft(dt,vt.paths=[],i),(e||t).push({_jsvOb:vt}))),c?(c=!ct,c?b:'"'):o?(o=!lt,o?b:'"'):(d?(r++,p[r]=wt++,d):"")+(pt?r?"":u?(u=l=e=!1,"\b"):",":rt?(r&&s(n),u=nt,l=g,"\b"+nt+":"):nt?nt.split("^").join(".").replace(bt,gt)+(ot?(a[++r]=!0,nt.charAt(0)!=="."&&(p[r]=wt),ot):tt):tt?tt:at?(a[r--]=!1,at)+(ot?(a[++r]=!0,ot):""):st?(a[r]||s(n),","):k?"":(c=ct,o=lt,'"'))}var u,e,l,w=i.links,a={},p={0:-1},r=0,o=!1,c=!1;return(n+" ").replace(kt,b)}function l(n,t){return n&&n!==t?t?o(o({},t),n):n:t&&o({},t)}function pt(n){return st[n]||(st[n]="&#"+n.charCodeAt(0)+";")}if((!t||!t.views)&&!n.jsviews){var u,g,a,et,v="{",y="{",f="}",h="}",w="^",bt=/^(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g,kt=/(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)([#~]?[\w$.^]+)?\s*((\+\+|--)|\+|-|&&|\|\||===|!==|==|!=|<=|>=|[<>%*!:?\/]|(=))\s*|([#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=\s*\.|\s*\^)|[)\]])([([]?))|(\s+)/g,nt=/[ \t]*(\r\n|\n|\r)/g,dt=/\\(['"])/g,gt=/['"\\]/g,ni=/\x08(~)?([^\x08]+)\x08/g,ti=/^if\s/,ii=/<(\w+)[>\s]/,ot=/[\x00`><"'&]/g,ri=ot,ui=0,fi=0,st={"&":"&amp;","<":"&lt;",">":"&gt;","\x00":"&#0;","'":"&#39;",'"':"&#34;","`":"&#96;"},ht="data-jsv-tmpl",tt={},p={template:{compile:at},tag:{compile:ai},helper:{},converter:{}},r={jsviews:"v1.0.0-beta",render:tt,settings:{delimiters:ct,debugMode:!0,tryCatch:!0},sub:{View:b,Error:it,tmplFn:ut,parse:ft,extend:o,error:c,syntaxError:s},_cnvt:si,_tag:ci,_err:function(n){return d.debugMode?"Error: "+(n.message||n)+". ":""}};(it.prototype=new Error).constructor=it,lt.depends=function(){return[this.get("item"),"index"]};for(g in p)vi(g,p[g]);var e=r.templates,wt=r.converters,pi=r.helpers,yi=r.tags,k=r.sub,d=r.settings;t?(u=t,u.fn.render=rt):(u=n.jsviews={},u.isArray=Array&&Array.isArray||function(n){return Object.prototype.toString.call(n)==="[object Array]"}),u.render=tt,u.views=r,u.templates=e=r.templates,yi({"else":function(){},"if":{render:function(n){var t=this;return t.rendering.done||!n&&(arguments.length||!t.tagCtx.index)?"":(t.rendering.done=!0,t.selected=t.tagCtx.index,t.tagCtx.render())},onUpdate:function(n,t,i){for(var r,f,u=0;(r=this.tagCtxs[u])&&r.args.length;u++)if(r=r.args[0],f=!r!=!i[u].args[0],!!r||f)return f;return!1},flow:!0},"for":{render:function(n){var t=this,f=t.tagCtx,e=!arguments.length,r="",o=e||0;return t.rendering.done||(e?r=i:n!==i&&(r+=f.render(n),o+=u.isArray(n)?n.length:1),(t.rendering.done=o)&&(t.selected=f.index)),r},onArrayChange:function(n,t){var i,u=this,r=t.change;if(this.tagCtxs[1]&&(r==="insert"&&n.target.length===t.items.length||r==="remove"&&!n.target.length||r==="refresh"&&!t.oldItems.length!=!n.target.length))this.refresh();else for(i in u._.arrVws)i=u._.arrVws[i],i.data===n.target&&i._.onArrayChange.apply(i,arguments);n.done=!0},flow:!0},include:{flow:!0},"*":{render:function(n){return n},flow:!0}}),wt({html:function(n){return n!=i?String(n).replace(ri,pt):""},attr:function(n){return n!=i?String(n).replace(ot,pt):n===null?null:""},url:function(n){return n!=i?encodeURI(String(n)):n===null?null:""}}),ct()}})(this,this.jQuery);
4
  //@ sourceMappingURL=jsrender.min.js.map
assets/js/magnific-popup.js CHANGED
@@ -1,3 +1,3 @@
1
- // Magnific Popup v0.9.9 by Dmitry Semenov
2
- // http://bit.ly/magnific-popup#build=inline+image+ajax+iframe+gallery+retina+imagezoom+fastclick
3
  (function(a){var b="Close",c="BeforeClose",d="AfterClose",e="BeforeAppend",f="MarkupParse",g="Open",h="Change",i="mfp",j="."+i,k="mfp-ready",l="mfp-removing",m="mfp-prevent-close",n,o=function(){},p=!!window.jQuery,q,r=a(window),s,t,u,v,w,x=function(a,b){n.ev.on(i+a+j,b)},y=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},z=function(b,c){n.ev.triggerHandler(i+b,c),n.st.callbacks&&(b=b.charAt(0).toLowerCase()+b.slice(1),n.st.callbacks[b]&&n.st.callbacks[b].apply(n,a.isArray(c)?c:[c]))},A=function(b){if(b!==w||!n.currTemplate.closeBtn)n.currTemplate.closeBtn=a(n.st.closeMarkup.replace("%title%",n.st.tClose)),w=b;return n.currTemplate.closeBtn},B=function(){a.magnificPopup.instance||(n=new o,n.init(),a.magnificPopup.instance=n)},C=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(a.transition!==undefined)return!0;while(b.length)if(b.pop()+"Transition"in a)return!0;return!1};o.prototype={constructor:o,init:function(){var b=navigator.appVersion;n.isIE7=b.indexOf("MSIE 7.")!==-1,n.isIE8=b.indexOf("MSIE 8.")!==-1,n.isLowIE=n.isIE7||n.isIE8,n.isAndroid=/android/gi.test(b),n.isIOS=/iphone|ipad|ipod/gi.test(b),n.supportsTransition=C(),n.probablyMobile=n.isAndroid||n.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),t=a(document),n.popupsCache={}},open:function(b){s||(s=a(document.body));var c;if(b.isObj===!1){n.items=b.items.toArray(),n.index=0;var d=b.items,e;for(c=0;c<d.length;c++){e=d[c],e.parsed&&(e=e.el[0]);if(e===b.el[0]){n.index=c;break}}}else n.items=a.isArray(b.items)?b.items:[b.items],n.index=b.index||0;if(n.isOpen){n.updateItemHTML();return}n.types=[],v="",b.mainEl&&b.mainEl.length?n.ev=b.mainEl.eq(0):n.ev=t,b.key?(n.popupsCache[b.key]||(n.popupsCache[b.key]={}),n.currTemplate=n.popupsCache[b.key]):n.currTemplate={},n.st=a.extend(!0,{},a.magnificPopup.defaults,b),n.fixedContentPos=n.st.fixedContentPos==="auto"?!n.probablyMobile:n.st.fixedContentPos,n.st.modal&&(n.st.closeOnContentClick=!1,n.st.closeOnBgClick=!1,n.st.showCloseBtn=!1,n.st.enableEscapeKey=!1),n.bgOverlay||(n.bgOverlay=y("bg").on("click"+j,function(){n.close()}),n.wrap=y("wrap").attr("tabindex",-1).on("click"+j,function(a){n._checkIfClose(a.target)&&n.close()}),n.container=y("container",n.wrap)),n.contentContainer=y("content"),n.st.preloader&&(n.preloader=y("preloader",n.container,n.st.tLoading));var h=a.magnificPopup.modules;for(c=0;c<h.length;c++){var i=h[c];i=i.charAt(0).toUpperCase()+i.slice(1),n["init"+i].call(n)}z("BeforeOpen"),n.st.showCloseBtn&&(n.st.closeBtnInside?(x(f,function(a,b,c,d){c.close_replaceWith=A(d.type)}),v+=" mfp-close-btn-in"):n.wrap.append(A())),n.st.alignTop&&(v+=" mfp-align-top"),n.fixedContentPos?n.wrap.css({overflow:n.st.overflowY,overflowX:"hidden",overflowY:n.st.overflowY}):n.wrap.css({top:r.scrollTop(),position:"absolute"}),(n.st.fixedBgPos===!1||n.st.fixedBgPos==="auto"&&!n.fixedContentPos)&&n.bgOverlay.css({height:t.height(),position:"absolute"}),n.st.enableEscapeKey&&t.on("keyup"+j,function(a){a.keyCode===27&&n.close()}),r.on("resize"+j,function(){n.updateSize()}),n.st.closeOnContentClick||(v+=" mfp-auto-cursor"),v&&n.wrap.addClass(v);var l=n.wH=r.height(),m={};if(n.fixedContentPos&&n._hasScrollBar(l)){var o=n._getScrollbarSize();o&&(m.marginRight=o)}n.fixedContentPos&&(n.isIE7?a("body, html").css("overflow","hidden"):m.overflow="hidden");var p=n.st.mainClass;return n.isIE7&&(p+=" mfp-ie7"),p&&n._addClassToMFP(p),n.updateItemHTML(),z("BuildControls"),a("html").css(m),n.bgOverlay.add(n.wrap).prependTo(n.st.prependTo||s),n._lastFocusedEl=document.activeElement,setTimeout(function(){n.content?(n._addClassToMFP(k),n._setFocus()):n.bgOverlay.addClass(k),t.on("focusin"+j,n._onFocusIn)},16),n.isOpen=!0,n.updateSize(l),z(g),b},close:function(){if(!n.isOpen)return;z(c),n.isOpen=!1,n.st.removalDelay&&!n.isLowIE&&n.supportsTransition?(n._addClassToMFP(l),setTimeout(function(){n._close()},n.st.removalDelay)):n._close()},_close:function(){z(b);var c=l+" "+k+" ";n.bgOverlay.detach(),n.wrap.detach(),n.container.empty(),n.st.mainClass&&(c+=n.st.mainClass+" "),n._removeClassFromMFP(c);if(n.fixedContentPos){var e={marginRight:""};n.isIE7?a("body, html").css("overflow",""):e.overflow="",a("html").css(e)}t.off("keyup"+j+" focusin"+j),n.ev.off(j),n.wrap.attr("class","mfp-wrap").removeAttr("style"),n.bgOverlay.attr("class","mfp-bg"),n.container.attr("class","mfp-container"),n.st.showCloseBtn&&(!n.st.closeBtnInside||n.currTemplate[n.currItem.type]===!0)&&n.currTemplate.closeBtn&&n.currTemplate.closeBtn.detach(),n._lastFocusedEl&&a(n._lastFocusedEl).focus(),n.currItem=null,n.content=null,n.currTemplate=null,n.prevHeight=0,z(d)},updateSize:function(a){if(n.isIOS){var b=document.documentElement.clientWidth/window.innerWidth,c=window.innerHeight*b;n.wrap.css("height",c),n.wH=c}else n.wH=a||r.height();n.fixedContentPos||n.wrap.css("height",n.wH),z("Resize")},updateItemHTML:function(){var b=n.items[n.index];n.contentContainer.detach(),n.content&&n.content.detach(),b.parsed||(b=n.parseEl(n.index));var c=b.type;z("BeforeChange",[n.currItem?n.currItem.type:"",c]),n.currItem=b;if(!n.currTemplate[c]){var d=n.st[c]?n.st[c].markup:!1;z("FirstMarkupParse",d),d?n.currTemplate[c]=a(d):n.currTemplate[c]=!0}u&&u!==b.type&&n.container.removeClass("mfp-"+u+"-holder");var e=n["get"+c.charAt(0).toUpperCase()+c.slice(1)](b,n.currTemplate[c]);n.appendContent(e,c),b.preloaded=!0,z(h,b),u=b.type,n.container.prepend(n.contentContainer),z("AfterChange")},appendContent:function(a,b){n.content=a,a?n.st.showCloseBtn&&n.st.closeBtnInside&&n.currTemplate[b]===!0?n.content.find(".mfp-close").length||n.content.append(A()):n.content=a:n.content="",z(e),n.container.addClass("mfp-"+b+"-holder"),n.contentContainer.append(n.content)},parseEl:function(b){var c=n.items[b],d;c.tagName?c={el:a(c)}:(d=c.type,c={data:c,src:c.src});if(c.el){var e=n.types;for(var f=0;f<e.length;f++)if(c.el.hasClass("mfp-"+e[f])){d=e[f];break}c.src=c.el.attr("data-mfp-src"),c.src||(c.src=c.el.attr("href"))}return c.type=d||n.st.type||"inline",c.index=b,c.parsed=!0,n.items[b]=c,z("ElementParse",c),n.items[b]},addGroup:function(a,b){var c=function(c){c.mfpEl=this,n._openClick(c,a,b)};b||(b={});var d="click.magnificPopup";b.mainEl=a,b.items?(b.isObj=!0,a.off(d).on(d,c)):(b.isObj=!1,b.delegate?a.off(d).on(d,b.delegate,c):(b.items=a,a.off(d).on(d,c)))},_openClick:function(b,c,d){var e=d.midClick!==undefined?d.midClick:a.magnificPopup.defaults.midClick;if(!e&&(b.which===2||b.ctrlKey||b.metaKey))return;var f=d.disableOn!==undefined?d.disableOn:a.magnificPopup.defaults.disableOn;if(f)if(a.isFunction(f)){if(!f.call(n))return!0}else if(r.width()<f)return!0;b.type&&(b.preventDefault(),n.isOpen&&b.stopPropagation()),d.el=a(b.mfpEl),d.delegate&&(d.items=c.find(d.delegate)),n.open(d)},updateStatus:function(a,b){if(n.preloader){q!==a&&n.container.removeClass("mfp-s-"+q),!b&&a==="loading"&&(b=n.st.tLoading);var c={status:a,text:b};z("UpdateStatus",c),a=c.status,b=c.text,n.preloader.html(b),n.preloader.find("a").on("click",function(a){a.stopImmediatePropagation()}),n.container.addClass("mfp-s-"+a),q=a}},_checkIfClose:function(b){if(a(b).hasClass(m))return;var c=n.st.closeOnContentClick,d=n.st.closeOnBgClick;if(c&&d)return!0;if(!n.content||a(b).hasClass("mfp-close")||n.preloader&&b===n.preloader[0])return!0;if(b!==n.content[0]&&!a.contains(n.content[0],b)){if(d&&a.contains(document,b))return!0}else if(c)return!0;return!1},_addClassToMFP:function(a){n.bgOverlay.addClass(a),n.wrap.addClass(a)},_removeClassFromMFP:function(a){this.bgOverlay.removeClass(a),n.wrap.removeClass(a)},_hasScrollBar:function(a){return(n.isIE7?t.height():document.body.scrollHeight)>(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),z(f,[b,c,d]),a.each(c,function(a,c){if(c===undefined||c===!1)return!0;e=a.split("_");if(e.length>1){var d=b.find(j+"-"+e[0]);if(d.length>0){var f=e[1];f==="replaceWith"?d[0]!==c[0]&&d.replaceWith(c):f==="img"?d.is("img")?d.attr("src",c):d.replaceWith('<img src="'+c+'" class="'+d.attr("class")+'" />'):d.attr(e[1],c)}}else b.find(j+"-"+a).html(c)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.id="mfp-sbm",a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return B(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'<button title="%title%" type="button" class="mfp-close">&times;</button>',tClose:"Close (Esc)",tLoading:"Loading..."}},a.fn.magnificPopup=function(b){B();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var D="inline",E,F,G,H=function(){G&&(F.after(G.addClass(E)).detach(),G=null)};a.magnificPopup.registerModule(D,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(D),x(b+"."+D,function(){H()})},getInline:function(b,c){H();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(F||(E=d.hiddenClass,F=y(E),E="mfp-"+E),G=e.after(F).detach().removeClass(E)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("<div>");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var I="ajax",J,K=function(){J&&s.removeClass(J)},L=function(){K(),n.req&&n.req.abort()};a.magnificPopup.registerModule(I,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'<a href="%url%">The content</a> could not be loaded.'},proto:{initAjax:function(){n.types.push(I),J=n.st.ajax.cursor,x(b+"."+I,L),x("BeforeChange."+I,L)},getAjax:function(b){J&&s.addClass(J),n.updateStatus("loading");var c=a.extend({url:b.src,success:function(c,d,e){var f={data:c,xhr:e};z("ParseAjax",f),n.appendContent(a(f.data),I),b.finished=!0,K(),n._setFocus(),setTimeout(function(){n.wrap.addClass(k)},16),n.updateStatus("ready"),z("AjaxContentAdded")},error:function(){K(),b.finished=b.loadError=!0,n.updateStatus("error",n.st.ajax.tError.replace("%url%",b.src))}},n.st.ajax.settings);return n.req=a.ajax(c),""}}});var M,N=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'<a href="%url%">The image</a> could not be loaded.'},proto:{initImage:function(){var a=n.st.image,c=".image";n.types.push("image"),x(g+c,function(){n.currItem.type==="image"&&a.cursor&&s.addClass(a.cursor)}),x(b+c,function(){a.cursor&&s.removeClass(a.cursor),r.off("resize"+j)}),x("Resize"+c,n.resizeImage),n.isLowIE&&x("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,M&&clearInterval(M),a.isCheckingImgSize=!1,z("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){M&&clearInterval(M),M=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(M),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,z("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:N(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(M&&clearInterval(M),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var O,P=function(){return O===undefined&&(O=document.createElement("p").style.MozTransform!==undefined),O};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;x("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,z("ZoomAnimationEnded")},16)},f)},16)}}),x(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),x(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return P()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var Q="iframe",R="//about:blank",S=function(a){if(n.currTemplate[Q]){var b=n.currTemplate[Q].find("iframe");b.length&&(a||(b[0].src=R),n.isIE8&&b.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(Q,{options:{markup:'<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){n.types.push(Q),x("BeforeChange",function(a,b,c){b!==c&&(b===Q?S():c===Q&&S(!0))}),x(b+"."+Q,function(){S()})},getIframe:function(b,c){var d=b.src,e=n.st.iframe;a.each(e.patterns,function(){if(d.indexOf(this.index)>-1)return this.id&&(typeof this.id=="string"?d=d.substr(d.lastIndexOf(this.id)+this.id.length,d.length):d=this.id.call(this,d)),d=this.src.replace("%id%",d),!1});var f={};return e.srcAction&&(f[e.srcAction]=d),n._parseMarkup(c,f,b),n.updateStatus("ready"),c}}});var T=function(a){var b=n.items.length;return a>b-1?a-b:a<0?b+a:a},U=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=n.st.gallery,d=".mfp-gallery",e=Boolean(a.fn.mfpFastClick);n.direction=!0;if(!c||!c.enabled)return!1;v+=" mfp-gallery",x(g+d,function(){c.navigateByImgClick&&n.wrap.on("click"+d,".mfp-img",function(){if(n.items.length>1)return n.next(),!1}),t.on("keydown"+d,function(a){a.keyCode===37?n.prev():a.keyCode===39&&n.next()})}),x("UpdateStatus"+d,function(a,b){b.text&&(b.text=U(b.text,n.currItem.index,n.items.length))}),x(f+d,function(a,b,d,e){var f=n.items.length;d.counter=f>1?U(c.tCounter,e.index,f):""}),x("BuildControls"+d,function(){if(n.items.length>1&&c.arrows&&!n.arrowLeft){var b=c.arrowMarkup,d=n.arrowLeft=a(b.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(m),f=n.arrowRight=a(b.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(m),g=e?"mfpFastClick":"click";d[g](function(){n.prev()}),f[g](function(){n.next()}),n.isIE7&&(y("b",d[0],!1,!0),y("a",d[0],!1,!0),y("b",f[0],!1,!0),y("a",f[0],!1,!0)),n.container.append(d.add(f))}}),x(h+d,function(){n._preloadTimeout&&clearTimeout(n._preloadTimeout),n._preloadTimeout=setTimeout(function(){n.preloadNearbyImages(),n._preloadTimeout=null},16)}),x(b+d,function(){t.off(d),n.wrap.off("click"+d),n.arrowLeft&&e&&n.arrowLeft.add(n.arrowRight).destroyMfpFastClick(),n.arrowRight=n.arrowLeft=null})},next:function(){n.direction=!0,n.index=T(n.index+1),n.updateItemHTML()},prev:function(){n.direction=!1,n.index=T(n.index-1),n.updateItemHTML()},goTo:function(a){n.direction=a>=n.index,n.index=a,n.updateItemHTML()},preloadNearbyImages:function(){var a=n.st.gallery.preload,b=Math.min(a[0],n.items.length),c=Math.min(a[1],n.items.length),d;for(d=1;d<=(n.direction?c:b);d++)n._preloadItem(n.index+d);for(d=1;d<=(n.direction?b:c);d++)n._preloadItem(n.index-d)},_preloadItem:function(b){b=T(b);if(n.items[b].preloaded)return;var c=n.items[b];c.parsed||(c=n.parseEl(b)),z("LazyLoad",c),c.type==="image"&&(c.img=a('<img class="mfp-img" />').on("load.mfploader",function(){c.hasSize=!0}).on("error.mfploader",function(){c.hasSize=!0,c.loadError=!0,z("LazyLoadError",c)}).attr("src",c.src)),c.preloaded=!0}}});var V="retina";a.magnificPopup.registerModule(V,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(x("ImageHasSize."+V,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),x("ElementParse."+V,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),function(){var b=1e3,c="ontouchstart"in window,d=function(){r.off("touchmove"+f+" touchend"+f)},e="mfpFastClick",f="."+e;a.fn.mfpFastClick=function(e){return a(this).each(function(){var g=a(this),h;if(c){var i,j,k,l,m,n;g.on("touchstart"+f,function(a){l=!1,n=1,m=a.originalEvent?a.originalEvent.touches[0]:a.touches[0],j=m.clientX,k=m.clientY,r.on("touchmove"+f,function(a){m=a.originalEvent?a.originalEvent.touches:a.touches,n=m.length,m=m[0];if(Math.abs(m.clientX-j)>10||Math.abs(m.clientY-k)>10)l=!0,d()}).on("touchend"+f,function(a){d();if(l||n>1)return;h=!0,a.preventDefault(),clearTimeout(i),i=setTimeout(function(){h=!1},b),e()})})}g.on("click"+f,function(){h||e()})})},a.fn.destroyMfpFastClick=function(){a(this).off("touchstart"+f+" click"+f),c&&r.off("touchmove"+f+" touchend"+f)}}(),B()})(window.jQuery||window.Zepto)
1
+ // Magnific Popup v0.9.9 by Dmitry Semenov
2
+ // http://bit.ly/magnific-popup#build=inline+image+ajax+iframe+gallery+retina+imagezoom+fastclick
3
  (function(a){var b="Close",c="BeforeClose",d="AfterClose",e="BeforeAppend",f="MarkupParse",g="Open",h="Change",i="mfp",j="."+i,k="mfp-ready",l="mfp-removing",m="mfp-prevent-close",n,o=function(){},p=!!window.jQuery,q,r=a(window),s,t,u,v,w,x=function(a,b){n.ev.on(i+a+j,b)},y=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},z=function(b,c){n.ev.triggerHandler(i+b,c),n.st.callbacks&&(b=b.charAt(0).toLowerCase()+b.slice(1),n.st.callbacks[b]&&n.st.callbacks[b].apply(n,a.isArray(c)?c:[c]))},A=function(b){if(b!==w||!n.currTemplate.closeBtn)n.currTemplate.closeBtn=a(n.st.closeMarkup.replace("%title%",n.st.tClose)),w=b;return n.currTemplate.closeBtn},B=function(){a.magnificPopup.instance||(n=new o,n.init(),a.magnificPopup.instance=n)},C=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(a.transition!==undefined)return!0;while(b.length)if(b.pop()+"Transition"in a)return!0;return!1};o.prototype={constructor:o,init:function(){var b=navigator.appVersion;n.isIE7=b.indexOf("MSIE 7.")!==-1,n.isIE8=b.indexOf("MSIE 8.")!==-1,n.isLowIE=n.isIE7||n.isIE8,n.isAndroid=/android/gi.test(b),n.isIOS=/iphone|ipad|ipod/gi.test(b),n.supportsTransition=C(),n.probablyMobile=n.isAndroid||n.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),t=a(document),n.popupsCache={}},open:function(b){s||(s=a(document.body));var c;if(b.isObj===!1){n.items=b.items.toArray(),n.index=0;var d=b.items,e;for(c=0;c<d.length;c++){e=d[c],e.parsed&&(e=e.el[0]);if(e===b.el[0]){n.index=c;break}}}else n.items=a.isArray(b.items)?b.items:[b.items],n.index=b.index||0;if(n.isOpen){n.updateItemHTML();return}n.types=[],v="",b.mainEl&&b.mainEl.length?n.ev=b.mainEl.eq(0):n.ev=t,b.key?(n.popupsCache[b.key]||(n.popupsCache[b.key]={}),n.currTemplate=n.popupsCache[b.key]):n.currTemplate={},n.st=a.extend(!0,{},a.magnificPopup.defaults,b),n.fixedContentPos=n.st.fixedContentPos==="auto"?!n.probablyMobile:n.st.fixedContentPos,n.st.modal&&(n.st.closeOnContentClick=!1,n.st.closeOnBgClick=!1,n.st.showCloseBtn=!1,n.st.enableEscapeKey=!1),n.bgOverlay||(n.bgOverlay=y("bg").on("click"+j,function(){n.close()}),n.wrap=y("wrap").attr("tabindex",-1).on("click"+j,function(a){n._checkIfClose(a.target)&&n.close()}),n.container=y("container",n.wrap)),n.contentContainer=y("content"),n.st.preloader&&(n.preloader=y("preloader",n.container,n.st.tLoading));var h=a.magnificPopup.modules;for(c=0;c<h.length;c++){var i=h[c];i=i.charAt(0).toUpperCase()+i.slice(1),n["init"+i].call(n)}z("BeforeOpen"),n.st.showCloseBtn&&(n.st.closeBtnInside?(x(f,function(a,b,c,d){c.close_replaceWith=A(d.type)}),v+=" mfp-close-btn-in"):n.wrap.append(A())),n.st.alignTop&&(v+=" mfp-align-top"),n.fixedContentPos?n.wrap.css({overflow:n.st.overflowY,overflowX:"hidden",overflowY:n.st.overflowY}):n.wrap.css({top:r.scrollTop(),position:"absolute"}),(n.st.fixedBgPos===!1||n.st.fixedBgPos==="auto"&&!n.fixedContentPos)&&n.bgOverlay.css({height:t.height(),position:"absolute"}),n.st.enableEscapeKey&&t.on("keyup"+j,function(a){a.keyCode===27&&n.close()}),r.on("resize"+j,function(){n.updateSize()}),n.st.closeOnContentClick||(v+=" mfp-auto-cursor"),v&&n.wrap.addClass(v);var l=n.wH=r.height(),m={};if(n.fixedContentPos&&n._hasScrollBar(l)){var o=n._getScrollbarSize();o&&(m.marginRight=o)}n.fixedContentPos&&(n.isIE7?a("body, html").css("overflow","hidden"):m.overflow="hidden");var p=n.st.mainClass;return n.isIE7&&(p+=" mfp-ie7"),p&&n._addClassToMFP(p),n.updateItemHTML(),z("BuildControls"),a("html").css(m),n.bgOverlay.add(n.wrap).prependTo(n.st.prependTo||s),n._lastFocusedEl=document.activeElement,setTimeout(function(){n.content?(n._addClassToMFP(k),n._setFocus()):n.bgOverlay.addClass(k),t.on("focusin"+j,n._onFocusIn)},16),n.isOpen=!0,n.updateSize(l),z(g),b},close:function(){if(!n.isOpen)return;z(c),n.isOpen=!1,n.st.removalDelay&&!n.isLowIE&&n.supportsTransition?(n._addClassToMFP(l),setTimeout(function(){n._close()},n.st.removalDelay)):n._close()},_close:function(){z(b);var c=l+" "+k+" ";n.bgOverlay.detach(),n.wrap.detach(),n.container.empty(),n.st.mainClass&&(c+=n.st.mainClass+" "),n._removeClassFromMFP(c);if(n.fixedContentPos){var e={marginRight:""};n.isIE7?a("body, html").css("overflow",""):e.overflow="",a("html").css(e)}t.off("keyup"+j+" focusin"+j),n.ev.off(j),n.wrap.attr("class","mfp-wrap").removeAttr("style"),n.bgOverlay.attr("class","mfp-bg"),n.container.attr("class","mfp-container"),n.st.showCloseBtn&&(!n.st.closeBtnInside||n.currTemplate[n.currItem.type]===!0)&&n.currTemplate.closeBtn&&n.currTemplate.closeBtn.detach(),n._lastFocusedEl&&a(n._lastFocusedEl).focus(),n.currItem=null,n.content=null,n.currTemplate=null,n.prevHeight=0,z(d)},updateSize:function(a){if(n.isIOS){var b=document.documentElement.clientWidth/window.innerWidth,c=window.innerHeight*b;n.wrap.css("height",c),n.wH=c}else n.wH=a||r.height();n.fixedContentPos||n.wrap.css("height",n.wH),z("Resize")},updateItemHTML:function(){var b=n.items[n.index];n.contentContainer.detach(),n.content&&n.content.detach(),b.parsed||(b=n.parseEl(n.index));var c=b.type;z("BeforeChange",[n.currItem?n.currItem.type:"",c]),n.currItem=b;if(!n.currTemplate[c]){var d=n.st[c]?n.st[c].markup:!1;z("FirstMarkupParse",d),d?n.currTemplate[c]=a(d):n.currTemplate[c]=!0}u&&u!==b.type&&n.container.removeClass("mfp-"+u+"-holder");var e=n["get"+c.charAt(0).toUpperCase()+c.slice(1)](b,n.currTemplate[c]);n.appendContent(e,c),b.preloaded=!0,z(h,b),u=b.type,n.container.prepend(n.contentContainer),z("AfterChange")},appendContent:function(a,b){n.content=a,a?n.st.showCloseBtn&&n.st.closeBtnInside&&n.currTemplate[b]===!0?n.content.find(".mfp-close").length||n.content.append(A()):n.content=a:n.content="",z(e),n.container.addClass("mfp-"+b+"-holder"),n.contentContainer.append(n.content)},parseEl:function(b){var c=n.items[b],d;c.tagName?c={el:a(c)}:(d=c.type,c={data:c,src:c.src});if(c.el){var e=n.types;for(var f=0;f<e.length;f++)if(c.el.hasClass("mfp-"+e[f])){d=e[f];break}c.src=c.el.attr("data-mfp-src"),c.src||(c.src=c.el.attr("href"))}return c.type=d||n.st.type||"inline",c.index=b,c.parsed=!0,n.items[b]=c,z("ElementParse",c),n.items[b]},addGroup:function(a,b){var c=function(c){c.mfpEl=this,n._openClick(c,a,b)};b||(b={});var d="click.magnificPopup";b.mainEl=a,b.items?(b.isObj=!0,a.off(d).on(d,c)):(b.isObj=!1,b.delegate?a.off(d).on(d,b.delegate,c):(b.items=a,a.off(d).on(d,c)))},_openClick:function(b,c,d){var e=d.midClick!==undefined?d.midClick:a.magnificPopup.defaults.midClick;if(!e&&(b.which===2||b.ctrlKey||b.metaKey))return;var f=d.disableOn!==undefined?d.disableOn:a.magnificPopup.defaults.disableOn;if(f)if(a.isFunction(f)){if(!f.call(n))return!0}else if(r.width()<f)return!0;b.type&&(b.preventDefault(),n.isOpen&&b.stopPropagation()),d.el=a(b.mfpEl),d.delegate&&(d.items=c.find(d.delegate)),n.open(d)},updateStatus:function(a,b){if(n.preloader){q!==a&&n.container.removeClass("mfp-s-"+q),!b&&a==="loading"&&(b=n.st.tLoading);var c={status:a,text:b};z("UpdateStatus",c),a=c.status,b=c.text,n.preloader.html(b),n.preloader.find("a").on("click",function(a){a.stopImmediatePropagation()}),n.container.addClass("mfp-s-"+a),q=a}},_checkIfClose:function(b){if(a(b).hasClass(m))return;var c=n.st.closeOnContentClick,d=n.st.closeOnBgClick;if(c&&d)return!0;if(!n.content||a(b).hasClass("mfp-close")||n.preloader&&b===n.preloader[0])return!0;if(b!==n.content[0]&&!a.contains(n.content[0],b)){if(d&&a.contains(document,b))return!0}else if(c)return!0;return!1},_addClassToMFP:function(a){n.bgOverlay.addClass(a),n.wrap.addClass(a)},_removeClassFromMFP:function(a){this.bgOverlay.removeClass(a),n.wrap.removeClass(a)},_hasScrollBar:function(a){return(n.isIE7?t.height():document.body.scrollHeight)>(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),z(f,[b,c,d]),a.each(c,function(a,c){if(c===undefined||c===!1)return!0;e=a.split("_");if(e.length>1){var d=b.find(j+"-"+e[0]);if(d.length>0){var f=e[1];f==="replaceWith"?d[0]!==c[0]&&d.replaceWith(c):f==="img"?d.is("img")?d.attr("src",c):d.replaceWith('<img src="'+c+'" class="'+d.attr("class")+'" />'):d.attr(e[1],c)}}else b.find(j+"-"+a).html(c)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.id="mfp-sbm",a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return B(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'<button title="%title%" type="button" class="mfp-close">&times;</button>',tClose:"Close (Esc)",tLoading:"Loading..."}},a.fn.magnificPopup=function(b){B();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var D="inline",E,F,G,H=function(){G&&(F.after(G.addClass(E)).detach(),G=null)};a.magnificPopup.registerModule(D,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(D),x(b+"."+D,function(){H()})},getInline:function(b,c){H();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(F||(E=d.hiddenClass,F=y(E),E="mfp-"+E),G=e.after(F).detach().removeClass(E)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("<div>");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var I="ajax",J,K=function(){J&&s.removeClass(J)},L=function(){K(),n.req&&n.req.abort()};a.magnificPopup.registerModule(I,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'<a href="%url%">The content</a> could not be loaded.'},proto:{initAjax:function(){n.types.push(I),J=n.st.ajax.cursor,x(b+"."+I,L),x("BeforeChange."+I,L)},getAjax:function(b){J&&s.addClass(J),n.updateStatus("loading");var c=a.extend({url:b.src,success:function(c,d,e){var f={data:c,xhr:e};z("ParseAjax",f),n.appendContent(a(f.data),I),b.finished=!0,K(),n._setFocus(),setTimeout(function(){n.wrap.addClass(k)},16),n.updateStatus("ready"),z("AjaxContentAdded")},error:function(){K(),b.finished=b.loadError=!0,n.updateStatus("error",n.st.ajax.tError.replace("%url%",b.src))}},n.st.ajax.settings);return n.req=a.ajax(c),""}}});var M,N=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'<a href="%url%">The image</a> could not be loaded.'},proto:{initImage:function(){var a=n.st.image,c=".image";n.types.push("image"),x(g+c,function(){n.currItem.type==="image"&&a.cursor&&s.addClass(a.cursor)}),x(b+c,function(){a.cursor&&s.removeClass(a.cursor),r.off("resize"+j)}),x("Resize"+c,n.resizeImage),n.isLowIE&&x("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,M&&clearInterval(M),a.isCheckingImgSize=!1,z("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){M&&clearInterval(M),M=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(M),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,z("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:N(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(M&&clearInterval(M),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var O,P=function(){return O===undefined&&(O=document.createElement("p").style.MozTransform!==undefined),O};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;x("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,z("ZoomAnimationEnded")},16)},f)},16)}}),x(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),x(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return P()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var Q="iframe",R="//about:blank",S=function(a){if(n.currTemplate[Q]){var b=n.currTemplate[Q].find("iframe");b.length&&(a||(b[0].src=R),n.isIE8&&b.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(Q,{options:{markup:'<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){n.types.push(Q),x("BeforeChange",function(a,b,c){b!==c&&(b===Q?S():c===Q&&S(!0))}),x(b+"."+Q,function(){S()})},getIframe:function(b,c){var d=b.src,e=n.st.iframe;a.each(e.patterns,function(){if(d.indexOf(this.index)>-1)return this.id&&(typeof this.id=="string"?d=d.substr(d.lastIndexOf(this.id)+this.id.length,d.length):d=this.id.call(this,d)),d=this.src.replace("%id%",d),!1});var f={};return e.srcAction&&(f[e.srcAction]=d),n._parseMarkup(c,f,b),n.updateStatus("ready"),c}}});var T=function(a){var b=n.items.length;return a>b-1?a-b:a<0?b+a:a},U=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=n.st.gallery,d=".mfp-gallery",e=Boolean(a.fn.mfpFastClick);n.direction=!0;if(!c||!c.enabled)return!1;v+=" mfp-gallery",x(g+d,function(){c.navigateByImgClick&&n.wrap.on("click"+d,".mfp-img",function(){if(n.items.length>1)return n.next(),!1}),t.on("keydown"+d,function(a){a.keyCode===37?n.prev():a.keyCode===39&&n.next()})}),x("UpdateStatus"+d,function(a,b){b.text&&(b.text=U(b.text,n.currItem.index,n.items.length))}),x(f+d,function(a,b,d,e){var f=n.items.length;d.counter=f>1?U(c.tCounter,e.index,f):""}),x("BuildControls"+d,function(){if(n.items.length>1&&c.arrows&&!n.arrowLeft){var b=c.arrowMarkup,d=n.arrowLeft=a(b.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(m),f=n.arrowRight=a(b.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(m),g=e?"mfpFastClick":"click";d[g](function(){n.prev()}),f[g](function(){n.next()}),n.isIE7&&(y("b",d[0],!1,!0),y("a",d[0],!1,!0),y("b",f[0],!1,!0),y("a",f[0],!1,!0)),n.container.append(d.add(f))}}),x(h+d,function(){n._preloadTimeout&&clearTimeout(n._preloadTimeout),n._preloadTimeout=setTimeout(function(){n.preloadNearbyImages(),n._preloadTimeout=null},16)}),x(b+d,function(){t.off(d),n.wrap.off("click"+d),n.arrowLeft&&e&&n.arrowLeft.add(n.arrowRight).destroyMfpFastClick(),n.arrowRight=n.arrowLeft=null})},next:function(){n.direction=!0,n.index=T(n.index+1),n.updateItemHTML()},prev:function(){n.direction=!1,n.index=T(n.index-1),n.updateItemHTML()},goTo:function(a){n.direction=a>=n.index,n.index=a,n.updateItemHTML()},preloadNearbyImages:function(){var a=n.st.gallery.preload,b=Math.min(a[0],n.items.length),c=Math.min(a[1],n.items.length),d;for(d=1;d<=(n.direction?c:b);d++)n._preloadItem(n.index+d);for(d=1;d<=(n.direction?b:c);d++)n._preloadItem(n.index-d)},_preloadItem:function(b){b=T(b);if(n.items[b].preloaded)return;var c=n.items[b];c.parsed||(c=n.parseEl(b)),z("LazyLoad",c),c.type==="image"&&(c.img=a('<img class="mfp-img" />').on("load.mfploader",function(){c.hasSize=!0}).on("error.mfploader",function(){c.hasSize=!0,c.loadError=!0,z("LazyLoadError",c)}).attr("src",c.src)),c.preloaded=!0}}});var V="retina";a.magnificPopup.registerModule(V,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(x("ImageHasSize."+V,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),x("ElementParse."+V,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),function(){var b=1e3,c="ontouchstart"in window,d=function(){r.off("touchmove"+f+" touchend"+f)},e="mfpFastClick",f="."+e;a.fn.mfpFastClick=function(e){return a(this).each(function(){var g=a(this),h;if(c){var i,j,k,l,m,n;g.on("touchstart"+f,function(a){l=!1,n=1,m=a.originalEvent?a.originalEvent.touches[0]:a.touches[0],j=m.clientX,k=m.clientY,r.on("touchmove"+f,function(a){m=a.originalEvent?a.originalEvent.touches:a.touches,n=m.length,m=m[0];if(Math.abs(m.clientX-j)>10||Math.abs(m.clientY-k)>10)l=!0,d()}).on("touchend"+f,function(a){d();if(l||n>1)return;h=!0,a.preventDefault(),clearTimeout(i),i=setTimeout(function(){h=!1},b),e()})})}g.on("click"+f,function(){h||e()})})},a.fn.destroyMfpFastClick=function(){a(this).off("touchstart"+f+" click"+f),c&&r.off("touchmove"+f+" touchend"+f)}}(),B()})(window.jQuery||window.Zepto)
assets/js/options-page.js CHANGED
@@ -1,138 +1,129 @@
1
- // Wait DOM
2
- jQuery(document).ready(function ($) {
3
-
4
- // ########## About screen ##########
5
-
6
- $('.su-demo-video').magnificPopup({
7
- type: 'iframe',
8
- callbacks: {
9
- open: function () {
10
- // Change z-index
11
- $('body').addClass('su-mfp-shown');
12
- },
13
- close: function () {
14
- // Change z-index
15
- $('body').removeClass('su-mfp-shown');
16
- }
17
- }
18
- });
19
-
20
- // ########## Custom CSS screen ##########
21
-
22
- $('.su-custom-css-originals a').magnificPopup({
23
- type: 'iframe',
24
- callbacks: {
25
- open: function () {
26
- // Change z-index
27
- $('body').addClass('su-mfp-shown');
28
- },
29
- close: function () {
30
- // Change z-index
31
- $('body').removeClass('su-mfp-shown');
32
- }
33
- }
34
- });
35
-
36
- // Enable ACE editor
37
- if ($('#sunrise-field-custom-css-editor').length > 0) {
38
- var editor = ace.edit('sunrise-field-custom-css-editor'),
39
- $textarea = $('#sunrise-field-custom-css').hide();
40
- editor.getSession().setValue($textarea.val());
41
- editor.getSession().on('change', function () {
42
- $textarea.val(editor.getSession().getValue());
43
- });
44
- editor.getSession().setMode('ace/mode/css');
45
- editor.setTheme('ace/theme/monokai');
46
- editor.getSession().setUseWrapMode(true);
47
- editor.getSession().setWrapLimitRange(null, null);
48
- editor.renderer.setShowPrintMargin(null);
49
- editor.session.setUseSoftTabs(null);
50
- }
51
-
52
- // ########## Add-ons screen ##########
53
-
54
- var addons_timer = 0;
55
- $('.su-addons-item').each(function () {
56
- var $item = $(this),
57
- delay = 300;
58
- $item.click(function (e) {
59
- window.open($(this).data('url'));
60
- e.preventDefault();
61
- });
62
- addons_timer = addons_timer + delay;
63
- window.setTimeout(function () {
64
- $item.addClass('animated bounceIn').css('visibility', 'visible');
65
- }, addons_timer);
66
- });
67
-
68
- // ########## Examples screen ##########
69
-
70
- // Disable all buttons
71
- $('#su-examples-preview').on('click', '.su-button', function (e) {
72
- if ($(this).hasClass('su-example-button-clicked')) alert(su_options_page.not_clickable);
73
- else $(this).addClass('su-example-button-clicked');
74
- e.preventDefault();
75
- });
76
-
77
- var open = $('#su_open_example').val(),
78
- $example_window = $('#su-examples-window'),
79
- $example_preview = $('#su-examples-preview');
80
- $('.su-examples-group-title, .su-examples-item').each(function () {
81
- var $item = $(this),
82
- delay = 200;
83
- if ($item.hasClass('su-examples-item')) {
84
- $item.on('click', function (e) {
85
- var code = $(this).data('code'),
86
- id = $(this).data('id');
87
- $item.magnificPopup({
88
- type: 'inline',
89
- alignTop: true,
90
- callbacks: {
91
- open: function () {
92
- // Change z-index
93
- $('body').addClass('su-mfp-shown');
94
- },
95
- close: function () {
96
- // Change z-index
97
- $('body').removeClass('su-mfp-shown');
98
- $example_preview.html('');
99
- }
100
- }
101
- });
102
- var su_example_preview = $.ajax({
103
- url: ajaxurl,
104
- type: 'get',
105
- dataType: 'html',
106
- data: {
107
- action: 'su_example_preview',
108
- code: code,
109
- id: id
110
- },
111
- beforeSend: function () {
112
- if (typeof su_example_preview === 'object') su_example_preview.abort();
113
- $example_window.addClass('su-ajax');
114
- $item.magnificPopup('open');
115
- },
116
- success: function (data) {
117
- $example_preview.html(data);
118
- $example_window.removeClass('su-ajax');
119
- }
120
- });
121
- e.preventDefault();
122
- });
123
- // Open preselected example
124
- if ($item.data('id') === open) $item.trigger('click');
125
- }
126
- });
127
- $('#su-examples-window').on('click', '.su-examples-get-code', function (e) {
128
- $(this).hide();
129
- $(this).parent('.su-examples-code').children('textarea').slideDown(300);
130
- e.preventDefault();
131
- });
132
-
133
- // ########## Cheatsheet screen ##########
134
- $('.su-cheatsheet-switch').on('click', function (e) {
135
- $('body').toggleClass('su-print-cheatsheet');
136
- e.preventDefault();
137
- });
138
  });
1
+ // Wait DOM
2
+ jQuery(document).ready(function($) {
3
+ // ########## About screen ##########
4
+ $('.su-demo-video').magnificPopup({
5
+ type: 'iframe',
6
+ callbacks: {
7
+ open: function() {
8
+ // Change z-index
9
+ $('body').addClass('su-mfp-shown');
10
+ },
11
+ close: function() {
12
+ // Change z-index
13
+ $('body').removeClass('su-mfp-shown');
14
+ }
15
+ }
16
+ });
17
+ // ########## Custom CSS screen ##########
18
+ $('.su-custom-css-originals a').magnificPopup({
19
+ type: 'iframe',
20
+ callbacks: {
21
+ open: function() {
22
+ // Change z-index
23
+ $('body').addClass('su-mfp-shown');
24
+ },
25
+ close: function() {
26
+ // Change z-index
27
+ $('body').removeClass('su-mfp-shown');
28
+ }
29
+ }
30
+ });
31
+ // Enable ACE editor
32
+ if ($('#sunrise-field-custom-css-editor').length > 0) {
33
+ var editor = ace.edit('sunrise-field-custom-css-editor'),
34
+ $textarea = $('#sunrise-field-custom-css').hide();
35
+ editor.getSession().setValue($textarea.val());
36
+ editor.getSession().on('change', function() {
37
+ $textarea.val(editor.getSession().getValue());
38
+ });
39
+ editor.getSession().setMode('ace/mode/css');
40
+ editor.setTheme('ace/theme/monokai');
41
+ editor.getSession().setUseWrapMode(true);
42
+ editor.getSession().setWrapLimitRange(null, null);
43
+ editor.renderer.setShowPrintMargin(null);
44
+ editor.session.setUseSoftTabs(null);
45
+ }
46
+ // ########## Add-ons screen ##########
47
+ var addons_timer = 0;
48
+ $('.su-addons-item').each(function() {
49
+ var $item = $(this),
50
+ delay = 300;
51
+ $item.click(function(e) {
52
+ window.open($(this).data('url'));
53
+ e.preventDefault();
54
+ });
55
+ addons_timer = addons_timer + delay;
56
+ window.setTimeout(function() {
57
+ $item.addClass('animated bounceIn').css('visibility', 'visible');
58
+ }, addons_timer);
59
+ });
60
+ // ########## Examples screen ##########
61
+ // Disable all buttons
62
+ $('#su-examples-preview').on('click', '.su-button', function(e) {
63
+ if ($(this).hasClass('su-example-button-clicked')) alert(su_options_page.not_clickable);
64
+ else $(this).addClass('su-example-button-clicked');
65
+ e.preventDefault();
66
+ });
67
+ var open = $('#su_open_example').val(),
68
+ nonce = $('#su_examples_nonce').val(),
69
+ $example_window = $('#su-examples-window'),
70
+ $example_preview = $('#su-examples-preview');
71
+ $('.su-examples-group-title, .su-examples-item').each(function() {
72
+ var $item = $(this),
73
+ delay = 200;
74
+ if ($item.hasClass('su-examples-item')) {
75
+ $item.on('click', function(e) {
76
+ var code = $(this).data('code'),
77
+ id = $(this).data('id');
78
+ $item.magnificPopup({
79
+ type: 'inline',
80
+ alignTop: true,
81
+ callbacks: {
82
+ open: function() {
83
+ // Change z-index
84
+ $('body').addClass('su-mfp-shown');
85
+ },
86
+ close: function() {
87
+ // Change z-index
88
+ $('body').removeClass('su-mfp-shown');
89
+ $example_preview.html('');
90
+ }
91
+ }
92
+ });
93
+ var su_example_preview = $.ajax({
94
+ url: ajaxurl,
95
+ type: 'get',
96
+ dataType: 'html',
97
+ data: {
98
+ action: 'su_example_preview',
99
+ code: code,
100
+ id: id,
101
+ nonce: nonce
102
+ },
103
+ beforeSend: function() {
104
+ if (typeof su_example_preview === 'object') su_example_preview.abort();
105
+ $example_window.addClass('su-ajax');
106
+ $item.magnificPopup('open');
107
+ },
108
+ success: function(data) {
109
+ $example_preview.html(data);
110
+ $example_window.removeClass('su-ajax');
111
+ }
112
+ });
113
+ e.preventDefault();
114
+ });
115
+ // Open preselected example
116
+ if ($item.data('id') === open) $item.trigger('click');
117
+ }
118
+ });
119
+ $('#su-examples-window').on('click', '.su-examples-get-code', function(e) {
120
+ $(this).hide();
121
+ $(this).parent('.su-examples-code').children('textarea').slideDown(300);
122
+ e.preventDefault();
123
+ });
124
+ // ########## Cheatsheet screen ##########
125
+ $('.su-cheatsheet-switch').on('click', function(e) {
126
+ $('body').toggleClass('su-print-cheatsheet');
127
+ e.preventDefault();
128
+ });
 
 
 
 
 
 
 
 
 
129
  });
assets/js/other-shortcodes.js CHANGED
@@ -1,232 +1,232 @@
1
- jQuery(document).ready(function ($) {
2
-
3
- // Spoiler
4
- $('body:not(.su-other-shortcodes-loaded)').on('click', '.su-spoiler-title', function (e) {
5
- var $title = $(this),
6
- $spoiler = $title.parent(),
7
- bar = ($('#wpadminbar').length > 0) ? 28 : 0;
8
- // Open/close spoiler
9
- $spoiler.toggleClass('su-spoiler-closed');
10
- // Close other spoilers in accordion
11
- $spoiler.parent('.su-accordion').children('.su-spoiler').not($spoiler).addClass('su-spoiler-closed');
12
- // Scroll in spoiler in accordion
13
- if ($(window).scrollTop() > $title.offset().top) $(window).scrollTop($title.offset().top - $title.height() - bar);
14
- e.preventDefault();
15
- });
16
- $('.su-spoiler-content').removeAttr('style');
17
- // Tabs
18
- $('body:not(.su-other-shortcodes-loaded)').on('click', '.su-tabs-nav span', function (e) {
19
- var $tab = $(this),
20
- data = $tab.data(),
21
- index = $tab.index(),
22
- is_disabled = $tab.hasClass('su-tabs-disabled'),
23
- $tabs = $tab.parent('.su-tabs-nav').children('span'),
24
- $panes = $tab.parents('.su-tabs').find('.su-tabs-pane'),
25
- $gmaps = $panes.eq(index).find('.su-gmap:not(.su-gmap-reloaded)');
26
- // Check tab is not disabled
27
- if (is_disabled) return false;
28
- // Hide all panes, show selected pane
29
- $panes.hide().eq(index).show();
30
- // Disable all tabs, enable selected tab
31
- $tabs.removeClass('su-tabs-current').eq(index).addClass('su-tabs-current');
32
- // Reload gmaps
33
- if ($gmaps.length > 0) $gmaps.each(function () {
34
- var $iframe = $(this).find('iframe:first');
35
- $(this).addClass('su-gmap-reloaded');
36
- $iframe.attr('src', $iframe.attr('src'));
37
- });
38
- // Set height for vertical tabs
39
- tabs_height();
40
- // Open specified url
41
- if (data.url !== '') {
42
- if (data.target === 'self') window.location = data.url;
43
- else if (data.target === 'blank') window.open(data.url);
44
- }
45
- e.preventDefault();
46
- });
47
-
48
- // Activate tabs
49
- $('.su-tabs').each(function () {
50
- var active = parseInt($(this).data('active')) - 1;
51
- $(this).children('.su-tabs-nav').children('span').eq(active).trigger('click');
52
- tabs_height();
53
- });
54
-
55
- // Activate anchor nav for tabs and spoilers
56
- anchor_nav();
57
-
58
- // Lightbox
59
- $('.su-lightbox').each(function () {
60
- $(this).on('click', function (e) {
61
- e.preventDefault();
62
- e.stopPropagation();
63
- if ($(this).parent().attr('id') === 'su-generator-preview') $(this).html(su_other_shortcodes.no_preview);
64
- else {
65
- var type = $(this).data('mfp-type');
66
- $(this).magnificPopup({
67
- type: type,
68
- tClose: su_magnific_popup.close,
69
- tLoading: su_magnific_popup.loading,
70
- gallery: {
71
- tPrev: su_magnific_popup.prev,
72
- tNext: su_magnific_popup.next,
73
- tCounter: su_magnific_popup.counter
74
- },
75
- image: {
76
- tError: su_magnific_popup.error
77
- },
78
- ajax: {
79
- tError: su_magnific_popup.error
80
- }
81
- }).magnificPopup('open');
82
- }
83
- });
84
- });
85
- // Tables
86
- $('.su-table tr:even').addClass('su-even');
87
- // Frame
88
- $('.su-frame-align-center, .su-frame-align-none').each(function () {
89
- var frame_width = $(this).find('img').width();
90
- $(this).css('width', frame_width + 12);
91
- });
92
- // Tooltip
93
- $('.su-tooltip').each(function () {
94
- var $tt = $(this),
95
- $content = $tt.find('.su-tooltip-content'),
96
- is_advanced = $content.length > 0,
97
- data = $tt.data(),
98
- config = {
99
- style: {
100
- classes: data.classes
101
- },
102
- position: {
103
- my: data.my,
104
- at: data.at,
105
- viewport: $(window)
106
- },
107
- content: {
108
- title: '',
109
- text: ''
110
- }
111
- };
112
- if (data.title !== '') config.content.title = data.title;
113
- if (is_advanced) config.content.text = $content;
114
- else config.content.text = $tt.attr('title');
115
- if (data.close === 'yes') config.content.button = true;
116
- if (data.behavior === 'click') {
117
- config.show = 'click';
118
- config.hide = 'click';
119
- $tt.on('click', function (e) {
120
- e.preventDefault();
121
- e.stopPropagation();
122
- });
123
- $(window).on('scroll resize', function () {
124
- $tt.qtip('reposition');
125
- });
126
- } else if (data.behavior === 'always') {
127
- config.show = true;
128
- config.hide = false;
129
- $(window).on('scroll resize', function () {
130
- $tt.qtip('reposition');
131
- });
132
- } else if (data.behavior === 'hover' && is_advanced) {
133
- config.hide = {
134
- fixed: true,
135
- delay: 600
136
- }
137
- }
138
- $tt.qtip(config);
139
- });
140
-
141
- // Expand
142
- $('.su-expand').each(function () {
143
- var $this = $(this),
144
- $content = $this.children('.su-expand-content'),
145
- $more = $this.children('.su-expand-link-more'),
146
- $less = $this.children('.su-expand-link-less'),
147
- data = $this.data(),
148
- col = 'su-expand-collapsed';
149
-
150
- $more.on('click', function (e) {
151
- $content.css('max-height', 'none');
152
- $this.removeClass(col);
153
- });
154
- $less.on('click', function (e) {
155
- $content.css('max-height', data.height + 'px');
156
- $this.addClass(col);
157
- });
158
- });
159
-
160
- function is_transition_supported() {
161
- var thisBody = document.body || document.documentElement,
162
- thisStyle = thisBody.style,
163
- support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined;
164
-
165
- return support;
166
- }
167
-
168
- // Animations is supported
169
- if (is_transition_supported()) {
170
- // Animate
171
- $('.su-animate').each(function () {
172
- $(this).one('inview', function (e) {
173
- var $this = $(this),
174
- data = $this.data();
175
- window.setTimeout(function () {
176
- $this.addClass(data.animation);
177
- $this.addClass('animated');
178
- $this.css('visibility', 'visible');
179
- }, data.delay * 1000);
180
- });
181
- });
182
- }
183
- // Animations isn't supported
184
- else {
185
- $('.su-animate').css('visibility', 'visible');
186
- }
187
-
188
- function tabs_height() {
189
- $('.su-tabs-vertical').each(function () {
190
- var $tabs = $(this),
191
- $nav = $tabs.children('.su-tabs-nav'),
192
- $panes = $tabs.find('.su-tabs-pane'),
193
- height = 0;
194
- $panes.css('min-height', $nav.outerHeight(true));
195
- });
196
- }
197
-
198
- function anchor_nav() {
199
- // Check hash
200
- if (document.location.hash === '') return;
201
- // Go through tabs
202
- $('.su-tabs-nav span[data-anchor]').each(function () {
203
- if ('#' + $(this).data('anchor') === document.location.hash) {
204
- var $tabs = $(this).parents('.su-tabs'),
205
- bar = ($('#wpadminbar').length > 0) ? 28 : 0;
206
- // Activate tab
207
- $(this).trigger('click');
208
- // Scroll-in tabs container
209
- window.setTimeout(function () {
210
- $(window).scrollTop($tabs.offset().top - bar - 10);
211
- }, 100);
212
- }
213
- });
214
- // Go through spoilers
215
- $('.su-spoiler[data-anchor]').each(function () {
216
- if ('#' + $(this).data('anchor') === document.location.hash) {
217
- var $spoiler = $(this),
218
- bar = ($('#wpadminbar').length > 0) ? 28 : 0;
219
- // Activate tab
220
- if ($spoiler.hasClass('su-spoiler-closed')) $spoiler.find('.su-spoiler-title:first').trigger('click');
221
- // Scroll-in tabs container
222
- window.setTimeout(function () {
223
- $(window).scrollTop($spoiler.offset().top - bar - 10);
224
- }, 100);
225
- }
226
- });
227
- }
228
-
229
- if ('onhashchange' in window) $(window).on('hashchange', anchor_nav);
230
-
231
- $('body').addClass('su-other-shortcodes-loaded');
232
  });
1
+ jQuery(document).ready(function ($) {
2
+
3
+ // Spoiler
4
+ $('body:not(.su-other-shortcodes-loaded)').on('click', '.su-spoiler-title', function (e) {
5
+ var $title = $(this),
6
+ $spoiler = $title.parent(),
7
+ bar = ($('#wpadminbar').length > 0) ? 28 : 0;
8
+ // Open/close spoiler
9
+ $spoiler.toggleClass('su-spoiler-closed');
10
+ // Close other spoilers in accordion
11
+ $spoiler.parent('.su-accordion').children('.su-spoiler').not($spoiler).addClass('su-spoiler-closed');
12
+ // Scroll in spoiler in accordion
13
+ if ($(window).scrollTop() > $title.offset().top) $(window).scrollTop($title.offset().top - $title.height() - bar);
14
+ e.preventDefault();
15
+ });
16
+ $('.su-spoiler-content').removeAttr('style');
17
+ // Tabs
18
+ $('body:not(.su-other-shortcodes-loaded)').on('click', '.su-tabs-nav span', function (e) {
19
+ var $tab = $(this),
20
+ data = $tab.data(),
21
+ index = $tab.index(),
22
+ is_disabled = $tab.hasClass('su-tabs-disabled'),
23
+ $tabs = $tab.parent('.su-tabs-nav').children('span'),
24
+ $panes = $tab.parents('.su-tabs').find('.su-tabs-pane'),
25
+ $gmaps = $panes.eq(index).find('.su-gmap:not(.su-gmap-reloaded)');
26
+ // Check tab is not disabled
27
+ if (is_disabled) return false;
28
+ // Hide all panes, show selected pane
29
+ $panes.hide().eq(index).show();
30
+ // Disable all tabs, enable selected tab
31
+ $tabs.removeClass('su-tabs-current').eq(index).addClass('su-tabs-current');
32
+ // Reload gmaps
33
+ if ($gmaps.length > 0) $gmaps.each(function () {
34
+ var $iframe = $(this).find('iframe:first');
35
+ $(this).addClass('su-gmap-reloaded');
36
+ $iframe.attr('src', $iframe.attr('src'));
37
+ });
38
+ // Set height for vertical tabs
39
+ tabs_height();
40
+ // Open specified url
41
+ if (data.url !== '') {
42
+ if (data.target === 'self') window.location = data.url;
43
+ else if (data.target === 'blank') window.open(data.url);
44
+ }
45
+ e.preventDefault();
46
+ });
47
+
48
+ // Activate tabs
49
+ $('.su-tabs').each(function () {
50
+ var active = parseInt($(this).data('active')) - 1;
51
+ $(this).children('.su-tabs-nav').children('span').eq(active).trigger('click');
52
+ tabs_height();
53
+ });
54
+
55
+ // Activate anchor nav for tabs and spoilers
56
+ anchor_nav();
57
+
58
+ // Lightbox
59
+ $('.su-lightbox').each(function () {
60
+ $(this).on('click', function (e) {
61
+ e.preventDefault();
62
+ e.stopPropagation();
63
+ if ($(this).parent().attr('id') === 'su-generator-preview') $(this).html(su_other_shortcodes.no_preview);
64
+ else {
65
+ var type = $(this).data('mfp-type');
66
+ $(this).magnificPopup({
67
+ type: type,
68
+ tClose: su_magnific_popup.close,
69
+ tLoading: su_magnific_popup.loading,
70
+ gallery: {
71
+ tPrev: su_magnific_popup.prev,
72
+ tNext: su_magnific_popup.next,
73
+ tCounter: su_magnific_popup.counter
74
+ },
75
+ image: {
76
+ tError: su_magnific_popup.error
77
+ },
78
+ ajax: {
79
+ tError: su_magnific_popup.error
80
+ }
81
+ }).magnificPopup('open');
82
+ }
83
+ });
84
+ });
85
+ // Tables
86
+ $('.su-table tr:even').addClass('su-even');
87
+ // Frame
88
+ $('.su-frame-align-center, .su-frame-align-none').each(function () {
89
+ var frame_width = $(this).find('img').width();
90
+ $(this).css('width', frame_width + 12);
91
+ });
92
+ // Tooltip
93
+ $('.su-tooltip').each(function () {
94
+ var $tt = $(this),
95
+ $content = $tt.find('.su-tooltip-content'),
96
+ is_advanced = $content.length > 0,
97
+ data = $tt.data(),
98
+ config = {
99
+ style: {
100
+ classes: data.classes
101
+ },
102
+ position: {
103
+ my: data.my,
104
+ at: data.at,
105
+ viewport: $(window)
106
+ },
107
+ content: {
108
+ title: '',
109
+ text: ''
110
+ }
111
+ };
112
+ if (data.title !== '') config.content.title = data.title;
113
+ if (is_advanced) config.content.text = $content;
114
+ else config.content.text = $tt.attr('title');
115
+ if (data.close === 'yes') config.content.button = true;
116
+ if (data.behavior === 'click') {
117
+ config.show = 'click';
118
+ config.hide = 'click';
119
+ $tt.on('click', function (e) {
120
+ e.preventDefault();
121
+ e.stopPropagation();
122
+ });
123
+ $(window).on('scroll resize', function () {
124
+ $tt.qtip('reposition');
125
+ });
126
+ } else if (data.behavior === 'always') {
127
+ config.show = true;
128
+ config.hide = false;
129
+ $(window).on('scroll resize', function () {
130
+ $tt.qtip('reposition');
131
+ });
132
+ } else if (data.behavior === 'hover' && is_advanced) {
133
+ config.hide = {
134
+ fixed: true,
135
+ delay: 600
136
+ }
137
+ }
138
+ $tt.qtip(config);
139
+ });
140
+
141
+ // Expand
142
+ $('.su-expand').each(function () {
143
+ var $this = $(this),
144
+ $content = $this.children('.su-expand-content'),
145
+ $more = $this.children('.su-expand-link-more'),
146
+ $less = $this.children('.su-expand-link-less'),
147
+ data = $this.data(),
148
+ col = 'su-expand-collapsed';
149
+
150
+ $more.on('click', function (e) {
151
+ $content.css('max-height', 'none');
152
+ $this.removeClass(col);
153
+ });
154
+ $less.on('click', function (e) {
155
+ $content.css('max-height', data.height + 'px');
156
+ $this.addClass(col);
157
+ });
158
+ });
159
+
160
+ function is_transition_supported() {
161
+ var thisBody = document.body || document.documentElement,
162
+ thisStyle = thisBody.style,
163
+ support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined;
164
+
165
+ return support;
166
+ }
167
+
168
+ // Animations is supported
169
+ if (is_transition_supported()) {
170
+ // Animate
171
+ $('.su-animate').each(function () {
172
+ $(this).one('inview', function (e) {
173
+ var $this = $(this),
174
+ data = $this.data();
175
+ window.setTimeout(function () {
176
+ $this.addClass(data.animation);
177
+ $this.addClass('animated');
178
+ $this.css('visibility', 'visible');
179
+ }, data.delay * 1000);
180
+ });
181
+ });
182
+ }
183
+ // Animations isn't supported
184
+ else {
185
+ $('.su-animate').css('visibility', 'visible');
186
+ }
187
+
188
+ function tabs_height() {
189
+ $('.su-tabs-vertical').each(function () {
190
+ var $tabs = $(this),
191
+ $nav = $tabs.children('.su-tabs-nav'),
192
+ $panes = $tabs.find('.su-tabs-pane'),
193
+ height = 0;
194
+ $panes.css('min-height', $nav.outerHeight(true));
195
+ });
196
+ }
197
+
198
+ function anchor_nav() {
199
+ // Check hash
200
+ if (document.location.hash === '') return;
201
+ // Go through tabs
202
+ $('.su-tabs-nav span[data-anchor]').each(function () {
203
+ if ('#' + $(this).data('anchor') === document.location.hash) {
204
+ var $tabs = $(this).parents('.su-tabs'),
205
+ bar = ($('#wpadminbar').length > 0) ? 28 : 0;
206
+ // Activate tab
207
+ $(this).trigger('click');
208
+ // Scroll-in tabs container
209
+ window.setTimeout(function () {
210
+ $(window).scrollTop($tabs.offset().top - bar - 10);
211
+ }, 100);
212
+ }
213
+ });
214
+ // Go through spoilers
215
+ $('.su-spoiler[data-anchor]').each(function () {
216
+ if ('#' + $(this).data('anchor') === document.location.hash) {
217
+ var $spoiler = $(this),
218
+ bar = ($('#wpadminbar').length > 0) ? 28 : 0;
219
+ // Activate tab
220
+ if ($spoiler.hasClass('su-spoiler-closed')) $spoiler.find('.su-spoiler-title:first').trigger('click');
221
+ // Scroll-in tabs container
222
+ window.setTimeout(function () {
223
+ $(window).scrollTop($spoiler.offset().top - bar - 10);
224
+ }, 100);
225
+ }
226
+ });
227
+ }
228
+
229
+ if ('onhashchange' in window) $(window).on('hashchange', anchor_nav);
230
+
231
+ $('body').addClass('su-other-shortcodes-loaded');
232
  });
assets/js/players-shortcodes.js CHANGED
@@ -1,74 +1,74 @@
1
- jQuery(document).ready(function ($) {
2
- // Audio player
3
- $('.su-audio').each(function () {
4
- // Prepare data
5
- var $this = $(this),
6
- id = $this.data('id'),
7
- selector = '#' + id,
8
- $player = $(selector),
9
- audio = $this.data('audio'),
10
- swf = $this.data('swf');
11
- // Init jPlayer
12
- $player.jPlayer({
13
- ready: function (e) {
14
- // Set media
15
- $player.jPlayer('setMedia', {
16
- mp3: audio
17
- });
18
- // Autoplay
19
- if ($this.data('autoplay') === 'yes') $player.jPlayer('play');
20
- // Loop
21
- if ($this.data('loop') === 'yes') $player.bind($.jPlayer.event.ended + '.repeat', function () {
22
- $player.jPlayer('play');
23
- });
24
- },
25
- cssSelectorAncestor: selector + '_container',
26
- volume: 1,
27
- keyEnabled: true,
28
- smoothPlayBar: true,
29
- swfPath: swf,
30
- supplied: 'mp3'
31
- });
32
- });
33
- // Video player
34
- $('.su-video').each(function () {
35
- // Prepare data
36
- var $video = $(this),
37
- id = $video.attr('id'),
38
- $player = $('#' + id + '_player'),
39
- file = $video.data('video'),
40
- swf = $video.data('swf'),
41
- poster = $video.data('poster'),
42
- size = {
43
- width: $player.width(),
44
- height: $player.height()
45
- };
46
- // Init jPlayer
47
- $player.jPlayer({
48
- ready: function (e) {
49
- // Set media
50
- $player.jPlayer('setMedia', {
51
- mp4: file,
52
- flv: file,
53
- poster: poster
54
- });
55
- // Autoplay
56
- if ($video.data('autoplay') === 'yes') $player.jPlayer('play');
57
- // Loop
58
- if ($video.data('loop') === 'yes') $player.bind($.jPlayer.event.ended + '.repeat', function () {
59
- $player.jPlayer('play');
60
- });
61
- },
62
- cssSelector: {
63
- gui: '.jp-gui, .jp-title'
64
- },
65
- size: size,
66
- cssSelectorAncestor: '#' + id,
67
- volume: 1,
68
- keyEnabled: true,
69
- smoothPlayBar: true,
70
- swfPath: swf,
71
- supplied: 'mp4, flv'
72
- });
73
- });
74
  });
1
+ jQuery(document).ready(function ($) {
2
+ // Audio player
3
+ $('.su-audio').each(function () {
4
+ // Prepare data
5
+ var $this = $(this),
6
+ id = $this.data('id'),
7
+ selector = '#' + id,
8
+ $player = $(selector),
9
+ audio = $this.data('audio'),
10
+ swf = $this.data('swf');
11
+ // Init jPlayer
12
+ $player.jPlayer({
13
+ ready: function (e) {
14
+ // Set media
15
+ $player.jPlayer('setMedia', {
16
+ mp3: audio
17
+ });
18
+ // Autoplay
19
+ if ($this.data('autoplay') === 'yes') $player.jPlayer('play');
20
+ // Loop
21
+ if ($this.data('loop') === 'yes') $player.bind($.jPlayer.event.ended + '.repeat', function () {
22
+ $player.jPlayer('play');
23
+ });
24
+ },
25
+ cssSelectorAncestor: selector + '_container',
26
+ volume: 1,
27
+ keyEnabled: true,
28
+ smoothPlayBar: true,
29
+ swfPath: swf,
30
+ supplied: 'mp3'
31
+ });
32
+ });
33
+ // Video player
34
+ $('.su-video').each(function () {
35
+ // Prepare data
36
+ var $video = $(this),
37
+ id = $video.attr('id'),
38
+ $player = $('#' + id + '_player'),
39
+ file = $video.data('video'),
40
+ swf = $video.data('swf'),
41
+ poster = $video.data('poster'),
42
+ size = {
43
+ width: $player.width(),
44
+ height: $player.height()
45
+ };
46
+ // Init jPlayer
47
+ $player.jPlayer({
48
+ ready: function (e) {
49
+ // Set media
50
+ $player.jPlayer('setMedia', {
51
+ mp4: file,
52
+ flv: file,
53
+ poster: poster
54
+ });
55
+ // Autoplay
56
+ if ($video.data('autoplay') === 'yes') $player.jPlayer('play');
57
+ // Loop
58
+ if ($video.data('loop') === 'yes') $player.bind($.jPlayer.event.ended + '.repeat', function () {
59
+ $player.jPlayer('play');
60
+ });
61
+ },
62
+ cssSelector: {
63
+ gui: '.jp-gui, .jp-title'
64
+ },
65
+ size: size,
66
+ cssSelectorAncestor: '#' + id,
67
+ volume: 1,
68
+ keyEnabled: true,
69
+ smoothPlayBar: true,
70
+ swfPath: swf,
71
+ supplied: 'mp4, flv'
72
+ });
73
+ });
74
  });
assets/js/qtip.js CHANGED
@@ -1,3 +1,3 @@
1
- /* qTip2 v2.1.1 tips modal viewport svg imagemap ie6 | qtip2.com | Licensed MIT, GPL | Thu Jul 11 2013 14:03:02 */
2
- (function(t,e,s){(function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery","imagesloaded"],t):jQuery&&!jQuery.fn.qtip&&t(jQuery)})(function(o){function n(t,e,i,s){this.id=i,this.target=t,this.tooltip=E,this.elements=elements={target:t},this._id=$+"-"+i,this.timers={img:{}},this.options=e,this.plugins={},this.cache=cache={event:{},target:o(),disabled:S,attr:s,onTooltip:S,lastClass:""},this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=S}function r(t){return t===E||"object"!==o.type(t)}function a(t){return!(o.isFunction(t)||t&&t.attr||t.length||"object"===o.type(t)&&(t.jquery||t.then))}function h(t){var e,i,s,n;return r(t)?S:(r(t.metadata)&&(t.metadata={type:t.metadata}),"content"in t&&(e=t.content,r(e)||e.jquery||e.done?e=t.content={text:i=a(e)?S:e}:i=e.text,"ajax"in e&&(s=e.ajax,n=s&&s.once!==S,delete e.ajax,e.text=function(t,e){var r=i||o(this).attr(e.options.content.attr)||"Loading...",a=o.ajax(o.extend({},s,{context:e})).then(s.success,E,s.error).then(function(t){return t&&n&&e.set("content.text",t),t},function(t,i,s){e.destroyed||0===t.status||e.set("content.text",i+": "+s)});return n?r:(e.set("content.text",r),a)}),"title"in e&&(r(e.title)||(e.button=e.title.button,e.title=e.title.text),a(e.title||S)&&(e.title=S))),"position"in t&&r(t.position)&&(t.position={my:t.position,at:t.position}),"show"in t&&r(t.show)&&(t.show=t.show.jquery?{target:t.show}:t.show===M?{ready:M}:{event:t.show}),"hide"in t&&r(t.hide)&&(t.hide=t.hide.jquery?{target:t.hide}:{event:t.hide}),"style"in t&&r(t.style)&&(t.style={classes:t.style}),o.each(N,function(){this.sanitize&&this.sanitize(t)}),t)}function l(t,e){for(var i,s=0,o=t,n=e.split(".");o=o[n[s++]];)n.length>s&&(i=o);return[i||t,n.pop()]}function c(t,e){var i,s,o;for(i in this.checks)for(s in this.checks[i])(o=RegExp(s,"i").exec(t))&&(e.push(o),("builtin"===i||this.plugins[i])&&this.checks[i][s].apply(this.plugins[i]||this,e))}function p(t){return H.concat("").join(t?"-"+t+" ":" ")}function d(t){if(this.tooltip.hasClass(te))return S;clearTimeout(this.timers.show),clearTimeout(this.timers.hide);var e=o.proxy(function(){this.toggle(M,t)},this);this.options.show.delay>0?this.timers.show=setTimeout(e,this.options.show.delay):e()}function u(t){if(this.tooltip.hasClass(te))return S;var e=o(t.relatedTarget),i=e.closest(G)[0]===this.tooltip[0],s=e[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==e[0]&&"mouse"===this.options.position.target&&i||this.options.hide.fixed&&/mouse(out|leave|move)/.test(t.type)&&(i||s))try{t.preventDefault(),t.stopImmediatePropagation()}catch(n){}else{var r=o.proxy(function(){this.toggle(S,t)},this);this.options.hide.delay>0?this.timers.hide=setTimeout(r,this.options.hide.delay):r()}}function f(t){return this.tooltip.hasClass(te)||!this.options.hide.inactive?S:(clearTimeout(this.timers.inactive),this.timers.inactive=setTimeout(o.proxy(function(){this.hide(t)},this),this.options.hide.inactive),s)}function g(t){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(t)}function m(t,i,s){o(e.body).delegate(t,(i.split?i:i.join(re+" "))+re,function(){var t=T.api[o.attr(this,Y)];t&&!t.disabled&&s.apply(t,arguments)})}function v(t,i,s){var r,a,l,c,p,d=o(e.body),u=t[0]===e?d:t,f=t.metadata?t.metadata(s.metadata):E,g="html5"===s.metadata.type&&f?f[s.metadata.name]:E,m=t.data(s.metadata.name||"qtipopts");try{m="string"==typeof m?o.parseJSON(m):m}catch(v){}if(c=o.extend(M,{},T.defaults,s,"object"==typeof m?h(m):E,h(g||f)),a=c.position,c.id=i,"boolean"==typeof c.content.text){if(l=t.attr(c.content.attr),c.content.attr===S||!l)return S;c.content.text=l}if(a.container.length||(a.container=d),a.target===S&&(a.target=u),c.show.target===S&&(c.show.target=u),c.show.solo===M&&(c.show.solo=a.container.closest("body")),c.hide.target===S&&(c.hide.target=u),c.position.viewport===M&&(c.position.viewport=a.container),a.container=a.container.eq(0),a.at=new j(a.at,M),a.my=new j(a.my),t.data($))if(c.overwrite)t.qtip("destroy");else if(c.overwrite===S)return S;return t.attr(X,i),c.suppress&&(p=t.attr("title"))&&t.removeAttr("title").attr(ie,p).attr("title",""),r=new n(t,c,i,!!l),t.data($,r),t.one("remove.qtip-"+i+" removeqtip.qtip-"+i,function(){var t;(t=o(this).data($))&&t.destroy()}),r}function y(t){return t.charAt(0).toUpperCase()+t.slice(1)}function b(t,e){var i,o,n=e.charAt(0).toUpperCase()+e.slice(1),r=(e+" "+ve.join(n+" ")+n).split(" "),a=0;if(me[e])return t.css(me[e]);for(;i=r[a++];)if((o=t.css(i))!==s)return me[e]=i,o}function w(t,e){return parseInt(b(t,e),10)}function x(t,e){this._ns="tip",this.options=e,this.offset=e.offset,this.size=[e.width,e.height],this.init(this.qtip=t)}function _(t,e){this.options=e,this._ns="-modal",this.init(this.qtip=t)}function q(t){this._ns="ie6",this.init(this.qtip=t)}var T,C,j,z,W,M=!0,S=!1,E=null,O="x",R="y",I="width",k="height",B="top",L="left",P="bottom",V="right",D="center",A="flipinvert",F="shift",N={},$="qtip",X="data-hasqtip",Y="data-qtip-id",H=["ui-widget","ui-tooltip"],G="."+$,U="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),Q=$+"-fixed",J=$+"-default",K=$+"-focus",Z=$+"-hover",te=$+"-disabled",ee="_replacedByqTip",ie="oldtitle";BROWSER={ie:function(){for(var t=3,i=e.createElement("div");(i.innerHTML="<!--[if gt IE "+ ++t+"]><i></i><![endif]-->")&&i.getElementsByTagName("i")[0];);return t>4?t:0/0}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||S},C=n.prototype,C.render=function(t){if(this.rendered||this.destroyed)return this;var e=this,i=this.options,s=this.cache,n=this.elements,r=i.content.text,a=i.content.title,h=i.content.button,l=i.position,c="."+this._id+" ",p=[];return o.attr(this.target[0],"aria-describedby",this._id),this.tooltip=n.tooltip=tooltip=o("<div/>",{id:this._id,"class":[$,J,i.style.classes,$+"-pos-"+i.position.my.abbrev()].join(" "),width:i.style.width||"",height:i.style.height||"",tracking:"mouse"===l.target&&l.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":S,"aria-describedby":this._id+"-content","aria-hidden":M}).toggleClass(te,this.disabled).attr(Y,this.id).data($,this).appendTo(l.container).append(n.content=o("<div />",{"class":$+"-content",id:this._id+"-content","aria-atomic":M})),this.rendered=-1,this.positioning=M,a&&(this._createTitle(),o.isFunction(a)||p.push(this._updateTitle(a,S))),h&&this._createButton(),o.isFunction(r)||p.push(this._updateContent(r,S)),this.rendered=M,this._setWidget(),o.each(i.events,function(t,e){o.isFunction(e)&&tooltip.bind(("toggle"===t?["tooltipshow","tooltiphide"]:["tooltip"+t]).join(c)+c,e)}),o.each(N,function(t){var i;"render"===this.initialize&&(i=this(e))&&(e.plugins[t]=i)}),this._assignEvents(),o.when.apply(o,p).then(function(){e._trigger("render"),e.positioning=S,e.hiddenDuringWait||!i.show.ready&&!t||e.toggle(M,s.event,S),e.hiddenDuringWait=S}),T.api[this.id]=this,this},C.destroy=function(t){function e(){if(!this.destroyed){this.destroyed=M;var t=this.target,e=t.attr(ie);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove(),o.each(this.plugins,function(){this.destroy&&this.destroy()}),clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this._unassignEvents(),t.removeData($).removeAttr(Y).removeAttr("aria-describedby"),this.options.suppress&&e&&t.attr("title",e).removeAttr(ie),this._unbind(t),this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=E,delete T.api[this.id]}}return this.destroyed?this.target:(t!==M&&this.rendered?(tooltip.one("tooltiphidden",o.proxy(e,this)),!this.triggering&&this.hide()):e.call(this),this.target)},z=C.checks={builtin:{"^id$":function(t,e,i,s){var n=i===M?T.nextid:i,r=$+"-"+n;n!==S&&n.length>0&&!o("#"+r).length?(this._id=r,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):t[e]=s},"^prerender":function(t,e,i){i&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(t,e,i){this._updateContent(i)},"^content.attr$":function(t,e,i,s){this.options.content.text===this.target.attr(s)&&this._updateContent(this.target.attr(i))},"^content.title$":function(t,e,i){return i?(i&&!this.elements.title&&this._createTitle(),this._updateTitle(i),s):this._removeTitle()},"^content.button$":function(t,e,i){this._updateButton(i)},"^content.title.(text|button)$":function(t,e,i){this.set("content."+e,i)},"^position.(my|at)$":function(t,e,i){"string"==typeof i&&(t[e]=new j(i,"at"===e))},"^position.container$":function(t,e,i){this.tooltip.appendTo(i)},"^show.ready$":function(t,e,i){i&&(!this.rendered&&this.render(M)||this.toggle(M))},"^style.classes$":function(t,e,i,s){this.tooltip.removeClass(s).addClass(i)},"^style.width|height":function(t,e,i){this.tooltip.css(e,i)},"^style.widget|content.title":function(){this._setWidget()},"^style.def":function(t,e,i){this.tooltip.toggleClass(J,!!i)},"^events.(render|show|move|hide|focus|blur)$":function(t,e,i){tooltip[(o.isFunction(i)?"":"un")+"bind"]("tooltip"+e,i)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){var t=this.options.position;tooltip.attr("tracking","mouse"===t.target&&t.adjust.mouse),this._unassignEvents(),this._assignEvents()}}},C.get=function(t){if(this.destroyed)return this;var e=l(this.options,t.toLowerCase()),i=e[0][e[1]];return i.precedance?i.string():i};var se=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,oe=/^prerender|show\.ready/i;C.set=function(t,e){if(this.destroyed)return this;var i,n=this.rendered,r=S,a=this.options;return this.checks,"string"==typeof t?(i=t,t={},t[i]=e):t=o.extend({},t),o.each(t,function(e,i){if(!n&&!oe.test(e))return delete t[e],s;var h,c=l(a,e.toLowerCase());h=c[0][c[1]],c[0][c[1]]=i&&i.nodeType?o(i):i,r=se.test(e)||r,t[e]=[c[0],c[1],i,h]}),h(a),this.positioning=M,o.each(t,o.proxy(c,this)),this.positioning=S,this.rendered&&this.tooltip[0].offsetWidth>0&&r&&this.reposition("mouse"===a.position.target?E:this.cache.event),this},C._update=function(t,e){var i=this,s=this.cache;return this.rendered&&t?(o.isFunction(t)&&(t=t.call(this.elements.target,s.event,this)||""),o.isFunction(t.then)?(s.waiting=M,t.then(function(t){return s.waiting=S,i._update(t,e)},E,function(t){return i._update(t,e)})):t===S||!t&&""!==t?S:(t.jquery&&t.length>0?e.children().detach().end().append(t.css({display:"block"})):e.html(t),s.waiting=M,(o.fn.imagesLoaded?e.imagesLoaded():o.Deferred().resolve(o([]))).done(function(t){s.waiting=S,t.length&&i.rendered&&i.tooltip[0].offsetWidth>0&&i.reposition(s.event,!t.length)}).promise())):S},C._updateContent=function(t,e){this._update(t,this.elements.content,e)},C._updateTitle=function(t,e){this._update(t,this.elements.title,e)===S&&this._removeTitle(S)},C._createTitle=function(){var t=this.elements,e=this._id+"-title";t.titlebar&&this._removeTitle(),t.titlebar=o("<div />",{"class":$+"-titlebar "+(this.options.style.widget?p("header"):"")}).append(t.title=o("<div />",{id:e,"class":$+"-title","aria-atomic":M})).insertBefore(t.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(t){o(this).toggleClass("ui-state-active ui-state-focus","down"===t.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(t){o(this).toggleClass("ui-state-hover","mouseover"===t.type)}),this.options.content.button&&this._createButton()},C._removeTitle=function(t){var e=this.elements;e.title&&(e.titlebar.remove(),e.titlebar=e.title=e.button=E,t!==S&&this.reposition())},C.reposition=function(i,s){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=M;var n,r,a=this.cache,h=this.tooltip,l=this.options.position,c=l.target,p=l.my,d=l.at,u=l.viewport,f=l.container,g=l.adjust,m=g.method.split(" "),v=h.outerWidth(S),y=h.outerHeight(S),b=0,w=0,x=h.css("position"),_={left:0,top:0},q=h[0].offsetWidth>0,T=i&&"scroll"===i.type,C=o(t),j=f[0].ownerDocument,z=this.mouse;if(o.isArray(c)&&2===c.length)d={x:L,y:B},_={left:c[0],top:c[1]};else if("mouse"===c&&(i&&i.pageX||a.event.pageX))d={x:L,y:B},i=!z||!z.pageX||!g.mouse&&i&&i.pageX?(!i||"resize"!==i.type&&"scroll"!==i.type?i&&i.pageX&&"mousemove"===i.type?i:(!g.mouse||this.options.show.distance)&&a.origin&&a.origin.pageX?a.origin:i:a.event)||i||a.event||z||{}:z,"static"!==x&&(_=f.offset()),j.body.offsetWidth!==(t.innerWidth||j.documentElement.clientWidth)&&(r=o(j.body).offset()),_={left:i.pageX-_.left+(r&&r.left||0),top:i.pageY-_.top+(r&&r.top||0)},g.mouse&&T&&(_.left-=z.scrollX-C.scrollLeft(),_.top-=z.scrollY-C.scrollTop());else{if("event"===c&&i&&i.target&&"scroll"!==i.type&&"resize"!==i.type?a.target=o(i.target):"event"!==c&&(a.target=o(c.jquery?c:elements.target)),c=a.target,c=o(c).eq(0),0===c.length)return this;c[0]===e||c[0]===t?(b=BROWSER.iOS?t.innerWidth:c.width(),w=BROWSER.iOS?t.innerHeight:c.height(),c[0]===t&&(_={top:(u||c).scrollTop(),left:(u||c).scrollLeft()})):N.imagemap&&c.is("area")?n=N.imagemap(this,c,d,N.viewport?m:S):N.svg&&c[0].ownerSVGElement?n=N.svg(this,c,d,N.viewport?m:S):(b=c.outerWidth(S),w=c.outerHeight(S),_=c.offset()),n&&(b=n.width,w=n.height,r=n.offset,_=n.position),_=this.reposition.offset(c,_,f),(BROWSER.iOS>3.1&&4.1>BROWSER.iOS||BROWSER.iOS>=4.3&&4.33>BROWSER.iOS||!BROWSER.iOS&&"fixed"===x)&&(_.left-=C.scrollLeft(),_.top-=C.scrollTop()),(!n||n&&n.adjustable!==S)&&(_.left+=d.x===V?b:d.x===D?b/2:0,_.top+=d.y===P?w:d.y===D?w/2:0)}return _.left+=g.x+(p.x===V?-v:p.x===D?-v/2:0),_.top+=g.y+(p.y===P?-y:p.y===D?-y/2:0),N.viewport?(_.adjusted=N.viewport(this,_,l,b,w,v,y),r&&_.adjusted.left&&(_.left+=r.left),r&&_.adjusted.top&&(_.top+=r.top)):_.adjusted={left:0,top:0},this._trigger("move",[_,u.elem||u],i)?(delete _.adjusted,s===S||!q||isNaN(_.left)||isNaN(_.top)||"mouse"===c||!o.isFunction(l.effect)?h.css(_):o.isFunction(l.effect)&&(l.effect.call(h,this,o.extend({},_)),h.queue(function(t){o(this).css({opacity:"",height:""}),BROWSER.ie&&this.style.removeAttribute("filter"),t()})),this.positioning=S,this):this},C.reposition.offset=function(t,i,s){function n(t,e){i.left+=e*t.scrollLeft(),i.top+=e*t.scrollTop()}if(!s[0])return i;var r,a,h,l,c=o(t[0].ownerDocument),p=!!BROWSER.ie&&"CSS1Compat"!==e.compatMode,d=s[0];do"static"!==(a=o.css(d,"position"))&&("fixed"===a?(h=d.getBoundingClientRect(),n(c,-1)):(h=o(d).position(),h.left+=parseFloat(o.css(d,"borderLeftWidth"))||0,h.top+=parseFloat(o.css(d,"borderTopWidth"))||0),i.left-=h.left+(parseFloat(o.css(d,"marginLeft"))||0),i.top-=h.top+(parseFloat(o.css(d,"marginTop"))||0),r||"hidden"===(l=o.css(d,"overflow"))||"visible"===l||(r=o(d)));while(d=d.offsetParent);return r&&(r[0]!==c[0]||p)&&n(r,1),i};var ne=(j=C.reposition.Corner=function(t,e){t=(""+t).replace(/([A-Z])/," $1").replace(/middle/gi,D).toLowerCase(),this.x=(t.match(/left|right/i)||t.match(/center/)||["inherit"])[0].toLowerCase(),this.y=(t.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase(),this.forceY=!!e;var i=t.charAt(0);this.precedance="t"===i||"b"===i?R:O}).prototype;ne.invert=function(t,e){this[t]=this[t]===L?V:this[t]===V?L:e||this[t]},ne.string=function(){var t=this.x,e=this.y;return t===e?t:this.precedance===R||this.forceY&&"center"!==e?e+" "+t:t+" "+e},ne.abbrev=function(){var t=this.string().split(" ");return t[0].charAt(0)+(t[1]&&t[1].charAt(0)||"")},ne.clone=function(){return new j(this.string(),this.forceY)},C.toggle=function(t,i){var s=this.cache,n=this.options,r=this.tooltip;if(i){if(/over|enter/.test(i.type)&&/out|leave/.test(s.event.type)&&n.show.target.add(i.target).length===n.show.target.length&&r.has(i.relatedTarget).length)return this;s.event=o.extend({},i)}if(this.waiting&&!t&&(this.hiddenDuringWait=M),!this.rendered)return t?this.render(1):this;if(this.destroyed||this.disabled)return this;var a,h,l=t?"show":"hide",c=this.options[l],p=(this.options[t?"hide":"show"],this.options.position),d=this.options.content,u=this.tooltip.css("width"),f=this.tooltip[0].offsetWidth>0,g=t||1===c.target.length,m=!i||2>c.target.length||s.target[0]===i.target;return(typeof t).search("boolean|number")&&(t=!f),a=!r.is(":animated")&&f===t&&m,h=a?E:!!this._trigger(l,[90]),h!==S&&t&&this.focus(i),!h||a?this:(o.attr(r[0],"aria-hidden",!t),t?(s.origin=o.extend({},this.mouse),o.isFunction(d.text)&&this._updateContent(d.text,S),o.isFunction(d.title)&&this._updateTitle(d.title,S),!W&&"mouse"===p.target&&p.adjust.mouse&&(o(e).bind("mousemove."+$,this._storeMouse),W=M),u||r.css("width",r.outerWidth(S)),this.reposition(i,arguments[2]),u||r.css("width",""),c.solo&&("string"==typeof c.solo?o(c.solo):o(G,c.solo)).not(r).not(c.target).qtip("hide",o.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete s.origin,W&&!o(G+'[tracking="true"]:visible',c.solo).not(r).length&&(o(e).unbind("mousemove."+$),W=S),this.blur(i)),after=o.proxy(function(){t?(BROWSER.ie&&r[0].style.removeAttribute("filter"),r.css("overflow",""),"string"==typeof c.autofocus&&o(this.options.show.autofocus,r).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):r.css({display:"",visibility:"",opacity:"",left:"",top:""}),this._trigger(t?"visible":"hidden")},this),c.effect===S||g===S?(r[l](),after()):o.isFunction(c.effect)?(r.stop(1,1),c.effect.call(r,this),r.queue("fx",function(t){after(),t()})):r.fadeTo(90,t?1:0,after),t&&c.target.trigger("qtip-"+this.id+"-inactive"),this)},C.show=function(t){return this.toggle(M,t)},C.hide=function(t){return this.toggle(S,t)},C.focus=function(t){if(!this.rendered||this.destroyed)return this;var e=o(G),i=this.tooltip,s=parseInt(i[0].style.zIndex,10),n=T.zindex+e.length;return i.hasClass(K)||this._trigger("focus",[n],t)&&(s!==n&&(e.each(function(){this.style.zIndex>s&&(this.style.zIndex=this.style.zIndex-1)}),e.filter("."+K).qtip("blur",t)),i.addClass(K)[0].style.zIndex=n),this},C.blur=function(t){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass(K),this._trigger("blur",[this.tooltip.css("zIndex")],t),this)},C.disable=function(t){return this.destroyed?this:("boolean"!=typeof t&&(t=!(this.tooltip.hasClass(te)||this.disabled)),this.rendered&&this.tooltip.toggleClass(te,t).attr("aria-disabled",t),this.disabled=!!t,this)},C.enable=function(){return this.disable(S)},C._createButton=function(){var t=this,e=this.elements,i=e.tooltip,s=this.options.content.button,n="string"==typeof s,r=n?s:"Close tooltip";e.button&&e.button.remove(),e.button=s.jquery?s:o("<a />",{"class":"qtip-close "+(this.options.style.widget?"":$+"-icon"),title:r,"aria-label":r}).prepend(o("<span />",{"class":"ui-icon ui-icon-close",html:"&times;"})),e.button.appendTo(e.titlebar||i).attr("role","button").click(function(e){return i.hasClass(te)||t.hide(e),S})},C._updateButton=function(t){if(!this.rendered)return S;var e=this.elements.button;t?this._createButton():e.remove()},C._setWidget=function(){var t=this.options.style.widget,e=this.elements,i=e.tooltip,s=i.hasClass(te);i.removeClass(te),te=t?"ui-state-disabled":"qtip-disabled",i.toggleClass(te,s),i.toggleClass("ui-helper-reset "+p(),t).toggleClass(J,this.options.style.def&&!t),e.content&&e.content.toggleClass(p("content"),t),e.titlebar&&e.titlebar.toggleClass(p("header"),t),e.button&&e.button.toggleClass($+"-icon",!t)},C._storeMouse=function(i){this.mouse={pageX:i.pageX,pageY:i.pageY,type:"mousemove",scrollX:t.pageXOffset||e.body.scrollLeft||e.documentElement.scrollLeft,scrollY:t.pageYOffset||e.body.scrollTop||e.documentElement.scrollTop}},C._bind=function(t,e,i,s,n){var r="."+this._id+(s?"-"+s:"");e.length&&o(t).bind((e.split?e:e.join(r+" "))+r,o.proxy(i,n||this))},C._unbind=function(t,e){o(t).unbind("."+this._id+(e?"-"+e:""))};var re="."+$;o(function(){m(G,["mouseenter","mouseleave"],function(t){var e="mouseenter"===t.type,i=o(t.currentTarget),s=o(t.relatedTarget||t.target),n=this.options;e?(this.focus(t),i.hasClass(Q)&&!i.hasClass(te)&&clearTimeout(this.timers.hide)):"mouse"===n.position.target&&n.hide.event&&n.show.target&&!s.closest(n.show.target[0]).length&&this.hide(t),i.toggleClass(Z,e)}),m("["+Y+"]",U,f)}),C._trigger=function(t,e,i){var s=o.Event("tooltip"+t);return s.originalEvent=i&&o.extend({},i)||this.cache.event||E,this.triggering=M,this.tooltip.trigger(s,[this].concat(e||[])),this.triggering=S,!s.isDefaultPrevented()},C._assignEvents=function(){var i=this.options,n=i.position,r=this.tooltip,a=i.show.target,h=i.hide.target,l=n.container,c=n.viewport,p=o(e),m=(o(e.body),o(t)),v=i.show.event?o.trim(""+i.show.event).split(" "):[],y=i.hide.event?o.trim(""+i.hide.event).split(" "):[],b=[];/mouse(out|leave)/i.test(i.hide.event)&&"window"===i.hide.leave&&this._bind(p,["mouseout","blur"],function(t){/select|option/.test(t.target.nodeName)||t.relatedTarget||this.hide(t)}),i.hide.fixed?h=h.add(r.addClass(Q)):/mouse(over|enter)/i.test(i.show.event)&&this._bind(h,"mouseleave",function(){clearTimeout(this.timers.show)}),(""+i.hide.event).indexOf("unfocus")>-1&&this._bind(l.closest("html"),["mousedown","touchstart"],function(t){var e=o(t.target),i=this.rendered&&!this.tooltip.hasClass(te)&&this.tooltip[0].offsetWidth>0,s=e.parents(G).filter(this.tooltip[0]).length>0;e[0]===this.target[0]||e[0]===this.tooltip[0]||s||this.target.has(e[0]).length||!i||this.hide(t)}),"number"==typeof i.hide.inactive&&(this._bind(a,"qtip-"+this.id+"-inactive",f),this._bind(h.add(r),T.inactiveEvents,f,"-inactive")),y=o.map(y,function(t){var e=o.inArray(t,v);return e>-1&&h.add(a).length===h.length?(b.push(v.splice(e,1)[0]),s):t}),this._bind(a,v,d),this._bind(h,y,u),this._bind(a,b,function(t){(this.tooltip[0].offsetWidth>0?u:d).call(this,t)}),this._bind(a.add(r),"mousemove",function(t){if("number"==typeof i.hide.distance){var e=this.cache.origin||{},s=this.options.hide.distance,o=Math.abs;(o(t.pageX-e.pageX)>=s||o(t.pageY-e.pageY)>=s)&&this.hide(t)}this._storeMouse(t)}),"mouse"===n.target&&n.adjust.mouse&&(i.hide.event&&this._bind(a,["mouseenter","mouseleave"],function(t){this.cache.onTarget="mouseenter"===t.type}),this._bind(p,"mousemove",function(t){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass(te)&&this.tooltip[0].offsetWidth>0&&this.reposition(t)})),(n.adjust.resize||c.length)&&this._bind(o.event.special.resize?c:m,"resize",g),n.adjust.scroll&&this._bind(m.add(n.container),"scroll",g)},C._unassignEvents=function(){var i=[this.options.show.target[0],this.options.hide.target[0],this.rendered&&this.tooltip[0],this.options.position.container[0],this.options.position.viewport[0],this.options.position.container.closest("html")[0],t,e];this.rendered?this._unbind(o([]).pushStack(o.grep(i,function(t){return"object"==typeof t}))):o(i[0]).unbind("."+this._id+"-create")},T=o.fn.qtip=function(t,e,i){var n=(""+t).toLowerCase(),r=E,a=o.makeArray(arguments).slice(1),l=a[a.length-1],c=this[0]?o.data(this[0],$):E;return!arguments.length&&c||"api"===n?c:"string"==typeof t?(this.each(function(){var t=o.data(this,$);if(!t)return M;if(l&&l.timeStamp&&(t.cache.event=l),!e||"option"!==n&&"options"!==n)t[n]&&t[n].apply(t,a);else{if(i===s&&!o.isPlainObject(e))return r=t.get(e),S;t.set(e,i)}}),r!==E?r:this):"object"!=typeof t&&arguments.length?s:(c=h(o.extend(M,{},t)),T.bind.call(this,c,l))},T.bind=function(t,e){return this.each(function(i){function n(t){function e(){c.render("object"==typeof t||r.show.ready),a.show.add(a.hide).unbind(l)}return c.disabled?S:(c.cache.event=o.extend({},t),c.cache.target=t?o(t.target):[s],r.show.delay>0?(clearTimeout(c.timers.show),c.timers.show=setTimeout(e,r.show.delay),h.show!==h.hide&&a.hide.bind(h.hide,function(){clearTimeout(c.timers.show)})):e(),s)}var r,a,h,l,c,p;return p=o.isArray(t.id)?t.id[i]:t.id,p=!p||p===S||1>p.length||T.api[p]?T.nextid++:p,l=".qtip-"+p+"-create",c=v(o(this),p,t),c===S?M:(T.api[p]=c,r=c.options,o.each(N,function(){"initialize"===this.initialize&&this(c)}),a={show:r.show.target,hide:r.hide.target},h={show:o.trim(""+r.show.event).replace(/ /g,l+" ")+l,hide:o.trim(""+r.hide.event).replace(/ /g,l+" ")+l},/mouse(over|enter)/i.test(h.show)&&!/mouse(out|leave)/i.test(h.hide)&&(h.hide+=" mouseleave"+l),a.show.bind("mousemove"+l,function(t){c._storeMouse(t),c.cache.onTarget=M}),a.show.bind(h.show,n),(r.show.ready||r.prerender)&&n(e),s)})},T.api={},o.each({attr:function(t,e){if(this.length){var i=this[0],s="title",n=o.data(i,"qtip");if(t===s&&n&&"object"==typeof n&&n.options.suppress)return 2>arguments.length?o.attr(i,ie):(n&&n.options.content.attr===s&&n.cache.attr&&n.set("content.text",e),this.attr(ie,e))}return o.fn["attr"+ee].apply(this,arguments)},clone:function(t){var e=(o([]),o.fn["clone"+ee].apply(this,arguments));return t||e.filter("["+ie+"]").attr("title",function(){return o.attr(this,ie)}).removeAttr(ie),e}},function(t,e){if(!e||o.fn[t+ee])return M;var i=o.fn[t+ee]=o.fn[t];o.fn[t]=function(){return e.apply(this,arguments)||i.apply(this,arguments)}}),o.ui||(o["cleanData"+ee]=o.cleanData,o.cleanData=function(t){for(var e,i=0;(e=o(t[i])).length;i++)if(e.attr(X))try{e.triggerHandler("removeqtip")}catch(s){}o["cleanData"+ee].apply(this,arguments)}),T.version="2.1.1",T.nextid=0,T.inactiveEvents=U,T.zindex=15e3,T.defaults={prerender:S,id:S,overwrite:M,suppress:M,content:{text:M,attr:"title",title:S,button:S},position:{my:"top left",at:"bottom right",target:S,container:S,viewport:S,adjust:{x:0,y:0,mouse:M,scroll:M,resize:M,method:"flipinvert flipinvert"},effect:function(t,e){o(this).animate(e,{duration:200,queue:S})}},show:{target:S,event:"mouseenter",effect:M,delay:90,solo:S,ready:S,autofocus:S},hide:{target:S,event:"mouseleave",effect:M,delay:0,fixed:S,inactive:S,leave:"window",distance:S},style:{classes:"",widget:S,width:S,height:S,def:M},events:{render:E,move:E,show:E,hide:E,toggle:E,visible:E,hidden:E,focus:E,blur:E}};var ae,he="margin",le="border",ce="color",pe="background-color",de="transparent",ue=" !important",fe=!!e.createElement("canvas").getContext,ge=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,me={},ve=["Webkit","O","Moz","ms"];fe||(createVML=function(t,e,i){return"<qtipvml:"+t+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(e||"")+' style="behavior: url(#default#VML); '+(i||"")+'" />'}),o.extend(x.prototype,{init:function(t){var e,i;i=this.element=t.elements.tip=o("<div />",{"class":$+"-tip"}).prependTo(t.tooltip),fe?(e=o("<canvas />").appendTo(this.element)[0].getContext("2d"),e.lineJoin="miter",e.miterLimit=100,e.save()):(e=createVML("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(e+e),t._bind(o("*",i).add(i),["click","mousedown"],function(t){t.stopPropagation()},this._ns)),t._bind(t.tooltip,"tooltipmove",this.reposition,this._ns,this),this.create()},_swapDimensions:function(){this.size[0]=this.options.height,this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width,this.size[1]=this.options.height},_useTitle:function(t){var e=this.qtip.elements.titlebar;return e&&(t.y===B||t.y===D&&this.element.position().top+this.size[1]/2+this.options.offset<e.outerHeight(M))},_parseCorner:function(t){var e=this.qtip.options.position.my;return t===S||e===S?t=S:t===M?t=new j(e.string()):t.string||(t=new j(t),t.fixed=M),t},_parseWidth:function(t,e,i){var s=this.qtip.elements,o=le+y(e)+"Width";return(i?w(i,o):w(s.content,o)||w(this._useTitle(t)&&s.titlebar||s.content,o)||w(tooltip,o))||0},_parseRadius:function(t){var e=this.qtip.elements,i=le+y(t.y)+y(t.x)+"Radius";return 9>BROWSER.ie?0:w(this._useTitle(t)&&e.titlebar||e.content,i)||w(e.tooltip,i)||0},_invalidColour:function(t,e,i){var s=t.css(e);return!s||i&&s===t.css(i)||ge.test(s)?S:s},_parseColours:function(t){var e=this.qtip.elements,i=this.element.css("cssText",""),s=le+y(t[t.precedance])+y(ce),n=this._useTitle(t)&&e.titlebar||e.content,r=this._invalidColour,a=[];return a[0]=r(i,pe)||r(n,pe)||r(e.content,pe)||r(tooltip,pe)||i.css(pe),a[1]=r(i,s,ce)||r(n,s,ce)||r(e.content,s,ce)||r(tooltip,s,ce)||tooltip.css(s),o("*",i).add(i).css("cssText",pe+":"+de+ue+";"+le+":0"+ue+";"),a},_calculateSize:function(t){var e,i,s,o=t.precedance===R,n=this.options[o?"height":"width"],r=this.options[o?"width":"height"],a="c"===t.abbrev(),h=n*(a?.5:1),l=Math.pow,c=Math.round,p=Math.sqrt(l(h,2)+l(r,2)),d=[this.border/h*p,this.border/r*p];return d[2]=Math.sqrt(l(d[0],2)-l(this.border,2)),d[3]=Math.sqrt(l(d[1],2)-l(this.border,2)),e=p+d[2]+d[3]+(a?0:d[0]),i=e/p,s=[c(i*n),c(i*r)],o?s:s.reverse()},_calculateTip:function(t){var e=this.size[0],i=this.size[1],s=Math.ceil(e/2),o=Math.ceil(i/2),n={br:[0,0,e,i,e,0],bl:[0,0,e,0,0,i],tr:[0,i,e,0,e,i],tl:[0,0,0,i,e,i],tc:[0,i,s,0,e,i],bc:[0,0,e,0,s,i],rc:[0,0,e,o,0,i],lc:[e,0,e,i,0,o]};return n.lt=n.br,n.rt=n.bl,n.lb=n.tr,n.rb=n.tl,n[t.abbrev()]},create:function(){var t=this.corner=(fe||BROWSER.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=t.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(t,e){if(!this.enabled)return this;var i,s,n,r,a,h,l,c=(this.qtip.elements,this.element),p=c.children(),d=this.options,u=this.size,f=d.mimic,g=Math.round;t||(t=this.qtip.cache.corner||this.corner),f===S?f=t:(f=new j(f),f.precedance=t.precedance,"inherit"===f.x?f.x=t.x:"inherit"===f.y?f.y=t.y:f.x===f.y&&(f[t.precedance]=t[t.precedance])),s=f.precedance,t.precedance===O?this._swapDimensions():this._resetDimensions(),i=this.color=this._parseColours(t),i[1]!==de?(l=this.border=this._parseWidth(t,t[t.precedance]),d.border&&1>l&&(i[0]=i[1]),this.border=l=d.border!==M?d.border:l):this.border=l=0,r=this._calculateTip(f),h=this.size=this._calculateSize(t),c.css({width:h[0],height:h[1],lineHeight:h[1]+"px"}),a=t.precedance===R?[g(f.x===L?l:f.x===V?h[0]-u[0]-l:(h[0]-u[0])/2),g(f.y===B?h[1]-u[1]:0)]:[g(f.x===L?h[0]-u[0]:0),g(f.y===B?l:f.y===P?h[1]-u[1]-l:(h[1]-u[1])/2)],fe?(p.attr(I,h[0]).attr(k,h[1]),n=p[0].getContext("2d"),n.restore(),n.save(),n.clearRect(0,0,3e3,3e3),n.fillStyle=i[0],n.strokeStyle=i[1],n.lineWidth=2*l,n.translate(a[0],a[1]),n.beginPath(),n.moveTo(r[0],r[1]),n.lineTo(r[2],r[3]),n.lineTo(r[4],r[5]),n.closePath(),l&&("border-box"===tooltip.css("background-clip")&&(n.strokeStyle=i[0],n.stroke()),n.strokeStyle=i[1],n.stroke()),n.fill()):(r="m"+r[0]+","+r[1]+" l"+r[2]+","+r[3]+" "+r[4]+","+r[5]+" xe",a[2]=l&&/^(r|b)/i.test(t.string())?8===BROWSER.ie?2:1:0,p.css({coordsize:u[0]+l+" "+(u[1]+l),antialias:""+(f.string().indexOf(D)>-1),left:a[0]-a[2]*Number(s===O),top:a[1]-a[2]*Number(s===R),width:u[0]+l,height:u[1]+l}).each(function(t){var e=o(this);e[e.prop?"prop":"attr"]({coordsize:u[0]+l+" "+(u[1]+l),path:r,fillcolor:i[0],filled:!!t,stroked:!t}).toggle(!(!l&&!t)),!t&&e.html(createVML("stroke",'weight="'+2*l+'px" color="'+i[1]+'" miterlimit="1000" joinstyle="miter"'))})),e!==S&&this.calculate(t)},calculate:function(t){if(!this.enabled)return S;var e,i,s,n=this,r=this.qtip.elements,a=this.element,h=this.options.offset,l=(this.qtip.tooltip.hasClass("ui-widget"),{});return t=t||this.corner,e=t.precedance,i=this._calculateSize(t),s=[t.x,t.y],e===O&&s.reverse(),o.each(s,function(s,o){var a,c,p;o===D?(a=e===R?L:B,l[a]="50%",l[he+"-"+a]=-Math.round(i[e===R?0:1]/2)+h):(a=n._parseWidth(t,o,r.tooltip),c=n._parseWidth(t,o,r.content),p=n._parseRadius(t),l[o]=Math.max(-n.border,s?c:h+(p>a?p:-a)))}),l[t[e]]-=i[e===O?0:1],a.css({margin:"",top:"",bottom:"",left:"",right:""}).css(l),l},reposition:function(t,e,i){if(this.enabled){var o,n,r=e.cache,a=this.corner.clone(),h=i.adjusted,l=e.options.position.adjust.method.split(" "),c=l[0],p=l[1]||l[0],d={left:S,top:S,x:0,y:0},u={};this.corner.fixed!==M&&(c===F&&a.precedance===O&&h.left&&a.y!==D?a.precedance=a.precedance===O?R:O:c!==F&&h.left&&(a.x=a.x===D?h.left>0?L:V:a.x===L?V:L),p===F&&a.precedance===R&&h.top&&a.x!==D?a.precedance=a.precedance===R?O:R:p!==F&&h.top&&(a.y=a.y===D?h.top>0?B:P:a.y===B?P:B),a.string()===r.corner.string()||r.cornerTop===h.top&&r.cornerLeft===h.left||this.update(a,S)),o=this.calculate(a,h),o.right!==s&&(o.left=-o.right),o.bottom!==s&&(o.top=-o.bottom),o.user=this.offset,(d.left=c===F&&!!h.left)&&(a.x===D?u[he+"-left"]=d.x=o[he+"-left"]-h.left:(n=o.right!==s?[h.left,-o.left]:[-h.left,o.left],(d.x=Math.max(n[0],n[1]))>n[0]&&(i.left-=h.left,d.left=S),u[o.right!==s?V:L]=d.x)),(d.top=p===F&&!!h.top)&&(a.y===D?u[he+"-top"]=d.y=o[he+"-top"]-h.top:(n=o.bottom!==s?[h.top,-o.top]:[-h.top,o.top],(d.y=Math.max(n[0],n[1]))>n[0]&&(i.top-=h.top,d.top=S),u[o.bottom!==s?P:B]=d.y)),this.element.css(u).toggle(!(d.x&&d.y||a.x===D&&d.y||a.y===D&&d.x)),i.left-=o.left.charAt?o.user:c!==F||d.top||!d.left&&!d.top?o.left:0,i.top-=o.top.charAt?o.user:p!==F||d.left||!d.left&&!d.top?o.top:0,r.cornerLeft=h.left,r.cornerTop=h.top,r.corner=a.clone()
3
  }},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns),this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}}),ae=N.tip=function(t){return new x(t,t.options.style.tip)},ae.initialize="render",ae.sanitize=function(t){t.style&&"tip"in t.style&&(opts=t.style.tip,"object"!=typeof opts&&(opts=t.style.tip={corner:opts}),/string|boolean/i.test(typeof opts.corner)||(opts.corner=M))},z.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create(),this.qtip.reposition()},"^style.tip.(height|width)$":function(t){this.size=size=[t.width,t.height],this.update(),this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}},o.extend(M,T.defaults,{style:{tip:{corner:M,mimic:S,width:6,height:6,border:M,offset:0}}});var ye,be,we="qtip-modal",xe="."+we;be=function(){function i(t){if(o.expr[":"].focusable)return o.expr[":"].focusable;var e,i,s,n=!isNaN(o.attr(t,"tabindex")),r=t.nodeName&&t.nodeName.toLowerCase();return"area"===r?(e=t.parentNode,i=e.name,t.href&&i&&"map"===e.nodeName.toLowerCase()?(s=o("img[usemap=#"+i+"]")[0],!!s&&s.is(":visible")):!1):/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||n:n}function s(t){1>p.length&&t.length?t.not("body").blur():p.first().focus()}function n(t){if(l.is(":visible")){var e,i=o(t.target),n=r.tooltip,h=i.closest(G);e=1>h.length?S:parseInt(h[0].style.zIndex,10)>parseInt(n[0].style.zIndex,10),e||i.closest(G)[0]===n[0]||s(i),a=t.target===p[p.length-1]}}var r,a,h,l,c=this,p={};o.extend(c,{init:function(){function i(){var t=o(this);l.css({height:t.height(),width:t.width()})}return l=c.elem=o("<div />",{id:"qtip-overlay",html:"<div></div>",mousedown:function(){return S}}).hide(),o(t).bind("resize"+xe,i),i(),o(e.body).bind("focusin"+xe,n),o(e).bind("keydown"+xe,function(t){r&&r.options.show.modal.escape&&27===t.keyCode&&r.hide(t)}),l.bind("click"+xe,function(t){r&&r.options.show.modal.blur&&r.hide(t)}),c},update:function(t){r=t,p=t.options.show.modal.stealfocus!==S?t.tooltip.find("*").filter(function(){return i(this)}):[]},toggle:function(t,i,n){var a=(o(e.body),t.tooltip),p=t.options.show.modal,d=p.effect,u=i?"show":"hide",f=l.is(":visible"),g=o(xe).filter(":visible:not(:animated)").not(a);return c.update(t),i&&p.stealfocus!==S&&s(o(":focus")),l.toggleClass("blurs",p.blur),i&&l.css({left:0,top:0}).appendTo(e.body),l.is(":animated")&&f===i&&h!==S||!i&&g.length?c:(l.stop(M,S),o.isFunction(d)?d.call(l,i):d===S?l[u]():l.fadeTo(parseInt(n,10)||90,i?1:0,function(){i||l.hide()}),i||l.queue(function(t){l.css({left:"",top:""}),o(xe).length||l.detach(),t()}),h=i,r.destroyed&&(r=E),c)}}),c.init()},be=new be,o.extend(_.prototype,{init:function(t){var e=t.tooltip;return this.options.on?(t.elements.overlay=be.elem,e.addClass(we).css("z-index",N.modal.zindex+o(xe).length),t._bind(e,["tooltipshow","tooltiphide"],function(t,i,s){var n=t.originalEvent;if(t.target===e[0])if(n&&"tooltiphide"===t.type&&/mouse(leave|enter)/.test(n.type)&&o(n.relatedTarget).closest(overlay[0]).length)try{t.preventDefault()}catch(r){}else(!n||n&&!n.solo)&&this.toggle(t,"tooltipshow"===t.type,s)},this._ns,this),t._bind(e,"tooltipfocus",function(t,i){if(!t.isDefaultPrevented()&&t.target===e[0]){var s=o(xe),n=N.modal.zindex+s.length,r=parseInt(e[0].style.zIndex,10);be.elem[0].style.zIndex=n-1,s.each(function(){this.style.zIndex>r&&(this.style.zIndex-=1)}),s.filter("."+K).qtip("blur",t.originalEvent),e.addClass(K)[0].style.zIndex=n,be.update(i);try{t.preventDefault()}catch(a){}}},this._ns,this),t._bind(e,"tooltiphide",function(t){t.target===e[0]&&o(xe).filter(":visible").not(e).last().qtip("focus",t)},this._ns,this),s):this},toggle:function(t,e,i){return t&&t.isDefaultPrevented()?this:(be.toggle(this.qtip,!!e,i),s)},destroy:function(){this.qtip.tooltip.removeClass(we),this.qtip._unbind(this.qtip.tooltip,this._ns),be.toggle(this.qtip,S),delete this.qtip.elements.overlay}}),ye=N.modal=function(t){return new _(t,t.options.show.modal)},ye.sanitize=function(t){t.show&&("object"!=typeof t.show.modal?t.show.modal={on:!!t.show.modal}:t.show.modal.on===s&&(t.show.modal.on=M))},ye.zindex=T.zindex-200,ye.initialize="render",z.modal={"^show.modal.(on|blur)$":function(){this.destroy(),this.init(),this.qtip.elems.overlay.toggle(this.qtip.tooltip[0].offsetWidth>0)}},o.extend(M,T.defaults,{show:{modal:{on:S,effect:M,blur:M,stealfocus:M,escape:M}}}),N.viewport=function(i,s,o,n,r,a,h){function l(t,e,i,o,n,r,a,h,l){var c=s[n],d=g[t],u=m[t],f=i===F,v=-_.offset[n]+x.offset[n]+x["scroll"+n],y=d===n?l:d===r?-l:-l/2,b=u===n?h:u===r?-h:-h/2,w=T&&T.size?T.size[a]||0:0,q=T&&T.corner&&T.corner.precedance===t&&!f?w:0,C=v-c+q,j=c+l-x[a]-v+q,z=y-(g.precedance===t||d===g[e]?b:0)-(u===D?h/2:0);return f?(q=T&&T.corner&&T.corner.precedance===e?w:0,z=(d===n?1:-1)*y-q,s[n]+=C>0?C:j>0?-j:0,s[n]=Math.max(-_.offset[n]+x.offset[n]+(q&&T.corner[t]===D?T.offset:0),c-z,Math.min(Math.max(-_.offset[n]+x.offset[n]+x[a],c+z),s[n]))):(o*=i===A?2:0,C>0&&(d!==n||j>0)?(s[n]-=z+o,p.invert(t,n)):j>0&&(d!==r||C>0)&&(s[n]-=(d===D?-z:z)+o,p.invert(t,r)),v>s[n]&&-s[n]>j&&(s[n]=c,p=g.clone())),s[n]-c}var c,p,d,u=o.target,f=i.elements.tooltip,g=o.my,m=o.at,v=o.adjust,y=v.method.split(" "),b=y[0],w=y[1]||y[0],x=o.viewport,_=o.container,q=i.cache,T=i.plugins.tip,C={left:0,top:0};return x.jquery&&u[0]!==t&&u[0]!==e.body&&"none"!==v.method?(c="fixed"===f.css("position"),x={elem:x,width:x[0]===t?x.width():x.outerWidth(S),height:x[0]===t?x.height():x.outerHeight(S),scrollleft:c?0:x.scrollLeft(),scrolltop:c?0:x.scrollTop(),offset:x.offset()||{left:0,top:0}},_={elem:_,scrollLeft:_.scrollLeft(),scrollTop:_.scrollTop(),offset:_.offset()||{left:0,top:0}},("shift"!==b||"shift"!==w)&&(p=g.clone()),C={left:"none"!==b?l(O,R,b,v.x,L,V,I,n,a):0,top:"none"!==w?l(R,O,w,v.y,B,P,k,r,h):0},p&&q.lastClass!==(d=$+"-pos-"+p.abbrev())&&f.removeClass(i.cache.lastClass).addClass(i.cache.lastClass=d),C):C},N.polys={polygon:function(t,e){var i,s,o,n={width:0,height:0,position:{top:1e10,right:0,bottom:0,left:1e10},adjustable:S},r=0,a=[],h=1,l=1,c=0,p=0;for(r=t.length;r--;)i=[parseInt(t[--r],10),parseInt(t[r+1],10)],i[0]>n.position.right&&(n.position.right=i[0]),i[0]<n.position.left&&(n.position.left=i[0]),i[1]>n.position.bottom&&(n.position.bottom=i[1]),i[1]<n.position.top&&(n.position.top=i[1]),a.push(i);if(s=n.width=Math.abs(n.position.right-n.position.left),o=n.height=Math.abs(n.position.bottom-n.position.top),"c"===e.abbrev())n.position={left:n.position.left+n.width/2,top:n.position.top+n.height/2};else{for(;s>0&&o>0&&h>0&&l>0;)for(s=Math.floor(s/2),o=Math.floor(o/2),e.x===L?h=s:e.x===V?h=n.width-s:h+=Math.floor(s/2),e.y===B?l=o:e.y===P?l=n.height-o:l+=Math.floor(o/2),r=a.length;r--&&!(2>a.length);)c=a[r][0]-n.position.left,p=a[r][1]-n.position.top,(e.x===L&&c>=h||e.x===V&&h>=c||e.x===D&&(h>c||c>n.width-h)||e.y===B&&p>=l||e.y===P&&l>=p||e.y===D&&(l>p||p>n.height-l))&&a.splice(r,1);n.position={left:a[0][0],top:a[0][1]}}return n},rect:function(t,e,i,s){return{width:Math.abs(i-t),height:Math.abs(s-e),position:{left:Math.min(t,i),top:Math.min(e,s)}}},_angles:{tc:1.5,tr:7/4,tl:5/4,bc:.5,br:.25,bl:.75,rc:2,lc:1,c:0},ellipse:function(t,e,i,s,o){var n=N.polys._angles[o.abbrev()],r=i*Math.cos(n*Math.PI),a=s*Math.sin(n*Math.PI);return{width:2*i-Math.abs(r),height:2*s-Math.abs(a),position:{left:t+r,top:e+a},adjustable:S}},circle:function(t,e,i,s){return N.polys.ellipse(t,e,i,i,s)}},N.svg=function(t,s,n){for(var r,a,h,l=o(e),c=s[0],p={};!c.getBBox;)c=c.parentNode;if(!c.getBBox||!c.parentNode)return S;switch(c.nodeName){case"rect":a=N.svg.toPixel(c,c.x.baseVal.value,c.y.baseVal.value),h=N.svg.toPixel(c,c.x.baseVal.value+c.width.baseVal.value,c.y.baseVal.value+c.height.baseVal.value),p=N.polys.rect(a[0],a[1],h[0],h[1],n);break;case"ellipse":case"circle":a=N.svg.toPixel(c,c.cx.baseVal.value,c.cy.baseVal.value),p=N.polys.ellipse(a[0],a[1],(c.rx||c.r).baseVal.value,(c.ry||c.r).baseVal.value,n);break;case"line":case"polygon":case"polyline":for(points=c.points||[{x:c.x1.baseVal.value,y:c.y1.baseVal.value},{x:c.x2.baseVal.value,y:c.y2.baseVal.value}],p=[],i=-1,len=points.numberOfItems||points.length;len>++i;)next=points.getItem?points.getItem(i):points[i],p.push.apply(p,N.svg.toPixel(c,next.x,next.y));p=N.polys.polygon(p,n);break;default:if(r=c.getBBox(),mtx=c.getScreenCTM(),root=c.farthestViewportElement||c,!root.createSVGPoint)return S;point=root.createSVGPoint(),point.x=r.x,point.y=r.y,tPoint=point.matrixTransform(mtx),p.position={left:tPoint.x,top:tPoint.y},point.x+=r.width,point.y+=r.height,tPoint=point.matrixTransform(mtx),p.width=tPoint.x-p.position.left,p.height=tPoint.y-p.position.top}return p.position.left+=l.scrollLeft(),p.position.top+=l.scrollTop(),p},N.svg.toPixel=function(t,e,i){var s,o,n=t.getScreenCTM(),r=t.farthestViewportElement||t;return r.createSVGPoint?(o=r.createSVGPoint(),o.x=e,o.y=i,s=o.matrixTransform(n),[s.x,s.y]):S},N.imagemap=function(t,e,i){e.jquery||(e=o(e));var s,n,r,a=e.attr("shape").toLowerCase().replace("poly","polygon"),h=o('img[usemap="#'+e.parent("map").attr("name")+'"]'),l=e.attr("coords"),c=l.split(",");if(!h.length)return S;if("polygon"===a)result=N.polys.polygon(c,i);else{if(!N.polys[a])return S;for(r=-1,len=c.length,n=[];len>++r;)n.push(parseInt(c[r],10));result=N.polys[a].apply(this,n.concat(i))}return s=h.offset(),s.left+=Math.ceil((h.outerWidth(S)-h.width())/2),s.top+=Math.ceil((h.outerHeight(S)-h.height())/2),result.position.left+=s.left,result.position.top+=s.top,result};var _e,qe='<iframe class="qtip-bgiframe" frameborder="0" tabindex="-1" src="javascript:\'\';" style="display:block; position:absolute; z-index:-1; filter:alpha(opacity=0); -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";"></iframe>';o.extend(q.prototype,{_scroll:function(){var e=this.qtip.elements.overlay;e&&(e[0].style.top=o(t).scrollTop()+"px")},init:function(i){var s=i.tooltip;1>o("select, object").length&&(this.bgiframe=i.elements.bgiframe=o(qe).appendTo(s),i._bind(s,"tooltipmove",this.adjustBGIFrame,this._ns,this)),this.redrawContainer=o("<div/>",{id:$+"-rcontainer"}).appendTo(e.body),i.elements.overlay&&i.elements.overlay.addClass("qtipmodal-ie6fix")&&(i._bind(t,["scroll","resize"],this._scroll,this._ns,this),i._bind(s,["tooltipshow"],this._scroll,this._ns,this)),this.redraw()},adjustBGIFrame:function(){var t,e,i=this.qtip.tooltip,s={height:i.outerHeight(S),width:i.outerWidth(S)},o=this.qtip.plugins.tip,n=this.qtip.elements.tip;e=parseInt(i.css("borderLeftWidth"),10)||0,e={left:-e,top:-e},o&&n&&(t="x"===o.corner.precedance?[I,L]:[k,B],e[t[1]]-=n[t[0]]()),this.bgiframe.css(e).css(s)},redraw:function(){if(1>this.qtip.rendered||this.drawing)return self;var t,e,i,s,o=this.qtip.tooltip,n=this.qtip.options.style,r=this.qtip.options.position.container;return this.qtip.drawing=1,n.height&&o.css(k,n.height),n.width?o.css(I,n.width):(o.css(I,"").appendTo(this.redrawContainer),e=o.width(),1>e%2&&(e+=1),i=o.css("maxWidth")||"",s=o.css("minWidth")||"",t=(i+s).indexOf("%")>-1?r.width()/100:0,i=(i.indexOf("%")>-1?t:1)*parseInt(i,10)||e,s=(s.indexOf("%")>-1?t:1)*parseInt(s,10)||0,e=i+s?Math.min(Math.max(e,s),i):e,o.css(I,Math.round(e)).appendTo(r)),this.drawing=0,self},destroy:function(){this.bgiframe&&this.bgiframe.remove(),this.qtip._unbind([t,this.qtip.tooltip],this._ns)}}),_e=N.ie6=function(t){return 6===BROWSER.ie?new q(t):S},_e.initialize="render",z.ie6={"^content|style$":function(){this.redraw()}}})})(window,document);
1
+ /* qTip2 v2.1.1 tips modal viewport svg imagemap ie6 | qtip2.com | Licensed MIT, GPL | Thu Jul 11 2013 14:03:02 */
2
+ (function(t,e,s){(function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery","imagesloaded"],t):jQuery&&!jQuery.fn.qtip&&t(jQuery)})(function(o){function n(t,e,i,s){this.id=i,this.target=t,this.tooltip=E,this.elements=elements={target:t},this._id=$+"-"+i,this.timers={img:{}},this.options=e,this.plugins={},this.cache=cache={event:{},target:o(),disabled:S,attr:s,onTooltip:S,lastClass:""},this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=S}function r(t){return t===E||"object"!==o.type(t)}function a(t){return!(o.isFunction(t)||t&&t.attr||t.length||"object"===o.type(t)&&(t.jquery||t.then))}function h(t){var e,i,s,n;return r(t)?S:(r(t.metadata)&&(t.metadata={type:t.metadata}),"content"in t&&(e=t.content,r(e)||e.jquery||e.done?e=t.content={text:i=a(e)?S:e}:i=e.text,"ajax"in e&&(s=e.ajax,n=s&&s.once!==S,delete e.ajax,e.text=function(t,e){var r=i||o(this).attr(e.options.content.attr)||"Loading...",a=o.ajax(o.extend({},s,{context:e})).then(s.success,E,s.error).then(function(t){return t&&n&&e.set("content.text",t),t},function(t,i,s){e.destroyed||0===t.status||e.set("content.text",i+": "+s)});return n?r:(e.set("content.text",r),a)}),"title"in e&&(r(e.title)||(e.button=e.title.button,e.title=e.title.text),a(e.title||S)&&(e.title=S))),"position"in t&&r(t.position)&&(t.position={my:t.position,at:t.position}),"show"in t&&r(t.show)&&(t.show=t.show.jquery?{target:t.show}:t.show===M?{ready:M}:{event:t.show}),"hide"in t&&r(t.hide)&&(t.hide=t.hide.jquery?{target:t.hide}:{event:t.hide}),"style"in t&&r(t.style)&&(t.style={classes:t.style}),o.each(N,function(){this.sanitize&&this.sanitize(t)}),t)}function l(t,e){for(var i,s=0,o=t,n=e.split(".");o=o[n[s++]];)n.length>s&&(i=o);return[i||t,n.pop()]}function c(t,e){var i,s,o;for(i in this.checks)for(s in this.checks[i])(o=RegExp(s,"i").exec(t))&&(e.push(o),("builtin"===i||this.plugins[i])&&this.checks[i][s].apply(this.plugins[i]||this,e))}function p(t){return H.concat("").join(t?"-"+t+" ":" ")}function d(t){if(this.tooltip.hasClass(te))return S;clearTimeout(this.timers.show),clearTimeout(this.timers.hide);var e=o.proxy(function(){this.toggle(M,t)},this);this.options.show.delay>0?this.timers.show=setTimeout(e,this.options.show.delay):e()}function u(t){if(this.tooltip.hasClass(te))return S;var e=o(t.relatedTarget),i=e.closest(G)[0]===this.tooltip[0],s=e[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==e[0]&&"mouse"===this.options.position.target&&i||this.options.hide.fixed&&/mouse(out|leave|move)/.test(t.type)&&(i||s))try{t.preventDefault(),t.stopImmediatePropagation()}catch(n){}else{var r=o.proxy(function(){this.toggle(S,t)},this);this.options.hide.delay>0?this.timers.hide=setTimeout(r,this.options.hide.delay):r()}}function f(t){return this.tooltip.hasClass(te)||!this.options.hide.inactive?S:(clearTimeout(this.timers.inactive),this.timers.inactive=setTimeout(o.proxy(function(){this.hide(t)},this),this.options.hide.inactive),s)}function g(t){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(t)}function m(t,i,s){o(e.body).delegate(t,(i.split?i:i.join(re+" "))+re,function(){var t=T.api[o.attr(this,Y)];t&&!t.disabled&&s.apply(t,arguments)})}function v(t,i,s){var r,a,l,c,p,d=o(e.body),u=t[0]===e?d:t,f=t.metadata?t.metadata(s.metadata):E,g="html5"===s.metadata.type&&f?f[s.metadata.name]:E,m=t.data(s.metadata.name||"qtipopts");try{m="string"==typeof m?o.parseJSON(m):m}catch(v){}if(c=o.extend(M,{},T.defaults,s,"object"==typeof m?h(m):E,h(g||f)),a=c.position,c.id=i,"boolean"==typeof c.content.text){if(l=t.attr(c.content.attr),c.content.attr===S||!l)return S;c.content.text=l}if(a.container.length||(a.container=d),a.target===S&&(a.target=u),c.show.target===S&&(c.show.target=u),c.show.solo===M&&(c.show.solo=a.container.closest("body")),c.hide.target===S&&(c.hide.target=u),c.position.viewport===M&&(c.position.viewport=a.container),a.container=a.container.eq(0),a.at=new j(a.at,M),a.my=new j(a.my),t.data($))if(c.overwrite)t.qtip("destroy");else if(c.overwrite===S)return S;return t.attr(X,i),c.suppress&&(p=t.attr("title"))&&t.removeAttr("title").attr(ie,p).attr("title",""),r=new n(t,c,i,!!l),t.data($,r),t.one("remove.qtip-"+i+" removeqtip.qtip-"+i,function(){var t;(t=o(this).data($))&&t.destroy()}),r}function y(t){return t.charAt(0).toUpperCase()+t.slice(1)}function b(t,e){var i,o,n=e.charAt(0).toUpperCase()+e.slice(1),r=(e+" "+ve.join(n+" ")+n).split(" "),a=0;if(me[e])return t.css(me[e]);for(;i=r[a++];)if((o=t.css(i))!==s)return me[e]=i,o}function w(t,e){return parseInt(b(t,e),10)}function x(t,e){this._ns="tip",this.options=e,this.offset=e.offset,this.size=[e.width,e.height],this.init(this.qtip=t)}function _(t,e){this.options=e,this._ns="-modal",this.init(this.qtip=t)}function q(t){this._ns="ie6",this.init(this.qtip=t)}var T,C,j,z,W,M=!0,S=!1,E=null,O="x",R="y",I="width",k="height",B="top",L="left",P="bottom",V="right",D="center",A="flipinvert",F="shift",N={},$="qtip",X="data-hasqtip",Y="data-qtip-id",H=["ui-widget","ui-tooltip"],G="."+$,U="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),Q=$+"-fixed",J=$+"-default",K=$+"-focus",Z=$+"-hover",te=$+"-disabled",ee="_replacedByqTip",ie="oldtitle";BROWSER={ie:function(){for(var t=3,i=e.createElement("div");(i.innerHTML="<!--[if gt IE "+ ++t+"]><i></i><![endif]-->")&&i.getElementsByTagName("i")[0];);return t>4?t:0/0}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||S},C=n.prototype,C.render=function(t){if(this.rendered||this.destroyed)return this;var e=this,i=this.options,s=this.cache,n=this.elements,r=i.content.text,a=i.content.title,h=i.content.button,l=i.position,c="."+this._id+" ",p=[];return o.attr(this.target[0],"aria-describedby",this._id),this.tooltip=n.tooltip=tooltip=o("<div/>",{id:this._id,"class":[$,J,i.style.classes,$+"-pos-"+i.position.my.abbrev()].join(" "),width:i.style.width||"",height:i.style.height||"",tracking:"mouse"===l.target&&l.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":S,"aria-describedby":this._id+"-content","aria-hidden":M}).toggleClass(te,this.disabled).attr(Y,this.id).data($,this).appendTo(l.container).append(n.content=o("<div />",{"class":$+"-content",id:this._id+"-content","aria-atomic":M})),this.rendered=-1,this.positioning=M,a&&(this._createTitle(),o.isFunction(a)||p.push(this._updateTitle(a,S))),h&&this._createButton(),o.isFunction(r)||p.push(this._updateContent(r,S)),this.rendered=M,this._setWidget(),o.each(i.events,function(t,e){o.isFunction(e)&&tooltip.bind(("toggle"===t?["tooltipshow","tooltiphide"]:["tooltip"+t]).join(c)+c,e)}),o.each(N,function(t){var i;"render"===this.initialize&&(i=this(e))&&(e.plugins[t]=i)}),this._assignEvents(),o.when.apply(o,p).then(function(){e._trigger("render"),e.positioning=S,e.hiddenDuringWait||!i.show.ready&&!t||e.toggle(M,s.event,S),e.hiddenDuringWait=S}),T.api[this.id]=this,this},C.destroy=function(t){function e(){if(!this.destroyed){this.destroyed=M;var t=this.target,e=t.attr(ie);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove(),o.each(this.plugins,function(){this.destroy&&this.destroy()}),clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this._unassignEvents(),t.removeData($).removeAttr(Y).removeAttr("aria-describedby"),this.options.suppress&&e&&t.attr("title",e).removeAttr(ie),this._unbind(t),this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=E,delete T.api[this.id]}}return this.destroyed?this.target:(t!==M&&this.rendered?(tooltip.one("tooltiphidden",o.proxy(e,this)),!this.triggering&&this.hide()):e.call(this),this.target)},z=C.checks={builtin:{"^id$":function(t,e,i,s){var n=i===M?T.nextid:i,r=$+"-"+n;n!==S&&n.length>0&&!o("#"+r).length?(this._id=r,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):t[e]=s},"^prerender":function(t,e,i){i&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(t,e,i){this._updateContent(i)},"^content.attr$":function(t,e,i,s){this.options.content.text===this.target.attr(s)&&this._updateContent(this.target.attr(i))},"^content.title$":function(t,e,i){return i?(i&&!this.elements.title&&this._createTitle(),this._updateTitle(i),s):this._removeTitle()},"^content.button$":function(t,e,i){this._updateButton(i)},"^content.title.(text|button)$":function(t,e,i){this.set("content."+e,i)},"^position.(my|at)$":function(t,e,i){"string"==typeof i&&(t[e]=new j(i,"at"===e))},"^position.container$":function(t,e,i){this.tooltip.appendTo(i)},"^show.ready$":function(t,e,i){i&&(!this.rendered&&this.render(M)||this.toggle(M))},"^style.classes$":function(t,e,i,s){this.tooltip.removeClass(s).addClass(i)},"^style.width|height":function(t,e,i){this.tooltip.css(e,i)},"^style.widget|content.title":function(){this._setWidget()},"^style.def":function(t,e,i){this.tooltip.toggleClass(J,!!i)},"^events.(render|show|move|hide|focus|blur)$":function(t,e,i){tooltip[(o.isFunction(i)?"":"un")+"bind"]("tooltip"+e,i)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){var t=this.options.position;tooltip.attr("tracking","mouse"===t.target&&t.adjust.mouse),this._unassignEvents(),this._assignEvents()}}},C.get=function(t){if(this.destroyed)return this;var e=l(this.options,t.toLowerCase()),i=e[0][e[1]];return i.precedance?i.string():i};var se=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,oe=/^prerender|show\.ready/i;C.set=function(t,e){if(this.destroyed)return this;var i,n=this.rendered,r=S,a=this.options;return this.checks,"string"==typeof t?(i=t,t={},t[i]=e):t=o.extend({},t),o.each(t,function(e,i){if(!n&&!oe.test(e))return delete t[e],s;var h,c=l(a,e.toLowerCase());h=c[0][c[1]],c[0][c[1]]=i&&i.nodeType?o(i):i,r=se.test(e)||r,t[e]=[c[0],c[1],i,h]}),h(a),this.positioning=M,o.each(t,o.proxy(c,this)),this.positioning=S,this.rendered&&this.tooltip[0].offsetWidth>0&&r&&this.reposition("mouse"===a.position.target?E:this.cache.event),this},C._update=function(t,e){var i=this,s=this.cache;return this.rendered&&t?(o.isFunction(t)&&(t=t.call(this.elements.target,s.event,this)||""),o.isFunction(t.then)?(s.waiting=M,t.then(function(t){return s.waiting=S,i._update(t,e)},E,function(t){return i._update(t,e)})):t===S||!t&&""!==t?S:(t.jquery&&t.length>0?e.children().detach().end().append(t.css({display:"block"})):e.html(t),s.waiting=M,(o.fn.imagesLoaded?e.imagesLoaded():o.Deferred().resolve(o([]))).done(function(t){s.waiting=S,t.length&&i.rendered&&i.tooltip[0].offsetWidth>0&&i.reposition(s.event,!t.length)}).promise())):S},C._updateContent=function(t,e){this._update(t,this.elements.content,e)},C._updateTitle=function(t,e){this._update(t,this.elements.title,e)===S&&this._removeTitle(S)},C._createTitle=function(){var t=this.elements,e=this._id+"-title";t.titlebar&&this._removeTitle(),t.titlebar=o("<div />",{"class":$+"-titlebar "+(this.options.style.widget?p("header"):"")}).append(t.title=o("<div />",{id:e,"class":$+"-title","aria-atomic":M})).insertBefore(t.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(t){o(this).toggleClass("ui-state-active ui-state-focus","down"===t.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(t){o(this).toggleClass("ui-state-hover","mouseover"===t.type)}),this.options.content.button&&this._createButton()},C._removeTitle=function(t){var e=this.elements;e.title&&(e.titlebar.remove(),e.titlebar=e.title=e.button=E,t!==S&&this.reposition())},C.reposition=function(i,s){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=M;var n,r,a=this.cache,h=this.tooltip,l=this.options.position,c=l.target,p=l.my,d=l.at,u=l.viewport,f=l.container,g=l.adjust,m=g.method.split(" "),v=h.outerWidth(S),y=h.outerHeight(S),b=0,w=0,x=h.css("position"),_={left:0,top:0},q=h[0].offsetWidth>0,T=i&&"scroll"===i.type,C=o(t),j=f[0].ownerDocument,z=this.mouse;if(o.isArray(c)&&2===c.length)d={x:L,y:B},_={left:c[0],top:c[1]};else if("mouse"===c&&(i&&i.pageX||a.event.pageX))d={x:L,y:B},i=!z||!z.pageX||!g.mouse&&i&&i.pageX?(!i||"resize"!==i.type&&"scroll"!==i.type?i&&i.pageX&&"mousemove"===i.type?i:(!g.mouse||this.options.show.distance)&&a.origin&&a.origin.pageX?a.origin:i:a.event)||i||a.event||z||{}:z,"static"!==x&&(_=f.offset()),j.body.offsetWidth!==(t.innerWidth||j.documentElement.clientWidth)&&(r=o(j.body).offset()),_={left:i.pageX-_.left+(r&&r.left||0),top:i.pageY-_.top+(r&&r.top||0)},g.mouse&&T&&(_.left-=z.scrollX-C.scrollLeft(),_.top-=z.scrollY-C.scrollTop());else{if("event"===c&&i&&i.target&&"scroll"!==i.type&&"resize"!==i.type?a.target=o(i.target):"event"!==c&&(a.target=o(c.jquery?c:elements.target)),c=a.target,c=o(c).eq(0),0===c.length)return this;c[0]===e||c[0]===t?(b=BROWSER.iOS?t.innerWidth:c.width(),w=BROWSER.iOS?t.innerHeight:c.height(),c[0]===t&&(_={top:(u||c).scrollTop(),left:(u||c).scrollLeft()})):N.imagemap&&c.is("area")?n=N.imagemap(this,c,d,N.viewport?m:S):N.svg&&c[0].ownerSVGElement?n=N.svg(this,c,d,N.viewport?m:S):(b=c.outerWidth(S),w=c.outerHeight(S),_=c.offset()),n&&(b=n.width,w=n.height,r=n.offset,_=n.position),_=this.reposition.offset(c,_,f),(BROWSER.iOS>3.1&&4.1>BROWSER.iOS||BROWSER.iOS>=4.3&&4.33>BROWSER.iOS||!BROWSER.iOS&&"fixed"===x)&&(_.left-=C.scrollLeft(),_.top-=C.scrollTop()),(!n||n&&n.adjustable!==S)&&(_.left+=d.x===V?b:d.x===D?b/2:0,_.top+=d.y===P?w:d.y===D?w/2:0)}return _.left+=g.x+(p.x===V?-v:p.x===D?-v/2:0),_.top+=g.y+(p.y===P?-y:p.y===D?-y/2:0),N.viewport?(_.adjusted=N.viewport(this,_,l,b,w,v,y),r&&_.adjusted.left&&(_.left+=r.left),r&&_.adjusted.top&&(_.top+=r.top)):_.adjusted={left:0,top:0},this._trigger("move",[_,u.elem||u],i)?(delete _.adjusted,s===S||!q||isNaN(_.left)||isNaN(_.top)||"mouse"===c||!o.isFunction(l.effect)?h.css(_):o.isFunction(l.effect)&&(l.effect.call(h,this,o.extend({},_)),h.queue(function(t){o(this).css({opacity:"",height:""}),BROWSER.ie&&this.style.removeAttribute("filter"),t()})),this.positioning=S,this):this},C.reposition.offset=function(t,i,s){function n(t,e){i.left+=e*t.scrollLeft(),i.top+=e*t.scrollTop()}if(!s[0])return i;var r,a,h,l,c=o(t[0].ownerDocument),p=!!BROWSER.ie&&"CSS1Compat"!==e.compatMode,d=s[0];do"static"!==(a=o.css(d,"position"))&&("fixed"===a?(h=d.getBoundingClientRect(),n(c,-1)):(h=o(d).position(),h.left+=parseFloat(o.css(d,"borderLeftWidth"))||0,h.top+=parseFloat(o.css(d,"borderTopWidth"))||0),i.left-=h.left+(parseFloat(o.css(d,"marginLeft"))||0),i.top-=h.top+(parseFloat(o.css(d,"marginTop"))||0),r||"hidden"===(l=o.css(d,"overflow"))||"visible"===l||(r=o(d)));while(d=d.offsetParent);return r&&(r[0]!==c[0]||p)&&n(r,1),i};var ne=(j=C.reposition.Corner=function(t,e){t=(""+t).replace(/([A-Z])/," $1").replace(/middle/gi,D).toLowerCase(),this.x=(t.match(/left|right/i)||t.match(/center/)||["inherit"])[0].toLowerCase(),this.y=(t.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase(),this.forceY=!!e;var i=t.charAt(0);this.precedance="t"===i||"b"===i?R:O}).prototype;ne.invert=function(t,e){this[t]=this[t]===L?V:this[t]===V?L:e||this[t]},ne.string=function(){var t=this.x,e=this.y;return t===e?t:this.precedance===R||this.forceY&&"center"!==e?e+" "+t:t+" "+e},ne.abbrev=function(){var t=this.string().split(" ");return t[0].charAt(0)+(t[1]&&t[1].charAt(0)||"")},ne.clone=function(){return new j(this.string(),this.forceY)},C.toggle=function(t,i){var s=this.cache,n=this.options,r=this.tooltip;if(i){if(/over|enter/.test(i.type)&&/out|leave/.test(s.event.type)&&n.show.target.add(i.target).length===n.show.target.length&&r.has(i.relatedTarget).length)return this;s.event=o.extend({},i)}if(this.waiting&&!t&&(this.hiddenDuringWait=M),!this.rendered)return t?this.render(1):this;if(this.destroyed||this.disabled)return this;var a,h,l=t?"show":"hide",c=this.options[l],p=(this.options[t?"hide":"show"],this.options.position),d=this.options.content,u=this.tooltip.css("width"),f=this.tooltip[0].offsetWidth>0,g=t||1===c.target.length,m=!i||2>c.target.length||s.target[0]===i.target;return(typeof t).search("boolean|number")&&(t=!f),a=!r.is(":animated")&&f===t&&m,h=a?E:!!this._trigger(l,[90]),h!==S&&t&&this.focus(i),!h||a?this:(o.attr(r[0],"aria-hidden",!t),t?(s.origin=o.extend({},this.mouse),o.isFunction(d.text)&&this._updateContent(d.text,S),o.isFunction(d.title)&&this._updateTitle(d.title,S),!W&&"mouse"===p.target&&p.adjust.mouse&&(o(e).bind("mousemove."+$,this._storeMouse),W=M),u||r.css("width",r.outerWidth(S)),this.reposition(i,arguments[2]),u||r.css("width",""),c.solo&&("string"==typeof c.solo?o(c.solo):o(G,c.solo)).not(r).not(c.target).qtip("hide",o.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete s.origin,W&&!o(G+'[tracking="true"]:visible',c.solo).not(r).length&&(o(e).unbind("mousemove."+$),W=S),this.blur(i)),after=o.proxy(function(){t?(BROWSER.ie&&r[0].style.removeAttribute("filter"),r.css("overflow",""),"string"==typeof c.autofocus&&o(this.options.show.autofocus,r).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):r.css({display:"",visibility:"",opacity:"",left:"",top:""}),this._trigger(t?"visible":"hidden")},this),c.effect===S||g===S?(r[l](),after()):o.isFunction(c.effect)?(r.stop(1,1),c.effect.call(r,this),r.queue("fx",function(t){after(),t()})):r.fadeTo(90,t?1:0,after),t&&c.target.trigger("qtip-"+this.id+"-inactive"),this)},C.show=function(t){return this.toggle(M,t)},C.hide=function(t){return this.toggle(S,t)},C.focus=function(t){if(!this.rendered||this.destroyed)return this;var e=o(G),i=this.tooltip,s=parseInt(i[0].style.zIndex,10),n=T.zindex+e.length;return i.hasClass(K)||this._trigger("focus",[n],t)&&(s!==n&&(e.each(function(){this.style.zIndex>s&&(this.style.zIndex=this.style.zIndex-1)}),e.filter("."+K).qtip("blur",t)),i.addClass(K)[0].style.zIndex=n),this},C.blur=function(t){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass(K),this._trigger("blur",[this.tooltip.css("zIndex")],t),this)},C.disable=function(t){return this.destroyed?this:("boolean"!=typeof t&&(t=!(this.tooltip.hasClass(te)||this.disabled)),this.rendered&&this.tooltip.toggleClass(te,t).attr("aria-disabled",t),this.disabled=!!t,this)},C.enable=function(){return this.disable(S)},C._createButton=function(){var t=this,e=this.elements,i=e.tooltip,s=this.options.content.button,n="string"==typeof s,r=n?s:"Close tooltip";e.button&&e.button.remove(),e.button=s.jquery?s:o("<a />",{"class":"qtip-close "+(this.options.style.widget?"":$+"-icon"),title:r,"aria-label":r}).prepend(o("<span />",{"class":"ui-icon ui-icon-close",html:"&times;"})),e.button.appendTo(e.titlebar||i).attr("role","button").click(function(e){return i.hasClass(te)||t.hide(e),S})},C._updateButton=function(t){if(!this.rendered)return S;var e=this.elements.button;t?this._createButton():e.remove()},C._setWidget=function(){var t=this.options.style.widget,e=this.elements,i=e.tooltip,s=i.hasClass(te);i.removeClass(te),te=t?"ui-state-disabled":"qtip-disabled",i.toggleClass(te,s),i.toggleClass("ui-helper-reset "+p(),t).toggleClass(J,this.options.style.def&&!t),e.content&&e.content.toggleClass(p("content"),t),e.titlebar&&e.titlebar.toggleClass(p("header"),t),e.button&&e.button.toggleClass($+"-icon",!t)},C._storeMouse=function(i){this.mouse={pageX:i.pageX,pageY:i.pageY,type:"mousemove",scrollX:t.pageXOffset||e.body.scrollLeft||e.documentElement.scrollLeft,scrollY:t.pageYOffset||e.body.scrollTop||e.documentElement.scrollTop}},C._bind=function(t,e,i,s,n){var r="."+this._id+(s?"-"+s:"");e.length&&o(t).bind((e.split?e:e.join(r+" "))+r,o.proxy(i,n||this))},C._unbind=function(t,e){o(t).unbind("."+this._id+(e?"-"+e:""))};var re="."+$;o(function(){m(G,["mouseenter","mouseleave"],function(t){var e="mouseenter"===t.type,i=o(t.currentTarget),s=o(t.relatedTarget||t.target),n=this.options;e?(this.focus(t),i.hasClass(Q)&&!i.hasClass(te)&&clearTimeout(this.timers.hide)):"mouse"===n.position.target&&n.hide.event&&n.show.target&&!s.closest(n.show.target[0]).length&&this.hide(t),i.toggleClass(Z,e)}),m("["+Y+"]",U,f)}),C._trigger=function(t,e,i){var s=o.Event("tooltip"+t);return s.originalEvent=i&&o.extend({},i)||this.cache.event||E,this.triggering=M,this.tooltip.trigger(s,[this].concat(e||[])),this.triggering=S,!s.isDefaultPrevented()},C._assignEvents=function(){var i=this.options,n=i.position,r=this.tooltip,a=i.show.target,h=i.hide.target,l=n.container,c=n.viewport,p=o(e),m=(o(e.body),o(t)),v=i.show.event?o.trim(""+i.show.event).split(" "):[],y=i.hide.event?o.trim(""+i.hide.event).split(" "):[],b=[];/mouse(out|leave)/i.test(i.hide.event)&&"window"===i.hide.leave&&this._bind(p,["mouseout","blur"],function(t){/select|option/.test(t.target.nodeName)||t.relatedTarget||this.hide(t)}),i.hide.fixed?h=h.add(r.addClass(Q)):/mouse(over|enter)/i.test(i.show.event)&&this._bind(h,"mouseleave",function(){clearTimeout(this.timers.show)}),(""+i.hide.event).indexOf("unfocus")>-1&&this._bind(l.closest("html"),["mousedown","touchstart"],function(t){var e=o(t.target),i=this.rendered&&!this.tooltip.hasClass(te)&&this.tooltip[0].offsetWidth>0,s=e.parents(G).filter(this.tooltip[0]).length>0;e[0]===this.target[0]||e[0]===this.tooltip[0]||s||this.target.has(e[0]).length||!i||this.hide(t)}),"number"==typeof i.hide.inactive&&(this._bind(a,"qtip-"+this.id+"-inactive",f),this._bind(h.add(r),T.inactiveEvents,f,"-inactive")),y=o.map(y,function(t){var e=o.inArray(t,v);return e>-1&&h.add(a).length===h.length?(b.push(v.splice(e,1)[0]),s):t}),this._bind(a,v,d),this._bind(h,y,u),this._bind(a,b,function(t){(this.tooltip[0].offsetWidth>0?u:d).call(this,t)}),this._bind(a.add(r),"mousemove",function(t){if("number"==typeof i.hide.distance){var e=this.cache.origin||{},s=this.options.hide.distance,o=Math.abs;(o(t.pageX-e.pageX)>=s||o(t.pageY-e.pageY)>=s)&&this.hide(t)}this._storeMouse(t)}),"mouse"===n.target&&n.adjust.mouse&&(i.hide.event&&this._bind(a,["mouseenter","mouseleave"],function(t){this.cache.onTarget="mouseenter"===t.type}),this._bind(p,"mousemove",function(t){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass(te)&&this.tooltip[0].offsetWidth>0&&this.reposition(t)})),(n.adjust.resize||c.length)&&this._bind(o.event.special.resize?c:m,"resize",g),n.adjust.scroll&&this._bind(m.add(n.container),"scroll",g)},C._unassignEvents=function(){var i=[this.options.show.target[0],this.options.hide.target[0],this.rendered&&this.tooltip[0],this.options.position.container[0],this.options.position.viewport[0],this.options.position.container.closest("html")[0],t,e];this.rendered?this._unbind(o([]).pushStack(o.grep(i,function(t){return"object"==typeof t}))):o(i[0]).unbind("."+this._id+"-create")},T=o.fn.qtip=function(t,e,i){var n=(""+t).toLowerCase(),r=E,a=o.makeArray(arguments).slice(1),l=a[a.length-1],c=this[0]?o.data(this[0],$):E;return!arguments.length&&c||"api"===n?c:"string"==typeof t?(this.each(function(){var t=o.data(this,$);if(!t)return M;if(l&&l.timeStamp&&(t.cache.event=l),!e||"option"!==n&&"options"!==n)t[n]&&t[n].apply(t,a);else{if(i===s&&!o.isPlainObject(e))return r=t.get(e),S;t.set(e,i)}}),r!==E?r:this):"object"!=typeof t&&arguments.length?s:(c=h(o.extend(M,{},t)),T.bind.call(this,c,l))},T.bind=function(t,e){return this.each(function(i){function n(t){function e(){c.render("object"==typeof t||r.show.ready),a.show.add(a.hide).unbind(l)}return c.disabled?S:(c.cache.event=o.extend({},t),c.cache.target=t?o(t.target):[s],r.show.delay>0?(clearTimeout(c.timers.show),c.timers.show=setTimeout(e,r.show.delay),h.show!==h.hide&&a.hide.bind(h.hide,function(){clearTimeout(c.timers.show)})):e(),s)}var r,a,h,l,c,p;return p=o.isArray(t.id)?t.id[i]:t.id,p=!p||p===S||1>p.length||T.api[p]?T.nextid++:p,l=".qtip-"+p+"-create",c=v(o(this),p,t),c===S?M:(T.api[p]=c,r=c.options,o.each(N,function(){"initialize"===this.initialize&&this(c)}),a={show:r.show.target,hide:r.hide.target},h={show:o.trim(""+r.show.event).replace(/ /g,l+" ")+l,hide:o.trim(""+r.hide.event).replace(/ /g,l+" ")+l},/mouse(over|enter)/i.test(h.show)&&!/mouse(out|leave)/i.test(h.hide)&&(h.hide+=" mouseleave"+l),a.show.bind("mousemove"+l,function(t){c._storeMouse(t),c.cache.onTarget=M}),a.show.bind(h.show,n),(r.show.ready||r.prerender)&&n(e),s)})},T.api={},o.each({attr:function(t,e){if(this.length){var i=this[0],s="title",n=o.data(i,"qtip");if(t===s&&n&&"object"==typeof n&&n.options.suppress)return 2>arguments.length?o.attr(i,ie):(n&&n.options.content.attr===s&&n.cache.attr&&n.set("content.text",e),this.attr(ie,e))}return o.fn["attr"+ee].apply(this,arguments)},clone:function(t){var e=(o([]),o.fn["clone"+ee].apply(this,arguments));return t||e.filter("["+ie+"]").attr("title",function(){return o.attr(this,ie)}).removeAttr(ie),e}},function(t,e){if(!e||o.fn[t+ee])return M;var i=o.fn[t+ee]=o.fn[t];o.fn[t]=function(){return e.apply(this,arguments)||i.apply(this,arguments)}}),o.ui||(o["cleanData"+ee]=o.cleanData,o.cleanData=function(t){for(var e,i=0;(e=o(t[i])).length;i++)if(e.attr(X))try{e.triggerHandler("removeqtip")}catch(s){}o["cleanData"+ee].apply(this,arguments)}),T.version="2.1.1",T.nextid=0,T.inactiveEvents=U,T.zindex=15e3,T.defaults={prerender:S,id:S,overwrite:M,suppress:M,content:{text:M,attr:"title",title:S,button:S},position:{my:"top left",at:"bottom right",target:S,container:S,viewport:S,adjust:{x:0,y:0,mouse:M,scroll:M,resize:M,method:"flipinvert flipinvert"},effect:function(t,e){o(this).animate(e,{duration:200,queue:S})}},show:{target:S,event:"mouseenter",effect:M,delay:90,solo:S,ready:S,autofocus:S},hide:{target:S,event:"mouseleave",effect:M,delay:0,fixed:S,inactive:S,leave:"window",distance:S},style:{classes:"",widget:S,width:S,height:S,def:M},events:{render:E,move:E,show:E,hide:E,toggle:E,visible:E,hidden:E,focus:E,blur:E}};var ae,he="margin",le="border",ce="color",pe="background-color",de="transparent",ue=" !important",fe=!!e.createElement("canvas").getContext,ge=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,me={},ve=["Webkit","O","Moz","ms"];fe||(createVML=function(t,e,i){return"<qtipvml:"+t+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(e||"")+' style="behavior: url(#default#VML); '+(i||"")+'" />'}),o.extend(x.prototype,{init:function(t){var e,i;i=this.element=t.elements.tip=o("<div />",{"class":$+"-tip"}).prependTo(t.tooltip),fe?(e=o("<canvas />").appendTo(this.element)[0].getContext("2d"),e.lineJoin="miter",e.miterLimit=100,e.save()):(e=createVML("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(e+e),t._bind(o("*",i).add(i),["click","mousedown"],function(t){t.stopPropagation()},this._ns)),t._bind(t.tooltip,"tooltipmove",this.reposition,this._ns,this),this.create()},_swapDimensions:function(){this.size[0]=this.options.height,this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width,this.size[1]=this.options.height},_useTitle:function(t){var e=this.qtip.elements.titlebar;return e&&(t.y===B||t.y===D&&this.element.position().top+this.size[1]/2+this.options.offset<e.outerHeight(M))},_parseCorner:function(t){var e=this.qtip.options.position.my;return t===S||e===S?t=S:t===M?t=new j(e.string()):t.string||(t=new j(t),t.fixed=M),t},_parseWidth:function(t,e,i){var s=this.qtip.elements,o=le+y(e)+"Width";return(i?w(i,o):w(s.content,o)||w(this._useTitle(t)&&s.titlebar||s.content,o)||w(tooltip,o))||0},_parseRadius:function(t){var e=this.qtip.elements,i=le+y(t.y)+y(t.x)+"Radius";return 9>BROWSER.ie?0:w(this._useTitle(t)&&e.titlebar||e.content,i)||w(e.tooltip,i)||0},_invalidColour:function(t,e,i){var s=t.css(e);return!s||i&&s===t.css(i)||ge.test(s)?S:s},_parseColours:function(t){var e=this.qtip.elements,i=this.element.css("cssText",""),s=le+y(t[t.precedance])+y(ce),n=this._useTitle(t)&&e.titlebar||e.content,r=this._invalidColour,a=[];return a[0]=r(i,pe)||r(n,pe)||r(e.content,pe)||r(tooltip,pe)||i.css(pe),a[1]=r(i,s,ce)||r(n,s,ce)||r(e.content,s,ce)||r(tooltip,s,ce)||tooltip.css(s),o("*",i).add(i).css("cssText",pe+":"+de+ue+";"+le+":0"+ue+";"),a},_calculateSize:function(t){var e,i,s,o=t.precedance===R,n=this.options[o?"height":"width"],r=this.options[o?"width":"height"],a="c"===t.abbrev(),h=n*(a?.5:1),l=Math.pow,c=Math.round,p=Math.sqrt(l(h,2)+l(r,2)),d=[this.border/h*p,this.border/r*p];return d[2]=Math.sqrt(l(d[0],2)-l(this.border,2)),d[3]=Math.sqrt(l(d[1],2)-l(this.border,2)),e=p+d[2]+d[3]+(a?0:d[0]),i=e/p,s=[c(i*n),c(i*r)],o?s:s.reverse()},_calculateTip:function(t){var e=this.size[0],i=this.size[1],s=Math.ceil(e/2),o=Math.ceil(i/2),n={br:[0,0,e,i,e,0],bl:[0,0,e,0,0,i],tr:[0,i,e,0,e,i],tl:[0,0,0,i,e,i],tc:[0,i,s,0,e,i],bc:[0,0,e,0,s,i],rc:[0,0,e,o,0,i],lc:[e,0,e,i,0,o]};return n.lt=n.br,n.rt=n.bl,n.lb=n.tr,n.rb=n.tl,n[t.abbrev()]},create:function(){var t=this.corner=(fe||BROWSER.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=t.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(t,e){if(!this.enabled)return this;var i,s,n,r,a,h,l,c=(this.qtip.elements,this.element),p=c.children(),d=this.options,u=this.size,f=d.mimic,g=Math.round;t||(t=this.qtip.cache.corner||this.corner),f===S?f=t:(f=new j(f),f.precedance=t.precedance,"inherit"===f.x?f.x=t.x:"inherit"===f.y?f.y=t.y:f.x===f.y&&(f[t.precedance]=t[t.precedance])),s=f.precedance,t.precedance===O?this._swapDimensions():this._resetDimensions(),i=this.color=this._parseColours(t),i[1]!==de?(l=this.border=this._parseWidth(t,t[t.precedance]),d.border&&1>l&&(i[0]=i[1]),this.border=l=d.border!==M?d.border:l):this.border=l=0,r=this._calculateTip(f),h=this.size=this._calculateSize(t),c.css({width:h[0],height:h[1],lineHeight:h[1]+"px"}),a=t.precedance===R?[g(f.x===L?l:f.x===V?h[0]-u[0]-l:(h[0]-u[0])/2),g(f.y===B?h[1]-u[1]:0)]:[g(f.x===L?h[0]-u[0]:0),g(f.y===B?l:f.y===P?h[1]-u[1]-l:(h[1]-u[1])/2)],fe?(p.attr(I,h[0]).attr(k,h[1]),n=p[0].getContext("2d"),n.restore(),n.save(),n.clearRect(0,0,3e3,3e3),n.fillStyle=i[0],n.strokeStyle=i[1],n.lineWidth=2*l,n.translate(a[0],a[1]),n.beginPath(),n.moveTo(r[0],r[1]),n.lineTo(r[2],r[3]),n.lineTo(r[4],r[5]),n.closePath(),l&&("border-box"===tooltip.css("background-clip")&&(n.strokeStyle=i[0],n.stroke()),n.strokeStyle=i[1],n.stroke()),n.fill()):(r="m"+r[0]+","+r[1]+" l"+r[2]+","+r[3]+" "+r[4]+","+r[5]+" xe",a[2]=l&&/^(r|b)/i.test(t.string())?8===BROWSER.ie?2:1:0,p.css({coordsize:u[0]+l+" "+(u[1]+l),antialias:""+(f.string().indexOf(D)>-1),left:a[0]-a[2]*Number(s===O),top:a[1]-a[2]*Number(s===R),width:u[0]+l,height:u[1]+l}).each(function(t){var e=o(this);e[e.prop?"prop":"attr"]({coordsize:u[0]+l+" "+(u[1]+l),path:r,fillcolor:i[0],filled:!!t,stroked:!t}).toggle(!(!l&&!t)),!t&&e.html(createVML("stroke",'weight="'+2*l+'px" color="'+i[1]+'" miterlimit="1000" joinstyle="miter"'))})),e!==S&&this.calculate(t)},calculate:function(t){if(!this.enabled)return S;var e,i,s,n=this,r=this.qtip.elements,a=this.element,h=this.options.offset,l=(this.qtip.tooltip.hasClass("ui-widget"),{});return t=t||this.corner,e=t.precedance,i=this._calculateSize(t),s=[t.x,t.y],e===O&&s.reverse(),o.each(s,function(s,o){var a,c,p;o===D?(a=e===R?L:B,l[a]="50%",l[he+"-"+a]=-Math.round(i[e===R?0:1]/2)+h):(a=n._parseWidth(t,o,r.tooltip),c=n._parseWidth(t,o,r.content),p=n._parseRadius(t),l[o]=Math.max(-n.border,s?c:h+(p>a?p:-a)))}),l[t[e]]-=i[e===O?0:1],a.css({margin:"",top:"",bottom:"",left:"",right:""}).css(l),l},reposition:function(t,e,i){if(this.enabled){var o,n,r=e.cache,a=this.corner.clone(),h=i.adjusted,l=e.options.position.adjust.method.split(" "),c=l[0],p=l[1]||l[0],d={left:S,top:S,x:0,y:0},u={};this.corner.fixed!==M&&(c===F&&a.precedance===O&&h.left&&a.y!==D?a.precedance=a.precedance===O?R:O:c!==F&&h.left&&(a.x=a.x===D?h.left>0?L:V:a.x===L?V:L),p===F&&a.precedance===R&&h.top&&a.x!==D?a.precedance=a.precedance===R?O:R:p!==F&&h.top&&(a.y=a.y===D?h.top>0?B:P:a.y===B?P:B),a.string()===r.corner.string()||r.cornerTop===h.top&&r.cornerLeft===h.left||this.update(a,S)),o=this.calculate(a,h),o.right!==s&&(o.left=-o.right),o.bottom!==s&&(o.top=-o.bottom),o.user=this.offset,(d.left=c===F&&!!h.left)&&(a.x===D?u[he+"-left"]=d.x=o[he+"-left"]-h.left:(n=o.right!==s?[h.left,-o.left]:[-h.left,o.left],(d.x=Math.max(n[0],n[1]))>n[0]&&(i.left-=h.left,d.left=S),u[o.right!==s?V:L]=d.x)),(d.top=p===F&&!!h.top)&&(a.y===D?u[he+"-top"]=d.y=o[he+"-top"]-h.top:(n=o.bottom!==s?[h.top,-o.top]:[-h.top,o.top],(d.y=Math.max(n[0],n[1]))>n[0]&&(i.top-=h.top,d.top=S),u[o.bottom!==s?P:B]=d.y)),this.element.css(u).toggle(!(d.x&&d.y||a.x===D&&d.y||a.y===D&&d.x)),i.left-=o.left.charAt?o.user:c!==F||d.top||!d.left&&!d.top?o.left:0,i.top-=o.top.charAt?o.user:p!==F||d.left||!d.left&&!d.top?o.top:0,r.cornerLeft=h.left,r.cornerTop=h.top,r.corner=a.clone()
3
  }},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns),this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}}),ae=N.tip=function(t){return new x(t,t.options.style.tip)},ae.initialize="render",ae.sanitize=function(t){t.style&&"tip"in t.style&&(opts=t.style.tip,"object"!=typeof opts&&(opts=t.style.tip={corner:opts}),/string|boolean/i.test(typeof opts.corner)||(opts.corner=M))},z.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create(),this.qtip.reposition()},"^style.tip.(height|width)$":function(t){this.size=size=[t.width,t.height],this.update(),this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}},o.extend(M,T.defaults,{style:{tip:{corner:M,mimic:S,width:6,height:6,border:M,offset:0}}});var ye,be,we="qtip-modal",xe="."+we;be=function(){function i(t){if(o.expr[":"].focusable)return o.expr[":"].focusable;var e,i,s,n=!isNaN(o.attr(t,"tabindex")),r=t.nodeName&&t.nodeName.toLowerCase();return"area"===r?(e=t.parentNode,i=e.name,t.href&&i&&"map"===e.nodeName.toLowerCase()?(s=o("img[usemap=#"+i+"]")[0],!!s&&s.is(":visible")):!1):/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||n:n}function s(t){1>p.length&&t.length?t.not("body").blur():p.first().focus()}function n(t){if(l.is(":visible")){var e,i=o(t.target),n=r.tooltip,h=i.closest(G);e=1>h.length?S:parseInt(h[0].style.zIndex,10)>parseInt(n[0].style.zIndex,10),e||i.closest(G)[0]===n[0]||s(i),a=t.target===p[p.length-1]}}var r,a,h,l,c=this,p={};o.extend(c,{init:function(){function i(){var t=o(this);l.css({height:t.height(),width:t.width()})}return l=c.elem=o("<div />",{id:"qtip-overlay",html:"<div></div>",mousedown:function(){return S}}).hide(),o(t).bind("resize"+xe,i),i(),o(e.body).bind("focusin"+xe,n),o(e).bind("keydown"+xe,function(t){r&&r.options.show.modal.escape&&27===t.keyCode&&r.hide(t)}),l.bind("click"+xe,function(t){r&&r.options.show.modal.blur&&r.hide(t)}),c},update:function(t){r=t,p=t.options.show.modal.stealfocus!==S?t.tooltip.find("*").filter(function(){return i(this)}):[]},toggle:function(t,i,n){var a=(o(e.body),t.tooltip),p=t.options.show.modal,d=p.effect,u=i?"show":"hide",f=l.is(":visible"),g=o(xe).filter(":visible:not(:animated)").not(a);return c.update(t),i&&p.stealfocus!==S&&s(o(":focus")),l.toggleClass("blurs",p.blur),i&&l.css({left:0,top:0}).appendTo(e.body),l.is(":animated")&&f===i&&h!==S||!i&&g.length?c:(l.stop(M,S),o.isFunction(d)?d.call(l,i):d===S?l[u]():l.fadeTo(parseInt(n,10)||90,i?1:0,function(){i||l.hide()}),i||l.queue(function(t){l.css({left:"",top:""}),o(xe).length||l.detach(),t()}),h=i,r.destroyed&&(r=E),c)}}),c.init()},be=new be,o.extend(_.prototype,{init:function(t){var e=t.tooltip;return this.options.on?(t.elements.overlay=be.elem,e.addClass(we).css("z-index",N.modal.zindex+o(xe).length),t._bind(e,["tooltipshow","tooltiphide"],function(t,i,s){var n=t.originalEvent;if(t.target===e[0])if(n&&"tooltiphide"===t.type&&/mouse(leave|enter)/.test(n.type)&&o(n.relatedTarget).closest(overlay[0]).length)try{t.preventDefault()}catch(r){}else(!n||n&&!n.solo)&&this.toggle(t,"tooltipshow"===t.type,s)},this._ns,this),t._bind(e,"tooltipfocus",function(t,i){if(!t.isDefaultPrevented()&&t.target===e[0]){var s=o(xe),n=N.modal.zindex+s.length,r=parseInt(e[0].style.zIndex,10);be.elem[0].style.zIndex=n-1,s.each(function(){this.style.zIndex>r&&(this.style.zIndex-=1)}),s.filter("."+K).qtip("blur",t.originalEvent),e.addClass(K)[0].style.zIndex=n,be.update(i);try{t.preventDefault()}catch(a){}}},this._ns,this),t._bind(e,"tooltiphide",function(t){t.target===e[0]&&o(xe).filter(":visible").not(e).last().qtip("focus",t)},this._ns,this),s):this},toggle:function(t,e,i){return t&&t.isDefaultPrevented()?this:(be.toggle(this.qtip,!!e,i),s)},destroy:function(){this.qtip.tooltip.removeClass(we),this.qtip._unbind(this.qtip.tooltip,this._ns),be.toggle(this.qtip,S),delete this.qtip.elements.overlay}}),ye=N.modal=function(t){return new _(t,t.options.show.modal)},ye.sanitize=function(t){t.show&&("object"!=typeof t.show.modal?t.show.modal={on:!!t.show.modal}:t.show.modal.on===s&&(t.show.modal.on=M))},ye.zindex=T.zindex-200,ye.initialize="render",z.modal={"^show.modal.(on|blur)$":function(){this.destroy(),this.init(),this.qtip.elems.overlay.toggle(this.qtip.tooltip[0].offsetWidth>0)}},o.extend(M,T.defaults,{show:{modal:{on:S,effect:M,blur:M,stealfocus:M,escape:M}}}),N.viewport=function(i,s,o,n,r,a,h){function l(t,e,i,o,n,r,a,h,l){var c=s[n],d=g[t],u=m[t],f=i===F,v=-_.offset[n]+x.offset[n]+x["scroll"+n],y=d===n?l:d===r?-l:-l/2,b=u===n?h:u===r?-h:-h/2,w=T&&T.size?T.size[a]||0:0,q=T&&T.corner&&T.corner.precedance===t&&!f?w:0,C=v-c+q,j=c+l-x[a]-v+q,z=y-(g.precedance===t||d===g[e]?b:0)-(u===D?h/2:0);return f?(q=T&&T.corner&&T.corner.precedance===e?w:0,z=(d===n?1:-1)*y-q,s[n]+=C>0?C:j>0?-j:0,s[n]=Math.max(-_.offset[n]+x.offset[n]+(q&&T.corner[t]===D?T.offset:0),c-z,Math.min(Math.max(-_.offset[n]+x.offset[n]+x[a],c+z),s[n]))):(o*=i===A?2:0,C>0&&(d!==n||j>0)?(s[n]-=z+o,p.invert(t,n)):j>0&&(d!==r||C>0)&&(s[n]-=(d===D?-z:z)+o,p.invert(t,r)),v>s[n]&&-s[n]>j&&(s[n]=c,p=g.clone())),s[n]-c}var c,p,d,u=o.target,f=i.elements.tooltip,g=o.my,m=o.at,v=o.adjust,y=v.method.split(" "),b=y[0],w=y[1]||y[0],x=o.viewport,_=o.container,q=i.cache,T=i.plugins.tip,C={left:0,top:0};return x.jquery&&u[0]!==t&&u[0]!==e.body&&"none"!==v.method?(c="fixed"===f.css("position"),x={elem:x,width:x[0]===t?x.width():x.outerWidth(S),height:x[0]===t?x.height():x.outerHeight(S),scrollleft:c?0:x.scrollLeft(),scrolltop:c?0:x.scrollTop(),offset:x.offset()||{left:0,top:0}},_={elem:_,scrollLeft:_.scrollLeft(),scrollTop:_.scrollTop(),offset:_.offset()||{left:0,top:0}},("shift"!==b||"shift"!==w)&&(p=g.clone()),C={left:"none"!==b?l(O,R,b,v.x,L,V,I,n,a):0,top:"none"!==w?l(R,O,w,v.y,B,P,k,r,h):0},p&&q.lastClass!==(d=$+"-pos-"+p.abbrev())&&f.removeClass(i.cache.lastClass).addClass(i.cache.lastClass=d),C):C},N.polys={polygon:function(t,e){var i,s,o,n={width:0,height:0,position:{top:1e10,right:0,bottom:0,left:1e10},adjustable:S},r=0,a=[],h=1,l=1,c=0,p=0;for(r=t.length;r--;)i=[parseInt(t[--r],10),parseInt(t[r+1],10)],i[0]>n.position.right&&(n.position.right=i[0]),i[0]<n.position.left&&(n.position.left=i[0]),i[1]>n.position.bottom&&(n.position.bottom=i[1]),i[1]<n.position.top&&(n.position.top=i[1]),a.push(i);if(s=n.width=Math.abs(n.position.right-n.position.left),o=n.height=Math.abs(n.position.bottom-n.position.top),"c"===e.abbrev())n.position={left:n.position.left+n.width/2,top:n.position.top+n.height/2};else{for(;s>0&&o>0&&h>0&&l>0;)for(s=Math.floor(s/2),o=Math.floor(o/2),e.x===L?h=s:e.x===V?h=n.width-s:h+=Math.floor(s/2),e.y===B?l=o:e.y===P?l=n.height-o:l+=Math.floor(o/2),r=a.length;r--&&!(2>a.length);)c=a[r][0]-n.position.left,p=a[r][1]-n.position.top,(e.x===L&&c>=h||e.x===V&&h>=c||e.x===D&&(h>c||c>n.width-h)||e.y===B&&p>=l||e.y===P&&l>=p||e.y===D&&(l>p||p>n.height-l))&&a.splice(r,1);n.position={left:a[0][0],top:a[0][1]}}return n},rect:function(t,e,i,s){return{width:Math.abs(i-t),height:Math.abs(s-e),position:{left:Math.min(t,i),top:Math.min(e,s)}}},_angles:{tc:1.5,tr:7/4,tl:5/4,bc:.5,br:.25,bl:.75,rc:2,lc:1,c:0},ellipse:function(t,e,i,s,o){var n=N.polys._angles[o.abbrev()],r=i*Math.cos(n*Math.PI),a=s*Math.sin(n*Math.PI);return{width:2*i-Math.abs(r),height:2*s-Math.abs(a),position:{left:t+r,top:e+a},adjustable:S}},circle:function(t,e,i,s){return N.polys.ellipse(t,e,i,i,s)}},N.svg=function(t,s,n){for(var r,a,h,l=o(e),c=s[0],p={};!c.getBBox;)c=c.parentNode;if(!c.getBBox||!c.parentNode)return S;switch(c.nodeName){case"rect":a=N.svg.toPixel(c,c.x.baseVal.value,c.y.baseVal.value),h=N.svg.toPixel(c,c.x.baseVal.value+c.width.baseVal.value,c.y.baseVal.value+c.height.baseVal.value),p=N.polys.rect(a[0],a[1],h[0],h[1],n);break;case"ellipse":case"circle":a=N.svg.toPixel(c,c.cx.baseVal.value,c.cy.baseVal.value),p=N.polys.ellipse(a[0],a[1],(c.rx||c.r).baseVal.value,(c.ry||c.r).baseVal.value,n);break;case"line":case"polygon":case"polyline":for(points=c.points||[{x:c.x1.baseVal.value,y:c.y1.baseVal.value},{x:c.x2.baseVal.value,y:c.y2.baseVal.value}],p=[],i=-1,len=points.numberOfItems||points.length;len>++i;)next=points.getItem?points.getItem(i):points[i],p.push.apply(p,N.svg.toPixel(c,next.x,next.y));p=N.polys.polygon(p,n);break;default:if(r=c.getBBox(),mtx=c.getScreenCTM(),root=c.farthestViewportElement||c,!root.createSVGPoint)return S;point=root.createSVGPoint(),point.x=r.x,point.y=r.y,tPoint=point.matrixTransform(mtx),p.position={left:tPoint.x,top:tPoint.y},point.x+=r.width,point.y+=r.height,tPoint=point.matrixTransform(mtx),p.width=tPoint.x-p.position.left,p.height=tPoint.y-p.position.top}return p.position.left+=l.scrollLeft(),p.position.top+=l.scrollTop(),p},N.svg.toPixel=function(t,e,i){var s,o,n=t.getScreenCTM(),r=t.farthestViewportElement||t;return r.createSVGPoint?(o=r.createSVGPoint(),o.x=e,o.y=i,s=o.matrixTransform(n),[s.x,s.y]):S},N.imagemap=function(t,e,i){e.jquery||(e=o(e));var s,n,r,a=e.attr("shape").toLowerCase().replace("poly","polygon"),h=o('img[usemap="#'+e.parent("map").attr("name")+'"]'),l=e.attr("coords"),c=l.split(",");if(!h.length)return S;if("polygon"===a)result=N.polys.polygon(c,i);else{if(!N.polys[a])return S;for(r=-1,len=c.length,n=[];len>++r;)n.push(parseInt(c[r],10));result=N.polys[a].apply(this,n.concat(i))}return s=h.offset(),s.left+=Math.ceil((h.outerWidth(S)-h.width())/2),s.top+=Math.ceil((h.outerHeight(S)-h.height())/2),result.position.left+=s.left,result.position.top+=s.top,result};var _e,qe='<iframe class="qtip-bgiframe" frameborder="0" tabindex="-1" src="javascript:\'\';" style="display:block; position:absolute; z-index:-1; filter:alpha(opacity=0); -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";"></iframe>';o.extend(q.prototype,{_scroll:function(){var e=this.qtip.elements.overlay;e&&(e[0].style.top=o(t).scrollTop()+"px")},init:function(i){var s=i.tooltip;1>o("select, object").length&&(this.bgiframe=i.elements.bgiframe=o(qe).appendTo(s),i._bind(s,"tooltipmove",this.adjustBGIFrame,this._ns,this)),this.redrawContainer=o("<div/>",{id:$+"-rcontainer"}).appendTo(e.body),i.elements.overlay&&i.elements.overlay.addClass("qtipmodal-ie6fix")&&(i._bind(t,["scroll","resize"],this._scroll,this._ns,this),i._bind(s,["tooltipshow"],this._scroll,this._ns,this)),this.redraw()},adjustBGIFrame:function(){var t,e,i=this.qtip.tooltip,s={height:i.outerHeight(S),width:i.outerWidth(S)},o=this.qtip.plugins.tip,n=this.qtip.elements.tip;e=parseInt(i.css("borderLeftWidth"),10)||0,e={left:-e,top:-e},o&&n&&(t="x"===o.corner.precedance?[I,L]:[k,B],e[t[1]]-=n[t[0]]()),this.bgiframe.css(e).css(s)},redraw:function(){if(1>this.qtip.rendered||this.drawing)return self;var t,e,i,s,o=this.qtip.tooltip,n=this.qtip.options.style,r=this.qtip.options.position.container;return this.qtip.drawing=1,n.height&&o.css(k,n.height),n.width?o.css(I,n.width):(o.css(I,"").appendTo(this.redrawContainer),e=o.width(),1>e%2&&(e+=1),i=o.css("maxWidth")||"",s=o.css("minWidth")||"",t=(i+s).indexOf("%")>-1?r.width()/100:0,i=(i.indexOf("%")>-1?t:1)*parseInt(i,10)||e,s=(s.indexOf("%")>-1?t:1)*parseInt(s,10)||0,e=i+s?Math.min(Math.max(e,s),i):e,o.css(I,Math.round(e)).appendTo(r)),this.drawing=0,self},destroy:function(){this.bgiframe&&this.bgiframe.remove(),this.qtip._unbind([t,this.qtip.tooltip],this._ns)}}),_e=N.ie6=function(t){return 6===BROWSER.ie?new q(t):S},_e.initialize="render",z.ie6={"^content|style$":function(){this.redraw()}}})})(window,document);
assets/js/simpleslider.js CHANGED
@@ -1,11 +1,11 @@
1
- /*
2
- * jQuery Simple Slider: Unobtrusive Numerical Slider
3
- * Version 1.0.0
4
- *
5
- * Copyright (c) 2013 James Smith (http://loopj.com)
6
- *
7
- * Licensed under the MIT license (http://mit-license.org/)
8
- *
9
- */
10
-
11
  var __slice=[].slice,__indexOf=[].indexOf||function(e){for(var t=0,n=this.length;t<n;t++)if(t in this&&this[t]===e)return t;return-1};(function(e,t){var n;return n=function(){function t(t,n){var r,i=this;this.input=t,this.defaultOptions={animate:!0,snapMid:!1,classPrefix:null,classSuffix:null,theme:null,highlight:!1},this.settings=e.extend({},this.defaultOptions,n),this.settings.theme&&(this.settings.classSuffix="-"+this.settings.theme),this.input.hide(),this.slider=e("<div>").addClass("slider"+(this.settings.classSuffix||"")).css({position:"relative",userSelect:"none",boxSizing:"border-box"}).insertBefore(this.input),this.input.attr("id")&&this.slider.attr("id",this.input.attr("id")+"-slider"),this.track=this.createDivElement("track").css({width:"100%"}),this.settings.highlight&&(this.highlightTrack=this.createDivElement("highlight-track").css({width:"0"})),this.dragger=this.createDivElement("dragger"),this.slider.css({minHeight:this.dragger.outerHeight(),marginLeft:this.dragger.outerWidth()/2,marginRight:this.dragger.outerWidth()/2}),this.track.css({marginTop:this.track.outerHeight()/-2}),this.settings.highlight&&this.highlightTrack.css({marginTop:this.track.outerHeight()/-2}),this.dragger.css({marginTop:this.dragger.outerWidth()/-2,marginLeft:this.dragger.outerWidth()/-2}),this.track.mousedown(function(e){return i.trackEvent(e)}),this.settings.highlight&&this.highlightTrack.mousedown(function(e){return i.trackEvent(e)}),this.dragger.mousedown(function(e){if(e.which!==1)return;return i.dragging=!0,i.dragger.addClass("dragging"),i.domDrag(e.pageX,e.pageY),!1}),e("body").mousemove(function(t){if(i.dragging)return i.domDrag(t.pageX,t.pageY),e("body").css({cursor:"pointer"})}).mouseup(function(t){if(i.dragging)return i.dragging=!1,i.dragger.removeClass("dragging"),e("body").css({cursor:"auto"})}),this.pagePos=0,this.input.val()===""?(this.value=this.getRange().min,this.input.val(this.value)):this.value=this.nearestValidValue(this.input.val()),this.setSliderPositionFromValue(this.value),r=this.valueToRatio(this.value),this.input.trigger("slider:ready",{value:this.value,ratio:r,position:r*this.slider.outerWidth(),el:this.slider})}return t.prototype.createDivElement=function(t){var n;return n=e("<div>").addClass(t).css({position:"absolute",top:"50%",userSelect:"none",cursor:"pointer"}).appendTo(this.slider),n},t.prototype.setRatio=function(e){var t;return e=Math.min(1,e),e=Math.max(0,e),t=this.ratioToValue(e),this.setSliderPositionFromValue(t),this.valueChanged(t,e,"setRatio")},t.prototype.setValue=function(e){var t;return e=this.nearestValidValue(e),t=this.valueToRatio(e),this.setSliderPositionFromValue(e),this.valueChanged(e,t,"setValue")},t.prototype.trackEvent=function(e){if(e.which!==1)return;return this.domDrag(e.pageX,e.pageY,!0),this.dragging=!0,!1},t.prototype.domDrag=function(e,t,n){var r,i,s;n==null&&(n=!1),r=e-this.slider.offset().left,r=Math.min(this.slider.outerWidth(),r),r=Math.max(0,r);if(this.pagePos!==r)return this.pagePos=r,i=r/this.slider.outerWidth(),s=this.ratioToValue(i),this.valueChanged(s,i,"domDrag"),this.settings.snap?this.setSliderPositionFromValue(s,n):this.setSliderPosition(r,n)},t.prototype.setSliderPosition=function(e,t){t==null&&(t=!1);if(t&&this.settings.animate){this.dragger.animate({left:e},200);if(this.settings.highlight)return this.highlightTrack.animate({width:e},200)}else{this.dragger.css({left:e});if(this.settings.highlight)return this.highlightTrack.css({width:e})}},t.prototype.setSliderPositionFromValue=function(e,t){var n;return t==null&&(t=!1),n=this.valueToRatio(e),this.setSliderPosition(n*this.slider.outerWidth(),t)},t.prototype.getRange=function(){return this.settings.allowedValues?{min:Math.min.apply(Math,this.settings.allowedValues),max:Math.max.apply(Math,this.settings.allowedValues)}:this.settings.range?{min:parseFloat(this.settings.range[0]),max:parseFloat(this.settings.range[1])}:{min:0,max:1}},t.prototype.nearestValidValue=function(t){var n,r,i,s;return i=this.getRange(),t=Math.min(i.max,t),t=Math.max(i.min,t),this.settings.allowedValues?(n=null,e.each(this.settings.allowedValues,function(){if(n===null||Math.abs(this-t)<Math.abs(n-t))return n=this}),n):this.settings.step?(r=(i.max-i.min)/this.settings.step,s=Math.floor((t-i.min)/this.settings.step),(t-i.min)%this.settings.step>this.settings.step/2&&s<r&&(s+=1),s*this.settings.step+i.min):t},t.prototype.valueToRatio=function(e){var t,n,r,i,s,o,u,a;if(this.settings.equalSteps){a=this.settings.allowedValues;for(i=o=0,u=a.length;o<u;i=++o){t=a[i];if(typeof n=="undefined"||n===null||Math.abs(t-e)<Math.abs(n-e))n=t,r=i}return this.settings.snapMid?(r+.5)/this.settings.allowedValues.length:r/(this.settings.allowedValues.length-1)}return s=this.getRange(),(e-s.min)/(s.max-s.min)},t.prototype.ratioToValue=function(e){var t,n,r,i,s;return this.settings.equalSteps?(s=this.settings.allowedValues.length,i=Math.round(e*s-.5),t=Math.min(i,this.settings.allowedValues.length-1),this.settings.allowedValues[t]):(n=this.getRange(),r=e*(n.max-n.min)+n.min,this.nearestValidValue(r))},t.prototype.valueChanged=function(t,n,r){var i;if(t.toString()===this.value.toString())return;return this.value=t,i={value:t,ratio:n,position:n*this.slider.outerWidth(),trigger:r,el:this.slider},this.input.val(t).trigger(e.Event("change",i)).trigger("slider:changed",i)},t}(),e.extend(e.fn,{simpleSlider:function(){var t,r,i;return i=arguments[0],t=2<=arguments.length?__slice.call(arguments,1):[],r=["setRatio","setValue"],e(this).each(function(){var s,o;return i&&__indexOf.call(r,i)>=0?(s=e(this).data("slider-object"),s[i].apply(s,t)):(o=i,e(this).data("slider-object",new n(e(this),o)))})}}),e(function(){return e("[data-slider]").each(function(){var t,n,r,i;return t=e(this),r={},n=t.data("slider-values"),n&&(r.allowedValues=function(){var e,t,r,s;r=n.split(","),s=[];for(e=0,t=r.length;e<t;e++)i=r[e],s.push(parseFloat(i));return s}()),t.data("slider-range")&&(r.range=t.data("slider-range").split(",")),t.data("slider-step")&&(r.step=t.data("slider-step")),r.snap=t.data("slider-snap"),r.equalSteps=t.data("slider-equal-steps"),t.data("slider-theme")&&(r.theme=t.data("slider-theme")),t.attr("data-slider-highlight")&&(r.highlight=t.data("slider-highlight")),t.data("slider-animate")!=null&&(r.animate=t.data("slider-animate")),t.simpleSlider(r)})})})(this.jQuery||this.Zepto,this);
1
+ /*
2
+ * jQuery Simple Slider: Unobtrusive Numerical Slider
3
+ * Version 1.0.0
4
+ *
5
+ * Copyright (c) 2013 James Smith (http://loopj.com)
6
+ *
7
+ * Licensed under the MIT license (http://mit-license.org/)
8
+ *
9
+ */
10
+
11
  var __slice=[].slice,__indexOf=[].indexOf||function(e){for(var t=0,n=this.length;t<n;t++)if(t in this&&this[t]===e)return t;return-1};(function(e,t){var n;return n=function(){function t(t,n){var r,i=this;this.input=t,this.defaultOptions={animate:!0,snapMid:!1,classPrefix:null,classSuffix:null,theme:null,highlight:!1},this.settings=e.extend({},this.defaultOptions,n),this.settings.theme&&(this.settings.classSuffix="-"+this.settings.theme),this.input.hide(),this.slider=e("<div>").addClass("slider"+(this.settings.classSuffix||"")).css({position:"relative",userSelect:"none",boxSizing:"border-box"}).insertBefore(this.input),this.input.attr("id")&&this.slider.attr("id",this.input.attr("id")+"-slider"),this.track=this.createDivElement("track").css({width:"100%"}),this.settings.highlight&&(this.highlightTrack=this.createDivElement("highlight-track").css({width:"0"})),this.dragger=this.createDivElement("dragger"),this.slider.css({minHeight:this.dragger.outerHeight(),marginLeft:this.dragger.outerWidth()/2,marginRight:this.dragger.outerWidth()/2}),this.track.css({marginTop:this.track.outerHeight()/-2}),this.settings.highlight&&this.highlightTrack.css({marginTop:this.track.outerHeight()/-2}),this.dragger.css({marginTop:this.dragger.outerWidth()/-2,marginLeft:this.dragger.outerWidth()/-2}),this.track.mousedown(function(e){return i.trackEvent(e)}),this.settings.highlight&&this.highlightTrack.mousedown(function(e){return i.trackEvent(e)}),this.dragger.mousedown(function(e){if(e.which!==1)return;return i.dragging=!0,i.dragger.addClass("dragging"),i.domDrag(e.pageX,e.pageY),!1}),e("body").mousemove(function(t){if(i.dragging)return i.domDrag(t.pageX,t.pageY),e("body").css({cursor:"pointer"})}).mouseup(function(t){if(i.dragging)return i.dragging=!1,i.dragger.removeClass("dragging"),e("body").css({cursor:"auto"})}),this.pagePos=0,this.input.val()===""?(this.value=this.getRange().min,this.input.val(this.value)):this.value=this.nearestValidValue(this.input.val()),this.setSliderPositionFromValue(this.value),r=this.valueToRatio(this.value),this.input.trigger("slider:ready",{value:this.value,ratio:r,position:r*this.slider.outerWidth(),el:this.slider})}return t.prototype.createDivElement=function(t){var n;return n=e("<div>").addClass(t).css({position:"absolute",top:"50%",userSelect:"none",cursor:"pointer"}).appendTo(this.slider),n},t.prototype.setRatio=function(e){var t;return e=Math.min(1,e),e=Math.max(0,e),t=this.ratioToValue(e),this.setSliderPositionFromValue(t),this.valueChanged(t,e,"setRatio")},t.prototype.setValue=function(e){var t;return e=this.nearestValidValue(e),t=this.valueToRatio(e),this.setSliderPositionFromValue(e),this.valueChanged(e,t,"setValue")},t.prototype.trackEvent=function(e){if(e.which!==1)return;return this.domDrag(e.pageX,e.pageY,!0),this.dragging=!0,!1},t.prototype.domDrag=function(e,t,n){var r,i,s;n==null&&(n=!1),r=e-this.slider.offset().left,r=Math.min(this.slider.outerWidth(),r),r=Math.max(0,r);if(this.pagePos!==r)return this.pagePos=r,i=r/this.slider.outerWidth(),s=this.ratioToValue(i),this.valueChanged(s,i,"domDrag"),this.settings.snap?this.setSliderPositionFromValue(s,n):this.setSliderPosition(r,n)},t.prototype.setSliderPosition=function(e,t){t==null&&(t=!1);if(t&&this.settings.animate){this.dragger.animate({left:e},200);if(this.settings.highlight)return this.highlightTrack.animate({width:e},200)}else{this.dragger.css({left:e});if(this.settings.highlight)return this.highlightTrack.css({width:e})}},t.prototype.setSliderPositionFromValue=function(e,t){var n;return t==null&&(t=!1),n=this.valueToRatio(e),this.setSliderPosition(n*this.slider.outerWidth(),t)},t.prototype.getRange=function(){return this.settings.allowedValues?{min:Math.min.apply(Math,this.settings.allowedValues),max:Math.max.apply(Math,this.settings.allowedValues)}:this.settings.range?{min:parseFloat(this.settings.range[0]),max:parseFloat(this.settings.range[1])}:{min:0,max:1}},t.prototype.nearestValidValue=function(t){var n,r,i,s;return i=this.getRange(),t=Math.min(i.max,t),t=Math.max(i.min,t),this.settings.allowedValues?(n=null,e.each(this.settings.allowedValues,function(){if(n===null||Math.abs(this-t)<Math.abs(n-t))return n=this}),n):this.settings.step?(r=(i.max-i.min)/this.settings.step,s=Math.floor((t-i.min)/this.settings.step),(t-i.min)%this.settings.step>this.settings.step/2&&s<r&&(s+=1),s*this.settings.step+i.min):t},t.prototype.valueToRatio=function(e){var t,n,r,i,s,o,u,a;if(this.settings.equalSteps){a=this.settings.allowedValues;for(i=o=0,u=a.length;o<u;i=++o){t=a[i];if(typeof n=="undefined"||n===null||Math.abs(t-e)<Math.abs(n-e))n=t,r=i}return this.settings.snapMid?(r+.5)/this.settings.allowedValues.length:r/(this.settings.allowedValues.length-1)}return s=this.getRange(),(e-s.min)/(s.max-s.min)},t.prototype.ratioToValue=function(e){var t,n,r,i,s;return this.settings.equalSteps?(s=this.settings.allowedValues.length,i=Math.round(e*s-.5),t=Math.min(i,this.settings.allowedValues.length-1),this.settings.allowedValues[t]):(n=this.getRange(),r=e*(n.max-n.min)+n.min,this.nearestValidValue(r))},t.prototype.valueChanged=function(t,n,r){var i;if(t.toString()===this.value.toString())return;return this.value=t,i={value:t,ratio:n,position:n*this.slider.outerWidth(),trigger:r,el:this.slider},this.input.val(t).trigger(e.Event("change",i)).trigger("slider:changed",i)},t}(),e.extend(e.fn,{simpleSlider:function(){var t,r,i;return i=arguments[0],t=2<=arguments.length?__slice.call(arguments,1):[],r=["setRatio","setValue"],e(this).each(function(){var s,o;return i&&__indexOf.call(r,i)>=0?(s=e(this).data("slider-object"),s[i].apply(s,t)):(o=i,e(this).data("slider-object",new n(e(this),o)))})}}),e(function(){return e("[data-slider]").each(function(){var t,n,r,i;return t=e(this),r={},n=t.data("slider-values"),n&&(r.allowedValues=function(){var e,t,r,s;r=n.split(","),s=[];for(e=0,t=r.length;e<t;e++)i=r[e],s.push(parseFloat(i));return s}()),t.data("slider-range")&&(r.range=t.data("slider-range").split(",")),t.data("slider-step")&&(r.step=t.data("slider-step")),r.snap=t.data("slider-snap"),r.equalSteps=t.data("slider-equal-steps"),t.data("slider-theme")&&(r.theme=t.data("slider-theme")),t.attr("data-slider-highlight")&&(r.highlight=t.data("slider-highlight")),t.data("slider-animate")!=null&&(r.animate=t.data("slider-animate")),t.simpleSlider(r)})})})(this.jQuery||this.Zepto,this);
assets/js/sunrise.js CHANGED
@@ -1,138 +1,138 @@
1
- // Wait DOM
2
- jQuery(document).ready(function ($) {
3
-
4
-
5
- // ########## Tabs ##########
6
-
7
- // Nav tab click
8
- $('#sunrise-tabs span').click(function (event) {
9
- // Hide tips
10
- $('.sunrise-spin, .sunrise-success-tip').hide();
11
- // Remove active class from all tabs
12
- $('#sunrise-tabs span').removeClass('nav-tab-active');
13
- // Hide all panes
14
- $('.sunrise-pane').hide();
15
- // Add active class to current tab
16
- $(this).addClass('nav-tab-active');
17
- // Show current pane
18
- $('.sunrise-pane:eq(' + $(this).index() + ')').show();
19
- // Save tab to cookies
20
- createCookie(pagenow + '_last_tab', $(this).index(), 365);
21
- });
22
-
23
- // Auto-open tab by link with hash
24
- if (strpos(document.location.hash, '#tab-') !== false) $('#sunrise-tabs span:eq(' + document.location.hash.replace('#tab-', '') + ')').trigger('click');
25
- // Auto-open tab by cookies
26
- else if (readCookie(pagenow + '_last_tab') != null) $('#sunrise-tabs span:eq(' + readCookie(pagenow + '_last_tab') + ')').trigger('click');
27
- // Open first tab by default
28
- else $('#sunrise-tabs span:eq(0)').trigger('click');
29
-
30
-
31
- // ########## Ajaxed form ##########
32
-
33
- $('#sunrise-form').ajaxForm({
34
- beforeSubmit: function () {
35
- $('.sunrise-success-tip').hide();
36
- $('.sunrise-spin').fadeIn(200);
37
- $('.sunrise-submit').attr('disabled', true);
38
- $('.sunrise-notice').fadeOut(400);
39
- },
40
- success: function () {
41
- $('.sunrise-spin').hide();
42
- $('.sunrise-success-tip').show();
43
- setTimeout(function () {
44
- $('.sunrise-success-tip').fadeOut(200);
45
- }, 2000);
46
- $('.sunrise-submit').attr('disabled', false);
47
- }
48
- });
49
-
50
-
51
- // ########## Reset settings confirmation ##########
52
-
53
- $('.sunrise-reset').click(function () {
54
- if (!confirm($(this).attr('title'))) return false;
55
- else return true;
56
- });
57
-
58
- // ########## Color picker ##########
59
-
60
- $('.sunrise-color-picker').each(function (i) {
61
- $(this).find('.sunrise-color-picker-wheel').filter(':first').farbtastic('.sunrise-color-picker-value:eq(' +
62
- i + ')');
63
- $(this).find('.sunrise-color-picker-value').focus(function () {
64
- $('.sunrise-color-picker-wheel:eq(' + i + ')').show();
65
- });
66
- $(this).find('.sunrise-color-picker-value').blur(function () {
67
- $('.sunrise-color-picker-wheel:eq(' + i + ')').hide();
68
- });
69
- $(this).find('.sunrise-color-picker-button').click(function (e) {
70
- $('.sunrise-color-picker-value:eq(' + i + ')').focus();
71
- e.preventDefault();
72
- });
73
- });
74
-
75
- // ########## Media manager ##########
76
-
77
- $('.sunrise-media-button').each(function () {
78
- var $button = $(this),
79
- $val = $(this).parents('.sunrise-media').find('input:text'),
80
- file;
81
- $button.on('click', function (e) {
82
- e.preventDefault();
83
- // If the frame already exists, reopen it
84
- if (typeof (file) !== 'undefined') file.close();
85
- // Create WP media frame.
86
- file = wp.media.frames.customHeader = wp.media({
87
- // Title of media manager frame
88
- title: sunrise.media_title,
89
- library: {
90
- type: 'image'
91
- },
92
- button: {
93
- //Button text
94
- text: sunrise.media_insert
95
- },
96
- // Do not allow multiple files, if you want multiple, set true
97
- multiple: false
98
- });
99
- //callback for selected image
100
- file.on('select', function () {
101
- var attachment = file.state().get('selection').first().toJSON();
102
- $val.val(attachment.url).trigger('change');
103
- });
104
- // Open modal
105
- file.open();
106
- });
107
- });
108
-
109
- // ########## Cookie utilities ##########
110
-
111
- function createCookie(name, value, days) {
112
- if (days) {
113
- var date = new Date();
114
- date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
115
- var expires = "; expires=" + date.toGMTString()
116
- } else var expires = "";
117
- document.cookie = name + "=" + value + expires + "; path=/"
118
- }
119
-
120
- function readCookie(name) {
121
- var nameEQ = name + "=";
122
- var ca = document.cookie.split(';');
123
- for (var i = 0; i < ca.length; i++) {
124
- var c = ca[i];
125
- while (c.charAt(0) == ' ') c = c.substring(1, c.length);
126
- if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length)
127
- }
128
- return null
129
- }
130
-
131
- // ########## Strpos tool ##########
132
-
133
- function strpos(haystack, needle, offset) {
134
- var i = haystack.indexOf(needle, offset);
135
- return i >= 0 ? i : false;
136
- }
137
-
138
  });
1
+ // Wait DOM
2
+ jQuery(document).ready(function ($) {
3
+
4
+
5
+ // ########## Tabs ##########
6
+
7
+ // Nav tab click
8
+ $('#sunrise-tabs span').click(function (event) {
9
+ // Hide tips
10
+ $('.sunrise-spin, .sunrise-success-tip').hide();
11
+ // Remove active class from all tabs
12
+ $('#sunrise-tabs span').removeClass('nav-tab-active');
13
+ // Hide all panes
14
+ $('.sunrise-pane').hide();
15
+ // Add active class to current tab
16
+ $(this).addClass('nav-tab-active');
17
+ // Show current pane
18
+ $('.sunrise-pane:eq(' + $(this).index() + ')').show();
19
+ // Save tab to cookies
20
+ createCookie(pagenow + '_last_tab', $(this).index(), 365);
21
+ });
22
+
23
+ // Auto-open tab by link with hash
24
+ if (strpos(document.location.hash, '#tab-') !== false) $('#sunrise-tabs span:eq(' + document.location.hash.replace('#tab-', '') + ')').trigger('click');
25
+ // Auto-open tab by cookies
26
+ else if (readCookie(pagenow + '_last_tab') != null) $('#sunrise-tabs span:eq(' + readCookie(pagenow + '_last_tab') + ')').trigger('click');
27
+ // Open first tab by default
28
+ else $('#sunrise-tabs span:eq(0)').trigger('click');
29
+
30
+
31
+ // ########## Ajaxed form ##########
32
+
33
+ $('#sunrise-form').ajaxForm({
34
+ beforeSubmit: function () {
35
+ $('.sunrise-success-tip').hide();
36
+ $('.sunrise-spin').fadeIn(200);
37
+ $('.sunrise-submit').attr('disabled', true);
38
+ $('.sunrise-notice').fadeOut(400);
39
+ },
40
+ success: function () {
41
+ $('.sunrise-spin').hide();
42
+ $('.sunrise-success-tip').show();
43
+ setTimeout(function () {
44
+ $('.sunrise-success-tip').fadeOut(200);
45
+ }, 2000);
46
+ $('.sunrise-submit').attr('disabled', false);
47
+ }
48
+ });
49
+
50
+
51
+ // ########## Reset settings confirmation ##########
52
+
53
+ $('.sunrise-reset').click(function () {
54
+ if (!confirm($(this).attr('title'))) return false;
55
+ else return true;
56
+ });
57
+
58
+ // ########## Color picker ##########
59
+
60
+ $('.sunrise-color-picker').each(function (i) {
61
+ $(this).find('.sunrise-color-picker-wheel').filter(':first').farbtastic('.sunrise-color-picker-value:eq(' +
62
+ i + ')');
63
+ $(this).find('.sunrise-color-picker-value').focus(function () {
64
+ $('.sunrise-color-picker-wheel:eq(' + i + ')').show();
65
+ });
66
+ $(this).find('.sunrise-color-picker-value').blur(function () {
67
+ $('.sunrise-color-picker-wheel:eq(' + i + ')').hide();
68
+ });
69
+ $(this).find('.sunrise-color-picker-button').click(function (e) {
70
+ $('.sunrise-color-picker-value:eq(' + i + ')').focus();
71
+ e.preventDefault();
72
+ });
73
+ });
74
+
75
+ // ########## Media manager ##########
76
+
77
+ $('.sunrise-media-button').each(function () {
78
+ var $button = $(this),
79
+ $val = $(this).parents('.sunrise-media').find('input:text'),
80
+ file;
81
+ $button.on('click', function (e) {
82
+ e.preventDefault();
83
+ // If the frame already exists, reopen it
84
+ if (typeof (file) !== 'undefined') file.close();
85
+ // Create WP media frame.
86
+ file = wp.media.frames.customHeader = wp.media({
87
+ // Title of media manager frame
88
+ title: sunrise.media_title,
89
+ library: {
90
+ type: 'image'
91
+ },
92
+ button: {
93
+ //Button text
94
+ text: sunrise.media_insert
95
+ },
96
+ // Do not allow multiple files, if you want multiple, set true
97
+ multiple: false
98
+ });
99
+ //callback for selected image
100
+ file.on('select', function () {
101
+ var attachment = file.state().get('selection').first().toJSON();
102
+ $val.val(attachment.url).trigger('change');
103
+ });
104
+ // Open modal
105
+ file.open();
106
+ });
107
+ });
108
+
109
+ // ########## Cookie utilities ##########
110
+
111
+ function createCookie(name, value, days) {
112
+ if (days) {
113
+ var date = new Date();
114
+ date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
115
+ var expires = "; expires=" + date.toGMTString()
116
+ } else var expires = "";
117
+ document.cookie = name + "=" + value + expires + "; path=/"
118
+ }
119
+
120
+ function readCookie(name) {
121
+ var nameEQ = name + "=";
122
+ var ca = document.cookie.split(';');
123
+ for (var i = 0; i < ca.length; i++) {
124
+ var c = ca[i];
125
+ while (c.charAt(0) == ' ') c = c.substring(1, c.length);
126
+ if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length)
127
+ }
128
+ return null
129
+ }
130
+
131
+ // ########## Strpos tool ##########
132
+
133
+ function strpos(haystack, needle, offset) {
134
+ var i = haystack.indexOf(needle, offset);
135
+ return i >= 0 ? i : false;
136
+ }
137
+
138
  });
assets/js/tinymce.js CHANGED
@@ -1,124 +1,124 @@
1
- ! function () {
2
- tinymce.create('tinymce.plugins.shortcodesultimate', {
3
- init: function (e) {
4
- var t = this,
5
- n = 'su';
6
- // e.onKeyPress.add(function (e, o) {
7
- e.onBeforeSetContent.add(function (e, o) {
8
- // console.log(e);
9
- o.content = t["_shortcodes2html"](o.content);
10
- });
11
- e.onPostProcess.add(function (e, o) {
12
- o.set && (o.content = t["_shortcodes2html"](o.content));
13
- o.get && (o.content = t["_html2shortcodes"](o.content));
14
- });
15
- },
16
- getInfo: function () {
17
- return {
18
- longname: "BBCode Plugin",
19
- author: "Moxiecode Systems AB",
20
- authorurl: "http://www.tinymce.com",
21
- infourl: "http://www.tinymce.com/wiki.php/Plugin:bbcode"
22
- }
23
- },
24
- _html2shortcodes: function (content) {
25
- // Prepare data
26
- var shortcodes = ['row', 'column'],
27
- prefix = '';
28
- // Trim content
29
- content = tinymce.trim(content);
30
- content = content.replace(/<div.*?class=\"su-row (.*?)\".*?>(.*?)<\/div>/gi, '[row class="$1"]$2[/column]');
31
- content = content.replace(/<div.*?class=\"su-column su-column-size-(.*?) (.*?)\".*?>(.*?)<\/div>/gi, '[column size="$1" class="$2"]$3[/column]');
32
- return content;
33
- // function t(t, n) {
34
- // e = e.replace(t, n);
35
- // }
36
- // return e = tinymce.trim(e),
37
- // t(),
38
- // e;
39
- // t(/<a.*?href=\"(.*?)\".*?>(.*?)<\/a>/gi, "[url=$1]$2[/url]"),
40
- // t(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi, "[code][color=$1]$2[/color][/code]"),
41
- // t(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi, "[quote][color=$1]$2[/color][/quote]"),
42
- // t(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[code][color=$1]$2[/color][/code]"),
43
- // t(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[quote][color=$1]$2[/color][/quote]"),
44
- // t(/<span style=\"color: ?(.*?);\">(.*?)<\/span>/gi, "[color=$1]$2[/color]"),
45
- // t(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[color=$1]$2[/color]"),
46
- // t(/<span style=\"font-size:(.*?);\">(.*?)<\/span>/gi, "[size=$1]$2[/size]"),
47
- // t(/<font>(.*?)<\/font>/gi, "$1"),
48
- // t(/<img.*?src=\"(.*?)\".*?\/>/gi, "[img]$1[/img]"),
49
- // t(/<span class=\"codeStyle\">(.*?)<\/span>/gi, "[code]$1[/code]"),
50
- // t(/<span class=\"quoteStyle\">(.*?)<\/span>/gi, "[quote]$1[/quote]"),
51
- // t(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi, "[code][b]$1[/b][/code]"),
52
- // t(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi, "[quote][b]$1[/b][/quote]"),
53
- // t(/<em class=\"codeStyle\">(.*?)<\/em>/gi, "[code][i]$1[/i][/code]"),
54
- // t(/<em class=\"quoteStyle\">(.*?)<\/em>/gi, "[quote][i]$1[/i][/quote]"),
55
- // t(/<u class=\"codeStyle\">(.*?)<\/u>/gi, "[code][u]$1[/u][/code]"),
56
- // t(/<u class=\"quoteStyle\">(.*?)<\/u>/gi, "[quote][u]$1[/u][/quote]"),
57
- // t(/<\/(strong|b)>/gi, "[/b]"),
58
- // t(/<(strong|b)>/gi, "[b]"),
59
- // t(/<\/(em|i)>/gi, "[/i]"),
60
- // t(/<(em|i)>/gi, "[i]"),
61
- // t(/<\/u>/gi, "[/u]"),
62
- // t(/<span style=\"text-decoration: ?underline;\">(.*?)<\/span>/gi, "[u]$1[/u]"),
63
- // t(/<u>/gi, "[u]"),
64
- // t(/<blockquote[^>]*>/gi, "[quote]"),
65
- // t(/<\/blockquote>/gi, "[/quote]"),
66
- // t(/<br \/>/gi, "\n"),
67
- // t(/<br\/>/gi, "\n"),
68
- // t(/<br>/gi, "\n"),
69
- // t(/<p>/gi, ""),
70
- // t(/<\/p>/gi, "\n"),
71
- // t(/&nbsp;|\u00a0/gi, " "),
72
- // t(/&quot;/gi, '"'),
73
- // t(/&lt;/gi, "<"),
74
- // t(/&gt;/gi, ">"),
75
- // t(/&amp;/gi, "&"),
76
- },
77
- _shortcodes2html: function (content) {
78
- // Prepare data
79
- var shortcodes = ['row', 'column'],
80
- prefix = '';
81
- // Trim content
82
- content = tinymce.trim(content);
83
- // Loop shortcodes
84
- for (var i = shortcodes.length - 1; i >= 0; i--) {
85
- content = wp.shortcode.replace(prefix + shortcodes[i], content, this._shortcode2html);
86
- };
87
- return content;
88
- // return e = tinymce.trim(e),
89
- // t(/\[column.*?size="(.*?)".*?class="(.*?)".*?\](.*?)\[\/column\]/gi, '<div class="su-column su-column-size-$1 $2">$3</div>'),
90
- // t(/\n/gi, "<br />"),
91
- // t(/\[b\]/gi, "<strong>"),
92
- // t(/\[\/b\]/gi, "</strong>"),
93
- // t(/\[i\]/gi, "<em>"),
94
- // t(/\[\/i\]/gi, "</em>"),
95
- // t(/\[u\]/gi, "<u>"),
96
- // t(/\[\/u\]/gi, "</u>"),
97
- // t(/\[url=([^\]]+)\](.*?)\[\/url\]/gi, '<a href="$1">$2</a>'),
98
- // t(/\[url\](.*?)\[\/url\]/gi, '<a href="$1">$1</a>'),
99
- // t(/\[img\](.*?)\[\/img\]/gi, '<img src="$1" />'),
100
- // t(/\[color=(.*?)\](.*?)\[\/color\]/gi, '<font color="$1">$2</font>'),
101
- // t(/\[code\](.*?)\[\/code\]/gi, '<span class="codeStyle">$1</span>&nbsp;'),
102
- // t(/\[quote.*?\](.*?)\[\/quote\]/gi, '<span class="quoteStyle">$1</span>&nbsp;'),
103
- // e
104
- },
105
- _shortcode2html: function (s) {
106
- // Prepare data
107
- var prefix = '';
108
- // Remove prefix from shortcode tag name
109
- s.tag = s.tag.replace(prefix, '');
110
- // Row
111
- if (s.tag === 'row') {
112
- var cssclass = (typeof s.attrs.named.class !== 'undefined') ? ' ' + s.attrs.named.class : '';
113
- return '<div class="su-row' + cssclass + '">' + s.content + '</div>';
114
- }
115
- // Columns
116
- else if (s.tag === 'column') {
117
- var size = (typeof s.attrs.named.size !== 'undefined') ? s.attrs.named.size.replace('/', '-') : '1-1',
118
- cssclass = (typeof s.attrs.named.class !== 'undefined') ? ' ' + s.attrs.named.class : '';
119
- return '<div class="su-column su-column-size-' + size + cssclass + '">' + s.content + '</div>';
120
- }
121
- }
122
- }),
123
- tinymce.PluginManager.add('shortcodesultimate', tinymce.plugins.shortcodesultimate);
124
  }();
1
+ ! function () {
2
+ tinymce.create('tinymce.plugins.shortcodesultimate', {
3
+ init: function (e) {
4
+ var t = this,
5
+ n = 'su';
6
+ // e.onKeyPress.add(function (e, o) {
7
+ e.onBeforeSetContent.add(function (e, o) {
8
+ // console.log(e);
9
+ o.content = t["_shortcodes2html"](o.content);
10
+ });
11
+ e.onPostProcess.add(function (e, o) {
12
+ o.set && (o.content = t["_shortcodes2html"](o.content));
13
+ o.get && (o.content = t["_html2shortcodes"](o.content));
14
+ });
15
+ },
16
+ getInfo: function () {
17
+ return {
18
+ longname: "BBCode Plugin",
19
+ author: "Moxiecode Systems AB",
20
+ authorurl: "http://www.tinymce.com",
21
+ infourl: "http://www.tinymce.com/wiki.php/Plugin:bbcode"
22
+ }
23
+ },
24
+ _html2shortcodes: function (content) {
25
+ // Prepare data
26
+ var shortcodes = ['row', 'column'],
27
+ prefix = '';
28
+ // Trim content
29
+ content = tinymce.trim(content);
30
+ content = content.replace(/<div.*?class=\"su-row (.*?)\".*?>(.*?)<\/div>/gi, '[row class="$1"]$2[/column]');
31
+ content = content.replace(/<div.*?class=\"su-column su-column-size-(.*?) (.*?)\".*?>(.*?)<\/div>/gi, '[column size="$1" class="$2"]$3[/column]');
32
+ return content;
33
+ // function t(t, n) {
34
+ // e = e.replace(t, n);
35
+ // }
36
+ // return e = tinymce.trim(e),
37
+ // t(),
38
+ // e;
39
+ // t(/<a.*?href=\"(.*?)\".*?>(.*?)<\/a>/gi, "[url=$1]$2[/url]"),
40
+ // t(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi, "[code][color=$1]$2[/color][/code]"),
41
+ // t(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi, "[quote][color=$1]$2[/color][/quote]"),
42
+ // t(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[code][color=$1]$2[/color][/code]"),
43
+ // t(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[quote][color=$1]$2[/color][/quote]"),
44
+ // t(/<span style=\"color: ?(.*?);\">(.*?)<\/span>/gi, "[color=$1]$2[/color]"),
45
+ // t(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi, "[color=$1]$2[/color]"),
46
+ // t(/<span style=\"font-size:(.*?);\">(.*?)<\/span>/gi, "[size=$1]$2[/size]"),
47
+ // t(/<font>(.*?)<\/font>/gi, "$1"),
48
+ // t(/<img.*?src=\"(.*?)\".*?\/>/gi, "[img]$1[/img]"),
49
+ // t(/<span class=\"codeStyle\">(.*?)<\/span>/gi, "[code]$1[/code]"),
50
+ // t(/<span class=\"quoteStyle\">(.*?)<\/span>/gi, "[quote]$1[/quote]"),
51
+ // t(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi, "[code][b]$1[/b][/code]"),
52
+ // t(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi, "[quote][b]$1[/b][/quote]"),
53
+ // t(/<em class=\"codeStyle\">(.*?)<\/em>/gi, "[code][i]$1[/i][/code]"),
54
+ // t(/<em class=\"quoteStyle\">(.*?)<\/em>/gi, "[quote][i]$1[/i][/quote]"),
55
+ // t(/<u class=\"codeStyle\">(.*?)<\/u>/gi, "[code][u]$1[/u][/code]"),
56
+ // t(/<u class=\"quoteStyle\">(.*?)<\/u>/gi, "[quote][u]$1[/u][/quote]"),
57
+ // t(/<\/(strong|b)>/gi, "[/b]"),
58
+ // t(/<(strong|b)>/gi, "[b]"),
59
+ // t(/<\/(em|i)>/gi, "[/i]"),
60
+ // t(/<(em|i)>/gi, "[i]"),
61
+ // t(/<\/u>/gi, "[/u]"),
62
+ // t(/<span style=\"text-decoration: ?underline;\">(.*?)<\/span>/gi, "[u]$1[/u]"),
63
+ // t(/<u>/gi, "[u]"),
64
+ // t(/<blockquote[^>]*>/gi, "[quote]"),
65
+ // t(/<\/blockquote>/gi, "[/quote]"),
66
+ // t(/<br \/>/gi, "\n"),
67
+ // t(/<br\/>/gi, "\n"),
68
+ // t(/<br>/gi, "\n"),
69
+ // t(/<p>/gi, ""),
70
+ // t(/<\/p>/gi, "\n"),
71
+ // t(/&nbsp;|\u00a0/gi, " "),
72
+ // t(/&quot;/gi, '"'),
73
+ // t(/&lt;/gi, "<"),
74
+ // t(/&gt;/gi, ">"),
75
+ // t(/&amp;/gi, "&"),
76
+ },
77
+ _shortcodes2html: function (content) {
78
+ // Prepare data
79
+ var shortcodes = ['row', 'column'],
80
+ prefix = '';
81
+ // Trim content
82
+ content = tinymce.trim(content);
83
+ // Loop shortcodes
84
+ for (var i = shortcodes.length - 1; i >= 0; i--) {
85
+ content = wp.shortcode.replace(prefix + shortcodes[i], content, this._shortcode2html);
86
+ };
87
+ return content;
88
+ // return e = tinymce.trim(e),
89
+ // t(/\[column.*?size="(.*?)".*?class="(.*?)".*?\](.*?)\[\/column\]/gi, '<div class="su-column su-column-size-$1 $2">$3</div>'),
90
+ // t(/\n/gi, "<br />"),
91
+ // t(/\[b\]/gi, "<strong>"),
92
+ // t(/\[\/b\]/gi, "</strong>"),
93
+ // t(/\[i\]/gi, "<em>"),
94
+ // t(/\[\/i\]/gi, "</em>"),
95
+ // t(/\[u\]/gi, "<u>"),
96
+ // t(/\[\/u\]/gi, "</u>"),
97
+ // t(/\[url=([^\]]+)\](.*?)\[\/url\]/gi, '<a href="$1">$2</a>'),
98
+ // t(/\[url\](.*?)\[\/url\]/gi, '<a href="$1">$1</a>'),
99
+ // t(/\[img\](.*?)\[\/img\]/gi, '<img src="$1" />'),
100
+ // t(/\[color=(.*?)\](.*?)\[\/color\]/gi, '<font color="$1">$2</font>'),
101
+ // t(/\[code\](.*?)\[\/code\]/gi, '<span class="codeStyle">$1</span>&nbsp;'),
102
+ // t(/\[quote.*?\](.*?)\[\/quote\]/gi, '<span class="quoteStyle">$1</span>&nbsp;'),
103
+ // e
104
+ },
105
+ _shortcode2html: function (s) {
106
+ // Prepare data
107
+ var prefix = '';
108
+ // Remove prefix from shortcode tag name
109
+ s.tag = s.tag.replace(prefix, '');
110
+ // Row
111
+ if (s.tag === 'row') {
112
+ var cssclass = (typeof s.attrs.named.class !== 'undefined') ? ' ' + s.attrs.named.class : '';
113
+ return '<div class="su-row' + cssclass + '">' + s.content + '</div>';
114
+ }
115
+ // Columns
116
+ else if (s.tag === 'column') {
117
+ var size = (typeof s.attrs.named.size !== 'undefined') ? s.attrs.named.size.replace('/', '-') : '1-1',
118
+ cssclass = (typeof s.attrs.named.class !== 'undefined') ? ' ' + s.attrs.named.class : '';
119
+ return '<div class="su-column su-column-size-' + size + cssclass + '">' + s.content + '</div>';
120
+ }
121
+ }
122
+ }),
123
+ tinymce.PluginManager.add('shortcodesultimate', tinymce.plugins.shortcodesultimate);
124
  }();
assets/js/vote.js CHANGED
@@ -1,16 +1,16 @@
1
- jQuery(document).ready(function ($) {
2
- $('#wpwrap').before($('.su-vote').slideDown());
3
- $('.su-vote-action').on('click', function (e) {
4
- var $this = $(this);
5
- e.preventDefault();
6
- $.ajax({
7
- type: 'get',
8
- url: $this.attr('href'),
9
- beforeSend: function () {
10
- $('.su-vote').slideUp();
11
- if (typeof $this.data('action') !== 'undefined') window.open($this.data('action'));
12
- },
13
- success: function (data) {}
14
- });
15
- });
16
  });
1
+ jQuery(document).ready(function ($) {
2
+ $('#wpwrap').before($('.su-vote').slideDown());
3
+ $('.su-vote-action').on('click', function (e) {
4
+ var $this = $(this);
5
+ e.preventDefault();
6
+ $.ajax({
7
+ type: 'get',
8
+ url: $this.attr('href'),
9
+ beforeSend: function () {
10
+ $('.su-vote').slideUp();
11
+ if (typeof $this.data('action') !== 'undefined') window.open($this.data('action'));
12
+ },
13
+ success: function (data) {}
14
+ });
15
+ });
16
  });
inc/core/admin-views.php CHANGED
@@ -1,243 +1,244 @@
1
- <?php
2
- class Su_Admin_Views {
3
- function __construct() {}
4
-
5
- public static function about( $field, $config ) {
6
- ob_start();
7
- ?>
8
- <div id="su-about-screen">
9
- <h1><?php _e( 'Welcome to Shortcodes Ultimate', 'su' ); ?> <small><?php _e( 'A real swiss army knife for WordPress', 'su' ); ?></small></h1>
10
- <div class="sunrise-inline-menu">
11
- <a href="http://gndev.info/shortcodes-ultimate/" target="_blank"><strong><?php _e( 'Project homepage', 'su' ); ?></strong></a>
12
- <a href="http://gndev.info/kb/" target="_blank"><?php _e( 'Documentation', 'su' ); ?></a>
13
- <a href="http://wordpress.org/support/plugin/shortcodes-ultimate/" target="_blank"><?php _e( 'Support forum', 'su' ); ?></a>
14
- <a href="http://wordpress.org/extend/plugins/shortcodes-ultimate/changelog/" target="_blank"><?php _e( 'Changelog', 'su' ); ?></a>
15
- <a href="https://github.com/gndev/shortcodes-ultimate" target="_blank"><?php _e( 'Fork on GitHub', 'su' ); ?></a>
16
- </div>
17
- <div class="su-clearfix">
18
- <div class="su-about-column">
19
- <h3><?php _e( 'Plugin features', 'su' ); ?></h3>
20
- <ul>
21
- <li><?php _e( '40+ amazing shortcodes', 'su' ); ?></li>
22
- <li><?php _e( 'Power of CSS3 transitions', 'su' ); ?></li>
23
- <li><?php _e( 'Handy shortcodes generator', 'su' ) ?></li>
24
- <li><?php _e( 'International', 'su' ); ?></li>
25
- <li><?php _e( 'Documented API', 'su' ); ?></li>
26
- </ul>
27
- </div>
28
- <div class="su-about-column">
29
- <h3><?php _e( 'What is a shortcode?', 'su' ); ?></h3>
30
- <p><?php _e( '<strong>Shortcode</strong> is a WordPress-specific code that lets you do nifty things with very little effort.', 'su' ); ?></p>
31
- <p><?php _e( 'Shortcodes can embed files or create objects that would normally require lots of complicated, ugly code in just one line. Shortcode = shortcut.', 'su' ); ?></p>
32
- </div>
33
- </div>
34
- <div class="su-clearfix">
35
- <div class="su-about-column">
36
- <h3><?php _e( 'How does it works', 'su' ); ?></h3>
37
- <a href="http://www.youtube.com/watch?v=DR2c266yWEA?autoplay=1&amp;showinfo=0&amp;rel=0&amp;theme=light#" target="_blank" class="su-demo-video"><img src="<?php echo plugins_url( 'assets/images/banners/how-it-works.jpg', SU_PLUGIN_FILE ); ?>" alt=""></a>
38
- </div>
39
- <div class="su-about-column">
40
- <h3><?php _e( 'More videos', 'su' ); ?></h3>
41
- <ul>
42
- <li><a href="http://www.youtube.com/watch?v=IjmaXz-b55I" target="_blank"><?php _e( 'Shortcodes Ultimate Tutorial', 'su' ); ?></a></li>
43
- <li><a href="http://www.youtube.com/watch?v=YU3Zu6C5ZfA" target="_blank"><?php _e( 'How to use special widget', 'su' ); ?></a></li>
44
- <li><a href="http://www.screenr.com/BK0H" target="_blank"><?php _e( 'How to create Carousel', 'su' ); ?></a></li>
45
- <li><a href="http://www.youtube.com/watch?v=kCWyO2F7jTw" target="_blank"><?php _e( 'How to create image gallery', 'su' ); ?></a></li>
46
- </ul>
47
- </div>
48
- </div>
49
- </div>
50
- <?php
51
- $output = ob_get_contents();
52
- ob_end_clean();
53
- su_query_asset( 'css', array( 'magnific-popup', 'su-options-page' ) );
54
- su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'su-options-page' ) );
55
- return $output;
56
- }
57
-
58
- public static function custom_css( $field, $config ) {
59
- ob_start();
60
- ?>
61
- <div id="su-custom-css-screen">
62
- <div class="su-custom-css-originals">
63
- <p><strong><?php _e( 'You can overview the original styles to overwrite it', $config['textdomain'] ); ?></strong></p>
64
- <div class="sunrise-inline-menu">
65
- <a href="<?php echo su_skin_url( 'content-shortcodes.css' ); ?>">content-shortcodes.css</a>
66
- <a href="<?php echo su_skin_url( 'box-shortcodes.css' ); ?>">box-shortcodes.css</a>
67
- <a href="<?php echo su_skin_url( 'media-shortcodes.css' ); ?>">media-shortcodes.css</a>
68
- <a href="<?php echo su_skin_url( 'galleries-shortcodes.css' ); ?>">galleries-shortcodes.css</a>
69
- <a href="<?php echo su_skin_url( 'players-shortcodes.css' ); ?>">players-shortcodes.css</a>
70
- <a href="<?php echo su_skin_url( 'other-shortcodes.css' ); ?>">other-shortcodes.css</a>
71
- </div>
72
- <?php do_action( 'su/admin/css/originals/after' ); ?>
73
- </div>
74
- <div class="su-custom-css-vars">
75
- <p><strong><?php _e( 'You can use next variables in your custom CSS', $config['textdomain'] ); ?></strong></p>
76
- <code>%home_url%</code> - <?php _e( 'home url', $config['textdomain'] ); ?><br/>
77
- <code>%theme_url%</code> - <?php _e( 'theme url', $config['textdomain'] ); ?><br/>
78
- <code>%plugin_url%</code> - <?php _e( 'plugin url', $config['textdomain'] ); ?>
79
- </div>
80
- <div id="su-custom-css-editor">
81
- <div id="sunrise-field-<?php echo $field['id']; ?>-editor"></div>
82
- <textarea name="sunrise[<?php echo $field['id']; ?>]" id="sunrise-field-<?php echo $field['id']; ?>" class="regular-text" rows="10"><?php echo stripslashes( get_option( $config['prefix'] . $field['id'] ) ); ?></textarea>
83
- </div>
84
- </div>
85
- <?php
86
- $output = ob_get_contents();
87
- ob_end_clean();
88
- su_query_asset( 'css', array( 'magnific-popup', 'su-options-page' ) );
89
- su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'ace', 'su-options-page' ) );
90
- return $output;
91
- }
92
-
93
- public static function examples( $field, $config ) {
94
- $output = array();
95
- $examples = Su_Data::examples();
96
- $preview = '<div style="display:none"><div id="su-examples-window"><div id="su-examples-preview"></div></div></div>';
97
- $open = ( isset( $_GET['example'] ) ) ? sanitize_text_field( $_GET['example'] ) : '';
98
- $open = '<input id="su_open_example" type="hidden" name="su_open_example" value="' . $open . '" />';
99
- foreach ( $examples as $group ) {
100
- $items = array();
101
- if ( isset( $group['items'] ) ) foreach ( $group['items'] as $item ) {
102
- $code = ( isset( $item['code'] ) ) ? $item['code'] : plugins_url( 'inc/examples/' . $item['id'] . '.example', SU_PLUGIN_FILE );
103
- $id = ( isset( $item['id'] ) ) ? $item['id'] : '';
104
- $items[] = '<div class="su-examples-item" data-code="' . $code . '" data-id="' . $id . '" data-mfp-src="#su-examples-window"><i class="fa fa-' . $item['icon'] . '"></i> ' . $item['name'] . '</div>';
105
- }
106
- $output[] = '<div class="su-examples-group su-clearfix"><h2 class="su-examples-group-title">' . $group['title'] . '</h2>' . implode( '', $items ) . '</div>';
107
- }
108
- su_query_asset( 'css', array( 'magnific-popup', 'font-awesome', 'su-options-page' ) );
109
- su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'su-options-page' ) );
110
- return '<div id="su-examples-screen">' . implode( '', $output ) . '</div>' . $preview . $open;
111
- }
112
-
113
- public static function cheatsheet( $field, $config ) {
114
- // Prepare print button
115
- $print = '<div><a href="javascript:;" id="su-cheatsheet-print" class="su-cheatsheet-switch button button-primary button-large">' . __( 'Printable version', 'su' ) . '</a><div id="su-cheatsheet-print-head"><h1>' . __( 'Shortcodes Ultimate', 'su' ) . ': ' . __( 'Cheatsheet', 'su' ) . '</h1><a href="javascript:;" class="su-cheatsheet-switch">&larr; ' . __( 'Back to Dashboard', 'su' ) . '</a></div></div>';
116
- // Prepare table array
117
- $table = array();
118
- // Table start
119
- $table[] = '<table><tr><th style="width:20%;">' . __( 'Shortcode', 'su' ) . '</th><th style="width:50%">' . __( 'Attributes', 'su' ) . '</th><th style="width:30%">' . __( 'Example code', 'su' ) . '</th></tr>';
120
- // Loop through shortcodes
121
- foreach ( (array) Su_Data::shortcodes() as $name => $shortcode ) {
122
- // Prepare vars
123
- $icon = ( isset( $shortcode['icon'] ) ) ? $shortcode['icon'] : 'puzzle-piece';
124
- $shortcode['name'] = ( isset( $shortcode['name'] ) ) ? $shortcode['name'] : $name;
125
- $attributes = array();
126
- $example = array();
127
- $icons = 'icon: music, icon: envelope &hellip; <a href="http://fortawesome.github.io/Font-Awesome/icons/" target="_blank">' . __( 'full list', 'su' ) . '</a>';
128
- // Loop through attributes
129
- if ( is_array( $shortcode['atts'] ) )
130
- foreach ( $shortcode['atts'] as $id => $data ) {
131
- // Prepare default value
132
- $default = ( isset( $data['default'] ) && $data['default'] !== '' ) ? '<p><em>' . __( 'Default value', 'su' ) . ':</em> ' . $data['default'] . '</p>' : '';
133
- // Check type is set
134
- if ( empty( $data['type'] ) ) $data['type'] = 'text';
135
- // Switch attribute types
136
- switch ( $data['type'] ) {
137
- // Select
138
- case 'select':
139
- $value = implode( ', ', array_keys( $data['values'] ) );
140
- break;
141
- // Slider and number
142
- case 'slider':
143
- case 'number':
144
- $value = $data['min'] . '&hellip;' . $data['max'];
145
- break;
146
- // Bool
147
- case 'bool':
148
- $value = 'yes | no';
149
- break;
150
- // Icon
151
- case 'icon':
152
- $value = $icons;
153
- break;
154
- // Color
155
- case 'color':
156
- $value = __( '#RGB and rgba() colors' );
157
- break;
158
- // Default value
159
- default:
160
- $value = $data['default'];
161
- break;
162
- }
163
- // Check empty value
164
- if ( $value === '' ) $value = __( 'Any text value', 'su' );
165
- // Extra CSS class
166
- if ( $id === 'class' ) $value = __( 'Any custom CSS classes', 'su' );
167
- // Add attribute
168
- $attributes[] = '<div class="su-shortcode-attribute"><strong>' . $data['name'] . ' <em>&ndash; ' . $id . '</em></strong><p><em>' . __( 'Possible values', 'su' ) . ':</em> ' . $value . '</p>' . $default . '</div>';
169
- // Add attribute to the example code
170
- $example[] = $id . '="' . $data['default'] . '"';
171
- }
172
- // Prepare example code
173
- $example = '[%prefix_' . $name . ' ' . implode( ' ', $example ) . ']';
174
- // Prepare content value
175
- if ( empty( $shortcode['content'] ) ) $shortcode['content'] = '';
176
- // Add wrapping code
177
- if ( $shortcode['type'] === 'wrap' ) $example .= esc_textarea( $shortcode['content'] ) . '[/%prefix_' . $name . ']';
178
- // Change compatibility prefix
179
- $example = str_replace( array( '%prefix_', '__' ), su_cmpt(), $example );
180
- // Shortcode
181
- $table[] = '<td>' . '<span class="su-shortcode-icon">' . Su_Tools::icon( $icon ) . '</span>' . $shortcode['name'] . '<br/><em class="su-shortcode-desc">' . $shortcode['desc'] . '</em></td>';
182
- // Attributes
183
- $table[] = '<td>' . implode( '', $attributes ) . '</td>';
184
- // Example code
185
- $table[] = '<td><code contenteditable="true">' . $example . '</code></td></tr>';
186
- }
187
- // Table end
188
- $table[] = '</table>';
189
- // Query assets
190
- su_query_asset( 'css', array( 'font-awesome', 'su-cheatsheet' ) );
191
- su_query_asset( 'js', array( 'jquery', 'su-options-page' ) );
192
- // Return output
193
- return '<div id="su-cheatsheet-screen">' . $print . implode( '', $table ) . '</div>';
194
- }
195
-
196
- public static function addons( $field, $config ) {
197
- $output = array();
198
- $addons = array(
199
- array(
200
- 'name' => __( 'New Shortcodes', 'su' ),
201
- 'desc' => __( 'Parallax sections, responsive content slider, pricing tables, vector icons, testimonials, progress bars and even more', 'su' ),
202
- 'url' => 'http://gndev.info/shortcodes-ultimate/extra/',
203
- 'image' => plugins_url( 'assets/images/banners/extra.png', SU_PLUGIN_FILE )
204
- ),
205
- array(
206
- 'name' => __( 'Maker', 'su' ),
207
- 'desc' => __( 'This add-on allows you to create custom shortcodes. You can easily create any shortcode with different parameters or even override default shortcodes', 'su' ),
208
- 'url' => 'http://gndev.info/shortcodes-ultimate/maker/',
209
- 'image' => plugins_url( 'assets/images/banners/maker.png', SU_PLUGIN_FILE )
210
- ),
211
- array(
212
- 'name' => __( 'Skins', 'su' ),
213
- 'desc' => __( 'Set of additional skins for Shortcodes Ultimate. It includes skins for accordeons/spoilers, tabs and some other shortcodes', 'su' ),
214
- 'url' => 'http://gndev.info/shortcodes-ultimate/skins/',
215
- 'image' => plugins_url( 'assets/images/banners/skins.png', SU_PLUGIN_FILE )
216
- ),
217
- array(
218
- 'name' => __( 'Add-ons bundle', 'su' ),
219
- 'desc' => __( 'Get all three add-ons with huge discount!', 'su' ),
220
- 'url' => 'http://gndev.info/shortcodes-ultimate/add-ons-bundle/',
221
- 'image' => plugins_url( 'assets/images/banners/bundle.png', SU_PLUGIN_FILE )
222
- ),
223
- );
224
- $plugins = array();
225
- $output[] = '<h2>' . __( 'Shortcodes Ultimate Add-ons', 'su' ) . '</h2>';
226
- $output[] = '<div class="su-addons-loop su-clearfix">';
227
- foreach ( $addons as $addon ) {
228
- $output[] = '<div class="su-addons-item" style="visibility:hidden" data-url="' . $addon['url'] . '"><img src="' . $addon['image'] . '" alt="' . $addon['image'] . '" /><div class="su-addons-item-content"><h4>' . $addon['name'] . '</h4><p>' . $addon['desc'] . '</p><div class="su-addons-item-button"><a href="' . $addon['url'] . '" class="button button-primary" target="_blank">' . __( 'Learn more', 'su' ) . '</a></div></div></div>';
229
- }
230
- $output[] = '</div>';
231
- if ( count( $plugins ) ) {
232
- $output[] = '<h2>' . __( 'Other WordPress Plugins', 'su' ) . '</h2>';
233
- $output[] = '<div class="su-addons-loop su-clearfix">';
234
- foreach ( $plugins as $plugin ) {
235
- $output[] = '<div class="su-addons-item" style="visibility:hidden" data-url="' . $plugin['url'] . '"><img src="' . $plugin['image'] . '" alt="' . $plugin['image'] . '" /><div class="su-addons-item-content"><h4>' . $plugin['name'] . '</h4><p>' . $plugin['desc'] . '</p>' . Su_Shortcodes::button( array( 'url' => $plugin['url'], 'target' => 'blank', 'style' => 'flat', 'background' => '#FF7654', 'wide' => 'yes', 'radius' => '0' ), __( 'Learn more', 'su' ) ) . '</div></div>';
236
- }
237
- $output[] = '</div>';
238
- }
239
- su_query_asset( 'css', array( 'animate', 'su-options-page' ) );
240
- su_query_asset( 'js', array( 'jquery', 'su-options-page' ) );
241
- return '<div id="su-addons-screen">' . implode( '', $output ) . '</div>';
242
- }
243
- }
 
1
+ <?php
2
+ class Su_Admin_Views {
3
+ function __construct() {}
4
+
5
+ public static function about( $field, $config ) {
6
+ ob_start();
7
+ ?>
8
+ <div id="su-about-screen">
9
+ <h1><?php _e( 'Welcome to Shortcodes Ultimate', 'su' ); ?> <small><?php _e( 'A real swiss army knife for WordPress', 'su' ); ?></small></h1>
10
+ <div class="sunrise-inline-menu">
11
+ <a href="http://gndev.info/shortcodes-ultimate/" target="_blank"><strong><?php _e( 'Project homepage', 'su' ); ?></strong></a>
12
+ <a href="http://gndev.info/kb/" target="_blank"><?php _e( 'Documentation', 'su' ); ?></a>
13
+ <a href="http://wordpress.org/support/plugin/shortcodes-ultimate/" target="_blank"><?php _e( 'Support forum', 'su' ); ?></a>
14
+ <a href="http://wordpress.org/extend/plugins/shortcodes-ultimate/changelog/" target="_blank"><?php _e( 'Changelog', 'su' ); ?></a>
15
+ <a href="https://github.com/gndev/shortcodes-ultimate" target="_blank"><?php _e( 'Fork on GitHub', 'su' ); ?></a>
16
+ </div>
17
+ <div class="su-clearfix">
18
+ <div class="su-about-column">
19
+ <h3><?php _e( 'Plugin features', 'su' ); ?></h3>
20
+ <ul>
21
+ <li><?php _e( '40+ amazing shortcodes', 'su' ); ?></li>
22
+ <li><?php _e( 'Power of CSS3 transitions', 'su' ); ?></li>
23
+ <li><?php _e( 'Handy shortcodes generator', 'su' ) ?></li>
24
+ <li><?php _e( 'International', 'su' ); ?></li>
25
+ <li><?php _e( 'Documented API', 'su' ); ?></li>
26
+ </ul>
27
+ </div>
28
+ <div class="su-about-column">
29
+ <h3><?php _e( 'What is a shortcode?', 'su' ); ?></h3>
30
+ <p><?php _e( '<strong>Shortcode</strong> is a WordPress-specific code that lets you do nifty things with very little effort.', 'su' ); ?></p>
31
+ <p><?php _e( 'Shortcodes can embed files or create objects that would normally require lots of complicated, ugly code in just one line. Shortcode = shortcut.', 'su' ); ?></p>
32
+ </div>
33
+ </div>
34
+ <div class="su-clearfix">
35
+ <div class="su-about-column">
36
+ <h3><?php _e( 'How does it works', 'su' ); ?></h3>
37
+ <a href="http://www.youtube.com/watch?v=DR2c266yWEA?autoplay=1&amp;showinfo=0&amp;rel=0&amp;theme=light#" target="_blank" class="su-demo-video"><img src="<?php echo plugins_url( 'assets/images/banners/how-it-works.jpg', SU_PLUGIN_FILE ); ?>" alt=""></a>
38
+ </div>
39
+ <div class="su-about-column">
40
+ <h3><?php _e( 'More videos', 'su' ); ?></h3>
41
+ <ul>
42
+ <li><a href="http://www.youtube.com/watch?v=IjmaXz-b55I" target="_blank"><?php _e( 'Shortcodes Ultimate Tutorial', 'su' ); ?></a></li>
43
+ <li><a href="http://www.youtube.com/watch?v=YU3Zu6C5ZfA" target="_blank"><?php _e( 'How to use special widget', 'su' ); ?></a></li>
44
+ <li><a href="http://www.screenr.com/BK0H" target="_blank"><?php _e( 'How to create Carousel', 'su' ); ?></a></li>
45
+ <li><a href="http://www.youtube.com/watch?v=kCWyO2F7jTw" target="_blank"><?php _e( 'How to create image gallery', 'su' ); ?></a></li>
46
+ </ul>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ <?php
51
+ $output = ob_get_contents();
52
+ ob_end_clean();
53
+ su_query_asset( 'css', array( 'magnific-popup', 'su-options-page' ) );
54
+ su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'su-options-page' ) );
55
+ return $output;
56
+ }
57
+
58
+ public static function custom_css( $field, $config ) {
59
+ ob_start();
60
+ ?>
61
+ <div id="su-custom-css-screen">
62
+ <div class="su-custom-css-originals">
63
+ <p><strong><?php _e( 'You can overview the original styles to overwrite it', $config['textdomain'] ); ?></strong></p>
64
+ <div class="sunrise-inline-menu">
65
+ <a href="<?php echo su_skin_url( 'content-shortcodes.css' ); ?>">content-shortcodes.css</a>
66
+ <a href="<?php echo su_skin_url( 'box-shortcodes.css' ); ?>">box-shortcodes.css</a>
67
+ <a href="<?php echo su_skin_url( 'media-shortcodes.css' ); ?>">media-shortcodes.css</a>
68
+ <a href="<?php echo su_skin_url( 'galleries-shortcodes.css' ); ?>">galleries-shortcodes.css</a>
69
+ <a href="<?php echo su_skin_url( 'players-shortcodes.css' ); ?>">players-shortcodes.css</a>
70
+ <a href="<?php echo su_skin_url( 'other-shortcodes.css' ); ?>">other-shortcodes.css</a>
71
+ </div>
72
+ <?php do_action( 'su/admin/css/originals/after' ); ?>
73
+ </div>
74
+ <div class="su-custom-css-vars">
75
+ <p><strong><?php _e( 'You can use next variables in your custom CSS', $config['textdomain'] ); ?></strong></p>
76
+ <code>%home_url%</code> - <?php _e( 'home url', $config['textdomain'] ); ?><br/>
77
+ <code>%theme_url%</code> - <?php _e( 'theme url', $config['textdomain'] ); ?><br/>
78
+ <code>%plugin_url%</code> - <?php _e( 'plugin url', $config['textdomain'] ); ?>
79
+ </div>
80
+ <div id="su-custom-css-editor">
81
+ <div id="sunrise-field-<?php echo $field['id']; ?>-editor"></div>
82
+ <textarea name="sunrise[<?php echo $field['id']; ?>]" id="sunrise-field-<?php echo $field['id']; ?>" class="regular-text" rows="10"><?php echo stripslashes( get_option( $config['prefix'] . $field['id'] ) ); ?></textarea>
83
+ </div>
84
+ </div>
85
+ <?php
86
+ $output = ob_get_contents();
87
+ ob_end_clean();
88
+ su_query_asset( 'css', array( 'magnific-popup', 'su-options-page' ) );
89
+ su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'ace', 'su-options-page' ) );
90
+ return $output;
91
+ }
92
+
93
+ public static function examples( $field, $config ) {
94
+ $output = array();
95
+ $examples = Su_Data::examples();
96
+ $preview = '<div style="display:none"><div id="su-examples-window"><div id="su-examples-preview"></div></div></div>';
97
+ $open = ( isset( $_GET['example'] ) ) ? sanitize_key( $_GET['example'] ) : '';
98
+ $open = '<input id="su_open_example" type="hidden" name="su_open_example" value="' . $open . '" />';
99
+ $nonce = '<input id="su_examples_nonce" type="hidden" name="su_examples_nonce" value="' . wp_create_nonce( 'su_examples_nonce' ) . '" />';
100
+ foreach ( $examples as $group ) {
101
+ $items = array();
102
+ if ( isset( $group['items'] ) ) foreach ( $group['items'] as $item ) {
103
+ $code = ( isset( $item['code'] ) ) ? $item['code'] : plugins_url( 'inc/examples/' . $item['id'] . '.example', SU_PLUGIN_FILE );
104
+ $id = ( isset( $item['id'] ) ) ? $item['id'] : '';
105
+ $items[] = '<div class="su-examples-item" data-code="' . $code . '" data-id="' . $id . '" data-mfp-src="#su-examples-window"><i class="fa fa-' . $item['icon'] . '"></i> ' . $item['name'] . '</div>';
106
+ }
107
+ $output[] = '<div class="su-examples-group su-clearfix"><h2 class="su-examples-group-title">' . $group['title'] . '</h2>' . implode( '', $items ) . '</div>';
108
+ }
109
+ su_query_asset( 'css', array( 'magnific-popup', 'font-awesome', 'su-options-page' ) );
110
+ su_query_asset( 'js', array( 'jquery', 'magnific-popup', 'su-options-page' ) );
111
+ return '<div id="su-examples-screen">' . implode( '', $output ) . '</div>' . $preview . $open . $nonce;
112
+ }
113
+
114
+ public static function cheatsheet( $field, $config ) {
115
+ // Prepare print button
116
+ $print = '<div><a href="javascript:;" id="su-cheatsheet-print" class="su-cheatsheet-switch button button-primary button-large">' . __( 'Printable version', 'su' ) . '</a><div id="su-cheatsheet-print-head"><h1>' . __( 'Shortcodes Ultimate', 'su' ) . ': ' . __( 'Cheatsheet', 'su' ) . '</h1><a href="javascript:;" class="su-cheatsheet-switch">&larr; ' . __( 'Back to Dashboard', 'su' ) . '</a></div></div>';
117
+ // Prepare table array
118
+ $table = array();
119
+ // Table start
120
+ $table[] = '<table><tr><th style="width:20%;">' . __( 'Shortcode', 'su' ) . '</th><th style="width:50%">' . __( 'Attributes', 'su' ) . '</th><th style="width:30%">' . __( 'Example code', 'su' ) . '</th></tr>';
121
+ // Loop through shortcodes
122
+ foreach ( (array) Su_Data::shortcodes() as $name => $shortcode ) {
123
+ // Prepare vars
124
+ $icon = ( isset( $shortcode['icon'] ) ) ? $shortcode['icon'] : 'puzzle-piece';
125
+ $shortcode['name'] = ( isset( $shortcode['name'] ) ) ? $shortcode['name'] : $name;
126
+ $attributes = array();
127
+ $example = array();
128
+ $icons = 'icon: music, icon: envelope &hellip; <a href="http://fortawesome.github.io/Font-Awesome/icons/" target="_blank">' . __( 'full list', 'su' ) . '</a>';
129
+ // Loop through attributes
130
+ if ( is_array( $shortcode['atts'] ) )
131
+ foreach ( $shortcode['atts'] as $id => $data ) {
132
+ // Prepare default value
133
+ $default = ( isset( $data['default'] ) && $data['default'] !== '' ) ? '<p><em>' . __( 'Default value', 'su' ) . ':</em> ' . $data['default'] . '</p>' : '';
134
+ // Check type is set
135
+ if ( empty( $data['type'] ) ) $data['type'] = 'text';
136
+ // Switch attribute types
137
+ switch ( $data['type'] ) {
138
+ // Select
139
+ case 'select':
140
+ $value = implode( ', ', array_keys( $data['values'] ) );
141
+ break;
142
+ // Slider and number
143
+ case 'slider':
144
+ case 'number':
145
+ $value = $data['min'] . '&hellip;' . $data['max'];
146
+ break;
147
+ // Bool
148
+ case 'bool':
149
+ $value = 'yes | no';
150
+ break;
151
+ // Icon
152
+ case 'icon':
153
+ $value = $icons;
154
+ break;
155
+ // Color
156
+ case 'color':
157
+ $value = __( '#RGB and rgba() colors' );
158
+ break;
159
+ // Default value
160
+ default:
161
+ $value = $data['default'];
162
+ break;
163
+ }
164
+ // Check empty value
165
+ if ( $value === '' ) $value = __( 'Any text value', 'su' );
166
+ // Extra CSS class
167
+ if ( $id === 'class' ) $value = __( 'Any custom CSS classes', 'su' );
168
+ // Add attribute
169
+ $attributes[] = '<div class="su-shortcode-attribute"><strong>' . $data['name'] . ' <em>&ndash; ' . $id . '</em></strong><p><em>' . __( 'Possible values', 'su' ) . ':</em> ' . $value . '</p>' . $default . '</div>';
170
+ // Add attribute to the example code
171
+ $example[] = $id . '="' . $data['default'] . '"';
172
+ }
173
+ // Prepare example code
174
+ $example = '[%prefix_' . $name . ' ' . implode( ' ', $example ) . ']';
175
+ // Prepare content value
176
+ if ( empty( $shortcode['content'] ) ) $shortcode['content'] = '';
177
+ // Add wrapping code
178
+ if ( $shortcode['type'] === 'wrap' ) $example .= esc_textarea( $shortcode['content'] ) . '[/%prefix_' . $name . ']';
179
+ // Change compatibility prefix
180
+ $example = str_replace( array( '%prefix_', '__' ), su_cmpt(), $example );
181
+ // Shortcode
182
+ $table[] = '<td>' . '<span class="su-shortcode-icon">' . Su_Tools::icon( $icon ) . '</span>' . $shortcode['name'] . '<br/><em class="su-shortcode-desc">' . $shortcode['desc'] . '</em></td>';
183
+ // Attributes
184
+ $table[] = '<td>' . implode( '', $attributes ) . '</td>';
185
+ // Example code
186
+ $table[] = '<td><code contenteditable="true">' . $example . '</code></td></tr>';
187
+ }
188
+ // Table end
189
+ $table[] = '</table>';
190
+ // Query assets
191
+ su_query_asset( 'css', array( 'font-awesome', 'su-cheatsheet' ) );
192
+ su_query_asset( 'js', array( 'jquery', 'su-options-page' ) );
193
+ // Return output
194
+ return '<div id="su-cheatsheet-screen">' . $print . implode( '', $table ) . '</div>';
195
+ }
196
+
197
+ public static function addons( $field, $config ) {
198
+ $output = array();
199
+ $addons = array(
200
+ array(
201
+ 'name' => __( 'New Shortcodes', 'su' ),
202
+ 'desc' => __( 'Parallax sections, responsive content slider, pricing tables, vector icons, testimonials, progress bars and even more', 'su' ),
203
+ 'url' => 'http://gndev.info/shortcodes-ultimate/extra/',
204
+ 'image' => plugins_url( 'assets/images/banners/extra.png', SU_PLUGIN_FILE )
205
+ ),
206
+ array(
207
+ 'name' => __( 'Maker', 'su' ),
208
+ 'desc' => __( 'This add-on allows you to create custom shortcodes. You can easily create any shortcode with different parameters or even override default shortcodes', 'su' ),
209
+ 'url' => 'http://gndev.info/shortcodes-ultimate/maker/',
210
+ 'image' => plugins_url( 'assets/images/banners/maker.png', SU_PLUGIN_FILE )
211
+ ),
212
+ array(
213
+ 'name' => __( 'Skins', 'su' ),
214
+ 'desc' => __( 'Set of additional skins for Shortcodes Ultimate. It includes skins for accordeons/spoilers, tabs and some other shortcodes', 'su' ),
215
+ 'url' => 'http://gndev.info/shortcodes-ultimate/skins/',
216
+ 'image' => plugins_url( 'assets/images/banners/skins.png', SU_PLUGIN_FILE )
217
+ ),
218
+ array(
219
+ 'name' => __( 'Add-ons bundle', 'su' ),
220
+ 'desc' => __( 'Get all three add-ons with huge discount!', 'su' ),
221
+ 'url' => 'http://gndev.info/shortcodes-ultimate/add-ons-bundle/',
222
+ 'image' => plugins_url( 'assets/images/banners/bundle.png', SU_PLUGIN_FILE )
223
+ ),
224
+ );
225
+ $plugins = array();
226
+ $output[] = '<h2>' . __( 'Shortcodes Ultimate Add-ons', 'su' ) . '</h2>';
227
+ $output[] = '<div class="su-addons-loop su-clearfix">';
228
+ foreach ( $addons as $addon ) {
229
+ $output[] = '<div class="su-addons-item" style="visibility:hidden" data-url="' . $addon['url'] . '"><img src="' . $addon['image'] . '" alt="' . $addon['image'] . '" /><div class="su-addons-item-content"><h4>' . $addon['name'] . '</h4><p>' . $addon['desc'] . '</p><div class="su-addons-item-button"><a href="' . $addon['url'] . '" class="button button-primary" target="_blank">' . __( 'Learn more', 'su' ) . '</a></div></div></div>';
230
+ }
231
+ $output[] = '</div>';
232
+ if ( count( $plugins ) ) {
233
+ $output[] = '<h2>' . __( 'Other WordPress Plugins', 'su' ) . '</h2>';
234
+ $output[] = '<div class="su-addons-loop su-clearfix">';
235
+ foreach ( $plugins as $plugin ) {
236
+ $output[] = '<div class="su-addons-item" style="visibility:hidden" data-url="' . $plugin['url'] . '"><img src="' . $plugin['image'] . '" alt="' . $plugin['image'] . '" /><div class="su-addons-item-content"><h4>' . $plugin['name'] . '</h4><p>' . $plugin['desc'] . '</p>' . Su_Shortcodes::button( array( 'url' => $plugin['url'], 'target' => 'blank', 'style' => 'flat', 'background' => '#FF7654', 'wide' => 'yes', 'radius' => '0' ), __( 'Learn more', 'su' ) ) . '</div></div>';
237
+ }
238
+ $output[] = '</div>';
239
+ }
240
+ su_query_asset( 'css', array( 'animate', 'su-options-page' ) );
241
+ su_query_asset( 'js', array( 'jquery', 'su-options-page' ) );
242
+ return '<div id="su-addons-screen">' . implode( '', $output ) . '</div>';
243
+ }
244
+ }
inc/core/assets.php CHANGED
@@ -1,227 +1,227 @@
1
- <?php
2
-
3
- /**
4
- * Class for managing plugin assets
5
- */
6
- class Su_Assets {
7
-
8
- /**
9
- * Set of queried assets
10
- *
11
- * @var array
12
- */
13
- static $assets = array( 'css' => array(), 'js' => array() );
14
-
15
- /**
16
- * Constructor
17
- */
18
- function __construct() {
19
- // Register
20
- add_action( 'wp_head', array( __CLASS__, 'register' ) );
21
- add_action( 'admin_head', array( __CLASS__, 'register' ) );
22
- add_action( 'su/generator/preview/before', array( __CLASS__, 'register' ) );
23
- add_action( 'su/examples/preview/before', array( __CLASS__, 'register' ) );
24
- // Enqueue
25
- add_action( 'wp_footer', array( __CLASS__, 'enqueue' ) );
26
- add_action( 'admin_footer', array( __CLASS__, 'enqueue' ) );
27
- // Print
28
- add_action( 'su/generator/preview/after', array( __CLASS__, 'prnt' ) );
29
- add_action( 'su/examples/preview/after', array( __CLASS__, 'prnt' ) );
30
- // Custom CSS
31
- add_action( 'wp_footer', array( __CLASS__, 'custom_css' ), 99 );
32
- add_action( 'su/generator/preview/after', array( __CLASS__, 'custom_css' ), 99 );
33
- add_action( 'su/examples/preview/after', array( __CLASS__, 'custom_css' ), 99 );
34
- // Custom TinyMCE CSS and JS
35
- // add_filter( 'mce_css', array( __CLASS__, 'mce_css' ) );
36
- // add_filter( 'mce_external_plugins', array( __CLASS__, 'mce_js' ) );
37
- }
38
-
39
- /**
40
- * Register assets
41
- */
42
- public static function register() {
43
- // Chart.js
44
- wp_register_script( 'chartjs', plugins_url( 'assets/js/chart.js', SU_PLUGIN_FILE ), false, '0.2', true );
45
- // SimpleSlider
46
- wp_register_script( 'simpleslider', plugins_url( 'assets/js/simpleslider.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.0.0', true );
47
- wp_register_style( 'simpleslider', plugins_url( 'assets/css/simpleslider.css', SU_PLUGIN_FILE ), false, '1.0.0', 'all' );
48
- // Owl Carousel
49
- wp_register_script( 'owl-carousel', plugins_url( 'assets/js/owl-carousel.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.3.2', true );
50
- wp_register_style( 'owl-carousel', plugins_url( 'assets/css/owl-carousel.css', SU_PLUGIN_FILE ), false, '1.3.2', 'all' );
51
- wp_register_style( 'owl-carousel-transitions', plugins_url( 'assets/css/owl-carousel-transitions.css', SU_PLUGIN_FILE ), false, '1.3.2', 'all' );
52
- // Font Awesome
53
- wp_register_style( 'font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css', false, '4.1.0', 'all' );
54
- // Animate.css
55
- wp_register_style( 'animate', plugins_url( 'assets/css/animate.css', SU_PLUGIN_FILE ), false, '3.1.1', 'all' );
56
- // InView
57
- wp_register_script( 'inview', plugins_url( 'assets/js/inview.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.1.1', true );
58
- // qTip
59
- wp_register_style( 'qtip', plugins_url( 'assets/css/qtip.css', SU_PLUGIN_FILE ), false, '2.1.1', 'all' );
60
- wp_register_script( 'qtip', plugins_url( 'assets/js/qtip.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.1.1', true );
61
- // jsRender
62
- wp_register_script( 'jsrender', plugins_url( 'assets/js/jsrender.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.0.0-beta', true );
63
- // Magnific Popup
64
- wp_register_style( 'magnific-popup', plugins_url( 'assets/css/magnific-popup.css', SU_PLUGIN_FILE ), false, '0.9.9', 'all' );
65
- wp_register_script( 'magnific-popup', plugins_url( 'assets/js/magnific-popup.js', SU_PLUGIN_FILE ), array( 'jquery' ), '0.9.9', true );
66
- wp_localize_script( 'magnific-popup', 'su_magnific_popup', array(
67
- 'close' => __( 'Close (Esc)', 'su' ),
68
- 'loading' => __( 'Loading...', 'su' ),
69
- 'prev' => __( 'Previous (Left arrow key)', 'su' ),
70
- 'next' => __( 'Next (Right arrow key)', 'su' ),
71
- 'counter' => sprintf( __( '%s of %s', 'su' ), '%curr%', '%total%' ),
72
- 'error' => sprintf( __( 'Failed to load this link. %sOpen link%s.', 'su' ), '<a href="%url%" target="_blank"><u>', '</u></a>' )
73
- ) );
74
- // Ace
75
- wp_register_script( 'ace', plugins_url( 'assets/js/ace/ace.js', SU_PLUGIN_FILE ), false, '1.1.3', true );
76
- // Swiper
77
- wp_register_script( 'swiper', plugins_url( 'assets/js/swiper.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.6.1', true );
78
- // jPlayer
79
- wp_register_script( 'jplayer', plugins_url( 'assets/js/jplayer.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.4.0', true );
80
- // Options page
81
- wp_register_style( 'su-options-page', plugins_url( 'assets/css/options-page.css', SU_PLUGIN_FILE ), false, SU_PLUGIN_VERSION, 'all' );
82
- wp_register_script( 'su-options-page', plugins_url( 'assets/js/options-page.js', SU_PLUGIN_FILE ), array( 'magnific-popup', 'jquery-ui-sortable', 'ace', 'jsrender' ), SU_PLUGIN_VERSION, true );
83
- wp_localize_script( 'su-options-page', 'su_options_page', array(
84
- 'upload_title' => __( 'Choose files', 'su' ),
85
- 'upload_insert' => __( 'Add selected files', 'su' ),
86
- 'not_clickable' => __( 'This button is not clickable', 'su' )
87
- ) );
88
- // Cheatsheet
89
- wp_register_style( 'su-cheatsheet', plugins_url( 'assets/css/cheatsheet.css', SU_PLUGIN_FILE ), false, SU_PLUGIN_VERSION, 'all' );
90
- // Generator
91
- wp_register_style( 'su-generator', plugins_url( 'assets/css/generator.css', SU_PLUGIN_FILE ), array( 'farbtastic', 'magnific-popup' ), SU_PLUGIN_VERSION, 'all' );
92
- wp_register_script( 'su-generator', plugins_url( 'assets/js/generator.js', SU_PLUGIN_FILE ), array( 'farbtastic', 'magnific-popup', 'qtip' ), SU_PLUGIN_VERSION, true );
93
- wp_localize_script( 'su-generator', 'su_generator', array(
94
- 'upload_title' => __( 'Choose file', 'su' ),
95
- 'upload_insert' => __( 'Insert', 'su' ),
96
- 'isp_media_title' => __( 'Select images', 'su' ),
97
- 'isp_media_insert' => __( 'Add selected images', 'su' ),
98
- 'presets_prompt_msg' => __( 'Please enter a name for new preset', 'su' ),
99
- 'presets_prompt_value' => __( 'New preset', 'su' ),
100
- 'last_used' => __( 'Last used settings', 'su' )
101
- ) );
102
- // Shortcodes stylesheets
103
- wp_register_style( 'su-content-shortcodes', self::skin_url( 'content-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
104
- wp_register_style( 'su-box-shortcodes', self::skin_url( 'box-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
105
- wp_register_style( 'su-media-shortcodes', self::skin_url( 'media-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
106
- wp_register_style( 'su-other-shortcodes', self::skin_url( 'other-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
107
- wp_register_style( 'su-galleries-shortcodes', self::skin_url( 'galleries-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
108
- wp_register_style( 'su-players-shortcodes', self::skin_url( 'players-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
109
- // Shortcodes scripts
110
- wp_register_script( 'su-galleries-shortcodes', plugins_url( 'assets/js/galleries-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery', 'swiper' ), SU_PLUGIN_VERSION, true );
111
- wp_register_script( 'su-players-shortcodes', plugins_url( 'assets/js/players-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery', 'jplayer' ), SU_PLUGIN_VERSION, true );
112
- wp_register_script( 'su-other-shortcodes', plugins_url( 'assets/js/other-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery' ), SU_PLUGIN_VERSION, true );
113
- wp_localize_script( 'su-other-shortcodes', 'su_other_shortcodes', array( 'no_preview' => __( 'This shortcode doesn\'t work in live preview. Please insert it into editor and preview on the site.', 'su' ) ) );
114
- // Hook to deregister assets or add custom
115
- do_action( 'su/assets/register' );
116
- }
117
-
118
- /**
119
- * Enqueue assets
120
- */
121
- public static function enqueue() {
122
- // Get assets query and plugin object
123
- $assets = self::assets();
124
- // Enqueue stylesheets
125
- foreach ( $assets['css'] as $style ) wp_enqueue_style( $style );
126
- // Enqueue scripts
127
- foreach ( $assets['js'] as $script ) wp_enqueue_script( $script );
128
- // Hook to dequeue assets or add custom
129
- do_action( 'su/assets/enqueue', $assets );
130
- }
131
-
132
- /**
133
- * Print assets without enqueuing
134
- */
135
- public static function prnt() {
136
- // Prepare assets set
137
- $assets = self::assets();
138
- // Enqueue stylesheets
139
- wp_print_styles( $assets['css'] );
140
- // Enqueue scripts
141
- wp_print_scripts( $assets['js'] );
142
- // Hook
143
- do_action( 'su/assets/print', $assets );
144
- }
145
-
146
- /**
147
- * Print custom CSS
148
- */
149
- public static function custom_css() {
150
- // Get custom CSS and apply filters to it
151
- $custom_css = apply_filters( 'su/assets/custom_css', str_replace( '&#039;', '\'', html_entity_decode( (string) get_option( 'su_option_custom-css' ) ) ) );
152
- // Print CSS if exists
153
- if ( $custom_css ) echo "\n\n<!-- Shortcodes Ultimate custom CSS - begin -->\n<style type='text/css'>\n" . stripslashes( str_replace( array( '%theme_url%', '%home_url%', '%plugin_url%' ), array( trailingslashit( get_stylesheet_directory_uri() ), trailingslashit( get_option( 'home' ) ), trailingslashit( plugins_url( '', SU_PLUGIN_FILE ) ) ), $custom_css ) ) . "\n</style>\n<!-- Shortcodes Ultimate custom CSS - end -->\n\n";
154
- }
155
-
156
- /**
157
- * Styles for visualised shortcodes
158
- */
159
- public static function mce_css( $mce_css ) {
160
- if ( ! empty( $mce_css ) ) $mce_css .= ',';
161
- $mce_css .= plugins_url( 'assets/css/tinymce.css', SU_PLUGIN_FILE );
162
- return $mce_css;
163
- }
164
-
165
- /**
166
- * TinyMCE plugin for visualised shortcodes
167
- */
168
- public static function mce_js( $plugins ) {
169
- $plugins['shortcodesultimate'] = plugins_url( 'assets/js/tinymce.js', SU_PLUGIN_FILE );
170
- return $plugins;
171
- }
172
-
173
- /**
174
- * Add asset to the query
175
- */
176
- public static function add( $type, $handle ) {
177
- // Array with handles
178
- if ( is_array( $handle ) ) { foreach ( $handle as $h ) self::$assets[$type][$h] = $h; }
179
- // Single handle
180
- else self::$assets[$type][$handle] = $handle;
181
- }
182
- /**
183
- * Get queried assets
184
- */
185
- public static function assets() {
186
- // Get assets query
187
- $assets = self::$assets;
188
- // Apply filters to assets set
189
- $assets['css'] = array_unique( ( array ) apply_filters( 'su/assets/css', ( array ) array_unique( $assets['css'] ) ) );
190
- $assets['js'] = array_unique( ( array ) apply_filters( 'su/assets/js', ( array ) array_unique( $assets['js'] ) ) );
191
- // Return set
192
- return $assets;
193
- }
194
-
195
- /**
196
- * Helper to get full URL of a skin file
197
- */
198
- public static function skin_url( $file = '' ) {
199
- $shult = shortcodes_ultimate();
200
- $skin = get_option( 'su_option_skin' );
201
- $uploads = wp_upload_dir(); $uploads = $uploads['baseurl'];
202
- // Prepare url to skin directory
203
- $url = ( !$skin || $skin === 'default' ) ? plugins_url( 'assets/css/', SU_PLUGIN_FILE ) : $uploads . '/shortcodes-ultimate-skins/' . $skin;
204
- return trailingslashit( apply_filters( 'su/assets/skin', $url ) ) . $file;
205
- }
206
- }
207
-
208
- new Su_Assets;
209
-
210
- /**
211
- * Helper function to add asset to the query
212
- *
213
- * @param string $type Asset type (css|js)
214
- * @param mixed $handle Asset handle or array with handles
215
- */
216
- function su_query_asset( $type, $handle ) {
217
- Su_Assets::add( $type, $handle );
218
- }
219
-
220
- /**
221
- * Helper function to get current skin url
222
- *
223
- * @param string $file Asset file name. Example value: box-shortcodes.css
224
- */
225
- function su_skin_url( $file ) {
226
- return Su_Assets::skin_url( $file );
227
- }
1
+ <?php
2
+
3
+ /**
4
+ * Class for managing plugin assets
5
+ */
6
+ class Su_Assets {
7
+
8
+ /**
9
+ * Set of queried assets
10
+ *
11
+ * @var array
12
+ */
13
+ static $assets = array( 'css' => array(), 'js' => array() );
14
+
15
+ /**
16
+ * Constructor
17
+ */
18
+ function __construct() {
19
+ // Register
20
+ add_action( 'wp_head', array( __CLASS__, 'register' ) );
21
+ add_action( 'admin_head', array( __CLASS__, 'register' ) );
22
+ add_action( 'su/generator/preview/before', array( __CLASS__, 'register' ) );
23
+ add_action( 'su/examples/preview/before', array( __CLASS__, 'register' ) );
24
+ // Enqueue
25
+ add_action( 'wp_footer', array( __CLASS__, 'enqueue' ) );
26
+ add_action( 'admin_footer', array( __CLASS__, 'enqueue' ) );
27
+ // Print
28
+ add_action( 'su/generator/preview/after', array( __CLASS__, 'prnt' ) );
29
+ add_action( 'su/examples/preview/after', array( __CLASS__, 'prnt' ) );
30
+ // Custom CSS
31
+ add_action( 'wp_footer', array( __CLASS__, 'custom_css' ), 99 );
32
+ add_action( 'su/generator/preview/after', array( __CLASS__, 'custom_css' ), 99 );
33
+ add_action( 'su/examples/preview/after', array( __CLASS__, 'custom_css' ), 99 );
34
+ // Custom TinyMCE CSS and JS
35
+ // add_filter( 'mce_css', array( __CLASS__, 'mce_css' ) );
36
+ // add_filter( 'mce_external_plugins', array( __CLASS__, 'mce_js' ) );
37
+ }
38
+
39
+ /**
40
+ * Register assets
41
+ */
42
+ public static function register() {
43
+ // Chart.js
44
+ wp_register_script( 'chartjs', plugins_url( 'assets/js/chart.js', SU_PLUGIN_FILE ), false, '0.2', true );
45
+ // SimpleSlider
46
+ wp_register_script( 'simpleslider', plugins_url( 'assets/js/simpleslider.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.0.0', true );
47
+ wp_register_style( 'simpleslider', plugins_url( 'assets/css/simpleslider.css', SU_PLUGIN_FILE ), false, '1.0.0', 'all' );
48
+ // Owl Carousel
49
+ wp_register_script( 'owl-carousel', plugins_url( 'assets/js/owl-carousel.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.3.2', true );
50
+ wp_register_style( 'owl-carousel', plugins_url( 'assets/css/owl-carousel.css', SU_PLUGIN_FILE ), false, '1.3.2', 'all' );
51
+ wp_register_style( 'owl-carousel-transitions', plugins_url( 'assets/css/owl-carousel-transitions.css', SU_PLUGIN_FILE ), false, '1.3.2', 'all' );
52
+ // Font Awesome
53
+ wp_register_style( 'font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css', false, '4.1.0', 'all' );
54
+ // Animate.css
55
+ wp_register_style( 'animate', plugins_url( 'assets/css/animate.css', SU_PLUGIN_FILE ), false, '3.1.1', 'all' );
56
+ // InView
57
+ wp_register_script( 'inview', plugins_url( 'assets/js/inview.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.1.1', true );
58
+ // qTip
59
+ wp_register_style( 'qtip', plugins_url( 'assets/css/qtip.css', SU_PLUGIN_FILE ), false, '2.1.1', 'all' );
60
+ wp_register_script( 'qtip', plugins_url( 'assets/js/qtip.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.1.1', true );
61
+ // jsRender
62
+ wp_register_script( 'jsrender', plugins_url( 'assets/js/jsrender.js', SU_PLUGIN_FILE ), array( 'jquery' ), '1.0.0-beta', true );
63
+ // Magnific Popup
64
+ wp_register_style( 'magnific-popup', plugins_url( 'assets/css/magnific-popup.css', SU_PLUGIN_FILE ), false, '0.9.9', 'all' );
65
+ wp_register_script( 'magnific-popup', plugins_url( 'assets/js/magnific-popup.js', SU_PLUGIN_FILE ), array( 'jquery' ), '0.9.9', true );
66
+ wp_localize_script( 'magnific-popup', 'su_magnific_popup', array(
67
+ 'close' => __( 'Close (Esc)', 'su' ),
68
+ 'loading' => __( 'Loading...', 'su' ),
69
+ 'prev' => __( 'Previous (Left arrow key)', 'su' ),
70
+ 'next' => __( 'Next (Right arrow key)', 'su' ),
71
+ 'counter' => sprintf( __( '%s of %s', 'su' ), '%curr%', '%total%' ),
72
+ 'error' => sprintf( __( 'Failed to load this link. %sOpen link%s.', 'su' ), '<a href="%url%" target="_blank"><u>', '</u></a>' )
73
+ ) );
74
+ // Ace
75
+ wp_register_script( 'ace', plugins_url( 'assets/js/ace/ace.js', SU_PLUGIN_FILE ), false, '1.1.3', true );
76
+ // Swiper
77
+ wp_register_script( 'swiper', plugins_url( 'assets/js/swiper.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.6.1', true );
78
+ // jPlayer
79
+ wp_register_script( 'jplayer', plugins_url( 'assets/js/jplayer.js', SU_PLUGIN_FILE ), array( 'jquery' ), '2.4.0', true );
80
+ // Options page
81
+ wp_register_style( 'su-options-page', plugins_url( 'assets/css/options-page.css', SU_PLUGIN_FILE ), false, SU_PLUGIN_VERSION, 'all' );
82
+ wp_register_script( 'su-options-page', plugins_url( 'assets/js/options-page.js', SU_PLUGIN_FILE ), array( 'magnific-popup', 'jquery-ui-sortable', 'ace', 'jsrender' ), SU_PLUGIN_VERSION, true );
83
+ wp_localize_script( 'su-options-page', 'su_options_page', array(
84
+ 'upload_title' => __( 'Choose files', 'su' ),
85
+ 'upload_insert' => __( 'Add selected files', 'su' ),
86
+ 'not_clickable' => __( 'This button is not clickable', 'su' )
87
+ ) );
88
+ // Cheatsheet
89
+ wp_register_style( 'su-cheatsheet', plugins_url( 'assets/css/cheatsheet.css', SU_PLUGIN_FILE ), false, SU_PLUGIN_VERSION, 'all' );
90
+ // Generator
91
+ wp_register_style( 'su-generator', plugins_url( 'assets/css/generator.css', SU_PLUGIN_FILE ), array( 'farbtastic', 'magnific-popup' ), SU_PLUGIN_VERSION, 'all' );
92
+ wp_register_script( 'su-generator', plugins_url( 'assets/js/generator.js', SU_PLUGIN_FILE ), array( 'farbtastic', 'magnific-popup', 'qtip' ), SU_PLUGIN_VERSION, true );
93
+ wp_localize_script( 'su-generator', 'su_generator', array(
94
+ 'upload_title' => __( 'Choose file', 'su' ),
95
+ 'upload_insert' => __( 'Insert', 'su' ),
96
+ 'isp_media_title' => __( 'Select images', 'su' ),
97
+ 'isp_media_insert' => __( 'Add selected images', 'su' ),
98
+ 'presets_prompt_msg' => __( 'Please enter a name for new preset', 'su' ),
99
+ 'presets_prompt_value' => __( 'New preset', 'su' ),
100
+ 'last_used' => __( 'Last used settings', 'su' )
101
+ ) );
102
+ // Shortcodes stylesheets
103
+ wp_register_style( 'su-content-shortcodes', self::skin_url( 'content-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
104
+ wp_register_style( 'su-box-shortcodes', self::skin_url( 'box-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
105
+ wp_register_style( 'su-media-shortcodes', self::skin_url( 'media-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
106
+ wp_register_style( 'su-other-shortcodes', self::skin_url( 'other-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
107
+ wp_register_style( 'su-galleries-shortcodes', self::skin_url( 'galleries-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
108
+ wp_register_style( 'su-players-shortcodes', self::skin_url( 'players-shortcodes.css' ), false, SU_PLUGIN_VERSION, 'all' );
109
+ // Shortcodes scripts
110
+ wp_register_script( 'su-galleries-shortcodes', plugins_url( 'assets/js/galleries-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery', 'swiper' ), SU_PLUGIN_VERSION, true );
111
+ wp_register_script( 'su-players-shortcodes', plugins_url( 'assets/js/players-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery', 'jplayer' ), SU_PLUGIN_VERSION, true );
112
+ wp_register_script( 'su-other-shortcodes', plugins_url( 'assets/js/other-shortcodes.js', SU_PLUGIN_FILE ), array( 'jquery' ), SU_PLUGIN_VERSION, true );
113
+ wp_localize_script( 'su-other-shortcodes', 'su_other_shortcodes', array( 'no_preview' => __( 'This shortcode doesn\'t work in live preview. Please insert it into editor and preview on the site.', 'su' ) ) );
114
+ // Hook to deregister assets or add custom
115
+ do_action( 'su/assets/register' );
116
+ }
117
+
118
+ /**
119
+ * Enqueue assets
120
+ */
121
+ public static function enqueue() {
122
+ // Get assets query and plugin object
123
+ $assets = self::assets();
124
+ // Enqueue stylesheets
125
+ foreach ( $assets['css'] as $style ) wp_enqueue_style( $style );
126
+ // Enqueue scripts
127
+ foreach ( $assets['js'] as $script ) wp_enqueue_script( $script );
128
+ // Hook to dequeue assets or add custom
129
+ do_action( 'su/assets/enqueue', $assets );
130
+ }
131
+
132
+ /**
133
+ * Print assets without enqueuing
134
+ */
135
+ public static function prnt() {
136
+ // Prepare assets set
137
+ $assets = self::assets();
138
+ // Enqueue stylesheets
139
+ wp_print_styles( $assets['css'] );
140
+ // Enqueue scripts
141
+ wp_print_scripts( $assets['js'] );
142
+ // Hook
143
+ do_action( 'su/assets/print', $assets );
144
+ }
145
+
146
+ /**
147
+ * Print custom CSS
148
+ */
149
+ public static function custom_css() {
150
+ // Get custom CSS and apply filters to it
151
+ $custom_css = apply_filters( 'su/assets/custom_css', str_replace( '&#039;', '\'', html_entity_decode( (string) get_option( 'su_option_custom-css' ) ) ) );
152
+ // Print CSS if exists
153
+ if ( $custom_css ) echo "\n\n<!-- Shortcodes Ultimate custom CSS - begin -->\n<style type='text/css'>\n" . stripslashes( str_replace( array( '%theme_url%', '%home_url%', '%plugin_url%' ), array( trailingslashit( get_stylesheet_directory_uri() ), trailingslashit( get_option( 'home' ) ), trailingslashit( plugins_url( '', SU_PLUGIN_FILE ) ) ), $custom_css ) ) . "\n</style>\n<!-- Shortcodes Ultimate custom CSS - end -->\n\n";
154
+ }
155
+
156
+ /**
157
+ * Styles for visualised shortcodes
158
+ */
159
+ public static function mce_css( $mce_css ) {
160
+ if ( ! empty( $mce_css ) ) $mce_css .= ',';
161
+ $mce_css .= plugins_url( 'assets/css/tinymce.css', SU_PLUGIN_FILE );
162
+ return $mce_css;
163
+ }
164
+
165
+ /**
166
+ * TinyMCE plugin for visualised shortcodes
167
+ */
168
+ public static function mce_js( $plugins ) {
169
+ $plugins['shortcodesultimate'] = plugins_url( 'assets/js/tinymce.js', SU_PLUGIN_FILE );
170
+ return $plugins;
171
+ }
172
+
173
+ /**
174
+ * Add asset to the query
175
+ */
176
+ public static function add( $type, $handle ) {
177
+ // Array with handles
178
+ if ( is_array( $handle ) ) { foreach ( $handle as $h ) self::$assets[$type][$h] = $h; }
179
+ // Single handle
180
+ else self::$assets[$type][$handle] = $handle;
181
+ }
182
+ /**
183
+ * Get queried assets
184
+ */
185
+ public static function assets() {
186
+ // Get assets query
187
+ $assets = self::$assets;
188
+ // Apply filters to assets set
189
+ $assets['css'] = array_unique( ( array ) apply_filters( 'su/assets/css', ( array ) array_unique( $assets['css'] ) ) );
190
+ $assets['js'] = array_unique( ( array ) apply_filters( 'su/assets/js', ( array ) array_unique( $assets['js'] ) ) );
191
+ // Return set
192
+ return $assets;
193
+ }
194
+
195
+ /**
196
+ * Helper to get full URL of a skin file
197
+ */
198
+ public static function skin_url( $file = '' ) {
199
+ $shult = shortcodes_ultimate();
200
+ $skin = get_option( 'su_option_skin' );
201
+ $uploads = wp_upload_dir(); $uploads = $uploads['baseurl'];
202
+ // Prepare url to skin directory
203
+ $url = ( !$skin || $skin === 'default' ) ? plugins_url( 'assets/css/', SU_PLUGIN_FILE ) : $uploads . '/shortcodes-ultimate-skins/' . $skin;
204
+ return trailingslashit( apply_filters( 'su/assets/skin', $url ) ) . $file;
205
+ }
206
+ }
207
+
208
+ new Su_Assets;
209
+
210
+ /**
211
+ * Helper function to add asset to the query
212
+ *
213
+ * @param string $type Asset type (css|js)
214
+ * @param mixed $handle Asset handle or array with handles
215
+ */
216
+ function su_query_asset( $type, $handle ) {
217
+ Su_Assets::add( $type, $handle );
218
+ }
219
+
220
+ /**
221
+ * Helper function to get current skin url
222
+ *
223
+ * @param string $file Asset file name. Example value: box-shortcodes.css
224
+ */
225
+ function su_skin_url( $file ) {
226
+ return Su_Assets::skin_url( $file );
227
+ }
inc/core/counters.php CHANGED
@@ -1,55 +1,55 @@
1
- <?php
2
-
3
- class Su_Counter_Extra_Addon {
4
-
5
- static $option = 'su_counter_extra_addon';
6
-
7
- function __construct() {
8
- add_filter( 'su/menu/shortcodes', array( __CLASS__, 'display' ) );
9
- add_filter( 'su/menu/addons', array( __CLASS__, 'display' ) );
10
- add_action( 'sunrise/page/before', array( __CLASS__, 'disable' ) );
11
- }
12
-
13
- public static function display( $title ) {
14
- if ( get_option( self::$option ) ) return $title;
15
- return sprintf(
16
- '%s <span class="update-plugins count-1" title="%s"><span class="update-count">%s</span></span>',
17
- $title,
18
- __( '1 new add-on for Shortcodes Ultimate', 'su' ),
19
- '1'
20
- );
21
- }
22
-
23
- public static function disable() {
24
- if ( $_GET['page'] === 'shortcodes-ultimate-addons' ) update_option( self::$option, true );
25
- }
26
- }
27
-
28
- // new Su_Counter_Extra_Addon;
29
-
30
- class Su_Counter_Bundle {
31
-
32
- static $option = 'su_counter_bundle';
33
-
34
- function __construct() {
35
- add_filter( 'su/menu/shortcodes', array( __CLASS__, 'display' ) );
36
- add_filter( 'su/menu/addons', array( __CLASS__, 'display' ) );
37
- add_action( 'sunrise/page/before', array( __CLASS__, 'disable' ) );
38
- }
39
-
40
- public static function display( $title ) {
41
- if ( get_option( self::$option ) ) return $title;
42
- return sprintf(
43
- '%s <span class="update-plugins count-1" title="%s"><span class="update-count">%s</span></span>',
44
- $title,
45
- __( '1 new add-on for Shortcodes Ultimate', 'su' ),
46
- '1'
47
- );
48
- }
49
-
50
- public static function disable() {
51
- if ( $_GET['page'] === 'shortcodes-ultimate-addons' ) update_option( self::$option, true );
52
- }
53
- }
54
-
55
- // new Su_Counter_Bundle;
1
+ <?php
2
+
3
+ class Su_Counter_Extra_Addon {
4
+
5
+ static $option = 'su_counter_extra_addon';
6
+
7
+ function __construct() {
8
+ add_filter( 'su/menu/shortcodes', array( __CLASS__, 'display' ) );
9
+ add_filter( 'su/menu/addons', array( __CLASS__, 'display' ) );
10
+ add_action( 'sunrise/page/before', array( __CLASS__, 'disable' ) );
11
+ }
12
+
13
+ public static function display( $title ) {
14
+ if ( get_option( self::$option ) ) return $title;
15
+ return sprintf(
16
+ '%s <span class="update-plugins count-1" title="%s"><span class="update-count">%s</span></span>',
17
+ $title,
18
+ __( '1 new add-on for Shortcodes Ultimate', 'su' ),
19
+ '1'
20
+ );
21
+ }
22
+
23
+ public static function disable() {
24
+ if ( $_GET['page'] === 'shortcodes-ultimate-addons' ) update_option( self::$option, true );
25
+ }
26
+ }
27
+
28
+ // new Su_Counter_Extra_Addon;
29
+
30
+ class Su_Counter_Bundle {
31
+
32
+ static $option = 'su_counter_bundle';
33
+
34
+ function __construct() {
35
+ add_filter( 'su/menu/shortcodes', array( __CLASS__, 'display' ) );
36
+ add_filter( 'su/menu/addons', array( __CLASS__, 'display' ) );
37
+ add_action( 'sunrise/page/before', array( __CLASS__, 'disable' ) );
38
+ }
39
+
40
+ public static function display( $title ) {
41
+ if ( get_option( self::$option ) ) return $title;
42
+ return sprintf(
43
+ '%s <span class="update-plugins count-1" title="%s"><span class="update-count">%s</span></span>',
44
+ $title,
45
+ __( '1 new add-on for Shortcodes Ultimate', 'su' ),
46
+ '1'
47
+ );
48
+ }
49
+
50
+ public static function disable() {
51
+ if ( $_GET['page'] === 'shortcodes-ultimate-addons' ) update_option( self::$option, true );
52
+ }
53
+ }
54
+
55
+ // new Su_Counter_Bundle;
inc/core/data.php CHANGED
@@ -1,3035 +1,3035 @@
1
- <?php
2
- /**
3
- * Class for managing plugin data
4
- */
5
- class Su_Data {
6
-
7
- /**
8
- * Constructor
9
- */
10
- function __construct() {}
11
-
12
- /**
13
- * Shortcode groups
14
- */
15
- public static function groups() {
16
- return apply_filters( 'su/data/groups', array(
17
- 'all' => __( 'All', 'su' ),
18
- 'content' => __( 'Content', 'su' ),
19
- 'box' => __( 'Box', 'su' ),
20
- 'media' => __( 'Media', 'su' ),
21
- 'gallery' => __( 'Gallery', 'su' ),
22
- 'data' => __( 'Data', 'su' ),
23
- 'other' => __( 'Other', 'su' )
24
- ) );
25
- }
26
-
27
- /**
28
- * Border styles
29
- */
30
- public static function borders() {
31
- return apply_filters( 'su/data/borders', array(
32
- 'none' => __( 'None', 'su' ),
33
- 'solid' => __( 'Solid', 'su' ),
34
- 'dotted' => __( 'Dotted', 'su' ),
35
- 'dashed' => __( 'Dashed', 'su' ),
36
- 'double' => __( 'Double', 'su' ),
37
- 'groove' => __( 'Groove', 'su' ),
38
- 'ridge' => __( 'Ridge', 'su' )
39
- ) );
40
- }
41
-
42
- /**
43
- * Font-Awesome icons
44
- */
45
- public static function icons() {
46
- return apply_filters( 'su/data/icons', array( 'adjust', 'adn', 'align-center', 'align-justify', 'align-left', 'align-right', 'ambulance', 'anchor', 'android', 'angle-double-down', 'angle-double-left', 'angle-double-right', 'angle-double-up', 'angle-down', 'angle-left', 'angle-right', 'angle-up', 'apple', 'archive', 'arrow-circle-down', 'arrow-circle-left', 'arrow-circle-o-down', 'arrow-circle-o-left', 'arrow-circle-o-right', 'arrow-circle-o-up', 'arrow-circle-right', 'arrow-circle-up', 'arrow-down', 'arrow-left', 'arrow-right', 'arrow-up', 'arrows', 'arrows-alt', 'arrows-h', 'arrows-v', 'asterisk', 'automobile', 'backward', 'ban', 'bank', 'bar-chart-o', 'barcode', 'bars', 'beer', 'behance', 'behance-square', 'bell', 'bell-o', 'bitbucket', 'bitbucket-square', 'bitcoin', 'bold', 'bolt', 'bomb', 'book', 'bookmark', 'bookmark-o', 'briefcase', 'btc', 'bug', 'building', 'building-o', 'bullhorn', 'bullseye', 'cab', 'calendar', 'calendar-o', 'camera', 'camera-retro', 'car', 'caret-down', 'caret-left', 'caret-right', 'caret-square-o-down', 'caret-square-o-left', 'caret-square-o-right', 'caret-square-o-up', 'caret-up', 'certificate', 'chain', 'chain-broken', 'check', 'check-circle', 'check-circle-o', 'check-square', 'check-square-o', 'chevron-circle-down', 'chevron-circle-left', 'chevron-circle-right', 'chevron-circle-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'child', 'circle', 'circle-o', 'circle-o-notch', 'circle-thin', 'clipboard', 'clock-o', 'cloud', 'cloud-download', 'cloud-upload', 'cny', 'code', 'code-fork', 'codepen', 'coffee', 'cog', 'cogs', 'columns', 'comment', 'comment-o', 'comments', 'comments-o', 'compass', 'compress', 'copy', 'credit-card', 'crop', 'crosshairs', 'css3', 'cube', 'cubes', 'cut', 'cutlery', 'dashboard', 'database', 'dedent', 'delicious', 'desktop', 'deviantart', 'digg', 'dollar', 'dot-circle-o', 'download', 'dribbble', 'dropbox', 'drupal', 'edit', 'eject', 'ellipsis-h', 'ellipsis-v', 'empire', 'envelope', 'envelope-o', 'envelope-square', 'eraser', 'eur', 'euro', 'exchange', 'exclamation', 'exclamation-circle', 'exclamation-triangle', 'expand', 'external-link', 'external-link-square', 'eye', 'eye-slash', 'facebook', 'facebook-square', 'fast-backward', 'fast-forward', 'fax', 'female', 'fighter-jet', 'file', 'file-archive-o', 'file-audio-o', 'file-code-o', 'file-excel-o', 'file-image-o', 'file-movie-o', 'file-o', 'file-pdf-o', 'file-photo-o', 'file-picture-o', 'file-powerpoint-o', 'file-sound-o', 'file-text', 'file-text-o', 'file-video-o', 'file-word-o', 'file-zip-o', 'files-o', 'film', 'filter', 'fire', 'fire-extinguisher', 'flag', 'flag-checkered', 'flag-o', 'flash', 'flask', 'flickr', 'floppy-o', 'folder', 'folder-o', 'folder-open', 'folder-open-o', 'font', 'forward', 'foursquare', 'frown-o', 'gamepad', 'gavel', 'gbp', 'ge', 'gear', 'gears', 'gift', 'git', 'git-square', 'github', 'github-alt', 'github-square', 'gittip', 'glass', 'globe', 'google', 'google-plus', 'google-plus-square', 'graduation-cap', 'group', 'h-square', 'hacker-news', 'hand-o-down', 'hand-o-left', 'hand-o-right', 'hand-o-up', 'hdd-o', 'header', 'headphones', 'heart', 'heart-o', 'history', 'home', 'hospital-o', 'html5', 'image', 'inbox', 'indent', 'info', 'info-circle', 'inr', 'instagram', 'institution', 'italic', 'joomla', 'jpy', 'jsfiddle', 'key', 'keyboard-o', 'krw', 'language', 'laptop', 'leaf', 'legal', 'lemon-o', 'level-down', 'level-up', 'life-bouy', 'life-ring', 'life-saver', 'lightbulb-o', 'link', 'linkedin', 'linkedin-square', 'linux', 'list', 'list-alt', 'list-ol', 'list-ul', 'location-arrow', 'lock', 'long-arrow-down', 'long-arrow-left', 'long-arrow-right', 'long-arrow-up', 'magic', 'magnet', 'mail-forward', 'mail-reply', 'mail-reply-all', 'male', 'map-marker', 'maxcdn', 'medkit', 'meh-o', 'microphone', 'microphone-slash', 'minus', 'minus-circle', 'minus-square', 'minus-square-o', 'mobile', 'mobile-phone', 'money', 'moon-o', 'mortar-board', 'music', 'navicon', 'openid', 'outdent', 'pagelines', 'paper-plane', 'paper-plane-o', 'paperclip', 'paragraph', 'paste', 'pause', 'paw', 'pencil', 'pencil-square', 'pencil-square-o', 'phone', 'phone-square', 'photo', 'picture-o', 'pied-piper', 'pied-piper-alt', 'pied-piper-square', 'pinterest', 'pinterest-square', 'plane', 'play', 'play-circle', 'play-circle-o', 'plus', 'plus-circle', 'plus-square', 'plus-square-o', 'power-off', 'print', 'puzzle-piece', 'qq', 'qrcode', 'question', 'question-circle', 'quote-left', 'quote-right', 'ra', 'random', 'rebel', 'recycle', 'reddit', 'reddit-square', 'refresh', 'renren', 'reorder', 'repeat', 'reply', 'reply-all', 'retweet', 'rmb', 'road', 'rocket', 'rotate-left', 'rotate-right', 'rouble', 'rss', 'rss-square', 'rub', 'ruble', 'rupee', 'save', 'scissors', 'search', 'search-minus', 'search-plus', 'send', 'send-o', 'share', 'share-alt', 'share-alt-square', 'share-square', 'share-square-o', 'shield', 'shopping-cart', 'sign-in', 'sign-out', 'signal', 'sitemap', 'skype', 'slack', 'sliders', 'smile-o', 'sort', 'sort-alpha-asc', 'sort-alpha-desc', 'sort-amount-asc', 'sort-amount-desc', 'sort-asc', 'sort-desc', 'sort-down', 'sort-numeric-asc', 'sort-numeric-desc', 'sort-up', 'soundcloud', 'space-shuttle', 'spinner', 'spoon', 'spotify', 'square', 'square-o', 'stack-exchange', 'stack-overflow', 'star', 'star-half', 'star-half-empty', 'star-half-full', 'star-half-o', 'star-o', 'steam', 'steam-square', 'step-backward', 'step-forward', 'stethoscope', 'stop', 'strikethrough', 'stumbleupon', 'stumbleupon-circle', 'subscript', 'suitcase', 'sun-o', 'superscript', 'support', 'table', 'tablet', 'tachometer', 'tag', 'tags', 'tasks', 'taxi', 'tencent-weibo', 'terminal', 'text-height', 'text-width', 'th', 'th-large', 'th-list', 'thumb-tack', 'thumbs-down', 'thumbs-o-down', 'thumbs-o-up', 'thumbs-up', 'ticket', 'times', 'times-circle', 'times-circle-o', 'tint', 'toggle-down', 'toggle-left', 'toggle-right', 'toggle-up', 'trash-o', 'tree', 'trello', 'trophy', 'truck', 'try', 'tumblr', 'tumblr-square', 'turkish-lira', 'twitter', 'twitter-square', 'umbrella', 'underline', 'undo', 'university', 'unlink', 'unlock', 'unlock-alt', 'unsorted', 'upload', 'usd', 'user', 'user-md', 'users', 'video-camera', 'vimeo-square', 'vine', 'vk', 'volume-down', 'volume-off', 'volume-up', 'warning', 'wechat', 'weibo', 'weixin', 'wheelchair', 'windows', 'won', 'wordpress', 'wrench', 'xing', 'xing-square', 'yahoo', 'yen', 'youtube', 'youtube-play', 'youtube-square' ) );
47
- }
48
-
49
- /**
50
- * Animate.css animations
51
- */
52
- public static function animations() {
53
- return apply_filters( 'su/data/animations', array( 'flash', 'bounce', 'shake', 'tada', 'swing', 'wobble', 'pulse', 'flip', 'flipInX', 'flipOutX', 'flipInY', 'flipOutY', 'fadeIn', 'fadeInUp', 'fadeInDown', 'fadeInLeft', 'fadeInRight', 'fadeInUpBig', 'fadeInDownBig', 'fadeInLeftBig', 'fadeInRightBig', 'fadeOut', 'fadeOutUp', 'fadeOutDown', 'fadeOutLeft', 'fadeOutRight', 'fadeOutUpBig', 'fadeOutDownBig', 'fadeOutLeftBig', 'fadeOutRightBig', 'slideInDown', 'slideInLeft', 'slideInRight', 'slideOutUp', 'slideOutLeft', 'slideOutRight', 'bounceIn', 'bounceInDown', 'bounceInUp', 'bounceInLeft', 'bounceInRight', 'bounceOut', 'bounceOutDown', 'bounceOutUp', 'bounceOutLeft', 'bounceOutRight', 'rotateIn', 'rotateInDownLeft', 'rotateInDownRight', 'rotateInUpLeft', 'rotateInUpRight', 'rotateOut', 'rotateOutDownLeft', 'rotateOutDownRight', 'rotateOutUpLeft', 'rotateOutUpRight', 'lightSpeedIn', 'lightSpeedOut', 'hinge', 'rollIn', 'rollOut' ) );
54
- }
55
-
56
- /**
57
- * Examples section
58
- */
59
- public static function examples() {
60
- return apply_filters( 'su/data/examples', array(
61
- 'basic' => array(
62
- 'title' => __( 'Basic examples', 'su' ),
63
- 'items' => array(
64
- array(
65
- 'name' => __( 'Accordions, spoilers, different styles, anchors', 'su' ),
66
- 'id' => 'spoilers',
67
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/spoilers.example',
68
- 'icon' => 'tasks'
69
- ),
70
- array(
71
- 'name' => __( 'Tabs, vertical tabs, tab anchors', 'su' ),
72
- 'id' => 'tabs',
73
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/tabs.example',
74
- 'icon' => 'folder'
75
- ),
76
- array(
77
- 'name' => __( 'Column layouts', 'su' ),
78
- 'id' => 'columns',
79
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/columns.example',
80
- 'icon' => 'th-large'
81
- ),
82
- array(
83
- 'name' => __( 'Media elements, YouTube, Vimeo, Screenr and self-hosted videos, audio player', 'su' ),
84
- 'id' => 'media',
85
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/media.example',
86
- 'icon' => 'play-circle'
87
- ),
88
- array(
89
- 'name' => __( 'Unlimited buttons', 'su' ),
90
- 'id' => 'buttons',
91
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/buttons.example',
92
- 'icon' => 'heart'
93
- ),
94
- array(
95
- 'name' => __( 'Animations', 'su' ),
96
- 'id' => 'animations',
97
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/animations.example',
98
- 'icon' => 'bolt'
99
- ),
100
- )
101
- ),
102
- 'advanced' => array(
103
- 'title' => __( 'Advanced examples', 'su' ),
104
- 'items' => array(
105
- array(
106
- 'name' => __( 'Interacting with posts shortcode', 'su' ),
107
- 'id' => 'posts',
108
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/posts.example',
109
- 'icon' => 'list'
110
- ),
111
- array(
112
- 'name' => __( 'Nested shortcodes, shortcodes inside of attributes', 'su' ),
113
- 'id' => 'nested',
114
- 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/nested.example',
115
- 'icon' => 'indent'
116
- ),
117
- )
118
- ),
119
- ) );
120
- }
121
-
122
- /**
123
- * Shortcodes
124
- */
125
- public static function shortcodes( $shortcode = false ) {
126
- $shortcodes = apply_filters( 'su/data/shortcodes', array(
127
- // heading
128
- 'heading' => array(
129
- 'name' => __( 'Heading', 'su' ),
130
- 'type' => 'wrap',
131
- 'group' => 'content',
132
- 'atts' => array(
133
- 'style' => array(
134
- 'type' => 'select',
135
- 'values' => array(
136
- 'default' => __( 'Default', 'su' ),
137
- ),
138
- 'default' => 'default',
139
- 'name' => __( 'Style', 'su' ),
140
- 'desc' => __( 'Choose style for this heading', 'su' ) . '%su_skins_link%'
141
- ),
142
- 'size' => array(
143
- 'type' => 'slider',
144
- 'min' => 7,
145
- 'max' => 48,
146
- 'step' => 1,
147
- 'default' => 13,
148
- 'name' => __( 'Size', 'su' ),
149
- 'desc' => __( 'Select heading size (pixels)', 'su' )
150
- ),
151
- 'align' => array(
152
- 'type' => 'select',
153
- 'values' => array(
154
- 'left' => __( 'Left', 'su' ),
155
- 'center' => __( 'Center', 'su' ),
156
- 'right' => __( 'Right', 'su' )
157
- ),
158
- 'default' => 'center',
159
- 'name' => __( 'Align', 'su' ),
160
- 'desc' => __( 'Heading text alignment', 'su' )
161
- ),
162
- 'margin' => array(
163
- 'type' => 'slider',
164
- 'min' => 0,
165
- 'max' => 200,
166
- 'step' => 10,
167
- 'default' => 20,
168
- 'name' => __( 'Margin', 'su' ),
169
- 'desc' => __( 'Bottom margin (pixels)', 'su' )
170
- ),
171
- 'class' => array(
172
- 'default' => '',
173
- 'name' => __( 'Class', 'su' ),
174
- 'desc' => __( 'Extra CSS class', 'su' )
175
- )
176
- ),
177
- 'content' => __( 'Heading text', 'su' ),
178
- 'desc' => __( 'Styled heading', 'su' ),
179
- 'icon' => 'h-square'
180
- ),
181
- // tabs
182
- 'tabs' => array(
183
- 'name' => __( 'Tabs', 'su' ),
184
- 'type' => 'wrap',
185
- 'group' => 'box',
186
- 'atts' => array(
187
- 'style' => array(
188
- 'type' => 'select',
189
- 'values' => array(
190
- 'default' => __( 'Default', 'su' )
191
- ),
192
- 'default' => 'default',
193
- 'name' => __( 'Style', 'su' ),
194
- 'desc' => __( 'Choose style for this tabs', 'su' ) . '%su_skins_link%'
195
- ),
196
- 'active' => array(
197
- 'type' => 'number',
198
- 'min' => 1,
199
- 'max' => 100,
200
- 'step' => 1,
201
- 'default' => 1,
202
- 'name' => __( 'Active tab', 'su' ),
203
- 'desc' => __( 'Select which tab is open by default', 'su' )
204
- ),
205
- 'vertical' => array(
206
- 'type' => 'bool',
207
- 'default' => 'no',
208
- 'name' => __( 'Vertical', 'su' ),
209
- 'desc' => __( 'Show tabs vertically', 'su' )
210
- ),
211
- 'class' => array(
212
- 'default' => '',
213
- 'name' => __( 'Class', 'su' ),
214
- 'desc' => __( 'Extra CSS class', 'su' )
215
- )
216
- ),
217
- 'content' => __( "[%prefix_tab title=\"Title 1\"]Content 1[/%prefix_tab]\n[%prefix_tab title=\"Title 2\"]Content 2[/%prefix_tab]\n[%prefix_tab title=\"Title 3\"]Content 3[/%prefix_tab]", 'su' ),
218
- 'desc' => __( 'Tabs container', 'su' ),
219
- 'example' => 'tabs',
220
- 'icon' => 'list-alt'
221
- ),
222
- // tab
223
- 'tab' => array(
224
- 'name' => __( 'Tab', 'su' ),
225
- 'type' => 'wrap',
226
- 'group' => 'box',
227
- 'atts' => array(
228
- 'title' => array(
229
- 'default' => __( 'Tab name', 'su' ),
230
- 'name' => __( 'Title', 'su' ),
231
- 'desc' => __( 'Enter tab name', 'su' )
232
- ),
233
- 'disabled' => array(
234
- 'type' => 'bool',
235
- 'default' => 'no',
236
- 'name' => __( 'Disabled', 'su' ),
237
- 'desc' => __( 'Is this tab disabled', 'su' )
238
- ),
239
- 'anchor' => array(
240
- 'default' => '',
241
- 'name' => __( 'Anchor', 'su' ),
242
- 'desc' => __( 'You can use unique anchor for this tab to access it with hash in page url. For example: type here <b%value>Hello</b> and then use url like http://example.com/page-url#Hello. This tab will be activated and scrolled in', 'su' )
243
- ),
244
- 'url' => array(
245
- 'default' => '',
246
- 'name' => __( 'URL', 'su' ),
247
- 'desc' => __( 'You can link this tab to any webpage. Enter here full URL to switch this tab into link', 'su' )
248
- ),
249
- 'target' => array(
250
- 'type' => 'select',
251
- 'values' => array(
252
- 'self' => __( 'Open link in same window/tab', 'su' ),
253
- 'blank' => __( 'Open link in new window/tab', 'su' )
254
- ),
255
- 'default' => 'blank',
256
- 'name' => __( 'Link target', 'su' ),
257
- 'desc' => __( 'Choose how to open the custom tab link', 'su' )
258
- ),
259
- 'class' => array(
260
- 'default' => '',
261
- 'name' => __( 'Class', 'su' ),
262
- 'desc' => __( 'Extra CSS class', 'su' )
263
- )
264
- ),
265
- 'content' => __( 'Tab content', 'su' ),
266
- 'desc' => __( 'Single tab', 'su' ),
267
- 'note' => __( 'Did you know that you need to wrap single tabs with [tabs] shortcode?', 'su' ),
268
- 'example' => 'tabs',
269
- 'icon' => 'list-alt'
270
- ),
271
- // spoiler
272
- 'spoiler' => array(
273
- 'name' => __( 'Spoiler', 'su' ),
274
- 'type' => 'wrap',
275
- 'group' => 'box',
276
- 'atts' => array(
277
- 'title' => array(
278
- 'default' => __( 'Spoiler title', 'su' ),
279
- 'name' => __( 'Title', 'su' ), 'desc' => __( 'Text in spoiler title', 'su' )
280
- ),
281
- 'open' => array(
282
- 'type' => 'bool',
283
- 'default' => 'no',
284
- 'name' => __( 'Open', 'su' ),
285
- 'desc' => __( 'Is spoiler content visible by default', 'su' )
286
- ),
287
- 'style' => array(
288
- 'type' => 'select',
289
- 'values' => array(
290
- 'default' => __( 'Default', 'su' ),
291
- 'fancy' => __( 'Fancy', 'su' ),
292
- 'simple' => __( 'Simple', 'su' )
293
- ),
294
- 'default' => 'default',
295
- 'name' => __( 'Style', 'su' ),
296
- 'desc' => __( 'Choose style for this spoiler', 'su' ) . '%su_skins_link%'
297
- ),
298
- 'icon' => array(
299
- 'type' => 'select',
300
- 'values' => array(
301
- 'plus' => __( 'Plus', 'su' ),
302
- 'plus-circle' => __( 'Plus circle', 'su' ),
303
- 'plus-square-1' => __( 'Plus square 1', 'su' ),
304
- 'plus-square-2' => __( 'Plus square 2', 'su' ),
305
- 'arrow' => __( 'Arrow', 'su' ),
306
- 'arrow-circle-1' => __( 'Arrow circle 1', 'su' ),
307
- 'arrow-circle-2' => __( 'Arrow circle 2', 'su' ),
308
- 'chevron' => __( 'Chevron', 'su' ),
309
- 'chevron-circle' => __( 'Chevron circle', 'su' ),
310
- 'caret' => __( 'Caret', 'su' ),
311
- 'caret-square' => __( 'Caret square', 'su' ),
312
- 'folder-1' => __( 'Folder 1', 'su' ),
313
- 'folder-2' => __( 'Folder 2', 'su' )
314
- ),
315
- 'default' => 'plus',
316
- 'name' => __( 'Icon', 'su' ),
317
- 'desc' => __( 'Icons for spoiler', 'su' )
318
- ),
319
- 'anchor' => array(
320
- 'default' => '',
321
- 'name' => __( 'Anchor', 'su' ),
322
- 'desc' => __( 'You can use unique anchor for this spoiler to access it with hash in page url. For example: type here <b%value>Hello</b> and then use url like http://example.com/page-url#Hello. This spoiler will be open and scrolled in', 'su' )
323
- ),
324
- 'class' => array(
325
- 'default' => '',
326
- 'name' => __( 'Class', 'su' ),
327
- 'desc' => __( 'Extra CSS class', 'su' )
328
- )
329
- ),
330
- 'content' => __( 'Hidden content', 'su' ),
331
- 'desc' => __( 'Spoiler with hidden content', 'su' ),
332
- 'note' => __( 'Did you know that you can wrap multiple spoilers with [accordion] shortcode to create accordion effect?', 'su' ),
333
- 'example' => 'spoilers',
334
- 'icon' => 'list-ul'
335
- ),
336
- // accordion
337
- 'accordion' => array(
338
- 'name' => __( 'Accordion', 'su' ),
339
- 'type' => 'wrap',
340
- 'group' => 'box',
341
- 'atts' => array(
342
- 'class' => array(
343
- 'default' => '',
344
- 'name' => __( 'Class', 'su' ),
345
- 'desc' => __( 'Extra CSS class', 'su' )
346
- )
347
- ),
348
- 'content' => __( "[%prefix_spoiler]Content[/%prefix_spoiler]\n[%prefix_spoiler]Content[/%prefix_spoiler]\n[%prefix_spoiler]Content[/%prefix_spoiler]", 'su' ),
349
- 'desc' => __( 'Accordion with spoilers', 'su' ),
350
- 'note' => __( 'Did you know that you can wrap multiple spoilers with [accordion] shortcode to create accordion effect?', 'su' ),
351
- 'example' => 'spoilers',
352
- 'icon' => 'list'
353
- ),
354
- // divider
355
- 'divider' => array(
356
- 'name' => __( 'Divider', 'su' ),
357
- 'type' => 'single',
358
- 'group' => 'content',
359
- 'atts' => array(
360
- 'top' => array(
361
- 'type' => 'bool',
362
- 'default' => 'yes',
363
- 'name' => __( 'Show TOP link', 'su' ),
364
- 'desc' => __( 'Show link to top of the page or not', 'su' )
365
- ),
366
- 'text' => array(
367
- 'values' => array( ),
368
- 'default' => __( 'Go to top', 'su' ),
369
- 'name' => __( 'Link text', 'su' ), 'desc' => __( 'Text for the GO TOP link', 'su' )
370
- ),
371
- 'style' => array(
372
- 'type' => 'select',
373
- 'values' => array(
374
- 'default' => __( 'Default', 'su' ),
375
- 'dotted' => __( 'Dotted', 'su' ),
376
- 'dashed' => __( 'Dashed', 'su' ),
377
- 'double' => __( 'Double', 'su' )
378
- ),
379
- 'default' => 'default',
380
- 'name' => __( 'Style', 'su' ),
381
- 'desc' => __( 'Choose style for this divider', 'su' )
382
- ),
383
- 'divider_color' => array(
384
- 'type' => 'color',
385
- 'values' => array( ),
386
- 'default' => '#999999',
387
- 'name' => __( 'Divider color', 'su' ),
388
- 'desc' => __( 'Pick the color for divider', 'su' )
389
- ),
390
- 'link_color' => array(
391
- 'type' => 'color',
392
- 'values' => array( ),
393
- 'default' => '#999999',
394
- 'name' => __( 'Link color', 'su' ),
395
- 'desc' => __( 'Pick the color for TOP link', 'su' )
396
- ),
397
- 'size' => array(
398
- 'type' => 'slider',
399
- 'min' => 0,
400
- 'max' => 40,
401
- 'step' => 1,
402
- 'default' => 3,
403
- 'name' => __( 'Size', 'su' ),
404
- 'desc' => __( 'Height of the divider (in pixels)', 'su' )
405
- ),
406
- 'margin' => array(
407
- 'type' => 'slider',
408
- 'min' => 0,
409
- 'max' => 200,
410
- 'step' => 5,
411
- 'default' => 15,
412
- 'name' => __( 'Margin', 'su' ),
413
- 'desc' => __( 'Adjust the top and bottom margins of this divider (in pixels)', 'su' )
414
- ),
415
- 'class' => array(
416
- 'default' => '',
417
- 'name' => __( 'Class', 'su' ),
418
- 'desc' => __( 'Extra CSS class', 'su' )
419
- )
420
- ),
421
- 'desc' => __( 'Content divider with optional TOP link', 'su' ),
422
- 'icon' => 'ellipsis-h'
423
- ),
424
- // spacer
425
- 'spacer' => array(
426
- 'name' => __( 'Spacer', 'su' ),
427
- 'type' => 'single',
428
- 'group' => 'content other',
429
- 'atts' => array(
430
- 'size' => array(
431
- 'type' => 'slider',
432
- 'min' => 0,
433
- 'max' => 800,
434
- 'step' => 10,
435
- 'default' => 20,
436
- 'name' => __( 'Height', 'su' ),
437
- 'desc' => __( 'Height of the spacer in pixels', 'su' )
438
- ),
439
- 'class' => array(
440
- 'default' => '',
441
- 'name' => __( 'Class', 'su' ),
442
- 'desc' => __( 'Extra CSS class', 'su' )
443
- )
444
- ),
445
- 'desc' => __( 'Empty space with adjustable height', 'su' ),
446
- 'icon' => 'arrows-v'
447
- ),
448
- // highlight
449
- 'highlight' => array(
450
- 'name' => __( 'Highlight', 'su' ),
451
- 'type' => 'wrap',
452
- 'group' => 'content',
453
- 'atts' => array(
454
- 'background' => array(
455
- 'type' => 'color',
456
- 'values' => array( ),
457
- 'default' => '#DDFF99',
458
- 'name' => __( 'Background', 'su' ),
459
- 'desc' => __( 'Highlighted text background color', 'su' )
460
- ),
461
- 'color' => array(
462
- 'type' => 'color',
463
- 'values' => array( ),
464
- 'default' => '#000000',
465
- 'name' => __( 'Text color', 'su' ), 'desc' => __( 'Highlighted text color', 'su' )
466
- ),
467
- 'class' => array(
468
- 'default' => '',
469
- 'name' => __( 'Class', 'su' ),
470
- 'desc' => __( 'Extra CSS class', 'su' )
471
- )
472
- ),
473
- 'content' => __( 'Highlighted text', 'su' ),
474
- 'desc' => __( 'Highlighted text', 'su' ),
475
- 'icon' => 'pencil'
476
- ),
477
- // label
478
- 'label' => array(
479
- 'name' => __( 'Label', 'su' ),
480
- 'type' => 'wrap',
481
- 'group' => 'content',
482
- 'atts' => array(
483
- 'type' => array(
484
- 'type' => 'select',
485
- 'values' => array(
486
- 'default' => __( 'Default', 'su' ),
487
- 'success' => __( 'Success', 'su' ),
488
- 'warning' => __( 'Warning', 'su' ),
489
- 'important' => __( 'Important', 'su' ),
490
- 'black' => __( 'Black', 'su' ),
491
- 'info' => __( 'Info', 'su' )
492
- ),
493
- 'default' => 'default',
494
- 'name' => __( 'Type', 'su' ),
495
- 'desc' => __( 'Style of the label', 'su' )
496
- ),
497
- 'class' => array(
498
- 'default' => '',
499
- 'name' => __( 'Class', 'su' ),
500
- 'desc' => __( 'Extra CSS class', 'su' )
501
- )
502
- ),
503
- 'content' => __( 'Label', 'su' ),
504
- 'desc' => __( 'Styled label', 'su' ),
505
- 'icon' => 'tag'
506
- ),
507
- // quote
508
- 'quote' => array(
509
- 'name' => __( 'Quote', 'su' ),
510
- 'type' => 'wrap',
511
- 'group' => 'box',
512
- 'atts' => array(
513
- 'style' => array(
514
- 'type' => 'select',
515
- 'values' => array(
516
- 'default' => __( 'Default', 'su' )
517
- ),
518
- 'default' => 'default',
519
- 'name' => __( 'Style', 'su' ),
520
- 'desc' => __( 'Choose style for this quote', 'su' ) . '%su_skins_link%'
521
- ),
522
- 'cite' => array(
523
- 'default' => '',
524
- 'name' => __( 'Cite', 'su' ),
525
- 'desc' => __( 'Quote author name', 'su' )
526
- ),
527
- 'url' => array(
528
- 'values' => array( ),
529
- 'default' => '',
530
- 'name' => __( 'Cite url', 'su' ),
531
- 'desc' => __( 'Url of the quote author. Leave empty to disable link', 'su' )
532
- ),
533
- 'class' => array(
534
- 'default' => '',
535
- 'name' => __( 'Class', 'su' ),
536
- 'desc' => __( 'Extra CSS class', 'su' )
537
- )
538
- ),
539
- 'content' => __( 'Quote', 'su' ),
540
- 'desc' => __( 'Blockquote alternative', 'su' ),
541
- 'icon' => 'quote-right'
542
- ),
543
- // pullquote
544
- 'pullquote' => array(
545
- 'name' => __( 'Pullquote', 'su' ),
546
- 'type' => 'wrap',
547
- 'group' => 'box',
548
- 'atts' => array(
549
- 'align' => array(
550
- 'type' => 'select',
551
- 'values' => array(
552
- 'left' => __( 'Left', 'su' ),
553
- 'right' => __( 'Right', 'su' )
554
- ),
555
- 'default' => 'left',
556
- 'name' => __( 'Align', 'su' ), 'desc' => __( 'Pullquote alignment (float)', 'su' )
557
- ),
558
- 'class' => array(
559
- 'default' => '',
560
- 'name' => __( 'Class', 'su' ),
561
- 'desc' => __( 'Extra CSS class', 'su' )
562
- )
563
- ),
564
- 'content' => __( 'Pullquote', 'su' ),
565
- 'desc' => __( 'Pullquote', 'su' ),
566
- 'icon' => 'quote-left'
567
- ),
568
- // dropcap
569
- 'dropcap' => array(
570
- 'name' => __( 'Dropcap', 'su' ),
571
- 'type' => 'wrap',
572
- 'group' => 'content',
573
- 'atts' => array(
574
- 'style' => array(
575
- 'type' => 'select',
576
- 'values' => array(
577
- 'default' => __( 'Default', 'su' ),
578
- 'flat' => __( 'Flat', 'su' ),
579
- 'light' => __( 'Light', 'su' ),
580
- 'simple' => __( 'Simple', 'su' )
581
- ),
582
- 'default' => 'default',
583
- 'name' => __( 'Style', 'su' ), 'desc' => __( 'Dropcap style preset', 'su' )
584
- ),
585
- 'size' => array(
586
- 'type' => 'slider',
587
- 'min' => 1,
588
- 'max' => 5,
589
- 'step' => 1,
590
- 'default' => 3,
591
- 'name' => __( 'Size', 'su' ),
592
- 'desc' => __( 'Choose dropcap size', 'su' )
593
- ),
594
- 'class' => array(
595
- 'default' => '',
596
- 'name' => __( 'Class', 'su' ),
597
- 'desc' => __( 'Extra CSS class', 'su' )
598
- )
599
- ),
600
- 'content' => __( 'D', 'su' ),
601
- 'desc' => __( 'Dropcap', 'su' ),
602
- 'icon' => 'bold'
603
- ),
604
- // frame
605
- 'frame' => array(
606
- 'name' => __( 'Frame', 'su' ),
607
- 'type' => 'wrap',
608
- 'group' => 'content',
609
- 'atts' => array(
610
- 'align' => array(
611
- 'type' => 'select',
612
- 'values' => array(
613
- 'left' => __( 'Left', 'su' ),
614
- 'center' => __( 'Center', 'su' ),
615
- 'right' => __( 'Right', 'su' )
616
- ),
617
- 'default' => 'left',
618
- 'name' => __( 'Align', 'su' ),
619
- 'desc' => __( 'Frame alignment', 'su' )
620
- ),
621
- 'class' => array(
622
- 'default' => '',
623
- 'name' => __( 'Class', 'su' ),
624
- 'desc' => __( 'Extra CSS class', 'su' )
625
- )
626
- ),
627
- 'content' => '<img src="http://lorempixel.com/g/400/200/" />',
628
- 'desc' => __( 'Styled image frame', 'su' ),
629
- 'icon' => 'picture-o'
630
- ),
631
- // row
632
- 'row' => array(
633
- 'name' => __( 'Row', 'su' ),
634
- 'type' => 'wrap',
635
- 'group' => 'box',
636
- 'atts' => array(
637
- 'class' => array(
638
- 'default' => '',
639
- 'name' => __( 'Class', 'su' ),
640
- 'desc' => __( 'Extra CSS class', 'su' )
641
- )
642
- ),
643
- 'content' => __( "[%prefix_column size=\"1/3\"]Content[/%prefix_column]\n[%prefix_column size=\"1/3\"]Content[/%prefix_column]\n[%prefix_column size=\"1/3\"]Content[/%prefix_column]", 'su' ),
644
- 'desc' => __( 'Row for flexible columns', 'su' ),
645
- 'icon' => 'columns'
646
- ),
647
- // column
648
- 'column' => array(
649
- 'name' => __( 'Column', 'su' ),
650
- 'type' => 'wrap',
651
- 'group' => 'box',
652
- 'atts' => array(
653
- 'size' => array(
654
- 'type' => 'select',
655
- 'values' => array(
656
- '1/1' => __( 'Full width', 'su' ),
657
- '1/2' => __( 'One half', 'su' ),
658
- '1/3' => __( 'One third', 'su' ),
659
- '2/3' => __( 'Two third', 'su' ),
660
- '1/4' => __( 'One fourth', 'su' ),
661
- '3/4' => __( 'Three fourth', 'su' ),
662
- '1/5' => __( 'One fifth', 'su' ),
663
- '2/5' => __( 'Two fifth', 'su' ),
664
- '3/5' => __( 'Three fifth', 'su' ),
665
- '4/5' => __( 'Four fifth', 'su' ),
666
- '1/6' => __( 'One sixth', 'su' ),
667
- '5/6' => __( 'Five sixth', 'su' )
668
- ),
669
- 'default' => '1/2',
670
- 'name' => __( 'Size', 'su' ),
671
- 'desc' => __( 'Select column width. This width will be calculated depend page width', 'su' )
672
- ),
673
- 'center' => array(
674
- 'type' => 'bool',
675
- 'default' => 'no',
676
- 'name' => __( 'Centered', 'su' ),
677
- 'desc' => __( 'Is this column centered on the page', 'su' )
678
- ),
679
- 'class' => array(
680
- 'default' => '',
681
- 'name' => __( 'Class', 'su' ),
682
- 'desc' => __( 'Extra CSS class', 'su' )
683
- )
684
- ),
685
- 'content' => __( 'Column content', 'su' ),
686
- 'desc' => __( 'Flexible and responsive columns', 'su' ),
687
- 'note' => __( 'Did you know that you need to wrap columns with [row] shortcode?', 'su' ),
688
- 'example' => 'columns',
689
- 'icon' => 'columns'
690
- ),
691
- // list
692
- 'list' => array(
693
- 'name' => __( 'List', 'su' ),
694
- 'type' => 'wrap',
695
- 'group' => 'content',
696
- 'atts' => array(
697
- 'icon' => array(
698
- 'type' => 'icon',
699
- 'default' => '',
700
- 'name' => __( 'Icon', 'su' ),
701
- 'desc' => __( 'You can upload custom icon for this list or pick a built-in icon', 'su' )
702
- ),
703
- 'icon_color' => array(
704
- 'type' => 'color',
705
- 'default' => '#333333',
706
- 'name' => __( 'Icon color', 'su' ),
707
- 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
708
- ),
709
- 'class' => array(
710
- 'default' => '',
711
- 'name' => __( 'Class', 'su' ),
712
- 'desc' => __( 'Extra CSS class', 'su' )
713
- )
714
- ),
715
- 'content' => __( "<ul>\n<li>List item</li>\n<li>List item</li>\n<li>List item</li>\n</ul>", 'su' ),
716
- 'desc' => __( 'Styled unordered list', 'su' ),
717
- 'icon' => 'list-ol'
718
- ),
719
- // button
720
- 'button' => array(
721
- 'name' => __( 'Button', 'su' ),
722
- 'type' => 'wrap',
723
- 'group' => 'content',
724
- 'atts' => array(
725
- 'url' => array(
726
- 'values' => array( ),
727
- 'default' => get_option( 'home' ),
728
- 'name' => __( 'Link', 'su' ),
729
- 'desc' => __( 'Button link', 'su' )
730
- ),
731
- 'target' => array(
732
- 'type' => 'select',
733
- 'values' => array(
734
- 'self' => __( 'Same tab', 'su' ),
735
- 'blank' => __( 'New tab', 'su' )
736
- ),
737
- 'default' => 'self',
738
- 'name' => __( 'Target', 'su' ),
739
- 'desc' => __( 'Button link target', 'su' )
740
- ),
741
- 'style' => array(
742
- 'type' => 'select',
743
- 'values' => array(
744
- 'default' => __( 'Default', 'su' ),
745
- 'flat' => __( 'Flat', 'su' ),
746
- 'ghost' => __( 'Ghost', 'su' ),
747
- 'soft' => __( 'Soft', 'su' ),
748
- 'glass' => __( 'Glass', 'su' ),
749
- 'bubbles' => __( 'Bubbles', 'su' ),
750
- 'noise' => __( 'Noise', 'su' ),
751
- 'stroked' => __( 'Stroked', 'su' ),
752
- '3d' => __( '3D', 'su' )
753
- ),
754
- 'default' => 'default',
755
- 'name' => __( 'Style', 'su' ), 'desc' => __( 'Button background style preset', 'su' )
756
- ),
757
- 'background' => array(
758
- 'type' => 'color',
759
- 'values' => array( ),
760
- 'default' => '#2D89EF',
761
- 'name' => __( 'Background', 'su' ), 'desc' => __( 'Button background color', 'su' )
762
- ),
763
- 'color' => array(
764
- 'type' => 'color',
765
- 'values' => array( ),
766
- 'default' => '#FFFFFF',
767
- 'name' => __( 'Text color', 'su' ),
768
- 'desc' => __( 'Button text color', 'su' )
769
- ),
770
- 'size' => array(
771
- 'type' => 'slider',
772
- 'min' => 1,
773
- 'max' => 20,
774
- 'step' => 1,
775
- 'default' => 3,
776
- 'name' => __( 'Size', 'su' ),
777
- 'desc' => __( 'Button size', 'su' )
778
- ),
779
- 'wide' => array(
780
- 'type' => 'bool',
781
- 'default' => 'no',
782
- 'name' => __( 'Fluid', 'su' ), 'desc' => __( 'Fluid buttons has 100% width', 'su' )
783
- ),
784
- 'center' => array(
785
- 'type' => 'bool',
786
- 'default' => 'no',
787
- 'name' => __( 'Centered', 'su' ), 'desc' => __( 'Is button centered on the page', 'su' )
788
- ),
789
- 'radius' => array(
790
- 'type' => 'select',
791
- 'values' => array(
792
- 'auto' => __( 'Auto', 'su' ),
793
- 'round' => __( 'Round', 'su' ),
794
- '0' => __( 'Square', 'su' ),
795
- '5' => '5px',
796
- '10' => '10px',
797
- '20' => '20px'
798
- ),
799
- 'default' => 'auto',
800
- 'name' => __( 'Radius', 'su' ),
801
- 'desc' => __( 'Radius of button corners. Auto-radius calculation based on button size', 'su' )
802
- ),
803
- 'icon' => array(
804
- 'type' => 'icon',
805
- 'default' => '',
806
- 'name' => __( 'Icon', 'su' ),
807
- 'desc' => __( 'You can upload custom icon for this button or pick a built-in icon', 'su' )
808
- ),
809
- 'icon_color' => array(
810
- 'type' => 'color',
811
- 'default' => '#FFFFFF',
812
- 'name' => __( 'Icon color', 'su' ),
813
- 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
814
- ),
815
- 'text_shadow' => array(
816
- 'type' => 'shadow',
817
- 'default' => 'none',
818
- 'name' => __( 'Text shadow', 'su' ),
819
- 'desc' => __( 'Button text shadow', 'su' )
820
- ),
821
- 'desc' => array(
822
- 'default' => '',
823
- 'name' => __( 'Description', 'su' ),
824
- 'desc' => __( 'Small description under button text. This option is incompatible with icon.', 'su' )
825
- ),
826
- 'onclick' => array(
827
- 'default' => '',
828
- 'name' => __( 'onClick', 'su' ),
829
- 'desc' => __( 'Advanced JavaScript code for onClick action', 'su' )
830
- ),
831
- 'rel' => array(
832
- 'default' => '',
833
- 'name' => __( 'Rel attribute', 'su' ),
834
- 'desc' => __( 'Here you can add value for the rel attribute.<br>Example values: <b%value>nofollow</b>, <b%value>lightbox</b>', 'su' )
835
- ),
836
- 'class' => array(
837
- 'default' => '',
838
- 'name' => __( 'Class', 'su' ),
839
- 'desc' => __( 'Extra CSS class', 'su' )
840
- )
841
- ),
842
- 'content' => __( 'Button text', 'su' ),
843
- 'desc' => __( 'Styled button', 'su' ),
844
- 'example' => 'buttons',
845
- 'icon' => 'heart'
846
- ),
847
- // service
848
- 'service' => array(
849
- 'name' => __( 'Service', 'su' ),
850
- 'type' => 'wrap',
851
- 'group' => 'box',
852
- 'atts' => array(
853
- 'title' => array(
854
- 'values' => array( ),
855
- 'default' => __( 'Service title', 'su' ),
856
- 'name' => __( 'Title', 'su' ),
857
- 'desc' => __( 'Service name', 'su' )
858
- ),
859
- 'icon' => array(
860
- 'type' => 'icon',
861
- 'default' => '',
862
- 'name' => __( 'Icon', 'su' ),
863
- 'desc' => __( 'You can upload custom icon for this box', 'su' )
864
- ),
865
- 'icon_color' => array(
866
- 'type' => 'color',
867
- 'default' => '#333333',
868
- 'name' => __( 'Icon color', 'su' ),
869
- 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
870
- ),
871
- 'size' => array(
872
- 'type' => 'slider',
873
- 'min' => 10,
874
- 'max' => 128,
875
- 'step' => 2,
876
- 'default' => 32,
877
- 'name' => __( 'Icon size', 'su' ),
878
- 'desc' => __( 'Size of the uploaded icon in pixels', 'su' )
879
- ),
880
- 'class' => array(
881
- 'default' => '',
882
- 'name' => __( 'Class', 'su' ),
883
- 'desc' => __( 'Extra CSS class', 'su' )
884
- )
885
- ),
886
- 'content' => __( 'Service description', 'su' ),
887
- 'desc' => __( 'Service box with title', 'su' ),
888
- 'icon' => 'check-square-o'
889
- ),
890
- // box
891
- 'box' => array(
892
- 'name' => __( 'Box', 'su' ),
893
- 'type' => 'wrap',
894
- 'group' => 'box',
895
- 'atts' => array(
896
- 'title' => array(
897
- 'values' => array( ),
898
- 'default' => __( 'Box title', 'su' ),
899
- 'name' => __( 'Title', 'su' ), 'desc' => __( 'Text for the box title', 'su' )
900
- ),
901
- 'style' => array(
902
- 'type' => 'select',
903
- 'values' => array(
904
- 'default' => __( 'Default', 'su' ),
905
- 'soft' => __( 'Soft', 'su' ),
906
- 'glass' => __( 'Glass', 'su' ),
907
- 'bubbles' => __( 'Bubbles', 'su' ),
908
- 'noise' => __( 'Noise', 'su' )
909
- ),
910
- 'default' => 'default',
911
- 'name' => __( 'Style', 'su' ),
912
- 'desc' => __( 'Box style preset', 'su' )
913
- ),
914
- 'box_color' => array(
915
- 'type' => 'color',
916
- 'values' => array( ),
917
- 'default' => '#333333',
918
- 'name' => __( 'Color', 'su' ),
919
- 'desc' => __( 'Color for the box title and borders', 'su' )
920
- ),
921
- 'title_color' => array(
922
- 'type' => 'color',
923
- 'values' => array( ),
924
- 'default' => '#FFFFFF',
925
- 'name' => __( 'Title text color', 'su' ), 'desc' => __( 'Color for the box title text', 'su' )
926
- ),
927
- 'radius' => array(
928
- 'type' => 'slider',
929
- 'min' => 0,
930
- 'max' => 20,
931
- 'step' => 1,
932
- 'default' => 3,
933
- 'name' => __( 'Radius', 'su' ),
934
- 'desc' => __( 'Box corners radius', 'su' )
935
- ),
936
- 'class' => array(
937
- 'default' => '',
938
- 'name' => __( 'Class', 'su' ),
939
- 'desc' => __( 'Extra CSS class', 'su' )
940
- )
941
- ),
942
- 'content' => __( 'Box content', 'su' ),
943
- 'desc' => __( 'Colored box with caption', 'su' ),
944
- 'icon' => 'list-alt'
945
- ),
946
- // note
947
- 'note' => array(
948
- 'name' => __( 'Note', 'su' ),
949
- 'type' => 'wrap',
950
- 'group' => 'box',
951
- 'atts' => array(
952
- 'note_color' => array(
953
- 'type' => 'color',
954
- 'values' => array( ),
955
- 'default' => '#FFFF66',
956
- 'name' => __( 'Background', 'su' ), 'desc' => __( 'Note background color', 'su' )
957
- ),
958
- 'text_color' => array(
959
- 'type' => 'color',
960
- 'values' => array( ),
961
- 'default' => '#333333',
962
- 'name' => __( 'Text color', 'su' ),
963
- 'desc' => __( 'Note text color', 'su' )
964
- ),
965
- 'radius' => array(
966
- 'type' => 'slider',
967
- 'min' => 0,
968
- 'max' => 20,
969
- 'step' => 1,
970
- 'default' => 3,
971
- 'name' => __( 'Radius', 'su' ), 'desc' => __( 'Note corners radius', 'su' )
972
- ),
973
- 'class' => array(
974
- 'default' => '',
975
- 'name' => __( 'Class', 'su' ),
976
- 'desc' => __( 'Extra CSS class', 'su' )
977
- )
978
- ),
979
- 'content' => __( 'Note text', 'su' ),
980
- 'desc' => __( 'Colored box', 'su' ),
981
- 'icon' => 'list-alt'
982
- ),
983
- // expand
984
- 'expand' => array(
985
- 'name' => __( 'Expand', 'su' ),
986
- 'type' => 'wrap',
987
- 'group' => 'box',
988
- 'atts' => array(
989
- 'more_text' => array(
990
- 'default' => __( 'Show more', 'su' ),
991
- 'name' => __( 'More text', 'su' ),
992
- 'desc' => __( 'Enter the text for more link', 'su' )
993
- ),
994
- 'less_text' => array(
995
- 'default' => __( 'Show less', 'su' ),
996
- 'name' => __( 'Less text', 'su' ),
997
- 'desc' => __( 'Enter the text for less link', 'su' )
998
- ),
999
- 'height' => array(
1000
- 'type' => 'slider',
1001
- 'min' => 0,
1002
- 'max' => 1000,
1003
- 'step' => 10,
1004
- 'default' => 100,
1005
- 'name' => __( 'Height', 'su' ),
1006
- 'desc' => __( 'Height for collapsed state (in pixels)', 'su' )
1007
- ),
1008
- 'hide_less' => array(
1009
- 'type' => 'bool',
1010
- 'default' => 'no',
1011
- 'name' => __( 'Hide less link', 'su' ),
1012
- 'desc' => __( 'This option allows you to hide less link, when the text block has been expanded', 'su' )
1013
- ),
1014
- 'text_color' => array(
1015
- 'type' => 'color',
1016
- 'values' => array( ),
1017
- 'default' => '#333333',
1018
- 'name' => __( 'Text color', 'su' ),
1019
- 'desc' => __( 'Pick the text color', 'su' )
1020
- ),
1021
- 'link_color' => array(
1022
- 'type' => 'color',
1023
- 'values' => array( ),
1024
- 'default' => '#0088FF',
1025
- 'name' => __( 'Link color', 'su' ),
1026
- 'desc' => __( 'Pick the link color', 'su' )
1027
- ),
1028
- 'link_style' => array(
1029
- 'type' => 'select',
1030
- 'values' => array(
1031
- 'default' => __( 'Default', 'su' ),
1032
- 'underlined' => __( 'Underlined', 'su' ),
1033
- 'dotted' => __( 'Dotted', 'su' ),
1034
- 'dashed' => __( 'Dashed', 'su' ),
1035
- 'button' => __( 'Button', 'su' ),
1036
- ),
1037
- 'default' => 'default',
1038
- 'name' => __( 'Link style', 'su' ),
1039
- 'desc' => __( 'Select the style for more/less link', 'su' )
1040
- ),
1041
- 'link_align' => array(
1042
- 'type' => 'select',
1043
- 'values' => array(
1044
- 'left' => __( 'Left', 'su' ),
1045
- 'center' => __( 'Center', 'su' ),
1046
- 'right' => __( 'Right', 'su' ),
1047
- ),
1048
- 'default' => 'left',
1049
- 'name' => __( 'Link align', 'su' ),
1050
- 'desc' => __( 'Select link alignment', 'su' )
1051
- ),
1052
- 'more_icon' => array(
1053
- 'type' => 'icon',
1054
- 'default' => '',
1055
- 'name' => __( 'More icon', 'su' ),
1056
- 'desc' => __( 'Add an icon to the more link', 'su' )
1057
- ),
1058
- 'less_icon' => array(
1059
- 'type' => 'icon',
1060
- 'default' => '',
1061
- 'name' => __( 'Less icon', 'su' ),
1062
- 'desc' => __( 'Add an icon to the less link', 'su' )
1063
- ),
1064
- 'class' => array(
1065
- 'default' => '',
1066
- 'name' => __( 'Class', 'su' ),
1067
- 'desc' => __( 'Extra CSS class', 'su' )
1068
- )
1069
- ),
1070
- 'content' => __( 'This text block can be expanded', 'su' ),
1071
- 'desc' => __( 'Expandable text block', 'su' ),
1072
- 'icon' => 'sort-amount-asc'
1073
- ),
1074
- // lightbox
1075
- 'lightbox' => array(
1076
- 'name' => __( 'Lightbox', 'su' ),
1077
- 'type' => 'wrap',
1078
- 'group' => 'gallery',
1079
- 'atts' => array(
1080
- 'type' => array(
1081
- 'type' => 'select',
1082
- 'values' => array(
1083
- 'iframe' => __( 'Iframe', 'su' ),
1084
- 'image' => __( 'Image', 'su' ),
1085
- 'inline' => __( 'Inline (html content)', 'su' )
1086
- ),
1087
- 'default' => 'iframe',
1088
- 'name' => __( 'Content type', 'su' ),
1089
- 'desc' => __( 'Select type of the lightbox window content', 'su' )
1090
- ),
1091
- 'src' => array(
1092
- 'default' => '',
1093
- 'name' => __( 'Content source', 'su' ),
1094
- 'desc' => __( 'Insert here URL or CSS selector. Use URL for Iframe and Image content types. Use CSS selector for Inline content type.<br />Example values:<br /><b%value>http://www.youtube.com/watch?v=XXXXXXXXX</b> - YouTube video (iframe)<br /><b%value>http://example.com/wp-content/uploads/image.jpg</b> - uploaded image (image)<br /><b%value>http://example.com/</b> - any web page (iframe)<br /><b%value>#my-custom-popup</b> - any HTML content (inline)', 'su' )
1095
- ),
1096
- 'class' => array(
1097
- 'default' => '',
1098
- 'name' => __( 'Class', 'su' ),
1099
- 'desc' => __( 'Extra CSS class', 'su' )
1100
- )
1101
- ),
1102
- 'content' => __( '[%prefix_button] Click Here to Watch the Video [/%prefix_button]', 'su' ),
1103
- 'desc' => __( 'Lightbox window with custom content', 'su' ),
1104
- 'icon' => 'external-link'
1105
- ),
1106
- // lightbox content
1107
- 'lightbox_content' => array(
1108
- 'name' => __( 'Lightbox content', 'su' ),
1109
- 'type' => 'wrap',
1110
- 'group' => 'gallery',
1111
- 'atts' => array(
1112
- 'id' => array(
1113
- 'default' => '',
1114
- 'name' => __( 'ID', 'su' ),
1115
- 'desc' => sprintf( __( 'Enter here the ID from Content source field. %s Example value: %s', 'su' ), '<br>', '<b%value>my-custom-popup</b>' )
1116
- ),
1117
- 'width' => array(
1118
- 'default' => '50%',
1119
- 'name' => __( 'Width', 'su' ),
1120
- 'desc' => sprintf( __( 'Adjust the width for inline content (in pixels or percents). %s Example values: %s, %s, %s', 'su' ), '<br>', '<b%value>300px</b>', '<b%value>600px</b>', '<b%value>90%</b>' )
1121
- ),
1122
- 'margin' => array(
1123
- 'type' => 'slider',
1124
- 'min' => 0,
1125
- 'max' => 600,
1126
- 'step' => 5,
1127
- 'default' => 40,
1128
- 'name' => __( 'Margin', 'su' ),
1129
- 'desc' => __( 'Adjust the margin for inline content (in pixels)', 'su' )
1130
- ),
1131
- 'padding' => array(
1132
- 'type' => 'slider',
1133
- 'min' => 0,
1134
- 'max' => 600,
1135
- 'step' => 5,
1136
- 'default' => 40,
1137
- 'name' => __( 'Padding', 'su' ),
1138
- 'desc' => __( 'Adjust the padding for inline content (in pixels)', 'su' )
1139
- ),
1140
- 'text_align' => array(
1141
- 'type' => 'select',
1142
- 'values' => array(
1143
- 'left' => __( 'Left', 'su' ),
1144
- 'center' => __( 'Center', 'su' ),
1145
- 'right' => __( 'Right', 'su' )
1146
- ),
1147
- 'default' => 'center',
1148
- 'name' => __( 'Text alignment', 'su' ),
1149
- 'desc' => __( 'Select the text alignment', 'su' )
1150
- ),
1151
- 'background' => array(
1152
- 'type' => 'color',
1153
- 'default' => '#FFFFFF',
1154
- 'name' => __( 'Background color', 'su' ),
1155
- 'desc' => __( 'Pick a background color', 'su' )
1156
- ),
1157
- 'color' => array(
1158
- 'type' => 'color',
1159
- 'default' => '#333333',
1160
- 'name' => __( 'Text color', 'su' ),
1161
- 'desc' => __( 'Pick a text color', 'su' )
1162
- ),
1163
- 'color' => array(
1164
- 'type' => 'color',
1165
- 'default' => '#333333',
1166
- 'name' => __( 'Text color', 'su' ),
1167
- 'desc' => __( 'Pick a text color', 'su' )
1168
- ),
1169
- 'shadow' => array(
1170
- 'type' => 'shadow',
1171
- 'default' => '0px 0px 15px #333333',
1172
- 'name' => __( 'Shadow', 'su' ),
1173
- 'desc' => __( 'Adjust the shadow for content box', 'su' )
1174
- ),
1175
- 'class' => array(
1176
- 'default' => '',
1177
- 'name' => __( 'Class', 'su' ),
1178
- 'desc' => __( 'Extra CSS class', 'su' )
1179
- )
1180
- ),
1181
- 'content' => __( 'Inline content', 'su' ),
1182
- 'desc' => __( 'Inline content for lightbox', 'su' ),
1183
- 'icon' => 'external-link'
1184
- ),
1185
- // tooltip
1186
- 'tooltip' => array(
1187
- 'name' => __( 'Tooltip', 'su' ),
1188
- 'type' => 'wrap',
1189
- 'group' => 'other',
1190
- 'atts' => array(
1191
- 'style' => array(
1192
- 'type' => 'select',
1193
- 'values' => array(
1194
- 'light' => __( 'Basic: Light', 'su' ),
1195
- 'dark' => __( 'Basic: Dark', 'su' ),
1196
- 'yellow' => __( 'Basic: Yellow', 'su' ),
1197
- 'green' => __( 'Basic: Green', 'su' ),
1198
- 'red' => __( 'Basic: Red', 'su' ),
1199
- 'blue' => __( 'Basic: Blue', 'su' ),
1200
- 'youtube' => __( 'Youtube', 'su' ),
1201
- 'tipsy' => __( 'Tipsy', 'su' ),
1202
- 'bootstrap' => __( 'Bootstrap', 'su' ),
1203
- 'jtools' => __( 'jTools', 'su' ),
1204
- 'tipped' => __( 'Tipped', 'su' ),
1205
- 'cluetip' => __( 'Cluetip', 'su' ),
1206
- ),
1207
- 'default' => 'yellow',
1208
- 'name' => __( 'Style', 'su' ),
1209
- 'desc' => __( 'Tooltip window style', 'su' )
1210
- ),
1211
- 'position' => array(
1212
- 'type' => 'select',
1213
- 'values' => array(
1214
- 'north' => __( 'Top', 'su' ),
1215
- 'south' => __( 'Bottom', 'su' ),
1216
- 'west' => __( 'Left', 'su' ),
1217
- 'east' => __( 'Right', 'su' )
1218
- ),
1219
- 'default' => 'top',
1220
- 'name' => __( 'Position', 'su' ),
1221
- 'desc' => __( 'Tooltip position', 'su' )
1222
- ),
1223
- 'shadow' => array(
1224
- 'type' => 'bool',
1225
- 'default' => 'no',
1226
- 'name' => __( 'Shadow', 'su' ),
1227
- 'desc' => __( 'Add shadow to tooltip. This option is only works with basic styes, e.g. blue, green etc.', 'su' )
1228
- ),
1229
- 'rounded' => array(
1230
- 'type' => 'bool',
1231
- 'default' => 'no',
1232
- 'name' => __( 'Rounded corners', 'su' ),
1233
- 'desc' => __( 'Use rounded for tooltip. This option is only works with basic styes, e.g. blue, green etc.', 'su' )
1234
- ),
1235
- 'size' => array(
1236
- 'type' => 'select',
1237
- 'values' => array(
1238
- 'default' => __( 'Default', 'su' ),
1239
- '1' => 1,
1240
- '2' => 2,
1241
- '3' => 3,
1242
- '4' => 4,
1243
- '5' => 5,
1244
- '6' => 6,
1245
- ),
1246
- 'default' => 'default',
1247
- 'name' => __( 'Font size', 'su' ),
1248
- 'desc' => __( 'Tooltip font size', 'su' )
1249
- ),
1250
- 'title' => array(
1251
- 'default' => '',
1252
- 'name' => __( 'Tooltip title', 'su' ),
1253
- 'desc' => __( 'Enter title for tooltip window. Leave this field empty to hide the title', 'su' )
1254
- ),
1255
- 'content' => array(
1256
- 'default' => __( 'Tooltip text', 'su' ),
1257
- 'name' => __( 'Tooltip content', 'su' ),
1258
- 'desc' => __( 'Enter tooltip content here', 'su' )
1259
- ),
1260
- 'behavior' => array(
1261
- 'type' => 'select',
1262
- 'values' => array(
1263
- 'hover' => __( 'Show and hide on mouse hover', 'su' ),
1264
- 'click' => __( 'Show and hide by mouse click', 'su' ),
1265
- 'always' => __( 'Always visible', 'su' )
1266
- ),
1267
- 'default' => 'hover',
1268
- 'name' => __( 'Behavior', 'su' ),
1269
- 'desc' => __( 'Select tooltip behavior', 'su' )
1270
- ),
1271
- 'close' => array(
1272
- 'type' => 'bool',
1273
- 'default' => 'no',
1274
- 'name' => __( 'Close button', 'su' ),
1275
- 'desc' => __( 'Show close button', 'su' )
1276
- ),
1277
- 'class' => array(
1278
- 'default' => '',
1279
- 'name' => __( 'Class', 'su' ),
1280
- 'desc' => __( 'Extra CSS class', 'su' )
1281
- )
1282
- ),
1283
- 'content' => __( '[%prefix_button] Hover me to open tooltip [/%prefix_button]', 'su' ),
1284
- 'desc' => __( 'Tooltip window with custom content', 'su' ),
1285
- 'icon' => 'comment-o'
1286
- ),
1287
- // private
1288
- 'private' => array(
1289
- 'name' => __( 'Private', 'su' ),
1290
- 'type' => 'wrap',
1291
- 'group' => 'other',
1292
- 'atts' => array(
1293
- 'class' => array(
1294
- 'default' => '',
1295
- 'name' => __( 'Class', 'su' ),
1296
- 'desc' => __( 'Extra CSS class', 'su' )
1297
- )
1298
- ),
1299
- 'content' => __( 'Private note text', 'su' ),
1300
- 'desc' => __( 'Private note for post authors', 'su' ),
1301
- 'icon' => 'lock'
1302
- ),
1303
- // youtube
1304
- 'youtube' => array(
1305
- 'name' => __( 'YouTube', 'su' ),
1306
- 'type' => 'single',
1307
- 'group' => 'media',
1308
- 'atts' => array(
1309
- 'url' => array(
1310
- 'values' => array( ),
1311
- 'default' => '',
1312
- 'name' => __( 'Url', 'su' ),
1313
- 'desc' => __( 'Url of YouTube page with video. Ex: http://youtube.com/watch?v=XXXXXX', 'su' )
1314
- ),
1315
- 'width' => array(
1316
- 'type' => 'slider',
1317
- 'min' => 200,
1318
- 'max' => 1600,
1319
- 'step' => 20,
1320
- 'default' => 600,
1321
- 'name' => __( 'Width', 'su' ),
1322
- 'desc' => __( 'Player width', 'su' )
1323
- ),
1324
- 'height' => array(
1325
- 'type' => 'slider',
1326
- 'min' => 200,
1327
- 'max' => 1600,
1328
- 'step' => 20,
1329
- 'default' => 400,
1330
- 'name' => __( 'Height', 'su' ),
1331
- 'desc' => __( 'Player height', 'su' )
1332
- ),
1333
- 'responsive' => array(
1334
- 'type' => 'bool',
1335
- 'default' => 'yes',
1336
- 'name' => __( 'Responsive', 'su' ),
1337
- 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1338
- ),
1339
- 'autoplay' => array(
1340
- 'type' => 'bool',
1341
- 'default' => 'no',
1342
- 'name' => __( 'Autoplay', 'su' ),
1343
- 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1344
- ),
1345
- 'class' => array(
1346
- 'default' => '',
1347
- 'name' => __( 'Class', 'su' ),
1348
- 'desc' => __( 'Extra CSS class', 'su' )
1349
- )
1350
- ),
1351
- 'desc' => __( 'YouTube video', 'su' ),
1352
- 'example' => 'media',
1353
- 'icon' => 'youtube-play'
1354
- ),
1355
- // youtube_advanced
1356
- 'youtube_advanced' => array(
1357
- 'name' => __( 'YouTube Advanced', 'su' ),
1358
- 'type' => 'single',
1359
- 'group' => 'media',
1360
- 'atts' => array(
1361
- 'url' => array(
1362
- 'values' => array( ),
1363
- 'default' => '',
1364
- 'name' => __( 'Url', 'su' ),
1365
- 'desc' => __( 'Url of YouTube page with video. Ex: http://youtube.com/watch?v=XXXXXX', 'su' )
1366
- ),
1367
- 'playlist' => array(
1368
- 'default' => '',
1369
- 'name' => __( 'Playlist', 'su' ),
1370
- 'desc' => __( 'Value is a comma-separated list of video IDs to play. If you specify a value, the first video that plays will be the VIDEO_ID specified in the URL path, and the videos specified in the playlist parameter will play thereafter', 'su' )
1371
- ),
1372
- 'width' => array(
1373
- 'type' => 'slider',
1374
- 'min' => 200,
1375
- 'max' => 1600,
1376
- 'step' => 20,
1377
- 'default' => 600,
1378
- 'name' => __( 'Width', 'su' ),
1379
- 'desc' => __( 'Player width', 'su' )
1380
- ),
1381
- 'height' => array(
1382
- 'type' => 'slider',
1383
- 'min' => 200,
1384
- 'max' => 1600,
1385
- 'step' => 20,
1386
- 'default' => 400,
1387
- 'name' => __( 'Height', 'su' ),
1388
- 'desc' => __( 'Player height', 'su' )
1389
- ),
1390
- 'responsive' => array(
1391
- 'type' => 'bool',
1392
- 'default' => 'yes',
1393
- 'name' => __( 'Responsive', 'su' ),
1394
- 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1395
- ),
1396
- 'controls' => array(
1397
- 'type' => 'select',
1398
- 'values' => array(
1399
- 'no' => __( '0 - Hide controls', 'su' ),
1400
- 'yes' => __( '1 - Show controls', 'su' ),
1401
- 'alt' => __( '2 - Show controls when playback is started', 'su' )
1402
- ),
1403
- 'default' => 'yes',
1404
- 'name' => __( 'Controls', 'su' ),
1405
- 'desc' => __( 'This parameter indicates whether the video player controls will display', 'su' )
1406
- ),
1407
- 'autohide' => array(
1408
- 'type' => 'select',
1409
- 'values' => array(
1410
- 'no' => __( '0 - Do not hide controls', 'su' ),
1411
- 'yes' => __( '1 - Hide all controls on mouse out', 'su' ),
1412
- 'alt' => __( '2 - Hide progress bar on mouse out', 'su' )
1413
- ),
1414
- 'default' => 'alt',
1415
- 'name' => __( 'Autohide', 'su' ),
1416
- 'desc' => __( 'This parameter indicates whether the video controls will automatically hide after a video begins playing', 'su' )
1417
- ),
1418
- 'showinfo' => array(
1419
- 'type' => 'bool',
1420
- 'default' => 'yes',
1421
- 'name' => __( 'Show title bar', 'su' ),
1422
- 'desc' => __( 'If you set the parameter value to NO, then the player will not display information like the video title and uploader before the video starts playing.', 'su' )
1423
- ),
1424
- 'autoplay' => array(
1425
- 'type' => 'bool',
1426
- 'default' => 'no',
1427
- 'name' => __( 'Autoplay', 'su' ),
1428
- 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1429
- ),
1430
- 'loop' => array(
1431
- 'type' => 'bool',
1432
- 'default' => 'no',
1433
- 'name' => __( 'Loop', 'su' ),
1434
- 'desc' => __( 'Setting of YES will cause the player to play the initial video again and again', 'su' )
1435
- ),
1436
- 'rel' => array(
1437
- 'type' => 'bool',
1438
- 'default' => 'yes',
1439
- 'name' => __( 'Related videos', 'su' ),
1440
- 'desc' => __( 'This parameter indicates whether the player should show related videos when playback of the initial video ends', 'su' )
1441
- ),
1442
- 'fs' => array(
1443
- 'type' => 'bool',
1444
- 'default' => 'yes',
1445
- 'name' => __( 'Show full-screen button', 'su' ),
1446
- 'desc' => __( 'Setting this parameter to NO prevents the fullscreen button from displaying', 'su' )
1447
- ),
1448
- 'modestbranding' => array(
1449
- 'type' => 'bool',
1450
- 'default' => 'no',
1451
- 'name' => 'modestbranding',
1452
- 'desc' => __( 'This parameter lets you use a YouTube player that does not show a YouTube logo. Set the parameter value to YES to prevent the YouTube logo from displaying in the control bar. Note that a small YouTube text label will still display in the upper-right corner of a paused video when the user\'s mouse pointer hovers over the player', 'su' )
1453
- ),
1454
- 'theme' => array(
1455
- 'type' => 'select',
1456
- 'values' => array(
1457
- 'dark' => __( 'Dark theme', 'su' ),
1458
- 'light' => __( 'Light theme', 'su' )
1459
- ),
1460
- 'default' => 'dark',
1461
- 'name' => __( 'Theme', 'su' ),
1462
- 'desc' => __( 'This parameter indicates whether the embedded player will display player controls (like a play button or volume control) within a dark or light control bar', 'su' )
1463
- ),
1464
- 'https' => array(
1465
- 'type' => 'bool',
1466
- 'default' => 'no',
1467
- 'name' => __( 'Force HTTPS', 'su' ),
1468
- 'desc' => __( 'Use HTTPS in player iframe', 'su' )
1469
- ),
1470
- 'wmode' => array(
1471
- 'default' => '',
1472
- 'name' => __( 'WMode', 'su' ),
1473
- 'desc' => sprintf( __( 'Here you can specify wmode value for the embed URL. %s Example values: %s, %s', 'su' ), '<br>', '<b%value>transparent</b>', '<b%value>opaque</b>' )
1474
- ),
1475
- 'class' => array(
1476
- 'default' => '',
1477
- 'name' => __( 'Class', 'su' ),
1478
- 'desc' => __( 'Extra CSS class', 'su' )
1479
- )
1480
- ),
1481
- 'desc' => __( 'YouTube video player with advanced settings', 'su' ),
1482
- 'example' => 'media',
1483
- 'icon' => 'youtube-play'
1484
- ),
1485
- // vimeo
1486
- 'vimeo' => array(
1487
- 'name' => __( 'Vimeo', 'su' ),
1488
- 'type' => 'single',
1489
- 'group' => 'media',
1490
- 'atts' => array(
1491
- 'url' => array(
1492
- 'values' => array( ),
1493
- 'default' => '',
1494
- 'name' => __( 'Url', 'su' ), 'desc' => __( 'Url of Vimeo page with video', 'su' )
1495
- ),
1496
- 'width' => array(
1497
- 'type' => 'slider',
1498
- 'min' => 200,
1499
- 'max' => 1600,
1500
- 'step' => 20,
1501
- 'default' => 600,
1502
- 'name' => __( 'Width', 'su' ),
1503
- 'desc' => __( 'Player width', 'su' )
1504
- ),
1505
- 'height' => array(
1506
- 'type' => 'slider',
1507
- 'min' => 200,
1508
- 'max' => 1600,
1509
- 'step' => 20,
1510
- 'default' => 400,
1511
- 'name' => __( 'Height', 'su' ),
1512
- 'desc' => __( 'Player height', 'su' )
1513
- ),
1514
- 'responsive' => array(
1515
- 'type' => 'bool',
1516
- 'default' => 'yes',
1517
- 'name' => __( 'Responsive', 'su' ),
1518
- 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1519
- ),
1520
- 'autoplay' => array(
1521
- 'type' => 'bool',
1522
- 'default' => 'no',
1523
- 'name' => __( 'Autoplay', 'su' ),
1524
- 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1525
- ),
1526
- 'class' => array(
1527
- 'default' => '',
1528
- 'name' => __( 'Class', 'su' ),
1529
- 'desc' => __( 'Extra CSS class', 'su' )
1530
- )
1531
- ),
1532
- 'desc' => __( 'Vimeo video', 'su' ),
1533
- 'example' => 'media',
1534
- 'icon' => 'youtube-play'
1535
- ),
1536
- // screenr
1537
- 'screenr' => array(
1538
- 'name' => __( 'Screenr', 'su' ),
1539
- 'type' => 'single',
1540
- 'group' => 'media',
1541
- 'atts' => array(
1542
- 'url' => array(
1543
- 'default' => '',
1544
- 'name' => __( 'Url', 'su' ),
1545
- 'desc' => __( 'Url of Screenr page with video', 'su' )
1546
- ),
1547
- 'width' => array(
1548
- 'type' => 'slider',
1549
- 'min' => 200,
1550
- 'max' => 1600,
1551
- 'step' => 20,
1552
- 'default' => 600,
1553
- 'name' => __( 'Width', 'su' ),
1554
- 'desc' => __( 'Player width', 'su' )
1555
- ),
1556
- 'height' => array(
1557
- 'type' => 'slider',
1558
- 'min' => 200,
1559
- 'max' => 1600,
1560
- 'step' => 20,
1561
- 'default' => 400,
1562
- 'name' => __( 'Height', 'su' ),
1563
- 'desc' => __( 'Player height', 'su' )
1564
- ),
1565
- 'responsive' => array(
1566
- 'type' => 'bool',
1567
- 'default' => 'yes',
1568
- 'name' => __( 'Responsive', 'su' ),
1569
- 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1570
- ),
1571
- 'class' => array(
1572
- 'default' => '',
1573
- 'name' => __( 'Class', 'su' ),
1574
- 'desc' => __( 'Extra CSS class', 'su' )
1575
- )
1576
- ),
1577
- 'desc' => __( 'Screenr video', 'su' ),
1578
- 'icon' => 'youtube-play'
1579
- ),
1580
- // dailymotion
1581
- 'dailymotion' => array(
1582
- 'name' => __( 'Dailymotion', 'su' ),
1583
- 'type' => 'single',
1584
- 'group' => 'media',
1585
- 'atts' => array(
1586
- 'url' => array(
1587
- 'default' => '',
1588
- 'name' => __( 'Url', 'su' ),
1589
- 'desc' => __( 'Url of Dailymotion page with video', 'su' )
1590
- ),
1591
- 'width' => array(
1592
- 'type' => 'slider',
1593
- 'min' => 200,
1594
- 'max' => 1600,
1595
- 'step' => 20,
1596
- 'default' => 600,
1597
- 'name' => __( 'Width', 'su' ),
1598
- 'desc' => __( 'Player width', 'su' )
1599
- ),
1600
- 'height' => array(
1601
- 'type' => 'slider',
1602
- 'min' => 200,
1603
- 'max' => 1600,
1604
- 'step' => 20,
1605
- 'default' => 400,
1606
- 'name' => __( 'Height', 'su' ),
1607
- 'desc' => __( 'Player height', 'su' )
1608
- ),
1609
- 'responsive' => array(
1610
- 'type' => 'bool',
1611
- 'default' => 'yes',
1612
- 'name' => __( 'Responsive', 'su' ),
1613
- 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1614
- ),
1615
- 'autoplay' => array(
1616
- 'type' => 'bool',
1617
- 'default' => 'no',
1618
- 'name' => __( 'Autoplay', 'su' ),
1619
- 'desc' => __( 'Start the playback of the video automatically after the player load. May not work on some mobile OS versions', 'su' )
1620
- ),
1621
- 'background' => array(
1622
- 'type' => 'color',
1623
- 'default' => '#FFC300',
1624
- 'name' => __( 'Background color', 'su' ),
1625
- 'desc' => __( 'HTML color of the background of controls elements', 'su' )
1626
- ),
1627
- 'foreground' => array(
1628
- 'type' => 'color',
1629
- 'default' => '#F7FFFD',
1630
- 'name' => __( 'Foreground color', 'su' ),
1631
- 'desc' => __( 'HTML color of the foreground of controls elements', 'su' )
1632
- ),
1633
- 'highlight' => array(
1634
- 'type' => 'color',
1635
- 'default' => '#171D1B',
1636
- 'name' => __( 'Highlight color', 'su' ),
1637
- 'desc' => __( 'HTML color of the controls elements\' highlights', 'su' )
1638
- ),
1639
- 'logo' => array(
1640
- 'type' => 'bool',
1641
- 'default' => 'yes',
1642
- 'name' => __( 'Show logo', 'su' ),
1643
- 'desc' => __( 'Allows to hide or show the Dailymotion logo', 'su' )
1644
- ),
1645
- 'quality' => array(
1646
- 'type' => 'select',
1647
- 'values' => array(
1648
- '240' => '240',
1649
- '380' => '380',
1650
- '480' => '480',
1651
- '720' => '720',
1652
- '1080' => '1080'
1653
- ),
1654
- 'default' => '380',
1655
- 'name' => __( 'Quality', 'su' ),
1656
- 'desc' => __( 'Determines the quality that must be played by default if available', 'su' )
1657
- ),
1658
- 'related' => array(
1659
- 'type' => 'bool',
1660
- 'default' => 'yes',
1661
- 'name' => __( 'Show related videos', 'su' ),
1662
- 'desc' => __( 'Show related videos at the end of the video', 'su' )
1663
- ),
1664
- 'info' => array(
1665
- 'type' => 'bool',
1666
- 'default' => 'yes',
1667
- 'name' => __( 'Show video info', 'su' ),
1668
- 'desc' => __( 'Show videos info (title/author) on the start screen', 'su' )
1669
- ),
1670
- 'class' => array(
1671
- 'default' => '',
1672
- 'name' => __( 'Class', 'su' ),
1673
- 'desc' => __( 'Extra CSS class', 'su' )
1674
- )
1675
- ),
1676
- 'desc' => __( 'Dailymotion video', 'su' ),
1677
- 'icon' => 'youtube-play'
1678
- ),
1679
- // audio
1680
- 'audio' => array(
1681
- 'name' => __( 'Audio', 'su' ),
1682
- 'type' => 'single',
1683
- 'group' => 'media',
1684
- 'atts' => array(
1685
- 'url' => array(
1686
- 'type' => 'upload',
1687
- 'default' => '',
1688
- 'name' => __( 'File', 'su' ),
1689
- 'desc' => __( 'Audio file url. Supported formats: mp3, ogg', 'su' )
1690
- ),
1691
- 'width' => array(
1692
- 'values' => array(),
1693
- 'default' => '100%',
1694
- 'name' => __( 'Width', 'su' ),
1695
- 'desc' => __( 'Player width. You can specify width in percents and player will be responsive. Example values: <b%value>200px</b>, <b%value>100&#37;</b>', 'su' )
1696
- ),
1697
- 'autoplay' => array(
1698
- 'type' => 'bool',
1699
- 'default' => 'no',
1700
- 'name' => __( 'Autoplay', 'su' ),
1701
- 'desc' => __( 'Play file automatically when page is loaded', 'su' )
1702
- ),
1703
- 'loop' => array(
1704
- 'type' => 'bool',
1705
- 'default' => 'no',
1706
- 'name' => __( 'Loop', 'su' ),
1707
- 'desc' => __( 'Repeat when playback is ended', 'su' )
1708
- ),
1709
- 'class' => array(
1710
- 'default' => '',
1711
- 'name' => __( 'Class', 'su' ),
1712
- 'desc' => __( 'Extra CSS class', 'su' )
1713
- )
1714
- ),
1715
- 'desc' => __( 'Custom audio player', 'su' ),
1716
- 'example' => 'media',
1717
- 'icon' => 'play-circle'
1718
- ),
1719
- // video
1720
- 'video' => array(
1721
- 'name' => __( 'Video', 'su' ),
1722
- 'type' => 'single',
1723
- 'group' => 'media',
1724
- 'atts' => array(
1725
- 'url' => array(
1726
- 'type' => 'upload',
1727
- 'default' => '',
1728
- 'name' => __( 'File', 'su' ),
1729
- 'desc' => __( 'Url to mp4/flv video-file', 'su' )
1730
- ),
1731
- 'poster' => array(
1732
- 'type' => 'upload',
1733
- 'default' => '',
1734
- 'name' => __( 'Poster', 'su' ),
1735
- 'desc' => __( 'Url to poster image, that will be shown before playback', 'su' )
1736
- ),
1737
- 'title' => array(
1738
- 'values' => array( ),
1739
- 'default' => '',
1740
- 'name' => __( 'Title', 'su' ),
1741
- 'desc' => __( 'Player title', 'su' )
1742
- ),
1743
- 'width' => array(
1744
- 'type' => 'slider',
1745
- 'min' => 200,
1746
- 'max' => 1600,
1747
- 'step' => 20,
1748
- 'default' => 600,
1749
- 'name' => __( 'Width', 'su' ),
1750
- 'desc' => __( 'Player width', 'su' )
1751
- ),
1752
- 'height' => array(
1753
- 'type' => 'slider',
1754
- 'min' => 200,
1755
- 'max' => 1600,
1756
- 'step' => 20,
1757
- 'default' => 300,
1758
- 'name' => __( 'Height', 'su' ),
1759
- 'desc' => __( 'Player height', 'su' )
1760
- ),
1761
- 'controls' => array(
1762
- 'type' => 'bool',
1763
- 'default' => 'yes',
1764
- 'name' => __( 'Controls', 'su' ),
1765
- 'desc' => __( 'Show player controls (play/pause etc.) or not', 'su' )
1766
- ),
1767
- 'autoplay' => array(
1768
- 'type' => 'bool',
1769
- 'default' => 'no',
1770
- 'name' => __( 'Autoplay', 'su' ),
1771
- 'desc' => __( 'Play file automatically when page is loaded', 'su' )
1772
- ),
1773
- 'loop' => array(
1774
- 'type' => 'bool',
1775
- 'default' => 'no',
1776
- 'name' => __( 'Loop', 'su' ),
1777
- 'desc' => __( 'Repeat when playback is ended', 'su' )
1778
- ),
1779
- 'class' => array(
1780
- 'default' => '',
1781
- 'name' => __( 'Class', 'su' ),
1782
- 'desc' => __( 'Extra CSS class', 'su' )
1783
- )
1784
- ),
1785
- 'desc' => __( 'Custom video player', 'su' ),
1786
- 'example' => 'media',
1787
- 'icon' => 'play-circle'
1788
- ),
1789
- // table
1790
- 'table' => array(
1791
- 'name' => __( 'Table', 'su' ),
1792
- 'type' => 'mixed',
1793
- 'group' => 'content',
1794
- 'atts' => array(
1795
- 'url' => array(
1796
- 'type' => 'upload',
1797
- 'default' => '',
1798
- 'name' => __( 'CSV file', 'su' ),
1799
- 'desc' => __( 'Upload CSV file if you want to create HTML-table from file', 'su' )
1800
- ),
1801
- 'class' => array(
1802
- 'default' => '',
1803
- 'name' => __( 'Class', 'su' ),
1804
- 'desc' => __( 'Extra CSS class', 'su' )
1805
- )
1806
- ),
1807
- 'content' => __( "<table>\n<tr>\n\t<td>Table</td>\n\t<td>Table</td>\n</tr>\n<tr>\n\t<td>Table</td>\n\t<td>Table</td>\n</tr>\n</table>", 'su' ),
1808
- 'desc' => __( 'Styled table from HTML or CSV file', 'su' ),
1809
- 'icon' => 'table'
1810
- ),
1811
- // permalink
1812
- 'permalink' => array(
1813
- 'name' => __( 'Permalink', 'su' ),
1814
- 'type' => 'mixed',
1815
- 'group' => 'content other',
1816
- 'atts' => array(
1817
- 'id' => array(
1818
- 'values' => array( ), 'default' => 1,
1819
- 'name' => __( 'ID', 'su' ),
1820
- 'desc' => __( 'Post or page ID', 'su' )
1821
- ),
1822
- 'target' => array(
1823
- 'type' => 'select',
1824
- 'values' => array(
1825
- 'self' => __( 'Same tab', 'su' ),
1826
- 'blank' => __( 'New tab', 'su' )
1827
- ),
1828
- 'default' => 'self',
1829
- 'name' => __( 'Target', 'su' ),
1830
- 'desc' => __( 'Link target. blank - link will be opened in new window/tab', 'su' )
1831
- ),
1832
- 'class' => array(
1833
- 'default' => '',
1834
- 'name' => __( 'Class', 'su' ),
1835
- 'desc' => __( 'Extra CSS class', 'su' )
1836
- )
1837
- ),
1838
- 'content' => '',
1839
- 'desc' => __( 'Permalink to specified post/page', 'su' ),
1840
- 'icon' => 'link'
1841
- ),
1842
- // members
1843
- 'members' => array(
1844
- 'name' => __( 'Members', 'su' ),
1845
- 'type' => 'wrap',
1846
- 'group' => 'other',
1847
- 'atts' => array(
1848
- 'message' => array(
1849
- 'default' => __( 'This content is for registered users only. Please %login%.', 'su' ),
1850
- 'name' => __( 'Message', 'su' ), 'desc' => __( 'Message for not logged users', 'su' )
1851
- ),
1852
- 'color' => array(
1853
- 'type' => 'color',
1854
- 'default' => '#ffcc00',
1855
- 'name' => __( 'Box color', 'su' ), 'desc' => __( 'This color will applied only to box for not logged users', 'su' )
1856
- ),
1857
- 'login_text' => array(
1858
- 'default' => __( 'login', 'su' ),
1859
- 'name' => __( 'Login link text', 'su' ), 'desc' => __( 'Text for the login link', 'su' )
1860
- ),
1861
- 'login_url' => array(
1862
- 'default' => wp_login_url(),
1863
- 'name' => __( 'Login link url', 'su' ), 'desc' => __( 'Login link url', 'su' )
1864
- ),
1865
- 'class' => array(
1866
- 'default' => '',
1867
- 'name' => __( 'Class', 'su' ),
1868
- 'desc' => __( 'Extra CSS class', 'su' )
1869
- )
1870
- ),
1871
- 'content' => __( 'Content for logged members', 'su' ),
1872
- 'desc' => __( 'Content for logged in members only', 'su' ),
1873
- 'icon' => 'lock'
1874
- ),
1875
- // guests
1876
- 'guests' => array(
1877
- 'name' => __( 'Guests', 'su' ),
1878
- 'type' => 'wrap',
1879
- 'group' => 'other',
1880
- 'atts' => array(
1881
- 'class' => array(
1882
- 'default' => '',
1883
- 'name' => __( 'Class', 'su' ),
1884
- 'desc' => __( 'Extra CSS class', 'su' )
1885
- )
1886
- ),
1887
- 'content' => __( 'Content for guests', 'su' ),
1888
- 'desc' => __( 'Content for guests only', 'su' ),
1889
- 'icon' => 'user'
1890
- ),
1891
- // feed
1892
- 'feed' => array(
1893
- 'name' => __( 'RSS Feed', 'su' ),
1894
- 'type' => 'single',
1895
- 'group' => 'content other',
1896
- 'atts' => array(
1897
- 'url' => array(
1898
- 'values' => array( ),
1899
- 'default' => '',
1900
- 'name' => __( 'Url', 'su' ),
1901
- 'desc' => __( 'Url to RSS-feed', 'su' )
1902
- ),
1903
- 'limit' => array(
1904
- 'type' => 'slider',
1905
- 'min' => 1,
1906
- 'max' => 20,
1907
- 'step' => 1,
1908
- 'default' => 3,
1909
- 'name' => __( 'Limit', 'su' ), 'desc' => __( 'Number of items to show', 'su' )
1910
- ),
1911
- 'class' => array(
1912
- 'default' => '',
1913
- 'name' => __( 'Class', 'su' ),
1914
- 'desc' => __( 'Extra CSS class', 'su' )
1915
- )
1916
- ),
1917
- 'desc' => __( 'Feed grabber', 'su' ),
1918
- 'icon' => 'rss'
1919
- ),
1920
- // menu
1921
- 'menu' => array(
1922
- 'name' => __( 'Menu', 'su' ),
1923
- 'type' => 'single',
1924
- 'group' => 'other',
1925
- 'atts' => array(
1926
- 'name' => array(
1927
- 'values' => array( ),
1928
- 'default' => '',
1929
- 'name' => __( 'Menu name', 'su' ), 'desc' => __( 'Custom menu name. Ex: Main menu', 'su' )
1930
- ),
1931
- 'class' => array(
1932
- 'default' => '',
1933
- 'name' => __( 'Class', 'su' ),
1934
- 'desc' => __( 'Extra CSS class', 'su' )
1935
- )
1936
- ),
1937
- 'desc' => __( 'Custom menu by name', 'su' ),
1938
- 'icon' => 'bars'
1939
- ),
1940
- // subpages
1941
- 'subpages' => array(
1942
- 'name' => __( 'Sub pages', 'su' ),
1943
- 'type' => 'single',
1944
- 'group' => 'other',
1945
- 'atts' => array(
1946
- 'depth' => array(
1947
- 'type' => 'select',
1948
- 'values' => array( 1, 2, 3, 4, 5 ), 'default' => 1,
1949
- 'name' => __( 'Depth', 'su' ),
1950
- 'desc' => __( 'Max depth level of children pages', 'su' )
1951
- ),
1952
- 'p' => array(
1953
- 'values' => array( ),
1954
- 'default' => '',
1955
- 'name' => __( 'Parent ID', 'su' ),
1956
- 'desc' => __( 'ID of the parent page. Leave blank to use current page', 'su' )
1957
- ),
1958
- 'class' => array(
1959
- 'default' => '',
1960
- 'name' => __( 'Class', 'su' ),
1961
- 'desc' => __( 'Extra CSS class', 'su' )
1962
- )
1963
- ),
1964
- 'desc' => __( 'List of sub pages', 'su' ),
1965
- 'icon' => 'bars'
1966
- ),
1967
- // siblings
1968
- 'siblings' => array(
1969
- 'name' => __( 'Siblings', 'su' ),
1970
- 'type' => 'single',
1971
- 'group' => 'other',
1972
- 'atts' => array(
1973
- 'depth' => array(
1974
- 'type' => 'select',
1975
- 'values' => array( 1, 2, 3 ), 'default' => 1,
1976
- 'name' => __( 'Depth', 'su' ),
1977
- 'desc' => __( 'Max depth level', 'su' )
1978
- ),
1979
- 'class' => array(
1980
- 'default' => '',
1981
- 'name' => __( 'Class', 'su' ),
1982
- 'desc' => __( 'Extra CSS class', 'su' )
1983
- )
1984
- ),
1985
- 'desc' => __( 'List of cureent page siblings', 'su' ),
1986
- 'icon' => 'bars'
1987
- ),
1988
- // document
1989
- 'document' => array(
1990
- 'name' => __( 'Document', 'su' ),
1991
- 'type' => 'single',
1992
- 'group' => 'media',
1993
- 'atts' => array(
1994
- 'url' => array(
1995
- 'type' => 'upload',
1996
- 'default' => '',
1997
- 'name' => __( 'Url', 'su' ),
1998
- 'desc' => __( 'Url to uploaded document. Supported formats: doc, xls, pdf etc.', 'su' )
1999
- ),
2000
- 'width' => array(
2001
- 'type' => 'slider',
2002
- 'min' => 200,
2003
- 'max' => 1600,
2004
- 'step' => 20,
2005
- 'default' => 600,
2006
- 'name' => __( 'Width', 'su' ),
2007
- 'desc' => __( 'Viewer width', 'su' )
2008
- ),
2009
- 'height' => array(
2010
- 'type' => 'slider',
2011
- 'min' => 200,
2012
- 'max' => 1600,
2013
- 'step' => 20,
2014
- 'default' => 600,
2015
- 'name' => __( 'Height', 'su' ),
2016
- 'desc' => __( 'Viewer height', 'su' )
2017
- ),
2018
- 'responsive' => array(
2019
- 'type' => 'bool',
2020
- 'default' => 'yes',
2021
- 'name' => __( 'Responsive', 'su' ),
2022
- 'desc' => __( 'Ignore width and height parameters and make viewer responsive', 'su' )
2023
- ),
2024
- 'class' => array(
2025
- 'default' => '',
2026
- 'name' => __( 'Class', 'su' ),
2027
- 'desc' => __( 'Extra CSS class', 'su' )
2028
- )
2029
- ),
2030
- 'desc' => __( 'Document viewer by Google', 'su' ),
2031
- 'icon' => 'file-text'
2032
- ),
2033
- // gmap
2034
- 'gmap' => array(
2035
- 'name' => __( 'Gmap', 'su' ),
2036
- 'type' => 'single',
2037
- 'group' => 'media',
2038
- 'atts' => array(
2039
- 'width' => array(
2040
- 'type' => 'slider',
2041
- 'min' => 200,
2042
- 'max' => 1600,
2043
- 'step' => 20,
2044
- 'default' => 600,
2045
- 'name' => __( 'Width', 'su' ),
2046
- 'desc' => __( 'Map width', 'su' )
2047
- ),
2048
- 'height' => array(
2049
- 'type' => 'slider',
2050
- 'min' => 200,
2051
- 'max' => 1600,
2052
- 'step' => 20,
2053
- 'default' => 400,
2054
- 'name' => __( 'Height', 'su' ),
2055
- 'desc' => __( 'Map height', 'su' )
2056
- ),
2057
- 'responsive' => array(
2058
- 'type' => 'bool',
2059
- 'default' => 'yes',
2060
- 'name' => __( 'Responsive', 'su' ),
2061
- 'desc' => __( 'Ignore width and height parameters and make map responsive', 'su' )
2062
- ),
2063
- 'address' => array(
2064
- 'values' => array( ),
2065
- 'default' => '',
2066
- 'name' => __( 'Marker', 'su' ),
2067
- 'desc' => __( 'Address for the marker. You can type it in any language', 'su' )
2068
- ),
2069
- 'class' => array(
2070
- 'default' => '',
2071
- 'name' => __( 'Class', 'su' ),
2072
- 'desc' => __( 'Extra CSS class', 'su' )
2073
- )
2074
- ),
2075
- 'desc' => __( 'Maps by Google', 'su' ),
2076
- 'icon' => 'globe'
2077
- ),
2078
- // slider
2079
- 'slider' => array(
2080
- 'name' => __( 'Slider', 'su' ),
2081
- 'type' => 'single',
2082
- 'group' => 'gallery',
2083
- 'atts' => array(
2084
- 'source' => array(
2085
- 'type' => 'image_source',
2086
- 'default' => 'none',
2087
- 'name' => __( 'Source', 'su' ),
2088
- 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2089
- ),
2090
- 'limit' => array(
2091
- 'type' => 'slider',
2092
- 'min' => -1,
2093
- 'max' => 100,
2094
- 'step' => 1,
2095
- 'default' => 20,
2096
- 'name' => __( 'Limit', 'su' ),
2097
- 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2098
- ),
2099
- 'link' => array(
2100
- 'type' => 'select',
2101
- 'values' => array(
2102
- 'none' => __( 'None', 'su' ),
2103
- 'image' => __( 'Full-size image', 'su' ),
2104
- 'lightbox' => __( 'Lightbox', 'su' ),
2105
- 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2106
- 'attachment' => __( 'Attachment page', 'su' ),
2107
- 'post' => __( 'Post permalink', 'su' )
2108
- ),
2109
- 'default' => 'none',
2110
- 'name' => __( 'Links', 'su' ),
2111
- 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2112
- ),
2113
- 'target' => array(
2114
- 'type' => 'select',
2115
- 'values' => array(
2116
- 'self' => __( 'Same window', 'su' ),
2117
- 'blank' => __( 'New window', 'su' )
2118
- ),
2119
- 'default' => 'self',
2120
- 'name' => __( 'Links target', 'su' ),
2121
- 'desc' => __( 'Open links in', 'su' )
2122
- ),
2123
- 'width' => array(
2124
- 'type' => 'slider',
2125
- 'min' => 200,
2126
- 'max' => 1600,
2127
- 'step' => 20,
2128
- 'default' => 600,
2129
- 'name' => __( 'Width', 'su' ), 'desc' => __( 'Slider width (in pixels)', 'su' )
2130
- ),
2131
- 'height' => array(
2132
- 'type' => 'slider',
2133
- 'min' => 200,
2134
- 'max' => 1600,
2135
- 'step' => 20,
2136
- 'default' => 300,
2137
- 'name' => __( 'Height', 'su' ), 'desc' => __( 'Slider height (in pixels)', 'su' )
2138
- ),
2139
- 'responsive' => array(
2140
- 'type' => 'bool',
2141
- 'default' => 'yes',
2142
- 'name' => __( 'Responsive', 'su' ),
2143
- 'desc' => __( 'Ignore width and height parameters and make slider responsive', 'su' )
2144
- ),
2145
- 'title' => array(
2146
- 'type' => 'bool',
2147
- 'default' => 'yes',
2148
- 'name' => __( 'Show titles', 'su' ), 'desc' => __( 'Display slide titles', 'su' )
2149
- ),
2150
- 'centered' => array(
2151
- 'type' => 'bool',
2152
- 'default' => 'yes',
2153
- 'name' => __( 'Center', 'su' ), 'desc' => __( 'Is slider centered on the page', 'su' )
2154
- ),
2155
- 'arrows' => array(
2156
- 'type' => 'bool',
2157
- 'default' => 'yes',
2158
- 'name' => __( 'Arrows', 'su' ), 'desc' => __( 'Show left and right arrows', 'su' )
2159
- ),
2160
- 'pages' => array(
2161
- 'type' => 'bool',
2162
- 'default' => 'yes',
2163
- 'name' => __( 'Pagination', 'su' ),
2164
- 'desc' => __( 'Show pagination', 'su' )
2165
- ),
2166
- 'mousewheel' => array(
2167
- 'type' => 'bool',
2168
- 'default' => 'yes', 'name' => __( 'Mouse wheel control', 'su' ),
2169
- 'desc' => __( 'Allow to change slides with mouse wheel', 'su' )
2170
- ),
2171
- 'autoplay' => array(
2172
- 'type' => 'number',
2173
- 'min' => 0,
2174
- 'max' => 100000,
2175
- 'step' => 100,
2176
- 'default' => 5000,
2177
- 'name' => __( 'Autoplay', 'su' ),
2178
- 'desc' => __( 'Choose interval between slide animations. Set to 0 to disable autoplay', 'su' )
2179
- ),
2180
- 'speed' => array(
2181
- 'type' => 'number',
2182
- 'min' => 0,
2183
- 'max' => 20000,
2184
- 'step' => 100,
2185
- 'default' => 600,
2186
- 'name' => __( 'Speed', 'su' ), 'desc' => __( 'Specify animation speed', 'su' )
2187
- ),
2188
- 'class' => array(
2189
- 'default' => '',
2190
- 'name' => __( 'Class', 'su' ),
2191
- 'desc' => __( 'Extra CSS class', 'su' )
2192
- )
2193
- ),
2194
- 'desc' => __( 'Customizable image slider', 'su' ),
2195
- 'icon' => 'picture-o'
2196
- ),
2197
- // carousel
2198
- 'carousel' => array(
2199
- 'name' => __( 'Carousel', 'su' ),
2200
- 'type' => 'single',
2201
- 'group' => 'gallery',
2202
- 'atts' => array(
2203
- 'source' => array(
2204
- 'type' => 'image_source',
2205
- 'default' => 'none',
2206
- 'name' => __( 'Source', 'su' ),
2207
- 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2208
- ),
2209
- 'limit' => array(
2210
- 'type' => 'slider',
2211
- 'min' => -1,
2212
- 'max' => 100,
2213
- 'step' => 1,
2214
- 'default' => 20,
2215
- 'name' => __( 'Limit', 'su' ),
2216
- 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2217
- ),
2218
- 'link' => array(
2219
- 'type' => 'select',
2220
- 'values' => array(
2221
- 'none' => __( 'None', 'su' ),
2222
- 'image' => __( 'Full-size image', 'su' ),
2223
- 'lightbox' => __( 'Lightbox', 'su' ),
2224
- 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2225
- 'attachment' => __( 'Attachment page', 'su' ),
2226
- 'post' => __( 'Post permalink', 'su' )
2227
- ),
2228
- 'default' => 'none',
2229
- 'name' => __( 'Links', 'su' ),
2230
- 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2231
- ),
2232
- 'target' => array(
2233
- 'type' => 'select',
2234
- 'values' => array(
2235
- 'self' => __( 'Same window', 'su' ),
2236
- 'blank' => __( 'New window', 'su' )
2237
- ),
2238
- 'default' => 'self',
2239
- 'name' => __( 'Links target', 'su' ),
2240
- 'desc' => __( 'Open links in', 'su' )
2241
- ),
2242
- 'width' => array(
2243
- 'type' => 'slider',
2244
- 'min' => 100,
2245
- 'max' => 1600,
2246
- 'step' => 20,
2247
- 'default' => 600,
2248
- 'name' => __( 'Width', 'su' ),
2249
- 'desc' => __( 'Carousel width (in pixels)', 'su' )
2250
- ),
2251
- 'height' => array(
2252
- 'type' => 'slider',
2253
- 'min' => 20,
2254
- 'max' => 1600,
2255
- 'step' => 20,
2256
- 'default' => 100,
2257
- 'name' => __( 'Height', 'su' ),
2258
- 'desc' => __( 'Carousel height (in pixels)', 'su' )
2259
- ),
2260
- 'responsive' => array(
2261
- 'type' => 'bool',
2262
- 'default' => 'yes',
2263
- 'name' => __( 'Responsive', 'su' ),
2264
- 'desc' => __( 'Ignore width and height parameters and make carousel responsive', 'su' )
2265
- ),
2266
- 'items' => array(
2267
- 'type' => 'number',
2268
- 'min' => 1,
2269
- 'max' => 20,
2270
- 'step' => 1,
2271
- 'default' => 3,
2272
- 'name' => __( 'Items to show', 'su' ),
2273
- 'desc' => __( 'How much carousel items is visible', 'su' )
2274
- ),
2275
- 'scroll' => array(
2276
- 'type' => 'number',
2277
- 'min' => 1,
2278
- 'max' => 20,
2279
- 'step' => 1, 'default' => 1,
2280
- 'name' => __( 'Scroll number', 'su' ),
2281
- 'desc' => __( 'How much items are scrolled in one transition', 'su' )
2282
- ),
2283
- 'title' => array(
2284
- 'type' => 'bool',
2285
- 'default' => 'yes',
2286
- 'name' => __( 'Show titles', 'su' ), 'desc' => __( 'Display titles for each item', 'su' )
2287
- ),
2288
- 'centered' => array(
2289
- 'type' => 'bool',
2290
- 'default' => 'yes',
2291
- 'name' => __( 'Center', 'su' ), 'desc' => __( 'Is carousel centered on the page', 'su' )
2292
- ),
2293
- 'arrows' => array(
2294
- 'type' => 'bool',
2295
- 'default' => 'yes',
2296
- 'name' => __( 'Arrows', 'su' ), 'desc' => __( 'Show left and right arrows', 'su' )
2297
- ),
2298
- 'pages' => array(
2299
- 'type' => 'bool',
2300
- 'default' => 'no',
2301
- 'name' => __( 'Pagination', 'su' ),
2302
- 'desc' => __( 'Show pagination', 'su' )
2303
- ),
2304
- 'mousewheel' => array(
2305
- 'type' => 'bool',
2306
- 'default' => 'yes', 'name' => __( 'Mouse wheel control', 'su' ),
2307
- 'desc' => __( 'Allow to rotate carousel with mouse wheel', 'su' )
2308
- ),
2309
- 'autoplay' => array(
2310
- 'type' => 'number',
2311
- 'min' => 0,
2312
- 'max' => 100000,
2313
- 'step' => 100,
2314
- 'default' => 5000,
2315
- 'name' => __( 'Autoplay', 'su' ),
2316
- 'desc' => __( 'Choose interval between auto animations. Set to 0 to disable autoplay', 'su' )
2317
- ),
2318
- 'speed' => array(
2319
- 'type' => 'number',
2320
- 'min' => 0,
2321
- 'max' => 20000,
2322
- 'step' => 100,
2323
- 'default' => 600,
2324
- 'name' => __( 'Speed', 'su' ), 'desc' => __( 'Specify animation speed', 'su' )
2325
- ),
2326
- 'class' => array(
2327
- 'default' => '',
2328
- 'name' => __( 'Class', 'su' ),
2329
- 'desc' => __( 'Extra CSS class', 'su' )
2330
- )
2331
- ),
2332
- 'desc' => __( 'Customizable image carousel', 'su' ),
2333
- 'icon' => 'picture-o'
2334
- ),
2335
- // custom_gallery
2336
- 'custom_gallery' => array(
2337
- 'name' => __( 'Gallery', 'su' ),
2338
- 'type' => 'single',
2339
- 'group' => 'gallery',
2340
- 'atts' => array(
2341
- 'source' => array(
2342
- 'type' => 'image_source',
2343
- 'default' => 'none',
2344
- 'name' => __( 'Source', 'su' ),
2345
- 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2346
- ),
2347
- 'limit' => array(
2348
- 'type' => 'slider',
2349
- 'min' => -1,
2350
- 'max' => 100,
2351
- 'step' => 1,
2352
- 'default' => 20,
2353
- 'name' => __( 'Limit', 'su' ),
2354
- 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2355
- ),
2356
- 'link' => array(
2357
- 'type' => 'select',
2358
- 'values' => array(
2359
- 'none' => __( 'None', 'su' ),
2360
- 'image' => __( 'Full-size image', 'su' ),
2361
- 'lightbox' => __( 'Lightbox', 'su' ),
2362
- 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2363
- 'attachment' => __( 'Attachment page', 'su' ),
2364
- 'post' => __( 'Post permalink', 'su' )
2365
- ),
2366
- 'default' => 'none',
2367
- 'name' => __( 'Links', 'su' ),
2368
- 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2369
- ),
2370
- 'target' => array(
2371
- 'type' => 'select',
2372
- 'values' => array(
2373
- 'self' => __( 'Same window', 'su' ),
2374
- 'blank' => __( 'New window', 'su' )
2375
- ),
2376
- 'default' => 'self',
2377
- 'name' => __( 'Links target', 'su' ),
2378
- 'desc' => __( 'Open links in', 'su' )
2379
- ),
2380
- 'width' => array(
2381
- 'type' => 'slider',
2382
- 'min' => 10,
2383
- 'max' => 1600,
2384
- 'step' => 10,
2385
- 'default' => 90,
2386
- 'name' => __( 'Width', 'su' ), 'desc' => __( 'Single item width (in pixels)', 'su' )
2387
- ),
2388
- 'height' => array(
2389
- 'type' => 'slider',
2390
- 'min' => 10,
2391
- 'max' => 1600,
2392
- 'step' => 10,
2393
- 'default' => 90,
2394
- 'name' => __( 'Height', 'su' ), 'desc' => __( 'Single item height (in pixels)', 'su' )
2395
- ),
2396
- 'title' => array(
2397
- 'type' => 'select',
2398
- 'values' => array(
2399
- 'never' => __( 'Never', 'su' ),
2400
- 'hover' => __( 'On mouse over', 'su' ),
2401
- 'always' => __( 'Always', 'su' )
2402
- ),
2403
- 'default' => 'hover',
2404
- 'name' => __( 'Show titles', 'su' ),
2405
- 'desc' => __( 'Title display mode', 'su' )
2406
- ),
2407
- 'class' => array(
2408
- 'default' => '',
2409
- 'name' => __( 'Class', 'su' ),
2410
- 'desc' => __( 'Extra CSS class', 'su' )
2411
- )
2412
- ),
2413
- 'desc' => __( 'Customizable image gallery', 'su' ),
2414
- 'icon' => 'picture-o'
2415
- ),
2416
- // posts
2417
- 'posts' => array(
2418
- 'name' => __( 'Posts', 'su' ),
2419
- 'type' => 'single',
2420
- 'group' => 'other',
2421
- 'atts' => array(
2422
- 'template' => array(
2423
- 'default' => 'templates/default-loop.php', 'name' => __( 'Template', 'su' ),
2424
- 'desc' => __( '<b>Do not change this field value if you do not understand description below.</b><br/>Relative path to the template file. Default templates is placed under the plugin directory (templates folder). You can copy it under your theme directory and modify as you want. You can use following default templates that already available in the plugin directory:<br/><b%value>templates/default-loop.php</b> - posts loop<br/><b%value>templates/teaser-loop.php</b> - posts loop with thumbnail and title<br/><b%value>templates/single-post.php</b> - single post template<br/><b%value>templates/list-loop.php</b> - unordered list with posts titles', 'su' )
2425
- ),
2426
- 'id' => array(
2427
- 'default' => '',
2428
- 'name' => __( 'Post ID\'s', 'su' ),
2429
- 'desc' => __( 'Enter comma separated ID\'s of the posts that you want to show', 'su' )
2430
- ),
2431
- 'posts_per_page' => array(
2432
- 'type' => 'number',
2433
- 'min' => -1,
2434
- 'max' => 10000,
2435
- 'step' => 1,
2436
- 'default' => get_option( 'posts_per_page' ),
2437
- 'name' => __( 'Posts per page', 'su' ),
2438
- 'desc' => __( 'Specify number of posts that you want to show. Enter -1 to get all posts', 'su' )
2439
- ),
2440
- 'post_type' => array(
2441
- 'type' => 'select',
2442
- 'multiple' => true,
2443
- 'values' => Su_Tools::get_types(),
2444
- 'default' => 'post',
2445
- 'name' => __( 'Post types', 'su' ),
2446
- 'desc' => __( 'Select post types. Hold Ctrl key to select multiple post types', 'su' )
2447
- ),
2448
- 'taxonomy' => array(
2449
- 'type' => 'select',
2450
- 'values' => Su_Tools::get_taxonomies(),
2451
- 'default' => 'category',
2452
- 'name' => __( 'Taxonomy', 'su' ),
2453
- 'desc' => __( 'Select taxonomy to show posts from', 'su' )
2454
- ),
2455
- 'tax_term' => array(
2456
- 'type' => 'select',
2457
- 'multiple' => true,
2458
- 'values' => Su_Tools::get_terms( 'category' ),
2459
- 'default' => '',
2460
- 'name' => __( 'Terms', 'su' ),
2461
- 'desc' => __( 'Select terms to show posts from', 'su' )
2462
- ),
2463
- 'tax_operator' => array(
2464
- 'type' => 'select',
2465
- 'values' => array( 'IN', 'NOT IN', 'AND' ),
2466
- 'default' => 'IN', 'name' => __( 'Taxonomy term operator', 'su' ),
2467
- 'desc' => __( 'IN - posts that have any of selected categories terms<br/>NOT IN - posts that is does not have any of selected terms<br/>AND - posts that have all selected terms', 'su' )
2468
- ),
2469
- // 'author' => array(
2470
- // 'type' => 'select',
2471
- // 'multiple' => true,
2472
- // 'values' => Su_Tools::get_users(),
2473
- // 'default' => 'default',
2474
- // 'name' => __( 'Authors', 'su' ),
2475
- // 'desc' => __( 'Choose the authors whose posts you want to show. Enter here comma-separated list of users (IDs). Example: 1,7,18', 'su' )
2476
- // ),
2477
- 'author' => array(
2478
- 'default' => '',
2479
- 'name' => __( 'Authors', 'su' ),
2480
- 'desc' => __( 'Enter here comma-separated list of author\'s IDs. Example: 1,7,18', 'su' )
2481
- ),
2482
- 'meta_key' => array(
2483
- 'default' => '',
2484
- 'name' => __( 'Meta key', 'su' ),
2485
- 'desc' => __( 'Enter meta key name to show posts that have this key', 'su' )
2486
- ),
2487
- 'offset' => array(
2488
- 'type' => 'number',
2489
- 'min' => 0,
2490
- 'max' => 10000,
2491
- 'step' => 1, 'default' => 0,
2492
- 'name' => __( 'Offset', 'su' ),
2493
- 'desc' => __( 'Specify offset to start posts loop not from first post', 'su' )
2494
- ),
2495
- 'order' => array(
2496
- 'type' => 'select',
2497
- 'values' => array(
2498
- 'desc' => __( 'Descending', 'su' ),
2499
- 'asc' => __( 'Ascending', 'su' )
2500
- ),
2501
- 'default' => 'DESC',
2502
- 'name' => __( 'Order', 'su' ),
2503
- 'desc' => __( 'Posts order', 'su' )
2504
- ),
2505
- 'orderby' => array(
2506
- 'type' => 'select',
2507
- 'values' => array(
2508
- 'none' => __( 'None', 'su' ),
2509
- 'id' => __( 'Post ID', 'su' ),
2510
- 'author' => __( 'Post author', 'su' ),
2511
- 'title' => __( 'Post title', 'su' ),
2512
- 'name' => __( 'Post slug', 'su' ),
2513
- 'date' => __( 'Date', 'su' ), 'modified' => __( 'Last modified date', 'su' ),
2514
- 'parent' => __( 'Post parent', 'su' ),
2515
- 'rand' => __( 'Random', 'su' ), 'comment_count' => __( 'Comments number', 'su' ),
2516
- 'menu_order' => __( 'Menu order', 'su' ), 'meta_value' => __( 'Meta key values', 'su' ),
2517
- ),
2518
- 'default' => 'date',
2519
- 'name' => __( 'Order by', 'su' ),
2520
- 'desc' => __( 'Order posts by', 'su' )
2521
- ),
2522
- 'post_parent' => array(
2523
- 'default' => '',
2524
- 'name' => __( 'Post parent', 'su' ),
2525
- 'desc' => __( 'Show childrens of entered post (enter post ID)', 'su' )
2526
- ),
2527
- 'post_status' => array(
2528
- 'type' => 'select',
2529
- 'values' => array(
2530
- 'publish' => __( 'Published', 'su' ),
2531
- 'pending' => __( 'Pending', 'su' ),
2532
- 'draft' => __( 'Draft', 'su' ),
2533
- 'auto-draft' => __( 'Auto-draft', 'su' ),
2534
- 'future' => __( 'Future post', 'su' ),
2535
- 'private' => __( 'Private post', 'su' ),
2536
- 'inherit' => __( 'Inherit', 'su' ),
2537
- 'trash' => __( 'Trashed', 'su' ),
2538
- 'any' => __( 'Any', 'su' ),
2539
- ),
2540
- 'default' => 'publish',
2541
- 'name' => __( 'Post status', 'su' ),
2542
- 'desc' => __( 'Show only posts with selected status', 'su' )
2543
- ),
2544
- 'ignore_sticky_posts' => array(
2545
- 'type' => 'bool',
2546
- 'default' => 'no',
2547
- 'name' => __( 'Ignore sticky', 'su' ),
2548
- 'desc' => __( 'Select Yes to ignore posts that is sticked', 'su' )
2549
- )
2550
- ),
2551
- 'desc' => __( 'Custom posts query with customizable template', 'su' ),
2552
- 'icon' => 'th-list'
2553
- ),
2554
- // dummy_text
2555
- 'dummy_text' => array(
2556
- 'name' => __( 'Dummy text', 'su' ),
2557
- 'type' => 'single',
2558
- 'group' => 'content',
2559
- 'atts' => array(
2560
- 'what' => array(
2561
- 'type' => 'select',
2562
- 'values' => array(
2563
- 'paras' => __( 'Paragraphs', 'su' ),
2564
- 'words' => __( 'Words', 'su' ),
2565
- 'bytes' => __( 'Bytes', 'su' ),
2566
- ),
2567
- 'default' => 'paras',
2568
- 'name' => __( 'What', 'su' ),
2569
- 'desc' => __( 'What to generate', 'su' )
2570
- ),
2571
- 'amount' => array(
2572
- 'type' => 'slider',
2573
- 'min' => 1,
2574
- 'max' => 100,
2575
- 'step' => 1,
2576
- 'default' => 1,
2577
- 'name' => __( 'Amount', 'su' ),
2578
- 'desc' => __( 'How many items (paragraphs or words) to generate. Minimum words amount is 5', 'su' )
2579
- ),
2580
- 'cache' => array(
2581
- 'type' => 'bool',
2582
- 'default' => 'yes',
2583
- 'name' => __( 'Cache', 'su' ),
2584
- 'desc' => __( 'Generated text will be cached. Be careful with this option. If you disable it and insert many dummy_text shortcodes the page load time will be highly increased', 'su' )
2585
- ),
2586
- 'class' => array(
2587
- 'default' => '',
2588
- 'name' => __( 'Class', 'su' ),
2589
- 'desc' => __( 'Extra CSS class', 'su' )
2590
- )
2591
- ),
2592
- 'desc' => __( 'Text placeholder', 'su' ),
2593
- 'icon' => 'text-height'
2594
- ),
2595
- // dummy_image
2596
- 'dummy_image' => array(
2597
- 'name' => __( 'Dummy image', 'su' ),
2598
- 'type' => 'single',
2599
- 'group' => 'content',
2600
- 'atts' => array(
2601
- 'width' => array(
2602
- 'type' => 'slider',
2603
- 'min' => 10,
2604
- 'max' => 1600,
2605
- 'step' => 10,
2606
- 'default' => 500,
2607
- 'name' => __( 'Width', 'su' ),
2608
- 'desc' => __( 'Image width', 'su' )
2609
- ),
2610
- 'height' => array(
2611
- 'type' => 'slider',
2612
- 'min' => 10,
2613
- 'max' => 1600,
2614
- 'step' => 10,
2615
- 'default' => 300,
2616
- 'name' => __( 'Height', 'su' ),
2617
- 'desc' => __( 'Image height', 'su' )
2618
- ),
2619
- 'theme' => array(
2620
- 'type' => 'select',
2621
- 'values' => array(
2622
- 'any' => __( 'Any', 'su' ),
2623
- 'abstract' => __( 'Abstract', 'su' ),
2624
- 'animals' => __( 'Animals', 'su' ),
2625
- 'business' => __( 'Business', 'su' ),
2626
- 'cats' => __( 'Cats', 'su' ),
2627
- 'city' => __( 'City', 'su' ),
2628
- 'food' => __( 'Food', 'su' ),
2629
- 'nightlife' => __( 'Night life', 'su' ),
2630
- 'fashion' => __( 'Fashion', 'su' ),
2631
- 'people' => __( 'People', 'su' ),
2632
- 'nature' => __( 'Nature', 'su' ),
2633
- 'sports' => __( 'Sports', 'su' ),
2634
- 'technics' => __( 'Technics', 'su' ),
2635
- 'transport' => __( 'Transport', 'su' )
2636
- ),
2637
- 'default' => 'any',
2638
- 'name' => __( 'Theme', 'su' ),
2639
- 'desc' => __( 'Select the theme for this image', 'su' )
2640
- ),
2641
- 'class' => array(
2642
- 'default' => '',
2643
- 'name' => __( 'Class', 'su' ),
2644
- 'desc' => __( 'Extra CSS class', 'su' )
2645
- )
2646
- ),
2647
- 'desc' => __( 'Image placeholder with random image', 'su' ),
2648
- 'icon' => 'picture-o'
2649
- ),
2650
- // animate
2651
- 'animate' => array(
2652
- 'name' => __( 'Animation', 'su' ),
2653
- 'type' => 'wrap',
2654
- 'group' => 'other',
2655
- 'atts' => array(
2656
- 'type' => array(
2657
- 'type' => 'select',
2658
- 'values' => array_combine( self::animations(), self::animations() ),
2659
- 'default' => 'bounceIn',
2660
- 'name' => __( 'Animation', 'su' ),
2661
- 'desc' => __( 'Select animation type', 'su' )
2662
- ),
2663
- 'duration' => array(
2664
- 'type' => 'slider',
2665
- 'min' => 0,
2666
- 'max' => 20,
2667
- 'step' => 0.5,
2668
- 'default' => 1,
2669
- 'name' => __( 'Duration', 'su' ),
2670
- 'desc' => __( 'Animation duration (seconds)', 'su' )
2671
- ),
2672
- 'delay' => array(
2673
- 'type' => 'slider',
2674
- 'min' => 0,
2675
- 'max' => 20,
2676
- 'step' => 0.5,
2677
- 'default' => 0,
2678
- 'name' => __( 'Delay', 'su' ),
2679
- 'desc' => __( 'Animation delay (seconds)', 'su' )
2680
- ),
2681
- 'inline' => array(
2682
- 'type' => 'bool',
2683
- 'default' => 'no',
2684
- 'name' => __( 'Inline', 'su' ),
2685
- 'desc' => __( 'This parameter determines what HTML tag will be used for animation wrapper. Turn this option to YES and animated element will be wrapped in SPAN instead of DIV. Useful for inline animations, like buttons', 'su' )
2686
- ),
2687
- 'class' => array(
2688
- 'default' => '',
2689
- 'name' => __( 'Class', 'su' ),
2690
- 'desc' => __( 'Extra CSS class', 'su' )
2691
- )
2692
- ),
2693
- 'content' => __( 'Animated content', 'su' ),
2694
- 'desc' => __( 'Wrapper for animation. Any nested element will be animated', 'su' ),
2695
- 'example' => 'animations',
2696
- 'icon' => 'bolt'
2697
- ),
2698
- // meta
2699
- 'meta' => array(
2700
- 'name' => __( 'Meta', 'su' ),
2701
- 'type' => 'single',
2702
- 'group' => 'data',
2703
- 'atts' => array(
2704
- 'key' => array(
2705
- 'default' => '',
2706
- 'name' => __( 'Key', 'su' ),
2707
- 'desc' => __( 'Meta key name', 'su' )
2708
- ),
2709
- 'default' => array(
2710
- 'default' => '',
2711
- 'name' => __( 'Default', 'su' ),
2712
- 'desc' => __( 'This text will be shown if data is not found', 'su' )
2713
- ),
2714
- 'before' => array(
2715
- 'default' => '',
2716
- 'name' => __( 'Before', 'su' ),
2717
- 'desc' => __( 'This content will be shown before the value', 'su' )
2718
- ),
2719
- 'after' => array(
2720
- 'default' => '',
2721
- 'name' => __( 'After', 'su' ),
2722
- 'desc' => __( 'This content will be shown after the value', 'su' )
2723
- ),
2724
- 'post_id' => array(
2725
- 'default' => '',
2726
- 'name' => __( 'Post ID', 'su' ),
2727
- 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2728
- ),
2729
- 'filter' => array(
2730
- 'default' => '',
2731
- 'name' => __( 'Filter', 'su' ),
2732
- 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2733
- )
2734
- ),
2735
- 'desc' => __( 'Post meta', 'su' ),
2736
- 'icon' => 'info-circle'
2737
- ),
2738
- // user
2739
- 'user' => array(
2740
- 'name' => __( 'User', 'su' ),
2741
- 'type' => 'single',
2742
- 'group' => 'data',
2743
- 'atts' => array(
2744
- 'field' => array(
2745
- 'type' => 'select',
2746
- 'values' => array(
2747
- 'display_name' => __( 'Display name', 'su' ),
2748
- 'ID' => __( 'ID', 'su' ),
2749
- 'user_login' => __( 'Login', 'su' ),
2750
- 'user_nicename' => __( 'Nice name', 'su' ),
2751
- 'user_email' => __( 'Email', 'su' ),
2752
- 'user_url' => __( 'URL', 'su' ),
2753
- 'user_registered' => __( 'Registered', 'su' ),
2754
- 'user_activation_key' => __( 'Activation key', 'su' ),
2755
- 'user_status' => __( 'Status', 'su' )
2756
- ),
2757
- 'default' => 'display_name',
2758
- 'name' => __( 'Field', 'su' ),
2759
- 'desc' => __( 'User data field name', 'su' )
2760
- ),
2761
- 'default' => array(
2762
- 'default' => '',
2763
- 'name' => __( 'Default', 'su' ),
2764
- 'desc' => __( 'This text will be shown if data is not found', 'su' )
2765
- ),
2766
- 'before' => array(
2767
- 'default' => '',
2768
- 'name' => __( 'Before', 'su' ),
2769
- 'desc' => __( 'This content will be shown before the value', 'su' )
2770
- ),
2771
- 'after' => array(
2772
- 'default' => '',
2773
- 'name' => __( 'After', 'su' ),
2774
- 'desc' => __( 'This content will be shown after the value', 'su' )
2775
- ),
2776
- 'user_id' => array(
2777
- 'default' => '',
2778
- 'name' => __( 'User ID', 'su' ),
2779
- 'desc' => __( 'You can specify custom user ID. Leave this field empty to use an ID of the current user', 'su' )
2780
- ),
2781
- 'filter' => array(
2782
- 'default' => '',
2783
- 'name' => __( 'Filter', 'su' ),
2784
- 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2785
- )
2786
- ),
2787
- 'desc' => __( 'User data', 'su' ),
2788
- 'icon' => 'info-circle'
2789
- ),
2790
- // post
2791
- 'post' => array(
2792
- 'name' => __( 'Post', 'su' ),
2793
- 'type' => 'single',
2794
- 'group' => 'data',
2795
- 'atts' => array(
2796
- 'field' => array(
2797
- 'type' => 'select',
2798
- 'values' => array(
2799
- 'ID' => __( 'Post ID', 'su' ),
2800
- 'post_author' => __( 'Post author', 'su' ),
2801
- 'post_date' => __( 'Post date', 'su' ),
2802
- 'post_date_gmt' => __( 'Post date', 'su' ) . ' GMT',
2803
- 'post_content' => __( 'Post content', 'su' ),
2804
- 'post_title' => __( 'Post title', 'su' ),
2805
- 'post_excerpt' => __( 'Post excerpt', 'su' ),
2806
- 'post_status' => __( 'Post status', 'su' ),
2807
- 'comment_status' => __( 'Comment status', 'su' ),
2808
- 'ping_status' => __( 'Ping status', 'su' ),
2809
- 'post_name' => __( 'Post name', 'su' ),
2810
- 'post_modified' => __( 'Post modified', 'su' ),
2811
- 'post_modified_gmt' => __( 'Post modified', 'su' ) . ' GMT',
2812
- 'post_content_filtered' => __( 'Filtered post content', 'su' ),
2813
- 'post_parent' => __( 'Post parent', 'su' ),
2814
- 'guid' => __( 'GUID', 'su' ),
2815
- 'menu_order' => __( 'Menu order', 'su' ),
2816
- 'post_type' => __( 'Post type', 'su' ),
2817
- 'post_mime_type' => __( 'Post mime type', 'su' ),
2818
- 'comment_count' => __( 'Comment count', 'su' )
2819
- ),
2820
- 'default' => 'post_title',
2821
- 'name' => __( 'Field', 'su' ),
2822
- 'desc' => __( 'Post data field name', 'su' )
2823
- ),
2824
- 'default' => array(
2825
- 'default' => '',
2826
- 'name' => __( 'Default', 'su' ),
2827
- 'desc' => __( 'This text will be shown if data is not found', 'su' )
2828
- ),
2829
- 'before' => array(
2830
- 'default' => '',
2831
- 'name' => __( 'Before', 'su' ),
2832
- 'desc' => __( 'This content will be shown before the value', 'su' )
2833
- ),
2834
- 'after' => array(
2835
- 'default' => '',
2836
- 'name' => __( 'After', 'su' ),
2837
- 'desc' => __( 'This content will be shown after the value', 'su' )
2838
- ),
2839
- 'post_id' => array(
2840
- 'default' => '',
2841
- 'name' => __( 'Post ID', 'su' ),
2842
- 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2843
- ),
2844
- 'filter' => array(
2845
- 'default' => '',
2846
- 'name' => __( 'Filter', 'su' ),
2847
- 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2848
- )
2849
- ),
2850
- 'desc' => __( 'Post data', 'su' ),
2851
- 'icon' => 'info-circle'
2852
- ),
2853
- // post_terms
2854
- // 'post_terms' => array(
2855
- // 'name' => __( 'Post terms', 'su' ),
2856
- // 'type' => 'single',
2857
- // 'group' => 'data',
2858
- // 'atts' => array(
2859
- // 'post_id' => array(
2860
- // 'default' => '',
2861
- // 'name' => __( 'Post ID', 'su' ),
2862
- // 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2863
- // ),
2864
- // 'links' => array(
2865
- // 'type' => 'bool',
2866
- // 'default' => 'yes',
2867
- // 'name' => __( 'Show links', 'su' ),
2868
- // 'desc' => __( 'Show terms names as hyperlinks', 'su' )
2869
- // ),
2870
- // 'format' => array(
2871
- // 'type' => 'select',
2872
- // 'values' => array(
2873
- // 'text' => __( 'Terms separated by commas', 'su' ),
2874
- // 'br' => __( 'Terms separated by new lines', 'su' ),
2875
- // 'ul' => __( 'Unordered list', 'su' ),
2876
- // 'ol' => __( 'Ordered list', 'su' ),
2877
- // ),
2878
- // 'default' => 'text',
2879
- // 'name' => __( 'Format', 'su' ),
2880
- // 'desc' => __( 'Choose how to output the terms', 'su' )
2881
- // ),
2882
- // ),
2883
- // 'desc' => __( 'Terms list', 'su' ),
2884
- // 'icon' => 'info-circle'
2885
- // ),
2886
- // template
2887
- 'template' => array(
2888
- 'name' => __( 'Template', 'su' ),
2889
- 'type' => 'single',
2890
- 'group' => 'other',
2891
- 'atts' => array(
2892
- 'name' => array(
2893
- 'default' => '',
2894
- 'name' => __( 'Template name', 'su' ),
2895
- 'desc' => sprintf( __( 'Use template file name (with optional .php extension). If you need to use templates from theme sub-folder, use relative path. Example values: %s, %s, %s', 'su' ), '<b%value>page</b>', '<b%value>page.php</b>', '<b%value>includes/page.php</b>' )
2896
- )
2897
- ),
2898
- 'desc' => __( 'Theme template', 'su' ),
2899
- 'icon' => 'puzzle-piece'
2900
- ),
2901
- // qrcode
2902
- 'qrcode' => array(
2903
- 'name' => __( 'QR code', 'su' ),
2904
- 'type' => 'single',
2905
- 'group' => 'content',
2906
- 'atts' => array(
2907
- 'data' => array(
2908
- 'default' => '',
2909
- 'name' => __( 'Data', 'su' ),
2910
- 'desc' => __( 'The text to store within the QR code. You can use here any text or even URL', 'su' )
2911
- ),
2912
- 'title' => array(
2913
- 'default' => '',
2914
- 'name' => __( 'Title', 'su' ),
2915
- 'desc' => __( 'Enter here short description. This text will be used in alt attribute of QR code', 'su' )
2916
- ),
2917
- 'size' => array(
2918
- 'type' => 'slider',
2919
- 'min' => 10,
2920
- 'max' => 1000,
2921
- 'step' => 10,
2922
- 'default' => 200,
2923
- 'name' => __( 'Size', 'su' ),
2924
- 'desc' => __( 'Image width and height (in pixels)', 'su' )
2925
- ),
2926
- 'margin' => array(
2927
- 'type' => 'slider',
2928
- 'min' => 0,
2929
- 'max' => 50,
2930
- 'step' => 5,
2931
- 'default' => 0,
2932
- 'name' => __( 'Margin', 'su' ),
2933
- 'desc' => __( 'Thickness of a margin (in pixels)', 'su' )
2934
- ),
2935
- 'align' => array(
2936
- 'type' => 'select',
2937
- 'values' => array(
2938
- 'none' => __( 'None', 'su' ),
2939
- 'left' => __( 'Left', 'su' ),
2940
- 'center' => __( 'Center', 'su' ),
2941
- 'right' => __( 'Right', 'su' ),
2942
- ),
2943
- 'default' => 'none',
2944
- 'name' => __( 'Align', 'su' ),
2945
- 'desc' => __( 'Choose image alignment', 'su' )
2946
- ),
2947
- 'link' => array(
2948
- 'default' => '',
2949
- 'name' => __( 'Link', 'su' ),
2950
- 'desc' => __( 'You can make this QR code clickable. Enter here the URL', 'su' )
2951
- ),
2952
- 'target' => array(
2953
- 'type' => 'select',
2954
- 'values' => array(
2955
- 'self' => __( 'Open link in same window/tab', 'su' ),
2956
- 'blank' => __( 'Open link in new window/tab', 'su' ),
2957
- ),
2958
- 'default' => 'blank',
2959
- 'name' => __( 'Link target', 'su' ),
2960
- 'desc' => __( 'Select link target', 'su' )
2961
- ),
2962
- 'color' => array(
2963
- 'type' => 'color',
2964
- 'default' => '#000000',
2965
- 'name' => __( 'Primary color', 'su' ),
2966
- 'desc' => __( 'Pick a primary color', 'su' )
2967
- ),
2968
- 'background' => array(
2969
- 'type' => 'color',
2970
- 'default' => '#ffffff',
2971
- 'name' => __( 'Background color', 'su' ),
2972
- 'desc' => __( 'Pick a background color', 'su' )
2973
- ),
2974
- 'class' => array(
2975
- 'default' => '',
2976
- 'name' => __( 'Class', 'su' ),
2977
- 'desc' => __( 'Extra CSS class', 'su' )
2978
- )
2979
- ),
2980
- 'desc' => __( 'Advanced QR code generator', 'su' ),
2981
- 'icon' => 'qrcode'
2982
- ),
2983
- // scheduler
2984
- 'scheduler' => array(
2985
- 'name' => __( 'Scheduler', 'su' ),
2986
- 'type' => 'wrap',
2987
- 'group' => 'other',
2988
- 'atts' => array(
2989
- 'time' => array(
2990
- 'default' => '',
2991
- 'name' => __( 'Time', 'su' ),
2992
- 'desc' => sprintf( __( 'In this field you can specify one or more time ranges. Every day at this time the content of shortcode will be visible. %s %s %s - show content from 9:00 to 18:00 %s - show content from 9:00 to 13:00 and from 14:00 to 18:00 %s - example with minutes (content will be visible each day, 45 minutes) %s - example with seconds', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>9-18</b>', '<br><b%value>9-13, 14-18</b>', '<br><b%value>9:30-10:15</b>', '<br><b%value>9:00:00-17:59:59</b>' )
2993
- ),
2994
- 'days_week' => array(
2995
- 'default' => '',
2996
- 'name' => __( 'Days of the week', 'su' ),
2997
- 'desc' => sprintf( __( 'In this field you can specify one or more days of the week. Every week at these days the content of shortcode will be visible. %s 0 - Sunday %s 1 - Monday %s 2 - Tuesday %s 3 - Wednesday %s 4 - Thursday %s 5 - Friday %s 6 - Saturday %s %s %s - show content from Monday to Friday %s - show content only at Sunday %s - show content at Sunday and from Wednesday to Friday', 'su' ), '<br><br>', '<br>', '<br>', '<br>', '<br>', '<br>', '<br>', '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1-5</b>', '<br><b%value>0</b>', '<br><b%value>0, 3-5</b>' )
2998
- ),
2999
- 'days_month' => array(
3000
- 'default' => '',
3001
- 'name' => __( 'Days of the month', 'su' ),
3002
- 'desc' => sprintf( __( 'In this field you can specify one or more days of the month. Every month at these days the content of shortcode will be visible. %s %s %s - show content only at first day of month %s - show content from 1th to 5th %s - show content from 10th to 15th and from 20th to 25th', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1</b>', '<br><b%value>1-5</b>', '<br><b%value>10-15, 20-25</b>' )
3003
- ),
3004
- 'months' => array(
3005
- 'default' => '',
3006
- 'name' => __( 'Months', 'su' ),
3007
- 'desc' => sprintf( __( 'In this field you can specify the month or months in which the content will be visible. %s %s %s - show content only in January %s - show content from February to June %s - show content in January, March and from May to July', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1</b>', '<br><b%value>2-6</b>', '<br><b%value>1, 3, 5-7</b>' )
3008
- ),
3009
- 'years' => array(
3010
- 'default' => '',
3011
- 'name' => __( 'Years', 'su' ),
3012
- 'desc' => sprintf( __( 'In this field you can specify the year or years in which the content will be visible. %s %s %s - show content only in 2014 %s - show content from 2014 to 2016 %s - show content in 2014, 2018 and from 2020 to 2022', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>2014</b>', '<br><b%value>2014-2016</b>', '<br><b%value>2014, 2018, 2020-2022</b>' )
3013
- ),
3014
- 'alt' => array(
3015
- 'default' => '',
3016
- 'name' => __( 'Alternative text', 'su' ),
3017
- 'desc' => __( 'In this field you can type the text which will be shown if content is not visible at the current moment', 'su' )
3018
- )
3019
- ),
3020
- 'content' => __( 'Scheduled content', 'su' ),
3021
- 'desc' => __( 'Allows to show the content only at the specified time period', 'su' ),
3022
- 'note' => __( 'This shortcode allows you to show content only at the specified time.', 'su' ) . '<br><br>' . __( 'Please pay special attention to the descriptions, which are located below each text field. It will save you a lot of time', 'su' ) . '<br><br>' . __( 'By default, the content of this shortcode will be visible all the time. By using fields below, you can add some limitations. For example, if you type 1-5 in the Days of the week field, content will be only shown from Monday to Friday. Using the same principles, you can limit content visibility from years to seconds.', 'su' ),
3023
- 'icon' => 'clock-o'
3024
- ),
3025
- ) );
3026
- // Return result
3027
- return ( is_string( $shortcode ) ) ? $shortcodes[sanitize_text_field( $shortcode )] : $shortcodes;
3028
- }
3029
- }
3030
-
3031
- class Shortcodes_Ultimate_Data extends Su_Data {
3032
- function __construct() {
3033
- parent::__construct();
3034
- }
3035
- }
1
+ <?php
2
+ /**
3
+ * Class for managing plugin data
4
+ */
5
+ class Su_Data {
6
+
7
+ /**
8
+ * Constructor
9
+ */
10
+ function __construct() {}
11
+
12
+ /**
13
+ * Shortcode groups
14
+ */
15
+ public static function groups() {
16
+ return apply_filters( 'su/data/groups', array(
17
+ 'all' => __( 'All', 'su' ),
18
+ 'content' => __( 'Content', 'su' ),
19
+ 'box' => __( 'Box', 'su' ),
20
+ 'media' => __( 'Media', 'su' ),
21
+ 'gallery' => __( 'Gallery', 'su' ),
22
+ 'data' => __( 'Data', 'su' ),
23
+ 'other' => __( 'Other', 'su' )
24
+ ) );
25
+ }
26
+
27
+ /**
28
+ * Border styles
29
+ */
30
+ public static function borders() {
31
+ return apply_filters( 'su/data/borders', array(
32
+ 'none' => __( 'None', 'su' ),
33
+ 'solid' => __( 'Solid', 'su' ),
34
+ 'dotted' => __( 'Dotted', 'su' ),
35
+ 'dashed' => __( 'Dashed', 'su' ),
36
+ 'double' => __( 'Double', 'su' ),
37
+ 'groove' => __( 'Groove', 'su' ),
38
+ 'ridge' => __( 'Ridge', 'su' )
39
+ ) );
40
+ }
41
+
42
+ /**
43
+ * Font-Awesome icons
44
+ */
45
+ public static function icons() {
46
+ return apply_filters( 'su/data/icons', array( 'adjust', 'adn', 'align-center', 'align-justify', 'align-left', 'align-right', 'ambulance', 'anchor', 'android', 'angle-double-down', 'angle-double-left', 'angle-double-right', 'angle-double-up', 'angle-down', 'angle-left', 'angle-right', 'angle-up', 'apple', 'archive', 'arrow-circle-down', 'arrow-circle-left', 'arrow-circle-o-down', 'arrow-circle-o-left', 'arrow-circle-o-right', 'arrow-circle-o-up', 'arrow-circle-right', 'arrow-circle-up', 'arrow-down', 'arrow-left', 'arrow-right', 'arrow-up', 'arrows', 'arrows-alt', 'arrows-h', 'arrows-v', 'asterisk', 'automobile', 'backward', 'ban', 'bank', 'bar-chart-o', 'barcode', 'bars', 'beer', 'behance', 'behance-square', 'bell', 'bell-o', 'bitbucket', 'bitbucket-square', 'bitcoin', 'bold', 'bolt', 'bomb', 'book', 'bookmark', 'bookmark-o', 'briefcase', 'btc', 'bug', 'building', 'building-o', 'bullhorn', 'bullseye', 'cab', 'calendar', 'calendar-o', 'camera', 'camera-retro', 'car', 'caret-down', 'caret-left', 'caret-right', 'caret-square-o-down', 'caret-square-o-left', 'caret-square-o-right', 'caret-square-o-up', 'caret-up', 'certificate', 'chain', 'chain-broken', 'check', 'check-circle', 'check-circle-o', 'check-square', 'check-square-o', 'chevron-circle-down', 'chevron-circle-left', 'chevron-circle-right', 'chevron-circle-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'child', 'circle', 'circle-o', 'circle-o-notch', 'circle-thin', 'clipboard', 'clock-o', 'cloud', 'cloud-download', 'cloud-upload', 'cny', 'code', 'code-fork', 'codepen', 'coffee', 'cog', 'cogs', 'columns', 'comment', 'comment-o', 'comments', 'comments-o', 'compass', 'compress', 'copy', 'credit-card', 'crop', 'crosshairs', 'css3', 'cube', 'cubes', 'cut', 'cutlery', 'dashboard', 'database', 'dedent', 'delicious', 'desktop', 'deviantart', 'digg', 'dollar', 'dot-circle-o', 'download', 'dribbble', 'dropbox', 'drupal', 'edit', 'eject', 'ellipsis-h', 'ellipsis-v', 'empire', 'envelope', 'envelope-o', 'envelope-square', 'eraser', 'eur', 'euro', 'exchange', 'exclamation', 'exclamation-circle', 'exclamation-triangle', 'expand', 'external-link', 'external-link-square', 'eye', 'eye-slash', 'facebook', 'facebook-square', 'fast-backward', 'fast-forward', 'fax', 'female', 'fighter-jet', 'file', 'file-archive-o', 'file-audio-o', 'file-code-o', 'file-excel-o', 'file-image-o', 'file-movie-o', 'file-o', 'file-pdf-o', 'file-photo-o', 'file-picture-o', 'file-powerpoint-o', 'file-sound-o', 'file-text', 'file-text-o', 'file-video-o', 'file-word-o', 'file-zip-o', 'files-o', 'film', 'filter', 'fire', 'fire-extinguisher', 'flag', 'flag-checkered', 'flag-o', 'flash', 'flask', 'flickr', 'floppy-o', 'folder', 'folder-o', 'folder-open', 'folder-open-o', 'font', 'forward', 'foursquare', 'frown-o', 'gamepad', 'gavel', 'gbp', 'ge', 'gear', 'gears', 'gift', 'git', 'git-square', 'github', 'github-alt', 'github-square', 'gittip', 'glass', 'globe', 'google', 'google-plus', 'google-plus-square', 'graduation-cap', 'group', 'h-square', 'hacker-news', 'hand-o-down', 'hand-o-left', 'hand-o-right', 'hand-o-up', 'hdd-o', 'header', 'headphones', 'heart', 'heart-o', 'history', 'home', 'hospital-o', 'html5', 'image', 'inbox', 'indent', 'info', 'info-circle', 'inr', 'instagram', 'institution', 'italic', 'joomla', 'jpy', 'jsfiddle', 'key', 'keyboard-o', 'krw', 'language', 'laptop', 'leaf', 'legal', 'lemon-o', 'level-down', 'level-up', 'life-bouy', 'life-ring', 'life-saver', 'lightbulb-o', 'link', 'linkedin', 'linkedin-square', 'linux', 'list', 'list-alt', 'list-ol', 'list-ul', 'location-arrow', 'lock', 'long-arrow-down', 'long-arrow-left', 'long-arrow-right', 'long-arrow-up', 'magic', 'magnet', 'mail-forward', 'mail-reply', 'mail-reply-all', 'male', 'map-marker', 'maxcdn', 'medkit', 'meh-o', 'microphone', 'microphone-slash', 'minus', 'minus-circle', 'minus-square', 'minus-square-o', 'mobile', 'mobile-phone', 'money', 'moon-o', 'mortar-board', 'music', 'navicon', 'openid', 'outdent', 'pagelines', 'paper-plane', 'paper-plane-o', 'paperclip', 'paragraph', 'paste', 'pause', 'paw', 'pencil', 'pencil-square', 'pencil-square-o', 'phone', 'phone-square', 'photo', 'picture-o', 'pied-piper', 'pied-piper-alt', 'pied-piper-square', 'pinterest', 'pinterest-square', 'plane', 'play', 'play-circle', 'play-circle-o', 'plus', 'plus-circle', 'plus-square', 'plus-square-o', 'power-off', 'print', 'puzzle-piece', 'qq', 'qrcode', 'question', 'question-circle', 'quote-left', 'quote-right', 'ra', 'random', 'rebel', 'recycle', 'reddit', 'reddit-square', 'refresh', 'renren', 'reorder', 'repeat', 'reply', 'reply-all', 'retweet', 'rmb', 'road', 'rocket', 'rotate-left', 'rotate-right', 'rouble', 'rss', 'rss-square', 'rub', 'ruble', 'rupee', 'save', 'scissors', 'search', 'search-minus', 'search-plus', 'send', 'send-o', 'share', 'share-alt', 'share-alt-square', 'share-square', 'share-square-o', 'shield', 'shopping-cart', 'sign-in', 'sign-out', 'signal', 'sitemap', 'skype', 'slack', 'sliders', 'smile-o', 'sort', 'sort-alpha-asc', 'sort-alpha-desc', 'sort-amount-asc', 'sort-amount-desc', 'sort-asc', 'sort-desc', 'sort-down', 'sort-numeric-asc', 'sort-numeric-desc', 'sort-up', 'soundcloud', 'space-shuttle', 'spinner', 'spoon', 'spotify', 'square', 'square-o', 'stack-exchange', 'stack-overflow', 'star', 'star-half', 'star-half-empty', 'star-half-full', 'star-half-o', 'star-o', 'steam', 'steam-square', 'step-backward', 'step-forward', 'stethoscope', 'stop', 'strikethrough', 'stumbleupon', 'stumbleupon-circle', 'subscript', 'suitcase', 'sun-o', 'superscript', 'support', 'table', 'tablet', 'tachometer', 'tag', 'tags', 'tasks', 'taxi', 'tencent-weibo', 'terminal', 'text-height', 'text-width', 'th', 'th-large', 'th-list', 'thumb-tack', 'thumbs-down', 'thumbs-o-down', 'thumbs-o-up', 'thumbs-up', 'ticket', 'times', 'times-circle', 'times-circle-o', 'tint', 'toggle-down', 'toggle-left', 'toggle-right', 'toggle-up', 'trash-o', 'tree', 'trello', 'trophy', 'truck', 'try', 'tumblr', 'tumblr-square', 'turkish-lira', 'twitter', 'twitter-square', 'umbrella', 'underline', 'undo', 'university', 'unlink', 'unlock', 'unlock-alt', 'unsorted', 'upload', 'usd', 'user', 'user-md', 'users', 'video-camera', 'vimeo-square', 'vine', 'vk', 'volume-down', 'volume-off', 'volume-up', 'warning', 'wechat', 'weibo', 'weixin', 'wheelchair', 'windows', 'won', 'wordpress', 'wrench', 'xing', 'xing-square', 'yahoo', 'yen', 'youtube', 'youtube-play', 'youtube-square' ) );
47
+ }
48
+
49
+ /**
50
+ * Animate.css animations
51
+ */
52
+ public static function animations() {
53
+ return apply_filters( 'su/data/animations', array( 'flash', 'bounce', 'shake', 'tada', 'swing', 'wobble', 'pulse', 'flip', 'flipInX', 'flipOutX', 'flipInY', 'flipOutY', 'fadeIn', 'fadeInUp', 'fadeInDown', 'fadeInLeft', 'fadeInRight', 'fadeInUpBig', 'fadeInDownBig', 'fadeInLeftBig', 'fadeInRightBig', 'fadeOut', 'fadeOutUp', 'fadeOutDown', 'fadeOutLeft', 'fadeOutRight', 'fadeOutUpBig', 'fadeOutDownBig', 'fadeOutLeftBig', 'fadeOutRightBig', 'slideInDown', 'slideInLeft', 'slideInRight', 'slideOutUp', 'slideOutLeft', 'slideOutRight', 'bounceIn', 'bounceInDown', 'bounceInUp', 'bounceInLeft', 'bounceInRight', 'bounceOut', 'bounceOutDown', 'bounceOutUp', 'bounceOutLeft', 'bounceOutRight', 'rotateIn', 'rotateInDownLeft', 'rotateInDownRight', 'rotateInUpLeft', 'rotateInUpRight', 'rotateOut', 'rotateOutDownLeft', 'rotateOutDownRight', 'rotateOutUpLeft', 'rotateOutUpRight', 'lightSpeedIn', 'lightSpeedOut', 'hinge', 'rollIn', 'rollOut' ) );
54
+ }
55
+
56
+ /**
57
+ * Examples section
58
+ */
59
+ public static function examples() {
60
+ return apply_filters( 'su/data/examples', array(
61
+ 'basic' => array(
62
+ 'title' => __( 'Basic examples', 'su' ),
63
+ 'items' => array(
64
+ array(
65
+ 'name' => __( 'Accordions, spoilers, different styles, anchors', 'su' ),
66
+ 'id' => 'spoilers',
67
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/spoilers.example',
68
+ 'icon' => 'tasks'
69
+ ),
70
+ array(
71
+ 'name' => __( 'Tabs, vertical tabs, tab anchors', 'su' ),
72
+ 'id' => 'tabs',
73
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/tabs.example',
74
+ 'icon' => 'folder'
75
+ ),
76
+ array(
77
+ 'name' => __( 'Column layouts', 'su' ),
78
+ 'id' => 'columns',
79
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/columns.example',
80
+ 'icon' => 'th-large'
81
+ ),
82
+ array(
83
+ 'name' => __( 'Media elements, YouTube, Vimeo, Screenr and self-hosted videos, audio player', 'su' ),
84
+ 'id' => 'media',
85
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/media.example',
86
+ 'icon' => 'play-circle'
87
+ ),
88
+ array(
89
+ 'name' => __( 'Unlimited buttons', 'su' ),
90
+ 'id' => 'buttons',
91
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/buttons.example',
92
+ 'icon' => 'heart'
93
+ ),
94
+ array(
95
+ 'name' => __( 'Animations', 'su' ),
96
+ 'id' => 'animations',
97
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/animations.example',
98
+ 'icon' => 'bolt'
99
+ ),
100
+ )
101
+ ),
102
+ 'advanced' => array(
103
+ 'title' => __( 'Advanced examples', 'su' ),
104
+ 'items' => array(
105
+ array(
106
+ 'name' => __( 'Interacting with posts shortcode', 'su' ),
107
+ 'id' => 'posts',
108
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/posts.example',
109
+ 'icon' => 'list'
110
+ ),
111
+ array(
112
+ 'name' => __( 'Nested shortcodes, shortcodes inside of attributes', 'su' ),
113
+ 'id' => 'nested',
114
+ 'code' => plugin_dir_path( SU_PLUGIN_FILE ) . '/inc/examples/nested.example',
115
+ 'icon' => 'indent'
116
+ ),
117
+ )
118
+ ),
119
+ ) );
120
+ }
121
+
122
+ /**
123
+ * Shortcodes
124
+ */
125
+ public static function shortcodes( $shortcode = false ) {
126
+ $shortcodes = apply_filters( 'su/data/shortcodes', array(
127
+ // heading
128
+ 'heading' => array(
129
+ 'name' => __( 'Heading', 'su' ),
130
+ 'type' => 'wrap',
131
+ 'group' => 'content',
132
+ 'atts' => array(
133
+ 'style' => array(
134
+ 'type' => 'select',
135
+ 'values' => array(
136
+ 'default' => __( 'Default', 'su' ),
137
+ ),
138
+ 'default' => 'default',
139
+ 'name' => __( 'Style', 'su' ),
140
+ 'desc' => __( 'Choose style for this heading', 'su' ) . '%su_skins_link%'
141
+ ),
142
+ 'size' => array(
143
+ 'type' => 'slider',
144
+ 'min' => 7,
145
+ 'max' => 48,
146
+ 'step' => 1,
147
+ 'default' => 13,
148
+ 'name' => __( 'Size', 'su' ),
149
+ 'desc' => __( 'Select heading size (pixels)', 'su' )
150
+ ),
151
+ 'align' => array(
152
+ 'type' => 'select',
153
+ 'values' => array(
154
+ 'left' => __( 'Left', 'su' ),
155
+ 'center' => __( 'Center', 'su' ),
156
+ 'right' => __( 'Right', 'su' )
157
+ ),
158
+ 'default' => 'center',
159
+ 'name' => __( 'Align', 'su' ),
160
+ 'desc' => __( 'Heading text alignment', 'su' )
161
+ ),
162
+ 'margin' => array(
163
+ 'type' => 'slider',
164
+ 'min' => 0,
165
+ 'max' => 200,
166
+ 'step' => 10,
167
+ 'default' => 20,
168
+ 'name' => __( 'Margin', 'su' ),
169
+ 'desc' => __( 'Bottom margin (pixels)', 'su' )
170
+ ),
171
+ 'class' => array(
172
+ 'default' => '',
173
+ 'name' => __( 'Class', 'su' ),
174
+ 'desc' => __( 'Extra CSS class', 'su' )
175
+ )
176
+ ),
177
+ 'content' => __( 'Heading text', 'su' ),
178
+ 'desc' => __( 'Styled heading', 'su' ),
179
+ 'icon' => 'h-square'
180
+ ),
181
+ // tabs
182
+ 'tabs' => array(
183
+ 'name' => __( 'Tabs', 'su' ),
184
+ 'type' => 'wrap',
185
+ 'group' => 'box',
186
+ 'atts' => array(
187
+ 'style' => array(
188
+ 'type' => 'select',
189
+ 'values' => array(
190
+ 'default' => __( 'Default', 'su' )
191
+ ),
192
+ 'default' => 'default',
193
+ 'name' => __( 'Style', 'su' ),
194
+ 'desc' => __( 'Choose style for this tabs', 'su' ) . '%su_skins_link%'
195
+ ),
196
+ 'active' => array(
197
+ 'type' => 'number',
198
+ 'min' => 1,
199
+ 'max' => 100,
200
+ 'step' => 1,
201
+ 'default' => 1,
202
+ 'name' => __( 'Active tab', 'su' ),
203
+ 'desc' => __( 'Select which tab is open by default', 'su' )
204
+ ),
205
+ 'vertical' => array(
206
+ 'type' => 'bool',
207
+ 'default' => 'no',
208
+ 'name' => __( 'Vertical', 'su' ),
209
+ 'desc' => __( 'Show tabs vertically', 'su' )
210
+ ),
211
+ 'class' => array(
212
+ 'default' => '',
213
+ 'name' => __( 'Class', 'su' ),
214
+ 'desc' => __( 'Extra CSS class', 'su' )
215
+ )
216
+ ),
217
+ 'content' => __( "[%prefix_tab title=\"Title 1\"]Content 1[/%prefix_tab]\n[%prefix_tab title=\"Title 2\"]Content 2[/%prefix_tab]\n[%prefix_tab title=\"Title 3\"]Content 3[/%prefix_tab]", 'su' ),
218
+ 'desc' => __( 'Tabs container', 'su' ),
219
+ 'example' => 'tabs',
220
+ 'icon' => 'list-alt'
221
+ ),
222
+ // tab
223
+ 'tab' => array(
224
+ 'name' => __( 'Tab', 'su' ),
225
+ 'type' => 'wrap',
226
+ 'group' => 'box',
227
+ 'atts' => array(
228
+ 'title' => array(
229
+ 'default' => __( 'Tab name', 'su' ),
230
+ 'name' => __( 'Title', 'su' ),
231
+ 'desc' => __( 'Enter tab name', 'su' )
232
+ ),
233
+ 'disabled' => array(
234
+ 'type' => 'bool',
235
+ 'default' => 'no',
236
+ 'name' => __( 'Disabled', 'su' ),
237
+ 'desc' => __( 'Is this tab disabled', 'su' )
238
+ ),
239
+ 'anchor' => array(
240
+ 'default' => '',
241
+ 'name' => __( 'Anchor', 'su' ),
242
+ 'desc' => __( 'You can use unique anchor for this tab to access it with hash in page url. For example: type here <b%value>Hello</b> and then use url like http://example.com/page-url#Hello. This tab will be activated and scrolled in', 'su' )
243
+ ),
244
+ 'url' => array(
245
+ 'default' => '',
246
+ 'name' => __( 'URL', 'su' ),
247
+ 'desc' => __( 'You can link this tab to any webpage. Enter here full URL to switch this tab into link', 'su' )
248
+ ),
249
+ 'target' => array(
250
+ 'type' => 'select',
251
+ 'values' => array(
252
+ 'self' => __( 'Open link in same window/tab', 'su' ),
253
+ 'blank' => __( 'Open link in new window/tab', 'su' )
254
+ ),
255
+ 'default' => 'blank',
256
+ 'name' => __( 'Link target', 'su' ),
257
+ 'desc' => __( 'Choose how to open the custom tab link', 'su' )
258
+ ),
259
+ 'class' => array(
260
+ 'default' => '',
261
+ 'name' => __( 'Class', 'su' ),
262
+ 'desc' => __( 'Extra CSS class', 'su' )
263
+ )
264
+ ),
265
+ 'content' => __( 'Tab content', 'su' ),
266
+ 'desc' => __( 'Single tab', 'su' ),
267
+ 'note' => __( 'Did you know that you need to wrap single tabs with [tabs] shortcode?', 'su' ),
268
+ 'example' => 'tabs',
269
+ 'icon' => 'list-alt'
270
+ ),
271
+ // spoiler
272
+ 'spoiler' => array(
273
+ 'name' => __( 'Spoiler', 'su' ),
274
+ 'type' => 'wrap',
275
+ 'group' => 'box',
276
+ 'atts' => array(
277
+ 'title' => array(
278
+ 'default' => __( 'Spoiler title', 'su' ),
279
+ 'name' => __( 'Title', 'su' ), 'desc' => __( 'Text in spoiler title', 'su' )
280
+ ),
281
+ 'open' => array(
282
+ 'type' => 'bool',
283
+ 'default' => 'no',
284
+ 'name' => __( 'Open', 'su' ),
285
+ 'desc' => __( 'Is spoiler content visible by default', 'su' )
286
+ ),
287
+ 'style' => array(
288
+ 'type' => 'select',
289
+ 'values' => array(
290
+ 'default' => __( 'Default', 'su' ),
291
+ 'fancy' => __( 'Fancy', 'su' ),
292
+ 'simple' => __( 'Simple', 'su' )
293
+ ),
294
+ 'default' => 'default',
295
+ 'name' => __( 'Style', 'su' ),
296
+ 'desc' => __( 'Choose style for this spoiler', 'su' ) . '%su_skins_link%'
297
+ ),
298
+ 'icon' => array(
299
+ 'type' => 'select',
300
+ 'values' => array(
301
+ 'plus' => __( 'Plus', 'su' ),
302
+ 'plus-circle' => __( 'Plus circle', 'su' ),
303
+ 'plus-square-1' => __( 'Plus square 1', 'su' ),
304
+ 'plus-square-2' => __( 'Plus square 2', 'su' ),
305
+ 'arrow' => __( 'Arrow', 'su' ),
306
+ 'arrow-circle-1' => __( 'Arrow circle 1', 'su' ),
307
+ 'arrow-circle-2' => __( 'Arrow circle 2', 'su' ),
308
+ 'chevron' => __( 'Chevron', 'su' ),
309
+ 'chevron-circle' => __( 'Chevron circle', 'su' ),
310
+ 'caret' => __( 'Caret', 'su' ),
311
+ 'caret-square' => __( 'Caret square', 'su' ),
312
+ 'folder-1' => __( 'Folder 1', 'su' ),
313
+ 'folder-2' => __( 'Folder 2', 'su' )
314
+ ),
315
+ 'default' => 'plus',
316
+ 'name' => __( 'Icon', 'su' ),
317
+ 'desc' => __( 'Icons for spoiler', 'su' )
318
+ ),
319
+ 'anchor' => array(
320
+ 'default' => '',
321
+ 'name' => __( 'Anchor', 'su' ),
322
+ 'desc' => __( 'You can use unique anchor for this spoiler to access it with hash in page url. For example: type here <b%value>Hello</b> and then use url like http://example.com/page-url#Hello. This spoiler will be open and scrolled in', 'su' )
323
+ ),
324
+ 'class' => array(
325
+ 'default' => '',
326
+ 'name' => __( 'Class', 'su' ),
327
+ 'desc' => __( 'Extra CSS class', 'su' )
328
+ )
329
+ ),
330
+ 'content' => __( 'Hidden content', 'su' ),
331
+ 'desc' => __( 'Spoiler with hidden content', 'su' ),
332
+ 'note' => __( 'Did you know that you can wrap multiple spoilers with [accordion] shortcode to create accordion effect?', 'su' ),
333
+ 'example' => 'spoilers',
334
+ 'icon' => 'list-ul'
335
+ ),
336
+ // accordion
337
+ 'accordion' => array(
338
+ 'name' => __( 'Accordion', 'su' ),
339
+ 'type' => 'wrap',
340
+ 'group' => 'box',
341
+ 'atts' => array(
342
+ 'class' => array(
343
+ 'default' => '',
344
+ 'name' => __( 'Class', 'su' ),
345
+ 'desc' => __( 'Extra CSS class', 'su' )
346
+ )
347
+ ),
348
+ 'content' => __( "[%prefix_spoiler]Content[/%prefix_spoiler]\n[%prefix_spoiler]Content[/%prefix_spoiler]\n[%prefix_spoiler]Content[/%prefix_spoiler]", 'su' ),
349
+ 'desc' => __( 'Accordion with spoilers', 'su' ),
350
+ 'note' => __( 'Did you know that you can wrap multiple spoilers with [accordion] shortcode to create accordion effect?', 'su' ),
351
+ 'example' => 'spoilers',
352
+ 'icon' => 'list'
353
+ ),
354
+ // divider
355
+ 'divider' => array(
356
+ 'name' => __( 'Divider', 'su' ),
357
+ 'type' => 'single',
358
+ 'group' => 'content',
359
+ 'atts' => array(
360
+ 'top' => array(
361
+ 'type' => 'bool',
362
+ 'default' => 'yes',
363
+ 'name' => __( 'Show TOP link', 'su' ),
364
+ 'desc' => __( 'Show link to top of the page or not', 'su' )
365
+ ),
366
+ 'text' => array(
367
+ 'values' => array( ),
368
+ 'default' => __( 'Go to top', 'su' ),
369
+ 'name' => __( 'Link text', 'su' ), 'desc' => __( 'Text for the GO TOP link', 'su' )
370
+ ),
371
+ 'style' => array(
372
+ 'type' => 'select',
373
+ 'values' => array(
374
+ 'default' => __( 'Default', 'su' ),
375
+ 'dotted' => __( 'Dotted', 'su' ),
376
+ 'dashed' => __( 'Dashed', 'su' ),
377
+ 'double' => __( 'Double', 'su' )
378
+ ),
379
+ 'default' => 'default',
380
+ 'name' => __( 'Style', 'su' ),
381
+ 'desc' => __( 'Choose style for this divider', 'su' )
382
+ ),
383
+ 'divider_color' => array(
384
+ 'type' => 'color',
385
+ 'values' => array( ),
386
+ 'default' => '#999999',
387
+ 'name' => __( 'Divider color', 'su' ),
388
+ 'desc' => __( 'Pick the color for divider', 'su' )
389
+ ),
390
+ 'link_color' => array(
391
+ 'type' => 'color',
392
+ 'values' => array( ),
393
+ 'default' => '#999999',
394
+ 'name' => __( 'Link color', 'su' ),
395
+ 'desc' => __( 'Pick the color for TOP link', 'su' )
396
+ ),
397
+ 'size' => array(
398
+ 'type' => 'slider',
399
+ 'min' => 0,
400
+ 'max' => 40,
401
+ 'step' => 1,
402
+ 'default' => 3,
403
+ 'name' => __( 'Size', 'su' ),
404
+ 'desc' => __( 'Height of the divider (in pixels)', 'su' )
405
+ ),
406
+ 'margin' => array(
407
+ 'type' => 'slider',
408
+ 'min' => 0,
409
+ 'max' => 200,
410
+ 'step' => 5,
411
+ 'default' => 15,
412
+ 'name' => __( 'Margin', 'su' ),
413
+ 'desc' => __( 'Adjust the top and bottom margins of this divider (in pixels)', 'su' )
414
+ ),
415
+ 'class' => array(
416
+ 'default' => '',
417
+ 'name' => __( 'Class', 'su' ),
418
+ 'desc' => __( 'Extra CSS class', 'su' )
419
+ )
420
+ ),
421
+ 'desc' => __( 'Content divider with optional TOP link', 'su' ),
422
+ 'icon' => 'ellipsis-h'
423
+ ),
424
+ // spacer
425
+ 'spacer' => array(
426
+ 'name' => __( 'Spacer', 'su' ),
427
+ 'type' => 'single',
428
+ 'group' => 'content other',
429
+ 'atts' => array(
430
+ 'size' => array(
431
+ 'type' => 'slider',
432
+ 'min' => 0,
433
+ 'max' => 800,
434
+ 'step' => 10,
435
+ 'default' => 20,
436
+ 'name' => __( 'Height', 'su' ),
437
+ 'desc' => __( 'Height of the spacer in pixels', 'su' )
438
+ ),
439
+ 'class' => array(
440
+ 'default' => '',
441
+ 'name' => __( 'Class', 'su' ),
442
+ 'desc' => __( 'Extra CSS class', 'su' )
443
+ )
444
+ ),
445
+ 'desc' => __( 'Empty space with adjustable height', 'su' ),
446
+ 'icon' => 'arrows-v'
447
+ ),
448
+ // highlight
449
+ 'highlight' => array(
450
+ 'name' => __( 'Highlight', 'su' ),
451
+ 'type' => 'wrap',
452
+ 'group' => 'content',
453
+ 'atts' => array(
454
+ 'background' => array(
455
+ 'type' => 'color',
456
+ 'values' => array( ),
457
+ 'default' => '#DDFF99',
458
+ 'name' => __( 'Background', 'su' ),
459
+ 'desc' => __( 'Highlighted text background color', 'su' )
460
+ ),
461
+ 'color' => array(
462
+ 'type' => 'color',
463
+ 'values' => array( ),
464
+ 'default' => '#000000',
465
+ 'name' => __( 'Text color', 'su' ), 'desc' => __( 'Highlighted text color', 'su' )
466
+ ),
467
+ 'class' => array(
468
+ 'default' => '',
469
+ 'name' => __( 'Class', 'su' ),
470
+ 'desc' => __( 'Extra CSS class', 'su' )
471
+ )
472
+ ),
473
+ 'content' => __( 'Highlighted text', 'su' ),
474
+ 'desc' => __( 'Highlighted text', 'su' ),
475
+ 'icon' => 'pencil'
476
+ ),
477
+ // label
478
+ 'label' => array(
479
+ 'name' => __( 'Label', 'su' ),
480
+ 'type' => 'wrap',
481
+ 'group' => 'content',
482
+ 'atts' => array(
483
+ 'type' => array(
484
+ 'type' => 'select',
485
+ 'values' => array(
486
+ 'default' => __( 'Default', 'su' ),
487
+ 'success' => __( 'Success', 'su' ),
488
+ 'warning' => __( 'Warning', 'su' ),
489
+ 'important' => __( 'Important', 'su' ),
490
+ 'black' => __( 'Black', 'su' ),
491
+ 'info' => __( 'Info', 'su' )
492
+ ),
493
+ 'default' => 'default',
494
+ 'name' => __( 'Type', 'su' ),
495
+ 'desc' => __( 'Style of the label', 'su' )
496
+ ),
497
+ 'class' => array(
498
+ 'default' => '',
499
+ 'name' => __( 'Class', 'su' ),
500
+ 'desc' => __( 'Extra CSS class', 'su' )
501
+ )
502
+ ),
503
+ 'content' => __( 'Label', 'su' ),
504
+ 'desc' => __( 'Styled label', 'su' ),
505
+ 'icon' => 'tag'
506
+ ),
507
+ // quote
508
+ 'quote' => array(
509
+ 'name' => __( 'Quote', 'su' ),
510
+ 'type' => 'wrap',
511
+ 'group' => 'box',
512
+ 'atts' => array(
513
+ 'style' => array(
514
+ 'type' => 'select',
515
+ 'values' => array(
516
+ 'default' => __( 'Default', 'su' )
517
+ ),
518
+ 'default' => 'default',
519
+ 'name' => __( 'Style', 'su' ),
520
+ 'desc' => __( 'Choose style for this quote', 'su' ) . '%su_skins_link%'
521
+ ),
522
+ 'cite' => array(
523
+ 'default' => '',
524
+ 'name' => __( 'Cite', 'su' ),
525
+ 'desc' => __( 'Quote author name', 'su' )
526
+ ),
527
+ 'url' => array(
528
+ 'values' => array( ),
529
+ 'default' => '',
530
+ 'name' => __( 'Cite url', 'su' ),
531
+ 'desc' => __( 'Url of the quote author. Leave empty to disable link', 'su' )
532
+ ),
533
+ 'class' => array(
534
+ 'default' => '',
535
+ 'name' => __( 'Class', 'su' ),
536
+ 'desc' => __( 'Extra CSS class', 'su' )
537
+ )
538
+ ),
539
+ 'content' => __( 'Quote', 'su' ),
540
+ 'desc' => __( 'Blockquote alternative', 'su' ),
541
+ 'icon' => 'quote-right'
542
+ ),
543
+ // pullquote
544
+ 'pullquote' => array(
545
+ 'name' => __( 'Pullquote', 'su' ),
546
+ 'type' => 'wrap',
547
+ 'group' => 'box',
548
+ 'atts' => array(
549
+ 'align' => array(
550
+ 'type' => 'select',
551
+ 'values' => array(
552
+ 'left' => __( 'Left', 'su' ),
553
+ 'right' => __( 'Right', 'su' )
554
+ ),
555
+ 'default' => 'left',
556
+ 'name' => __( 'Align', 'su' ), 'desc' => __( 'Pullquote alignment (float)', 'su' )
557
+ ),
558
+ 'class' => array(
559
+ 'default' => '',
560
+ 'name' => __( 'Class', 'su' ),
561
+ 'desc' => __( 'Extra CSS class', 'su' )
562
+ )
563
+ ),
564
+ 'content' => __( 'Pullquote', 'su' ),
565
+ 'desc' => __( 'Pullquote', 'su' ),
566
+ 'icon' => 'quote-left'
567
+ ),
568
+ // dropcap
569
+ 'dropcap' => array(
570
+ 'name' => __( 'Dropcap', 'su' ),
571
+ 'type' => 'wrap',
572
+ 'group' => 'content',
573
+ 'atts' => array(
574
+ 'style' => array(
575
+ 'type' => 'select',
576
+ 'values' => array(
577
+ 'default' => __( 'Default', 'su' ),
578
+ 'flat' => __( 'Flat', 'su' ),
579
+ 'light' => __( 'Light', 'su' ),
580
+ 'simple' => __( 'Simple', 'su' )
581
+ ),
582
+ 'default' => 'default',
583
+ 'name' => __( 'Style', 'su' ), 'desc' => __( 'Dropcap style preset', 'su' )
584
+ ),
585
+ 'size' => array(
586
+ 'type' => 'slider',
587
+ 'min' => 1,
588
+ 'max' => 5,
589
+ 'step' => 1,
590
+ 'default' => 3,
591
+ 'name' => __( 'Size', 'su' ),
592
+ 'desc' => __( 'Choose dropcap size', 'su' )
593
+ ),
594
+ 'class' => array(
595
+ 'default' => '',
596
+ 'name' => __( 'Class', 'su' ),
597
+ 'desc' => __( 'Extra CSS class', 'su' )
598
+ )
599
+ ),
600
+ 'content' => __( 'D', 'su' ),
601
+ 'desc' => __( 'Dropcap', 'su' ),
602
+ 'icon' => 'bold'
603
+ ),
604
+ // frame
605
+ 'frame' => array(
606
+ 'name' => __( 'Frame', 'su' ),
607
+ 'type' => 'wrap',
608
+ 'group' => 'content',
609
+ 'atts' => array(
610
+ 'align' => array(
611
+ 'type' => 'select',
612
+ 'values' => array(
613
+ 'left' => __( 'Left', 'su' ),
614
+ 'center' => __( 'Center', 'su' ),
615
+ 'right' => __( 'Right', 'su' )
616
+ ),
617
+ 'default' => 'left',
618
+ 'name' => __( 'Align', 'su' ),
619
+ 'desc' => __( 'Frame alignment', 'su' )
620
+ ),
621
+ 'class' => array(
622
+ 'default' => '',
623
+ 'name' => __( 'Class', 'su' ),
624
+ 'desc' => __( 'Extra CSS class', 'su' )
625
+ )
626
+ ),
627
+ 'content' => '<img src="http://lorempixel.com/g/400/200/" />',
628
+ 'desc' => __( 'Styled image frame', 'su' ),
629
+ 'icon' => 'picture-o'
630
+ ),
631
+ // row
632
+ 'row' => array(
633
+ 'name' => __( 'Row', 'su' ),
634
+ 'type' => 'wrap',
635
+ 'group' => 'box',
636
+ 'atts' => array(
637
+ 'class' => array(
638
+ 'default' => '',
639
+ 'name' => __( 'Class', 'su' ),
640
+ 'desc' => __( 'Extra CSS class', 'su' )
641
+ )
642
+ ),
643
+ 'content' => __( "[%prefix_column size=\"1/3\"]Content[/%prefix_column]\n[%prefix_column size=\"1/3\"]Content[/%prefix_column]\n[%prefix_column size=\"1/3\"]Content[/%prefix_column]", 'su' ),
644
+ 'desc' => __( 'Row for flexible columns', 'su' ),
645
+ 'icon' => 'columns'
646
+ ),
647
+ // column
648
+ 'column' => array(
649
+ 'name' => __( 'Column', 'su' ),
650
+ 'type' => 'wrap',
651
+ 'group' => 'box',
652
+ 'atts' => array(
653
+ 'size' => array(
654
+ 'type' => 'select',
655
+ 'values' => array(
656
+ '1/1' => __( 'Full width', 'su' ),
657
+ '1/2' => __( 'One half', 'su' ),
658
+ '1/3' => __( 'One third', 'su' ),
659
+ '2/3' => __( 'Two third', 'su' ),
660
+ '1/4' => __( 'One fourth', 'su' ),
661
+ '3/4' => __( 'Three fourth', 'su' ),
662
+ '1/5' => __( 'One fifth', 'su' ),
663
+ '2/5' => __( 'Two fifth', 'su' ),
664
+ '3/5' => __( 'Three fifth', 'su' ),
665
+ '4/5' => __( 'Four fifth', 'su' ),
666
+ '1/6' => __( 'One sixth', 'su' ),
667
+ '5/6' => __( 'Five sixth', 'su' )
668
+ ),
669
+ 'default' => '1/2',
670
+ 'name' => __( 'Size', 'su' ),
671
+ 'desc' => __( 'Select column width. This width will be calculated depend page width', 'su' )
672
+ ),
673
+ 'center' => array(
674
+ 'type' => 'bool',
675
+ 'default' => 'no',
676
+ 'name' => __( 'Centered', 'su' ),
677
+ 'desc' => __( 'Is this column centered on the page', 'su' )
678
+ ),
679
+ 'class' => array(
680
+ 'default' => '',
681
+ 'name' => __( 'Class', 'su' ),
682
+ 'desc' => __( 'Extra CSS class', 'su' )
683
+ )
684
+ ),
685
+ 'content' => __( 'Column content', 'su' ),
686
+ 'desc' => __( 'Flexible and responsive columns', 'su' ),
687
+ 'note' => __( 'Did you know that you need to wrap columns with [row] shortcode?', 'su' ),
688
+ 'example' => 'columns',
689
+ 'icon' => 'columns'
690
+ ),
691
+ // list
692
+ 'list' => array(
693
+ 'name' => __( 'List', 'su' ),
694
+ 'type' => 'wrap',
695
+ 'group' => 'content',
696
+ 'atts' => array(
697
+ 'icon' => array(
698
+ 'type' => 'icon',
699
+ 'default' => '',
700
+ 'name' => __( 'Icon', 'su' ),
701
+ 'desc' => __( 'You can upload custom icon for this list or pick a built-in icon', 'su' )
702
+ ),
703
+ 'icon_color' => array(
704
+ 'type' => 'color',
705
+ 'default' => '#333333',
706
+ 'name' => __( 'Icon color', 'su' ),
707
+ 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
708
+ ),
709
+ 'class' => array(
710
+ 'default' => '',
711
+ 'name' => __( 'Class', 'su' ),
712
+ 'desc' => __( 'Extra CSS class', 'su' )
713
+ )
714
+ ),
715
+ 'content' => __( "<ul>\n<li>List item</li>\n<li>List item</li>\n<li>List item</li>\n</ul>", 'su' ),
716
+ 'desc' => __( 'Styled unordered list', 'su' ),
717
+ 'icon' => 'list-ol'
718
+ ),
719
+ // button
720
+ 'button' => array(
721
+ 'name' => __( 'Button', 'su' ),
722
+ 'type' => 'wrap',
723
+ 'group' => 'content',
724
+ 'atts' => array(
725
+ 'url' => array(
726
+ 'values' => array( ),
727
+ 'default' => get_option( 'home' ),
728
+ 'name' => __( 'Link', 'su' ),
729
+ 'desc' => __( 'Button link', 'su' )
730
+ ),
731
+ 'target' => array(
732
+ 'type' => 'select',
733
+ 'values' => array(
734
+ 'self' => __( 'Same tab', 'su' ),
735
+ 'blank' => __( 'New tab', 'su' )
736
+ ),
737
+ 'default' => 'self',
738
+ 'name' => __( 'Target', 'su' ),
739
+ 'desc' => __( 'Button link target', 'su' )
740
+ ),
741
+ 'style' => array(
742
+ 'type' => 'select',
743
+ 'values' => array(
744
+ 'default' => __( 'Default', 'su' ),
745
+ 'flat' => __( 'Flat', 'su' ),
746
+ 'ghost' => __( 'Ghost', 'su' ),
747
+ 'soft' => __( 'Soft', 'su' ),
748
+ 'glass' => __( 'Glass', 'su' ),
749
+ 'bubbles' => __( 'Bubbles', 'su' ),
750
+ 'noise' => __( 'Noise', 'su' ),
751
+ 'stroked' => __( 'Stroked', 'su' ),
752
+ '3d' => __( '3D', 'su' )
753
+ ),
754
+ 'default' => 'default',
755
+ 'name' => __( 'Style', 'su' ), 'desc' => __( 'Button background style preset', 'su' )
756
+ ),
757
+ 'background' => array(
758
+ 'type' => 'color',
759
+ 'values' => array( ),
760
+ 'default' => '#2D89EF',
761
+ 'name' => __( 'Background', 'su' ), 'desc' => __( 'Button background color', 'su' )
762
+ ),
763
+ 'color' => array(
764
+ 'type' => 'color',
765
+ 'values' => array( ),
766
+ 'default' => '#FFFFFF',
767
+ 'name' => __( 'Text color', 'su' ),
768
+ 'desc' => __( 'Button text color', 'su' )
769
+ ),
770
+ 'size' => array(
771
+ 'type' => 'slider',
772
+ 'min' => 1,
773
+ 'max' => 20,
774
+ 'step' => 1,
775
+ 'default' => 3,
776
+ 'name' => __( 'Size', 'su' ),
777
+ 'desc' => __( 'Button size', 'su' )
778
+ ),
779
+ 'wide' => array(
780
+ 'type' => 'bool',
781
+ 'default' => 'no',
782
+ 'name' => __( 'Fluid', 'su' ), 'desc' => __( 'Fluid buttons has 100% width', 'su' )
783
+ ),
784
+ 'center' => array(
785
+ 'type' => 'bool',
786
+ 'default' => 'no',
787
+ 'name' => __( 'Centered', 'su' ), 'desc' => __( 'Is button centered on the page', 'su' )
788
+ ),
789
+ 'radius' => array(
790
+ 'type' => 'select',
791
+ 'values' => array(
792
+ 'auto' => __( 'Auto', 'su' ),
793
+ 'round' => __( 'Round', 'su' ),
794
+ '0' => __( 'Square', 'su' ),
795
+ '5' => '5px',
796
+ '10' => '10px',
797
+ '20' => '20px'
798
+ ),
799
+ 'default' => 'auto',
800
+ 'name' => __( 'Radius', 'su' ),
801
+ 'desc' => __( 'Radius of button corners. Auto-radius calculation based on button size', 'su' )
802
+ ),
803
+ 'icon' => array(
804
+ 'type' => 'icon',
805
+ 'default' => '',
806
+ 'name' => __( 'Icon', 'su' ),
807
+ 'desc' => __( 'You can upload custom icon for this button or pick a built-in icon', 'su' )
808
+ ),
809
+ 'icon_color' => array(
810
+ 'type' => 'color',
811
+ 'default' => '#FFFFFF',
812
+ 'name' => __( 'Icon color', 'su' ),
813
+ 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
814
+ ),
815
+ 'text_shadow' => array(
816
+ 'type' => 'shadow',
817
+ 'default' => 'none',
818
+ 'name' => __( 'Text shadow', 'su' ),
819
+ 'desc' => __( 'Button text shadow', 'su' )
820
+ ),
821
+ 'desc' => array(
822
+ 'default' => '',
823
+ 'name' => __( 'Description', 'su' ),
824
+ 'desc' => __( 'Small description under button text. This option is incompatible with icon.', 'su' )
825
+ ),
826
+ 'onclick' => array(
827
+ 'default' => '',
828
+ 'name' => __( 'onClick', 'su' ),
829
+ 'desc' => __( 'Advanced JavaScript code for onClick action', 'su' )
830
+ ),
831
+ 'rel' => array(
832
+ 'default' => '',
833
+ 'name' => __( 'Rel attribute', 'su' ),
834
+ 'desc' => __( 'Here you can add value for the rel attribute.<br>Example values: <b%value>nofollow</b>, <b%value>lightbox</b>', 'su' )
835
+ ),
836
+ 'class' => array(
837
+ 'default' => '',
838
+ 'name' => __( 'Class', 'su' ),
839
+ 'desc' => __( 'Extra CSS class', 'su' )
840
+ )
841
+ ),
842
+ 'content' => __( 'Button text', 'su' ),
843
+ 'desc' => __( 'Styled button', 'su' ),
844
+ 'example' => 'buttons',
845
+ 'icon' => 'heart'
846
+ ),
847
+ // service
848
+ 'service' => array(
849
+ 'name' => __( 'Service', 'su' ),
850
+ 'type' => 'wrap',
851
+ 'group' => 'box',
852
+ 'atts' => array(
853
+ 'title' => array(
854
+ 'values' => array( ),
855
+ 'default' => __( 'Service title', 'su' ),
856
+ 'name' => __( 'Title', 'su' ),
857
+ 'desc' => __( 'Service name', 'su' )
858
+ ),
859
+ 'icon' => array(
860
+ 'type' => 'icon',
861
+ 'default' => '',
862
+ 'name' => __( 'Icon', 'su' ),
863
+ 'desc' => __( 'You can upload custom icon for this box', 'su' )
864
+ ),
865
+ 'icon_color' => array(
866
+ 'type' => 'color',
867
+ 'default' => '#333333',
868
+ 'name' => __( 'Icon color', 'su' ),
869
+ 'desc' => __( 'This color will be applied to the selected icon. Does not works with uploaded icons', 'su' )
870
+ ),
871
+ 'size' => array(
872
+ 'type' => 'slider',
873
+ 'min' => 10,
874
+ 'max' => 128,
875
+ 'step' => 2,
876
+ 'default' => 32,
877
+ 'name' => __( 'Icon size', 'su' ),
878
+ 'desc' => __( 'Size of the uploaded icon in pixels', 'su' )
879
+ ),
880
+ 'class' => array(
881
+ 'default' => '',
882
+ 'name' => __( 'Class', 'su' ),
883
+ 'desc' => __( 'Extra CSS class', 'su' )
884
+ )
885
+ ),
886
+ 'content' => __( 'Service description', 'su' ),
887
+ 'desc' => __( 'Service box with title', 'su' ),
888
+ 'icon' => 'check-square-o'
889
+ ),
890
+ // box
891
+ 'box' => array(
892
+ 'name' => __( 'Box', 'su' ),
893
+ 'type' => 'wrap',
894
+ 'group' => 'box',
895
+ 'atts' => array(
896
+ 'title' => array(
897
+ 'values' => array( ),
898
+ 'default' => __( 'Box title', 'su' ),
899
+ 'name' => __( 'Title', 'su' ), 'desc' => __( 'Text for the box title', 'su' )
900
+ ),
901
+ 'style' => array(
902
+ 'type' => 'select',
903
+ 'values' => array(
904
+ 'default' => __( 'Default', 'su' ),
905
+ 'soft' => __( 'Soft', 'su' ),
906
+ 'glass' => __( 'Glass', 'su' ),
907
+ 'bubbles' => __( 'Bubbles', 'su' ),
908
+ 'noise' => __( 'Noise', 'su' )
909
+ ),
910
+ 'default' => 'default',
911
+ 'name' => __( 'Style', 'su' ),
912
+ 'desc' => __( 'Box style preset', 'su' )
913
+ ),
914
+ 'box_color' => array(
915
+ 'type' => 'color',
916
+ 'values' => array( ),
917
+ 'default' => '#333333',
918
+ 'name' => __( 'Color', 'su' ),
919
+ 'desc' => __( 'Color for the box title and borders', 'su' )
920
+ ),
921
+ 'title_color' => array(
922
+ 'type' => 'color',
923
+ 'values' => array( ),
924
+ 'default' => '#FFFFFF',
925
+ 'name' => __( 'Title text color', 'su' ), 'desc' => __( 'Color for the box title text', 'su' )
926
+ ),
927
+ 'radius' => array(
928
+ 'type' => 'slider',
929
+ 'min' => 0,
930
+ 'max' => 20,
931
+ 'step' => 1,
932
+ 'default' => 3,
933
+ 'name' => __( 'Radius', 'su' ),
934
+ 'desc' => __( 'Box corners radius', 'su' )
935
+ ),
936
+ 'class' => array(
937
+ 'default' => '',
938
+ 'name' => __( 'Class', 'su' ),
939
+ 'desc' => __( 'Extra CSS class', 'su' )
940
+ )
941
+ ),
942
+ 'content' => __( 'Box content', 'su' ),
943
+ 'desc' => __( 'Colored box with caption', 'su' ),
944
+ 'icon' => 'list-alt'
945
+ ),
946
+ // note
947
+ 'note' => array(
948
+ 'name' => __( 'Note', 'su' ),
949
+ 'type' => 'wrap',
950
+ 'group' => 'box',
951
+ 'atts' => array(
952
+ 'note_color' => array(
953
+ 'type' => 'color',
954
+ 'values' => array( ),
955
+ 'default' => '#FFFF66',
956
+ 'name' => __( 'Background', 'su' ), 'desc' => __( 'Note background color', 'su' )
957
+ ),
958
+ 'text_color' => array(
959
+ 'type' => 'color',
960
+ 'values' => array( ),
961
+ 'default' => '#333333',
962
+ 'name' => __( 'Text color', 'su' ),
963
+ 'desc' => __( 'Note text color', 'su' )
964
+ ),
965
+ 'radius' => array(
966
+ 'type' => 'slider',
967
+ 'min' => 0,
968
+ 'max' => 20,
969
+ 'step' => 1,
970
+ 'default' => 3,
971
+ 'name' => __( 'Radius', 'su' ), 'desc' => __( 'Note corners radius', 'su' )
972
+ ),
973
+ 'class' => array(
974
+ 'default' => '',
975
+ 'name' => __( 'Class', 'su' ),
976
+ 'desc' => __( 'Extra CSS class', 'su' )
977
+ )
978
+ ),
979
+ 'content' => __( 'Note text', 'su' ),
980
+ 'desc' => __( 'Colored box', 'su' ),
981
+ 'icon' => 'list-alt'
982
+ ),
983
+ // expand
984
+ 'expand' => array(
985
+ 'name' => __( 'Expand', 'su' ),
986
+ 'type' => 'wrap',
987
+ 'group' => 'box',
988
+ 'atts' => array(
989
+ 'more_text' => array(
990
+ 'default' => __( 'Show more', 'su' ),
991
+ 'name' => __( 'More text', 'su' ),
992
+ 'desc' => __( 'Enter the text for more link', 'su' )
993
+ ),
994
+ 'less_text' => array(
995
+ 'default' => __( 'Show less', 'su' ),
996
+ 'name' => __( 'Less text', 'su' ),
997
+ 'desc' => __( 'Enter the text for less link', 'su' )
998
+ ),
999
+ 'height' => array(
1000
+ 'type' => 'slider',
1001
+ 'min' => 0,
1002
+ 'max' => 1000,
1003
+ 'step' => 10,
1004
+ 'default' => 100,
1005
+ 'name' => __( 'Height', 'su' ),
1006
+ 'desc' => __( 'Height for collapsed state (in pixels)', 'su' )
1007
+ ),
1008
+ 'hide_less' => array(
1009
+ 'type' => 'bool',
1010
+ 'default' => 'no',
1011
+ 'name' => __( 'Hide less link', 'su' ),
1012
+ 'desc' => __( 'This option allows you to hide less link, when the text block has been expanded', 'su' )
1013
+ ),
1014
+ 'text_color' => array(
1015
+ 'type' => 'color',
1016
+ 'values' => array( ),
1017
+ 'default' => '#333333',
1018
+ 'name' => __( 'Text color', 'su' ),
1019
+ 'desc' => __( 'Pick the text color', 'su' )
1020
+ ),
1021
+ 'link_color' => array(
1022
+ 'type' => 'color',
1023
+ 'values' => array( ),
1024
+ 'default' => '#0088FF',
1025
+ 'name' => __( 'Link color', 'su' ),
1026
+ 'desc' => __( 'Pick the link color', 'su' )
1027
+ ),
1028
+ 'link_style' => array(
1029
+ 'type' => 'select',
1030
+ 'values' => array(
1031
+ 'default' => __( 'Default', 'su' ),
1032
+ 'underlined' => __( 'Underlined', 'su' ),
1033
+ 'dotted' => __( 'Dotted', 'su' ),
1034
+ 'dashed' => __( 'Dashed', 'su' ),
1035
+ 'button' => __( 'Button', 'su' ),
1036
+ ),
1037
+ 'default' => 'default',
1038
+ 'name' => __( 'Link style', 'su' ),
1039
+ 'desc' => __( 'Select the style for more/less link', 'su' )
1040
+ ),
1041
+ 'link_align' => array(
1042
+ 'type' => 'select',
1043
+ 'values' => array(
1044
+ 'left' => __( 'Left', 'su' ),
1045
+ 'center' => __( 'Center', 'su' ),
1046
+ 'right' => __( 'Right', 'su' ),
1047
+ ),
1048
+ 'default' => 'left',
1049
+ 'name' => __( 'Link align', 'su' ),
1050
+ 'desc' => __( 'Select link alignment', 'su' )
1051
+ ),
1052
+ 'more_icon' => array(
1053
+ 'type' => 'icon',
1054
+ 'default' => '',
1055
+ 'name' => __( 'More icon', 'su' ),
1056
+ 'desc' => __( 'Add an icon to the more link', 'su' )
1057
+ ),
1058
+ 'less_icon' => array(
1059
+ 'type' => 'icon',
1060
+ 'default' => '',
1061
+ 'name' => __( 'Less icon', 'su' ),
1062
+ 'desc' => __( 'Add an icon to the less link', 'su' )
1063
+ ),
1064
+ 'class' => array(
1065
+ 'default' => '',
1066
+ 'name' => __( 'Class', 'su' ),
1067
+ 'desc' => __( 'Extra CSS class', 'su' )
1068
+ )
1069
+ ),
1070
+ 'content' => __( 'This text block can be expanded', 'su' ),
1071
+ 'desc' => __( 'Expandable text block', 'su' ),
1072
+ 'icon' => 'sort-amount-asc'
1073
+ ),
1074
+ // lightbox
1075
+ 'lightbox' => array(
1076
+ 'name' => __( 'Lightbox', 'su' ),
1077
+ 'type' => 'wrap',
1078
+ 'group' => 'gallery',
1079
+ 'atts' => array(
1080
+ 'type' => array(
1081
+ 'type' => 'select',
1082
+ 'values' => array(
1083
+ 'iframe' => __( 'Iframe', 'su' ),
1084
+ 'image' => __( 'Image', 'su' ),
1085
+ 'inline' => __( 'Inline (html content)', 'su' )
1086
+ ),
1087
+ 'default' => 'iframe',
1088
+ 'name' => __( 'Content type', 'su' ),
1089
+ 'desc' => __( 'Select type of the lightbox window content', 'su' )
1090
+ ),
1091
+ 'src' => array(
1092
+ 'default' => '',
1093
+ 'name' => __( 'Content source', 'su' ),
1094
+ 'desc' => __( 'Insert here URL or CSS selector. Use URL for Iframe and Image content types. Use CSS selector for Inline content type.<br />Example values:<br /><b%value>http://www.youtube.com/watch?v=XXXXXXXXX</b> - YouTube video (iframe)<br /><b%value>http://example.com/wp-content/uploads/image.jpg</b> - uploaded image (image)<br /><b%value>http://example.com/</b> - any web page (iframe)<br /><b%value>#my-custom-popup</b> - any HTML content (inline)', 'su' )
1095
+ ),
1096
+ 'class' => array(
1097
+ 'default' => '',
1098
+ 'name' => __( 'Class', 'su' ),
1099
+ 'desc' => __( 'Extra CSS class', 'su' )
1100
+ )
1101
+ ),
1102
+ 'content' => __( '[%prefix_button] Click Here to Watch the Video [/%prefix_button]', 'su' ),
1103
+ 'desc' => __( 'Lightbox window with custom content', 'su' ),
1104
+ 'icon' => 'external-link'
1105
+ ),
1106
+ // lightbox content
1107
+ 'lightbox_content' => array(
1108
+ 'name' => __( 'Lightbox content', 'su' ),
1109
+ 'type' => 'wrap',
1110
+ 'group' => 'gallery',
1111
+ 'atts' => array(
1112
+ 'id' => array(
1113
+ 'default' => '',
1114
+ 'name' => __( 'ID', 'su' ),
1115
+ 'desc' => sprintf( __( 'Enter here the ID from Content source field. %s Example value: %s', 'su' ), '<br>', '<b%value>my-custom-popup</b>' )
1116
+ ),
1117
+ 'width' => array(
1118
+ 'default' => '50%',
1119
+ 'name' => __( 'Width', 'su' ),
1120
+ 'desc' => sprintf( __( 'Adjust the width for inline content (in pixels or percents). %s Example values: %s, %s, %s', 'su' ), '<br>', '<b%value>300px</b>', '<b%value>600px</b>', '<b%value>90%</b>' )
1121
+ ),
1122
+ 'margin' => array(
1123
+ 'type' => 'slider',
1124
+ 'min' => 0,
1125
+ 'max' => 600,
1126
+ 'step' => 5,
1127
+ 'default' => 40,
1128
+ 'name' => __( 'Margin', 'su' ),
1129
+ 'desc' => __( 'Adjust the margin for inline content (in pixels)', 'su' )
1130
+ ),
1131
+ 'padding' => array(
1132
+ 'type' => 'slider',
1133
+ 'min' => 0,
1134
+ 'max' => 600,
1135
+ 'step' => 5,
1136
+ 'default' => 40,
1137
+ 'name' => __( 'Padding', 'su' ),
1138
+ 'desc' => __( 'Adjust the padding for inline content (in pixels)', 'su' )
1139
+ ),
1140
+ 'text_align' => array(
1141
+ 'type' => 'select',
1142
+ 'values' => array(
1143
+ 'left' => __( 'Left', 'su' ),
1144
+ 'center' => __( 'Center', 'su' ),
1145
+ 'right' => __( 'Right', 'su' )
1146
+ ),
1147
+ 'default' => 'center',
1148
+ 'name' => __( 'Text alignment', 'su' ),
1149
+ 'desc' => __( 'Select the text alignment', 'su' )
1150
+ ),
1151
+ 'background' => array(
1152
+ 'type' => 'color',
1153
+ 'default' => '#FFFFFF',
1154
+ 'name' => __( 'Background color', 'su' ),
1155
+ 'desc' => __( 'Pick a background color', 'su' )
1156
+ ),
1157
+ 'color' => array(
1158
+ 'type' => 'color',
1159
+ 'default' => '#333333',
1160
+ 'name' => __( 'Text color', 'su' ),
1161
+ 'desc' => __( 'Pick a text color', 'su' )
1162
+ ),
1163
+ 'color' => array(
1164
+ 'type' => 'color',
1165
+ 'default' => '#333333',
1166
+ 'name' => __( 'Text color', 'su' ),
1167
+ 'desc' => __( 'Pick a text color', 'su' )
1168
+ ),
1169
+ 'shadow' => array(
1170
+ 'type' => 'shadow',
1171
+ 'default' => '0px 0px 15px #333333',
1172
+ 'name' => __( 'Shadow', 'su' ),
1173
+ 'desc' => __( 'Adjust the shadow for content box', 'su' )
1174
+ ),
1175
+ 'class' => array(
1176
+ 'default' => '',
1177
+ 'name' => __( 'Class', 'su' ),
1178
+ 'desc' => __( 'Extra CSS class', 'su' )
1179
+ )
1180
+ ),
1181
+ 'content' => __( 'Inline content', 'su' ),
1182
+ 'desc' => __( 'Inline content for lightbox', 'su' ),
1183
+ 'icon' => 'external-link'
1184
+ ),
1185
+ // tooltip
1186
+ 'tooltip' => array(
1187
+ 'name' => __( 'Tooltip', 'su' ),
1188
+ 'type' => 'wrap',
1189
+ 'group' => 'other',
1190
+ 'atts' => array(
1191
+ 'style' => array(
1192
+ 'type' => 'select',
1193
+ 'values' => array(
1194
+ 'light' => __( 'Basic: Light', 'su' ),
1195
+ 'dark' => __( 'Basic: Dark', 'su' ),
1196
+ 'yellow' => __( 'Basic: Yellow', 'su' ),
1197
+ 'green' => __( 'Basic: Green', 'su' ),
1198
+ 'red' => __( 'Basic: Red', 'su' ),
1199
+ 'blue' => __( 'Basic: Blue', 'su' ),
1200
+ 'youtube' => __( 'Youtube', 'su' ),
1201
+ 'tipsy' => __( 'Tipsy', 'su' ),
1202
+ 'bootstrap' => __( 'Bootstrap', 'su' ),
1203
+ 'jtools' => __( 'jTools', 'su' ),
1204
+ 'tipped' => __( 'Tipped', 'su' ),
1205
+ 'cluetip' => __( 'Cluetip', 'su' ),
1206
+ ),
1207
+ 'default' => 'yellow',
1208
+ 'name' => __( 'Style', 'su' ),
1209
+ 'desc' => __( 'Tooltip window style', 'su' )
1210
+ ),
1211
+ 'position' => array(
1212
+ 'type' => 'select',
1213
+ 'values' => array(
1214
+ 'north' => __( 'Top', 'su' ),
1215
+ 'south' => __( 'Bottom', 'su' ),
1216
+ 'west' => __( 'Left', 'su' ),
1217
+ 'east' => __( 'Right', 'su' )
1218
+ ),
1219
+ 'default' => 'top',
1220
+ 'name' => __( 'Position', 'su' ),
1221
+ 'desc' => __( 'Tooltip position', 'su' )
1222
+ ),
1223
+ 'shadow' => array(
1224
+ 'type' => 'bool',
1225
+ 'default' => 'no',
1226
+ 'name' => __( 'Shadow', 'su' ),
1227
+ 'desc' => __( 'Add shadow to tooltip. This option is only works with basic styes, e.g. blue, green etc.', 'su' )
1228
+ ),
1229
+ 'rounded' => array(
1230
+ 'type' => 'bool',
1231
+ 'default' => 'no',
1232
+ 'name' => __( 'Rounded corners', 'su' ),
1233
+ 'desc' => __( 'Use rounded for tooltip. This option is only works with basic styes, e.g. blue, green etc.', 'su' )
1234
+ ),
1235
+ 'size' => array(
1236
+ 'type' => 'select',
1237
+ 'values' => array(
1238
+ 'default' => __( 'Default', 'su' ),
1239
+ '1' => 1,
1240
+ '2' => 2,
1241
+ '3' => 3,
1242
+ '4' => 4,
1243
+ '5' => 5,
1244
+ '6' => 6,
1245
+ ),
1246
+ 'default' => 'default',
1247
+ 'name' => __( 'Font size', 'su' ),
1248
+ 'desc' => __( 'Tooltip font size', 'su' )
1249
+ ),
1250
+ 'title' => array(
1251
+ 'default' => '',
1252
+ 'name' => __( 'Tooltip title', 'su' ),
1253
+ 'desc' => __( 'Enter title for tooltip window. Leave this field empty to hide the title', 'su' )
1254
+ ),
1255
+ 'content' => array(
1256
+ 'default' => __( 'Tooltip text', 'su' ),
1257
+ 'name' => __( 'Tooltip content', 'su' ),
1258
+ 'desc' => __( 'Enter tooltip content here', 'su' )
1259
+ ),
1260
+ 'behavior' => array(
1261
+ 'type' => 'select',
1262
+ 'values' => array(
1263
+ 'hover' => __( 'Show and hide on mouse hover', 'su' ),
1264
+ 'click' => __( 'Show and hide by mouse click', 'su' ),
1265
+ 'always' => __( 'Always visible', 'su' )
1266
+ ),
1267
+ 'default' => 'hover',
1268
+ 'name' => __( 'Behavior', 'su' ),
1269
+ 'desc' => __( 'Select tooltip behavior', 'su' )
1270
+ ),
1271
+ 'close' => array(
1272
+ 'type' => 'bool',
1273
+ 'default' => 'no',
1274
+ 'name' => __( 'Close button', 'su' ),
1275
+ 'desc' => __( 'Show close button', 'su' )
1276
+ ),
1277
+ 'class' => array(
1278
+ 'default' => '',
1279
+ 'name' => __( 'Class', 'su' ),
1280
+ 'desc' => __( 'Extra CSS class', 'su' )
1281
+ )
1282
+ ),
1283
+ 'content' => __( '[%prefix_button] Hover me to open tooltip [/%prefix_button]', 'su' ),
1284
+ 'desc' => __( 'Tooltip window with custom content', 'su' ),
1285
+ 'icon' => 'comment-o'
1286
+ ),
1287
+ // private
1288
+ 'private' => array(
1289
+ 'name' => __( 'Private', 'su' ),
1290
+ 'type' => 'wrap',
1291
+ 'group' => 'other',
1292
+ 'atts' => array(
1293
+ 'class' => array(
1294
+ 'default' => '',
1295
+ 'name' => __( 'Class', 'su' ),
1296
+ 'desc' => __( 'Extra CSS class', 'su' )
1297
+ )
1298
+ ),
1299
+ 'content' => __( 'Private note text', 'su' ),
1300
+ 'desc' => __( 'Private note for post authors', 'su' ),
1301
+ 'icon' => 'lock'
1302
+ ),
1303
+ // youtube
1304
+ 'youtube' => array(
1305
+ 'name' => __( 'YouTube', 'su' ),
1306
+ 'type' => 'single',
1307
+ 'group' => 'media',
1308
+ 'atts' => array(
1309
+ 'url' => array(
1310
+ 'values' => array( ),
1311
+ 'default' => '',
1312
+ 'name' => __( 'Url', 'su' ),
1313
+ 'desc' => __( 'Url of YouTube page with video. Ex: http://youtube.com/watch?v=XXXXXX', 'su' )
1314
+ ),
1315
+ 'width' => array(
1316
+ 'type' => 'slider',
1317
+ 'min' => 200,
1318
+ 'max' => 1600,
1319
+ 'step' => 20,
1320
+ 'default' => 600,
1321
+ 'name' => __( 'Width', 'su' ),
1322
+ 'desc' => __( 'Player width', 'su' )
1323
+ ),
1324
+ 'height' => array(
1325
+ 'type' => 'slider',
1326
+ 'min' => 200,
1327
+ 'max' => 1600,
1328
+ 'step' => 20,
1329
+ 'default' => 400,
1330
+ 'name' => __( 'Height', 'su' ),
1331
+ 'desc' => __( 'Player height', 'su' )
1332
+ ),
1333
+ 'responsive' => array(
1334
+ 'type' => 'bool',
1335
+ 'default' => 'yes',
1336
+ 'name' => __( 'Responsive', 'su' ),
1337
+ 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1338
+ ),
1339
+ 'autoplay' => array(
1340
+ 'type' => 'bool',
1341
+ 'default' => 'no',
1342
+ 'name' => __( 'Autoplay', 'su' ),
1343
+ 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1344
+ ),
1345
+ 'class' => array(
1346
+ 'default' => '',
1347
+ 'name' => __( 'Class', 'su' ),
1348
+ 'desc' => __( 'Extra CSS class', 'su' )
1349
+ )
1350
+ ),
1351
+ 'desc' => __( 'YouTube video', 'su' ),
1352
+ 'example' => 'media',
1353
+ 'icon' => 'youtube-play'
1354
+ ),
1355
+ // youtube_advanced
1356
+ 'youtube_advanced' => array(
1357
+ 'name' => __( 'YouTube Advanced', 'su' ),
1358
+ 'type' => 'single',
1359
+ 'group' => 'media',
1360
+ 'atts' => array(
1361
+ 'url' => array(
1362
+ 'values' => array( ),
1363
+ 'default' => '',
1364
+ 'name' => __( 'Url', 'su' ),
1365
+ 'desc' => __( 'Url of YouTube page with video. Ex: http://youtube.com/watch?v=XXXXXX', 'su' )
1366
+ ),
1367
+ 'playlist' => array(
1368
+ 'default' => '',
1369
+ 'name' => __( 'Playlist', 'su' ),
1370
+ 'desc' => __( 'Value is a comma-separated list of video IDs to play. If you specify a value, the first video that plays will be the VIDEO_ID specified in the URL path, and the videos specified in the playlist parameter will play thereafter', 'su' )
1371
+ ),
1372
+ 'width' => array(
1373
+ 'type' => 'slider',
1374
+ 'min' => 200,
1375
+ 'max' => 1600,
1376
+ 'step' => 20,
1377
+ 'default' => 600,
1378
+ 'name' => __( 'Width', 'su' ),
1379
+ 'desc' => __( 'Player width', 'su' )
1380
+ ),
1381
+ 'height' => array(
1382
+ 'type' => 'slider',
1383
+ 'min' => 200,
1384
+ 'max' => 1600,
1385
+ 'step' => 20,
1386
+ 'default' => 400,
1387
+ 'name' => __( 'Height', 'su' ),
1388
+ 'desc' => __( 'Player height', 'su' )
1389
+ ),
1390
+ 'responsive' => array(
1391
+ 'type' => 'bool',
1392
+ 'default' => 'yes',
1393
+ 'name' => __( 'Responsive', 'su' ),
1394
+ 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1395
+ ),
1396
+ 'controls' => array(
1397
+ 'type' => 'select',
1398
+ 'values' => array(
1399
+ 'no' => __( '0 - Hide controls', 'su' ),
1400
+ 'yes' => __( '1 - Show controls', 'su' ),
1401
+ 'alt' => __( '2 - Show controls when playback is started', 'su' )
1402
+ ),
1403
+ 'default' => 'yes',
1404
+ 'name' => __( 'Controls', 'su' ),
1405
+ 'desc' => __( 'This parameter indicates whether the video player controls will display', 'su' )
1406
+ ),
1407
+ 'autohide' => array(
1408
+ 'type' => 'select',
1409
+ 'values' => array(
1410
+ 'no' => __( '0 - Do not hide controls', 'su' ),
1411
+ 'yes' => __( '1 - Hide all controls on mouse out', 'su' ),
1412
+ 'alt' => __( '2 - Hide progress bar on mouse out', 'su' )
1413
+ ),
1414
+ 'default' => 'alt',
1415
+ 'name' => __( 'Autohide', 'su' ),
1416
+ 'desc' => __( 'This parameter indicates whether the video controls will automatically hide after a video begins playing', 'su' )
1417
+ ),
1418
+ 'showinfo' => array(
1419
+ 'type' => 'bool',
1420
+ 'default' => 'yes',
1421
+ 'name' => __( 'Show title bar', 'su' ),
1422
+ 'desc' => __( 'If you set the parameter value to NO, then the player will not display information like the video title and uploader before the video starts playing.', 'su' )
1423
+ ),
1424
+ 'autoplay' => array(
1425
+ 'type' => 'bool',
1426
+ 'default' => 'no',
1427
+ 'name' => __( 'Autoplay', 'su' ),
1428
+ 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1429
+ ),
1430
+ 'loop' => array(
1431
+ 'type' => 'bool',
1432
+ 'default' => 'no',
1433
+ 'name' => __( 'Loop', 'su' ),
1434
+ 'desc' => __( 'Setting of YES will cause the player to play the initial video again and again', 'su' )
1435
+ ),
1436
+ 'rel' => array(
1437
+ 'type' => 'bool',
1438
+ 'default' => 'yes',
1439
+ 'name' => __( 'Related videos', 'su' ),
1440
+ 'desc' => __( 'This parameter indicates whether the player should show related videos when playback of the initial video ends', 'su' )
1441
+ ),
1442
+ 'fs' => array(
1443
+ 'type' => 'bool',
1444
+ 'default' => 'yes',
1445
+ 'name' => __( 'Show full-screen button', 'su' ),
1446
+ 'desc' => __( 'Setting this parameter to NO prevents the fullscreen button from displaying', 'su' )
1447
+ ),
1448
+ 'modestbranding' => array(
1449
+ 'type' => 'bool',
1450
+ 'default' => 'no',
1451
+ 'name' => 'modestbranding',
1452
+ 'desc' => __( 'This parameter lets you use a YouTube player that does not show a YouTube logo. Set the parameter value to YES to prevent the YouTube logo from displaying in the control bar. Note that a small YouTube text label will still display in the upper-right corner of a paused video when the user\'s mouse pointer hovers over the player', 'su' )
1453
+ ),
1454
+ 'theme' => array(
1455
+ 'type' => 'select',
1456
+ 'values' => array(
1457
+ 'dark' => __( 'Dark theme', 'su' ),
1458
+ 'light' => __( 'Light theme', 'su' )
1459
+ ),
1460
+ 'default' => 'dark',
1461
+ 'name' => __( 'Theme', 'su' ),
1462
+ 'desc' => __( 'This parameter indicates whether the embedded player will display player controls (like a play button or volume control) within a dark or light control bar', 'su' )
1463
+ ),
1464
+ 'https' => array(
1465
+ 'type' => 'bool',
1466
+ 'default' => 'no',
1467
+ 'name' => __( 'Force HTTPS', 'su' ),
1468
+ 'desc' => __( 'Use HTTPS in player iframe', 'su' )
1469
+ ),
1470
+ 'wmode' => array(
1471
+ 'default' => '',
1472
+ 'name' => __( 'WMode', 'su' ),
1473
+ 'desc' => sprintf( __( 'Here you can specify wmode value for the embed URL. %s Example values: %s, %s', 'su' ), '<br>', '<b%value>transparent</b>', '<b%value>opaque</b>' )
1474
+ ),
1475
+ 'class' => array(
1476
+ 'default' => '',
1477
+ 'name' => __( 'Class', 'su' ),
1478
+ 'desc' => __( 'Extra CSS class', 'su' )
1479
+ )
1480
+ ),
1481
+ 'desc' => __( 'YouTube video player with advanced settings', 'su' ),
1482
+ 'example' => 'media',
1483
+ 'icon' => 'youtube-play'
1484
+ ),
1485
+ // vimeo
1486
+ 'vimeo' => array(
1487
+ 'name' => __( 'Vimeo', 'su' ),
1488
+ 'type' => 'single',
1489
+ 'group' => 'media',
1490
+ 'atts' => array(
1491
+ 'url' => array(
1492
+ 'values' => array( ),
1493
+ 'default' => '',
1494
+ 'name' => __( 'Url', 'su' ), 'desc' => __( 'Url of Vimeo page with video', 'su' )
1495
+ ),
1496
+ 'width' => array(
1497
+ 'type' => 'slider',
1498
+ 'min' => 200,
1499
+ 'max' => 1600,
1500
+ 'step' => 20,
1501
+ 'default' => 600,
1502
+ 'name' => __( 'Width', 'su' ),
1503
+ 'desc' => __( 'Player width', 'su' )
1504
+ ),
1505
+ 'height' => array(
1506
+ 'type' => 'slider',
1507
+ 'min' => 200,
1508
+ 'max' => 1600,
1509
+ 'step' => 20,
1510
+ 'default' => 400,
1511
+ 'name' => __( 'Height', 'su' ),
1512
+ 'desc' => __( 'Player height', 'su' )
1513
+ ),
1514
+ 'responsive' => array(
1515
+ 'type' => 'bool',
1516
+ 'default' => 'yes',
1517
+ 'name' => __( 'Responsive', 'su' ),
1518
+ 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1519
+ ),
1520
+ 'autoplay' => array(
1521
+ 'type' => 'bool',
1522
+ 'default' => 'no',
1523
+ 'name' => __( 'Autoplay', 'su' ),
1524
+ 'desc' => __( 'Play video automatically when page is loaded', 'su' )
1525
+ ),
1526
+ 'class' => array(
1527
+ 'default' => '',
1528
+ 'name' => __( 'Class', 'su' ),
1529
+ 'desc' => __( 'Extra CSS class', 'su' )
1530
+ )
1531
+ ),
1532
+ 'desc' => __( 'Vimeo video', 'su' ),
1533
+ 'example' => 'media',
1534
+ 'icon' => 'youtube-play'
1535
+ ),
1536
+ // screenr
1537
+ 'screenr' => array(
1538
+ 'name' => __( 'Screenr', 'su' ),
1539
+ 'type' => 'single',
1540
+ 'group' => 'media',
1541
+ 'atts' => array(
1542
+ 'url' => array(
1543
+ 'default' => '',
1544
+ 'name' => __( 'Url', 'su' ),
1545
+ 'desc' => __( 'Url of Screenr page with video', 'su' )
1546
+ ),
1547
+ 'width' => array(
1548
+ 'type' => 'slider',
1549
+ 'min' => 200,
1550
+ 'max' => 1600,
1551
+ 'step' => 20,
1552
+ 'default' => 600,
1553
+ 'name' => __( 'Width', 'su' ),
1554
+ 'desc' => __( 'Player width', 'su' )
1555
+ ),
1556
+ 'height' => array(
1557
+ 'type' => 'slider',
1558
+ 'min' => 200,
1559
+ 'max' => 1600,
1560
+ 'step' => 20,
1561
+ 'default' => 400,
1562
+ 'name' => __( 'Height', 'su' ),
1563
+ 'desc' => __( 'Player height', 'su' )
1564
+ ),
1565
+ 'responsive' => array(
1566
+ 'type' => 'bool',
1567
+ 'default' => 'yes',
1568
+ 'name' => __( 'Responsive', 'su' ),
1569
+ 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1570
+ ),
1571
+ 'class' => array(
1572
+ 'default' => '',
1573
+ 'name' => __( 'Class', 'su' ),
1574
+ 'desc' => __( 'Extra CSS class', 'su' )
1575
+ )
1576
+ ),
1577
+ 'desc' => __( 'Screenr video', 'su' ),
1578
+ 'icon' => 'youtube-play'
1579
+ ),
1580
+ // dailymotion
1581
+ 'dailymotion' => array(
1582
+ 'name' => __( 'Dailymotion', 'su' ),
1583
+ 'type' => 'single',
1584
+ 'group' => 'media',
1585
+ 'atts' => array(
1586
+ 'url' => array(
1587
+ 'default' => '',
1588
+ 'name' => __( 'Url', 'su' ),
1589
+ 'desc' => __( 'Url of Dailymotion page with video', 'su' )
1590
+ ),
1591
+ 'width' => array(
1592
+ 'type' => 'slider',
1593
+ 'min' => 200,
1594
+ 'max' => 1600,
1595
+ 'step' => 20,
1596
+ 'default' => 600,
1597
+ 'name' => __( 'Width', 'su' ),
1598
+ 'desc' => __( 'Player width', 'su' )
1599
+ ),
1600
+ 'height' => array(
1601
+ 'type' => 'slider',
1602
+ 'min' => 200,
1603
+ 'max' => 1600,
1604
+ 'step' => 20,
1605
+ 'default' => 400,
1606
+ 'name' => __( 'Height', 'su' ),
1607
+ 'desc' => __( 'Player height', 'su' )
1608
+ ),
1609
+ 'responsive' => array(
1610
+ 'type' => 'bool',
1611
+ 'default' => 'yes',
1612
+ 'name' => __( 'Responsive', 'su' ),
1613
+ 'desc' => __( 'Ignore width and height parameters and make player responsive', 'su' )
1614
+ ),
1615
+ 'autoplay' => array(
1616
+ 'type' => 'bool',
1617
+ 'default' => 'no',
1618
+ 'name' => __( 'Autoplay', 'su' ),
1619
+ 'desc' => __( 'Start the playback of the video automatically after the player load. May not work on some mobile OS versions', 'su' )
1620
+ ),
1621
+ 'background' => array(
1622
+ 'type' => 'color',
1623
+ 'default' => '#FFC300',
1624
+ 'name' => __( 'Background color', 'su' ),
1625
+ 'desc' => __( 'HTML color of the background of controls elements', 'su' )
1626
+ ),
1627
+ 'foreground' => array(
1628
+ 'type' => 'color',
1629
+ 'default' => '#F7FFFD',
1630
+ 'name' => __( 'Foreground color', 'su' ),
1631
+ 'desc' => __( 'HTML color of the foreground of controls elements', 'su' )
1632
+ ),
1633
+ 'highlight' => array(
1634
+ 'type' => 'color',
1635
+ 'default' => '#171D1B',
1636
+ 'name' => __( 'Highlight color', 'su' ),
1637
+ 'desc' => __( 'HTML color of the controls elements\' highlights', 'su' )
1638
+ ),
1639
+ 'logo' => array(
1640
+ 'type' => 'bool',
1641
+ 'default' => 'yes',
1642
+ 'name' => __( 'Show logo', 'su' ),
1643
+ 'desc' => __( 'Allows to hide or show the Dailymotion logo', 'su' )
1644
+ ),
1645
+ 'quality' => array(
1646
+ 'type' => 'select',
1647
+ 'values' => array(
1648
+ '240' => '240',
1649
+ '380' => '380',
1650
+ '480' => '480',
1651
+ '720' => '720',
1652
+ '1080' => '1080'
1653
+ ),
1654
+ 'default' => '380',
1655
+ 'name' => __( 'Quality', 'su' ),
1656
+ 'desc' => __( 'Determines the quality that must be played by default if available', 'su' )
1657
+ ),
1658
+ 'related' => array(
1659
+ 'type' => 'bool',
1660
+ 'default' => 'yes',
1661
+ 'name' => __( 'Show related videos', 'su' ),
1662
+ 'desc' => __( 'Show related videos at the end of the video', 'su' )
1663
+ ),
1664
+ 'info' => array(
1665
+ 'type' => 'bool',
1666
+ 'default' => 'yes',
1667
+ 'name' => __( 'Show video info', 'su' ),
1668
+ 'desc' => __( 'Show videos info (title/author) on the start screen', 'su' )
1669
+ ),
1670
+ 'class' => array(
1671
+ 'default' => '',
1672
+ 'name' => __( 'Class', 'su' ),
1673
+ 'desc' => __( 'Extra CSS class', 'su' )
1674
+ )
1675
+ ),
1676
+ 'desc' => __( 'Dailymotion video', 'su' ),
1677
+ 'icon' => 'youtube-play'
1678
+ ),
1679
+ // audio
1680
+ 'audio' => array(
1681
+ 'name' => __( 'Audio', 'su' ),
1682
+ 'type' => 'single',
1683
+ 'group' => 'media',
1684
+ 'atts' => array(
1685
+ 'url' => array(
1686
+ 'type' => 'upload',
1687
+ 'default' => '',
1688
+ 'name' => __( 'File', 'su' ),
1689
+ 'desc' => __( 'Audio file url. Supported formats: mp3, ogg', 'su' )
1690
+ ),
1691
+ 'width' => array(
1692
+ 'values' => array(),
1693
+ 'default' => '100%',
1694
+ 'name' => __( 'Width', 'su' ),
1695
+ 'desc' => __( 'Player width. You can specify width in percents and player will be responsive. Example values: <b%value>200px</b>, <b%value>100&#37;</b>', 'su' )
1696
+ ),
1697
+ 'autoplay' => array(
1698
+ 'type' => 'bool',
1699
+ 'default' => 'no',
1700
+ 'name' => __( 'Autoplay', 'su' ),
1701
+ 'desc' => __( 'Play file automatically when page is loaded', 'su' )
1702
+ ),
1703
+ 'loop' => array(
1704
+ 'type' => 'bool',
1705
+ 'default' => 'no',
1706
+ 'name' => __( 'Loop', 'su' ),
1707
+ 'desc' => __( 'Repeat when playback is ended', 'su' )
1708
+ ),
1709
+ 'class' => array(
1710
+ 'default' => '',
1711
+ 'name' => __( 'Class', 'su' ),
1712
+ 'desc' => __( 'Extra CSS class', 'su' )
1713
+ )
1714
+ ),
1715
+ 'desc' => __( 'Custom audio player', 'su' ),
1716
+ 'example' => 'media',
1717
+ 'icon' => 'play-circle'
1718
+ ),
1719
+ // video
1720
+ 'video' => array(
1721
+ 'name' => __( 'Video', 'su' ),
1722
+ 'type' => 'single',
1723
+ 'group' => 'media',
1724
+ 'atts' => array(
1725
+ 'url' => array(
1726
+ 'type' => 'upload',
1727
+ 'default' => '',
1728
+ 'name' => __( 'File', 'su' ),
1729
+ 'desc' => __( 'Url to mp4/flv video-file', 'su' )
1730
+ ),
1731
+ 'poster' => array(
1732
+ 'type' => 'upload',
1733
+ 'default' => '',
1734
+ 'name' => __( 'Poster', 'su' ),
1735
+ 'desc' => __( 'Url to poster image, that will be shown before playback', 'su' )
1736
+ ),
1737
+ 'title' => array(
1738
+ 'values' => array( ),
1739
+ 'default' => '',
1740
+ 'name' => __( 'Title', 'su' ),
1741
+ 'desc' => __( 'Player title', 'su' )
1742
+ ),
1743
+ 'width' => array(
1744
+ 'type' => 'slider',
1745
+ 'min' => 200,
1746
+ 'max' => 1600,
1747
+ 'step' => 20,
1748
+ 'default' => 600,
1749
+ 'name' => __( 'Width', 'su' ),
1750
+ 'desc' => __( 'Player width', 'su' )
1751
+ ),
1752
+ 'height' => array(
1753
+ 'type' => 'slider',
1754
+ 'min' => 200,
1755
+ 'max' => 1600,
1756
+ 'step' => 20,
1757
+ 'default' => 300,
1758
+ 'name' => __( 'Height', 'su' ),
1759
+ 'desc' => __( 'Player height', 'su' )
1760
+ ),
1761
+ 'controls' => array(
1762
+ 'type' => 'bool',
1763
+ 'default' => 'yes',
1764
+ 'name' => __( 'Controls', 'su' ),
1765
+ 'desc' => __( 'Show player controls (play/pause etc.) or not', 'su' )
1766
+ ),
1767
+ 'autoplay' => array(
1768
+ 'type' => 'bool',
1769
+ 'default' => 'no',
1770
+ 'name' => __( 'Autoplay', 'su' ),
1771
+ 'desc' => __( 'Play file automatically when page is loaded', 'su' )
1772
+ ),
1773
+ 'loop' => array(
1774
+ 'type' => 'bool',
1775
+ 'default' => 'no',
1776
+ 'name' => __( 'Loop', 'su' ),
1777
+ 'desc' => __( 'Repeat when playback is ended', 'su' )
1778
+ ),
1779
+ 'class' => array(
1780
+ 'default' => '',
1781
+ 'name' => __( 'Class', 'su' ),
1782
+ 'desc' => __( 'Extra CSS class', 'su' )
1783
+ )
1784
+ ),
1785
+ 'desc' => __( 'Custom video player', 'su' ),
1786
+ 'example' => 'media',
1787
+ 'icon' => 'play-circle'
1788
+ ),
1789
+ // table
1790
+ 'table' => array(
1791
+ 'name' => __( 'Table', 'su' ),
1792
+ 'type' => 'mixed',
1793
+ 'group' => 'content',
1794
+ 'atts' => array(
1795
+ 'url' => array(
1796
+ 'type' => 'upload',
1797
+ 'default' => '',
1798
+ 'name' => __( 'CSV file', 'su' ),
1799
+ 'desc' => __( 'Upload CSV file if you want to create HTML-table from file', 'su' )
1800
+ ),
1801
+ 'class' => array(
1802
+ 'default' => '',
1803
+ 'name' => __( 'Class', 'su' ),
1804
+ 'desc' => __( 'Extra CSS class', 'su' )
1805
+ )
1806
+ ),
1807
+ 'content' => __( "<table>\n<tr>\n\t<td>Table</td>\n\t<td>Table</td>\n</tr>\n<tr>\n\t<td>Table</td>\n\t<td>Table</td>\n</tr>\n</table>", 'su' ),
1808
+ 'desc' => __( 'Styled table from HTML or CSV file', 'su' ),
1809
+ 'icon' => 'table'
1810
+ ),
1811
+ // permalink
1812
+ 'permalink' => array(
1813
+ 'name' => __( 'Permalink', 'su' ),
1814
+ 'type' => 'mixed',
1815
+ 'group' => 'content other',
1816
+ 'atts' => array(
1817
+ 'id' => array(
1818
+ 'values' => array( ), 'default' => 1,
1819
+ 'name' => __( 'ID', 'su' ),
1820
+ 'desc' => __( 'Post or page ID', 'su' )
1821
+ ),
1822
+ 'target' => array(
1823
+ 'type' => 'select',
1824
+ 'values' => array(
1825
+ 'self' => __( 'Same tab', 'su' ),
1826
+ 'blank' => __( 'New tab', 'su' )
1827
+ ),
1828
+ 'default' => 'self',
1829
+ 'name' => __( 'Target', 'su' ),
1830
+ 'desc' => __( 'Link target. blank - link will be opened in new window/tab', 'su' )
1831
+ ),
1832
+ 'class' => array(
1833
+ 'default' => '',
1834
+ 'name' => __( 'Class', 'su' ),
1835
+ 'desc' => __( 'Extra CSS class', 'su' )
1836
+ )
1837
+ ),
1838
+ 'content' => '',
1839
+ 'desc' => __( 'Permalink to specified post/page', 'su' ),
1840
+ 'icon' => 'link'
1841
+ ),
1842
+ // members
1843
+ 'members' => array(
1844
+ 'name' => __( 'Members', 'su' ),
1845
+ 'type' => 'wrap',
1846
+ 'group' => 'other',
1847
+ 'atts' => array(
1848
+ 'message' => array(
1849
+ 'default' => __( 'This content is for registered users only. Please %login%.', 'su' ),
1850
+ 'name' => __( 'Message', 'su' ), 'desc' => __( 'Message for not logged users', 'su' )
1851
+ ),
1852
+ 'color' => array(
1853
+ 'type' => 'color',
1854
+ 'default' => '#ffcc00',
1855
+ 'name' => __( 'Box color', 'su' ), 'desc' => __( 'This color will applied only to box for not logged users', 'su' )
1856
+ ),
1857
+ 'login_text' => array(
1858
+ 'default' => __( 'login', 'su' ),
1859
+ 'name' => __( 'Login link text', 'su' ), 'desc' => __( 'Text for the login link', 'su' )
1860
+ ),
1861
+ 'login_url' => array(
1862
+ 'default' => wp_login_url(),
1863
+ 'name' => __( 'Login link url', 'su' ), 'desc' => __( 'Login link url', 'su' )
1864
+ ),
1865
+ 'class' => array(
1866
+ 'default' => '',
1867
+ 'name' => __( 'Class', 'su' ),
1868
+ 'desc' => __( 'Extra CSS class', 'su' )
1869
+ )
1870
+ ),
1871
+ 'content' => __( 'Content for logged members', 'su' ),
1872
+ 'desc' => __( 'Content for logged in members only', 'su' ),
1873
+ 'icon' => 'lock'
1874
+ ),
1875
+ // guests
1876
+ 'guests' => array(
1877
+ 'name' => __( 'Guests', 'su' ),
1878
+ 'type' => 'wrap',
1879
+ 'group' => 'other',
1880
+ 'atts' => array(
1881
+ 'class' => array(
1882
+ 'default' => '',
1883
+ 'name' => __( 'Class', 'su' ),
1884
+ 'desc' => __( 'Extra CSS class', 'su' )
1885
+ )
1886
+ ),
1887
+ 'content' => __( 'Content for guests', 'su' ),
1888
+ 'desc' => __( 'Content for guests only', 'su' ),
1889
+ 'icon' => 'user'
1890
+ ),
1891
+ // feed
1892
+ 'feed' => array(
1893
+ 'name' => __( 'RSS Feed', 'su' ),
1894
+ 'type' => 'single',
1895
+ 'group' => 'content other',
1896
+ 'atts' => array(
1897
+ 'url' => array(
1898
+ 'values' => array( ),
1899
+ 'default' => '',
1900
+ 'name' => __( 'Url', 'su' ),
1901
+ 'desc' => __( 'Url to RSS-feed', 'su' )
1902
+ ),
1903
+ 'limit' => array(
1904
+ 'type' => 'slider',
1905
+ 'min' => 1,
1906
+ 'max' => 20,
1907
+ 'step' => 1,
1908
+ 'default' => 3,
1909
+ 'name' => __( 'Limit', 'su' ), 'desc' => __( 'Number of items to show', 'su' )
1910
+ ),
1911
+ 'class' => array(
1912
+ 'default' => '',
1913
+ 'name' => __( 'Class', 'su' ),
1914
+ 'desc' => __( 'Extra CSS class', 'su' )
1915
+ )
1916
+ ),
1917
+ 'desc' => __( 'Feed grabber', 'su' ),
1918
+ 'icon' => 'rss'
1919
+ ),
1920
+ // menu
1921
+ 'menu' => array(
1922
+ 'name' => __( 'Menu', 'su' ),
1923
+ 'type' => 'single',
1924
+ 'group' => 'other',
1925
+ 'atts' => array(
1926
+ 'name' => array(
1927
+ 'values' => array( ),
1928
+ 'default' => '',
1929
+ 'name' => __( 'Menu name', 'su' ), 'desc' => __( 'Custom menu name. Ex: Main menu', 'su' )
1930
+ ),
1931
+ 'class' => array(
1932
+ 'default' => '',
1933
+ 'name' => __( 'Class', 'su' ),
1934
+ 'desc' => __( 'Extra CSS class', 'su' )
1935
+ )
1936
+ ),
1937
+ 'desc' => __( 'Custom menu by name', 'su' ),
1938
+ 'icon' => 'bars'
1939
+ ),
1940
+ // subpages
1941
+ 'subpages' => array(
1942
+ 'name' => __( 'Sub pages', 'su' ),
1943
+ 'type' => 'single',
1944
+ 'group' => 'other',
1945
+ 'atts' => array(
1946
+ 'depth' => array(
1947
+ 'type' => 'select',
1948
+ 'values' => array( 1, 2, 3, 4, 5 ), 'default' => 1,
1949
+ 'name' => __( 'Depth', 'su' ),
1950
+ 'desc' => __( 'Max depth level of children pages', 'su' )
1951
+ ),
1952
+ 'p' => array(
1953
+ 'values' => array( ),
1954
+ 'default' => '',
1955
+ 'name' => __( 'Parent ID', 'su' ),
1956
+ 'desc' => __( 'ID of the parent page. Leave blank to use current page', 'su' )
1957
+ ),
1958
+ 'class' => array(
1959
+ 'default' => '',
1960
+ 'name' => __( 'Class', 'su' ),
1961
+ 'desc' => __( 'Extra CSS class', 'su' )
1962
+ )
1963
+ ),
1964
+ 'desc' => __( 'List of sub pages', 'su' ),
1965
+ 'icon' => 'bars'
1966
+ ),
1967
+ // siblings
1968
+ 'siblings' => array(
1969
+ 'name' => __( 'Siblings', 'su' ),
1970
+ 'type' => 'single',
1971
+ 'group' => 'other',
1972
+ 'atts' => array(
1973
+ 'depth' => array(
1974
+ 'type' => 'select',
1975
+ 'values' => array( 1, 2, 3 ), 'default' => 1,
1976
+ 'name' => __( 'Depth', 'su' ),
1977
+ 'desc' => __( 'Max depth level', 'su' )
1978
+ ),
1979
+ 'class' => array(
1980
+ 'default' => '',
1981
+ 'name' => __( 'Class', 'su' ),
1982
+ 'desc' => __( 'Extra CSS class', 'su' )
1983
+ )
1984
+ ),
1985
+ 'desc' => __( 'List of cureent page siblings', 'su' ),
1986
+ 'icon' => 'bars'
1987
+ ),
1988
+ // document
1989
+ 'document' => array(
1990
+ 'name' => __( 'Document', 'su' ),
1991
+ 'type' => 'single',
1992
+ 'group' => 'media',
1993
+ 'atts' => array(
1994
+ 'url' => array(
1995
+ 'type' => 'upload',
1996
+ 'default' => '',
1997
+ 'name' => __( 'Url', 'su' ),
1998
+ 'desc' => __( 'Url to uploaded document. Supported formats: doc, xls, pdf etc.', 'su' )
1999
+ ),
2000
+ 'width' => array(
2001
+ 'type' => 'slider',
2002
+ 'min' => 200,
2003
+ 'max' => 1600,
2004
+ 'step' => 20,
2005
+ 'default' => 600,
2006
+ 'name' => __( 'Width', 'su' ),
2007
+ 'desc' => __( 'Viewer width', 'su' )
2008
+ ),
2009
+ 'height' => array(
2010
+ 'type' => 'slider',
2011
+ 'min' => 200,
2012
+ 'max' => 1600,
2013
+ 'step' => 20,
2014
+ 'default' => 600,
2015
+ 'name' => __( 'Height', 'su' ),
2016
+ 'desc' => __( 'Viewer height', 'su' )
2017
+ ),
2018
+ 'responsive' => array(
2019
+ 'type' => 'bool',
2020
+ 'default' => 'yes',
2021
+ 'name' => __( 'Responsive', 'su' ),
2022
+ 'desc' => __( 'Ignore width and height parameters and make viewer responsive', 'su' )
2023
+ ),
2024
+ 'class' => array(
2025
+ 'default' => '',
2026
+ 'name' => __( 'Class', 'su' ),
2027
+ 'desc' => __( 'Extra CSS class', 'su' )
2028
+ )
2029
+ ),
2030
+ 'desc' => __( 'Document viewer by Google', 'su' ),
2031
+ 'icon' => 'file-text'
2032
+ ),
2033
+ // gmap
2034
+ 'gmap' => array(
2035
+ 'name' => __( 'Gmap', 'su' ),
2036
+ 'type' => 'single',
2037
+ 'group' => 'media',
2038
+ 'atts' => array(
2039
+ 'width' => array(
2040
+ 'type' => 'slider',
2041
+ 'min' => 200,
2042
+ 'max' => 1600,
2043
+ 'step' => 20,
2044
+ 'default' => 600,
2045
+ 'name' => __( 'Width', 'su' ),
2046
+ 'desc' => __( 'Map width', 'su' )
2047
+ ),
2048
+ 'height' => array(
2049
+ 'type' => 'slider',
2050
+ 'min' => 200,
2051
+ 'max' => 1600,
2052
+ 'step' => 20,
2053
+ 'default' => 400,
2054
+ 'name' => __( 'Height', 'su' ),
2055
+ 'desc' => __( 'Map height', 'su' )
2056
+ ),
2057
+ 'responsive' => array(
2058
+ 'type' => 'bool',
2059
+ 'default' => 'yes',
2060
+ 'name' => __( 'Responsive', 'su' ),
2061
+ 'desc' => __( 'Ignore width and height parameters and make map responsive', 'su' )
2062
+ ),
2063
+ 'address' => array(
2064
+ 'values' => array( ),
2065
+ 'default' => '',
2066
+ 'name' => __( 'Marker', 'su' ),
2067
+ 'desc' => __( 'Address for the marker. You can type it in any language', 'su' )
2068
+ ),
2069
+ 'class' => array(
2070
+ 'default' => '',
2071
+ 'name' => __( 'Class', 'su' ),
2072
+ 'desc' => __( 'Extra CSS class', 'su' )
2073
+ )
2074
+ ),
2075
+ 'desc' => __( 'Maps by Google', 'su' ),
2076
+ 'icon' => 'globe'
2077
+ ),
2078
+ // slider
2079
+ 'slider' => array(
2080
+ 'name' => __( 'Slider', 'su' ),
2081
+ 'type' => 'single',
2082
+ 'group' => 'gallery',
2083
+ 'atts' => array(
2084
+ 'source' => array(
2085
+ 'type' => 'image_source',
2086
+ 'default' => 'none',
2087
+ 'name' => __( 'Source', 'su' ),
2088
+ 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2089
+ ),
2090
+ 'limit' => array(
2091
+ 'type' => 'slider',
2092
+ 'min' => -1,
2093
+ 'max' => 100,
2094
+ 'step' => 1,
2095
+ 'default' => 20,
2096
+ 'name' => __( 'Limit', 'su' ),
2097
+ 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2098
+ ),
2099
+ 'link' => array(
2100
+ 'type' => 'select',
2101
+ 'values' => array(
2102
+ 'none' => __( 'None', 'su' ),
2103
+ 'image' => __( 'Full-size image', 'su' ),
2104
+ 'lightbox' => __( 'Lightbox', 'su' ),
2105
+ 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2106
+ 'attachment' => __( 'Attachment page', 'su' ),
2107
+ 'post' => __( 'Post permalink', 'su' )
2108
+ ),
2109
+ 'default' => 'none',
2110
+ 'name' => __( 'Links', 'su' ),
2111
+ 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2112
+ ),
2113
+ 'target' => array(
2114
+ 'type' => 'select',
2115
+ 'values' => array(
2116
+ 'self' => __( 'Same window', 'su' ),
2117
+ 'blank' => __( 'New window', 'su' )
2118
+ ),
2119
+ 'default' => 'self',
2120
+ 'name' => __( 'Links target', 'su' ),
2121
+ 'desc' => __( 'Open links in', 'su' )
2122
+ ),
2123
+ 'width' => array(
2124
+ 'type' => 'slider',
2125
+ 'min' => 200,
2126
+ 'max' => 1600,
2127
+ 'step' => 20,
2128
+ 'default' => 600,
2129
+ 'name' => __( 'Width', 'su' ), 'desc' => __( 'Slider width (in pixels)', 'su' )
2130
+ ),
2131
+ 'height' => array(
2132
+ 'type' => 'slider',
2133
+ 'min' => 200,
2134
+ 'max' => 1600,
2135
+ 'step' => 20,
2136
+ 'default' => 300,
2137
+ 'name' => __( 'Height', 'su' ), 'desc' => __( 'Slider height (in pixels)', 'su' )
2138
+ ),
2139
+ 'responsive' => array(
2140
+ 'type' => 'bool',
2141
+ 'default' => 'yes',
2142
+ 'name' => __( 'Responsive', 'su' ),
2143
+ 'desc' => __( 'Ignore width and height parameters and make slider responsive', 'su' )
2144
+ ),
2145
+ 'title' => array(
2146
+ 'type' => 'bool',
2147
+ 'default' => 'yes',
2148
+ 'name' => __( 'Show titles', 'su' ), 'desc' => __( 'Display slide titles', 'su' )
2149
+ ),
2150
+ 'centered' => array(
2151
+ 'type' => 'bool',
2152
+ 'default' => 'yes',
2153
+ 'name' => __( 'Center', 'su' ), 'desc' => __( 'Is slider centered on the page', 'su' )
2154
+ ),
2155
+ 'arrows' => array(
2156
+ 'type' => 'bool',
2157
+ 'default' => 'yes',
2158
+ 'name' => __( 'Arrows', 'su' ), 'desc' => __( 'Show left and right arrows', 'su' )
2159
+ ),
2160
+ 'pages' => array(
2161
+ 'type' => 'bool',
2162
+ 'default' => 'yes',
2163
+ 'name' => __( 'Pagination', 'su' ),
2164
+ 'desc' => __( 'Show pagination', 'su' )
2165
+ ),
2166
+ 'mousewheel' => array(
2167
+ 'type' => 'bool',
2168
+ 'default' => 'yes', 'name' => __( 'Mouse wheel control', 'su' ),
2169
+ 'desc' => __( 'Allow to change slides with mouse wheel', 'su' )
2170
+ ),
2171
+ 'autoplay' => array(
2172
+ 'type' => 'number',
2173
+ 'min' => 0,
2174
+ 'max' => 100000,
2175
+ 'step' => 100,
2176
+ 'default' => 5000,
2177
+ 'name' => __( 'Autoplay', 'su' ),
2178
+ 'desc' => __( 'Choose interval between slide animations. Set to 0 to disable autoplay', 'su' )
2179
+ ),
2180
+ 'speed' => array(
2181
+ 'type' => 'number',
2182
+ 'min' => 0,
2183
+ 'max' => 20000,
2184
+ 'step' => 100,
2185
+ 'default' => 600,
2186
+ 'name' => __( 'Speed', 'su' ), 'desc' => __( 'Specify animation speed', 'su' )
2187
+ ),
2188
+ 'class' => array(
2189
+ 'default' => '',
2190
+ 'name' => __( 'Class', 'su' ),
2191
+ 'desc' => __( 'Extra CSS class', 'su' )
2192
+ )
2193
+ ),
2194
+ 'desc' => __( 'Customizable image slider', 'su' ),
2195
+ 'icon' => 'picture-o'
2196
+ ),
2197
+ // carousel
2198
+ 'carousel' => array(
2199
+ 'name' => __( 'Carousel', 'su' ),
2200
+ 'type' => 'single',
2201
+ 'group' => 'gallery',
2202
+ 'atts' => array(
2203
+ 'source' => array(
2204
+ 'type' => 'image_source',
2205
+ 'default' => 'none',
2206
+ 'name' => __( 'Source', 'su' ),
2207
+ 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2208
+ ),
2209
+ 'limit' => array(
2210
+ 'type' => 'slider',
2211
+ 'min' => -1,
2212
+ 'max' => 100,
2213
+ 'step' => 1,
2214
+ 'default' => 20,
2215
+ 'name' => __( 'Limit', 'su' ),
2216
+ 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2217
+ ),
2218
+ 'link' => array(
2219
+ 'type' => 'select',
2220
+ 'values' => array(
2221
+ 'none' => __( 'None', 'su' ),
2222
+ 'image' => __( 'Full-size image', 'su' ),
2223
+ 'lightbox' => __( 'Lightbox', 'su' ),
2224
+ 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2225
+ 'attachment' => __( 'Attachment page', 'su' ),
2226
+ 'post' => __( 'Post permalink', 'su' )
2227
+ ),
2228
+ 'default' => 'none',
2229
+ 'name' => __( 'Links', 'su' ),
2230
+ 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2231
+ ),
2232
+ 'target' => array(
2233
+ 'type' => 'select',
2234
+ 'values' => array(
2235
+ 'self' => __( 'Same window', 'su' ),
2236
+ 'blank' => __( 'New window', 'su' )
2237
+ ),
2238
+ 'default' => 'self',
2239
+ 'name' => __( 'Links target', 'su' ),
2240
+ 'desc' => __( 'Open links in', 'su' )
2241
+ ),
2242
+ 'width' => array(
2243
+ 'type' => 'slider',
2244
+ 'min' => 100,
2245
+ 'max' => 1600,
2246
+ 'step' => 20,
2247
+ 'default' => 600,
2248
+ 'name' => __( 'Width', 'su' ),
2249
+ 'desc' => __( 'Carousel width (in pixels)', 'su' )
2250
+ ),
2251
+ 'height' => array(
2252
+ 'type' => 'slider',
2253
+ 'min' => 20,
2254
+ 'max' => 1600,
2255
+ 'step' => 20,
2256
+ 'default' => 100,
2257
+ 'name' => __( 'Height', 'su' ),
2258
+ 'desc' => __( 'Carousel height (in pixels)', 'su' )
2259
+ ),
2260
+ 'responsive' => array(
2261
+ 'type' => 'bool',
2262
+ 'default' => 'yes',
2263
+ 'name' => __( 'Responsive', 'su' ),
2264
+ 'desc' => __( 'Ignore width and height parameters and make carousel responsive', 'su' )
2265
+ ),
2266
+ 'items' => array(
2267
+ 'type' => 'number',
2268
+ 'min' => 1,
2269
+ 'max' => 20,
2270
+ 'step' => 1,
2271
+ 'default' => 3,
2272
+ 'name' => __( 'Items to show', 'su' ),
2273
+ 'desc' => __( 'How much carousel items is visible', 'su' )
2274
+ ),
2275
+ 'scroll' => array(
2276
+ 'type' => 'number',
2277
+ 'min' => 1,
2278
+ 'max' => 20,
2279
+ 'step' => 1, 'default' => 1,
2280
+ 'name' => __( 'Scroll number', 'su' ),
2281
+ 'desc' => __( 'How much items are scrolled in one transition', 'su' )
2282
+ ),
2283
+ 'title' => array(
2284
+ 'type' => 'bool',
2285
+ 'default' => 'yes',
2286
+ 'name' => __( 'Show titles', 'su' ), 'desc' => __( 'Display titles for each item', 'su' )
2287
+ ),
2288
+ 'centered' => array(
2289
+ 'type' => 'bool',
2290
+ 'default' => 'yes',
2291
+ 'name' => __( 'Center', 'su' ), 'desc' => __( 'Is carousel centered on the page', 'su' )
2292
+ ),
2293
+ 'arrows' => array(
2294
+ 'type' => 'bool',
2295
+ 'default' => 'yes',
2296
+ 'name' => __( 'Arrows', 'su' ), 'desc' => __( 'Show left and right arrows', 'su' )
2297
+ ),
2298
+ 'pages' => array(
2299
+ 'type' => 'bool',
2300
+ 'default' => 'no',
2301
+ 'name' => __( 'Pagination', 'su' ),
2302
+ 'desc' => __( 'Show pagination', 'su' )
2303
+ ),
2304
+ 'mousewheel' => array(
2305
+ 'type' => 'bool',
2306
+ 'default' => 'yes', 'name' => __( 'Mouse wheel control', 'su' ),
2307
+ 'desc' => __( 'Allow to rotate carousel with mouse wheel', 'su' )
2308
+ ),
2309
+ 'autoplay' => array(
2310
+ 'type' => 'number',
2311
+ 'min' => 0,
2312
+ 'max' => 100000,
2313
+ 'step' => 100,
2314
+ 'default' => 5000,
2315
+ 'name' => __( 'Autoplay', 'su' ),
2316
+ 'desc' => __( 'Choose interval between auto animations. Set to 0 to disable autoplay', 'su' )
2317
+ ),
2318
+ 'speed' => array(
2319
+ 'type' => 'number',
2320
+ 'min' => 0,
2321
+ 'max' => 20000,
2322
+ 'step' => 100,
2323
+ 'default' => 600,
2324
+ 'name' => __( 'Speed', 'su' ), 'desc' => __( 'Specify animation speed', 'su' )
2325
+ ),
2326
+ 'class' => array(
2327
+ 'default' => '',
2328
+ 'name' => __( 'Class', 'su' ),
2329
+ 'desc' => __( 'Extra CSS class', 'su' )
2330
+ )
2331
+ ),
2332
+ 'desc' => __( 'Customizable image carousel', 'su' ),
2333
+ 'icon' => 'picture-o'
2334
+ ),
2335
+ // custom_gallery
2336
+ 'custom_gallery' => array(
2337
+ 'name' => __( 'Gallery', 'su' ),
2338
+ 'type' => 'single',
2339
+ 'group' => 'gallery',
2340
+ 'atts' => array(
2341
+ 'source' => array(
2342
+ 'type' => 'image_source',
2343
+ 'default' => 'none',
2344
+ 'name' => __( 'Source', 'su' ),
2345
+ 'desc' => __( 'Choose images source. You can use images from Media library or retrieve it from posts (thumbnails) posted under specified blog category. You can also pick any custom taxonomy', 'su' )
2346
+ ),
2347
+ 'limit' => array(
2348
+ 'type' => 'slider',
2349
+ 'min' => -1,
2350
+ 'max' => 100,
2351
+ 'step' => 1,
2352
+ 'default' => 20,
2353
+ 'name' => __( 'Limit', 'su' ),
2354
+ 'desc' => __( 'Maximum number of image source posts (for recent posts, category and custom taxonomy)', 'su' )
2355
+ ),
2356
+ 'link' => array(
2357
+ 'type' => 'select',
2358
+ 'values' => array(
2359
+ 'none' => __( 'None', 'su' ),
2360
+ 'image' => __( 'Full-size image', 'su' ),
2361
+ 'lightbox' => __( 'Lightbox', 'su' ),
2362
+ 'custom' => __( 'Slide link (added in media editor)', 'su' ),
2363
+ 'attachment' => __( 'Attachment page', 'su' ),
2364
+ 'post' => __( 'Post permalink', 'su' )
2365
+ ),
2366
+ 'default' => 'none',
2367
+ 'name' => __( 'Links', 'su' ),
2368
+ 'desc' => __( 'Select which links will be used for images in this gallery', 'su' )
2369
+ ),
2370
+ 'target' => array(
2371
+ 'type' => 'select',
2372
+ 'values' => array(
2373
+ 'self' => __( 'Same window', 'su' ),
2374
+ 'blank' => __( 'New window', 'su' )
2375
+ ),
2376
+ 'default' => 'self',
2377
+ 'name' => __( 'Links target', 'su' ),
2378
+ 'desc' => __( 'Open links in', 'su' )
2379
+ ),
2380
+ 'width' => array(
2381
+ 'type' => 'slider',
2382
+ 'min' => 10,
2383
+ 'max' => 1600,
2384
+ 'step' => 10,
2385
+ 'default' => 90,
2386
+ 'name' => __( 'Width', 'su' ), 'desc' => __( 'Single item width (in pixels)', 'su' )
2387
+ ),
2388
+ 'height' => array(
2389
+ 'type' => 'slider',
2390
+ 'min' => 10,
2391
+ 'max' => 1600,
2392
+ 'step' => 10,
2393
+ 'default' => 90,
2394
+ 'name' => __( 'Height', 'su' ), 'desc' => __( 'Single item height (in pixels)', 'su' )
2395
+ ),
2396
+ 'title' => array(
2397
+ 'type' => 'select',
2398
+ 'values' => array(
2399
+ 'never' => __( 'Never', 'su' ),
2400
+ 'hover' => __( 'On mouse over', 'su' ),
2401
+ 'always' => __( 'Always', 'su' )
2402
+ ),
2403
+ 'default' => 'hover',
2404
+ 'name' => __( 'Show titles', 'su' ),
2405
+ 'desc' => __( 'Title display mode', 'su' )
2406
+ ),
2407
+ 'class' => array(
2408
+ 'default' => '',
2409
+ 'name' => __( 'Class', 'su' ),
2410
+ 'desc' => __( 'Extra CSS class', 'su' )
2411
+ )
2412
+ ),
2413
+ 'desc' => __( 'Customizable image gallery', 'su' ),
2414
+ 'icon' => 'picture-o'
2415
+ ),
2416
+ // posts
2417
+ 'posts' => array(
2418
+ 'name' => __( 'Posts', 'su' ),
2419
+ 'type' => 'single',
2420
+ 'group' => 'other',
2421
+ 'atts' => array(
2422
+ 'template' => array(
2423
+ 'default' => 'templates/default-loop.php', 'name' => __( 'Template', 'su' ),
2424
+ 'desc' => __( '<b>Do not change this field value if you do not understand description below.</b><br/>Relative path to the template file. Default templates is placed under the plugin directory (templates folder). You can copy it under your theme directory and modify as you want. You can use following default templates that already available in the plugin directory:<br/><b%value>templates/default-loop.php</b> - posts loop<br/><b%value>templates/teaser-loop.php</b> - posts loop with thumbnail and title<br/><b%value>templates/single-post.php</b> - single post template<br/><b%value>templates/list-loop.php</b> - unordered list with posts titles', 'su' )
2425
+ ),
2426
+ 'id' => array(
2427
+ 'default' => '',
2428
+ 'name' => __( 'Post ID\'s', 'su' ),
2429
+ 'desc' => __( 'Enter comma separated ID\'s of the posts that you want to show', 'su' )
2430
+ ),
2431
+ 'posts_per_page' => array(
2432
+ 'type' => 'number',
2433
+ 'min' => -1,
2434
+ 'max' => 10000,
2435
+ 'step' => 1,
2436
+ 'default' => get_option( 'posts_per_page' ),
2437
+ 'name' => __( 'Posts per page', 'su' ),
2438
+ 'desc' => __( 'Specify number of posts that you want to show. Enter -1 to get all posts', 'su' )
2439
+ ),
2440
+ 'post_type' => array(
2441
+ 'type' => 'select',
2442
+ 'multiple' => true,
2443
+ 'values' => Su_Tools::get_types(),
2444
+ 'default' => 'post',
2445
+ 'name' => __( 'Post types', 'su' ),
2446
+ 'desc' => __( 'Select post types. Hold Ctrl key to select multiple post types', 'su' )
2447
+ ),
2448
+ 'taxonomy' => array(
2449
+ 'type' => 'select',
2450
+ 'values' => Su_Tools::get_taxonomies(),
2451
+ 'default' => 'category',
2452
+ 'name' => __( 'Taxonomy', 'su' ),
2453
+ 'desc' => __( 'Select taxonomy to show posts from', 'su' )
2454
+ ),
2455
+ 'tax_term' => array(
2456
+ 'type' => 'select',
2457
+ 'multiple' => true,
2458
+ 'values' => Su_Tools::get_terms( 'category' ),
2459
+ 'default' => '',
2460
+ 'name' => __( 'Terms', 'su' ),
2461
+ 'desc' => __( 'Select terms to show posts from', 'su' )
2462
+ ),
2463
+ 'tax_operator' => array(
2464
+ 'type' => 'select',
2465
+ 'values' => array( 'IN', 'NOT IN', 'AND' ),
2466
+ 'default' => 'IN', 'name' => __( 'Taxonomy term operator', 'su' ),
2467
+ 'desc' => __( 'IN - posts that have any of selected categories terms<br/>NOT IN - posts that is does not have any of selected terms<br/>AND - posts that have all selected terms', 'su' )
2468
+ ),
2469
+ // 'author' => array(
2470
+ // 'type' => 'select',
2471
+ // 'multiple' => true,
2472
+ // 'values' => Su_Tools::get_users(),
2473
+ // 'default' => 'default',
2474
+ // 'name' => __( 'Authors', 'su' ),
2475
+ // 'desc' => __( 'Choose the authors whose posts you want to show. Enter here comma-separated list of users (IDs). Example: 1,7,18', 'su' )
2476
+ // ),
2477
+ 'author' => array(
2478
+ 'default' => '',
2479
+ 'name' => __( 'Authors', 'su' ),
2480
+ 'desc' => __( 'Enter here comma-separated list of author\'s IDs. Example: 1,7,18', 'su' )
2481
+ ),
2482
+ 'meta_key' => array(
2483
+ 'default' => '',
2484
+ 'name' => __( 'Meta key', 'su' ),
2485
+ 'desc' => __( 'Enter meta key name to show posts that have this key', 'su' )
2486
+ ),
2487
+ 'offset' => array(
2488
+ 'type' => 'number',
2489
+ 'min' => 0,
2490
+ 'max' => 10000,
2491
+ 'step' => 1, 'default' => 0,
2492
+ 'name' => __( 'Offset', 'su' ),
2493
+ 'desc' => __( 'Specify offset to start posts loop not from first post', 'su' )
2494
+ ),
2495
+ 'order' => array(
2496
+ 'type' => 'select',
2497
+ 'values' => array(
2498
+ 'desc' => __( 'Descending', 'su' ),
2499
+ 'asc' => __( 'Ascending', 'su' )
2500
+ ),
2501
+ 'default' => 'DESC',
2502
+ 'name' => __( 'Order', 'su' ),
2503
+ 'desc' => __( 'Posts order', 'su' )
2504
+ ),
2505
+ 'orderby' => array(
2506
+ 'type' => 'select',
2507
+ 'values' => array(
2508
+ 'none' => __( 'None', 'su' ),
2509
+ 'id' => __( 'Post ID', 'su' ),
2510
+ 'author' => __( 'Post author', 'su' ),
2511
+ 'title' => __( 'Post title', 'su' ),
2512
+ 'name' => __( 'Post slug', 'su' ),
2513
+ 'date' => __( 'Date', 'su' ), 'modified' => __( 'Last modified date', 'su' ),
2514
+ 'parent' => __( 'Post parent', 'su' ),
2515
+ 'rand' => __( 'Random', 'su' ), 'comment_count' => __( 'Comments number', 'su' ),
2516
+ 'menu_order' => __( 'Menu order', 'su' ), 'meta_value' => __( 'Meta key values', 'su' ),
2517
+ ),
2518
+ 'default' => 'date',
2519
+ 'name' => __( 'Order by', 'su' ),
2520
+ 'desc' => __( 'Order posts by', 'su' )
2521
+ ),
2522
+ 'post_parent' => array(
2523
+ 'default' => '',
2524
+ 'name' => __( 'Post parent', 'su' ),
2525
+ 'desc' => __( 'Show childrens of entered post (enter post ID)', 'su' )
2526
+ ),
2527
+ 'post_status' => array(
2528
+ 'type' => 'select',
2529
+ 'values' => array(
2530
+ 'publish' => __( 'Published', 'su' ),
2531
+ 'pending' => __( 'Pending', 'su' ),
2532
+ 'draft' => __( 'Draft', 'su' ),
2533
+ 'auto-draft' => __( 'Auto-draft', 'su' ),
2534
+ 'future' => __( 'Future post', 'su' ),
2535
+ 'private' => __( 'Private post', 'su' ),
2536
+ 'inherit' => __( 'Inherit', 'su' ),
2537
+ 'trash' => __( 'Trashed', 'su' ),
2538
+ 'any' => __( 'Any', 'su' ),
2539
+ ),
2540
+ 'default' => 'publish',
2541
+ 'name' => __( 'Post status', 'su' ),
2542
+ 'desc' => __( 'Show only posts with selected status', 'su' )
2543
+ ),
2544
+ 'ignore_sticky_posts' => array(
2545
+ 'type' => 'bool',
2546
+ 'default' => 'no',
2547
+ 'name' => __( 'Ignore sticky', 'su' ),
2548
+ 'desc' => __( 'Select Yes to ignore posts that is sticked', 'su' )
2549
+ )
2550
+ ),
2551
+ 'desc' => __( 'Custom posts query with customizable template', 'su' ),
2552
+ 'icon' => 'th-list'
2553
+ ),
2554
+ // dummy_text
2555
+ 'dummy_text' => array(
2556
+ 'name' => __( 'Dummy text', 'su' ),
2557
+ 'type' => 'single',
2558
+ 'group' => 'content',
2559
+ 'atts' => array(
2560
+ 'what' => array(
2561
+ 'type' => 'select',
2562
+ 'values' => array(
2563
+ 'paras' => __( 'Paragraphs', 'su' ),
2564
+ 'words' => __( 'Words', 'su' ),
2565
+ 'bytes' => __( 'Bytes', 'su' ),
2566
+ ),
2567
+ 'default' => 'paras',
2568
+ 'name' => __( 'What', 'su' ),
2569
+ 'desc' => __( 'What to generate', 'su' )
2570
+ ),
2571
+ 'amount' => array(
2572
+ 'type' => 'slider',
2573
+ 'min' => 1,
2574
+ 'max' => 100,
2575
+ 'step' => 1,
2576
+ 'default' => 1,
2577
+ 'name' => __( 'Amount', 'su' ),
2578
+ 'desc' => __( 'How many items (paragraphs or words) to generate. Minimum words amount is 5', 'su' )
2579
+ ),
2580
+ 'cache' => array(
2581
+ 'type' => 'bool',
2582
+ 'default' => 'yes',
2583
+ 'name' => __( 'Cache', 'su' ),
2584
+ 'desc' => __( 'Generated text will be cached. Be careful with this option. If you disable it and insert many dummy_text shortcodes the page load time will be highly increased', 'su' )
2585
+ ),
2586
+ 'class' => array(
2587
+ 'default' => '',
2588
+ 'name' => __( 'Class', 'su' ),
2589
+ 'desc' => __( 'Extra CSS class', 'su' )
2590
+ )
2591
+ ),
2592
+ 'desc' => __( 'Text placeholder', 'su' ),
2593
+ 'icon' => 'text-height'
2594
+ ),
2595
+ // dummy_image
2596
+ 'dummy_image' => array(
2597
+ 'name' => __( 'Dummy image', 'su' ),
2598
+ 'type' => 'single',
2599
+ 'group' => 'content',
2600
+ 'atts' => array(
2601
+ 'width' => array(
2602
+ 'type' => 'slider',
2603
+ 'min' => 10,
2604
+ 'max' => 1600,
2605
+ 'step' => 10,
2606
+ 'default' => 500,
2607
+ 'name' => __( 'Width', 'su' ),
2608
+ 'desc' => __( 'Image width', 'su' )
2609
+ ),
2610
+ 'height' => array(
2611
+ 'type' => 'slider',
2612
+ 'min' => 10,
2613
+ 'max' => 1600,
2614
+ 'step' => 10,
2615
+ 'default' => 300,
2616
+ 'name' => __( 'Height', 'su' ),
2617
+ 'desc' => __( 'Image height', 'su' )
2618
+ ),
2619
+ 'theme' => array(
2620
+ 'type' => 'select',
2621
+ 'values' => array(
2622
+ 'any' => __( 'Any', 'su' ),
2623
+ 'abstract' => __( 'Abstract', 'su' ),
2624
+ 'animals' => __( 'Animals', 'su' ),
2625
+ 'business' => __( 'Business', 'su' ),
2626
+ 'cats' => __( 'Cats', 'su' ),
2627
+ 'city' => __( 'City', 'su' ),
2628
+ 'food' => __( 'Food', 'su' ),
2629
+ 'nightlife' => __( 'Night life', 'su' ),
2630
+ 'fashion' => __( 'Fashion', 'su' ),
2631
+ 'people' => __( 'People', 'su' ),
2632
+ 'nature' => __( 'Nature', 'su' ),
2633
+ 'sports' => __( 'Sports', 'su' ),
2634
+ 'technics' => __( 'Technics', 'su' ),
2635
+ 'transport' => __( 'Transport', 'su' )
2636
+ ),
2637
+ 'default' => 'any',
2638
+ 'name' => __( 'Theme', 'su' ),
2639
+ 'desc' => __( 'Select the theme for this image', 'su' )
2640
+ ),
2641
+ 'class' => array(
2642
+ 'default' => '',
2643
+ 'name' => __( 'Class', 'su' ),
2644
+ 'desc' => __( 'Extra CSS class', 'su' )
2645
+ )
2646
+ ),
2647
+ 'desc' => __( 'Image placeholder with random image', 'su' ),
2648
+ 'icon' => 'picture-o'
2649
+ ),
2650
+ // animate
2651
+ 'animate' => array(
2652
+ 'name' => __( 'Animation', 'su' ),
2653
+ 'type' => 'wrap',
2654
+ 'group' => 'other',
2655
+ 'atts' => array(
2656
+ 'type' => array(
2657
+ 'type' => 'select',
2658
+ 'values' => array_combine( self::animations(), self::animations() ),
2659
+ 'default' => 'bounceIn',
2660
+ 'name' => __( 'Animation', 'su' ),
2661
+ 'desc' => __( 'Select animation type', 'su' )
2662
+ ),
2663
+ 'duration' => array(
2664
+ 'type' => 'slider',
2665
+ 'min' => 0,
2666
+ 'max' => 20,
2667
+ 'step' => 0.5,
2668
+ 'default' => 1,
2669
+ 'name' => __( 'Duration', 'su' ),
2670
+ 'desc' => __( 'Animation duration (seconds)', 'su' )
2671
+ ),
2672
+ 'delay' => array(
2673
+ 'type' => 'slider',
2674
+ 'min' => 0,
2675
+ 'max' => 20,
2676
+ 'step' => 0.5,
2677
+ 'default' => 0,
2678
+ 'name' => __( 'Delay', 'su' ),
2679
+ 'desc' => __( 'Animation delay (seconds)', 'su' )
2680
+ ),
2681
+ 'inline' => array(
2682
+ 'type' => 'bool',
2683
+ 'default' => 'no',
2684
+ 'name' => __( 'Inline', 'su' ),
2685
+ 'desc' => __( 'This parameter determines what HTML tag will be used for animation wrapper. Turn this option to YES and animated element will be wrapped in SPAN instead of DIV. Useful for inline animations, like buttons', 'su' )
2686
+ ),
2687
+ 'class' => array(
2688
+ 'default' => '',
2689
+ 'name' => __( 'Class', 'su' ),
2690
+ 'desc' => __( 'Extra CSS class', 'su' )
2691
+ )
2692
+ ),
2693
+ 'content' => __( 'Animated content', 'su' ),
2694
+ 'desc' => __( 'Wrapper for animation. Any nested element will be animated', 'su' ),
2695
+ 'example' => 'animations',
2696
+ 'icon' => 'bolt'
2697
+ ),
2698
+ // meta
2699
+ 'meta' => array(
2700
+ 'name' => __( 'Meta', 'su' ),
2701
+ 'type' => 'single',
2702
+ 'group' => 'data',
2703
+ 'atts' => array(
2704
+ 'key' => array(
2705
+ 'default' => '',
2706
+ 'name' => __( 'Key', 'su' ),
2707
+ 'desc' => __( 'Meta key name', 'su' )
2708
+ ),
2709
+ 'default' => array(
2710
+ 'default' => '',
2711
+ 'name' => __( 'Default', 'su' ),
2712
+ 'desc' => __( 'This text will be shown if data is not found', 'su' )
2713
+ ),
2714
+ 'before' => array(
2715
+ 'default' => '',
2716
+ 'name' => __( 'Before', 'su' ),
2717
+ 'desc' => __( 'This content will be shown before the value', 'su' )
2718
+ ),
2719
+ 'after' => array(
2720
+ 'default' => '',
2721
+ 'name' => __( 'After', 'su' ),
2722
+ 'desc' => __( 'This content will be shown after the value', 'su' )
2723
+ ),
2724
+ 'post_id' => array(
2725
+ 'default' => '',
2726
+ 'name' => __( 'Post ID', 'su' ),
2727
+ 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2728
+ ),
2729
+ 'filter' => array(
2730
+ 'default' => '',
2731
+ 'name' => __( 'Filter', 'su' ),
2732
+ 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2733
+ )
2734
+ ),
2735
+ 'desc' => __( 'Post meta', 'su' ),
2736
+ 'icon' => 'info-circle'
2737
+ ),
2738
+ // user
2739
+ 'user' => array(
2740
+ 'name' => __( 'User', 'su' ),
2741
+ 'type' => 'single',
2742
+ 'group' => 'data',
2743
+ 'atts' => array(
2744
+ 'field' => array(
2745
+ 'type' => 'select',
2746
+ 'values' => array(
2747
+ 'display_name' => __( 'Display name', 'su' ),
2748
+ 'ID' => __( 'ID', 'su' ),
2749
+ 'user_login' => __( 'Login', 'su' ),
2750
+ 'user_nicename' => __( 'Nice name', 'su' ),
2751
+ 'user_email' => __( 'Email', 'su' ),
2752
+ 'user_url' => __( 'URL', 'su' ),
2753
+ 'user_registered' => __( 'Registered', 'su' ),
2754
+ 'user_activation_key' => __( 'Activation key', 'su' ),
2755
+ 'user_status' => __( 'Status', 'su' )
2756
+ ),
2757
+ 'default' => 'display_name',
2758
+ 'name' => __( 'Field', 'su' ),
2759
+ 'desc' => __( 'User data field name', 'su' )
2760
+ ),
2761
+ 'default' => array(
2762
+ 'default' => '',
2763
+ 'name' => __( 'Default', 'su' ),
2764
+ 'desc' => __( 'This text will be shown if data is not found', 'su' )
2765
+ ),
2766
+ 'before' => array(
2767
+ 'default' => '',
2768
+ 'name' => __( 'Before', 'su' ),
2769
+ 'desc' => __( 'This content will be shown before the value', 'su' )
2770
+ ),
2771
+ 'after' => array(
2772
+ 'default' => '',
2773
+ 'name' => __( 'After', 'su' ),
2774
+ 'desc' => __( 'This content will be shown after the value', 'su' )
2775
+ ),
2776
+ 'user_id' => array(
2777
+ 'default' => '',
2778
+ 'name' => __( 'User ID', 'su' ),
2779
+ 'desc' => __( 'You can specify custom user ID. Leave this field empty to use an ID of the current user', 'su' )
2780
+ ),
2781
+ 'filter' => array(
2782
+ 'default' => '',
2783
+ 'name' => __( 'Filter', 'su' ),
2784
+ 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2785
+ )
2786
+ ),
2787
+ 'desc' => __( 'User data', 'su' ),
2788
+ 'icon' => 'info-circle'
2789
+ ),
2790
+ // post
2791
+ 'post' => array(
2792
+ 'name' => __( 'Post', 'su' ),
2793
+ 'type' => 'single',
2794
+ 'group' => 'data',
2795
+ 'atts' => array(
2796
+ 'field' => array(
2797
+ 'type' => 'select',
2798
+ 'values' => array(
2799
+ 'ID' => __( 'Post ID', 'su' ),
2800
+ 'post_author' => __( 'Post author', 'su' ),
2801
+ 'post_date' => __( 'Post date', 'su' ),
2802
+ 'post_date_gmt' => __( 'Post date', 'su' ) . ' GMT',
2803
+ 'post_content' => __( 'Post content', 'su' ),
2804
+ 'post_title' => __( 'Post title', 'su' ),
2805
+ 'post_excerpt' => __( 'Post excerpt', 'su' ),
2806
+ 'post_status' => __( 'Post status', 'su' ),
2807
+ 'comment_status' => __( 'Comment status', 'su' ),
2808
+ 'ping_status' => __( 'Ping status', 'su' ),
2809
+ 'post_name' => __( 'Post name', 'su' ),
2810
+ 'post_modified' => __( 'Post modified', 'su' ),
2811
+ 'post_modified_gmt' => __( 'Post modified', 'su' ) . ' GMT',
2812
+ 'post_content_filtered' => __( 'Filtered post content', 'su' ),
2813
+ 'post_parent' => __( 'Post parent', 'su' ),
2814
+ 'guid' => __( 'GUID', 'su' ),
2815
+ 'menu_order' => __( 'Menu order', 'su' ),
2816
+ 'post_type' => __( 'Post type', 'su' ),
2817
+ 'post_mime_type' => __( 'Post mime type', 'su' ),
2818
+ 'comment_count' => __( 'Comment count', 'su' )
2819
+ ),
2820
+ 'default' => 'post_title',
2821
+ 'name' => __( 'Field', 'su' ),
2822
+ 'desc' => __( 'Post data field name', 'su' )
2823
+ ),
2824
+ 'default' => array(
2825
+ 'default' => '',
2826
+ 'name' => __( 'Default', 'su' ),
2827
+ 'desc' => __( 'This text will be shown if data is not found', 'su' )
2828
+ ),
2829
+ 'before' => array(
2830
+ 'default' => '',
2831
+ 'name' => __( 'Before', 'su' ),
2832
+ 'desc' => __( 'This content will be shown before the value', 'su' )
2833
+ ),
2834
+ 'after' => array(
2835
+ 'default' => '',
2836
+ 'name' => __( 'After', 'su' ),
2837
+ 'desc' => __( 'This content will be shown after the value', 'su' )
2838
+ ),
2839
+ 'post_id' => array(
2840
+ 'default' => '',
2841
+ 'name' => __( 'Post ID', 'su' ),
2842
+ 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2843
+ ),
2844
+ 'filter' => array(
2845
+ 'default' => '',
2846
+ 'name' => __( 'Filter', 'su' ),
2847
+ 'desc' => __( 'You can apply custom filter to the retrieved value. Enter here function name. Your function must accept one argument and return modified value. Example function: ', 'su' ) . "<br /><pre><code style='display:block;padding:5px'>function my_custom_filter( \$value ) {\n\treturn 'Value is: ' . \$value;\n}</code></pre>"
2848
+ )
2849
+ ),
2850
+ 'desc' => __( 'Post data', 'su' ),
2851
+ 'icon' => 'info-circle'
2852
+ ),
2853
+ // post_terms
2854
+ // 'post_terms' => array(
2855
+ // 'name' => __( 'Post terms', 'su' ),
2856
+ // 'type' => 'single',
2857
+ // 'group' => 'data',
2858
+ // 'atts' => array(
2859
+ // 'post_id' => array(
2860
+ // 'default' => '',
2861
+ // 'name' => __( 'Post ID', 'su' ),
2862
+ // 'desc' => __( 'You can specify custom post ID. Leave this field empty to use an ID of the current post. Current post ID may not work in Live Preview mode', 'su' )
2863
+ // ),
2864
+ // 'links' => array(
2865
+ // 'type' => 'bool',
2866
+ // 'default' => 'yes',
2867
+ // 'name' => __( 'Show links', 'su' ),
2868
+ // 'desc' => __( 'Show terms names as hyperlinks', 'su' )
2869
+ // ),
2870
+ // 'format' => array(
2871
+ // 'type' => 'select',
2872
+ // 'values' => array(
2873
+ // 'text' => __( 'Terms separated by commas', 'su' ),
2874
+ // 'br' => __( 'Terms separated by new lines', 'su' ),
2875
+ // 'ul' => __( 'Unordered list', 'su' ),
2876
+ // 'ol' => __( 'Ordered list', 'su' ),
2877
+ // ),
2878
+ // 'default' => 'text',
2879
+ // 'name' => __( 'Format', 'su' ),
2880
+ // 'desc' => __( 'Choose how to output the terms', 'su' )
2881
+ // ),
2882
+ // ),
2883
+ // 'desc' => __( 'Terms list', 'su' ),
2884
+ // 'icon' => 'info-circle'
2885
+ // ),
2886
+ // template
2887
+ 'template' => array(
2888
+ 'name' => __( 'Template', 'su' ),
2889
+ 'type' => 'single',
2890
+ 'group' => 'other',
2891
+ 'atts' => array(
2892
+ 'name' => array(
2893
+ 'default' => '',
2894
+ 'name' => __( 'Template name', 'su' ),
2895
+ 'desc' => sprintf( __( 'Use template file name (with optional .php extension). If you need to use templates from theme sub-folder, use relative path. Example values: %s, %s, %s', 'su' ), '<b%value>page</b>', '<b%value>page.php</b>', '<b%value>includes/page.php</b>' )
2896
+ )
2897
+ ),
2898
+ 'desc' => __( 'Theme template', 'su' ),
2899
+ 'icon' => 'puzzle-piece'
2900
+ ),
2901
+ // qrcode
2902
+ 'qrcode' => array(
2903
+ 'name' => __( 'QR code', 'su' ),
2904
+ 'type' => 'single',
2905
+ 'group' => 'content',
2906
+ 'atts' => array(
2907
+ 'data' => array(
2908
+ 'default' => '',
2909
+ 'name' => __( 'Data', 'su' ),
2910
+ 'desc' => __( 'The text to store within the QR code. You can use here any text or even URL', 'su' )
2911
+ ),
2912
+ 'title' => array(
2913
+ 'default' => '',
2914
+ 'name' => __( 'Title', 'su' ),
2915
+ 'desc' => __( 'Enter here short description. This text will be used in alt attribute of QR code', 'su' )
2916
+ ),
2917
+ 'size' => array(
2918
+ 'type' => 'slider',
2919
+ 'min' => 10,
2920
+ 'max' => 1000,
2921
+ 'step' => 10,
2922
+ 'default' => 200,
2923
+ 'name' => __( 'Size', 'su' ),
2924
+ 'desc' => __( 'Image width and height (in pixels)', 'su' )
2925
+ ),
2926
+ 'margin' => array(
2927
+ 'type' => 'slider',
2928
+ 'min' => 0,
2929
+ 'max' => 50,
2930
+ 'step' => 5,
2931
+ 'default' => 0,
2932
+ 'name' => __( 'Margin', 'su' ),
2933
+ 'desc' => __( 'Thickness of a margin (in pixels)', 'su' )
2934
+ ),
2935
+ 'align' => array(
2936
+ 'type' => 'select',
2937
+ 'values' => array(
2938
+ 'none' => __( 'None', 'su' ),
2939
+ 'left' => __( 'Left', 'su' ),
2940
+ 'center' => __( 'Center', 'su' ),
2941
+ 'right' => __( 'Right', 'su' ),
2942
+ ),
2943
+ 'default' => 'none',
2944
+ 'name' => __( 'Align', 'su' ),
2945
+ 'desc' => __( 'Choose image alignment', 'su' )
2946
+ ),
2947
+ 'link' => array(
2948
+ 'default' => '',
2949
+ 'name' => __( 'Link', 'su' ),
2950
+ 'desc' => __( 'You can make this QR code clickable. Enter here the URL', 'su' )
2951
+ ),
2952
+ 'target' => array(
2953
+ 'type' => 'select',
2954
+ 'values' => array(
2955
+ 'self' => __( 'Open link in same window/tab', 'su' ),
2956
+ 'blank' => __( 'Open link in new window/tab', 'su' ),
2957
+ ),
2958
+ 'default' => 'blank',
2959
+ 'name' => __( 'Link target', 'su' ),
2960
+ 'desc' => __( 'Select link target', 'su' )
2961
+ ),
2962
+ 'color' => array(
2963
+ 'type' => 'color',
2964
+ 'default' => '#000000',
2965
+ 'name' => __( 'Primary color', 'su' ),
2966
+ 'desc' => __( 'Pick a primary color', 'su' )
2967
+ ),
2968
+ 'background' => array(
2969
+ 'type' => 'color',
2970
+ 'default' => '#ffffff',
2971
+ 'name' => __( 'Background color', 'su' ),
2972
+ 'desc' => __( 'Pick a background color', 'su' )
2973
+ ),
2974
+ 'class' => array(
2975
+ 'default' => '',
2976
+ 'name' => __( 'Class', 'su' ),
2977
+ 'desc' => __( 'Extra CSS class', 'su' )
2978
+ )
2979
+ ),
2980
+ 'desc' => __( 'Advanced QR code generator', 'su' ),
2981
+ 'icon' => 'qrcode'
2982
+ ),
2983
+ // scheduler
2984
+ 'scheduler' => array(
2985
+ 'name' => __( 'Scheduler', 'su' ),
2986
+ 'type' => 'wrap',
2987
+ 'group' => 'other',
2988
+ 'atts' => array(
2989
+ 'time' => array(
2990
+ 'default' => '',
2991
+ 'name' => __( 'Time', 'su' ),
2992
+ 'desc' => sprintf( __( 'In this field you can specify one or more time ranges. Every day at this time the content of shortcode will be visible. %s %s %s - show content from 9:00 to 18:00 %s - show content from 9:00 to 13:00 and from 14:00 to 18:00 %s - example with minutes (content will be visible each day, 45 minutes) %s - example with seconds', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>9-18</b>', '<br><b%value>9-13, 14-18</b>', '<br><b%value>9:30-10:15</b>', '<br><b%value>9:00:00-17:59:59</b>' )
2993
+ ),
2994
+ 'days_week' => array(
2995
+ 'default' => '',
2996
+ 'name' => __( 'Days of the week', 'su' ),
2997
+ 'desc' => sprintf( __( 'In this field you can specify one or more days of the week. Every week at these days the content of shortcode will be visible. %s 0 - Sunday %s 1 - Monday %s 2 - Tuesday %s 3 - Wednesday %s 4 - Thursday %s 5 - Friday %s 6 - Saturday %s %s %s - show content from Monday to Friday %s - show content only at Sunday %s - show content at Sunday and from Wednesday to Friday', 'su' ), '<br><br>', '<br>', '<br>', '<br>', '<br>', '<br>', '<br>', '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1-5</b>', '<br><b%value>0</b>', '<br><b%value>0, 3-5</b>' )
2998
+ ),
2999
+ 'days_month' => array(
3000
+ 'default' => '',
3001
+ 'name' => __( 'Days of the month', 'su' ),
3002
+ 'desc' => sprintf( __( 'In this field you can specify one or more days of the month. Every month at these days the content of shortcode will be visible. %s %s %s - show content only at first day of month %s - show content from 1th to 5th %s - show content from 10th to 15th and from 20th to 25th', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1</b>', '<br><b%value>1-5</b>', '<br><b%value>10-15, 20-25</b>' )
3003
+ ),
3004
+ 'months' => array(
3005
+ 'default' => '',
3006
+ 'name' => __( 'Months', 'su' ),
3007
+ 'desc' => sprintf( __( 'In this field you can specify the month or months in which the content will be visible. %s %s %s - show content only in January %s - show content from February to June %s - show content in January, March and from May to July', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>1</b>', '<br><b%value>2-6</b>', '<br><b%value>1, 3, 5-7</b>' )
3008
+ ),
3009
+ 'years' => array(
3010
+ 'default' => '',
3011
+ 'name' => __( 'Years', 'su' ),
3012
+ 'desc' => sprintf( __( 'In this field you can specify the year or years in which the content will be visible. %s %s %s - show content only in 2014 %s - show content from 2014 to 2016 %s - show content in 2014, 2018 and from 2020 to 2022', 'su' ), '<br><br>', __( 'Examples (click to set)', 'su' ), '<br><b%value>2014</b>', '<br><b%value>2014-2016</b>', '<br><b%value>2014, 2018, 2020-2022</b>' )
3013
+ ),
3014
+ 'alt' => array(
3015
+ 'default' => '',
3016
+ 'name' => __( 'Alternative text', 'su' ),
3017
+ 'desc' => __( 'In this field you can type the text which will be shown if content is not visible at the current moment', 'su' )
3018
+ )
3019
+ ),
3020
+ 'content' => __( 'Scheduled content', 'su' ),
3021
+ 'desc' => __( 'Allows to show the content only at the specified time period', 'su' ),
3022
+ 'note' => __( 'This shortcode allows you to show content only at the specified time.', 'su' ) . '<br><br>' . __( 'Please pay special attention to the descriptions, which are located below each text field. It will save you a lot of time', 'su' ) . '<br><br>' . __( 'By default, the content of this shortcode will be visible all the time. By using fields below, you can add some limitations. For example, if you type 1-5 in the Days of the week field, content will be only shown from Monday to Friday. Using the same principles, you can limit content visibility from years to seconds.', 'su' ),
3023
+ 'icon' => 'clock-o'
3024
+ ),
3025
+ ) );
3026
+ // Return result
3027
+ return ( is_string( $shortcode ) ) ? $shortcodes[sanitize_text_field( $shortcode )] : $shortcodes;
3028
+ }
3029
+ }
3030
+
3031
+ class Shortcodes_Ultimate_Data extends Su_Data {
3032
+ function __construct() {
3033
+ parent::__construct();
3034
+ }
3035
+ }
inc/core/generator-views.php CHANGED
@@ -1,152 +1,152 @@
1
- <?php
2
- /**
3
- * Shortcode Generator
4
- */
5
- class Su_Generator_Views {
6
-
7
- /**
8
- * Constructor
9
- */
10
- function __construct() {}
11
-
12
- public static function text( $id, $field ) {
13
- $field = wp_parse_args( $field, array(
14
- 'default' => ''
15
- ) );
16
- $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" />';
17
- return $return;
18
- }
19
-
20
- public static function textarea( $id, $field ) {
21
- $field = wp_parse_args( $field, array(
22
- 'rows' => 3,
23
- 'default' => ''
24
- ) );
25
- $return = '<textarea name="' . $id . '" id="su-generator-attr-' . $id . '" rows="' . $field['rows'] . '" class="su-generator-attr">' . esc_textarea( $field['default'] ) . '</textarea>';
26
- return $return;
27
- }
28
-
29
- public static function select( $id, $field ) {
30
- // Multiple selects
31
- $multiple = ( isset( $field['multiple'] ) ) ? ' multiple' : '';
32
- $return = '<select name="' . $id . '" id="su-generator-attr-' . $id . '" class="su-generator-attr"' . $multiple . '>';
33
- // Create options
34
- foreach ( $field['values'] as $option_value => $option_title ) {
35
- // Is this option selected
36
- $selected = ( $field['default'] === $option_value ) ? ' selected="selected"' : '';
37
- // Create option
38
- $return .= '<option value="' . $option_value . '"' . $selected . '>' . $option_title . '</option>';
39
- }
40
- $return .= '</select>';
41
- return $return;
42
- }
43
-
44
- public static function bool( $id, $field ) {
45
- $return = '<span class="su-generator-switch su-generator-switch-' . $field['default'] . '"><span class="su-generator-yes">' . __( 'Yes', 'su' ) . '</span><span class="su-generator-no">' . __( 'No', 'su' ) . '</span></span><input type="hidden" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-switch-value" />';
46
- return $return;
47
- }
48
-
49
- public static function upload( $id, $field ) {
50
- $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-upload-value" /><div class="su-generator-field-actions"><a href="javascript:;" class="button su-generator-upload-button"><img src="' . admin_url( '/images/media-button.png' ) . '" alt="' . __( 'Media manager', 'su' ) . '" />' . __( 'Media manager', 'su' ) . '</a></div>';
51
- return $return;
52
- }
53
-
54
- public static function icon( $id, $field ) {
55
- $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-icon-picker-value" /><div class="su-generator-field-actions"><a href="javascript:;" class="button su-generator-upload-button su-generator-field-action"><img src="' . admin_url( '/images/media-button.png' ) . '" alt="' . __( 'Media manager', 'su' ) . '" />' . __( 'Media manager', 'su' ) . '</a> <a href="javascript:;" class="button su-generator-icon-picker-button su-generator-field-action"><img src="' . admin_url( '/images/media-button-other.gif' ) . '" alt="' . __( 'Icon picker', 'su' ) . '" />' . __( 'Icon picker', 'su' ) . '</a></div><div class="su-generator-icon-picker su-generator-clearfix"><input type="text" class="widefat" placeholder="' . __( 'Filter icons', 'su' ) . '" /></div>';
56
- return $return;
57
- }
58
-
59
- public static function color( $id, $field ) {
60
- $return = '<span class="su-generator-select-color"><span class="su-generator-select-color-wheel"></span><input type="text" name="' . $id . '" value="' . $field['default'] . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-select-color-value" /></span>';
61
- return $return;
62
- }
63
-
64
- public static function gallery( $id, $field ) {
65
- $shult = shortcodes_ultimate();
66
- // Prepare galleries list
67
- $galleries = $shult->get_option( 'galleries' );
68
- $created = ( is_array( $galleries ) && count( $galleries ) ) ? true : false;
69
- $return = '<select name="' . $id . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" data-loading="' . __( 'Please wait', 'su' ) . '">';
70
- // Check that galleries is set
71
- if ( $created ) // Create options
72
- foreach ( $galleries as $g_id => $gallery ) {
73
- // Is this option selected
74
- $selected = ( $g_id == 0 ) ? ' selected="selected"' : '';
75
- // Prepare title
76
- $gallery['name'] = ( $gallery['name'] == '' ) ? __( 'Untitled gallery', 'su' ) : stripslashes( $gallery['name'] );
77
- // Create option
78
- $return .= '<option value="' . ( $g_id + 1 ) . '"' . $selected . '>' . $gallery['name'] . '</option>';
79
- }
80
- // Galleries not created
81
- else
82
- $return .= '<option value="0" selected>' . __( 'Galleries not found', 'su' ) . '</option>';
83
- $return .= '</select><small class="description"><a href="' . $shult->admin_url . '#tab-3" target="_blank">' . __( 'Manage galleries', 'su' ) . '</a>&nbsp;&nbsp;&nbsp;<a href="javascript:;" class="su-generator-reload-galleries">' . __( 'Reload galleries', 'su' ) . '</a></small>';
84
- return $return;
85
- }
86
-
87
- public static function number( $id, $field ) {
88
- $return = '<input type="number" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" min="' . $field['min'] . '" max="' . $field['max'] . '" step="' . $field['step'] . '" class="su-generator-attr" />';
89
- return $return;
90
- }
91
-
92
- public static function slider( $id, $field ) {
93
- $return = '<div class="su-generator-range-picker su-generator-clearfix"><input type="number" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" min="' . $field['min'] . '" max="' . $field['max'] . '" step="' . $field['step'] . '" class="su-generator-attr" /></div>';
94
- return $return;
95
- }
96
-
97
- public static function shadow( $id, $field ) {
98
- $defaults = ( $field['default'] === 'none' ) ? array ( '0', '0', '0', '#000000' ) : explode( ' ', str_replace( 'px', '', $field['default'] ) );
99
- $return = '<div class="su-generator-shadow-picker"><span class="su-generator-shadow-picker-field"><input type="number" min="-1000" max="1000" step="1" value="' . $defaults[0] . '" class="su-generator-sp-hoff" /><small>' . __( 'Horizontal offset', 'su' ) . ' (px)</small></span><span class="su-generator-shadow-picker-field"><input type="number" min="-1000" max="1000" step="1" value="' . $defaults[1] . '" class="su-generator-sp-voff" /><small>' . __( 'Vertical offset', 'su' ) . ' (px)</small></span><span class="su-generator-shadow-picker-field"><input type="number" min="-1000" max="1000" step="1" value="' . $defaults[2] . '" class="su-generator-sp-blur" /><small>' . __( 'Blur', 'su' ) . ' (px)</small></span><span class="su-generator-shadow-picker-field su-generator-shadow-picker-color"><span class="su-generator-shadow-picker-color-wheel"></span><input type="text" value="' . $defaults[3] . '" class="su-generator-shadow-picker-color-value" /><small>' . __( 'Color', 'su' ) . '</small></span><input type="hidden" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" /></div>';
100
- return $return;
101
- }
102
-
103
- public static function border( $id, $field ) {
104
- $defaults = ( $field['default'] === 'none' ) ? array ( '0', 'solid', '#000000' ) : explode( ' ', str_replace( 'px', '', $field['default'] ) );
105
- $borders = Su_Tools::select( array(
106
- 'options' => Su_Data::borders(),
107
- 'class' => 'su-generator-bp-style',
108
- 'selected' => $defaults[1]
109
- ) );
110
- $return = '<div class="su-generator-border-picker"><span class="su-generator-border-picker-field"><input type="number" min="-1000" max="1000" step="1" value="' . $defaults[0] . '" class="su-generator-bp-width" /><small>' . __( 'Border width', 'su' ) . ' (px)</small></span><span class="su-generator-border-picker-field">' . $borders . '<small>' . __( 'Border style', 'su' ) . '</small></span><span class="su-generator-border-picker-field su-generator-border-picker-color"><span class="su-generator-border-picker-color-wheel"></span><input type="text" value="' . $defaults[2] . '" class="su-generator-border-picker-color-value" /><small>' . __( 'Border color', 'su' ) . '</small></span><input type="hidden" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" /></div>';
111
- return $return;
112
- }
113
-
114
- public static function image_source( $id, $field ) {
115
- $field = wp_parse_args( $field, array(
116
- 'default' => 'none'
117
- ) );
118
- $sources = Su_Tools::select( array(
119
- 'options' => array(
120
- 'media' => __( 'Media library', 'su' ),
121
- 'posts: recent' => __( 'Recent posts', 'su' ),
122
- 'category' => __( 'Category', 'su' ),
123
- 'taxonomy' => __( 'Taxonomy', 'su' )
124
- ),
125
- 'selected' => '0',
126
- 'none' => __( 'Select images source', 'su' ) . '&hellip;',
127
- 'class' => 'su-generator-isp-sources'
128
- ) );
129
- $categories = Su_Tools::select( array(
130
- 'options' => Su_Tools::get_terms( 'category' ),
131
- 'multiple' => true,
132
- 'size' => 10,
133
- 'class' => 'su-generator-isp-categories'
134
- ) );
135
- $taxonomies = Su_Tools::select( array(
136
- 'options' => Su_Tools::get_taxonomies(),
137
- 'none' => __( 'Select taxonomy', 'su' ) . '&hellip;',
138
- 'selected' => '0',
139
- 'class' => 'su-generator-isp-taxonomies'
140
- ) );
141
- $terms = Su_Tools::select( array(
142
- 'class' => 'su-generator-isp-terms',
143
- 'multiple' => true,
144
- 'size' => 10,
145
- 'disabled' => true,
146
- 'style' => 'display:none'
147
- ) );
148
- $return = '<div class="su-generator-isp">' . $sources . '<div class="su-generator-isp-source su-generator-isp-source-media"><div class="su-generator-clearfix"><a href="javascript:;" class="button button-primary su-generator-isp-add-media"><i class="fa fa-plus"></i>&nbsp;&nbsp;' . __( 'Add images', 'su' ) . '</a></div><div class="su-generator-isp-images su-generator-clearfix"><em class="description">' . __( 'Click the button above and select images.<br>You can select multimple images with Ctrl (Cmd) key', 'su' ) . '</em></div></div><div class="su-generator-isp-source su-generator-isp-source-category"><em class="description">' . __( 'Select categories to retrieve posts from.<br>You can select multiple categories with Ctrl (Cmd) key', 'su' ) . '</em>' . $categories . '</div><div class="su-generator-isp-source su-generator-isp-source-taxonomy"><em class="description">' . __( 'Select taxonomy and it\'s terms.<br>You can select multiple terms with Ctrl (Cmd) key', 'su' ) . '</em>' . $taxonomies . $terms . '</div><input type="hidden" name="' . $id . '" value="' . $field['default'] . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" /></div>';
149
- return $return;
150
- }
151
-
152
- }
1
+ <?php
2
+ /**
3
+ * Shortcode Generator
4
+ */
5
+ class Su_Generator_Views {
6
+
7
+ /**
8
+ * Constructor
9
+ */
10
+ function __construct() {}
11
+
12
+ public static function text( $id, $field ) {
13
+ $field = wp_parse_args( $field, array(
14
+ 'default' => ''
15
+ ) );
16
+ $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" />';
17
+ return $return;
18
+ }
19
+
20
+ public static function textarea( $id, $field ) {
21
+ $field = wp_parse_args( $field, array(
22
+ 'rows' => 3,
23
+ 'default' => ''
24
+ ) );
25
+ $return = '<textarea name="' . $id . '" id="su-generator-attr-' . $id . '" rows="' . $field['rows'] . '" class="su-generator-attr">' . esc_textarea( $field['default'] ) . '</textarea>';
26
+ return $return;
27
+ }
28
+
29
+ public static function select( $id, $field ) {
30
+ // Multiple selects
31
+ $multiple = ( isset( $field['multiple'] ) ) ? ' multiple' : '';
32
+ $return = '<select name="' . $id . '" id="su-generator-attr-' . $id . '" class="su-generator-attr"' . $multiple . '>';
33
+ // Create options
34
+ foreach ( $field['values'] as $option_value => $option_title ) {
35
+ // Is this option selected
36
+ $selected = ( $field['default'] === $option_value ) ? ' selected="selected"' : '';
37
+ // Create option
38
+ $return .= '<option value="' . $option_value . '"' . $selected . '>' . $option_title . '</option>';
39
+ }
40
+ $return .= '</select>';
41
+ return $return;
42
+ }
43
+
44
+ public static function bool( $id, $field ) {
45
+ $return = '<span class="su-generator-switch su-generator-switch-' . $field['default'] . '"><span class="su-generator-yes">' . __( 'Yes', 'su' ) . '</span><span class="su-generator-no">' . __( 'No', 'su' ) . '</span></span><input type="hidden" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-switch-value" />';
46
+ return $return;
47
+ }
48
+
49
+ public static function upload( $id, $field ) {
50
+ $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-upload-value" /><div class="su-generator-field-actions"><a href="javascript:;" class="button su-generator-upload-button"><img src="' . admin_url( '/images/media-button.png' ) . '" alt="' . __( 'Media manager', 'su' ) . '" />' . __( 'Media manager', 'su' ) . '</a></div>';
51
+ return $return;
52
+ }
53
+
54
+ public static function icon( $id, $field ) {
55
+ $return = '<input type="text" name="' . $id . '" value="' . esc_attr( $field['default'] ) . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-icon-picker-value" /><div class="su-generator-field-actions"><a href="javascript:;" class="button su-generator-upload-button su-generator-field-action"><img src="' . admin_url( '/images/media-button.png' ) . '" alt="' . __( 'Media manager', 'su' ) . '" />' . __( 'Media manager', 'su' ) . '</a> <a href="javascript:;" class="button su-generator-icon-picker-button su-generator-field-action"><img src="' . admin_url( '/images/media-button-other.gif' ) . '" alt="' . __( 'Icon picker', 'su' ) . '" />' . __( 'Icon picker', 'su' ) . '</a></div><div class="su-generator-icon-picker su-generator-clearfix"><input type="text" class="widefat" placeholder="' . __( 'Filter icons', 'su' ) . '" /></div>';
56
+ return $return;
57
+ }
58
+
59
+ public static function color( $id, $field ) {
60
+ $return = '<span class="su-generator-select-color"><span class="su-generator-select-color-wheel"></span><input type="text" name="' . $id . '" value="' . $field['default'] . '" id="su-generator-attr-' . $id . '" class="su-generator-attr su-generator-select-color-value" /></span>';
61
+ return $return;
62
+ }
63
+
64
+ public static function gallery( $id, $field ) {
65
+ $shult = shortcodes_ultimate();
66
+ // Prepare galleries list
67
+ $galleries = $shult->get_option( 'galleries' );
68
+ $created = ( is_array( $galleries ) && count( $galleries ) ) ? true : false;
69
+ $return = '<select name="' . $id . '" id="su-generator-attr-' . $id . '" class="su-generator-attr" data-loading="' . __( 'Please wait', 'su' ) . '">';
70
+ // Check that galleries is set
71
+ if ( $created ) // Create options
72
+ foreach ( $galleries as $g_id => $gallery ) {
73
+ // Is