WP Image Zoom - Version 1.12

Version Description

  • Feature: support for custom post type
Download this release

Release Info

Developer diana_burduja
Plugin Icon 128x128 WP Image Zoom
Version 1.12
Comparing to
See all releases

Version 1.12

assets/css/bootstrap.min.css ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap v3.3.4 (http://getbootstrap.com)
3
+ * Copyright 2011-2015 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+
7
+ /*!
8
+ * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=a029c53ecbca7e0801ba)
9
+ * Config saved to config.json and https://gist.github.com/a029c53ecbca7e0801ba
10
+ *//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;-webkit-box-shadow:none !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:hover,a:focus{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role="button"]{cursor:pointer}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:bold}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:34px}input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm,.input-group-sm input[type="date"],.input-group-sm input[type="time"],.input-group-sm input[type="datetime-local"],.input-group-sm input[type="month"]{line-height:30px}input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg,.input-group-lg input[type="date"],.input-group-lg input[type="time"],.input-group-lg input[type="datetime-local"],.input-group-lg input[type="month"]{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.form-group-sm .form-control{height:30px;line-height:30px}textarea.form-group-sm .form-control,select[multiple].form-group-sm .form-control{height:auto}.form-group-sm .form-control-static{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;min-height:32px}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.form-group-lg .form-control{height:46px;line-height:46px}textarea.form-group-lg .form-control,select[multiple].form-group-lg .form-control{height:auto}.form-group-lg .form-control-static{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;min-height:38px}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14.333333px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled.focus,.btn-default[disabled].focus,fieldset[disabled] .btn-default.focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled.focus,.btn-primary[disabled].focus,fieldset[disabled] .btn-primary.focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled.focus,.btn-success[disabled].focus,fieldset[disabled] .btn-success.focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled.focus,.btn-info[disabled].focus,fieldset[disabled] .btn-info.focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled.focus,.btn-warning[disabled].focus,fieldset[disabled] .btn-warning.focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled.focus,.btn-danger[disabled].focus,fieldset[disabled] .btn-danger.focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height, visibility;-o-transition-property:height, visibility;transition-property:height, visibility;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}.dropup,.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);-webkit-background-clip:padding-box;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width:768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a,.panel-title>small,.panel-title>.small,.panel-title>small>a,.panel-title>.small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);-webkit-background-clip:padding-box;background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.42857143px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.dl-horizontal dd:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width:767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width:767px){.visible-xs-block{display:block !important}}@media (max-width:767px){.visible-xs-inline{display:inline !important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width:1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width:1200px){.visible-lg-block{display:block !important}}@media (min-width:1200px){.visible-lg-inline{display:inline !important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width:767px){.hidden-xs{display:none !important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none !important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none !important}}@media (min-width:1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}
assets/css/style.min.css ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ h2 a:hover,h3 a.nav-tab:hover{text-decoration:none}@font-face{font-family:Raleway;font-style:normal;font-weight:400;src:local('Raleway'),local('Raleway-Regular'),url(https://fonts.gstatic.com/s/raleway/v11/0dTEPzkLWceF7z0koJaX1A.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215,U+E0FF,U+EFFD,U+F000}.btn-group>.btn.active,.input-group .form-control{z-index:auto}body{font-family:"Open Sans",sans-serif;background-color:#f1f1f1}.container_title,.steps,h2,label{font-family:Raleway}.wrap{float:left;width:70%;margin-right:3%}h2{font-weight:400}.btn-icon{height:50px}.control-label{text-align:right;padding:15px 10px 10px 0;height:50px}.margin-10{margin-top:10px}.icon-style-rect-1 .ndd-icon-main-element{width:44px;height:44px;border-radius:8px;background:rgba(0,0,0,.2)}input[type=color]{padding:0;width:50px}.tab-pane{width:90%;padding-top:10px}.input-group{width:200px}.btn-group-no-margin{margin-left:-15px!important}input[type=checkbox]{margin-top:0}.tooltip-inner{width:150px;background-color:#000;opacity:.8}.tooltip-arrow{opacity:.8}.panel-default{margin-top:8px}#right_column_metaboxes{width:25%;float:left;margin-top:70px}.main_container{background-color:#fff;margin-bottom:20px;border:1px solid #ddd;border-radius:5px;box-shadow:0 2px 1px -1px #ccc}.container_title{border-radius:5px 5px 0 0;background:#474747}h3{margin-top:0!important;padding:16px 16px 16px 20px;text-align:center;color:#fff;font-size:1.3em;margin:1em 0}#wpbody-content .metabox-holder{font-family:Raleway;padding:10px 15px 15px}#wpbody-content .metabox-holder.discount{background:url(../images/discount.png) 102% 102% no-repeat;background-size:50%}#wpbody-content .metabox-holder.rating{background:url(../images/rating.png) 100% 80% no-repeat;background-size:50%}.postbox{min-width:0;border-radius:5px;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.04);background:#fff;margin-bottom:20px;padding:0;line-height:1}.postbox .inside{margin:11px 0;position:relative;padding:0 12px 12px;line-height:1.4em;font-size:13px}#wpbody-content .metabox-holder p,.steps,label{font-size:15px}.form-horizontal{padding:20px}.form-horizontal .form-group{margin-left:0;margin-right:0}.form-group.disabled label,.form-group.disabled-short label{color:grey}#demo{border:1px solid #ccc}.steps{margin-bottom:4px}.steps .steps_nr{font-weight:700;padding-right:8px;color:#EF3D4A}.dashicons-yes{color:green}.image_zoom_promo{background-color:#bc1117;border:5px double #fff;text-align:center;margin:5px auto;width:96%;border-radius:10px;opacity:1!important}.input-group.input-group-checkbox{width:20px}.form-horizontal{float:left;width:100%}label{font-weight:400}.container_title:before{background:url(../images/icon.svg) no-repeat!important}#right_column_metaboxes a.button{color:#fff!important;border:none;box-shadow:none;vertical-align:middle;font-size:14px;height:32px;line-height:32px;padding:0 18px 1px;background:#bc1117!important;display:block-inline;text-align:center;margin:10px auto}h2{font-size:26px!important}h2 a{color:#23282d}h2 a:hover{color:#0073aa}h2 img{margin-bottom:4px}h3 .nav-tab{font-size:14px;line-height:22px;padding:10px 15px;border-radius:4px 4px 0 0;font-weight:400}
2
+
3
+ @font-face {
4
+ font-family: 'iz_fontello';
5
+ src: url('../fonts/fontello.eot?94869691');
6
+ src: url('../fonts/fontello.eot?94869691#iefix') format('embedded-opentype'),
7
+ url('../fonts/fontello.woff2?94869691') format('woff2'),
8
+ url('../fonts/fontello.woff?94869691') format('woff'),
9
+ url('../fonts/fontello.ttf?94869691') format('truetype'),
10
+ url('../fonts/fontello.svg?94869691#fontello') format('svg');
11
+ font-weight: normal;
12
+ font-style: normal;
13
+ }
14
+
15
+
16
+ [class^="icon-"]:before, [class*=" icon-"]:before {
17
+ font-family: "iz_fontello";
18
+ font-style: normal;
19
+ font-weight: normal;
20
+ speak: none;
21
+ display: inline-block;
22
+ text-decoration: inherit;
23
+ width: 1em;
24
+ text-align: center;
25
+ font-variant: normal;
26
+ text-transform: none;
27
+ line-height: 1em;
28
+ font-size: 32px;
29
+ color: #000;
30
+
31
+ /* Font smoothing. That was taken from TWBS */
32
+ -webkit-font-smoothing: antialiased;
33
+ -moz-osx-font-smoothing: grayscale;
34
+
35
+ }
36
+
37
+ [class^="icon-type_zoom_window"]:before, [class*=" icon-type_zoom_window"]:before {
38
+ font-size: 32px;
39
+ width: 60px;
40
+ }
41
+ [class^="icon-text_align"]:before, [class*=" icon-text_align"]:before {
42
+ font-size: 38px;
43
+ }
44
+
45
+ .icon-cursor_type_crosshair:before { content: '\e802'; } /* '' */
46
+ .icon-cursor_type_default:before { content: '\e803'; } /* '' */
47
+ .icon-cursor_type_move:before { content: '\e807'; } /* '' */
48
+ .icon-cursor_type_zoom:before { content: '\e808'; } /* '' */
49
+ .icon-lens_shape_circle:before { content: '\e809'; } /* '' */
50
+ .icon-lens_shape_square:before { content: '\e80a'; } /* '' */
51
+ .icon-question_mark:before { content: '\e80b'; } /* '' */
52
+ .icon-text_align_bottom_center:before { content: '\e80c'; } /* '' */
53
+ .icon-text_align_bottom_left:before { content: '\e80d'; } /* '' */
54
+ .icon-text_align_bottom_right:before { content: '\e80e'; } /* '' */
55
+ .icon-text_align_top_center:before { content: '\e80f'; } /* '' */
56
+ .icon-text_align_top_left:before { content: '\e810'; } /* '' */
57
+ .icon-text_align_top_right:before { content: '\e811'; } /* '' */
58
+ .icon-type_image_inline:before { content: '\e812'; } /* '' */
59
+ .icon-type_zoom_window:before { content: '\e813'; } /* '' */
60
+ .icon-type_zoom_window_left_bottom:before { content: '\e814'; } /* '' */
61
+ .icon-type_zoom_window_left_center:before { content: '\e815'; } /* '' */
62
+ .icon-type_zoom_window_left_top:before { content: '\e816'; } /* '' */
63
+ .icon-type_zoom_window_right_bottom:before { content: '\e817'; } /* '' */
64
+ .icon-type_zoom_window_right_center:before { content: '\e818'; } /* '' */
65
+ .icon-type_zoom_window_right_top:before { content: '\e819'; } /* '' */
66
+ .icon-zoom_level_2:before { content: '\e81a'; } /* '' */
67
+ .icon-zoom_level_3:before { content: '\e81b'; } /* '' */
68
+ .icon-zoom_level_15:before { content: '\e81c'; } /* '' */
69
+ .icon-zoom_level_25:before { content: '\e81d'; } /* '' */
70
+ .icon-zoom_level_default:before { content: '\e81e'; } /* '' */
71
+ .icon-cursor_type_pointer:before { content: '\e81f'; } /* '' */
72
+ .icon-lens_shape_none:before { content: '\e820'; } /* '' */
73
+ .icon-zoom-in:before { content: '\e821' !important; } /* '' */
assets/fonts/fontello.eot ADDED
Binary file
assets/fonts/fontello.svg ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata>Copyright (C) 2017 by original authors @ fontello.com</metadata>
5
+ <defs>
6
+ <font id="fontello" horiz-adv-x="1000" >
7
+ <font-face font-family="fontello" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
8
+ <missing-glyph horiz-adv-x="1000" />
9
+ <glyph glyph-name="cursor_type_crosshair" unicode="&#xe802;" d="M511 747c0-764 0-764 0-764m368 382l-736 0m332 360l50 0 0-750-48 0z m400-350l0-50-750 0 0 48z" horiz-adv-x="1000" />
10
+
11
+ <glyph glyph-name="cursor_type_default" unicode="&#xe803;" d="M305 695l0-620 193 104 122-175 103 50-117 183 171 86z" horiz-adv-x="1000" />
12
+
13
+ <glyph glyph-name="cursor_type_move" unicode="&#xe807;" d="M501 731l-112-112 88 0 0-245-246 0 0 88-111-112 111-112 0 88 246 0 0-245-88 0 112-112 110 112-88 0 0 245 247 0 0-88 110 112-110 112 0-88-247 0 0 245 88 0-110 112z" horiz-adv-x="1000" />
14
+
15
+ <glyph glyph-name="cursor_type_zoom" unicode="&#xe808;" d="M571 719c-176 0-320-143-320-320 0-74 26-143 69-197l-225-166a21 21 0 0 1-5-30l15-20a21 21 0 0 1 29-5l234 171c55-45 126-73 203-73 176 0 320 144 320 320 0 177-144 320-320 320z m0-47c151 0 270-122 270-273 0-150-119-273-270-273-151 0-273 123-273 273 0 151 122 273 273 273z m-24-125l0-124-124 0 0-47 124 0 0-124 48 0 0 124 124 0 0 47-124 0 0 124-48 0z" horiz-adv-x="1000" />
16
+
17
+ <glyph glyph-name="lens_shape_circle" unicode="&#xe809;" d="M500 751c-221 0-401-180-401-401 0-221 180-401 401-401 221 0 401 180 401 401 0 221-180 401-401 401z m0-50c194 0 351-157 351-351 0-194-157-351-351-351-194 0-351 157-351 351 0 194 157 351 351 351z" horiz-adv-x="1000" />
18
+
19
+ <glyph glyph-name="lens_shape_square" unicode="&#xe80a;" d="M166 666a24 24 0 0 1-20-24l0-583a24 24 0 0 1 24-25l660 0a24 24 0 0 1 24 25l0 583a24 24 0 0 1-24 24l-660 0a24 24 0 0 1-4 0z m29-48l611 0 0-536-611 0 0 536z" horiz-adv-x="1000" />
20
+
21
+ <glyph glyph-name="question_mark" unicode="&#xe80b;" d="M500 750c-213 0-385-179-385-400 0-221 172-400 385-400 213 0 385 179 385 400 0 221-172 400-385 400z m0-51c185 0 336-156 336-349 0-192-151-349-336-349-185 0-336 157-336 349 0 193 151 349 336 349z m6-85c-21 0-41-3-59-9-18-5-35-13-50-24-12-10-24-22-33-35-16-22-25-46-27-74-1-2-1-4-1-4 0 0 84-10 84-10 1 0 1 0 1 3 8 33 22 54 43 67 16 11 37 15 60 12 11-1 21-3 29-8 10-5 20-13 27-23 6-8 9-18 10-29 1-3 0-10 0-13-1-7-3-13-6-20-3-6-5-10-10-15-8-8-20-19-42-38-14-11-23-20-31-29-19-21-28-36-33-59-4-15-5-30-5-53 1-5 1-11 1-12v-1h83l0 9c0 13 1 22 2 30 2 13 6 20 15 31 7 7 15 15 27 26 18 16 31 28 43 41 19 19 29 33 36 48 6 13 9 25 10 38 0 4 0 13 0 16-2 28-12 53-32 76-3 4-10 12-14 15-19 18-41 30-68 37-16 4-31 6-51 7-3 0-6 0-9 0z m-42-415v-88h84v88h-84z" horiz-adv-x="1000" />
22
+
23
+ <glyph glyph-name="text_align_bottom_center" unicode="&#xe80c;" d="M91 668c-38 0-69-31-69-69l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 38-31 69-69 69l-818 0z m0-30l818 0c22 0 39-17 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 22 17 39 39 39z m209-378l123 0 0-16-52 0 0-129-19 0 0 129-52 0 0 16m201-86l0-9-82 0c0-12 4-22 11-28 6-7 16-10 28-10 6 0 13 1 20 2 6 2 13 5 19 8l0-17c-7-3-13-5-20-6-7-2-14-2-21-2-17 0-31 5-41 15-10 10-15 24-15 41 0 18 5 32 14 43 10 10 23 16 39 16 15 0 27-5 35-15 9-9 13-22 13-38m-18 5c0 10-3 18-8 24-5 5-13 8-21 8-10 0-19-3-25-8-6-6-9-14-10-24l64 0m135 45l-40-53 42-56-21 0-32 42-32-42-21 0 42 57-38 52 21 0 29-39 29 39 21 0m45 31l0-31 37 0 0-14-37 0 0-59c0-9 1-15 4-18 2-2 7-3 15-3l18 0 0-15-18 0c-14 0-24 2-29 7-5 5-8 15-8 29l0 59-13 0 0 14 13 0 0 31 18 0" horiz-adv-x="1000" />
24
+
25
+ <glyph glyph-name="text_align_bottom_left" unicode="&#xe80d;" d="M91 669c-38 0-69-31-69-68l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 37-31 68-69 68l-818 0z m0-29l818 0c22 0 39-18 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 21 17 39 39 39z m3-378l123 0 0-17-52 0 0-129-20 0 0 129-51 0 0 17m201-87l0-9-83 0c1-12 5-21 12-28 6-6 16-10 27-10 7 0 14 1 20 3 7 2 13 4 20 8l0-17c-7-3-13-5-20-7-7-1-14-2-21-2-17 0-31 5-41 15-10 11-15 24-15 42 0 17 4 32 14 42 10 11 23 16 39 16 15 0 27-5 35-14 9-10 13-23 13-39m-18 5c0 10-3 18-8 24-6 6-13 9-22 9-10 0-18-3-24-9-6-5-9-13-10-24l64 0m135 45l-40-53 42-56-21 0-32 43-32-43-21 0 42 57-39 52 22 0 29-39 29 39 21 0m45 31l0-31 37 0 0-14-37 0 0-59c0-9 1-15 4-17 2-3 7-4 15-4l18 0 0-15-18 0c-14 0-24 3-29 8-5 5-8 14-8 28l0 59-13 0 0 14 13 0 0 31 18 0" horiz-adv-x="1000" />
26
+
27
+ <glyph glyph-name="text_align_bottom_right" unicode="&#xe80e;" d="M91 670c-38 0-69-31-69-69l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 38-31 69-69 69l-818 0z m0-30l818 0c22 0 39-17 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 22 17 39 39 39z m407-378l124 0 0-17-52 0 0-129-20 0 0 129-52 0 0 17m202-87l0-8-83 0c1-13 4-22 11-29 7-6 16-9 28-9 7 0 14 0 20 2 6 2 13 4 19 8l0-17c-6-3-13-5-20-6-6-2-13-3-20-3-18 0-31 5-42 16-10 10-15 24-15 41 0 18 5 32 15 42 9 11 22 16 39 16 14 0 26-4 35-14 8-9 13-22 13-39m-18 6c-1 10-3 17-9 23-5 6-12 9-21 9-10 0-18-3-24-8-6-6-10-14-11-24l65 0m134 45l-39-54 41-56-21 0-32 43-31-43-22 0 43 57-39 53 21 0 29-39 29 39 21 0m46 31l0-31 37 0 0-14-37 0 0-60c0-9 1-14 3-17 3-2 8-4 15-4l19 0 0-15-19 0c-14 0-23 3-29 8-5 5-7 15-7 28l0 60-14 0 0 14 14 0 0 31 18 0" horiz-adv-x="1000" />
28
+
29
+ <glyph glyph-name="text_align_top_center" unicode="&#xe80f;" d="M91 669c-38 0-69-31-69-68l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 37-31 68-69 68l-818 0z m0-29l818 0c22 0 39-18 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 21 17 39 39 39z m209-60l123 0 0-17-52 0 0-129-19 0 0 129-52 0 0 17m201-87l0-9-82 0c0-12 4-21 11-28 6-6 16-10 28-10 6 0 13 1 20 3 6 2 13 4 19 8l0-17c-7-3-13-5-20-7-7-1-14-2-21-2-17 0-31 5-41 15-10 11-15 24-15 42 0 18 5 32 14 42 10 11 23 16 39 16 15 0 27-5 35-14 9-10 13-22 13-39m-18 6c0 9-3 17-8 23-5 6-13 9-21 9-10 0-19-3-25-9-6-5-9-13-10-24l64 0m135 45l-40-53 42-56-21 0-32 43-32-43-21 0 42 57-38 52 21 0 29-39 29 39 21 0m45 32l0-32 37 0 0-14-37 0 0-59c0-9 1-15 4-17 2-3 7-4 15-4l18 0 0-15-18 0c-14 0-24 3-29 8-5 5-8 14-8 28l0 59-13 0 0 14 13 0 0 32 18 0" horiz-adv-x="1000" />
30
+
31
+ <glyph glyph-name="text_align_top_left" unicode="&#xe810;" d="M91 669c-38 0-69-31-69-68l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 37-31 68-69 68l-818 0z m0-29l818 0c22 0 39-18 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 21 17 39 39 39z m3-56l123 0 0-17-52 0 0-129-20 0 0 129-51 0 0 17m201-87l0-9-83 0c1-12 5-21 12-28 6-6 16-10 27-10 7 0 14 1 20 3 7 2 13 4 20 8l0-17c-7-3-13-5-20-7-7-1-14-2-21-2-17 0-31 5-41 15-10 11-15 24-15 42 0 18 4 32 14 42 10 11 23 16 39 16 15 0 27-5 35-14 9-10 13-23 13-39m-18 5c0 10-3 18-8 24-6 6-13 9-22 9-10 0-18-3-24-9-6-5-9-13-10-24l64 0m135 45l-40-53 42-56-21 0-32 43-32-43-21 0 42 57-39 52 22 0 29-39 29 39 21 0m45 31l0-31 37 0 0-14-37 0 0-59c0-9 1-15 4-17 2-3 7-4 15-4l18 0 0-15-18 0c-14 0-24 3-29 8-5 5-8 14-8 28l0 59-13 0 0 14 13 0 0 31 18 0" horiz-adv-x="1000" />
32
+
33
+ <glyph glyph-name="text_align_top_right" unicode="&#xe811;" d="M91 669c-38 0-69-31-69-68l0-501c0-38 31-69 69-69l818 0c38 0 69 31 69 69l0 501c0 37-31 68-69 68l-818 0z m0-29l818 0c22 0 39-18 39-39l0-501c0-22-17-39-39-39l-818 0c-22 0-39 17-39 39l0 501c0 21 17 39 39 39z m407-44l124 0 0-17-52 0 0-129-20 0 0 129-52 0 0 17m202-87l0-9-83 0c1-12 4-22 11-28 7-7 16-10 28-10 7 0 14 1 20 3 6 1 13 4 19 7l0-17c-6-2-13-4-20-6-6-1-13-2-20-2-18 0-31 5-42 15-10 10-15 24-15 41 0 18 5 32 15 43 9 11 22 16 39 16 14 0 26-5 35-14 8-10 13-23 13-39m-18 5c-1 10-3 18-9 24-5 6-12 9-21 9-10 0-18-3-24-9-6-6-10-14-11-24l65 0m134 45l-39-53 41-56-21 0-32 43-31-43-22 0 43 57-39 52 21 0 29-39 29 39 21 0m46 31l0-31 37 0 0-14-37 0 0-59c0-9 1-15 3-17 3-3 8-4 15-4l19 0 0-15-19 0c-14 0-23 2-29 8-5 5-7 14-7 28l0 59-14 0 0 14 14 0 0 31 18 0" horiz-adv-x="1000" />
34
+
35
+ <glyph glyph-name="type_image_inline" unicode="&#xe812;" d="M142 847c-79 0-144-64-144-143l0-714c0-79 65-143 144-143l833 0c79 0 143 64 143 143l0 714c0 79-64 143-143 143l-833 0z m0-57l833 0c49 0 87-38 87-86l0-714c0-48-38-86-87-86l-833 0c-49 0-87 38-87 86l0 714c0 48 38 86 87 86z m232-199l-2-9 6-6 4-1 80 0 8 4 1 9-6 7-3 0-80 0z m160 0l-2-9 6-6 4-1 80 0 8 4 1 9-6 7-3 0-80 0z m160 0l-2-9 6-6 4-1 52 0 0-7 4-8 9-2 6 6 1 4 0 17-4 8-6 2-62 0z m-322-57l0-4 0-80 4-8 8-1 7 5 1 4 0 80-4 8-9 2z m383-43l-1-3 0-80 4-8 9-2 6 6 1 4 0 80-4 8-9 1z m-383-117l0-4 0-80 4-8 8-1 7 5 1 4 0 80-4 8-9 2z m383-43l-1-3 0-58-2 0-8-4-2-9 6-6 4-1 12 0 8 4 2 6 0 68-4 8-9 1z m-331-65l-2-9 6-6 4-1 80 0 8 4 1 9-6 7-3 0-80 0z m160 0l-2-9 6-6 4-1 80 0 8 4 1 9-6 7-3 0-80 0z m-25 224c-37 0-68-26-68-60 0-33 31-60 68-60 37 0 68 27 68 60 0 34-31 60-68 60z m0-12c31 0 55-22 55-48 0-25-24-47-55-47-31 0-55 22-55 47 0 26 24 48 55 48z m63-69l-7-7 56-46-8-7-56 45-6-8 60-47 3-3 3 3 15 13 4 4-4 3-60 50z" horiz-adv-x="1120" />
36
+
37
+ <glyph glyph-name="type_zoom_window" unicode="&#xe813;" d="M46 804a26 26 0 0 1-23-25l0-854a26 26 0 0 1 25-25l963 0a26 26 0 0 1 25 25l0 854a26 26 0 0 1-25 25l-963 0a26 26 0 0 1-2 0z m28-51l911 0 0-802-911 0 0 802z m296-185l-10 0 0-295 10-8 81 0 0 18-73 0 0 275 328 0 0-79 18 0 0 89-8 8-346 0z m336-285l-237 0 0-18 247 0 8 8 0 188-18 0z m387 500l-7 0 0-78 15 0 0 70 365 0 0 15-373 0z m388-8l373 0 0 15-373 0z m389 0l98 0 0-260 16 0 0 268-8 7-106 0z m-784-458l15 0 0 373-15 0z m882-190l16 0 0 373-16 0z m-882-54l7-8 145 0 0 16-137 0 0 220-15 0z m882 8l-327 0 0-16 335 0 8 8 0 38-16 0z m-715-16l373 0 0 16-373 0z m234 496c-68 0-126-57-126-129 0-73 58-130 126-130 69 0 127 57 127 130 0 72-58 129-127 129z m0-27c58 0 103-47 103-102 0-56-45-103-103-103-57 0-102 47-102 103 0 55 45 102 102 102z m101-144l-15-15 104-101-14-13-104 96-14-14 112-103 7-7 7 7 27 27 8 7-8 7-110 109z m-522 399l4-9 7 3-3 8z m-17-5l3-8 9 2-3 8z m-17-5l2-9 9 2-2 9z m-17-6l2-8 9 3-3 8z m-18-5l3-8 9 2-3 9z m-17-5l3-9 8 3-3 9z m-17-5l2-8 8 2-2 9z m-18-5l3-9 8 3-2 8z m-17-6l3-8 8 3-2 9z m-18-4l3-9 9 2-2 9z m-17-6l3-8 9 2-3 9z m-17-4l2-9 9 2-3 9z m-17-6l2-9 9 3-3 8z m-18-5l3-9 8 3-2 9z m-18-5l4-9 8 3-2 8z m-17-6l3-8 9 3-3 9z m-17-4l2-9 9 3-2 8z m-17-6l2-8 9 2-2 9z m-17-4l2-10 9 3-3 9z m-18-6l3-8 8 2-3 8z m-17-5l2-9 9 3-3 9z m-18-5l3-9 8 3-2 8z m-17-5l3-9 8 2-2 10z m-17-5l2-9 9 3-2 8z m-18-6l3-8 9 2-3 9z m-17-5l2-9 10 3-4 9z m-17-5l2-8 9 2-3 9z m-18-5l3-9 8 2-2 10z m-17-5l3-9 8 3-2 8z m-18-5l3-9 9 2-3 9z m-17-6l2-8 9 3-2 8z m-17-5l2-8 9 2-2 9z m-17-5l2-9 9 3-3 9z m-18-5l3-8 9 2-3 9z m-17-5l3-9 8 3-3 8z m-18-5l3-9 8 3-2 8z m-17-5l3-9 8 2-2 9z m-17-6l2-8 9 3-2 8z m-18-5l3-8 9 2-3 9z m-17-5l3-9 9 3-4 8z m-17-5l2-9 9 3-3 9z m-6-309l6-2 1 7-5 1z m12-3l5-2 2 7-5 1z m11-3l6-2 2 6-7 2z m12-3l6-2 1 5-6 2z m11-4l6-1 1 5-5 2z m12-3l6-1 1 5-5 2z m12-3l5-1 2 5-6 2z m11-3l6-1 2 5-7 2z m11-3l7-2 1 6-6 1z m12-3l6-2 1 6-5 1z m12-3l5-2 2 6-6 1z m12-3l5-3 2 6-6 2z m11-4l6-2 1 6-6 2z m11-3l6-2 2 6-6 2z m12-4l5-1 2 6-5 2z m12-3l5-1 2 6-6 2z m11-3l6-1 1 6-5 1z m11-3l7-2 1 6-6 2z m12-3l6-2 1 6-5 1z m12-3l5-2 2 6-6 1z m11-3l6-2 2 6-6 1z m11-3l7-2 1 5-6 2z m12-4l6-1 2 5-6 2z m12-3l5-1 2 5-6 2z m12-3l5-1 2 5-6 2z m11-3l6-2 1 6-5 1z m11-4l6-1 2 6-6 1z m12-3l6-2 2 7-6 1z m12-3l5-2 2 7-6 1z m11-3l6-2 1 6-5 2z m12-3l6-2 1 6-5 2z m11-3l6-2 2 5-6 3z m12-4l5-1 3 5-7 2z m11-3l6-1 2 5-6 2z m12-3l6-1 1 5-5 2z m11-3l6-2 2 6-6 1z m12-3l6-2 2 6-7 1z m12-3l5-2 2 6-6 1z m11-3l6-2 1 6-5 1z m12-3l5-2 2 5-5 2z m11-4l6-2 2 6-6 2z m12-4l6-1 1 6-6 2z m11-3l6-1 1 6-5 2z m12-3l6-1 1 6-5 1z m12-3l5-1 2 6-6 1z m11-3l6-2 2 6-7 2z m11-3l6-2 2 6-6 1z m12-3l6-2 1 6-5 1z m12-3l5-2 2 6-6 1z m11-4l6-1 2 5-7 2z m12-3l6-1 1 5-6 2z m11-3l6-1 1 5-5 2z m12-3l5-1 2 5-5 2z m12-3l5-2 2 6-6 1z m11-4l6-1 1 6-6 1z m11-3l7-2 1 7-6 1z m12-3l6-2 1 7-5 1z m12-3l5-2 2 6-6 2z m12-3l5-2 2 6-6 2z m10-4l7-1 1 5-6 3z m12-3l6-1 2 5-6 2z m12-3l5-1 2 5-6 2z m12-3l1-1 2 7-2 0z m1 559l2 0-2 9-1 0z m-19 5l2-8 9 1-2 9z m-18-3l2-9 9 2-2 9z m-17-3l1-9 9 2-2 8z m-18-3l1-10 9 3-1 8z m-18-3l1-10 10 2-2 9z m-18-4l2-9 9 2-2 9z m-18-3l2-9 9 2-2 8z m-18-4l2-8 9 1-2 9z m-18-3l2-9 9 2-1 9z m-17-3l2-9 8 1-1 10z m-18-4l2-8 8 1-1 10z m-18-3l2-8 9 1-2 9z m-18-3l2-9 9 2-1 9z m-18-3l2-9 9 2-1 9z m-17-3l2-10 8 2-1 9z m-18-4l2-9 8 2-1 9z m-18-3l2-9 9 2-2 8z m-18-3l2-9 9 2-1 8z m-18-3l3-10 8 3-1 8z m-17-4l2-9 8 2-1 9z m-18-3l2-9 8 1-1 10z m0-305l9-2 1 9-8 1z m18-3l9-2 1 10-8 1z m18-3l9-1 1 8-8 2z m18-3l9-1 1 9-9 1z m18-3l9-1 1 9-9 1z m17-2l10-2 1 9-9 1z m18-3l10-2 1 9-9 2z m18-3l10-1 0 8-8 2z m18-3l10-1 0 9-8 1z m18-3l9-2 1 10-8 1z m18-2l9-2 1 9-8 1z m18-3l9-2 1 9-8 1z m18-4l9 0 1 8-9 2z m17-2l10-1 1 8-9 2z m18-3l10-2 1 10-9 1z m18-2l10-2 1 9-9 1z m18-4l10-1 0 9-8 1z m18-3l9 0 1 8-8 2z m18-2l9-2 1 9-8 2z m18-3l9-2 1 10-8 1z m18-2l9-2 1 9-9 1z" horiz-adv-x="2000" />
38
+
39
+ <glyph glyph-name="type_zoom_window_left_bottom" unicode="&#xe814;" d="M969 752a24 24 0 0 1-21-23l0-757a24 24 0 0 1 23-24l937 0a24 24 0 0 1 23 24l0 757a24 24 0 0 1-23 23l-937 0a24 24 0 0 1-2 0z m26-47l889 0 0-710-889 0 0 710z m289-225l-9 0 0-260 9-9 94 0 0 17-86 0 0 244 320 0 0-58 17 0 0 66-8 9-337 0z m328-252l-218 0 0-17 227 0 8 9 0 177-17 0z m-1556 356l-7 0 0-90 14 0 0 83 339 0 0 14-346 0z m360-7l347 0 0 14-347 0z m361 0l131 0 0-202 14 0 0 209-8 7-137 0z m-728-444l14 0 0 346-14 0z m859-119l14 0 0 346-14 0z m-859-59l7-7 182 0 0 14-175 0 0 157-14 0z m859 7l-295 0 0-14 301 0 8 7 0 45-14 0z m-655-14l346 0 0 14-346 0z m183 453c-67 0-123-51-123-115 0-65 56-115 123-115 67 0 123 50 123 115 0 64-56 115-123 115z m0-24c56 0 100-42 100-91 0-50-44-91-100-91-56 0-100 41-100 91 0 49 44 91 100 91z m103-130l-13-14 102-89-14-12-103 87-12-15 109-91 6-5 7 6 27 23 8 7-8 7-109 96z m374 331l3-1 0 7-3 0z m8-1l7-1 0 6-6 0z m12-2l6-1 1 6-6 1z m12-1l6-1 1 6-6 1z m12-2l6-1 1 6-6 1z m12-2l6 0 1 5-6 2z m12-1l6-1 1 6-6 1z m12-2l6 0 0 5-5 2z m12-1l6-1 0 6-5 1z m12-2l6 0 1 5-6 1z m12-1l5-1 2 6-7 1z m12-2l6-1 1 7-7 0z m12-1l6-1 0 6-6 0z m11-2l7-1 0 7-6 0z m12-1l7-1 0 6-5 0z m12-2l6-1 1 6-6 1z m12-1l6-1 1 6-6 0z m13-2l5-1 1 6-6 1z m11-2l6 0 1 5-6 2z m12-1l6-1 1 6-6 1z m12-2l6 0 1 5-6 2z m12-1l6-1 1 6-6 1z m12-2l6 0 1 5-6 1z m12-1l6-1 1 6-7 1z m12-2l6-1 1 7-7 0z m12-1l6-1 0 6-5 0z m11-2l7-1 0 7-5 0z m13-1l6-1 0 6-5 0z m12-2l5-1 1 6-6 1z m12-1l5-1 2 6-7 0z m12-2l5-1 1 6-6 1z m11-2l6 0 1 5-6 1z m12-1l7-1 0 6-6 1z m12-2l6 0 1 5-6 2z m12-1l6-1 1 6-6 1z m12-2l6 0 1 5-6 1z m12-1l6-1 1 6-6 1z m12-2l6-1 1 6-6 1z m12-1l6-1 0 6-5 0z m12-2l6-1 0 7-5 0z m12-1l6-1 1 6-6 0z m12-2l5-1 2 6-7 1z m12-1l6-1 1 6-7 0z m12-2l6-1 0 6-6 1z m11-2l7 0 0 5-6 1z m12-1l7-1 0 6-6 1z m12-2l6 0 1 5-6 2z m12-1l6-1 1 6-6 1z m13-2l5 0 1 5-6 1z m11-1l6-1 1 6-6 1z m12-2l6-1 1 6-6 1z m12-1l6-1 1 6-6 0z m12-2l6-1 1 6-6 1z m12-1l6-2 1 7-6 0z m12-2l6-1 1 6-7 1z m12-1l6-1 1 6-7 0z m12-2l6-1 0 6-5 1z m11-2l7 0 0 5-5 1z m12-1l7-1 0 6-5 1z m13-2l5 0 1 5-6 1z m-6-272l2-6 6 3-2 6z m-13-5l3-6 6 3-3 6z m-12-4l2-6 6 2-2 7z m-13-5l2-6 6 2-2 7z m-13-4l2-7 7 2-3 7z m-13-5l3-7 6 3-2 6z m-12-5l2-6 7 2-3 7z m-13-5l2-6 7 3-3 6z m-13-4l3-6 6 2-2 6z m-12-5l2-6 7 2-3 6z m-13-4l2-7 6 2-1 6z m-13-5l3-7 6 3-3 6z m-12-5l2-6 6 2-2 6z m-13-5l2-6 6 2-2 7z m-13-4l3-7 6 2-3 7z m-12-5l2-6 6 2-2 6z m-13-5l2-6 7 2-3 6z m-13-5l2-6 7 3-3 6z m-13-4l3-7 6 3-2 6z m-12-5l2-6 7 2-3 7z m-13-5l2-6 7 2-2 7z m-13-4l3-7 6 3-2 6z m-12-5l2-7 7 3-3 6z m-13-5l2-6 6 3-1 6z m-13-5l3-6 6 3-3 6z m-12-4l2-6 6 2-2 6z m-13-5l2-6 7 2-3 6z m-13-4l3-7 6 2-3 7z m-12-5l2-7 6 3-2 6z m-13-5l2-6 7 2-3 7z m-13-5l2-6 7 2-2 7z m-13-4l3-6 6 1-2 7z m-12-5l2-6 7 2-3 6z m-13-5l2-6 7 2-2 6z m-13-5l3-6 6 3-2 6z m-12-4l2-7 7 3-3 6z m-13-5l2-6 6 2-1 7z m-13-4l3-7 6 2-3 7z m-12-5l2-7 6 3-2 6z m-13-5l2-7 7 3-3 6z m-13-5l3-6 6 3-2 6z m-12-4l2-7 6 3-2 6z m-13-5l3-6 6 2-3 6z m-13-5l2-6 7 2-2 6z m-13-4l3-7 6 3-2 6z m-12-5l2-7 7 3-3 6z m-13-5l2-6 7 2-2 7z m-13-5l3-6 6 2-2 7z m-12-4l2-7 7 2-3 7z m-13-5l2-7 7 3-2 6z m-13-5l3-6 6 2-2 7z m-12-5l2-6 6 3-2 6z m-13-4l3-6 6 2-3 6z m-13-5l3-6 6 2-2 6z m-12-4l2-7 6 2-2 6z m-7-4l2-6 1 1-3 6z m4 620l11-3 3 10-11 3z m21-6l10-3 3 10-10 3z m21-6l10-2 3 10-11 3z m21-6l10-2 3 10-10 3z m20-5l11-3 2 10-10 3z m21-6l10-3 4 11-11 3z m21-5l10-4 3 11-10 3z m21-6l10-3 3 10-11 3z m20-6l11-3 2 11-10 2z m21-6l11-2 2 10-10 3z m21-6l10-2 3 10-10 3z m21-5l10-3 3 10-11 3z m20-6l10-2 4 10-11 3z m21-5l11-4 2 11-10 3z m21-6l10-3 3 10-10 3z m20-6l11-3 3 11-11 2z m22-5l10-3 3 10-11 3z m20-7l10-2 3 10-10 3z m6-264l2-7 7 1-1 7z m-13-2l0-7 7 1 0 7z m-15-1l2-8 6 2 0 7z m-13-2l0-7 7 1-1 7z m-15-2l1-7 7 1 0 7z m-14-2l1-7 8 2-2 7z m-14-1l1-7 7 1 0 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l1-7 7 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l1-7 7 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l0-7 8 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l0-7 8 1-1 8z m-14-1l1-7 6 1 0 7z m-14-2l0-7 8 1-2 7z m-14-2l0-7 7 1 0 8z m-15-1l1-7 8 1-2 7z m-13-2l0-7 7 1 0 7z m-15-2l2-7 6 1-1 8z m-13-1l0-7 7 1-1 7z m-15-2l1-7 7 1-1 7z" horiz-adv-x="2000" />
40
+
41
+ <glyph glyph-name="type_zoom_window_left_center" unicode="&#xe815;" d="M969 752a24 24 0 0 1-21-23l0-757a24 24 0 0 1 23-24l937 0a24 24 0 0 1 23 24l0 757a24 24 0 0 1-23 23l-937 0a24 24 0 0 1-2 0z m26-47l889 0 0-710-889 0 0 710z m289-225l-9 0 0-260 9-9 94 0 0 17-86 0 0 244 320 0 0-58 17 0 0 66-8 9-337 0z m328-252l-218 0 0-17 227 0 8 9 0 177-17 0z m-1556 445l-7 0 0-90 14 0 0 82 339 0 0 15-346 0z m360-8l347 0 0 15-347 0z m361 0l131 0 0-201 14 0 0 209-8 7-137 0z m-728-443l14 0 0 347-14 0z m859-118l14 0 0 346-14 0z m-859-60l7-7 182 0 0 14-175 0 0 157-14 0z m859 7l-295 0 0-14 301 0 8 7 0 45-14 0z m-655-14l346 0 0 14-346 0z m183 453c-67 0-123-51-123-115 0-65 56-115 123-115 67 0 123 50 123 115 0 64-56 115-123 115z m0-24c56 0 100-42 100-91 0-50-44-91-100-91-56 0-100 41-100 91 0 49 44 91 100 91z m103-130l-13-14 101-89-13-11-103 85-12-14 109-91 6-5 7 5 27 24 8 8-8 6-109 96z m376 333l9-2 2 8-8 2z m17-4l8-3 3 8-9 3z m16-5l9-2 2 9-8 2z m17-4l8-2 2 8-8 2z m16-4l9-3 2 9-8 2z m17-5l8-2 2 9-8 1z m16-4l9-2 2 8-8 2z m17-4l8-2 2 8-8 2z m17-5l8-2 2 8-8 3z m16-4l9-2 1 8-8 3z m17-5l8-1 2 8-8 2z m17-3l8-3 2 8-9 3z m16-5l8-2 2 8-8 2z m17-4l8-3 2 9-8 2z m16-4l8-3 3 9-9 2z m17-5l8-2 2 8-8 2z m16-4l8-2 3 8-8 2z m17-5l8-1 2 8-8 2z m16-4l8-2 3 8-8 2z m17-4l8-2 2 8-8 2z m16-5l8-2 3 9-8 2z m17-4l8-2 2 8-8 3z m16-4l9-2 2 8-9 2z m17-4l8-3 2 8-8 3z m17-5l8-2 2 8-9 3z m16-4l9-2 1 8-8 2z m17-4l8-3 2 9-8 2z m16-5l9-2 2 9-9 1z m17-4l8-2 2 8-8 2z m16-4l9-2 2 8-8 2z m17-5l8-2 3 8-9 2z m16-4l9-2 2 8-8 3z m17-5l8-1 3 8-9 2z m16-3l9-3 2 8-8 3z m17-5l8-2 3 8-9 2z m16-4l9-3 2 9-8 2z m17-4l8-3 3 9-9 2z m17-5l8-2 2 8-8 2z m16-4l9-3 2 9-9 2z m17-5l8-1 2 8-8 2z m17-4l8-2 2 8-9 2z m16-4l9-2 1 8-8 2z m17-5l8-2 2 9-8 2z m-2-271l2-6 5 2-2 5z m-10-2l1-6 6 1-2 6z m-11-3l1-6 6 2-1 5z m-10-2l1-6 5 1-1 6z m-11-4l1-5 6 2-1 5z m-11-2l2-5 5 1-1 5z m-10-3l1-5 6 2-2 5z m-11-2l1-5 6 1-1 5z m-11-3l2-5 5 2-1 5z m-10-2l1-5 6 1-2 5z m-11-3l1-5 6 1-1 6z m-10-2l1-6 5 2-1 5z m-11-3l1-5 6 1-1 6z m-11-2l2-6 5 2-1 5z m-10-3l1-5 6 1-2 6z m-11-3l1-5 6 2-1 5z m-11-2l2-5 5 1-1 5z m-10-3l1-5 6 2-2 5z m-11-2l2-5 5 1-1 5z m-10-3l1-5 5 2-1 5z m-10-2l1-5 5 1-1 5z m-11-3l1-5 5 2-1 5z m-11-2l2-6 5 1-2 6z m-10-3l1-5 5 1-1 6z m-11-2l1-6 5 1-1 6z m-11-3l2-5 5 1-2 6z m-10-2l1-6 5 1-1 6z m-11-3l1-5 5 1-1 5z m-10-3l1-5 5 1-1 5z m-11-2l1-5 5 1-1 5z m-11-3l2-5 5 1-2 5z m-10-2l1-5 5 1-1 5z m-11-3l1-5 5 1-1 5z m-11-2l2-6 5 1-2 6z m-10-3l1-5 5 1-1 5z m-11-2l1-6 5 1-1 6z m-10-3l1-5 5 1-1 5z m-11-2l1-6 6 1-2 6z m-11-3l2-5 5 1-1 5z m-10-3l1-5 6 1-2 5z m-11-2l1-5 6 1-1 5z m-11-3l2-5 5 1-1 5z m-10-2l1-5 6 1-2 5z m-11-3l1-5 6 1-1 5z m-10-2l1-6 5 1-1 6z m-11-3l1-6 6 2-1 5z m-11-2l2-6 5 1-1 6z m-10-3l1-6 6 2-2 5z m-11-2l1-6 6 1-1 6z m-11-4l2-5 5 2-1 5z m-10-2l1-5 6 1-2 5z m-11-3l1-5 6 2-1 5z m-10-2l1-5 5 1-1 5z m-11-3l1-5 6 2-1 5z m-11-2l2-5 5 1-1 5z m-10-3l2-5 5 1-2 6z m-10-2l1-6 5 2-1 5z m-11-3l1-5 5 1-1 6z m-11-2l2-6 5 2-2 5z m-10-3l1-5 5 1-1 6z m-11-3l1-5 5 2-1 5z m-10-2l1-5 5 1-1 5z m-11-3l1-5 5 2-1 5z m-11-2l2-5 5 1-2 5z m-10-3l1-5 5 2-1 5z m-11-2l1-5 5 1-1 5z m1 522l10-3 2 10-10 3z m20-5l10-3 2 10-10 3z m20-5l10-3 3 10-10 3z m20-6l10-2 3 10-10 2z m20-5l10-2 3 10-10 2z m20-5l11-3 2 11-10 2z m21-6l10-2 2 10-10 2z m20-5l10-2 2 10-10 2z m20-5l11-3 2 10-10 3z m21-5l10-3 2 10-10 3z m20-5l10-3 2 10-10 3z m20-6l10-2 3 10-10 2z m20-5l10-2 3 10-10 2z m20-5l10-3 3 11-10 2z m21-5l10-3 2 10-10 3z m20-5l10-3 2 10-10 3z m20-6l10-3 3 10-11 4z m20-5l10-3 3 10-10 3z m20-5l2-1 2 10-1 1z m-8-262l2-10 10 3-2 9z m-20-5l3-10 10 3-3 10z m-19-5l2-9 10 2-3 10z m-20-4l2-10 10 2-2 10z m-19-5l2-10 9 2-1 10z m-20-5l2-10 10 2-2 10z m-20-5l3-10 9 3-2 10z m-20-5l3-10 10 3-3 10z m-19-5l2-9 10 2-2 10z m-20-4l2-10 10 2-2 10z m-20-5l3-10 10 2-3 10z m-19-4l2-10 10 2-3 9z m-20-5l3-10 10 2-3 10z m-19-5l2-10 10 2-3 10z m-20-5l2-10 10 3-2 9z m-20-5l3-10 9 3-2 10z m-20-5l3-9 10 2-3 10z m-19-4l2-10 10 2-2 10z m-20-5l2-10 10 2-2 10z" horiz-adv-x="2000" />
42
+
43
+ <glyph glyph-name="type_zoom_window_left_top" unicode="&#xe816;" d="M969 752a24 24 0 0 1-21-23l0-757a24 24 0 0 1 23-24l937 0a24 24 0 0 1 23 24l0 757a24 24 0 0 1-23 23l-937 0a24 24 0 0 1-2 0z m26-47l889 0 0-710-889 0 0 710z m289-225l-9 0 0-260 9-9 94 0 0 17-86 0 0 244 320 0 0-58 17 0 0 66-8 9-337 0z m328-252l-218 0 0-17 227 0 8 9 0 177-17 0z m-1556 517l-7 0 0-90 14 0 0 83 339 0 0 14-346 0z m360-7l347 0 0 14-347 0z m361 0l131 0 0-201 14 0 0 208-8 7-137 0z m-728-443l14 0 0 346-14 0z m859-119l14 0 0 346-14 0z m-859-59l7-8 182 0 0 15-175 0 0 156-14 0z m859 7l-295 0 0-15 301 0 8 8 0 45-14 0z m-655-15l346 0 0 15-346 0z m183 453c-67 0-123-50-123-115 0-64 56-115 123-115 67 0 123 51 123 115 0 65-56 115-123 115z m0-24c56 0 100-41 100-91 0-49-44-91-100-91-56 0-100 42-100 91 0 50 44 91 100 91z m103-129l-13-14 101-90-13-11-103 86-12-15 109-90 6-6 7 6 27 24 8 6-8 8-109 96z m381 335l9-4 4 10-9 4z m19-7l10-4 3 10-9 3z m19-7l10-4 3 9-9 4z m20-8l9-3 4 10-10 3z m18-7l10-3 3 9-9 4z m20-7l9-3 4 9-10 4z m19-7l9-4 4 10-10 3z m19-7l9-4 4 10-9 4z m19-7l10-3 3 9-10 4z m19-7l10-4 3 10-9 3z m19-7l10-4 3 10-9 3z m20-8l9-3 3 10-9 3z m18-6l10-4 4 10-10 3z m20-7l9-4 4 9-10 4z m19-8l10-3 3 9-10 4z m19-7l9-3 4 10-9 3z m19-7l10-3 3 9-10 4z m19-7l9-3 4 9-9 4z m19-7l10-4 4 10-10 3z m19-7l10-4 3 10-9 4z m20-7l9-4 4 10-10 3z m19-7l9-4 4 9-10 4z m19-8l9-3 4 10-10 3z m19-7l9-3 4 10-10 3z m19-6l10-4 3 9-9 4z m19-8l10-3 3 9-9 4z m20-7l9-4 4 10-10 4z m18-7l10-3 3 9-9 4z m20-7l9-3 4 9-10 4z m18-7l10-4 4 10-10 3z m20-7l9-4 4 10-9 3z m19-7l10-4 3 10-10 4z m19-7l10-4 3 10-9 3z m19-7l10-4 3 9-10 4z m19-8l10-3 3 10-9 3z m19-7l10-3 4 9-10 4z m20-7l9-3 4 9-10 4z m2-272l1-4 4 0-1 5z m-8-1l1-4 4 1-1 3z m-7-5l3 0 0 4-4 0z m-8 3l0-4 4 0-1 5z m-9-1l1-4 4 1-1 3z m-8-1l1-4 4 0 0 5z m-8-1l1-4 4 1 0 3z m-7-1l0-4 4 0-1 4z m-8-1l0-4 4 0-1 5z m-9-1l1-4 4 1 0 3z m-7-2l0-3 4 0 0 4z m-8 0l0-5 4 1 0 4z m-8-1l0-4 4 0 0 4z m-8-5l5 0-1 4-4 0z m-8 3l1-5 3 1 0 4z m-8-2l1-3 3 0 0 4z m-8-5l5 1-1 4-4 0z m-8 4l0-4 5 0-1 4z m-8-2l1-3 4 0-1 4z m-7-5l3 1 0 4-4 0z m-8 3l0-3 4 0-1 4z m-9-1l1-4 4 1-1 4z m-7-5l4 1-1 4-4 0z m-9 3l1-3 4 0 0 4z m-7-1l0-4 4 1-1 4z m-8-1l0-4 4 1-1 4z m-9-1l1-4 4 1 0 4z m-7-1l0-4 4 1 0 4z m-8-1l0-4 4 1 0 4z m-8-1l0-4 4 1-1 4z m-8-1l0-4 5 1-1 3z m-8-1l1-4 3 0 0 5z m-8-1l1-4 3 1 0 4z m-8-1l0-4 4 1 0 3z m-8-1l0-4 5 0-1 5z m-8-1l1-4 4 1-1 3z m-7-5l3 0 0 4-4 0z m-9 3l1-4 4 0-1 5z m-8-1l1-4 4 1-1 3z m-7-5l4 0-1 4-4 0z m-9 3l1-4 4 0 0 4z m-7-1l0-4 4 1-1 3z m-8-5l4 0-1 4-3 0z m-9 3l1-4 4 0 0 4z m-8-2l1-3 4 0 0 4z m-7 0l0-4 4 0 0 4z m-8-1l0-4 4 1-1 3z m-8-2l0-3 5 0-1 4z m-8 0l0-5 4 1 0 4z m-8-1l1-4 3 0 0 4z m-8-2l0-3 4 0 0 4z m-8 0l0-5 5 1-1 4z m-8-2l1-3 4 0-1 4z m-8-1l1-4 3 1 0 4z m-8 0l1-5 4 1-1 4z m-8-2l0-3 5 0-1 4z m-7-5l4 1-1 4-4 0z m-9 3l1-3 4 0 0 4z m-7-1l0-4 4 1-1 4z m-8-5l4 1-1 4-3 0z m-9 3l1-3 4 0-1 4z m-8-1l1-4 4 1 0 4z m-7-5l4 1 0 3-4 0z m-8 3l0-4 4 0-1 5z m-8-1l0-4 4 1 0 4z m-8-1l0-4 4 1 0 4z m-8-1l1-4 3 1 0 4z m-8-1l0-4 4 1 0 3z m-8-1l0-4 5 0-1 5z m-8-1l1-4 4 1-1 4z m-8-1l1-4 3 1 0 3z m-8-1l1-4 3 0 0 5z m-8-1l0-4 5 1-1 3z m-8-1l1-4 4 0-1 4z m-8-1l1-4 4 0 0 5z m-8-1l1-4 4 1-1 3z m-7-5l4 0-1 4-3 0z m-9 3l1-4 4 0-1 4z m-8-1l1-4 4 0 0 4z m-7-5l4 0 0 4-4 0z m-8 3l0-4 4 0-1 4z m-8-1l0-4 4 0 0 4z m-8-5l4 0 0 4-5 0z m-8 3l1-4 3 0 0 4z m-8-2l0-3 4 0 0 4z m-8 0l0-5 5 1-1 4z m-8-1l0-4 5 0-1 4z m-8-2l1-3 3 0 0 4z m-1 508l12-6 6 12-13 5z m25-11l12-6 5 13-12 5z m25-11l12-5 5 12-12 5z m24-10l13-6 5 13-12 5z m25-11l12-6 6 13-13 5z m25-11l12-5 6 12-13 5z m25-10l12-6 5 13-12 5z m24-11l12-5 6 12-12 5z m25-10l12-6 5 12-12 5z m25-11l12-6 5 13-12 5z m24-11l13-5 5 12-12 5z m25-10l12-6 6 13-13 5z m25-11l12-6 5 13-12 5z m25-11l12-5 5 12-12 5z m24-10l13-6 5 13-12 5z m14-269l2-7 7 1-1 7z m-13-2l0-7 7 1 0 7z m-15-1l2-8 6 2 0 7z m-13-2l0-7 7 1-1 7z m-15-2l1-7 7 1 0 7z m-14-2l1-7 8 2-2 7z m-14-1l1-7 7 1 0 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l1-7 7 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l1-7 7 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l1-7 7 2-1 7z m-14-1l0-7 8 1-1 7z m-14-2l1-7 7 1-1 7z m-14-2l0-7 8 1-1 8z m-14-1l1-7 6 1 0 7z m-14-2l0-7 8 1-2 7z m-14-2l0-7 7 1 0 8z m-15-1l1-7 8 1-2 7z m-13-2l0-7 7 1 0 7z m-15-2l2-7 6 1-1 8z m-13-1l0-7 7 1-1 7z m-15-2l1-7 7 1-1 7z" horiz-adv-x="2000" />
44
+
45
+ <glyph glyph-name="type_zoom_window_right_bottom" unicode="&#xe817;" d="M1011 752a24 24 0 0 0 22-23l0-757a24 24 0 0 0-24-24l-936 0a24 24 0 0 0-24 24l0 757a24 24 0 0 0 24 23l936 0a24 24 0 0 0 2 0z m-26-47l-889 0 0-710 889 0 0 710z m-289-225l9 0 0-260-9-9-93 0 0 17 85 0 0 244-320 0 0-58-17 0 0 66 8 9 337 0z m-328-252l218 0 0-17-227 0-8 9 0 177 17 0z m1556 356l7 0 0-90-14 0 0 83-339 0 0 14 346 0z m-360-7l-346 0 0 14 346 0z m-361 0l-130 0 0-202-15 0 0 209 8 7 137 0z m728-444l-14 0 0 346 14 0z m-858-119l-15 0 0 346 15 0z m858-59l-7-7-182 0 0 14 175 0 0 157 14 0z m-858 7l294 0 0-14-301 0-8 7 0 45 15 0z m655-14l-347 0 0 14 347 0z m-275 453c-67 0-123-51-123-115 0-65 56-115 123-115 67 0 123 50 123 115 0 64-56 115-123 115z m0-24c56 0 100-42 100-91 0-50-44-91-100-91-56 0-100 41-100 91 0 49 44 91 100 91z m103-130l-13-14 101-89-13-12-103 87-12-15 109-91 6-5 7 6 26 23 9 7-9 7-108 96z m-491 330l3 1-1 6-3 0z m-13 5l1-6 6 1-1 5z m-12-2l1-6 6 1-1 6z m-12-1l1-6 6 1-1 6z m-12-2l1-6 6 1 0 6z m-12-2l1-5 6 0-1 7z m-11-1l0-6 6 1-1 6z m-12-2l0-5 6 0-1 7z m-12-1l0-6 6 1-1 6z m-13-2l2-5 5 0 0 6z m-12-1l2-6 5 1 0 6z m-11-1l1-7 5 1 0 6z m-12-2l0-6 7 1-1 5z m-12-1l0-7 7 1-1 6z m-12-2l1-6 6 1-1 5z m-12-2l1-6 6 1-1 6z m-12-1l1-6 6 1-1 5z m-12-2l1-6 6 1-1 6z m-12-2l1-5 6 0-1 7z m-11-1l0-6 6 1-1 6z m-13-2l1-5 6 0-1 7z m-12-1l1-6 6 1-1 6z m-12-2l1-5 6 0 0 6z m-12-1l1-6 6 1 0 6z m-11-1l0-7 6 1 0 6z m-12-2l0-6 7 1-2 5z m-12-1l0-7 7 1-2 6z m-12-2l1-6 6 1-1 5z m-12-2l1-6 5 1 0 6z m-12-1l1-6 5 1 0 5z m-12-2l1-6 6 1-1 6z m-12-2l1-5 6 0-1 6z m-12-1l1-6 6 1-1 6z m-12-2l1-5 6 0-1 7z m-12-1l1-6 6 1-1 6z m-12-2l1-5 6 0 0 6z m-12-1l1-6 6 1-1 6z m-11-2l0-6 6 1-1 6z m-12-1l0-6 6 1-1 5z m-12-1l0-7 6 1-1 6z m-12-2l1-6 5 1 0 5z m-13-2l2-6 5 1 0 6z m-11-1l1-6 5 1 0 5z m-12-2l0-6 7 1-1 6z m-12-2l0-5 7 0-1 6z m-12-1l1-6 6 1-1 6z m-12-2l1-5 6 0-1 7z m-12-1l1-6 6 1-1 6z m-12-2l1-5 6 0-1 6z m-12-1l1-6 6 1-1 6z m-11-2l0-6 6 1-1 6z m-13-1l1-6 6 1-1 5z m-12-2l1-6 6 1-1 6z m-12-1l2-7 5 2 0 5z m-12-2l1-6 6 1 0 6z m-11-1l0-6 6 1 0 5z m-12-2l0-6 7 1-1 6z m-12-2l0-5 7 0-2 6z m-12-1l1-6 6 1-1 6z m-12-2l1-5 5 0 0 6z m4-280l6-3 3 6-7 3z m12-5l7-3 2 6-6 3z m13-5l6-2 3 6-7 3z m13-5l6-2 3 6-7 3z m12-5l7-2 2 7-6 2z m13-4l6-3 3 7-7 2z m13-5l6-2 2 6-6 3z m13-4l6-3 2 6-6 3z m12-5l6-2 3 6-6 2z m13-5l6-2 2 6-6 2z m13-5l6-2 2 7-6 1z m12-4l6-3 3 7-6 2z m13-5l6-2 2 6-6 2z m13-5l6-2 3 6-7 3z m12-5l7-2 2 7-6 2z m13-4l6-2 3 6-7 2z m13-5l6-2 2 6-6 2z m12-4l7-3 2 6-6 3z m13-5l6-3 3 7-7 2z m12-5l7-2 2 6-6 3z m14-5l6-2 2 6-6 3z m12-4l6-3 3 7-6 2z m13-5l6-3 2 7-6 2z m13-4l6-3 2 6-6 3z m12-5l6-3 3 6-6 3z m13-5l6-2 2 6-6 2z m13-5l6-2 2 6-6 2z m12-5l7-2 2 7-6 2z m13-4l6-3 3 7-7 2z m12-5l7-2 2 6-6 3z m13-5l7-2 2 6-6 3z m13-5l6-1 3 6-7 2z m12-4l7-2 2 6-6 2z m14-5l6-2 2 6-7 2z m12-4l6-3 3 6-6 3z m13-5l6-3 2 7-6 2z m13-5l6-2 2 6-6 3z m12-5l6-2 3 7-6 2z m13-4l6-3 2 7-6 2z m12-5l7-3 2 7-6 2z m13-4l7-3 2 6-6 3z m13-5l6-3 3 7-7 2z m12-5l7-2 2 6-6 2z m13-5l7-2 2 6-7 2z m13-4l6-3 3 7-7 2z m12-5l7-3 2 7-6 2z m14-5l6-2 2 6-7 3z m12-5l6-2 3 6-6 3z m13-5l6-2 2 7-6 2z m13-4l6-3 2 7-6 2z m12-5l6-2 3 6-6 3z m13-4l6-3 2 6-6 3z m12-5l7-2 2 6-6 2z m13-5l7-2 2 6-7 2z m13-5l6-2 3 7-7 1z m12-4l2-1 2 6-1 1z m-15 632l3-10 11 3-3 10z m-20-6l3-10 10 3-3 10z m-21-5l3-10 10 2-2 11z m-21-6l3-10 11 2-4 11z m-20-6l2-10 11 3-3 10z m-21-5l3-11 10 3-3 11z m-21-6l3-11 10 4-2 10z m-21-6l3-10 10 3-2 10z m-20-5l2-11 11 3-3 10z m-21-6l3-10 10 2-3 11z m-21-6l3-10 11 2-4 11z m-21-6l3-10 10 3-2 10z m-20-5l3-10 10 2-3 11z m-21-6l2-11 11 4-3 10z m-21-6l3-10 10 3-3 10z m-21-5l3-11 11 3-3 10z m-21-6l4-10 10 3-3 10z m-20-6l3-10 10 2-3 11z m-1-278l6-1 2 7-8 1z m14-2l7-1 0 7-6 1z m14-1l7-2 1 8-8 1z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-8 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l8-1 0 7-7 1z m14-1l7-2 2 7-8 2z m14-2l8-1 0 7-7 1z m15-2l6-1 1 7-7 1z m13-2l8-1 0 7-6 2z m15-1l7-1 0 7-7 1z m13-2l8-1 1 7-7 1z m15-2l7-1 0 7-7 2z m14-1l7-1 1 7-7 1z m14-2l7-1 0 7-6 1z m14-2l7-1 1 7-7 2z m14-1l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z" horiz-adv-x="2000" />
46
+
47
+ <glyph glyph-name="type_zoom_window_right_center" unicode="&#xe818;" d="M1011 752a24 24 0 0 0 22-23l0-757a24 24 0 0 0-24-24l-936 0a24 24 0 0 0-24 24l0 757a24 24 0 0 0 24 23l936 0a24 24 0 0 0 2 0z m-26-47l-889 0 0-710 889 0 0 710z m-289-225l9 0 0-260-9-9-93 0 0 17 85 0 0 244-320 0 0-58-17 0 0 66 8 9 337 0z m-328-252l218 0 0-17-227 0-8 9 0 177 17 0z m1556 445l7 0 0-90-14 0 0 82-339 0 0 15 346 0z m-360-8l-346 0 0 15 346 0z m-361 0l-130 0 0-201-15 0 0 209 8 7 137 0z m728-443l-14 0 0 347 14 0z m-858-118l-15 0 0 346 15 0z m858-60l-7-7-182 0 0 14 175 0 0 157 14 0z m-858 7l294 0 0-14-301 0-8 7 0 45 15 0z m655-14l-347 0 0 14 347 0z m-275 453c-67 0-123-51-123-115 0-65 56-115 123-115 67 0 123 50 123 115 0 64-56 115-123 115z m0-24c56 0 100-42 100-91 0-50-44-91-100-91-56 0-100 41-100 91 0 49 44 91 100 91z m103-130l-13-14 101-89-13-11-103 85-12-14 109-91 6-5 7 5 26 24 9 8-9 6-108 96z m-502 339l3-8 8 2-2 8z m-16-5l2-8 8 3-2 8z m-17-3l3-9 8 2-3 9z m-16-5l2-8 8 2-2 8z m-17-4l3-9 8 3-3 8z m-16-4l2-9 8 2-2 8z m-17-5l3-8 8 2-3 8z m-16-4l2-8 8 2-2 8z m-17-5l2-8 9 2-3 9z m-16-4l2-8 8 2-2 9z m-17-4l2-8 8 1-2 9z m-16-5l1-8 9 3-2 8z m-17-4l2-8 8 2-2 8z m-17-4l2-9 8 3-1 8z m-16-4l2-9 8 3-2 8z m-17-5l2-8 8 2-2 8z m-17-4l3-8 8 2-2 8z m-16-4l2-8 8 1-2 9z m-17-5l3-8 8 2-2 8z m-16-4l2-8 8 2-2 8z m-17-4l3-9 8 2-2 9z m-16-5l2-8 9 2-3 9z m-17-4l3-8 8 2-2 8z m-16-5l2-8 8 3-2 8z m-17-4l2-8 9 2-2 9z m-16-4l2-8 8 2-2 8z m-17-4l2-9 8 3-1 8z m-16-4l1-9 9 2-2 8z m-17-5l2-8 8 2-2 8z m-17-4l2-8 9 2-2 8z m-16-5l2-8 8 2-2 8z m-17-4l2-8 9 2-3 9z m-17-4l3-8 8 1-2 9z m-16-5l2-8 9 3-3 8z m-17-4l3-8 8 2-2 8z m-16-4l2-9 9 3-3 8z m-16-4l2-9 8 3-2 8z m-17-5l2-8 9 2-3 8z m-16-4l2-9 8 3-2 8z m-17-4l2-8 8 1-2 9z m-16-5l1-8 9 2-2 8z m-17-4l2-8 8 2-2 8z m-17-4l2-9 8 2-1 9z m5-282l5-2 2 6-5 1z m11-3l5-1 1 6-5 1z m11-2l5-2 1 6-5 1z m10-3l5-1 2 6-5 1z m10-2l6-2 1 5-5 2z m11-3l6-1 1 5-6 1z m11-2l5-2 1 5-5 2z m10-3l6-1 1 5-6 1z m11-2l5-2 2 5-6 2z m10-3l6-1 1 5-5 1z m11-3l6-1 1 5-6 2z m11-2l5-2 2 6-6 1z m10-3l6-1 1 5-5 2z m11-2l6-2 1 6-6 1z m11-3l5-1 1 5-5 2z m10-2l6-2 1 5-6 2z m11-3l5-1 2 5-6 1z m10-2l6-2 1 5-5 2z m11-3l6-1 1 5-6 1z m11-2l5-2 2 5-6 2z m10-3l5-1 2 5-5 1z m11-2l5-2 2 5-6 2z m11-4l5-1 1 6-5 1z m10-2l5-1 1 5-5 2z m11-3l5-1 1 6-5 1z m10-2l5-1 2 5-5 2z m11-3l5-1 1 6-5 1z m11-2l5-1 1 5-5 1z m10-3l5-1 2 5-5 1z m11-2l5-1 1 5-5 1z m11-3l5-1 1 5-5 1z m10-2l5-1 1 5-5 1z m11-3l5-1 1 5-5 1z m10-3l5-1 2 6-5 1z m11-2l5-1 1 5-5 1z m11-3l5-1 1 6-5 1z m10-2l5-1 2 5-5 1z m11-3l5-1 1 6-5 1z m11-2l5-1 1 5-5 1z m10-3l5-1 1 5-5 1z m10-2l6-1 1 5-6 1z m11-3l5-1 2 5-6 1z m10-2l6-1 1 5-5 1z m11-3l6-1 1 5-6 1z m11-3l5-1 2 6-6 1z m10-2l6-2 1 6-5 1z m11-3l6-1 1 6-6 1z m11-2l5-2 1 6-5 1z m10-3l6-1 1 6-6 1z m11-2l5-2 2 5-6 2z m10-3l6-1 1 5-5 1z m11-2l6-2 1 5-6 2z m11-3l5-1 2 5-6 1z m10-2l6-2 1 5-5 2z m11-3l6-1 1 5-6 1z m11-3l5-1 1 5-5 2z m10-2l5-2 2 6-6 1z m11-3l5-1 2 5-6 2z m10-2l5-2 2 6-5 1z m11-3l5-1 1 5-5 2z m11-2l5-2 1 5-5 2z m10-3l5-1 2 5-5 1z m11-2l5-2 1 5-5 2z m11-3l5-1 1 5-5 1z m10-2l5-2 1 5-5 2z m11-3l5-1 1 5-5 1z m-7 533l2-10 10 3-2 10z m-20-5l2-10 10 3-2 10z m-21-5l3-10 10 3-2 10z m-20-5l3-10 10 2-3 10z m-20-5l3-10 10 2-3 10z m-20-5l3-11 10 3-3 10z m-20-6l2-10 10 2-2 10z m-20-5l2-10 10 2-2 10z m-21-6l3-10 10 3-3 10z m-20-5l3-10 10 3-3 10z m-20-5l3-10 10 3-3 10z m-21-5l3-10 11 2-4 10z m-20-5l3-10 10 2-3 10z m-20-5l3-11 10 3-3 10z m-20-6l2-10 11 3-3 10z m-20-5l2-10 10 3-2 10z m-21-6l3-10 10 3-2 11z m-20-5l3-10 10 3-3 10z m-11-3l2-10 2 1-3 10z m0-278l10-3 2 10-10 2z m19-5l10-3 3 10-10 3z m20-5l10-2 2 9-9 3z m20-5l10-2 2 10-10 2z m20-5l9-2 3 10-10 2z m19-5l10-2 3 10-10 2z m20-4l9-3 3 10-10 3z m19-5l10-3 3 10-10 3z m20-5l10-2 2 9-10 3z m20-5l10-2 2 10-10 2z m19-5l10-2 3 10-10 2z m20-4l10-2 2 10-9 1z m20-5l10-2 2 10-10 2z m20-5l10-2 1 10-9 2z m19-4l10-3 2 10-10 2z m20-5l9-3 3 10-10 3z m19-5l10-2 3 9-10 3z m20-5l10-2 2 10-9 2z m20-5l10-2 2 10-10 2z" horiz-adv-x="2000" />
48
+
49
+ <glyph glyph-name="type_zoom_window_right_top" unicode="&#xe819;" d="M1011 752a24 24 0 0 0 22-23l0-757a24 24 0 0 0-24-24l-936 0a24 24 0 0 0-24 24l0 757a24 24 0 0 0 24 23l936 0a24 24 0 0 0 2 0z m-26-47l-889 0 0-710 889 0 0 710z m-289-225l9 0 0-260-9-9-93 0 0 17 85 0 0 244-320 0 0-58-17 0 0 66 8 9 337 0z m-328-252l218 0 0-17-227 0-8 9 0 177 17 0z m1556 517l7 0 0-90-14 0 0 83-339 0 0 14 346 0z m-360-7l-346 0 0 14 346 0z m-361 0l-130 0 0-201-15 0 0 208 8 7 137 0z m728-443l-14 0 0 346 14 0z m-858-119l-15 0 0 346 15 0z m858-59l-7-8-182 0 0 15 175 0 0 156 14 0z m-858 7l294 0 0-15-301 0-8 8 0 45 15 0z m655-15l-347 0 0 15 347 0z m-275 453c-67 0-123-50-123-115 0-64 56-115 123-115 67 0 123 51 123 115 0 65-56 115-123 115z m0-24c56 0 100-41 100-91 0-49-44-91-100-91-56 0-100 42-100 91 0 50 44 91 100 91z m103-129l-13-14 101-90-13-11-103 86-12-15 109-90 6-6 7 6 26 24 9 6-9 8-108 96z m-509 341l4-10 9 4-3 10z m-19-7l3-10 10 4-3 9z m-19-8l4-9 9 4-4 9z m-20-6l4-10 10 3-4 10z m-18-8l3-9 10 3-4 10z m-20-7l4-9 9 3-3 10z m-18-7l3-10 10 4-4 9z m-20-7l4-10 9 4-3 10z m-19-7l4-9 9 3-3 10z m-19-7l3-10 10 4-4 9z m-19-7l3-10 10 4-4 9z m-19-7l3-10 10 3-4 10z m-19-7l3-10 10 4-4 9z m-20-8l4-9 9 4-3 9z m-19-7l4-9 10 3-4 10z m-19-6l4-10 9 3-4 10z m-19-8l3-9 10 3-3 10z m-19-7l4-9 9 3-4 10z m-19-7l3-10 10 4-3 9z m-19-7l3-10 10 4-4 10z m-20-7l4-10 10 4-4 9z m-18-8l3-9 10 4-4 9z m-20-6l4-10 9 3-3 10z m-19-7l4-10 9 3-3 10z m-19-8l3-9 10 4-3 9z m-19-7l4-9 9 3-4 10z m-19-7l3-10 10 4-4 10z m-19-7l3-9 10 3-4 10z m-20-7l4-9 9 3-3 10z m-18-7l3-10 10 4-4 9z m-20-7l4-10 9 4-3 9z m-19-7l4-10 9 4-3 10z m-19-7l4-10 9 4-4 9z m-19-8l3-9 10 4-3 9z m-19-6l3-10 10 3-4 10z m-19-8l3-9 10 3-4 10z m-20-7l4-9 9 3-3 10z m6-282l5 0 0 4-4 1z m9 0l3-1 1 4-4 0z m8-2l3 0 1 4-4 0z m7-1l5 0 0 4-4 1z m8 0l4-1 1 4-4 0z m8-2l4 0 1 4-4 1z m8 0l4-1 1 4-4 0z m8-2l4 0 0 4-3 0z m8-1l4 0 1 4-4 1z m8 0l4-1 1 4-5 0z m8-2l4 0 0 3-4 1z m8-1l4-1 0 5-3 0z m8-1l4 0 0 4-3 0z m8-1l4 0 1 4-5 0z m8-1l3-1 1 5-4 0z m8-1l4 0 0 3-4 1z m8-1l4-1 0 5-4 0z m7-1l5 0 0 4-4 0z m9-1l3 0 1 3-4 1z m8-1l3-1 1 5-4 0z m7-1l5 0 0 4-4 0z m8-1l4 0 1 3-4 1z m8-1l4-1 1 5-4 0z m9-1l3 0 1 3-4 1z m7-1l4-1 0 4-3 1z m8-1l4-1 1 5-4 0z m8-1l4 0 1 3-5 1z m8-1l4-1 1 4-5 1z m8-1l4-1 0 4-3 1z m8-1l4-1 0 4-3 1z m8-1l4-1 1 4-5 1z m8-1l4-1 0 4-4 1z m8-1l4-1 0 4-4 1z m8-1l4-1 0 4-4 0z m7-2l5 0 0 4-4 1z m9 0l3-1 1 4-4 1z m8-1l3-1 1 4-4 0z m7-2l5 0 0 4-4 1z m8 0l5-1 0 4-4 0z m8-2l4 0 1 4-4 0z m9-1l3 0 1 4-4 1z m7 0l4-1 0 4-3 0z m8-2l4 0 1 4-4 0z m8-1l4 0 1 4-4 1z m8 0l4-1 1 4-5 0z m8-2l4 0 0 4-3 1z m8 0l4-1 0 4-3 0z m8-2l4 0 1 4-5 0z m8-1l4 0 0 4-4 1z m8 0l4-1 0 4-4 0z m8-2l4 0 0 3-3 1z m7-1l5-1 0 5-4 0z m9-1l3 0 1 4-4 0z m8-1l3 0 1 3-4 1z m8-1l4-1 0 5-4 0z m7-1l5 0 0 3-4 1z m8-1l4-1 1 5-4 0z m9-1l3 0 1 4-4 0z m7-1l4 0 1 3-4 1z m8-1l4-1 1 5-4 0z m8-1l4 0 1 3-4 1z m8-1l4-1 1 4-5 1z m8-1l4-1 0 5-3 0z m8-1l4 0 0 3-3 1z m8-1l4-1 1 4-5 1z m8-1l4-1 1 4-5 1z m8-1l4-1 0 4-4 1z m8-1l4-1 0 4-3 1z m7-1l5-1 0 4-4 1z m9-1l4-1 0 4-4 1z m8-1l3-1 1 4-4 1z m8-1l4-1 0 4-4 1z m7-1l5-1 0 4-4 1z m8-1l4-1 1 4-4 0z m9-2l3 0 1 4-4 1z m7 0l4-1 1 4-4 1z m8-1l4-1 1 4-4 0z m8-2l4 0 1 4-4 1z m8 0l4-1 1 4-5 0z m8-2l4 0 0 4-3 0z m8-1l4 0 0 4-3 1z m8 0l4-1 1 4-4 0z m8-2l4 0 1 4-5 0z m8-1l4 0 0 4-4 0z m8-1l4 0 0 4-3 0z m8-1l4 0 0 4-4 0z m8 0l4-1 0 4-4 0z m8-2l3 0 1 3-4 1z m-13 517l6-12 12 6-5 11z m-24-10l5-13 12 6-5 12z m-25-11l5-12 12 5-5 12z m-25-10l5-13 13 6-6 12z m-25-11l6-13 12 6-5 12z m-24-11l5-12 13 5-6 12z m-25-10l5-13 13 6-5 12z m-25-11l6-12 12 5-5 12z m-24-11l5-12 12 6-5 11z m-25-10l5-13 13 6-6 12z m-25-11l5-12 13 5-5 12z m-25-10l6-13 12 6-5 12z m-24-11l5-13 12 6-5 12z m-25-11l6-12 11 5-5 12z m-24-10l5-13 12 6-6 12z m-5-282l6-1 2 7-8 1z m14-2l7-1 0 7-6 1z m14-1l7-2 1 8-8 1z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-8 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z m14-1l7-2 1 7-7 2z m14-2l7-1 1 7-7 1z m14-2l8-1 0 7-7 1z m14-1l7-2 2 7-8 2z m14-2l8-1 0 7-7 1z m15-2l6-1 1 7-7 1z m13-2l8-1 0 7-6 2z m15-1l7-1 0 7-7 1z m13-2l8-1 1 7-7 1z m15-2l7-1 0 7-7 2z m14-1l7-1 1 7-7 1z m14-2l7-1 0 7-6 1z m14-2l7-1 1 7-7 2z m14-1l7-1 1 7-7 1z m14-2l7-1 1 7-7 1z" horiz-adv-x="2000" />
50
+
51
+ <glyph glyph-name="zoom_level_2" unicode="&#xe81a;" d="M511 747c0-764 0-764 0-764m-34 195l-211 0 0 36 81 89c12 12 22 24 31 34 9 10 17 20 23 30 7 10 12 20 15 30 4 10 5 21 5 33 0 9-1 17-4 24-2 7-6 13-11 18-5 4-11 8-17 11-7 2-14 3-22 3-15 0-28-3-40-9-12-6-23-13-34-22l-24 27c6 6 13 11 20 16 7 5 15 9 23 12 8 4 17 7 26 9 9 2 19 3 29 3 15 0 28-2 40-6 12-4 22-10 31-18 8-8 15-18 19-29 5-11 7-24 7-38 0-13-2-25-6-37-4-12-10-24-17-35-7-12-16-23-26-35-10-12-21-24-32-36l-65-70 0-1 159 0 0-39m123 131l-82 124 48 0 58-95 58 95 48 0-82-124 86-131-48 0-62 101-63-101-48 0 87 131" horiz-adv-x="1000" />
52
+
53
+ <glyph glyph-name="zoom_level_3" unicode="&#xe81b;" d="M511 747c0-764 0-764 0-764m-43 457c0-11-2-21-5-31-4-9-9-17-15-24-7-7-14-12-23-17-9-4-19-7-30-9l0-1c27-4 48-13 62-27 14-14 22-32 22-54 0-15-3-29-8-41-5-12-13-23-23-32-10-9-23-16-39-21-15-5-34-7-55-7-17 0-33 1-48 4-15 2-29 7-42 14l0 39c14-7 28-12 44-16 16-4 31-6 45-6 14 0 27 2 37 5 10 3 19 7 25 13 7 6 12 13 15 21 4 9 5 18 5 28 0 11-2 20-6 27-4 8-10 14-17 19-8 5-17 8-28 11-11 2-23 3-37 3l-31 0 0 35 31 0c12 0 23 2 33 5 10 3 18 7 25 13 6 6 11 13 15 20 3 8 5 17 5 26 0 9-2 16-4 22-3 6-7 12-12 16-5 5-11 8-19 10-7 3-15 4-23 4-17 0-31-3-44-8-13-5-25-12-36-20l-21 29c5 5 12 9 19 13 7 4 15 8 24 11 8 3 17 6 27 8 10 2 20 2 31 2 16 0 31-2 44-6 12-4 23-10 31-17 9-8 15-17 20-27 4-10 6-22 6-34m134-129l-82 124 48 0 58-95 58 95 48 0-83-124 87-131-48 0-62 101-63-101-48 0 87 131" horiz-adv-x="1000" />
54
+
55
+ <glyph glyph-name="zoom_level_15" unicode="&#xe81c;" d="M511 747c0-764 0-764 0-764m-302 228l-41 0 0 212c0 7 0 14 0 21 0 8 0 15 0 23 1 7 1 15 1 21 0 7 1 13 1 19-3-3-5-6-7-8-2-2-4-3-6-5-2-2-5-4-7-6-2-2-5-5-8-8l-35-28-22 29 89 69 35 0 0-339m180 55l4-5c-2-8-5-17-8-27-3-9-6-19-10-28-3-10-7-19-11-29-4-9-8-19-12-27l-32 0c2 9 5 19 7 29 2 10 4 21 6 31 3 10 4 20 6 29 2 10 3 19 5 27l45 0m162 153c15 0 29-2 42-6 14-4 25-11 35-19 10-8 18-19 23-31 6-13 9-27 9-43 0-18-3-34-8-48-6-14-13-26-24-35-10-10-23-18-38-23-15-5-33-8-53-8-8 0-15 1-23 2-8 0-15 2-22 3-7 1-14 3-20 6-6 2-12 5-17 8l0 40c5-4 11-7 18-10 7-3 14-5 21-7 8-2 16-3 23-4 8-1 15-2 21-2 13 0 24 2 33 5 10 3 18 7 25 13 6 6 11 14 15 23 3 9 5 20 5 32 0 22-7 39-20 51-14 12-34 17-60 17-4 0-8 0-13 0-5-1-10-1-15-2-5 0-9-1-14-2-4 0-8-1-11-2l-21 14 13 159 160 0 0-38-124 0-9-97c5 0 12 1 20 3 8 1 18 1 29 1m230-77l-82 124 48 0 58-95 58 95 48 0-83-124 87-131-48 0-62 101-63-101-48 0 87 131" horiz-adv-x="1000" />
56
+
57
+ <glyph glyph-name="zoom_level_25" unicode="&#xe81d;" d="M511 747c0-764 0-764 0-764m-224 226l-211 0 0 36 81 88c11 13 22 24 31 35 9 10 17 20 23 30 7 10 12 20 15 30 3 10 5 21 5 32 0 10-1 18-4 25-3 6-6 12-11 17-5 5-11 9-17 11-7 3-15 4-23 4-14 0-28-3-40-9-11-6-23-14-33-23l-24 28c6 5 13 11 20 15 7 5 15 10 23 13 8 4 17 6 26 8 9 3 19 4 29 4 15 0 28-2 40-7 12-4 22-10 30-18 9-7 15-17 20-28 4-11 7-24 7-38 0-13-2-26-7-38-4-11-9-23-16-35-8-11-16-23-26-34-10-12-21-24-33-37l-65-69 0-2 160 0 0-38m112 55l3-6c-2-8-4-17-7-26-3-10-7-19-10-29-4-9-8-19-12-28-4-10-7-19-11-28l-32 0c2 10 4 20 6 30 3 10 5 20 7 30 2 11 4 20 6 30 1 10 3 19 4 27l46 0m161 153c16 0 30-2 43-7 13-4 25-10 35-19 9-8 17-18 23-31 5-12 8-26 8-43 0-17-3-33-8-47-5-14-13-26-23-36-11-10-23-17-39-22-15-5-32-8-52-8-8 0-16 1-24 1-7 1-15 2-22 4-7 1-13 3-20 5-6 3-12 5-17 8l0 40c5-3 11-6 18-9 7-3 14-5 22-7 7-2 15-4 23-5 7-1 14-1 21-1 12 0 23 1 33 4 9 3 17 8 24 14 7 6 12 13 15 22 4 9 6 20 6 33 0 22-7 39-21 50-13 12-33 18-59 18-4 0-9 0-14-1-5 0-9 0-14-1-5-1-10-1-14-2-5-1-8-1-12-2l-21 13 13 160 160 0 0-39-123 0-9-97c5 1 11 2 19 3 8 1 18 2 29 2m230-78l-82 124 48 0 58-95 58 95 48 0-82-124 87-130-48 0-63 101-62-101-48 0 86 130" horiz-adv-x="1000" />
58
+
59
+ <glyph glyph-name="zoom_level_default" unicode="&#xe81e;" d="M511 747c0-764 0-764 0-764m-432 389l842 0 0-44-842 0z" horiz-adv-x="1000" />
60
+
61
+ <glyph glyph-name="cursor_type_pointer" unicode="&#xe81f;" d="M463 754l-125-3a19 19 0 0 1-18-20l8-360-45 46a19 19 0 0 1-13 5l-88 5a19 19 0 0 1-19-21l8-110a19 19 0 0 1 4-10l191-263 0-66a19 19 0 0 1 19-20l370 0a19 19 0 0 1 19 20l0 92 58 102a19 19 0 0 1 2 6l14 59a19 19 0 0 1 0 4l5 205a19 19 0 0 1-5 13l-47 47a19 19 0 0 1-10 5l-68 17-39 34a19 19 0 0 1-13 5l-74-3-9 25a19 19 0 0 1-18 12l-87 0 0 156a19 19 0 0 1-20 18z m-18-39l0-154a19 19 0 0 1 18-19l93 0 10-26a19 19 0 0 1 18-12l80 4 37-33a19 19 0 0 1 8-5l68-16 38-37-5-192-12-57-60-104a19 19 0 0 1-2-10l0-79-332 0 0 54a19 19 0 0 1-4 11l-191 264-7 84 58-3 74-76a19 19 0 0 1 33 14l-8 390 86 2z m38-157l-38-2 4-162 39 2-5 162z m125-34l-38-2 9-145 38 2-9 145z m130-39l-39-1 5-137 38 2-4 136z" horiz-adv-x="1000" />
62
+
63
+ <glyph glyph-name="lens_shape_none" unicode="&#xe820;" d="M723 550l-23 23-423-423 23-23z m-446 0l23 23 423-423-23-23z" horiz-adv-x="1000" />
64
+
65
+ <glyph glyph-name="zoom-in" unicode="&#xe821;" d="M453 698c-162 0-293-132-293-294 0-161 131-293 293-293 162 0 294 132 294 293 0 162-132 294-294 294z m0-58c131 0 236-105 236-236 0-130-105-236-236-236-131 0-236 106-236 236 0 131 105 236 236 236z m2-108a29 29 0 0 1-29-29l-3-197a29 29 0 1 1 57 0l3 196a29 29 0 0 1-28 30z m-100-97a29 29 0 1 1-1-58l197-3a29 29 0 1 1 1 57l-197 4z m280-194a29 29 0 0 1-20-49l187-187a29 29 0 1 1 41 41l-187 186a29 29 0 0 1-21 9z" horiz-adv-x="1000" />
66
+ </font>
67
+ </defs>
68
+ </svg>
assets/fonts/fontello.ttf ADDED
Binary file
assets/fonts/fontello.woff ADDED
Binary file
assets/fonts/fontello.woff2 ADDED
Binary file
assets/images/discount.png ADDED
Binary file
assets/images/icon.svg ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ width="20"
13
+ height="20"
14
+ id="svg2"
15
+ version="1.1"
16
+ inkscape:version="0.48.3.1 r9886"
17
+ sodipodi:docname="icon.svg">
18
+ <defs
19
+ id="defs4" />
20
+ <sodipodi:namedview
21
+ id="base"
22
+ pagecolor="#ffffff"
23
+ bordercolor="#666666"
24
+ borderopacity="1.0"
25
+ inkscape:pageopacity="0.0"
26
+ inkscape:pageshadow="2"
27
+ inkscape:zoom="28.110758"
28
+ inkscape:cx="6.6378035"
29
+ inkscape:cy="9.4092616"
30
+ inkscape:document-units="px"
31
+ inkscape:current-layer="layer1"
32
+ showgrid="false"
33
+ inkscape:window-width="1120"
34
+ inkscape:window-height="699"
35
+ inkscape:window-x="0"
36
+ inkscape:window-y="19"
37
+ inkscape:window-maximized="0" />
38
+ <metadata
39
+ id="metadata7">
40
+ <rdf:RDF>
41
+ <cc:Work
42
+ rdf:about="">
43
+ <dc:format>image/svg+xml</dc:format>
44
+ <dc:type
45
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
46
+ <dc:title></dc:title>
47
+ </cc:Work>
48
+ </rdf:RDF>
49
+ </metadata>
50
+ <g
51
+ inkscape:label="Layer 1"
52
+ inkscape:groupmode="layer"
53
+ id="layer1"
54
+ transform="translate(0,-1032.3622)">
55
+ <path
56
+ sodipodi:type="arc"
57
+ style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:48, 2;stroke-dashoffset:0"
58
+ id="path2985"
59
+ sodipodi:cx="8.3833218"
60
+ sodipodi:cy="9.1243391"
61
+ sodipodi:rx="4.3049493"
62
+ sodipodi:ry="4.3049493"
63
+ d="m 12.688271,9.1243391 a 4.3049493,4.3049493 0 1 1 -8.6098985,0 4.3049493,4.3049493 0 1 1 8.6098985,0 z"
64
+ transform="matrix(-1.3079553,0,0,1.3079553,23.960761,1029.3362)" />
65
+ <rect
66
+ style="fill:none;stroke:#ffffff;stroke-width:2.61591052999999985;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:62.78185283999999911, 2.61591055000000017;stroke-dashoffset:0"
67
+ id="rect2991"
68
+ width="8.3966293"
69
+ height="1.5805421"
70
+ x="598.75842"
71
+ y="855.4184"
72
+ transform="matrix(-0.81471685,0.579859,0.579859,0.81471685,0,0)" />
73
+ <path
74
+ style="fill:none;stroke:#ffffff;stroke-width:1.09081018000000007px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
75
+ d="m 12.995751,1038.9919 0,4.557"
76
+ id="path3799"
77
+ inkscape:connector-curvature="0" />
78
+ <path
79
+ inkscape:connector-curvature="0"
80
+ id="path3803"
81
+ d="m 15.274251,1041.2704 -4.557,0"
82
+ style="fill:none;stroke:#ffffff;stroke-width:1.09081018000000007px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
83
+ </g>
84
+ </svg>
assets/images/img1_large.png ADDED
Binary file
assets/images/img1_medium.png ADDED
Binary file
assets/images/question_mark.svg ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ id="svg2"
13
+ height="14"
14
+ width="14"
15
+ version="1.0"
16
+ inkscape:version="0.48.3.1 r9886"
17
+ sodipodi:docname="question_mark.svg">
18
+ <metadata
19
+ id="metadata10">
20
+ <rdf:RDF>
21
+ <cc:Work
22
+ rdf:about="">
23
+ <dc:format>image/svg+xml</dc:format>
24
+ <dc:type
25
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
26
+ </cc:Work>
27
+ </rdf:RDF>
28
+ </metadata>
29
+ <defs
30
+ id="defs8" />
31
+ <sodipodi:namedview
32
+ pagecolor="#ffffff"
33
+ bordercolor="#666666"
34
+ borderopacity="1"
35
+ objecttolerance="10"
36
+ gridtolerance="10"
37
+ guidetolerance="10"
38
+ inkscape:pageopacity="0"
39
+ inkscape:pageshadow="2"
40
+ inkscape:window-width="1094"
41
+ inkscape:window-height="675"
42
+ id="namedview6"
43
+ showgrid="false"
44
+ inkscape:zoom="19.47"
45
+ inkscape:cx="11.241964"
46
+ inkscape:cy="1.3867488"
47
+ inkscape:window-x="0"
48
+ inkscape:window-y="0"
49
+ inkscape:window-maximized="0"
50
+ inkscape:current-layer="svg2" />
51
+ <g
52
+ id="layer1"
53
+ transform="matrix(0.05392912,0,0,0.05598356,1.607088,1.401644)">
54
+ <path
55
+ id="path2413"
56
+ d="M 100,0 C 44.8,0 0,44.8 0,100 0,155.2 44.8,200 100,200 155.2,200 200,155.2 200,100 200,44.8 155.2,0 100,0 z m 0,12.812 c 48.13,0 87.19,39.058 87.19,87.188 0,48.13 -39.06,87.19 -87.19,87.19 C 51.87,187.19 12.812,148.13 12.812,100 12.812,51.87 51.87,12.812 100,12.812 z m 1.47,21.25 c -5.45,0.03 -10.653,0.737 -15.282,2.063 -4.699,1.346 -9.126,3.484 -12.876,6.219 -3.238,2.362 -6.333,5.391 -8.687,8.531 -4.159,5.549 -6.461,11.651 -7.063,18.687 -0.04,0.468 -0.07,0.868 -0.062,0.876 0.016,0.016 21.702,2.687 21.812,2.687 0.053,0 0.113,-0.234 0.282,-0.937 1.941,-8.085 5.486,-13.521 10.968,-16.813 4.32,-2.594 9.808,-3.612 15.778,-2.969 2.74,0.295 5.21,0.96 7.38,2 2.71,1.301 5.18,3.361 6.94,5.813 1.54,2.156 2.46,4.584 2.75,7.312 0.08,0.759 0.05,2.48 -0.03,3.219 -0.23,1.826 -0.7,3.378 -1.5,4.969 -0.81,1.597 -1.48,2.514 -2.76,3.812 -2.03,2.077 -5.18,4.829 -10.78,9.407 -3.6,2.944 -6.04,5.156 -8.12,7.343 -4.943,5.179 -7.191,9.069 -8.564,14.719 -0.905,3.72 -1.256,7.55 -1.156,13.19 0.025,1.4 0.062,2.73 0.062,2.97 v 0.43 h 21.598 l 0.03,-2.4 c 0.03,-3.27 0.21,-5.37 0.56,-7.41 0.57,-3.27 1.43,-5 3.94,-7.81 1.6,-1.8 3.7,-3.76 6.93,-6.47 4.77,-3.991 8.11,-6.99 11.26,-10.125 4.91,-4.907 7.46,-8.26 9.28,-12.187 1.43,-3.092 2.22,-6.166 2.46,-9.532 0.06,-0.816 0.07,-3.03 0,-3.968 -0.45,-7.043 -3.1,-13.253 -8.15,-19.032 -0.8,-0.909 -2.78,-2.887 -3.72,-3.718 -4.96,-4.394 -10.69,-7.353 -17.56,-9.094 -4.19,-1.062 -8.23,-1.6 -13.35,-1.75 -0.78,-0.023 -1.59,-0.036 -2.37,-0.032 z m -10.908,103.6 v 22 h 21.998 v -22 H 90.562 z"
57
+ inkscape:connector-curvature="0" />
58
+ </g>
59
+ </svg>
assets/images/rating.png ADDED
Binary file
assets/images/silkypress_logo.png ADDED
Binary file
assets/images/tinyMCE_button.png ADDED
Binary file
assets/images/type_image_inline.svg ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ width="112"
13
+ height="100"
14
+ id="svg4067"
15
+ version="1.1"
16
+ inkscape:version="0.48.3.1 r9886"
17
+ sodipodi:docname="type_image_inline.svg">
18
+ <defs
19
+ id="defs4069" />
20
+ <sodipodi:namedview
21
+ id="base"
22
+ pagecolor="#ffffff"
23
+ bordercolor="#666666"
24
+ borderopacity="1.0"
25
+ inkscape:pageopacity="0.0"
26
+ inkscape:pageshadow="2"
27
+ inkscape:zoom="2.065"
28
+ inkscape:cx="79.476624"
29
+ inkscape:cy="50.104364"
30
+ inkscape:document-units="px"
31
+ inkscape:current-layer="layer1"
32
+ showgrid="false"
33
+ inkscape:window-width="729"
34
+ inkscape:window-height="403"
35
+ inkscape:window-x="877"
36
+ inkscape:window-y="363"
37
+ inkscape:window-maximized="0" />
38
+ <metadata
39
+ id="metadata4072">
40
+ <rdf:RDF>
41
+ <cc:Work
42
+ rdf:about="">
43
+ <dc:format>image/svg+xml</dc:format>
44
+ <dc:type
45
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
46
+ <dc:title></dc:title>
47
+ </cc:Work>
48
+ </rdf:RDF>
49
+ </metadata>
50
+ <g
51
+ inkscape:label="Layer 1"
52
+ inkscape:groupmode="layer"
53
+ id="layer1"
54
+ transform="translate(0,-952.36218)">
55
+ <rect
56
+ style="fill:#ffffff;fill-opacity:0;fill-rule:nonzero;stroke:#000000;stroke-width:5.68464231000000009;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
57
+ id="rect3790"
58
+ width="106.31535"
59
+ height="94.315361"
60
+ x="2.6994605"
61
+ y="955.49017"
62
+ ry="11.5" />
63
+ <rect
64
+ style="fill:#ffffff;fill-opacity:0;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:8, 8;stroke-dashoffset:0"
65
+ id="rect3792"
66
+ width="38.25"
67
+ height="32.5"
68
+ x="38.163113"
69
+ y="978.8587"
70
+ ry="0" />
71
+ <path
72
+ sodipodi:type="arc"
73
+ style="fill:#ffffff;fill-opacity:0;fill-rule:nonzero;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
74
+ id="path3794"
75
+ sodipodi:cx="378.25"
76
+ sodipodi:cy="786.36218"
77
+ sodipodi:rx="9.75"
78
+ sodipodi:ry="8.5"
79
+ d="m 388,786.36218 a 9.75,8.5 0 1 1 -19.5,0 9.75,8.5 0 1 1 19.5,0 z"
80
+ transform="matrix(0.63157895,0,0,0.63157895,-186.94214,494.45885)" />
81
+ <path
82
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
83
+ d="m 57.913121,993.60864 6,4.99996 -1.5,1.25 -6,-4.74996"
84
+ id="path3798"
85
+ inkscape:connector-curvature="0" />
86
+ </g>
87
+ </svg>
assets/js/bootstrap.3.2.0.min.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap v3.2.0 (http://getbootstrap.com)
3
+ * Copyright 2011-2014 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+ if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.2.0",d.prototype.close=function(b){function c(){f.detach().trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one("bsTransitionEnd",c).emulateTransitionEnd(150):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.2.0",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),d[e](null==f[b]?this.options[b]:f[b]),setTimeout(a.proxy(function(){"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?a=!1:b.find(".active").removeClass("active")),a&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}a&&this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),c.preventDefault()})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b).on("keydown.bs.carousel",a.proxy(this.keydown,this)),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.2.0",c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},c.prototype.keydown=function(a){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.to=function(b){var c=this,d=this.getItemIndex(this.$active=this.$element.find(".item.active"));return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}if(e.hasClass("active"))return this.sliding=!1;var j=e[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:g});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,f&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(e)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:g});return a.support.transition&&this.$element.hasClass("slide")?(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one("bsTransitionEnd",function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(1e3*d.css("transition-duration").slice(0,-1))):(d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger(m)),f&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b);!e&&f.toggle&&"show"==b&&(b=!b),e||d.data("bs.collapse",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};c.VERSION="3.2.0",c.DEFAULTS={toggle:!0},c.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},c.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var c=a.Event("show.bs.collapse");if(this.$element.trigger(c),!c.isDefaultPrevented()){var d=this.$parent&&this.$parent.find("> .panel > .in");if(d&&d.length){var e=d.data("bs.collapse");if(e&&e.transitioning)return;b.call(d,"hide"),e||d.data("bs.collapse",null)}var f=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[f](0),this.transitioning=1;var g=function(){this.$element.removeClass("collapsing").addClass("collapse in")[f](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return g.call(this);var h=a.camelCase(["scroll",f].join("-"));this.$element.one("bsTransitionEnd",a.proxy(g,this)).emulateTransitionEnd(350)[f](this.$element[0][h])}}},c.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(d,this)).emulateTransitionEnd(350):d.call(this)}}},c.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var d=a.fn.collapse;a.fn.collapse=b,a.fn.collapse.Constructor=c,a.fn.collapse.noConflict=function(){return a.fn.collapse=d,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(c){var d,e=a(this),f=e.attr("data-target")||c.preventDefault()||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),g=a(f),h=g.data("bs.collapse"),i=h?"toggle":e.data(),j=e.attr("data-parent"),k=j&&a(j);h&&h.transitioning||(k&&k.find('[data-toggle="collapse"][data-parent="'+j+'"]').not(e).addClass("collapsed"),e[g.hasClass("in")?"addClass":"removeClass"]("collapsed")),b.call(g,i)})}(jQuery),+function(a){"use strict";function b(b){b&&3===b.which||(a(e).remove(),a(f).each(function(){var d=c(a(this)),e={relatedTarget:this};d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown",e)),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown",e))}))}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.2.0",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus"),f.toggleClass("open").trigger("shown.bs.dropdown",h)}return!1}},g.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var e=c(d),g=e.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.divider):visible a",i=e.find('[role="menu"]'+h+', [role="listbox"]'+h);if(i.length){var j=i.index(i.filter(":focus"));38==b.keyCode&&j>0&&j--,40==b.keyCode&&j<i.length-1&&j++,~j||(j=0),i.eq(j).trigger("focus")}}}};var h=a.fn.dropdown;a.fn.dropdown=d,a.fn.dropdown.Constructor=g,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=h,this},a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",f,g.prototype.toggle).on("keydown.bs.dropdown.data-api",f+', [role="menu"], [role="listbox"]',g.prototype.keydown)}(jQuery),+function(a){"use strict";function b(b,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},c.DEFAULTS,e.data(),"object"==typeof b&&b);f||e.data("bs.modal",f=new c(this,g)),"string"==typeof b?f[b](d):g.show&&f.show(d)})}var c=function(b,c){this.options=c,this.$body=a(document.body),this.$element=a(b),this.$backdrop=this.isShown=null,this.scrollbarWidth=0,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,a.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};c.VERSION="3.2.0",c.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},c.prototype.toggle=function(a){return this.isShown?this.hide():this.show(a)},c.prototype.show=function(b){var c=this,d=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(d),this.isShown||d.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.$body.addClass("modal-open"),this.setScrollbar(),this.escape(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.backdrop(function(){var d=a.support.transition&&c.$element.hasClass("fade");c.$element.parent().length||c.$element.appendTo(c.$body),c.$element.show().scrollTop(0),d&&c.$element[0].offsetWidth,c.$element.addClass("in").attr("aria-hidden",!1),c.enforceFocus();var e=a.Event("shown.bs.modal",{relatedTarget:b});d?c.$element.find(".modal-dialog").one("bsTransitionEnd",function(){c.$element.trigger("focus").trigger(e)}).emulateTransitionEnd(300):c.$element.trigger("focus").trigger(e)}))},c.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.$body.removeClass("modal-open"),this.resetScrollbar(),this.escape(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").attr("aria-hidden",!0).off("click.dismiss.bs.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",a.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal())},c.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.trigger("focus")},this))},c.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},c.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.$element.trigger("hidden.bs.modal")})},c.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},c.prototype.backdrop=function(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;if(this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",a.proxy(function(a){a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;e?this.$backdrop.one("bsTransitionEnd",b).emulateTransitionEnd(150):b()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var f=function(){c.removeBackdrop(),b&&b()};a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",f).emulateTransitionEnd(150):f()}else b&&b()},c.prototype.checkScrollbar=function(){document.body.clientWidth>=window.innerWidth||(this.scrollbarWidth=this.scrollbarWidth||this.measureScrollbar())},c.prototype.setScrollbar=function(){var a=parseInt(this.$body.css("padding-right")||0,10);this.scrollbarWidth&&this.$body.css("padding-right",a+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right","")},c.prototype.measureScrollbar=function(){var a=document.createElement("div");a.className="modal-scrollbar-measure",this.$body.append(a);var b=a.offsetWidth-a.clientWidth;return this.$body[0].removeChild(a),b};var d=a.fn.modal;a.fn.modal=b,a.fn.modal.Constructor=c,a.fn.modal.noConflict=function(){return a.fn.modal=d,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(c){var d=a(this),e=d.attr("href"),f=a(d.attr("data-target")||e&&e.replace(/.*(?=#[^\s]+$)/,"")),g=f.data("bs.modal")?"toggle":a.extend({remote:!/#/.test(e)&&e},f.data(),d.data());d.is("a")&&c.preventDefault(),f.one("show.bs.modal",function(a){a.isDefaultPrevented()||f.one("hidden.bs.modal",function(){d.is(":visible")&&d.trigger("focus")})}),b.call(f,g,this)})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof b&&b;(e||"destroy"!=b)&&(e||d.data("bs.tooltip",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};c.VERSION="3.2.0",c.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(this.options.viewport.selector||this.options.viewport);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show()},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var c=a.contains(document.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!c)return;var d=this,e=this.tip(),f=this.getUID(this.type);this.setContent(),e.attr("id",f),this.$element.attr("aria-describedby",f),this.options.animation&&e.addClass("fade");var g="function"==typeof this.options.placement?this.options.placement.call(this,e[0],this.$element[0]):this.options.placement,h=/\s?auto?\s?/i,i=h.test(g);i&&(g=g.replace(h,"")||"top"),e.detach().css({top:0,left:0,display:"block"}).addClass(g).data("bs."+this.type,this),this.options.container?e.appendTo(this.options.container):e.insertAfter(this.$element);var j=this.getPosition(),k=e[0].offsetWidth,l=e[0].offsetHeight;if(i){var m=g,n=this.$element.parent(),o=this.getPosition(n);g="bottom"==g&&j.top+j.height+l-o.scroll>o.height?"top":"top"==g&&j.top-o.scroll-l<0?"bottom":"right"==g&&j.right+k>o.width?"left":"left"==g&&j.left-k<o.left?"right":g,e.removeClass(m).addClass(g)}var p=this.getCalculatedOffset(g,j,k,l);this.applyPlacement(p,g);var q=function(){d.$element.trigger("shown.bs."+d.type),d.hoverState=null};a.support.transition&&this.$tip.hasClass("fade")?e.one("bsTransitionEnd",q).emulateTransitionEnd(150):q()}},c.prototype.applyPlacement=function(b,c){var d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),b.top=b.top+g,b.left=b.left+h,a.offset.setOffset(d[0],a.extend({using:function(a){d.css({top:Math.round(a.top),left:Math.round(a.left)})}},b),0),d.addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;"top"==c&&j!=f&&(b.top=b.top+f-j);var k=this.getViewportAdjustedDelta(c,b,i,j);k.left?b.left+=k.left:b.top+=k.top;var l=k.left?2*k.left-e+i:2*k.top-f+j,m=k.left?"left":"top",n=k.left?"offsetWidth":"offsetHeight";d.offset(b),this.replaceArrow(l,d[0][n],m)},c.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+"%":"")},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},c.prototype.hide=function(){function b(){"in"!=c.hoverState&&d.detach(),c.$element.trigger("hidden.bs."+c.type)}var c=this,d=this.tip(),e=a.Event("hide.bs."+this.type);return this.$element.removeAttr("aria-describedby"),this.$element.trigger(e),e.isDefaultPrevented()?void 0:(d.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d.one("bsTransitionEnd",b).emulateTransitionEnd(150):b(),this.hoverState=null,this)},c.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},c.prototype.hasContent=function(){return this.getTitle()},c.prototype.getPosition=function(b){b=b||this.$element;var c=b[0],d="BODY"==c.tagName;return a.extend({},"function"==typeof c.getBoundingClientRect?c.getBoundingClientRect():null,{scroll:d?document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop(),width:d?a(window).width():b.outerWidth(),height:d?a(window).height():b.outerHeight()},d?{top:0,left:0}:b.offset())},c.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},c.prototype.getViewportAdjustedDelta=function(a,b,c,d){var e={top:0,left:0};if(!this.$viewport)return e;var f=this.options.viewport&&this.options.viewport.padding||0,g=this.getPosition(this.$viewport);if(/right|left/.test(a)){var h=b.top-f-g.scroll,i=b.top+f-g.scroll+d;h<g.top?e.top=g.top-h:i>g.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;j<g.left?e.left=g.left-j:k>g.width&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){clearTimeout(this.timeout),this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||"destroy"!=b)&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.2.0",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").empty()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},c.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){var e=a.proxy(this.process,this);this.$body=a("body"),this.$scrollElement=a(a(c).is("body")?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",e),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.2.0",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b="offset",c=0;a.isWindow(this.$scrollElement[0])||(b="position",c=this.$scrollElement.scrollTop()),this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight();var d=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[b]().top+c,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){d.offsets.push(this[0]),d.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b<=e[0])return g!=(a=f[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parentsUntil(this.options.target,".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")};var d=a.fn.scrollspy;a.fn.scrollspy=c,a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=d,this},a(window).on("load.bs.scrollspy.data-api",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);c.call(b,b.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new c(this)),"string"==typeof b&&e[b]()})}var c=function(b){this.element=a(b)};c.VERSION="3.2.0",c.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.closest("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},c.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one("bsTransitionEnd",e).emulateTransitionEnd(150):e(),f.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(c){c.preventDefault(),b.call(a(this),"show")})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=this.unpin=this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.2.0",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=a(document).height(),d=this.$target.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top(this.$element)),"function"==typeof h&&(h=f.bottom(this.$element));var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=b-h?"bottom":null!=g&&g>=d?"top":!1;if(this.affixed!==i){null!=this.unpin&&this.$element.css("top","");var j="affix"+(i?"-"+i:""),k=a.Event(j+".bs.affix");this.$element.trigger(k),k.isDefaultPrevented()||(this.affixed=i,this.unpin="bottom"==i?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(j).trigger(a.Event(j.replace("affix","affixed"))),"bottom"==i&&this.$element.offset({top:b-this.$element.height()-h}))}}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},d.offsetBottom&&(d.offset.bottom=d.offsetBottom),d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery);
assets/js/bootstrap.min.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap v3.3.4 (http://getbootstrap.com)
3
+ * Copyright 2011-2015 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+
7
+ /*!
8
+ * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=a029c53ecbca7e0801ba)
9
+ * Config saved to config.json and https://gist.github.com/a029c53ecbca7e0801ba
10
+ */
11
+ if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.alert");n||o.data("bs.alert",n=new i(this)),"string"==typeof e&&n[e].call(o)})}var o='[data-dismiss="alert"]',i=function(e){t(e).on("click",o,this.close)};i.VERSION="3.3.2",i.TRANSITION_DURATION=150,i.prototype.close=function(e){function o(){a.detach().trigger("closed.bs.alert").remove()}var n=t(this),s=n.attr("data-target");s||(s=n.attr("href"),s=s&&s.replace(/.*(?=#[^\s]*$)/,""));var a=t(s);e&&e.preventDefault(),a.length||(a=n.closest(".alert")),a.trigger(e=t.Event("close.bs.alert")),e.isDefaultPrevented()||(a.removeClass("in"),t.support.transition&&a.hasClass("fade")?a.one("bsTransitionEnd",o).emulateTransitionEnd(i.TRANSITION_DURATION):o())};var n=t.fn.alert;t.fn.alert=e,t.fn.alert.Constructor=i,t.fn.alert.noConflict=function(){return t.fn.alert=n,this},t(document).on("click.bs.alert.data-api",o,i.prototype.close)}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.button"),s="object"==typeof e&&e;n||i.data("bs.button",n=new o(this,s)),"toggle"==e?n.toggle():e&&n.setState(e)})}var o=function(e,i){this.$element=t(e),this.options=t.extend({},o.DEFAULTS,i),this.isLoading=!1};o.VERSION="3.3.2",o.DEFAULTS={loadingText:"loading..."},o.prototype.setState=function(e){var o="disabled",i=this.$element,n=i.is("input")?"val":"html",s=i.data();e+="Text",null==s.resetText&&i.data("resetText",i[n]()),setTimeout(t.proxy(function(){i[n](null==s[e]?this.options[e]:s[e]),"loadingText"==e?(this.isLoading=!0,i.addClass(o).attr(o,o)):this.isLoading&&(this.isLoading=!1,i.removeClass(o).removeAttr(o))},this),0)},o.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var o=this.$element.find("input");"radio"==o.prop("type")&&(o.prop("checked")&&this.$element.hasClass("active")?t=!1:e.find(".active").removeClass("active")),t&&o.prop("checked",!this.$element.hasClass("active")).trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active"));t&&this.$element.toggleClass("active")};var i=t.fn.button;t.fn.button=e,t.fn.button.Constructor=o,t.fn.button.noConflict=function(){return t.fn.button=i,this},t(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(o){var i=t(o.target);i.hasClass("btn")||(i=i.closest(".btn")),e.call(i,"toggle"),o.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(e){t(e.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(e.type))})}(jQuery),+function(t){"use strict";function e(e){e&&3===e.which||(t(n).remove(),t(s).each(function(){var i=t(this),n=o(i),s={relatedTarget:this};n.hasClass("open")&&(n.trigger(e=t.Event("hide.bs.dropdown",s)),e.isDefaultPrevented()||(i.attr("aria-expanded","false"),n.removeClass("open").trigger("hidden.bs.dropdown",s)))}))}function o(e){var o=e.attr("data-target");o||(o=e.attr("href"),o=o&&/#[A-Za-z]/.test(o)&&o.replace(/.*(?=#[^\s]*$)/,""));var i=o&&t(o);return i&&i.length?i:e.parent()}function i(e){return this.each(function(){var o=t(this),i=o.data("bs.dropdown");i||o.data("bs.dropdown",i=new a(this)),"string"==typeof e&&i[e].call(o)})}var n=".dropdown-backdrop",s='[data-toggle="dropdown"]',a=function(e){t(e).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.2",a.prototype.toggle=function(i){var n=t(this);if(!n.is(".disabled, :disabled")){var s=o(n),a=s.hasClass("open");if(e(),!a){"ontouchstart"in document.documentElement&&!s.closest(".navbar-nav").length&&t('<div class="dropdown-backdrop"/>').insertAfter(t(this)).on("click",e);var r={relatedTarget:this};if(s.trigger(i=t.Event("show.bs.dropdown",r)),i.isDefaultPrevented())return;n.trigger("focus").attr("aria-expanded","true"),s.toggleClass("open").trigger("shown.bs.dropdown",r)}return!1}},a.prototype.keydown=function(e){if(/(38|40|27|32)/.test(e.which)&&!/input|textarea/i.test(e.target.tagName)){var i=t(this);if(e.preventDefault(),e.stopPropagation(),!i.is(".disabled, :disabled")){var n=o(i),a=n.hasClass("open");if(!a&&27!=e.which||a&&27==e.which)return 27==e.which&&n.find(s).trigger("focus"),i.trigger("click");var r=" li:not(.disabled):visible a",l=n.find('[role="menu"]'+r+', [role="listbox"]'+r);if(l.length){var p=l.index(e.target);38==e.which&&p>0&&p--,40==e.which&&p<l.length-1&&p++,~p||(p=0),l.eq(p).trigger("focus")}}}};var r=t.fn.dropdown;t.fn.dropdown=i,t.fn.dropdown.Constructor=a,t.fn.dropdown.noConflict=function(){return t.fn.dropdown=r,this},t(document).on("click.bs.dropdown.data-api",e).on("click.bs.dropdown.data-api",".dropdown form",function(t){t.stopPropagation()}).on("click.bs.dropdown.data-api",s,a.prototype.toggle).on("keydown.bs.dropdown.data-api",s,a.prototype.keydown).on("keydown.bs.dropdown.data-api",'[role="menu"]',a.prototype.keydown).on("keydown.bs.dropdown.data-api",'[role="listbox"]',a.prototype.keydown)}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.tooltip"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.tooltip",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.init("tooltip",t,e)};o.VERSION="3.3.2",o.TRANSITION_DURATION=150,o.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},o.prototype.init=function(e,o,i){if(this.enabled=!0,this.type=e,this.$element=t(o),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&t(this.options.viewport.selector||this.options.viewport),this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var a=n[s];if("click"==a)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=a){var r="hover"==a?"mouseenter":"focusin",l="hover"==a?"mouseleave":"focusout";this.$element.on(r+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(l+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},o.prototype.getDelegateOptions=function(){var e={},o=this.getDefaults();return this._options&&t.each(this._options,function(t,i){o[t]!=i&&(e[t]=i)}),e},o.prototype.enter=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o&&o.$tip&&o.$tip.is(":visible")?void(o.hoverState="in"):(o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),clearTimeout(o.timeout),o.hoverState="in",o.options.delay&&o.options.delay.show?void(o.timeout=setTimeout(function(){"in"==o.hoverState&&o.show()},o.options.delay.show)):o.show())},o.prototype.leave=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),clearTimeout(o.timeout),o.hoverState="out",o.options.delay&&o.options.delay.hide?void(o.timeout=setTimeout(function(){"out"==o.hoverState&&o.hide()},o.options.delay.hide)):o.hide()},o.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var i=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!i)return;var n=this,s=this.tip(),a=this.getUID(this.type);this.setContent(),s.attr("id",a),this.$element.attr("aria-describedby",a),this.options.animation&&s.addClass("fade");var r="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,l=/\s?auto?\s?/i,p=l.test(r);p&&(r=r.replace(l,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(r).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element);var h=this.getPosition(),d=s[0].offsetWidth,c=s[0].offsetHeight;if(p){var f=r,u=this.options.container?t(this.options.container):this.$element.parent(),g=this.getPosition(u);r="bottom"==r&&h.bottom+c>g.bottom?"top":"top"==r&&h.top-c<g.top?"bottom":"right"==r&&h.right+d>g.width?"left":"left"==r&&h.left-d<g.left?"right":r,s.removeClass(f).addClass(r)}var v=this.getCalculatedOffset(r,h,d,c);this.applyPlacement(v,r);var b=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",b).emulateTransitionEnd(o.TRANSITION_DURATION):b()}},o.prototype.applyPlacement=function(e,o){var i=this.tip(),n=i[0].offsetWidth,s=i[0].offsetHeight,a=parseInt(i.css("margin-top"),10),r=parseInt(i.css("margin-left"),10);isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.top=e.top+a,e.left=e.left+r,t.offset.setOffset(i[0],t.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),i.addClass("in");var l=i[0].offsetWidth,p=i[0].offsetHeight;"top"==o&&p!=s&&(e.top=e.top+s-p);var h=this.getViewportAdjustedDelta(o,e,l,p);h.left?e.left+=h.left:e.top+=h.top;var d=/top|bottom/.test(o),c=d?2*h.left-n+l:2*h.top-s+p,f=d?"offsetWidth":"offsetHeight";i.offset(e),this.replaceArrow(c,i[0][f],d)},o.prototype.replaceArrow=function(t,e,o){this.arrow().css(o?"left":"top",50*(1-t/e)+"%").css(o?"top":"left","")},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},o.prototype.hide=function(e){function i(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),a=t.Event("hide.bs."+this.type);return this.$element.trigger(a),a.isDefaultPrevented()?void 0:(s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i(),this.hoverState=null,this)},o.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},o.prototype.hasContent=function(){return this.getTitle()},o.prototype.getPosition=function(e){e=e||this.$element;var o=e[0],i="BODY"==o.tagName,n=o.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=i?{top:0,left:0}:e.offset(),a={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},r=i?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,a,r,s)},o.prototype.getCalculatedOffset=function(t,e,o,i){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-o/2}:"top"==t?{top:e.top-i,left:e.left+e.width/2-o/2}:"left"==t?{top:e.top+e.height/2-i/2,left:e.left-o}:{top:e.top+e.height/2-i/2,left:e.left+e.width}},o.prototype.getViewportAdjustedDelta=function(t,e,o,i){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,a=this.getPosition(this.$viewport);if(/right|left/.test(t)){var r=e.top-s-a.scroll,l=e.top+s-a.scroll+i;r<a.top?n.top=a.top-r:l>a.top+a.height&&(n.top=a.top+a.height-l)}else{var p=e.left-s,h=e.left+s+o;p<a.left?n.left=a.left-p:h>a.width&&(n.left=a.left+a.width-h)}return n},o.prototype.getTitle=function(){var t,e=this.$element,o=this.options;return t=e.attr("data-original-title")||("function"==typeof o.title?o.title.call(e[0]):o.title)},o.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},o.prototype.tip=function(){return this.$tip=this.$tip||t(this.options.template)},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},o.prototype.enable=function(){this.enabled=!0},o.prototype.disable=function(){this.enabled=!1},o.prototype.toggleEnabled=function(){this.enabled=!this.enabled},o.prototype.toggle=function(e){var o=this;e&&(o=t(e.currentTarget).data("bs."+this.type),o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o))),o.tip().hasClass("in")?o.leave(o):o.enter(o)},o.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type)})};var i=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=o,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=i,this}}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.tab");n||i.data("bs.tab",n=new o(this)),"string"==typeof e&&n[e]()})}var o=function(e){this.element=t(e)};o.VERSION="3.3.2",o.TRANSITION_DURATION=150,o.prototype.show=function(){var e=this.element,o=e.closest("ul:not(.dropdown-menu)"),i=e.data("target");if(i||(i=e.attr("href"),i=i&&i.replace(/.*(?=#[^\s]*$)/,"")),!e.parent("li").hasClass("active")){var n=o.find(".active:last a"),s=t.Event("hide.bs.tab",{relatedTarget:e[0]}),a=t.Event("show.bs.tab",{relatedTarget:n[0]});if(n.trigger(s),e.trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){var r=t(i);this.activate(e.closest("li"),o),this.activate(r,r.parent(),function(){n.trigger({type:"hidden.bs.tab",relatedTarget:e[0]}),e.trigger({type:"shown.bs.tab",relatedTarget:n[0]})})}}},o.prototype.activate=function(e,i,n){function s(){a.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),e.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),r?(e[0].offsetWidth,e.addClass("in")):e.removeClass("fade"),e.parent(".dropdown-menu").length&&e.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),n&&n()}var a=i.find("> .active"),r=n&&t.support.transition&&(a.length&&a.hasClass("fade")||!!i.find("> .fade").length);a.length&&r?a.one("bsTransitionEnd",s).emulateTransitionEnd(o.TRANSITION_DURATION):s(),a.removeClass("in")};var i=t.fn.tab;t.fn.tab=e,t.fn.tab.Constructor=o,t.fn.tab.noConflict=function(){return t.fn.tab=i,this};var n=function(o){o.preventDefault(),e.call(t(this),"show")};t(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',n).on("click.bs.tab.data-api",'[data-toggle="pill"]',n)}(jQuery);
assets/js/image_zoom-init.js ADDED
@@ -0,0 +1,266 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;(function(a){(jQuery.browser=jQuery.browser||{}).mobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|android|ipad|playbook|silk|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))})(navigator.userAgent||navigator.vendor||window.opera);
2
+
3
+ !function(a){function b(){var a=document.createElement("p"),b=!1;if(a.addEventListener)a.addEventListener("DOMAttrModified",function(){b=!0},!1);else{if(!a.attachEvent)return!1;a.attachEvent("onDOMAttrModified",function(){b=!0})}return a.setAttribute("id","target"),b}function c(b,c){if(b){var d=this.data("attr-old-value");if(c.attributeName.indexOf("style")>=0){d.style||(d.style={});var e=c.attributeName.split(".");c.attributeName=e[0],c.oldValue=d.style[e[1]],c.newValue=e[1]+":"+this.prop("style")[a.camelCase(e[1])],d.style[e[1]]=c.newValue}else c.oldValue=d[c.attributeName],c.newValue=this.attr(c.attributeName),d[c.attributeName]=c.newValue;this.data("attr-old-value",d)}}var d=window.MutationObserver||window.WebKitMutationObserver;a.fn.attrchange=function(e,f){if("object"==typeof e){var g={trackValues:!1,callback:a.noop};if("function"==typeof e?g.callback=e:a.extend(g,e),g.trackValues&&this.each(function(b,c){for(var d,e={},f=0,g=c.attributes,h=g.length;h>f;f++)d=g.item(f),e[d.nodeName]=d.value;a(this).data("attr-old-value",e)}),d){var h={subtree:!1,attributes:!0,attributeOldValue:g.trackValues},i=new d(function(b){b.forEach(function(b){var c=b.target;g.trackValues&&(b.newValue=a(c).attr(b.attributeName)),"connected"===a(c).data("attrchange-status")&&g.callback.call(c,b)})});return this.data("attrchange-method","Mutation Observer").data("attrchange-status","connected").data("attrchange-obs",i).each(function(){i.observe(this,h)})}return b()?this.data("attrchange-method","DOMAttrModified").data("attrchange-status","connected").on("DOMAttrModified",function(b){b.originalEvent&&(b=b.originalEvent),b.attributeName=b.attrName,b.oldValue=b.prevValue,"connected"===a(this).data("attrchange-status")&&g.callback.call(this,b)}):"onpropertychange"in document.body?this.data("attrchange-method","propertychange").data("attrchange-status","connected").on("propertychange",function(b){b.attributeName=window.event.propertyName,c.call(a(this),g.trackValues,b),"connected"===a(this).data("attrchange-status")&&g.callback.call(this,b)}):this}return"string"==typeof e&&a.fn.attrchange.hasOwnProperty("extensions")&&a.fn.attrchange.extensions.hasOwnProperty(e)?a.fn.attrchange.extensions[e].call(this,f):void 0}}(jQuery);
4
+
5
+
6
+ jQuery(document).ready(function( $ ){
7
+
8
+ if($.browser.mobile && IZ.enable_mobile != '1' ) {
9
+ return;
10
+ }
11
+
12
+ var options = IZ.options;
13
+
14
+ // Fix for the Lazy Load plugin with jQuery.sonar
15
+ $("img[data-lazy-src]").each(function(){
16
+ $(this).attr('data-zoom-image', $(this).data('lazy-src'));
17
+ });
18
+
19
+ // Get the image url from data-large_image
20
+ $("img[data-large_image]").each(function(){
21
+ $(this).attr('data-zoom-image', $(this).data('large_image'));
22
+ });
23
+
24
+
25
+ // Start the zoom for the normal images
26
+ $(".zoooom, .zoooom img").image_zoom(options);
27
+
28
+ // WooCommerce category pages
29
+ if ( IZ.woo_categories == '1' ) {
30
+ $(".tax-product_cat .products img").image_zoom(options);
31
+ }
32
+
33
+ // Fix for the LazyLoad (unveil.js) plugins
34
+ if (typeof $.unveil === "function") {
35
+ $("img.unveil").unveil(0, function() {
36
+ $(this).load(function() {
37
+ $("img.zoooom, .zoooom img").image_zoom(options);
38
+ });
39
+ });
40
+ }
41
+
42
+
43
+ // Resize the zoom windows when resizing the page
44
+ $(window).bind('resize', function(e) {
45
+ window.resizeEvt;
46
+ $(window).resize(function() {
47
+ clearTimeout(window.resizeEvt);
48
+ window.resizeEvt = setTimeout(function() {
49
+ $(".zoomContainer").remove();
50
+ $(".zoooom, .zoooom img, .attachment-shop_single").image_zoom(options);
51
+ $(".tax-product_cat .products img").image_zoom(options);
52
+ }, 500);
53
+ });
54
+ });
55
+
56
+
57
+
58
+ // Show zoom on the WooCommerce gallery
59
+ if ( IZ.with_woocommerce == '1' ) {
60
+ $(".attachment-shop_single").image_zoom(options);
61
+
62
+ $("a[data-rel^='zoomImage']").each(function(index){
63
+ $(this).click(function(event){
64
+ // If there are more than one WooCommerce gallery, exchange the thumbnail with the closest .attachment-shop_single
65
+ var obj1 = $(".attachment-shop_single");
66
+ if ( obj1.length > 1 ) {
67
+ var obj1 = $(this).closest('.images').find( $(".attachment-shop_single") );
68
+ }
69
+ var obj2 = $(this).find("img");
70
+
71
+ event.preventDefault();
72
+
73
+ if ( obj2.hasClass('attachment-shop_single') === false ) {
74
+
75
+ // Remove the srcset and sizes
76
+ obj1.removeAttr('srcset').removeAttr('sizes');
77
+ obj2.removeAttr('srcset').removeAttr('sizes');
78
+
79
+ var thumb_src = obj2.attr('src');
80
+
81
+ // Exchange the attributes
82
+ $.each(['src', 'alt', 'title'], function(key,attr) {
83
+ var temp;
84
+ if ( obj1.attr( attr ) ) temp = obj1.attr( attr );
85
+ if ( obj2.attr( attr ) ) {
86
+ obj1.attr(attr, obj2.attr(attr) );
87
+ } else {
88
+ obj1.removeAttr( attr );
89
+ }
90
+ if ( IZ.exchange_thumbnails == '1' ) {
91
+ if ( temp && temp.length > 0 ) {
92
+ obj2.attr(attr, temp);
93
+ } else {
94
+ obj2.removeAttr( attr );
95
+ }
96
+ }
97
+ });
98
+
99
+ // Exchange the link sources
100
+ var temp;
101
+ temp = obj2.parent().attr('href');
102
+ if ( IZ.exchange_thumbnails == '1' ) {
103
+ obj2.parent().attr('href', obj1.parent().attr('href'));
104
+ }
105
+ obj1.parent().attr('href', temp );
106
+
107
+ // Set the obj1.src = the link source
108
+ obj1.attr('src', temp );
109
+
110
+ // Set the obj2.src = data-thumbnail-src
111
+ if ( obj1.data('thumbnail-src') && IZ.exchange_thumbnails == '1' ) {
112
+ obj2.attr( 'src', obj1.attr('data-thumbnail-src'));
113
+ }
114
+
115
+ // Set the obj1.data-thumbnail-src
116
+ obj1.attr('data-thumbnail-src', thumb_src );
117
+
118
+ // Replace the data-zoom-image
119
+ temp = obj1.data('zoom-image');
120
+ if ( !obj2.data('zoom-image') ) obj2.data('zoom-image', '');
121
+ obj1.data('zoom-image', obj2.data('zoom-image'));
122
+ if( ! temp ) temp = '';
123
+ obj2.data('zoom-image', temp);
124
+
125
+ // Remove the old zoom and reactive the new zoom
126
+ $(".zoomContainer").remove();
127
+ $(".attachment-shop_single").image_zoom(options);
128
+ }
129
+
130
+ });
131
+ });
132
+ }
133
+
134
+
135
+ // Show zoom on the WooCommerce 3.0.+ gallery with slider
136
+ if ( IZ.with_woocommerce == '1' && (IZ.woo_slider == '1' || $('.woo_product_slider_enabled').length > 0 )) {
137
+ if ( $(".woocommerce-product-gallery img").length > 0 ) {
138
+
139
+ var first_img = ".woocommerce-product-gallery__wrapper img";
140
+ setTimeout( function() {
141
+ if ( $(".flex-viewport").length > 0 ) {
142
+ first_img = ".woocommerce-product-gallery__wrapper .flex-active-slide img";
143
+ }
144
+ $(first_img).first().image_zoom( options );
145
+ }, 500 );
146
+
147
+ var flexslider_counter = 0;
148
+ var old_value = "";
149
+ $(".woocommerce-product-gallery__wrapper").attrchange({
150
+ trackValues: true,
151
+ callback: function(event) {
152
+ if ( event.newValue != old_value ) {
153
+ $(".zoomContainer").remove();
154
+ setTimeout( function() {
155
+ $(first_img).first().image_zoom(options);
156
+ }, 550);
157
+ }
158
+ old_value = event.newValue;
159
+ }
160
+ });
161
+
162
+ // Resize the zoom windows when resizing the page
163
+ $(window).bind('resize', function(e) {
164
+ window.resizeEvt;
165
+ $(window).resize(function() {
166
+ clearTimeout(window.resizeEvt);
167
+ window.resizeEvt = setTimeout(function() {
168
+ $(".zoomContainer").remove();
169
+ $(first_img).first().image_zoom(options);
170
+ }, 300);
171
+ });
172
+ });
173
+
174
+ // Remove the click action on the images
175
+ $(".woocommerce-product-gallery img").click(function(e){
176
+ e.preventDefault();
177
+ });
178
+
179
+ }
180
+ }
181
+
182
+
183
+
184
+
185
+ // Show zoom on the WooCommerce 3.0.+ gallery without slider
186
+ if ( IZ.with_woocommerce == '1' && (IZ.woo_slider == '0' || $('.woo_product_slider_disabled').length > 0)) {
187
+ var first_img = $('.woocommerce-product-gallery__image:first-child img');
188
+
189
+ // Zoom on the first image
190
+ first_img.image_zoom(options);
191
+
192
+ // Remove the click action on the images
193
+ $('.woocommerce-product-gallery__image img').click(function(e){
194
+ e.preventDefault();
195
+ });
196
+
197
+
198
+ $('.woocommerce-product-gallery__image img').each(function(i) {
199
+ $(this).removeAttr('data-large_image');
200
+ $(this).removeAttr('data-large_image_width');
201
+ $(this).removeAttr('data-large_image_height');
202
+ $(this).removeAttr('srcset');
203
+ $(this).removeAttr('sizes');
204
+ });
205
+
206
+ // Switch the thumbnail with the main image
207
+ $(".woocommerce-product-gallery__image:nth-child(n+2) img").each(function(i){
208
+ $(this).click(function(e){
209
+ var this_thumb = $(this);
210
+ // Exchange the attributes
211
+ $.each(['alt', 'title', 'data-src'], function(key,attr) {
212
+ var temp;
213
+ if ( first_img.attr( attr ) ) temp = first_img.attr( attr );
214
+ if ( this_thumb.attr( attr ) ) {
215
+ first_img.attr(attr, this_thumb.attr(attr) );
216
+ } else {
217
+ first_img.removeAttr( attr );
218
+ }
219
+ if ( IZ.exchange_thumbnails == '1' ) {
220
+ if ( temp && temp.length > 0 ) {
221
+ this_thumb.attr(attr, temp);
222
+ } else {
223
+ this_thumb.removeAttr( attr );
224
+ }
225
+ }
226
+
227
+ });
228
+
229
+ var thumb_src = this_thumb.attr('src');
230
+
231
+
232
+ // Exchange the link sources
233
+ var temp;
234
+ temp = this_thumb.parent().attr('href');
235
+ if ( IZ.exchange_thumbnails == '1' ) {
236
+ this_thumb.parent().attr('href', first_img.parent().attr('href'));
237
+ }
238
+ first_img.parent().attr('href', temp );
239
+
240
+ // Set the first_img.src = the link source
241
+ first_img.attr('src', temp );
242
+
243
+ // Set the this_thumb.src = data-thumbnail-src
244
+ if ( first_img.data('thumbnail-src') && IZ.exchange_thumbnails == '1' ) {
245
+ this_thumb.attr( 'src', first_img.attr('data-thumbnail-src'));
246
+ }
247
+
248
+ // Set the first_img.data-thumbnail-src
249
+ first_img.attr('data-thumbnail-src', thumb_src );
250
+
251
+ // Replace the data-zoom-image
252
+ temp = first_img.data('zoom-image');
253
+ if ( !this_thumb.data('zoom-image') ) this_thumb.data('zoom-image', '');
254
+ first_img.data('zoom-image', this_thumb.data('zoom-image'));
255
+ if( ! temp ) temp = '';
256
+ this_thumb.data('zoom-image', temp);
257
+
258
+
259
+ // Remove the old zoom and reactive the new zoom
260
+ $(".zoomContainer").remove();
261
+ first_img.image_zoom(options);
262
+
263
+ });
264
+ });
265
+ }
266
+ });
assets/js/image_zoom.settings.min.js ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ /*! Image Zoooom - v0.1.0 - 2015-12-17
2
+ * Copyright (c) 2015 Diana Burduja; Licensed MIT license */
3
+ jQuery(document).ready(function(a){function b(){var b={},e={lensShape:a("input[name=lensShape]:checked").val(),cursorType:a("input[name=cursorType]:checked").val(),zwEasing:parseInt(a("#zwEasing").val()),lensSize:parseInt(a("#lensSize").val()),lensColour:a("#lensColour").val(),lensOverlay:a("#lensOverlay").is(":checked"),borderThickness:parseInt(a("#borderThickness").val()),borderColor:a("#borderColor").val(),borderRadius:parseInt(a("#borderRadius").val()),zwWidth:parseInt(a("#zwWidth").val()),zwHeight:parseInt(a("#zwHeight").val()),zwShadow:parseInt(a("#zwShadow").val()),zwPadding:parseInt(a("#zwPadding").val()),zwBorderThickness:parseInt(a("#zwBorderThickness").val()),zwBorderColor:a("#zwBorderColor").val(),zwBorderRadius:parseInt(a("#zwBorderRadius").val()),lensFade:1e3*parseFloat(a("#lensFade").val()),zwFade:1e3*parseFloat(a("#zwFade").val()),tint:a("#tint").is(":checked"),tintColor:a("#tintColor").val(),tintOpacity:parseFloat(a("#tintOpacity").val())};switch(c(e),e.tintOpacity>1&&(e.tintOpacity=1),e.tintOpacity<0&&(e.tintOpacity=0),"zoom"===e.cursorType&&(e.cursorType="url(../images/cursor_type_zoom.svg) auto"),e.lensOverlay===!0&&(e.lensOverlay="http://localhost/sb-test/wp-content/plugins/wp-image-zoooom-pro/assets/images/lens-overlay-1.png"),e.lensShape){case"none":b={zoomType:"inner",cursor:e.cursorType,easingAmount:e.zwEasing};break;case"square":case"round":b={lensShape:e.lensShape,zoomType:"lens",lensSize:e.lensSize,borderSize:e.borderThickness,borderColour:e.borderColor,cursor:e.cursorType,lensFadeIn:e.lensFade,lensFadeOut:e.lensFade},e.tint===!0&&(b.tint=!0,b.tintColour=e.tintColor,b.tintOpacity=e.tintOpacity);break;case"zoom_window":b={lensShape:"square",lensSize:e.lensSize,lensBorderSize:e.borderThickness,lensBorderColour:e.borderColor,lensColour:e.lensColour,lensOverlay:e.lensOverlay,borderRadius:e.zwBorderRadius,cursor:e.cursorType,zoomWindowWidth:e.zwWidth,zoomWindowHeight:e.zwHeight,zoomWindowShadow:e.zwShadow,borderSize:e.zwBorderThickness,borderColour:e.zwBorderColor,zoomWindowOffsetx:e.zwPadding,lensFadeIn:e.lensFade,lensFadeOut:e.lensFade,zoomWindowFadeIn:e.zwFade,zoomWindowFadeOut:e.zwFade,easingAmount:e.zwEasing,zoomWindowPosition:1},e.tint===!0&&(b.tint=!0,b.tintColour=e.tintColor,b.tintOpacity=e.tintOpacity),a("#demo_wrapper").css("text-align","left")}a("#demo").image_zoom(b),a(window).bind("resize",function(){a(window).resize(function(){clearTimeout(window.resizeEvt),window.resizeEvt=setTimeout(function(){a(".zoomContainer").remove(),a("#demo").image_zoom(b)},300)})}),d(e)}function c(b){(isNaN(b.zwEasing)||b.zwEasing<0||b.zwEasing>200)&&(e("<b>Animation Easing Effect</b> accepts integers between 0 and 200. Your value was stripped to 12"),b.zwEasing=12,a("#zwEasing").val("12")),(isNaN(b.lensSize)||b.lensSize<20||b.lensSize>2e3)&&(e("<b>Lens Size</b> accepts integers between 20 and 2000. Your value was reset to 200"),b.lensSize=200,a("#lensSize").val("200")),(isNaN(b.borderThickness)||b.borderThickness<0||b.borderThickness>200)&&(e("<b>Border Thickness</b> accepts integers between 0 and 200. Your value was reset to 1"),b.borderThickness=1,a("#borderThickness").val("1")),(isNaN(b.lensFade)||b.lensFade<0||b.lensFade>1e4)&&(e("<b>Fade Time</b> accepts integers between 0 and 10. Your value was reset to 1"),b.lensFade=1,a("#lensFade").val("1")),(isNaN(b.tintOpacity)||b.tintOpacity<0||b.tintOpacity>1)&&(e("<b>Tint Opacity</b> accepts a number between 0 and 1. Your value was reset to 0.5"),b.tintOpacity=.5,a("#tintOpacity").val("0.5")),(isNaN(b.zwWidth)||b.zwWidth<0||b.zwWidth>2e3)&&(e("<b>Zoom Window Width</b> accepts a number between 0 and 2000. Your value was reset to 400"),b.zwWidth=400,a("#zwWidth").val("400")),(isNaN(b.zwHeight)||b.zwHeight<0||b.zwHeight>2e3)&&(e("<b>Zoom Window Height</b> accepts a number between 0 and 2000. Your value was reset to 360"),b.zwHeight=360,a("#zwHeight").val("360")),(isNaN(b.zwBorderThickness)||b.zwBorderThickness<0||b.zwBorderThickness>200)&&(e("<b>Border Thickness</b> accepts integers between 0 and 200. Your value was reset to 4"),b.zwBorderThickness=4,a("#zwBorderThickness").val("4")),(isNaN(b.zwBorderRadius)||b.zwBorderRadius<0||b.zwBorderRadius>500)&&(e("<b>Rounded Corners</b> accepts integers between 0 and 500. Your value was reset to 0"),b.zwBorderRadius=0,a("#zwBorderRadius").val("0")),(isNaN(b.zwFade)||b.zwFade<0||b.zwFade>1e4)&&(e("<b>Fade Time</b> accepts integers between 0 and 10. Your value was reset to 0"),b.zwFade=0,a("#zwFade").val("0"))}function d(b){switch(a("#tab_lens, #tab_zoom_window").removeClass("disabled"),a("#tab_lens a").attr("href","#lens_settings"),a("#tab_zoom_window a").attr("href","#zoom_window_settings"),a("#lensSize").removeAttr("disabled"),a("#lensColour").removeAttr("disabled"),a("#lensBgImage").removeAttr("disabled"),a("#tintColor").removeAttr("disabled"),a("#tintOpacity").removeAttr("disabled"),a("#lensColour").removeAttr("disabled"),a("#lensOverlay").removeAttr("disabled"),b.lensShape){case"none":a("#tab_lens, #tab_zoom_window").addClass("disabled"),a("#tab_lens a").attr("href",""),a("#tab_zoom_window a").attr("href",""),a("#lensColour").attr("disabled","disabled"),a("#lensBgImage").attr("disabled","disabled");break;case"square":case"round":a("#tab_zoom_window").addClass("disabled"),a("#tab_zoom_window a").attr("href",""),a("#lensColour").attr("disabled","disabled"),a("#lensBgImage").attr("disabled","disabled");break;case"zoom_window":a("#lensSize").attr("disabled","disabled")}b.tint===!1?(a("#tintColor").attr("disabled","disabled"),a("#tintOpacity").attr("disabled","disabled")):(a("#lensColour").attr("disabled","disabled"),a("#lensOverlay").attr("disabled","disabled"))}function e(b){a("#alert_messages").html('<div class="alert alert-dismissable alert-danger"><button type="button" class="close" data-dismiss="alert">&times;</button>'+b+"</div>")}a('[data-toggle="tooltip"]').tooltip(),a("#demo").length>0&&b(),a(".form-group input").change(b)});
assets/js/jquery.image_zoom.min.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ /*! Image Zoooom - v0.2 - 2016-05-11
2
+ * Copyright (c) 2016 Diana Burduja; Licensed MIT license
3
+
4
+ This is a very strongly modified version of the https://github.com/elevateweb/elevatezoom jQuery plugin. */
5
+ (function($,window,document,undefined){"use strict";var ImageZoooom={init:function(options,elem){var self=this;self.elem=elem;self.$elem=$(elem);self.options=options;self.img_big={src:self.$elem.attr("src")};if(self.$elem.data("zoom-image")){self.img_big.src=self.$elem.data("zoom-image")}else if(self.$elem.attr("srcset")){var set=self.$elem.attr("srcset").split(",");var max_width=0;var max_src="";$.each(set,function(i,src){var parts=$.trim(src).split(" ");if(parseInt(parts[1])>max_width){max_width=parseInt(parts[1]);max_src=parts[0]}});if(max_src!==""){self.img_big.src=max_src}}self.ratio={width:1,height:1};self.zw={height:parseInt(self.options.zoomWindowHeight),width:parseInt(self.options.zoomWindowWidth)};self.lens={height:self.options.lensSize,width:self.options.lensSize};self.screen={height:$(document).height(),width:$(document).width()};if(self.options.tint){self.options.lensColour="none";self.options.lensOpacity="1"}if(self.options.zoomType==="inner"){self.options.showLens=false}self.$elem.parent().removeAttr("title").removeAttr("alt");if(self.options.responsive===true&&self.screen.width<=self.options.responsiveThreshold){self.options.zoomType="inner";self.options.showLens=false}setTimeout(function(){var newImg=new Image;newImg.onload=function(){self.img_big.width=newImg.width;self.img_big.height=newImg.height;self.startZoom()};newImg.src=self.img_big.src},1)},buildZoomContainer:function(){var self=this;self.zoomContainer=$("<div />").addClass("zoomContainer").css({"-webkit-transform":"translateZ(0)",position:"absolute",left:self.img_small.offset.left+"px",top:self.img_small.offset.top+"px",height:self.img_small.height+"px",width:self.img_small.width+"px","z-index":"999"}).appendTo("body")},buildZoomLens:function(){var self=this;if(self.options.containLensZoom){self.zoomContainer.css("overflow","hidden")}var lensStyle={"background-position":"0px 0px","float":"left",display:"none",border:self.options.borderSize+"px solid "+self.options.borderColour,width:self.options.lensSize+"px",height:self.options.lensSize+"px","border-radius":self.options.borderRadius+"px",cursor:self.options.cursor,"background-repeat":"no-repeat",position:"absolute",overflow:"hidden","z-index":"999"};if(self.options.tint===true){lensStyle["-webkit-transform"]="translateZ(0)";lensStyle["opacity"]=self.options.lensOpacity;lensStyle["-ms-filter"]="progid:DXImageTransform.Microsoft.Alpha(Opacity="+self.options.lensOpacity*100+")";lensStyle["filter"]="alpha(opacity= "+self.options.lensOpacity*100+")"}if(self.options.lensShape==="round"){var lensRadius=self.options.lensSize/2+self.options.borderSize+"px";lensStyle["-webkit-border-radius"]=lensRadius;lensStyle["-moz-border-radius"]=lensRadius;lensStyle["border-radius"]=lensRadius}self.zoomLens=$("<div />").addClass("zoomLens").css(lensStyle).appendTo(self.zoomContainer).click(function(){self.$elem.trigger("click")})},buildZoomWindow:function(){var self=this;self.lens.height=self.zw.height/self.ratio.height;if(self.img_big.height<self.zw.height){self.lens.height=self.img_small.height}self.lens.width=self.zw.width/self.ratio.width;if(self.img_big.width<self.zw.width){self.lens.width=self.img_small.width}var lensStyle={"background-position":"0px 0px",display:"none",overflow:"hidden","z-index":"999","-webkit-transform":"translateZ(0)",opacity:self.options.lensOpacity,"-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity="+self.options.lensOpacity*100+")",filter:"alpha(opacity= "+self.options.lensOpacity*100+")",zoom:1,width:self.lens.width+"px",height:self.lens.height+"px","background-color":self.options.lensColour,cursor:self.options.cursor,"border-radius":self.options.borderRadius+"px",border:self.options.lensBorderSize+"px solid "+self.options.lensBorderColour,"background-repeat":"no-repeat",position:"absolute","box-shadow":"-0px -0px 10px rgba(0, 0, 0, 0.4)"};if(self.options.lensOverlay!==false){lensStyle["background"]="url("+self.options.lensOverlay+") "+self.options.lensColour}self.zoomLens=$("<div />").addClass("zoomLens").css(lensStyle).appendTo(self.zoomContainer).click(function(){self.$elem.trigger("click")});var zoomWindowStyle={overflow:"hidden","background-position":"0px 0px","text-align":"center","background-color":self.options.zoomWindowBgColour,width:self.zw.width+"px",height:self.zw.height+"px","float":"left","border-radius":self.options.borderRadius+"px","background-size":self.img_big.width/self.currentZoomLevel+"px "+self.img_big.height/self.currentZoomLevel+"px",display:"none","z-index":"999",border:self.options.borderSize+"px solid "+self.options.borderColour,"background-repeat":"no-repeat",position:"absolute"};if(self.options.zoomWindowShadow>0){var zoomWindowShadowText=self.options.zoomWindowShadow*2+"px "+self.options.zoomWindowShadow*2+"px "+self.options.zoomWindowShadow+"px #ccc";zoomWindowStyle["box-shadow"]=zoomWindowShadowText;zoomWindowStyle["-moz-box-shadow"]=zoomWindowShadowText;zoomWindowStyle["-webkit-box-shadow"]=zoomWindowShadowText;zoomWindowStyle["-khtml-box-shadow"]=zoomWindowShadowText}return zoomWindowStyle},buildZoomInner:function(){var self=this;var borderWidth=self.$elem.css("border-left-width");var innerStyle={overflow:"hidden","margin-left":borderWidth,"margin-top":borderWidth,"background-position":"0px 0px",width:self.img_small.width+"px",height:self.img_small.height+"px","float":"left","border-radius":self.options.borderRadius+"px",display:"none",cursor:self.options.cursor,"background-repeat":"no-repeat",position:"absolute","z-index":"999"};return innerStyle},buildTint:function(){var self=this;if(!self.options.tint){return}var tintStyle={display:"block",position:"absolute","background-color":self.options.tintColour,filter:"alpha(opacity=0)",border:"none",opacity:0,"z-index":250,width:self.img_small.width+"px",height:self.img_small.height+"px"};self.tintContainer=$("<div />").addClass("tintContainer");self.zoomTint=$("<div />").addClass("zoomTint").css(tintStyle);self.zoomLens.wrap(self.tintContainer);self.zoomLens.after(self.zoomTint);var zoomTintImageCss={position:"absolute",left:"0px",top:"0px","z-index":"250",opacity:"0","max-width":"none",width:self.img_small.width+"px",height:self.img_small.height+"px"};if(self.options.zoomType==="window"){zoomTintImageCss.opacity=1}self.zoomTintImage=$("<img />").css(zoomTintImageCss).attr("src",self.img_big.src).appendTo(self.zoomLens).click(function(){self.$elem.trigger("click")})},startZoom:function(){var self=this;self.isWindowActive=false;self.isLensActive=false;self.isTintActive=false;self.zoomLock=1;self.scrollingLock=false;self.changeBgSize=false;self.currentZoomLevel=self.options.zoomLevel;self.img_small={src:self.$elem.attr("src"),width:self.$elem.width(),height:self.$elem.height(),offset:self.$elem.offset()};self.ratio={width:self.img_big.width/self.img_small.width/self.currentZoomLevel,height:self.img_big.height/self.img_small.height/self.currentZoomLevel};if((self.ratio.height<1||self.ratio.width<1)&&self.options.scrollZoom!==true){return false}self.img_small.offset=self.$elem.offset();self.buildZoomContainer();var zoomWindowStyle={};switch(self.options.zoomType){case"lens":self.buildZoomLens();self.buildTint();break;case"window":zoomWindowStyle=self.buildZoomWindow();self.buildTint();break;case"inner":zoomWindowStyle=self.buildZoomInner();break}var appendTo="body";if(!isNaN(self.options.zoomWindowPosition)){appendTo=self.zoomContainer}self.zoomWindow=$("<div />").addClass("zoomWindow").css(zoomWindowStyle).appendTo(appendTo).click(function(){self.$elem.trigger("click")});var customText=$("<div />").addClass("iz_watermark").css({width:self.img_small.width+"px",height:self.img_small.height+"px","vertical-align":self.options.customTextVAlign,display:"table-cell","text-align":self.options.customTextAlign,color:self.options.customTextColor,"font-size":self.options.customTextSize+"px",padding:"3px"}).html(self.options.customText);if($(".iz_watermark").length>0){$(".iz_watermark").remove()}self.zoomWindow.after(customText);self.zoomWindowContainer=$("<div/>").addClass("zoomWindowContainer").css("width",self.zw.width);self.zoomWindow.wrap(self.zoomWindowContainer);var backgroundImage={backgroundImage:"url('"+self.img_big.src+"')"};if(self.options.zoomType==="lens"){self.zoomLens.css(backgroundImage)}else{self.zoomWindow.css(backgroundImage)}self.registerTouchEvents();self.registerMouseEvents();self.registerScrollZoom();self.zoomContainer.add(self.$elem).mouseenter(function(){self.setElements(true)}).mouseleave(function(){if(!self.scrollLock){self.setElements(false)}});if(self.options.zoomType!=="inner"){self.zoomWindow.mouseenter(function(){self.setElements(false)})}else{self.showZoomWindow(false)}},registerTouchEvents:function(){var self=this;self.zoomContainer.bind("touchstart",function(e){e.preventDefault();var touch=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0];self.mouse={left:parseInt(touch.pageX-self.img_small.offset.left),top:parseInt(touch.pageY-self.img_small.offset.top)};self.setPosition(touch);self.setElements(true)});self.zoomContainer.bind("touchend",function(){if(!self.scrollLock){self.setElements(false)}});self.zoomContainer.bind("touchmove",function(e){e.preventDefault();var touch=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0];self.mouse={left:parseInt(touch.pageX-self.img_small.offset.left),top:parseInt(touch.pageY-self.img_small.offset.top)};self.setPosition(touch)})},registerMouseEvents:function(){var self=this;var registerMouseMove=function(e){self.mouse={left:parseInt(e.pageX-self.img_small.offset.left),top:parseInt(e.pageY-self.img_small.offset.top)};if(self.lastX!==e.clientX||self.lastY!==e.clientY){self.setPosition(e);self.currentLoc=e}self.lastX=e.clientX;self.lastY=e.clientY};var registerMouseAndShowWindow=function(e){if(self.outOfBound===false){self.setElements(true)}registerMouseMove(e)};self.$elem.bind("mousemove",registerMouseAndShowWindow);self.zoomContainer.bind("mousemove",registerMouseAndShowWindow);if(self.options.zoomType==="inner"){self.zoomWindow.bind("mousemove",registerMouseMove)}else{self.zoomLens.bind("mousemove",registerMouseMove);if(self.options.tint){self.zoomTint.bind("mousemove",registerMouseMove)}}},registerScrollZoom:function(){var self=this;if(!self.options.scrollZoom){return false}if(self.options.zoomLevel!==1){self.changeZoomLevel(self.currentZoomLevel)}var minZoomLevel=self.options.scrollZoomIncrement*2;if(self.options.minZoomLevel){minZoomLevel=self.options.minZoomLevel}var registerScrollZoomEvent=function(e){self.scrollLock=true;clearTimeout($.data(this,"timer"));$.data(this,"timer",setTimeout(function(){self.scrollLock=false},250));var theEvent=e.originalEvent.wheelDelta||e.originalEvent.detail*-1;e.stopImmediatePropagation();e.stopPropagation();e.preventDefault();var changeZoom=0;self.currentZoomLevel=parseFloat(self.currentZoomLevel);if(theEvent>0){if(self.currentZoomLevel>=minZoomLevel){changeZoom=self.currentZoomLevel-self.options.scrollZoomIncrement}}else{changeZoom=self.currentZoomLevel+self.options.scrollZoomIncrement}self.changeZoomLevel(changeZoom);return false};self.zoomContainer.add(self.$elem).bind("mousewheel DOMMouseScroll MozMousePixelScroll",registerScrollZoomEvent)},setElements:function(type){var self=this;if(!self.options.zoomEnabled){return false}if(!self.isWindowSet){return}self.showZoomWindow(type);self.showLens(type);self.showTint(type)},setPosition:function(e){var self=this;if(!self.options.zoomEnabled){return false}if(self.options.tint&&self.options.zoomType!=="inner"){self.zoomTint.css({top:0,left:0})}if(self.options.responsive&&!self.options.scrollZoom&&self.options.showLens){if(self.options.zoomType==="lens"){self.zoomLens.css({width:self.options.lensSize+"px",height:self.options.lensSize+"px"})}else{var lensHeight=self.zw.height/self.ratio.height;if(self.img_small.height<self.zw.width/self.ratio.width){lensHeight=self.img_small.height}var lensWidth=self.zw.width/self.ratio.width;if(self.img_small.width<self.zw.width/self.ratio.height){lensWidth=self.img_small.width}self.zoomLens.css({width:lensWidth+"px",height:lensHeight+"px"});if(self.options.tint){self.zoomTintImage.css({width:self.img_small.width+"px",height:self.img_small.height+"px"})}}}self.zoomContainer.css({top:self.img_small.offset.top,left:self.img_small.offset.left});var bound={top:false,bottom:false,left:false,right:false};if(self.options.zoomType==="window"){bound.height=self.zoomLens.height()/2;bound.width=self.zoomLens.width()/2}if(self.options.zoomType==="inner"){bound.height=self.img_small.height/2/self.ratio.height;bound.width=self.img_small.width/2/self.ratio.width}bound.top=self.mouse.top<bound.height;bound.bottom=self.mouse.top>self.img_small.height-bound.height-self.options.lensBorderSize*2;bound.left=self.mouse.left<bound.width;bound.right=self.mouse.left>self.img_small.width-bound.width-self.options.lensBorderSize*2;self.bound=bound;if(self.mouse.left<=0||self.mouse.top<0||self.mouse.left>self.img_small.width||self.mouse.top>self.img_small.height){self.outOfBound=true;self.setElements(false);return}else{self.outOfBound=false;var lensLeftPos=0;var lensTopPos=0;if(self.options.showLens){lensLeftPos=self.mouse.left-self.zoomLens.width()/2;lensTopPos=self.mouse.top-self.zoomLens.height()/2}if(bound.top){lensTopPos=0}if(bound.left){self.windowLeftPos=0;lensLeftPos=0;self.tintpos=0}switch(self.options.zoomType){case"window":if(bound.bottom){lensTopPos=Math.max(self.img_small.height-self.zoomLens.height()-self.options.lensBorderSize*2,0)}if(bound.right){lensLeftPos=self.img_small.width-self.zoomLens.width()-self.options.lensBorderSize*2}if(self.options.tint){self.setTintPosition(e)}break;case"inner":if(bound.bottom){lensTopPos=Math.max(self.img_small.height-self.options.lensBorderSize*2,0)}if(bound.right){lensLeftPos=-self.options.lensBorderSize*2}break;case"lens":self.windowLeftPos=self.zoomLens.width()/2-self.mouse.left*self.ratio.width;self.windowTopPos=self.zoomLens.height()/2-self.mouse.top*self.ratio.height;self.zoomLens.css({backgroundPosition:self.windowLeftPos+"px "+self.windowTopPos+"px"});self.changeBackgroundSize();if(self.options.tint){self.setTintPosition(e)}break}self.setWindowPosition(e);if(self.options.showLens){if(self.fullwidth&&self.options.zoomType!=="lens"){lensLeftPos=0}self.zoomLens.css({left:lensLeftPos+"px",top:lensTopPos+"px"})}}},showZoomWindow:function(on){var self=this;if(self.isWindowActive===on){return}self.fadeEffect(self.zoomWindow,on,self.options.zoomWindowFadeIn,self.options.zoomWindowFadeOut);self.isWindowActive=on},showLens:function(on){var self=this;if(!self.options.showLens){return}if(self.isLensActive===on){return}self.fadeEffect(self.zoomLens,on,self.options.lensFadeIn,self.options.lensFadeOut);self.isLensActive=on},showTint:function(on){var self=this;if(!self.options.tint||self.options.zoomType==="inner"){return}if(self.isTintActive===on){return}if(on){self.zoomTint.css({opacity:self.options.tintOpacity}).animate()}self.fadeEffect(self.zoomTint,on,"slow","slow");self.isTintActive=on},fadeEffect:function(element,action,time_in,time_out){if(action){if(time_in>0){element.stop(true,true,false).fadeIn(time_in)}else{element.show()}}else{if(time_out>0){element.stop(true,true).fadeOut(time_out)}else{element.hide()}}},setWindowPosition:function(e){var self=this;if(self.options.zoomType==="inner"){self.options.zoomWindowPosition=1}self.options.zoomWindowOffsetx=parseInt(self.options.zoomWindowOffsetx);self.options.zoomWindowOffsety=parseInt(self.options.zoomWindowOffsety);var windowOffsetTop=self.options.zoomWindowOffsety;var windowOffsetLeft=self.img_small.width;if(!isNaN(self.options.zoomWindowPosition)){switch(self.options.zoomWindowPosition){case 4:case 5:case 6:case 7:case 8:windowOffsetTop=self.img_small.height;break;case 12:case 13:case 14:case 15:case 16:windowOffsetTop=-self.zoomWindow.height()-self.options.borderSize*2;break;case 1:case 11:windowOffsetTop=self.options.zoomWindowOffsety;break;case 2:case 10:windowOffsetTop=self.img_small.height/2-self.zw.height/2;break;case 3:case 9:windowOffsetTop=self.img_small.height-self.zoomWindow.height()-self.options.borderSize*2;break}switch(self.options.zoomWindowPosition){case 1:case 2:case 3:case 4:case 16:windowOffsetLeft=self.img_small.width+self.options.zoomWindowOffsetx;if(self.options.responsive===true&&self.options.zoomType==="window"){if(self.$elem.offset().left+windowOffsetLeft+self.zw.width>=self.screen.width){self.zw.width=self.screen.width-self.$elem.offset().left-windowOffsetLeft-20;self.zoomWindow.css({width:self.zw.width});self.zoomLens.css({width:self.zw.width/self.ratio.width})}}break;case 8:case 9:case 10:case 11:case 12:if(self.options.responsive===true&&self.options.zoomType==="window"){if(self.zw.width+self.options.borderSize*2+self.options.zoomWindowOffsetx>=self.$elem.offset().left){self.zw.width=self.$elem.offset().left-self.options.borderSize*2-self.options.zoomWindowOffsetx-20;self.zoomWindow.css({width:self.zw.width});self.zoomLens.css({width:self.zw.width/self.ratio.width})}}windowOffsetLeft=-self.zw.width-self.options.borderSize*2-self.options.zoomWindowOffsetx*2;break;case 5:case 15:windowOffsetLeft=self.img_small.width-self.zoomWindow.width()-self.options.borderSize*2;break;case 6:case 14:windowOffsetLeft=self.img_small.width/2-self.zw.width/2-self.options.borderSize*2;break;case 7:case 13:windowOffsetLeft=0;break}}else{var externalContainer=$("#"+self.options.zoomWindowPosition).offset();windowOffsetTop=externalContainer.top;windowOffsetLeft=externalContainer.left}self.isWindowSet=true;windowOffsetTop=windowOffsetTop+self.options.zoomWindowOffsety;windowOffsetLeft=windowOffsetLeft+self.options.zoomWindowOffsetx;self.zoomWindow.css({top:windowOffsetTop,left:windowOffsetLeft});if(self.options.zoomType==="inner"){self.zoomWindow.css({top:0,left:0})}self.windowLeftPos=self.zoomWindow.width()/2-self.mouse.left*self.ratio.width;self.windowTopPos=self.zoomWindow.height()/2-self.mouse.top*self.ratio.height;if(self.bound.top){self.windowTopPos=0}if(self.bound.left){self.windowLeftPos=0}if(self.bound.bottom){self.windowTopPos=(self.img_big.height/self.currentZoomLevel-self.zoomWindow.height())*-1}if(self.bound.right){self.windowLeftPos=(self.img_big.width/self.currentZoomLevel-self.zoomWindow.width())*-1}if(self.fullheight){self.windowTopPos=0}if(self.fullwidth){self.windowLeftPos=0}if(self.options.zoomType==="window"||self.options.zoomType==="inner"){if(self.zoomLock===1){if(self.ratio.width<=1){self.windowLeftPos=0}if(self.ratio.height<=1){self.windowTopPos=0}}if(self.img_big.height<self.zw.height){self.windowTopPos=0}if(self.img_big.width<self.zw.width){self.windowLeftPos=0}if(self.options.easingAmount>0){self.easingEffect(e)}else{self.changeBackgroundSize();self.zoomWindow.css({backgroundPosition:self.windowLeftPos+"px "+self.windowTopPos+"px"})}}},changeBackgroundSize:function(){var self=this;if(!self.changeBgSize){return}var newvalue=self.newvaluewidth;if(self.img_small.height>self.img_small.width){newvalue=self.newvalueheight}var bgSize={"background-size":self.img_big.width/self.newvalue+"px "+self.img_big.height/self.newvalue+"px"};if(self.options.zoomType==="lens"){self.zoomLens.css(bgSize)}self.zoomWindow.css(bgSize);self.changeBgSize=false},easingEffect:function(){var self=this;if(!self.xp){self.xp=0}if(!self.yp){self.yp=0}if(!self.loop){self.loop=setInterval(function(){self.xp+=(self.windowLeftPos-self.xp)/self.options.easingAmount;self.yp+=(self.windowTopPos-self.yp)/self.options.easingAmount;if(self.scrollingLock){clearInterval(self.loop);self.xp=self.zoomWindow.width()/2-self.mouse.left*self.ratio.width;self.yp=self.zoomWindow.height()/2-self.mouse.top*self.ratio.height;self.changeBackgroundSize();self.zoomWindow.css({backgroundPosition:self.windowLeftPos+"px "+self.windowTopPos+"px"});self.scrollingLock=false;self.loop=false}else{self.changeBackgroundSize();self.zoomWindow.css({backgroundPosition:self.xp+"px "+self.yp+"px"})}},16)}},setTintPosition:function(){var self=this;if(!self.options.tint){return}self.tintpos=self.zoomLens.width()/2-self.mouse.left;self.tintposy=self.zoomLens.height()/2-self.mouse.top;if(self.bound.top||self.fullheight){self.tintposy=0}if(self.bound.left||self.fullwidth){self.tintpos=0}if(self.bound.bottom){self.tintposy=(self.img_small.height-self.zoomLens.height()-self.options.lensBorderSize*2)*-1}if(self.bound.right){self.tintpos=(self.img_small.width-self.zoomLens.width()-self.options.lensBorderSize*2)*-1}self.zoomTintImage.css({left:self.tintpos+"px",top:self.tintposy+"px"})},changeZoomLevel:function(value){var self=this;self.scrollingLock=true;var newvalue=parseFloat(value).toFixed(2);self.newvalue=newvalue;var maxHeight=self.img_big.height/self.zw.height;var maxWidth=self.img_big.width/self.zw.width;if(self.options.zoomType!=="inner"){if(maxHeight<=newvalue){self.newvalueheight=maxHeight;self.fullheight=true}else{self.newvalueheight=newvalue;self.fullheight=false}self.ratio.height=self.img_big.height/self.newvalueheight/self.img_small.height;if(maxWidth<=newvalue){self.newvaluewidth=maxWidth;self.fullwidth=true}else{self.newvaluewidth=newvalue;self.fullwidth=false}self.ratio.width=self.img_big.width/self.newvaluewidth/self.img_small.width}else{maxHeight=parseFloat(self.img_big.height/self.img_small.height).toFixed(2);maxWidth=parseFloat(self.img_big.width/self.img_small.width).toFixed(2);newvalue=Math.min(maxHeight,maxWidth,newvalue);self.newvalueheight=newvalue;self.ratio.height=self.img_big.height/newvalue/self.img_small.height;if(maxHeight<=newvalue){self.fullheight=true}else{self.fullheight=false}self.ratio.width=self.img_big.width/newvalue/self.img_small.width;if(maxWidth<=newvalue){self.newvaluewidth=maxWidth;self.fullwidth=true}else{self.newvaluewidth=newvalue;self.fullwidth=false}}var scrcontinue=true;if(self.options.zoomType==="inner"&&self.newvaluewidth>maxWidth){scrcontinue=false;self.fullheight=true;self.fullwidth=true}if(scrcontinue){self.zoomLock=0;self.changeZoom=true;if(self.zw.height/self.ratio.height<=self.img_small.height){self.currentZoomLevel=self.newvalueheight;self.changeBgSize=true;if(self.options.zoomType==="window"){self.zoomLens.css({height:String(self.zw.height/self.ratio.height)+"px"})}}if(self.zw.width/self.ratio.width<=self.img_small.width){if(self.options.zoomType!=="inner"&&self.newvaluewidth>self.newvalueheight){self.currentZoomLevel=self.newvaluewidth}self.changeBgSize=true;if(self.options.zoomType==="window"){self.zoomLens.css({width:String(self.zw.width/self.ratio.width)+"px"})}}if(self.options.zoomType==="inner"){self.changeBgSize=true;if(self.img_small.width!==self.img_small.height){self.currentZoomLevel=self.newvaluewidth}}}self.setPosition(self.currentLoc)}};$.fn.image_zoom=function(options){return this.each(function(){function F(){}var settings=$.extend(true,{},$.fn.image_zoom.options,options);F.prototype=ImageZoooom;var zoom=new F;zoom.init(settings,this)})};$.fn.image_zoom.options={zoomEnabled:true,zoomLevel:1,scrollZoom:false,scrollZoomIncrement:.1,minZoomLevel:false,maxZoomLevel:false,easingAmount:12,lensSize:200,zoomWindowWidth:400,zoomWindowHeight:360,zoomWindowOffsetx:0,zoomWindowOffsety:0,zoomWindowPosition:1,zoomWindowBgColour:"#fff",zoomWindowShadow:4,lensFadeIn:false,lensFadeOut:false,lensOverlay:false,zoomWindowFadeIn:false,zoomWindowFadeOut:false,zoomWindowAlwaysShow:false,zoomTintFadeIn:false,zoomTintFadeOut:false,borderSize:4,showLens:true,borderColour:"#888",borderRadius:0,lensBorderSize:1,lensBorderColour:"#000",lensShape:"square",zoomType:"window",containLensZoom:false,lensColour:"white",lensOpacity:.4,lenszoom:false,tint:false,tintColour:"#333",tintOpacity:.4,cursor:"default",responsive:false,responsiveThreshold:550,customText:"",customTextSize:12,customTextColor:"#ccc",customTextAlign:"bottom",customTextVAlign:"right",onComplete:$.noop}})(jQuery,window,document);
assets/js/tinyMCE-button.js ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function() {
2
+ tinymce.PluginManager.add('image_zoom_button', function( editor, url ) {
3
+
4
+ var this_js = tinyMCEPreInit.mceInit.content.external_plugins.image_zoom_button;
5
+ var this_png_button = this_js.replace('js/tinyMCE-button.js', 'images/tinyMCE_button.png');
6
+
7
+ function toggle_zoom() {
8
+ var content = editor.selection.getContent();
9
+ var zoom_class = 'zoooom';
10
+
11
+ if ( content.indexOf('img ') < 0 ) {
12
+ alert('First you have to select the image to which you want to add the zoom feature');
13
+ return false;
14
+ }
15
+
16
+ if ( content.indexOf( zoom_class ) < 0 ) {
17
+ if ( content.indexOf('size-full') > 0 ) {
18
+ alert('You can add the zoom feature only to non full-size images');
19
+ return false;
20
+ }
21
+ editor.dom.addClass( editor.selection.getNode(), zoom_class );
22
+ this.active(true);
23
+ } else {
24
+ editor.dom.removeClass( editor.selection.getNode(), zoom_class );
25
+ this.active(false);
26
+ }
27
+ }
28
+
29
+ editor.addButton('image_zoom_button', {
30
+ title: 'Image Zoooom',
31
+ icon: 'icon image-zoom-icon',
32
+ // image: '../wp-content/plugins/wp-image-zoooom/assets/images/tinyMCE_button.png',
33
+ image: this_png_button,
34
+ stateSelector: 'img.zoooom',
35
+ onClick: toggle_zoom,
36
+ });
37
+ });
38
+ })();
39
+
40
+
image-zoooom.php ADDED
@@ -0,0 +1,479 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Plugin Name: WP Image Zoom
4
+ * Plugin URI: https://wordpress.org/plugins/wp-image-zoooom/
5
+ * Description: Add zoom effect over the an image, whether it is an image in a post/page or the featured image of a product in a WooCommerce shop
6
+ * Version: 1.12
7
+ * Author: SilkyPress
8
+ * Author URI: https://www.silkypress.com
9
+ * License: GPL2
10
+ *
11
+ * Text Domain: wp-image-zoooom
12
+ * Domain Path: /languages/
13
+ *
14
+ */
15
+
16
+ if ( ! defined( 'ABSPATH' ) ) {
17
+ exit; // Exit if accessed directly
18
+ }
19
+
20
+ if ( ! class_exists( 'ImageZoooom' ) ) :
21
+ /**
22
+ * Main ImageZoooom Class
23
+ *
24
+ * @class ImageZoooom
25
+ */
26
+ final class ImageZoooom {
27
+ public static $version = '1.12';
28
+ public $testing = false;
29
+ public $free = true;
30
+ protected static $_instance = null;
31
+
32
+
33
+ /**
34
+ * Main ImageZoooom Instance
35
+ *
36
+ * Ensures only one instance of ImageZoooom is loaded or can be loaded
37
+ *
38
+ * @static
39
+ * @return ImageZoooom - Main instance
40
+ */
41
+ public static function instance() {
42
+ if ( is_null( self::$_instance ) ) {
43
+ self::$_instance = new self();
44
+ }
45
+ return self::$_instance;
46
+ }
47
+
48
+ /**
49
+ * Cloning is forbidden.
50
+ */
51
+ public function __clone() {
52
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'wp-image-zoooom' ), '1.0' );
53
+ }
54
+
55
+ /**
56
+ * Unserializing instances of this class is forbidden.
57
+ */
58
+ public function __wakeup() {
59
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'wp-image-zoooom' ), '1.0' );
60
+ }
61
+
62
+ /**
63
+ * Image Zoooom Constructor
64
+ * @access public
65
+ * @return ImageZoooom
66
+ */
67
+ public function __construct() {
68
+ global $_wp_theme_features;
69
+
70
+ if ( is_admin() ) {
71
+ $this->load_plugin_textdomain();
72
+ include_once( 'includes/image-zoom-admin.php' );
73
+ // include_once( 'includes/image-zoom-notices.php' );
74
+ include_once( 'includes/image-zoom-warnings.php' );
75
+ }
76
+ add_action( 'template_redirect', array( $this, 'template_redirect' ) );
77
+ add_action( 'vc_after_init', array( $this, 'js_composer' ) );
78
+ }
79
+
80
+ /**
81
+ * Show the javascripts in the front-end
82
+ * Hooked to template_redirect in $this->__construct()
83
+ * @access public
84
+ */
85
+ public function template_redirect() {
86
+
87
+ $general = $this->get_option_general();
88
+
89
+ if ( isset($general['enable_mobile']) && empty($general['enable_mobile']) && wp_is_mobile() )
90
+ return false;
91
+
92
+ // Adjust the zoom to WooCommerce 3.0.+
93
+ if ( $general['enable_woocommerce'] && class_exists('woocommerce') && version_compare( WC_VERSION, '3.0', '>') ) {
94
+ remove_theme_support( 'wc-product-gallery-zoom' );
95
+ remove_theme_support( 'wc-product-gallery-lightbox' );
96
+ add_theme_support( 'wc-product-gallery-slider' );
97
+
98
+ if ( strpos( get_template(), 'kiddy') !== false ) {
99
+ remove_theme_support( 'wc-product-gallery-slider' );
100
+ }
101
+ }
102
+
103
+ add_filter( 'woocommerce_single_product_image_html', array( $this, 'woocommerce_single_product_image_html' ) );
104
+ add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'woocommerce_single_product_image_thumbnail_html' ) );
105
+
106
+ add_filter( 'woocommerce_single_product_image_html', array( $this, 'remove_prettyPhoto' ) );
107
+ add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'remove_prettyPhoto' ) );
108
+ // add_filter( 'single_product_large_thumbnail_size', array( $this, 'single_product_large_thumbnail_size'), 40 );
109
+ // add_filter( 'single_product_small_thumbnail_size', array( $this, 'single_product_small_thumbnail_size'), 40 );
110
+
111
+ add_filter( 'the_content', array( $this, 'find_bigger_image' ), 40 );
112
+
113
+ add_action( 'wp_enqueue_scripts', array( $this, 'wp_enqueue_scripts' ) );
114
+ add_action( 'wp_head', array( $this, 'wp_head_compatibilities' ) );
115
+
116
+ add_filter( 'wp_calculate_image_srcset', array( $this, 'wp_calculate_image_srcset' ), 40, 5 );
117
+ }
118
+
119
+ /**
120
+ * If the full image isn't in the srcset, then add it
121
+ */
122
+ function wp_calculate_image_srcset($sources, $size_array, $image_src, $image_meta, $attachment_id ) {
123
+ if ( ! isset( $image_meta['width'] ) ) {
124
+ return $sources;
125
+ }
126
+ if ( ! is_array( $sources ) ) {
127
+ $sources = array();
128
+ }
129
+ if ( isset( $sources[ $image_meta['width'] ] ) ) {
130
+ return $sources;
131
+ }
132
+
133
+ if ( is_array($size_array) && count($size_array) == 2 && isset($image_meta['height']) && isset($image_meta['width'])) {
134
+ $ratio = $size_array[0] * $image_meta['height'] / $size_array[1] / $image_meta['width'];
135
+ if ( $ratio > 1.03 || $ratio < 0.97 ) return $sources;
136
+ }
137
+
138
+ $url = str_replace( wp_basename( $image_src ), wp_basename( $image_meta['file'] ), $image_src );
139
+ $sources[$image_meta['width']] = array(
140
+ 'url' => $url,
141
+ 'descriptor' => 'w',
142
+ 'value' => $image_meta['width'],
143
+ );
144
+ return $sources;
145
+ }
146
+
147
+ /**
148
+ * Add zoom option in the vc_single_image shortcode in Visual Composer
149
+ */
150
+ function js_composer() {
151
+ if ( ! defined( 'WPB_VC_VERSION' ) ) return false;
152
+ $param = WPBMap::getParam( 'vc_single_image', 'style' );
153
+ if ( is_array( $param ) ) {
154
+ $param['value'][__( 'WP Image Zoooom', 'wp-image-zoooom' )] = 'zoooom';
155
+ vc_update_shortcode_param( 'vc_single_image', $param );
156
+ }
157
+ }
158
+
159
+ /**
160
+ * Add data-thumbnail-src to the main product image
161
+ */
162
+ function woocommerce_single_product_image_html( $content ) {
163
+ if ( !strstr( $content, 'attachment-shop_single' ) ) {
164
+ $content = preg_replace('/ class="([^"]+)" alt="/i', ' class="attachment-shop_single $1" alt="', $content);
165
+ }
166
+ $thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id(), 'shop_thumbnail' );
167
+
168
+ if ( ! isset( $thumbnail[0] ) ) return $content;
169
+
170
+ $thumbnail_data = ' data-thumbnail-src="'.$thumbnail[0].'"';
171
+
172
+ $content = str_replace( ' title="', $thumbnail_data . ' title="', $content );
173
+
174
+ return $content;
175
+ }
176
+
177
+ /**
178
+ * Force the WooCommerce to use the "src" attribute
179
+ */
180
+ function woocommerce_single_product_image_thumbnail_html( $content ) {
181
+ $content = str_replace('class="attachment-shop_single size-shop_single"', 'class="attachment-shop_thumbnail size-shop_thumbnail"', $content);
182
+
183
+ if ( !strstr( $content, 'attachment-shop_thumbnail' ) ) {
184
+ $content = str_replace(' class="', ' class="attachment-shop_thumbnail ', $content);
185
+ }
186
+
187
+ if ( strstr( $content, 'attachment-shop_single' ) ) {
188
+ $content = str_replace('attachment-shop_single', '', $content);
189
+ }
190
+
191
+ $theme = get_template();
192
+ // Fix for the 2.8.6+ Virtue theme, see https://wordpress.org/support/topic/woocommerce_single_product_image_html-filter/
193
+ if ( $theme == 'virtue' ) {
194
+ $content = str_replace('attachment-shop_thumbnail wp-post-image', 'attachment-shop_single wp-post-image', $content);
195
+ }
196
+ return $content;
197
+ }
198
+
199
+ /**
200
+ * Remove the lightbox
201
+ */
202
+ function remove_prettyPhoto( $content ) {
203
+ $replace = array( 'data-rel="prettyPhoto"', 'data-rel="lightbox"', 'data-rel="prettyPhoto[product-gallery]"', 'data-rel="lightbox[product-gallery]"', 'data-rel="prettyPhoto[]"');
204
+
205
+ return str_replace( $replace, 'data-rel="zoomImage"', $content );
206
+ }
207
+
208
+
209
+ /**
210
+ * Find bigger image if class="zoooom" and there is no srcset
211
+ *
212
+ * Note: the srcset is not be set if for some reason
213
+ * the _wp_attachment_metadata for the image is not present
214
+ */
215
+ function find_bigger_image( $content ) {
216
+ if ( ! preg_match_all( '/<img [^>]+>/', $content, $matches ) ) {
217
+ return $content;
218
+ }
219
+
220
+ foreach( $matches[0] as $image ) {
221
+ // the image has to have the class "zoooom"
222
+ if ( false === strpos( $image, 'zoooom' ) ) {
223
+ continue;
224
+ }
225
+ // the image was tagged to skip this step
226
+ if ( false !== strpos( $image, 'skip-data-zoom-image' ) ) {
227
+ continue;
228
+ }
229
+ // the image does not have the srcset
230
+ if ( false !== strpos( $image, ' srcset=' ) ) {
231
+ continue;
232
+ }
233
+ // the image has an "-300x400.jpg" type ending
234
+ if ( 0 == preg_match( '@ src="([^"]+)(-[0-9]+x[0-9]+).(jpg|png|gif)"@', $image) ) {
235
+ continue;
236
+ }
237
+
238
+ // link the full-sized image to the data-zoom-image attribute
239
+ $full_image = preg_replace( '@^(.*) src="(.*)(-[0-9]+x[0-9]+).(jpg|png|gif)"(.*)$@', '$2.$4', $image );
240
+ $full_image_attr = ' data-zoom-image="' . $full_image . '"';
241
+ $full_image_img = str_replace(' src=', $full_image_attr. ' src=', $image);
242
+ $content = str_replace( $image, $full_image_img, $content);
243
+ }
244
+
245
+ return $content;
246
+ }
247
+
248
+
249
+ /**
250
+ * wp_head compatibilities
251
+ */
252
+ function wp_head_compatibilities() {
253
+ $theme = get_template();
254
+ if ( strpos( $theme, 'bridge') !== false ) {
255
+ echo '<style type="text/css"> .wrapper { z-index: 40 !important; } </style>' . PHP_EOL;
256
+ }
257
+
258
+ if ( strpos( $theme, 'nouveau') !== false ) {
259
+ echo '<style type="text/css"> .wrapper { z-index: 100 !important; } </style>' . PHP_EOL;
260
+ }
261
+
262
+ if ( strpos( $theme, 'artcore') !== false ) {
263
+ echo '<style type="text/css"> .sidebar-menu-push { z-index: 40 !important; } </style>' . PHP_EOL;
264
+ }
265
+ }
266
+
267
+
268
+ /**
269
+ * Enqueue the jquery.image_zoom.js
270
+ * Hooked to wp_enqueue_scripts in $this->template_redirect
271
+ * @access public
272
+ */
273
+ public function wp_enqueue_scripts() {
274
+ $prefix = '.min';
275
+ if ( $this->testing == true ) {
276
+ $prefix = '';
277
+ }
278
+
279
+ // Load the jquery.image_zoom.js
280
+ wp_register_script( 'image_zoooom', $this->plugins_url( '/assets/js/jquery.image_zoom'.$prefix.'.js' ), array( 'jquery' ), self::$version, false);
281
+ wp_enqueue_script( 'image_zoooom' );
282
+
283
+ // Load the image_zoom-init.js
284
+ wp_register_script( 'image_zoooom-init', $this->plugins_url( '/assets/js/image_zoom-init.js' ), array( 'jquery' ), self::$version, false);
285
+ wp_localize_script( 'image_zoooom-init', 'IZ', $this->get_localize_vars());
286
+ wp_enqueue_script( 'image_zoooom-init' );
287
+
288
+ // Remove the prettyPhoto
289
+ if ( $this->woocommerce_is_active() && function_exists('is_product') && is_product() ) {
290
+ wp_dequeue_script( 'prettyPhoto' );
291
+ wp_dequeue_script( 'prettyPhoto-init' );
292
+ }
293
+ }
294
+
295
+ function get_localize_vars() {
296
+ $general = $this->get_option_general();
297
+ $options = $this->get_options_for_zoom();
298
+
299
+ $default = array(
300
+ 'with_woocommerce' => '1',
301
+ 'exchange_thumbnails' => '1',
302
+ 'woo_categories' => (isset($general['woo_cat']) && $general['woo_cat'] == 1 ) ? '1' : '0',
303
+ 'enable_mobile' => $general['enable_mobile'],
304
+ 'options' => $options,
305
+ 'woo_slider' => '0',
306
+ );
307
+
308
+ if (class_exists('woocommerce') && version_compare( WC_VERSION, '3.0', '>') && current_theme_supports( 'wc-product-gallery-slider' )) {
309
+ $default['woo_slider'] = 1;
310
+ }
311
+
312
+ $with_woocommerce = true;
313
+ if ( ! $this->woocommerce_is_active() )
314
+ $default['with_woocommerce'] = '0';
315
+
316
+ if ( !function_exists( 'is_product' ) || !is_product() )
317
+ $default['with_woocommerce'] = '0';
318
+
319
+ if ( isset($general['enable_woocommerce']) && empty($general['enable_woocommerce']))
320
+ $default['with_woocommerce'] = '0';
321
+
322
+ if ( isset($general['exchange_thumbnails']) && empty($general['exchange_thumbnails']))
323
+ $default['exchange_thumbnails'] = '0';
324
+
325
+ return $default;
326
+ }
327
+
328
+ function get_options_for_zoom() {
329
+ $i = get_option( 'zoooom_settings' );
330
+ $o = array();
331
+
332
+ switch ( $i['lensShape'] ) {
333
+ case 'none' :
334
+ $o = array(
335
+ 'zoomType' => 'inner',
336
+ 'cursor' => $i['cursorType'],
337
+ 'easingAmount' => $i['zwEasing'],
338
+ );
339
+ break;
340
+ case 'square' :
341
+ case 'round' :
342
+ $o = array(
343
+ 'lensShape' => $i['lensShape'],
344
+ 'zoomType' => 'lens',
345
+ 'lensSize' => $i['lensSize'],
346
+ 'borderSize' => $i['borderThickness'],
347
+ 'borderColour' => $i['borderColor'],
348
+ 'cursor' => $i['cursorType'],
349
+ 'lensFadeIn' => $i['lensFade'],
350
+ 'lensFadeOut' => $i['lensFade'],
351
+ );
352
+ if ( $i['tint'] == true ) {
353
+ $o['tint'] = 'true';
354
+ $o['tintColour'] = $i['tintColor'];
355
+ $o['tintOpacity'] = $i['tintOpacity'];
356
+ }
357
+
358
+ break;
359
+ case 'square' :
360
+ break;
361
+ case 'zoom_window' :
362
+ $o = array(
363
+ 'lensShape' => 'square',
364
+ 'lensSize' => $i['lensSize'],
365
+ 'lensBorderSize' => $i['borderThickness'],
366
+ 'lensBorderColour' => $i['borderColor'],
367
+ 'borderRadius' => $i['zwBorderRadius'],
368
+ 'cursor' => $i['cursorType'],
369
+ 'zoomWindowWidth' => $i['zwWidth'],
370
+ 'zoomWindowHeight' => $i['zwHeight'],
371
+ 'zoomWindowOffsetx' => $i['zwPadding'],
372
+ 'borderSize' => $i['zwBorderThickness'],
373
+ 'borderColour' => $i['zwBorderColor'],
374
+ 'zoomWindowShadow' => $i['zwShadow'],
375
+ 'lensFadeIn' => $i['lensFade'],
376
+ 'lensFadeOut' => $i['lensFade'],
377
+ 'zoomWindowFadeIn' => $i['zwFade'],
378
+ 'zoomWindowFadeOut' => $i['zwFade'],
379
+ 'easingAmount ' => $i['zwEasing'],
380
+ );
381
+
382
+ if ( $i['tint'] == true ) {
383
+ $o['tint'] = 'true';
384
+ $o['tintColour'] = $i['tintColor'];
385
+ $o['tintOpacity'] = $i['tintOpacity'];
386
+ }
387
+
388
+ break;
389
+ }
390
+ return $o;
391
+ }
392
+
393
+
394
+
395
+ /** Helper function ****************************************/
396
+
397
+ public function plugins_url( $path = '/' ) {
398
+ return untrailingslashit( plugins_url( $path, __FILE__ ) );
399
+ }
400
+
401
+ public function plugin_dir_path() {
402
+ return untrailingslashit( plugin_dir_path( __FILE__ ) );
403
+ }
404
+
405
+ /**
406
+ * Check if WooCommerce is activated
407
+ * @access public
408
+ * @return bool
409
+ */
410
+ public function woocommerce_is_active() {
411
+ if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
412
+ return true;
413
+ }
414
+ return false;
415
+ }
416
+
417
+ public function get_option_general() {
418
+ $general = get_option('zoooom_general');
419
+
420
+ if (!isset($general['enable_woocommerce']))
421
+ $general['enable_woocommerce'] = true;
422
+
423
+ if (!isset($general['exchange_thumbnails']))
424
+ $general['exchange_thumbnails'] = true;
425
+
426
+ if ( !isset( $general['enable_mobile'] ) )
427
+ $general['enable_mobile'] = false;
428
+
429
+ $general['force_woocommerce'] = false;
430
+
431
+ if ( !isset( $general['woo_cat'] ) )
432
+ $general['woo_cat'] = false;
433
+
434
+ if ( ! $this->woocommerce_is_active() ) {
435
+ $general['woo_cat'] = false;
436
+ }
437
+
438
+ return $general;
439
+ }
440
+
441
+ public function load_plugin_textdomain() {
442
+ load_plugin_textdomain( 'wp-image-zoooom', false, plugin_basename( dirname( __FILE__ ) ) . '/languages' );
443
+ }
444
+
445
+
446
+
447
+ }
448
+
449
+ endif;
450
+
451
+ /**
452
+ * Returns the main instance of ImageZoooom
453
+ *
454
+ * @return ImageZoooom
455
+ */
456
+ function ImageZoooom() {
457
+ return ImageZoooom::instance();
458
+ }
459
+
460
+ ImageZoooom();
461
+
462
+ /**
463
+ * * Plugin action link to Settings page
464
+ * */
465
+ function wp_image_zoooom_plugin_action_links( $links ) {
466
+
467
+ $settings_link = '<a href="admin.php?page=zoooom_settings">' .
468
+ esc_html( __('Settings' ) ) . '</a>';
469
+
470
+ return array_merge( array( $settings_link), $links );
471
+
472
+ }
473
+ add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), 'wp_image_zoooom_plugin_action_links' );
474
+
475
+ if ( ! function_exists( 'x_disable_wp_image_srcset' ) ) :
476
+ function x_disable_wp_image_srcset() {
477
+ return true;
478
+ }
479
+ endif;
includes/image-zoom-admin-general.php ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ require_once 'image-zoom-forms-helper.php';
4
+
5
+ $iz = ImageZoooom();
6
+ $iz_admin = new ImageZoooom_Admin;
7
+ $iz_forms_helper = new ImageZoooom_FormsHelper;
8
+
9
+ $assets_url = $iz->plugins_url() . '/assets';
10
+
11
+ $settings = $iz->get_option_general();
12
+ if ( $settings == false ) {
13
+ $settings = $iz_admin->validate_general( null );
14
+ }
15
+
16
+ $messages = $iz_admin->show_messages();
17
+
18
+ include_once( 'premium-tooltips.php' );
19
+
20
+ ?>
21
+ <style type="text/css">
22
+ .form-group { display:flex; align-items: center; }
23
+ .control-label{ height: auto; }
24
+ </style>
25
+
26
+ <script type="text/javascript">
27
+
28
+ jQuery(document).ready(function($) {
29
+ $('[data-toggle="tooltip"]').tooltip();
30
+ });
31
+ </script>
32
+
33
+ <?php $brand = '<img src="'. site_url() .'/wp-content/plugins/wp-image-zoooom/assets/images/silkypress_logo.png" /> <a href="https://www.silkypress.com/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner" target="_blank">SilkyPress.com</a>';?>
34
+ <h2><?php printf(esc_html__('WP Image Zoom by %1$s', 'wp-image-zoooom'), $brand); ?></h2>
35
+
36
+ <div class="wrap">
37
+
38
+
39
+ <h3 class="nav-tab-wrapper woo-nav-tab-wrapper">
40
+
41
+ <a href="?page=zoooom_settings&tab=general" class="nav-tab nav-tab-active"><?php _e('General Settings', 'wp-image-zoooom'); ?></a>
42
+
43
+ <a href="?page=zoooom_settings&tab=settings" class="nav-tab"><?php _e('Zoom Settings', 'wp-image-zoooom'); ?></a>
44
+
45
+ </h3>
46
+
47
+ <div class="panel panel-default">
48
+ <div class="panel-body">
49
+ <div class="row">
50
+
51
+
52
+
53
+ <div class="col-lg-12">
54
+ <?php echo $messages; ?>
55
+ <div id="alert_messages">
56
+ </div>
57
+ </div>
58
+
59
+
60
+
61
+
62
+ <form class="form-horizontal" method="post" action="" id="form_settings">
63
+
64
+ <?php
65
+ $iz_forms_helper->label_class = 'col-sm-6 control-label';
66
+
67
+ foreach ( array('enable_woocommerce', 'exchange_thumbnails', 'woo_cat', 'woo_variations', 'enable_mobile', 'remove_lightbox_thumbnails', 'remove_lightbox', 'force_attachments', 'flexslider', 'huge_it_gallery', 'enable_fancybox', 'enable_jetpack_carousel' ) as $_field ) {
68
+ $this_settings = $iz_admin->get_settings( $_field);
69
+ $this_settings['value'] = '';
70
+ if ( isset( $settings[$_field] ) ) {
71
+ $this_settings['value'] = $settings[$_field];
72
+ }
73
+ $iz_forms_helper->input($this_settings['input_form'], $this_settings);
74
+ }
75
+
76
+ ?>
77
+
78
+ <div class="form-group">
79
+ <div class="col-lg-6">
80
+ <input type="hidden" name="tab" value="general" />
81
+ <button type="submit" class="btn btn-primary"><?php _e('Save changes', 'wp-image-zoooom'); ?></button>
82
+ </div>
83
+ </div>
84
+
85
+ <?php wp_nonce_field( 'iz_general' ); ?>
86
+
87
+ </form>
88
+
89
+
90
+ </div>
91
+ </div>
92
+ </div>
93
+ </div>
94
+
95
+ <?php include_once('right_columns.php'); ?>
includes/image-zoom-admin-template.php ADDED
@@ -0,0 +1,225 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ require_once 'image-zoom-forms-helper.php';
4
+
5
+ $iz = ImageZoooom();
6
+ $iz_admin = new ImageZoooom_Admin;
7
+ $iz_forms_helper = new ImageZoooom_FormsHelper;
8
+
9
+ $assets_url = $iz->plugins_url() . '/assets';
10
+
11
+ $settings = get_option( 'zoooom_settings' );
12
+ if ( $settings == false ) {
13
+ $settings = $iz_admin->validate_settings( array() );
14
+ }
15
+ $messages = $iz_admin->show_messages();
16
+
17
+
18
+ include_once( 'premium-tooltips.php' );
19
+
20
+ ?>
21
+
22
+ <?php $brand = '<img src="'. site_url() .'/wp-content/plugins/wp-image-zoooom/assets/images/silkypress_logo.png" /> <a href="https://www.silkypress.com/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner" target="_blank">SilkyPress.com</a>';?>
23
+ <h2><?php printf(esc_html__('WP Image Zoom by %1$s', 'wp-image-zoooom'), $brand); ?></h2>
24
+
25
+ <div class="wrap">
26
+
27
+
28
+ <h3 class="nav-tab-wrapper woo-nav-tab-wrapper">
29
+
30
+ <a href="?page=zoooom_settings&tab=general" class="nav-tab"><?php _e('General Settings', 'wp-image-zoooom'); ?></a>
31
+
32
+ <a href="?page=zoooom_settings&tab=settings" class="nav-tab nav-tab-active"><?php _e('Zoom Settings', 'wp-image-zoooom'); ?></a>
33
+
34
+ </h2>
35
+
36
+ <div class="panel panel-default">
37
+ <div class="panel-body">
38
+ <div class="row">
39
+
40
+
41
+ <?php echo $messages; ?>
42
+ <div id="alert_messages">
43
+ </div>
44
+
45
+ <form class="form-horizontal" method="post" action="" id="form_settings">
46
+
47
+ <div class="form-group">
48
+ <?php echo load_steps(__('Step 1', 'wp-image-zoooom'), __('Choose the Lens Shape', 'wp-image-zoooom')); ?>
49
+
50
+ <?php
51
+ $lensShape = $iz_admin->get_settings( 'lensShape', $settings['lensShape']);
52
+
53
+ $lensShape['value'] = $settings['lensShape'];
54
+ if ( ! isset($lensShape['value'] ) ) $lensShape['value'] = '';
55
+ ?>
56
+ <div class="btn-group" data-toggle="buttons" id="btn-group-style-circle">
57
+ <?php foreach( $lensShape['values'] as $_id => $_value ) : ?>
58
+ <?php $toggle = ( ! empty($_value[1]) ) ? ' data-toggle="tooltip" data-placement="top" title="'.$_value[1].'" data-original-title="' . $_value[1] . '"' : ''; ?>
59
+ <label class="btn btn-default<?php echo ($lensShape['value'] == $_id) ? ' active' : '' ?> ">
60
+ <input type="radio" name="<?php echo $lensShape['name'] ?>" id="<?php echo $_id ?>" value="<?php echo $_id ?>" <?php echo ($lensShape['value'] == $_id) ? 'checked' : '' ?> />
61
+ <div class="icon-in-label ndd-spot-icon icon-style-1"<?php echo $toggle; ?>>
62
+ <div class="ndd-icon-main-element">
63
+ <i class="<?php echo $_value[0]; ?>"></i>
64
+ </div>
65
+ </div>
66
+ </label>
67
+ <?php endforeach; ?>
68
+ </div>
69
+
70
+ <div style="clear: both; margin-bottom: 50px;"></div>
71
+
72
+
73
+ <?php echo load_steps(__('Step 2', 'wp-image-zoooom'), __('Check your configuration changes on the image', 'wp-image-zoooom')); ?>
74
+ <img id="demo" src="<?php echo $assets_url ?>/images/img1_medium.png" data-zoom-image="<?php echo $assets_url ?>/images/img1_large.png" width="300" />
75
+
76
+
77
+ <div style="clear: both; margin-bottom: 50px;"></div>
78
+
79
+ <?php echo load_steps(__('Step 3', 'wp-image-zoooom'), __('Make more fine-grained configurations on the zoom', 'wp-image-zoooom')); ?>
80
+ <ul class="nav nav-tabs">
81
+ <li class="" id="tab_padding" style="width: 40px;"> &nbsp; </li>
82
+ <li class="active" id="tab_general">
83
+ <a href="#general_settings" data-toggle="tab" aria-expanded="true"><?php _e('General', 'wp-image-zoooom'); ?></a>
84
+ </li>
85
+ <li class="" id="tab_lens">
86
+ <a href="#lens_settings" data-toggle="tab" aria-expanded="false"><?php _e('Lens', 'wp-image-zoooom'); ?></a>
87
+ </li>
88
+ <li class="" id="tab_zoom_window">
89
+ <a href="#zoom_window_settings" data-toggle="tab" aria-expanded="false"><?php _e('Zoom Window', 'wp-image-zoooom'); ?></a>
90
+ </li>
91
+ <li class="" id="tab_custom_text">
92
+ <a href="#custom_text" data-toggle="tab" aria-expanded="false"><?php _e('Custom Text', 'wp-image-zoooom'); ?></a>
93
+ </li>
94
+ </ul>
95
+
96
+ <div class="tab-content">
97
+ <div class="tab-pane fade active in" id="general_settings">
98
+ <?php
99
+
100
+ foreach ( array('cursorType', 'zwEasing', 'onClick', 'ratio' ) as $_field ) {
101
+ $this_settings = $iz_admin->get_settings( $_field);
102
+ $this_settings['value'] = '';
103
+ if ( isset( $settings[$_field] ) ) {
104
+ $this_settings['value'] = $settings[$_field];
105
+ }
106
+ $iz_forms_helper->input($this_settings['input_form'], $this_settings);
107
+ }
108
+ ?>
109
+
110
+ </div>
111
+ <div class="tab-pane fade" id="lens_settings">
112
+ <?php
113
+
114
+ $fields = array(
115
+ 'lensSize',
116
+ 'lensColour',
117
+ 'lensOverlay',
118
+ 'borderThickness',
119
+ 'borderColor',
120
+ 'lensFade',
121
+ 'tint',
122
+ 'tintColor',
123
+ 'tintOpacity',
124
+ );
125
+
126
+ foreach ( $fields as $_field ) {
127
+ $this_settings = $iz_admin->get_settings( $_field);
128
+ $this_settings['value'] = '';
129
+ if ( isset( $settings[$_field] ) ) {
130
+ $this_settings['value'] = $settings[$_field];
131
+ }
132
+ $iz_forms_helper->input($this_settings['input_form'], $this_settings);
133
+ }
134
+
135
+ ?>
136
+ </div>
137
+
138
+ <div class="tab-pane fade" id="zoom_window_settings">
139
+ <?php
140
+
141
+ $fields = array(
142
+ 'zwWidth',
143
+ 'zwHeight',
144
+ 'zwResponsive',
145
+ 'zwResponsiveThreshold',
146
+ 'zwPositioning',
147
+ 'zwPadding',
148
+ 'zwBorderThickness',
149
+ 'zwBorderColor',
150
+ 'zwShadow',
151
+ 'zwBorderRadius',
152
+ 'mousewheelZoom',
153
+ 'zwFade',
154
+ );
155
+
156
+ foreach ( $fields as $_field ) {
157
+ $this_settings = $iz_admin->get_settings( $_field);
158
+ $this_settings['value'] = '';
159
+ if ( isset( $settings[$_field] ) ) {
160
+ $this_settings['value'] = $settings[$_field];
161
+ }
162
+ $iz_forms_helper->input($this_settings['input_form'], $this_settings);
163
+ }
164
+
165
+ ?>
166
+ </div>
167
+
168
+ <div class="tab-pane fade" id="custom_text">
169
+ <?php
170
+
171
+ $fields = array(
172
+ 'customText',
173
+ 'customTextSize',
174
+ 'customTextColor',
175
+ 'customTextAlign',
176
+ );
177
+
178
+ foreach ( $fields as $_field ) {
179
+ $this_settings = $iz_admin->get_settings( $_field);
180
+ $this_settings['value'] = '';
181
+ if ( isset( $settings[$_field] ) ) {
182
+ $this_settings['value'] = $settings[$_field];
183
+ }
184
+ $iz_forms_helper->input($this_settings['input_form'], $this_settings);
185
+ }
186
+
187
+ ?>
188
+ </div>
189
+
190
+ </div><!-- close "tab-content" -->
191
+
192
+
193
+ <?php echo load_steps(__('Step 4', 'wp-image-zoooom'), __('Don\'t forget to save the changes in order to apply them on the website', 'wp-image-zoooom')); ?>
194
+ <div class="form-group">
195
+ <div class="col-lg-6">
196
+ <button type="submit" class="btn btn-primary"><?php echo __('Save changes', 'wp-image-zoooom'); ?></button>
197
+ </div>
198
+ </div>
199
+
200
+ </div><!-- close "form-group" -->
201
+
202
+ <?php wp_nonce_field( 'iz_template' ); ?>
203
+ </form>
204
+
205
+
206
+ </div>
207
+ </div>
208
+ </div>
209
+
210
+
211
+ </div><!-- close wrap -->
212
+
213
+
214
+ <?php include_once('right_columns.php'); ?>
215
+
216
+ <?php
217
+
218
+ function load_steps($step, $description) {
219
+ return '<div class="steps">
220
+ <span class="steps_nr">'. $step .':</span>
221
+ <span class="steps_desc">' . $description . '</span>
222
+ </div>' . "\n";
223
+ }
224
+
225
+ ?>
includes/image-zoom-admin.php ADDED
@@ -0,0 +1,741 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit; // Exit if accessed directly
5
+ }
6
+
7
+ /**
8
+ * ImageZoooom_Admin
9
+ */
10
+ class ImageZoooom_Admin {
11
+
12
+ public $messages = array();
13
+ private $tab = 'general';
14
+
15
+ /**
16
+ * Constructor
17
+ */
18
+ public function __construct() {
19
+ add_action( 'admin_menu', array( $this, 'admin_menu' ) );
20
+ add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
21
+ add_action( 'admin_head', array( $this, 'iz_add_tinymce_button' ) );
22
+ }
23
+
24
+ /**
25
+ * Add menu items
26
+ */
27
+ public function admin_menu() {
28
+ add_menu_page(
29
+ __( 'WP Image Zoom', 'wp-image-zoooom' ),
30
+ __( 'WP Image Zoom', 'wp-image-zoooom' ),
31
+ 'administrator',
32
+ 'zoooom_settings',
33
+ array( $this, 'admin_settings_page' ),
34
+ ImageZoooom()->plugins_url() . '/assets/images/icon.svg'
35
+ );
36
+ }
37
+
38
+ /**
39
+ * Load the javascript and css scripts
40
+ */
41
+ public function admin_enqueue_scripts( $hook ) {
42
+ if ( $hook != 'toplevel_page_zoooom_settings' )
43
+ return false;
44
+
45
+ $iz = ImageZoooom();
46
+ $v = ImageZoooom::$version;
47
+
48
+ // Register the javascript files
49
+ if ( $iz->testing == true ) {
50
+ // wp_register_script( 'bootstrap', $iz->plugins_url( '/assets/js/bootstrap.min.js' ), array( 'jquery' ), $v, true );
51
+ wp_register_script( 'bootstrap', $iz->plugins_url( '/assets/js/bootstrap.3.2.0.min.js' ), array( 'jquery' ), $v, true );
52
+ wp_register_script( 'image_zoooom', $iz->plugins_url( '/assets/js/jquery.image_zoom.js' ), array( 'jquery' ), $v, true );
53
+ if ( !isset($_GET['tab']) || $_GET['tab'] == 'settings' ) {
54
+ wp_register_script( 'zoooom-settings', $iz->plugins_url( '/assets/js/image_zoom.settings.free.js' ), array( 'image_zoooom' ), $v, true );
55
+ }
56
+ } else {
57
+ // wp_register_script( 'bootstrap', $iz->plugins_url( '/assets/js/bootstrap.min.js' ), array( 'jquery' ), $v, true );
58
+ wp_register_script( 'bootstrap', $iz->plugins_url( '/assets/js/bootstrap.3.2.0.min.js' ), array( 'jquery' ), $v, true );
59
+ wp_register_script( 'image_zoooom', $iz->plugins_url( '/assets/js/jquery.image_zoom.min.js' ), array( 'jquery' ), $v, true );
60
+ if ( !isset($_GET['tab']) || $_GET['tab'] == 'settings' ) {
61
+ wp_register_script( 'zoooom-settings', $iz->plugins_url( '/assets/js/image_zoom.settings.min.js' ), array( 'image_zoooom' ), $v, true );
62
+ }
63
+ }
64
+
65
+ // Enqueue the javascript files
66
+ wp_enqueue_script( 'bootstrap' );
67
+ wp_enqueue_script( 'image_zoooom' );
68
+ wp_enqueue_script( 'zoooom-settings' );
69
+
70
+ // Register the css files
71
+ wp_register_style( 'bootstrap', $iz->plugins_url( '/assets/css/bootstrap.min.css' ), array(), $v );
72
+ if ( $iz->testing == true ) {
73
+ wp_register_style( 'zoooom', $iz->plugins_url( '/assets/css/style.css' ), array(), $v );
74
+ } else {
75
+ wp_register_style( 'zoooom', $iz->plugins_url( '/assets/css/style.min.css' ), array(), $v );
76
+ }
77
+
78
+ // Enqueue the css files
79
+ wp_enqueue_style( 'bootstrap' );
80
+ wp_enqueue_style( 'zoooom' );
81
+ }
82
+
83
+ /**
84
+ * Build an array with settings that will be used in the form
85
+ * @access public
86
+ */
87
+ public function get_settings( $id = '' ) {
88
+ $settings = array(
89
+ 'lensShape' => array(
90
+ 'label' => __('Lens Shape', 'wp-image-zoooom'),
91
+ 'values' => array(
92
+ 'none' => array('icon-lens_shape_none', __('No Lens', 'zoooom')),
93
+ 'round' => array('icon-lens_shape_circle', __('Circle Lens', 'zoooom')),
94
+ 'square' => array('icon-lens_shape_square', __('Square Lens', 'zoooom')),
95
+ 'zoom_window' => array('icon-type_zoom_window', __('With Zoom Window', 'zoooom')),
96
+ ),
97
+ 'value' => 'zoom_window',
98
+ 'input_form' => 'buttons',
99
+ 'buttons' => 'i',
100
+ ),
101
+ 'cursorType' => array(
102
+ 'label' => __('Cursor Type', 'wp-image-zoooom'),
103
+ 'values' => array(
104
+ 'default' => array('icon-cursor_type_default', __('Default', 'zoooom' ) ),
105
+ 'pointer' => array('icon-cursor_type_pointer', __('Pointer', 'zoooom' ) ),
106
+ 'crosshair' => array('icon-cursor_type_crosshair', __('Crosshair', 'zoooom' ) ),
107
+ 'zoom-in' => array('icon-zoom-in', __('Zoom', 'zoooom' ) ),
108
+ ),
109
+ 'value' => 'default',
110
+ 'input_form' => 'buttons',
111
+ 'buttons' => 'i',
112
+ ),
113
+ 'zwEasing' => array(
114
+ 'label' => __('Animation Easing Effect', 'wp-image-zoooom' ),
115
+ 'value' => 12,
116
+ 'description' => __('A number between 0 and 200 to represent the degree of the Animation Easing Effect', 'wp-image-zoooom' ),
117
+ 'input_form' => 'input_text',
118
+ ),
119
+
120
+ 'lensSize' => array(
121
+ 'label' => __('Lens Size', 'wp-image-zoooom' ),
122
+ 'post_input' => 'px',
123
+ 'value' => 200,
124
+ 'description' => __('For Circle Lens it means the diameters, for Square Lens it means the width', 'wp-image-zoooom' ),
125
+ 'input_form' => 'input_text',
126
+ ),
127
+ 'borderThickness' => array(
128
+ 'label' => __('Border Thickness', 'wp-image-zoooom' ),
129
+ 'post_input' => 'px',
130
+ 'value' => 1,
131
+ 'input_form' => 'input_text',
132
+ ),
133
+ 'borderColor' => array(
134
+ 'label' => __('Border Color', 'wp-image-zoooom' ),
135
+ 'value' => '#ffffff',
136
+ 'input_form' => 'input_color',
137
+ ),
138
+ 'lensFade' => array(
139
+ 'label' => __('Fade Time', 'wp-image-zoooom' ),
140
+ 'post_input' => 'sec',
141
+ 'value' => 1,
142
+ 'description' => __('The amount of time it takes for the Lens to slowly appear or dissapear', 'wp-image-zoooom'),
143
+ 'input_form' => 'input_text',
144
+ ),
145
+ 'tint' => array(
146
+ 'label' => __('Tint', 'wp-image-zoooom'),
147
+ 'value' => false,
148
+ 'description' => __('A color that will layed on top the of non-magnified image in order to emphasize the lens', 'wp-image-zoooom'),
149
+ 'input_form' => 'checkbox',
150
+ ),
151
+ 'tintColor' =>array(
152
+ 'label' => __('Tint Color', 'wp-image-zoooom'),
153
+ 'value' => '#ffffff',
154
+ 'input_form' => 'input_color',
155
+ ),
156
+ 'tintOpacity' => array(
157
+ 'label' => __('Tint Opacity', 'wp-image-zoooom'),
158
+ 'value' => '0.5',
159
+ 'post_input' => '%',
160
+ 'input_form' => 'input_text',
161
+ ),
162
+ 'zwWidth' => array(
163
+ 'label' => __('Zoom Window Width', 'wp-image-zoooom'),
164
+ 'post_input' => 'px',
165
+ 'value' => 400,
166
+ 'input_form' => 'input_text',
167
+ ),
168
+ 'zwHeight' => array(
169
+ 'label' => __('Zoom Window Height', 'wp-image-zoooom'),
170
+ 'post_input' => 'px',
171
+ 'value' => 360,
172
+ 'input_form' => 'input_text',
173
+ ),
174
+ 'zwPadding' => array(
175
+ 'label' => __('Distance from the Main Image', 'wp-image-zoooom'),
176
+ 'post_input' => 'px',
177
+ 'value' => 10,
178
+ 'input_form' => 'input_text',
179
+ ),
180
+ 'zwBorderThickness' => array(
181
+ 'label' => __('Border Thickness', 'wp-image-zoooom'),
182
+ 'post_input' => 'px',
183
+ 'value' => 4,
184
+ 'input_form' => 'input_text',
185
+ ),
186
+ 'zwShadow' => array(
187
+ 'label' => __('Shadow Thickness', 'wp-image-zoooom'),
188
+ 'post_input' => 'px',
189
+ 'value' => 4,
190
+ 'input_form' => 'input_text',
191
+ 'description' => __('Use 0px to remove the shadow', 'wp-image-zoooom'),
192
+ ),
193
+ 'zwBorderColor' => array(
194
+ 'label' => __('Border Color', 'wp-image-zoooom'),
195
+ 'value' => '#888888',
196
+ 'input_form' => 'input_color',
197
+ ),
198
+ 'zwBorderRadius' => array(
199
+ 'label' => __('Rounded Corners', 'wp-image-zoooom'),
200
+ 'post_input' => 'px',
201
+ 'value' => 0,
202
+ 'input_form' => 'input_text',
203
+ ),
204
+ 'zwFade' => array(
205
+ 'label' => __('Fade Time', 'wp-image-zoooom'),
206
+ 'post_input' => 'sec',
207
+ 'value' => 0,
208
+ 'description' => __('The amount of time it takes for the Zoom Window to slowly appear or disappear', 'wp-image-zoooom'),
209
+ 'input_form' => 'input_text',
210
+ ),
211
+ 'enable_woocommerce' => array(
212
+ 'label' => __('Enable the zoom on WooCommerce products', 'wp-image-zoooom'),
213
+ 'value' => true,
214
+ 'input_form' => 'checkbox',
215
+ ),
216
+ 'exchange_thumbnails' => array(
217
+ 'label' => __('Exchange the thumbnail with main image on WooCommerce products', 'wp-image-zoooom'),
218
+ 'value' => true,
219
+ 'input_form' => 'checkbox',
220
+ 'description' => __('On a WooCommerce gallery, when clicking on a thumbnail, not only the main image will be replaced with the thumbnail\'s image, but also the thumbnail will be replaced with the main image', 'wp-image-zoooom'),
221
+ ),
222
+ 'enable_mobile' => array(
223
+ 'label' => __('Enable the zoom on mobile devices', 'wp-image-zoooom'),
224
+ 'value' => false,
225
+ 'input_form' => 'checkbox',
226
+ 'description' => __('Tablets are also considered mobile devices'),
227
+ ),
228
+ 'woo_cat' => array(
229
+ 'label' => __('Enable the zoom on WooCommerce category pages', 'wp-image-zoooom'),
230
+ 'value' => false,
231
+ 'input_form' => 'checkbox',
232
+ ),
233
+
234
+ 'force_woocommerce' => array(
235
+ 'label' => __('Force it to work on WooCommerce', 'wp-image-zoooom'),
236
+ 'value' => true,
237
+ 'input_form' => 'checkbox',
238
+ ),
239
+ );
240
+
241
+ $pro_fields = array(
242
+ 'remove_lightbox_thumbnails' => array(
243
+ 'label' => __('Remove the Lightbox on thumbnail images', 'wp-image-zoooom'),
244
+ 'value' => false,
245
+ 'pro' => true,
246
+ 'input_form' => 'checkbox',
247
+ ),
248
+ 'remove_lightbox' => array(
249
+ 'label' => __('Remove the Lightbox', 'wp-image-zoooom'),
250
+ 'value' => false,
251
+ 'pro' => true,
252
+ 'input_form' => 'checkbox',
253
+ ),
254
+ 'woo_variations' => array(
255
+ 'label' => __('Enable on WooCommerce variation products', 'wp-image-zoooom'),
256
+ 'value' => false,
257
+ 'pro' => true,
258
+ 'input_form' => 'checkbox',
259
+ ),
260
+ 'force_attachments' => array(
261
+ 'label' => __('Enable on attachments pages', 'wp-image-zoooom'),
262
+ 'value' => false,
263
+ 'pro' => true,
264
+ 'input_form' => 'checkbox',
265
+ ),
266
+ 'flexslider' => array(
267
+ 'label' => __('FlexSlider container class', 'wp-image-zoooom'),
268
+ 'value' => '',
269
+ 'pro' => true,
270
+ 'input_form' => 'input_text',
271
+ ),
272
+ 'enable_fancybox' => array(
273
+ 'label' => __('Enable inside <a href="http://fancyapps.com/fancybox/" target="_blank">fancyBox</a> lightbox', 'wp-image-zoooom'),
274
+ 'value' => false,
275
+ 'pro' => true,
276
+ 'input_form' => 'checkbox',
277
+ ),
278
+ 'enable_jetpack_carousel' => array(
279
+ 'label' => __('Enable inside <a href="https://jetpack.com/ support/carousel/" target="_blank">Jetpack Carousel</a> lightbox', 'wp-image-zoooom'),
280
+ 'value' => false,
281
+ 'pro' => true,
282
+ 'input_form' => 'checkbox',
283
+ ),
284
+
285
+ 'huge_it_gallery' => array(
286
+ 'label' => __('Huge IT Gallery id', 'wp-image-zoooom'),
287
+ 'value' => '',
288
+ 'pro' => true,
289
+ 'input_form' => 'input_text',
290
+ ),
291
+ 'onClick' => array(
292
+ 'label' => __('Enable the zoom on ...', 'wp-image-zoooom'),
293
+ 'values' => array(
294
+ 'false' => 'mouse hover',
295
+ 'true' => 'mouse click',
296
+ ),
297
+ 'value' => 'false',
298
+ 'input_form' => 'radio',
299
+ 'pro' => true,
300
+ ),
301
+ 'ratio' => array(
302
+ 'label' => __('Zoom Level', 'wp-image-zoooom'),
303
+ 'values' => array(
304
+ 'default' => array( 'icon-zoom_level_default', __('Default', 'zoooom') ),
305
+ '1.5' => array( 'icon-zoom_level_15', __('1,5 times', 'zoooom') ),
306
+ '2' => array( 'icon-zoom_level_2', __('2 times', 'zoooom') ),
307
+ '2.5' => array( 'icon-zoom_level_25', __('2,5 times', 'zoooom') ),
308
+ '3' => array( 'icon-zoom_level_3', __('3 times', 'zoooom') ),
309
+ ),
310
+ 'value' => 'default',
311
+ 'input_form' => 'buttons',
312
+ 'pro' => true,
313
+ 'buttons' => 'i',
314
+ ),
315
+ 'lensColour' => array(
316
+ 'label' => __('Lens Color', 'wp-image-zoooom' ),
317
+ 'value' => '#ffffff',
318
+ 'pro' => true,
319
+ 'input_form' => 'input_color',
320
+ ),
321
+ 'lensOverlay' => array(
322
+ 'label' => __('Show as Grid', 'wp-image-zoooom' ),
323
+ 'value' => false,
324
+ 'pro' => true,
325
+ 'input_form' => 'checkbox',
326
+ ),
327
+ 'zwResponsive' => array(
328
+ 'label' => __('Responsive', 'wp-image-zoooom'),
329
+ 'input_form' => 'checkbox',
330
+ 'pro' => true,
331
+ 'value' => false,
332
+ ),
333
+ 'zwResponsiveThreshold' => array(
334
+ 'label' => __('Responsive Threshold', 'wp-image-zoooom'),
335
+ 'pro' => true,
336
+ 'post_input' => 'px',
337
+ 'value' => '',
338
+ 'input_form' => 'input_text',
339
+ ),
340
+ 'zwPositioning' => array(
341
+ 'label' => __('Positioning', 'wp-image-zoooom'),
342
+ 'values' => array(
343
+ 'right_top' => array('icon-type_zoom_window_right_top', __('Right Top', 'zoooom')),
344
+ 'right_bottom' => array('icon-type_zoom_window_right_bottom', __('Right Bottom', 'zoooom')),
345
+ 'right_center' => array('icon-type_zoom_window_right_center', __('Right Center', 'zoooom')),
346
+ 'left_top' => array('icon-type_zoom_window_left_top', __('Left Top', 'zoooom')),
347
+ 'left_bottom' => array('icon-type_zoom_window_left_bottom', __('Left Bottom', 'zoooom')),
348
+ 'left_center' => array('icon-type_zoom_window_left_center', __('Left Center', 'zoooom')),
349
+ ),
350
+ 'pro' => true,
351
+ 'value' => '',
352
+ 'disabled' => true,
353
+ 'input_form' => 'buttons',
354
+ 'buttons' => 'i',
355
+ ),
356
+ 'mousewheelZoom' => array(
357
+ 'label' => __('Mousewheel Zoom', 'wp-image-zoooom'),
358
+ 'value' => '',
359
+ 'pro' => true,
360
+ 'input_form' => 'checkbox',
361
+ ),
362
+ 'customText' => array(
363
+ 'label' => __('Text on the image', 'wp-image-zoooom'),
364
+ 'value' => __('', 'wp-image-zoooom'),
365
+ 'input_form' => 'input_text',
366
+ 'pro' => true,
367
+ ),
368
+ 'customTextSize' => array(
369
+ 'label' => __('Text Size', 'wp-image-zoooom'),
370
+ 'post_input' => 'px',
371
+ 'value' => '',
372
+ 'input_form' => 'input_text',
373
+ 'pro' => true,
374
+ ),
375
+ 'customTextColor' => array(
376
+ 'label' => __('Text Color', 'wp-image-zoooom'),
377
+ 'value' => '',
378
+ 'input_form' => 'input_color',
379
+ 'pro' => true,
380
+ ),
381
+ 'customTextAlign' => array(
382
+ 'label' => __('Text Align', 'wp-image-zoooom'),
383
+ 'values' => array(
384
+ 'top_left' => array('icon-text_align_top_left', __('Top Left', 'zoooom' ) ),
385
+ 'top_center' => array('icon-text_align_top_center', __('Top Center', 'zoooom' ) ),
386
+ 'top_right' => array('icon-text_align_top_right', __('Top Right', 'zoooom' ) ),
387
+ 'bottom_left' => array('icon-text_align_bottom_left', __('Bottom Left', 'zoooom' ) ),
388
+ 'bottom_center' => array('icon-text_align_bottom_center', __('Bottom Center', 'zoooom' ) ),
389
+ 'bottom_right' => array('icon-text_align_bottom_right', __('Bottom Right', 'zoooom' ) ),
390
+ ),
391
+ 'value' => '',
392
+ 'input_form' => 'buttons',
393
+ 'pro' => true,
394
+ 'buttons' => 'i',
395
+ ),
396
+
397
+
398
+ );
399
+
400
+ $settings = array_merge( $settings, $pro_fields );
401
+
402
+ if ( isset( $settings[$id] ) ) {
403
+ $settings[$id]['name'] = $id;
404
+ return $settings[$id];
405
+ } elseif ( empty( $id ) ) {
406
+ return $settings;
407
+ }
408
+ return false;
409
+ }
410
+
411
+ /**
412
+ * Output the admin page
413
+ * @access public
414
+ */
415
+ public function admin_settings_page() {
416
+
417
+ if ( isset( $_GET['tab'] ) && $_GET['tab'] == 'general' ) {
418
+ if ( ! empty( $_POST ) ) {
419
+ check_admin_referer('iz_general');
420
+ $new_settings = $this->validate_general( $_POST );
421
+ update_option( 'zoooom_general', $new_settings );
422
+ $this->add_message( 'success', '<b>'.__('Your settings have been saved.', 'wp-image-zoooom') . '</b>' );
423
+ }
424
+
425
+ $template = ImageZoooom()->plugin_dir_path() . "/includes/image-zoom-admin-general.php";
426
+ load_template( $template );
427
+
428
+ $this->tab = 'general';
429
+
430
+ return;
431
+ }
432
+
433
+ if ( ! empty( $_POST ) ) {
434
+ check_admin_referer('iz_template');
435
+ $new_settings = $this->validate_settings( $_POST );
436
+ $new_settings_js = $this->generate_js_settings( $new_settings );
437
+ update_option( 'zoooom_settings', $new_settings );
438
+ update_option( 'zoooom_settings_js', $new_settings_js );
439
+ $this->add_message( 'success', '<b>'.__('Your settings have been saved.', 'wp-image-zoooom') . '</b>' );
440
+ }
441
+
442
+ $template = ImageZoooom()->plugin_dir_path() . "/includes/image-zoom-admin-template.php";
443
+ load_template( $template );
444
+
445
+ $this->tab = 'settings';
446
+ }
447
+
448
+ /**
449
+ * Build the jquery.image_zoom.js options and save them directly in the database
450
+ * @access private
451
+ */
452
+ private function generate_js_settings( $settings ) {
453
+ $options = array();
454
+ switch ( $settings['lensShape'] ) {
455
+ case 'none' :
456
+ $options[] = 'zoomType : "inner"';
457
+ $options[] = 'cursor: "'.$settings['cursorType'].'"';
458
+ $options[] = 'easingAmount: '.$settings['zwEasing'];
459
+ break;
460
+ case 'square' :
461
+ case 'round' :
462
+ $options[] = 'lensShape : "' .$settings['lensShape'].'"';
463
+ $options[] = 'zoomType : "lens"';
464
+ $options[] = 'lensSize : "' .$settings['lensSize'].'"';
465
+ $options[] = 'borderSize : "' .$settings['borderThickness'].'"';
466
+ $options[] = 'borderColour : "' .$settings['borderColor'].'"';
467
+ $options[] = 'cursor : "' .$settings['cursorType'].'"';
468
+ $options[] = 'lensFadeIn : "' .$settings['lensFade'].'"';
469
+ $options[] = 'lensFadeOut : "' .$settings['lensFade'].'"';
470
+ if ( $settings['tint'] == true ) {
471
+ $options[] = 'tint : true';
472
+ $options[] = 'tintColour: "' . $settings['tintColor'] . '"';
473
+ $options[] = 'tintOpacity: "' . $settings['tintOpacity'] . '"';
474
+ }
475
+
476
+ break;
477
+ case 'square' :
478
+ break;
479
+ case 'zoom_window' :
480
+ $options[] = 'lensShape : "square"';
481
+ $options[] = 'lensSize : "' .$settings['lensSize'].'"';
482
+ $options[] = 'lensBorderSize : "' .$settings['borderThickness'].'"';
483
+ $options[] = 'lensBorderColour: "' .$settings['borderColor'].'"';
484
+ $options[] = 'borderRadius : "' .$settings['zwBorderRadius'].'"';
485
+ $options[] = 'cursor : "' .$settings['cursorType'].'"';
486
+ $options[] = 'zoomWindowWidth : "' .$settings['zwWidth'].'"';
487
+ $options[] = 'zoomWindowHeight: "' .$settings['zwHeight'].'"';
488
+ $options[] = 'zoomWindowOffsetx: "' .$settings['zwPadding'].'"';
489
+ $options[] = 'borderSize : "' .$settings['zwBorderThickness'].'"';
490
+ $options[] = 'borderColour : "' .$settings['zwBorderColor'].'"';
491
+ $options[] = 'zoomWindowShadow : "' .$settings['zwShadow'].'"';
492
+ $options[] = 'lensFadeIn : "' .$settings['lensFade'].'"';
493
+ $options[] = 'lensFadeOut : "' .$settings['lensFade'].'"';
494
+ $options[] = 'zoomWindowFadeIn :"' .$settings['zwFade'].'"';
495
+ $options[] = 'zoomWindowFadeOut :"' .$settings['zwFade'].'"';
496
+ $options[] = 'easingAmount : "'.$settings['zwEasing'].'"';
497
+ if ( $settings['tint'] == true ) {
498
+ $options[] = 'tint : true';
499
+ $options[] = 'tintColour: "' . $settings['tintColor'] . '"';
500
+ $options[] = 'tintOpacity: "' . $settings['tintOpacity'] . '"';
501
+ }
502
+
503
+ break;
504
+ }
505
+ if (count($options) == 0) return false;
506
+
507
+ $options = implode(', ', $options);
508
+
509
+ return $options;
510
+ }
511
+
512
+
513
+ /**
514
+ * Check the validity of the settings. The validity has to be the same as the javascript validation in image-zoom.settings.js
515
+ * @access public
516
+ */
517
+ public function validate_settings( $post ) {
518
+ $settings = $this->get_settings();
519
+
520
+ $new_settings = array();
521
+ foreach ( $settings as $_key => $_value ) {
522
+ if ( isset( $post[$_key] ) && $post[$_key] != $_value['value'] ) {
523
+ $new_settings[$_key] = $post[$_key];
524
+ } else {
525
+ $new_settings[$_key] = $_value['value'];
526
+ }
527
+ }
528
+
529
+ $new_settings['lensShape'] = $this->validateValuesSet('lensShape', $new_settings['lensShape']);
530
+ $new_settings['cursorType'] = $this->validateValuesSet('cursorType', $new_settings['cursorType']);
531
+ $new_settings['zwEasing'] = $this->validateRange('zwEasing', $new_settings['zwEasing'], 'int', 0, 200);
532
+ $new_settings['lensSize'] = $this->validateRange('lensSize', $new_settings['lensSize'], 'int', 20, 2000);
533
+ $new_settings['borderThickness'] = $this->validateRange('borderThickness', $new_settings['borderThickness'], 'int', 0, 200);
534
+ $new_settings['borderColor'] = $this->validateColor('borderColor', $new_settings['borderColor']);
535
+ $new_settings['lensFade'] = $this->validateRange('lensFade', $new_settings['lensFade'], 'float', 0, 10);
536
+ $new_settings['tint'] = $this->validateCheckbox('tint', $new_settings['tint']);
537
+ $new_settings['tintColor'] = $this->validateColor('tintColor', $new_settings['tintColor']);
538
+ $new_settings['tintOpacity'] = $this->validateRange('tintOpacity', $new_settings['tintOpacity'], 'float', 0, 1);
539
+ $new_settings['zwWidth'] = $this->validateRange('zwWidth', $new_settings['zwWidth'], 'int', 0, 2000);
540
+ $new_settings['zwHeight'] = $this->validateRange('zwHeight', $new_settings['zwHeight'], 'int', 0, 2000);
541
+ $new_settings['zwPadding'] = $this->validateRange('zwPadding', $new_settings['zwPadding'], 'int', 0, 200 );
542
+ $new_settings['zwBorderThickness'] = $this->validateRange('zwBorderThickness', $new_settings['zwBorderThickness'], 'int', 0, 200);
543
+ $new_settings['zwBorderRadius'] = $this->validateRange('zwBorderRadius', $new_settings['zwBorderRadius'], 'int', 0, 500);
544
+ $new_settings['zwShadow'] = $this->validateRange('zwShadow', $new_settings['zwShadow'], 'int', 0, 500);
545
+ $new_settings['zwFade'] = $this->validateRange('zwFade', $new_settings['zwFade'], 'float', 0, 10);
546
+
547
+ return $new_settings;
548
+ }
549
+
550
+ public function validate_general( $post = null) {
551
+ $settings = $this->get_settings();
552
+
553
+ if( $post == null ) {
554
+ return array(
555
+ 'enable_woocommerce' => true,
556
+ 'exchange_thumbnails' => true,
557
+ 'enable_mobile' => false,
558
+ 'woo_cat' => false,
559
+ 'force_woocommerce' => true,
560
+ );
561
+ }
562
+
563
+ if ( ! isset( $post['enable_woocommerce'] ) )
564
+ $post['enable_woocommerce'] = false;
565
+ if ( ! isset( $post['exchange_thumbnails'] ) )
566
+ $post['exchange_thumbnails'] = false;
567
+ if ( ! isset( $post['enable_mobile'] ) )
568
+ $post['enable_mobile'] = false;
569
+ if ( ! isset( $post['woo_cat'] ) )
570
+ $post['woo_cat'] = false;
571
+ if ( ! isset( $post['force_woocommerce'] ) )
572
+ $post['force_woocommerce'] = false;
573
+
574
+ $new_settings = array(
575
+ 'enable_woocommerce' => $this->validateCheckbox('enable_woocommerce', $post['enable_woocommerce']),
576
+ 'exchange_thumbnails' => $this->validateCheckbox('exchange_thumbnails', $post['exchange_thumbnails']),
577
+ 'enable_mobile' => $this->validateCheckbox('enable_mobile', $post['enable_mobile']),
578
+ 'woo_cat' => $this->validateCheckbox('woo_cat', $post['woo_cat']),
579
+ 'force_woocommerce' => $this->validateCheckbox('force_woocommerce', $post['force_woocommerce']),
580
+ );
581
+
582
+ return $new_settings;
583
+ }
584
+
585
+ /**
586
+ * Helper to validate a checkbox
587
+ * @access private
588
+ */
589
+ private function validateCheckbox( $id, $value ) {
590
+ $settings = $this->get_settings();
591
+
592
+ if ( $value == 'on' ) $value = true;
593
+
594
+ if ( !is_bool($value) ) {
595
+ $value = $settings[$id]['value'];
596
+ $this->add_message('info', __('Unrecognized <b>'.$settings[$id]['label'].'</b>. The value was reset to default', 'wp-image-zoooom') );
597
+ } else {
598
+ }
599
+ return $value;
600
+ }
601
+
602
+ /**
603
+ * Helper to validate a color
604
+ * @access private
605
+ */
606
+ private function validateColor( $id, $value ) {
607
+ $settings = $this->get_settings();
608
+
609
+ if ( !preg_match('/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/', $value) ) {
610
+ $value = $settings[$id]['value'];
611
+ $message = __('Unrecognized <b>%1$s</b>. The value was reset to <b>%2$s</b>', 'wp-image-zoooom');
612
+ $message = wp_kses($message, array('b' => array()));
613
+ $message = sprintf($message, $settings[$id]['label'], $settings[$id]['value']);
614
+ $this->add_message('info', $message);
615
+ }
616
+ return $value;
617
+ }
618
+
619
+ /**
620
+ * Helper to validate the value out of a set of values
621
+ * @access private
622
+ */
623
+ private function validateValuesSet( $id, $value ) {
624
+ $settings = $this->get_settings();
625
+
626
+ if ( !array_key_exists($value, $settings[$id]['values']) ) {
627
+ $value = $settings[$id]['value'];
628
+ $message = __('Unrecognized <b>%1$s</b>. The value was reset to <b>%2$s</b>', 'wp-image-zoooom');
629
+ $message = wp_kses($message, array('b' => array()));
630
+ $message = sprintf($message, $settings[$id]['label'], $settings[$id]['value']);
631
+ $this->add_message('info', $message);
632
+ }
633
+ return $value;
634
+ }
635
+
636
+ /**
637
+ * Helper to validate an integer of a float
638
+ * @access private
639
+ */
640
+ private function validateRange( $id, $value, $type, $min, $max ) {
641
+ $settings = $this->get_settings();
642
+
643
+ if ( $type == 'int' ) $new_value = (int)$value;
644
+ if ( $type == 'float' ) $new_value = (float)$value;
645
+
646
+ if ( !is_numeric($value) || $new_value < $min || $new_value > $max ) {
647
+ $new_value = $settings[$id]['value'];
648
+ $message = __('<b>%1$s</b> accepts values between %2$s and %3$s. Your value was reset to <b>%4$s</b>', 'wp-image-zoooom');
649
+ $message = wp_kses($message, array('b' => array()));
650
+ $message = sprintf($message, $settings[$id]['label'], $settings[$id]['value']);
651
+ $this->add_message('info', $message);
652
+ }
653
+ return $new_value;
654
+ }
655
+
656
+
657
+ /**
658
+ * Add a message to the $this->messages array
659
+ * @type accepted types: success, error, info, block
660
+ * @access private
661
+ */
662
+ private function add_message( $type = 'success', $text ) {
663
+ global $comment;
664
+ $messages = $this->messages;
665
+ $messages[] = array('type' => $type, 'text' => $text);
666
+ $comment[] = array('type' => $type, 'text' => $text);
667
+ $this->messages = $messages;
668
+ }
669
+
670
+ /**
671
+ * Output the form messages
672
+ * @access public
673
+ */
674
+ public function show_messages() {
675
+ global $comment;
676
+ if ( sizeof( $comment ) == 0 ) return;
677
+ $output = '';
678
+ foreach ( $comment as $message ) {
679
+ $output .= '<div class="alert alert-'.$message['type'].'">
680
+ <button type="button" class="close" data-dismiss="alert">&times;</button>
681
+ '. $message['text'] .'</div>';
682
+ }
683
+ return $output;
684
+ }
685
+
686
+
687
+ /**
688
+ * Add a button to the TinyMCE toolbar
689
+ * @access public
690
+ */
691
+ function iz_add_tinymce_button() {
692
+ global $typenow;
693
+
694
+ if ( !current_user_can('edit_posts') && !current_user_can('edit_pages') ) {
695
+ return;
696
+ }
697
+
698
+ $allowed_types = array( 'post', 'page' );
699
+
700
+ if ( defined('LEARNDASH_VERSION') ) {
701
+ $learndash_types = array( 'sfwd-courses', 'sfwd-lessons', 'sfwd-topic', 'sfwd-quiz', 'sfwd-certificates', 'sfwd-assignment');
702
+ $allowed_types = array_merge( $allowed_types, $learndash_types );
703
+
704
+ }
705
+ /*
706
+ if( ! in_array( $typenow, $allowed_types ) )
707
+ return;
708
+ */
709
+
710
+ if ( isset( $_GET['page'] ) && $_GET['page'] == 'wplister-templates' )
711
+ return;
712
+
713
+ if ( get_user_option('rich_editing') != 'true')
714
+ return;
715
+
716
+ add_filter('mce_external_plugins', array( $this, 'iz_add_tinymce_plugin' ) );
717
+ add_filter('mce_buttons', array( $this, 'iz_register_tinymce_button' ) );
718
+ }
719
+
720
+ /**
721
+ * Register the plugin with the TinyMCE plugins manager
722
+ * @access public
723
+ */
724
+ function iz_add_tinymce_plugin($plugin_array) {
725
+ $plugin_array['image_zoom_button'] = ImageZoooom()->plugins_url() . '/assets/js/tinyMCE-button.js';
726
+ return $plugin_array;
727
+ }
728
+
729
+ /**
730
+ * Register the button with the TinyMCE manager
731
+ */
732
+ function iz_register_tinymce_button($buttons) {
733
+ array_push($buttons, 'image_zoom_button');
734
+ return $buttons;
735
+ }
736
+
737
+
738
+ }
739
+
740
+
741
+ return new ImageZoooom_Admin();
includes/image-zoom-forms-helper.php ADDED
@@ -0,0 +1,142 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class ImageZoooom_FormsHelper {
4
+
5
+ public $label_class = 'col-sm-5 control-label';
6
+
7
+ public function input( $type, $settings = array() ) {
8
+ if ( !isset($settings['label'] )) return;
9
+ if ( !isset($settings['name'] )) return;
10
+ $allowed_types = array( 'radio', 'input_text', 'buttons', 'input_color', 'checkbox' );
11
+
12
+ if ( ! in_array( $type, $allowed_types ) ) {
13
+ return;
14
+ }
15
+ $this->form_group_before( $settings, $type );
16
+ call_user_func( array($this, $type), $settings );
17
+ $this->form_group_after( $settings );
18
+ }
19
+
20
+ function form_group_before( $args = array(), $type ) {
21
+ $disabled = ( isset($args['pro']) && $args['pro']) ? true : false;
22
+
23
+ $output = "\t\t" . '<div class="form-group';
24
+ if ( $type == 'radio' || $type == 'buttons' ) {
25
+ $output .= ($disabled) ? ' disabled' : '';
26
+ } else {
27
+ $output .= ($disabled) ? ' disabled-short' : '';
28
+ }
29
+ $output .= '">' . PHP_EOL;
30
+
31
+ $output .= "\t\t" . '<label class="'. $this->label_class .'">'. $args['label'] . PHP_EOL;
32
+ if ( $disabled ) {
33
+ $output .= "\t\t" . '<img src="'.$this->assets_url().'/images/question_mark.svg" />' . PHP_EOL;
34
+ }
35
+ if ( isset($args['description']) && !$disabled ) {
36
+ $output .= "\t\t" . $this->tooltip( $args['description'] );
37
+ }
38
+ $output .= "\t\t" . '</label>' . PHP_EOL;
39
+
40
+ echo $output;
41
+ }
42
+
43
+ function form_group_after( $args = array() ) {
44
+ echo "\t\t" . '</div>' . PHP_EOL;
45
+ }
46
+
47
+ public function radio($args = array()) {
48
+ if ( !isset($args['values'] ) || count($args['values']) == 0 ) return;
49
+ if ( !isset($args['active'] ) ) $args['active'] = '';
50
+ $disabled = ( isset($args['pro']) && $args['pro']) ? ' disabled="disabled"': '';
51
+ ?>
52
+ <?php foreach ($args['values'] as $_id => $_label) : ?>
53
+ <div class="radio"><label>
54
+ <input type="radio" name="<?php echo $args['name'] ?>" id="<?php echo $_id ?>" value="<?php echo $_id ?>" <?php if ($_id == $args['active']) echo 'checked=""'; ?> <?php echo $disabled; ?>>
55
+ <?php echo $_label ?>
56
+ </label></div>
57
+ <?php endforeach; ?>
58
+ <?php
59
+ }
60
+
61
+ public function input_text( $args = array() ) {
62
+ if ( ! isset($args['value'] ) ) $args['value'] = '';
63
+ if ( ! isset($args['description'] ) ) $args['description'] = '';
64
+ $disabled = ( isset($args['pro']) && $args['pro']) ? ' disabled="disabled"': '';
65
+ ?>
66
+ <?php if (isset($args['post_input'])) : ?>
67
+ <div class="input-group">
68
+ <?php else : ?>
69
+ <div class="input-group">
70
+ <?php endif; ?>
71
+ <input type="text" class="form-control" id="<?php echo $args['name']?>" name="<?php echo $args['name'] ?>" value="<?php echo $args['value'] ?>" <?php echo $disabled; ?> />
72
+ <?php if (isset($args['post_input'])) : ?><span class="input-group-addon"><?php echo $args['post_input'] ?></span>
73
+ <?php endif; ?>
74
+ </div>
75
+ <?php
76
+ }
77
+
78
+
79
+ public function input_color( $args = array() ) {
80
+ if ( ! isset($args['value'] ) ) $args['value'] = '';
81
+ ?>
82
+ <div class="input-group">
83
+ <input type="color" class="form-control" id="<?php echo $args['name'] ?>" name="<?php echo $args['name'] ?>" value="<?php echo $args['value'] ?>">
84
+ <span class="input-group-addon" id="color-text-color-hex"><?php echo $args['value'] ?></span>
85
+ </div>
86
+
87
+ <?php
88
+ }
89
+
90
+ public function checkbox( $args = array() ) {
91
+ if ( ! isset($args['value'] ) ) $args['value'] = false;
92
+ $disabled = ( isset($args['pro']) && $args['pro']) ? ' disabled="disabled"': '';
93
+ ?>
94
+ <div class="input-group input-group-checkbox">
95
+ <label>
96
+ <input type="checkbox" id="<?php echo $args['name'] ?>" name="<?php echo $args['name'] ?>" <?php echo ($args['value'] == true) ? 'checked=""' : '' ?> <?php $disabled; ?>/>
97
+ </label>
98
+ </div>
99
+ <?php
100
+ }
101
+
102
+ public function buttons( $args = array() ) {
103
+ if ( ! isset($args['values'] ) || count($args['values']) == 0 ) return;
104
+ if ( ! isset($args['value'] ) ) $args['value'] = '';
105
+ if ( ! isset($args['buttons'] ) ) $args['buttons'] = 'image';
106
+ $disabled = ( isset($args['pro']) && $args['pro']) ? ' disabled="disabled"': '';
107
+ ?>
108
+ <div class="col-sm-7">
109
+ <div class="btn-group btn-group-no-margin" data-toggle="buttons" id="btn-group-style-circle">
110
+ <?php foreach( $args['values'] as $_id => $_value ) : ?>
111
+ <?php $toggle = ( ! empty($_value[1]) ) ? ' data-toggle="tooltip" data-placement="top" title="'.$_value[1].'" data-original-title="' . $_value[1] . '"' : ''; ?>
112
+ <label class="btn btn-default<?php echo ($args['value'] == $_id) ? ' active' : '' ?> ">
113
+ <input type="radio" name="<?php echo $args['name'] ?>" id="<?php echo $_id ?>" value="<?php echo $_id ?>" <?php echo ($args['value'] == $_id) ? 'checked' : '' ?> <?php echo $disabled; ?> />
114
+ <div class="icon-in-label ndd-spot-icon icon-style-1" <?php echo $toggle; ?>>
115
+ <div class="ndd-icon-main-element">
116
+ <?php if($args['buttons'] == 'image') : ?>
117
+ <img src="<?php echo $this->assets_url() . $_value[0] ?>"<?php echo $toggle; ?> />
118
+ <?php else : ?>
119
+ <i class="<?php echo $_value[0]; ?>"></i>
120
+ <?php endif; ?>
121
+ </div>
122
+ </div>
123
+ </label>
124
+ <?php endforeach; ?>
125
+ </div>
126
+ </div>
127
+ <?php
128
+ }
129
+
130
+ public function tooltip( $description = '' ) {
131
+ if ( empty($description) ) return '';
132
+ return '<img src="'.$this->assets_url().'/images/question_mark.svg" data-toggle="tooltip" data-placement="top" title="" data-original-title="'.$description.'" />';
133
+ }
134
+
135
+ public function assets_url() {
136
+ $assets_url = ImageZoooom()->plugins_url() . '/assets';
137
+ return $assets_url;
138
+ }
139
+
140
+ }
141
+
142
+ ?>
includes/image-zoom-notices.php ADDED
@@ -0,0 +1,203 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit; // Exit if accessed directly
5
+ }
6
+
7
+ /**
8
+ * ImageZoooom_Notices
9
+ */
10
+ class ImageZoooom_Notices {
11
+
12
+ var $main = '';
13
+ var $activation_time = '';
14
+ var $version = '';
15
+ var $dismiss_notice = '';
16
+ var $expiration_days = 3;
17
+
18
+ /**
19
+ * Constructor
20
+ */
21
+ public function __construct() {
22
+
23
+ $this->main = new ImageZoooom();
24
+
25
+ $this->set_variables();
26
+
27
+ if ( $this->dismiss_notice == 1 ) {
28
+ return;
29
+ }
30
+
31
+ add_action( 'admin_notices', array( $this, 'admin_notices' ) );
32
+ add_action( 'wp_ajax_zoooom_notice_dismiss', array( $this, 'notice_dismiss' ) );
33
+ }
34
+
35
+ /**
36
+ * Hooked from 'admin_notices'
37
+ */
38
+ public function admin_notices() {
39
+
40
+ if ( ! $notice = $this->choose_notice() )
41
+ return;
42
+
43
+ $message = $this->get_message( $notice );
44
+
45
+ $this->print_message( $notice, $message );
46
+
47
+ }
48
+
49
+ /**
50
+ * Get the options from the database or set them on install or upgrade
51
+ */
52
+ public function set_variables() {
53
+ $now = time();
54
+
55
+ $this->activation_time = get_option( 'zoooom_activation_time', '' );
56
+ $this->version = get_option( 'zoooom_version', '' );
57
+ $this->dismiss_notice = get_option( 'zoooom_dismiss_notice', false );
58
+
59
+ if ( empty( $this->activation_time ) || version_compare( $this->version, $this->main->version, '<' ) ) {
60
+ $this->activation_time = $now;
61
+ update_option( 'zoooom_activation_time', $now );
62
+ update_option( 'zoooom_version', $this->main->version );
63
+ update_option( 'zoooom_dismiss_notice', false );
64
+ }
65
+
66
+ }
67
+
68
+ /**
69
+ * Choose which notice to be shown
70
+ */
71
+ public function choose_notice() {
72
+ $now = time();
73
+
74
+ $days_passed = ceil( ( $now - $this->activation_time ) / 86400 );
75
+
76
+ switch ( $days_passed ) {
77
+ case 1 : return '1_day';
78
+ case 2 : return '2_day';
79
+ case 3 : return '3_day';
80
+ case 4 :
81
+ case 5 :
82
+ case 6 :
83
+ case 7 : return '7_day';
84
+ case 8 :
85
+ case 9 :
86
+ case 10 :
87
+ case 11 :
88
+ case 12 : return '12_day';
89
+ }
90
+ }
91
+
92
+ /**
93
+ * Get the text of the message
94
+ */
95
+ public function get_message( $notice ) {
96
+
97
+ $message = '';
98
+ $percentage = '40';
99
+
100
+ $expiration_date = $this->activation_time + ( $this->expiration_days * 86400 );
101
+ $expiration_date = date( get_option( 'date_format') , $expiration_date );
102
+
103
+
104
+ if ( $notice == '12_days' ) {
105
+ $link = 'https://www.silkypress.com/wp-image-zoooom-pro-offer/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner';
106
+ } else {
107
+ $link = 'https://www.silkypress.com/wp-image-zoooom-pro-special-offer/?a=' . $this->convert_numbers_letters( $this->activation_time ) . '&utm_source=wordpress&utm_campaign=iz_offer&utm_medium=banner';
108
+ }
109
+
110
+ $lower_part = sprintf( '<div style="margin-top: 7px;"><a href="%s" target="_blank">%s</a> | <a href="#" class="dismiss_notice" target="_parent">%s</a></div>', $link, 'Get WP Image Zoooom PRO', 'Dismiss this notice' );
111
+
112
+ switch ( $notice ) {
113
+ case '1_day' :
114
+ $message = '<div><b>Limited offer ending on '. $expiration_date .'</b>. '.$percentage.'% Off from WP Image Zoooom PRO for our WordPress.org users.</div>' . $lower_part;
115
+ break;
116
+
117
+ case '2_day' :
118
+ $message = '<div><b>Limited offer ending in 1 day (on '. $expiration_date .')</b>. '.$percentage.'% Off from WP Image Zoooom PRO for our WordPress.org users. </div>' . $lower_part;
119
+ break;
120
+
121
+ case '3_day' :
122
+ $message = '<div><b>Limited offer ending today</b>. '.$percentage.'% Off from WP Image Zoooom PRO for our WordPress.org users. </div>' . $lower_part;
123
+ break;
124
+
125
+ case '7_day' :
126
+ $message = '';
127
+ break;
128
+
129
+ case '12_day' :
130
+ $message = '<div><b>Special Offer</b>: 30% Off from WP Image Zoooom PRO for our WordPress.org users.</div>' . $lower_part;
131
+ break;
132
+ }
133
+
134
+ return $message;
135
+ }
136
+
137
+
138
+
139
+ /**
140
+ * Print the message
141
+ */
142
+ public function print_message( $option_name = '', $message = '' ) {
143
+ if ( empty( $message ) || empty( $option_name ) )
144
+ return;
145
+
146
+ ?>
147
+ <style type="text/css">
148
+ .zoooom_note{ color: #bc1117; }
149
+ #zoooom_notice { display: block; padding: }
150
+ #zoooom_notice b { color: #bc1117; }
151
+ #zoooom_notice a { text-decoration: none; font-weight: bold; }
152
+ #zoooom_notice a.dismiss_notice { font-weight: normal; }
153
+ </style>
154
+
155
+ <script type='text/javascript'>
156
+ jQuery(function($){
157
+ $(document).on( 'click', '.zoooom_notice .dismiss_notice', function() {
158
+
159
+ var data = {
160
+ action: 'zoooom_notice_dismiss',
161
+ option: '<?php echo $option_name; ?>'
162
+ };
163
+ $.post(ajaxurl, data, function(response ) {
164
+ $('#zoooom_notice').fadeOut('slow');
165
+ });
166
+ });
167
+ });
168
+ </script>
169
+
170
+ <div id="zoooom_notice" class="updated notice zoooom_notice is-dismissible">
171
+ <p><?php echo $message ?></p>
172
+ <button type="button" class="notice-dismiss">
173
+ <span class="screen-reader-text"><?php _e('Dismiss this notice'); ?></span>
174
+ </button>
175
+ </div>
176
+ <?php
177
+
178
+ }
179
+
180
+ function convert_numbers_letters( $text, $from = 'numbers' ) {
181
+ $alphabet = str_split('abcdefghij');
182
+ $numbers = str_split('0123456789');
183
+
184
+ if ( $from == 'numbers' ) {
185
+ return str_replace( $numbers, $alphabet, $text );
186
+ } else {
187
+ return str_replace( $alphabet, $numbers, $text );
188
+ }
189
+ }
190
+
191
+ /**
192
+ * Ajax response for `notice_dismiss` action
193
+ */
194
+ function notice_dismiss() {
195
+
196
+ update_option( 'zoooom_dismiss_notice', 1 );
197
+
198
+ wp_die();
199
+ }
200
+ }
201
+
202
+
203
+ return new ImageZoooom_Notices();
includes/image-zoom-warnings.php ADDED
@@ -0,0 +1,218 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit; // Exit if accessed directly
5
+ }
6
+
7
+ /**
8
+ * ImageZoooom_Warnings
9
+ */
10
+ class ImageZoooom_Warnings {
11
+
12
+ /**
13
+ * Constructor
14
+ */
15
+ public function __construct() {
16
+
17
+ add_action( 'wp_ajax_iz_dismiss', array( $this, 'notice_dismiss' ) );
18
+
19
+ if ( ! function_exists( 'is_plugin_active' ) ) {
20
+ require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
21
+ }
22
+
23
+ if ( isset( $_SERVER ) && isset( $_SERVER['REQUEST_URI'] ) ) {
24
+ if ( strpos( $_SERVER['REQUEST_URI'], 'zoooom_settings' ) === false )
25
+ return;
26
+ }
27
+
28
+ $this->check_jetpack();
29
+ $this->check_avada();
30
+ $this->check_shopkeeper();
31
+ $this->check_bwf_minify();
32
+ }
33
+
34
+ /**
35
+ * Warning about BWF settings
36
+ */
37
+ function check_bwf_minify() {
38
+
39
+ if ( ! is_plugin_active( 'bwp-minify/bwp-minify.php' ) ) return false;
40
+
41
+ $option = get_option( 'iz_dismiss_bwp_minify', '' );
42
+
43
+ if ( !empty( $option ) ) {
44
+ return;
45
+ }
46
+
47
+ add_action( 'admin_notices', array( $this, 'check_bwf_notice' ) );
48
+
49
+ }
50
+
51
+ /**
52
+ * Show a warning about the BWF Minify Settings
53
+ */
54
+ function check_bwf_notice() {
55
+ $id = 'iz_dismiss_bwp_minify';
56
+ $class = 'notice notice-warning is-dismissible';
57
+ $url = 'https://www.silkypress.com/wp-content/uploads/2016/09/image-zoom-bwp.png';
58
+ $message = sprintf(__( '<b>If the zoom does not show up</b> on your website, it could be because you need to add the “image_zoooom-init” and the “image_zoooom” to the “Scripts to NOT minify” option in the BWP Minify settings, as shown in <a href="%1$s" target="_blank">this screenshot</a>.', 'wp-image-zoooom' ), $url);;
59
+
60
+ printf( '<div class="%1$s" id="%2$s"><p>%3$s</p></div>', $class, $id, $message );
61
+
62
+ $this->dismiss_js( $id );
63
+
64
+ }
65
+
66
+
67
+
68
+
69
+
70
+ /**
71
+ * Check if the Avada theme is active
72
+ */
73
+ function check_avada() {
74
+ if ( get_template() != 'Avada' ) return false;
75
+
76
+
77
+ if ( ! is_plugin_active( 'woocommerce/woocommerce.php' ) ) return false;
78
+
79
+ $option = get_option( 'iz_dismiss_avada', '' );
80
+
81
+ if ( !empty( $option ) ) {
82
+ return;
83
+ }
84
+
85
+ add_action( 'admin_notices', array( $this, 'check_avada_notice' ) );
86
+
87
+ }
88
+
89
+
90
+
91
+ /**
92
+ * Check if for the Shopkeeper theme
93
+ */
94
+ function check_shopkeeper() {
95
+ if ( get_template() != 'twentysixteen' ) return false;
96
+
97
+
98
+ if ( ! is_plugin_active( 'woocommerce/woocommerce.php' ) ) return false;
99
+
100
+ $option = get_option( 'iz_dismiss_shopkeeper', '' );
101
+
102
+ if ( !empty( $option ) ) {
103
+ return;
104
+ }
105
+
106
+ add_action( 'admin_notices', array( $this, 'check_shopkeeper_notice' ) );
107
+
108
+ }
109
+
110
+
111
+
112
+ /**
113
+ * Show a warning about the Avada theme
114
+ */
115
+ function check_avada_notice() {
116
+ $id = 'iz_dismiss_avada';
117
+ $class = 'notice notice-warning is-dismissible';
118
+ $flexslider_url = 'https://woocommerce.com/flexslider/';
119
+ $pro_url = 'https://www.silkypress.com/wp-image-zoom-plugin/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner';
120
+ $message = sprintf( __( 'The WP Image Zoom plugin <b>will not work</b> on the WooCommerce products gallery with the Avada theme. The Avada theme changes entirely the default WooCommerce gallery with the <a href="%1$s" target="_blank">Flexslider gallery</a> and the zoom plugin does not support the Flexslider gallery. Please check the <a href="%2$s" target="_blank">PRO version</a> of the plugin for compatibility with the Flexslider gallery.', 'wp-image-zoooom' ), $flexslider_url, $pro_url );
121
+
122
+ printf( '<div class="%1$s" id="%2$s"><p>%3$s</p></div>', $class, $id, $message );
123
+
124
+ $this->dismiss_js( $id );
125
+
126
+ }
127
+
128
+
129
+ /**
130
+ * Show a warning about the Shopkeeper theme
131
+ */
132
+ function check_shopkeeper_notice() {
133
+ $id = 'iz_dismiss_shopkeeper';
134
+ $class = 'notice notice-warning is-dismissible';
135
+ $class = 'updated settings-error notice is-dismissible';
136
+ $pro_url = 'https://www.silkypress.com/wp-image-zoom-plugin/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner';
137
+ $message = sprintf( __( 'The WP Image Zoom plugin <b>will not work</b> on the WooCommerce products gallery with the Shopkeeper theme. The Shopkeeper theme changes entirely the default WooCommerce gallery with a custom made gallery not supported by the free version of the WP Image Zoom plugin. Please check the <a href="%1$s" target="_blank">PRO version</a> of the plugin for compatibility with the Shopkeeper\'s gallery.', 'wp-image-zoooom' ), $pro_url );
138
+
139
+ printf( '<div class="%1$s" id="%2$s"><p>%3$s</p></div>', $class, $id, $message );
140
+
141
+ $this->dismiss_js( $id );
142
+
143
+ }
144
+
145
+
146
+ /**
147
+ * Check if Jetpack Photon module is active
148
+ */
149
+ function check_jetpack() {
150
+ if ( ! defined('JETPACK__VERSION' ) ) {
151
+ return;
152
+ }
153
+
154
+ if ( ! Jetpack::is_module_active( 'photon' ) ) {
155
+ return;
156
+ }
157
+
158
+ $option = get_option( 'iz_dismiss_jetpack', '' );
159
+
160
+ if ( !empty( $option ) ) {
161
+ return;
162
+ }
163
+
164
+ add_action( 'admin_notices', array( $this, 'check_jetpack_notice' ) );
165
+ }
166
+
167
+ /**
168
+ * Show a warning about Jetpack Photon module
169
+ */
170
+ function check_jetpack_notice() {
171
+ $id = 'iz_dismiss_jetpack';
172
+ $class = 'notice notice-warning is-dismissible';
173
+ $message = __( 'WP Image Zoom plugin is not compatible with the <a href="admin.php?page=jetpack">Jetpack Photon</a> module. If you find that the zoom is not working, try to deactivate the Photon module and see if that solves it.', 'wp-image-zoooom' );
174
+
175
+ printf( '<div class="%1$s" id="%2$s"><p>%3$s</p></div>', $class, $id, $message );
176
+
177
+ $this->dismiss_js( $id );
178
+
179
+ }
180
+
181
+ /**
182
+ * Allow the dismiss button to remove the notice
183
+ */
184
+ function dismiss_js( $slug ) {
185
+ ?>
186
+ <script type='text/javascript'>
187
+ jQuery(function($){
188
+ $(document).on( 'click', '#<?php echo $slug; ?> .notice-dismiss', function() {
189
+ var data = {
190
+ action: 'iz_dismiss',
191
+ option: '<?php echo $slug; ?>',
192
+ };
193
+ $.post(ajaxurl, data, function(response ) {
194
+ $('#<?php echo $slug; ?>').fadeOut('slow');
195
+ });
196
+ });
197
+ });
198
+ </script>
199
+ <?php
200
+ }
201
+
202
+
203
+ /**
204
+ * Ajax response for `notice_dismiss` action
205
+ */
206
+ function notice_dismiss() {
207
+
208
+ $option = $_POST['option'];
209
+
210
+ update_option( $option, 1 );
211
+
212
+ wp_die();
213
+ }
214
+
215
+ }
216
+
217
+
218
+ return new ImageZoooom_Warnings();
includes/image-zoom.php ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit; // Exit if accessed directly
5
+ }
6
+
7
+ if ( ! class_exists( 'ImageZoooom' ) ) :
8
+ /**
9
+ * Main ImageZoooom Class
10
+ *
11
+ * @class ImageZoooom
12
+ */
13
+ final class ImageZoooom {
14
+ public $version = '1.0.0';
15
+ protected static $_instance = null;
16
+
17
+ /**
18
+ * Main ImageZoooom Instance
19
+ *
20
+ * Ensures only one instance of ImageZoooom is loaded or can be loaded
21
+ *
22
+ * @static
23
+ * @return ImageZoooom - Main instance
24
+ */
25
+ public static function instance() {
26
+ if ( is_null( self::$_instance ) ) {
27
+ self::$_instance = new self();
28
+ }
29
+ return self::$_instance;
30
+ }
31
+
32
+ /**
33
+ * Cloning is forbidden.
34
+ */
35
+ public function __clone() {
36
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'zoooom' ), '1.0' );
37
+ }
38
+
39
+ /**
40
+ * Unserializing instances of this class is forbidden.
41
+ */
42
+ public function __wakeup() {
43
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'zoooom' ), '1.0' );
44
+ }
45
+
46
+ /**
47
+ * Image Zoooom Constructor
48
+ * @access public
49
+ * @return ImageZoooom
50
+ */
51
+ public function __construct() {
52
+
53
+ if ( is_admin() ) {
54
+ include_once( 'includes/image-zoom-admin.php' );
55
+ add_action( 'admin_menu', 'add_menu' );
56
+ add_action( 'admin_init', 'register_mysettings' );
57
+ } else {
58
+ include_once( 'includes/image-zoom-page.php' );
59
+ }
60
+ }
61
+
62
+ }
63
+
64
+ endif;
65
+
66
+ /**
67
+ * Returns the main instance of ImageZoooom
68
+ *
69
+ * @return ImageZoooom
70
+ */
71
+ function ImageZoooom() {
72
+ return ImageZoooom::instance();
73
+ }
includes/premium-tooltips.php ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $message = __('Only available in <a href="%1$s" target="_blank">PRO version</a>', 'wp-image-zoooom');
4
+ $message = wp_kses( $message, array('a' => array('href' => array(), 'target'=> array())));
5
+ $message = sprintf( $message, 'https://www.silkypress.com/wp-image-zoom-plugin/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner');
6
+
7
+
8
+ ?>
9
+
10
+ <div id="wpfc-premium-tooltip" style="display:none;width: 230px; height: 60px; position: absolute; margin-left: 354px; margin-top: 112px; color: white;">
11
+ <div style="float:left;width:13px;">
12
+ <div style="width: 0px; height: 0px; border-top: 6px solid transparent; border-right: 6px solid #333333; border-bottom: 6px solid transparent; float: right; margin-right: 0px; margin-top: 16px;"></div>
13
+ </div>
14
+ <div style="font-family:sans-serif;font-size:13px;text-align: center; border-radius: 5px; float: left; background-color: rgb(51, 51, 51); color: white; width: 210px; padding: 10px 0px;">
15
+ <label><?php echo $message; ?></label>
16
+ </div>
17
+ </div>
18
+
19
+ <script type="text/javascript">
20
+ jQuery(document).ready(function($){
21
+ $(".form-group.disabled-short").click(function(e){
22
+ if(typeof window.tooltip != "undefined"){
23
+ clearTimeout(window.tooltip);
24
+ }
25
+
26
+ var inputCon = $(e.currentTarget).find(".input-group");
27
+ var left = 30;
28
+
29
+
30
+ $(e.currentTarget).children().each(function(i, child){
31
+ left += $(child).width();
32
+ });
33
+
34
+ var offsetTop = $(e.currentTarget).offset().top - 38;
35
+ offsetTop -= $('h2').offset().top - 52;
36
+
37
+ $("#wpfc-premium-tooltip").css({"margin-left" : left + "px", "margin-top" : offsetTop + "px"});
38
+ $("#wpfc-premium-tooltip").fadeIn( "slow", function() {
39
+ window.tooltip = setTimeout(function(){ $("#wpfc-premium-tooltip").hide(); }, 1000);
40
+ });
41
+ return false;
42
+ });
43
+
44
+ $(".form-group.disabled").click(function(e){
45
+ if(typeof window.tooltip != "undefined"){
46
+ clearTimeout(window.tooltip);
47
+ }
48
+
49
+ var left = $(e.currentTarget).width();
50
+ var offsetTop = $(e.currentTarget).offset().top - 38;
51
+ offsetTop -= $('h2').offset().top - 52;
52
+
53
+ $("#wpfc-premium-tooltip").css({"margin-left" : left + "px", "margin-top" : offsetTop + "px"});
54
+ $("#wpfc-premium-tooltip").fadeIn( "slow", function() {
55
+ window.tooltip = setTimeout(function(){ $("#wpfc-premium-tooltip").hide(); }, 1000);
56
+ });
57
+ return false;
58
+
59
+
60
+ });
61
+ });
62
+ </script>
63
+
includes/right_columns.php ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $now = time();
4
+
5
+ $zoooom_activation_time = get_option( 'zoooom_activation_time', '' );
6
+ $zoooom_version = get_option( 'zoooom_version', '' );
7
+
8
+ if ( empty( $zoooom_activation_time ) || version_compare( $zoooom_version, ImageZoooom::$version, '<' ) ) {
9
+ $zoooom_activation_time = $now;
10
+ update_option( 'zoooom_activation_time', $now );
11
+ update_option( 'zoooom_version', ImageZoooom::$version );
12
+ }
13
+
14
+
15
+ $show_discount = false;
16
+ if ( $now - 3*86400 < $zoooom_activation_time ) {
17
+ $show_discount = true;
18
+ }
19
+
20
+ $start_date = date('j M', $zoooom_activation_time - 3*86400 );
21
+ $end_date = date('j M', $zoooom_activation_time + 2*86400 );
22
+
23
+
24
+
25
+ function iz_convert_numbers_letters( $text, $from = 'numbers' ) {
26
+ $alphabet = str_split('abcdefghij');
27
+ $numbers = str_split('0123456789');
28
+
29
+ if ( $from == 'numbers' ) {
30
+ return str_replace( $numbers, $alphabet, $text );
31
+ } else {
32
+ return str_replace( $alphabet, $numbers, $text );
33
+ }
34
+ }
35
+
36
+ $offer_link = 'https://www.silkypress.com/wp-image-zoom-plugin/?a=' . iz_convert_numbers_letters( $zoooom_activation_time ) . '&utm_source=wordpress&utm_campaign=iz_offer&utm_medium=banner';
37
+
38
+
39
+ ?>
40
+
41
+
42
+ <div id="right_column_metaboxes">
43
+
44
+ <?php if ( $show_discount ) : ?>
45
+ <div class="panel main_container">
46
+ <div class="container_title">
47
+ <h3><img src="<?php echo site_url(); ?>/wp-content/plugins/wp-image-zoooom/assets/images/icon.svg" /> <?php _e('WP Image Zoooom Pro', 'wp-image-zoooom'); ?></h3>
48
+ </div>
49
+ <div class="metabox-holder discount" style="text-align: center;">
50
+
51
+ <p>Shhh... Can you keep a secret?</p>
52
+
53
+ <p>
54
+ <span style="color: #bc1117; font-size: 24px;">30% OFF</span><br />
55
+ only between <span style="color: #bc1117;"><?php echo $start_date; ?> - <?php echo $end_date; ?></span>.
56
+
57
+ </p>
58
+ <p>Don't tell anyone.</p>
59
+ <p style="text-align: center;">
60
+ <a href="<?php echo $offer_link; ?>" target="_blank" class="button" rel="noreferrer"><?php _e('Upgrade to PRO', 'wp-image-zoooom'); ?></a>
61
+ </p>
62
+ </div>
63
+ </div>
64
+ <?php endif; ?>
65
+
66
+ <div class="panel main_container">
67
+ <div class="container_title">
68
+ <h3><?php _e('Like this Plugin?', 'wp-image-zoooom'); ?></h3>
69
+ </div>
70
+ <div class="metabox-holder rating" style="text-align: center;">
71
+ <p><?php _e('Share your opinion with the world on the WordPress.org Plugin Repository.', 'wp-image-zoooom'); ?></p>
72
+ <p><a href="https://wordpress.org/plugins/wp-image-zoooom/" target="_blank" class="button"><?php _e('Rate it on WordPress.org', 'wp-image-zoooom'); ?></a></p>
73
+ </div>
74
+ </div>
75
+ </div>
76
+
77
+ <div style="clear: both"></div>
78
+
languages/wp-image-zoooom-ro_RO.mo ADDED
Binary file
languages/wp-image-zoooom-ro_RO.po ADDED
@@ -0,0 +1,501 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Copyright (C) 2017 WP Image Zoom
2
+ # This file is distributed under the same license as the WP Image Zoom package.
3
+ msgid ""
4
+ msgstr ""
5
+ "Project-Id-Version: WP Image Zoom 1.4\n"
6
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-image-zoooom\n"
7
+ "POT-Creation-Date: 2017-01-10 14:48:44+00:00\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2017-01-10 21:19+0100\n"
12
+ "Last-Translator: Diana Burduja <diana@wootips.com>\n"
13
+ "Language-Team: \n"
14
+ "X-Generator: Poedit 1.6.10\n"
15
+ "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
16
+ "2:1));\n"
17
+ "Language: ro\n"
18
+
19
+ #: image-zoooom.php:52 image-zoooom.php:59 includes/image-zoom.php:36
20
+ #: includes/image-zoom.php:43
21
+ msgid "Cheatin&#8217; huh?"
22
+ msgstr "Trisam?"
23
+
24
+ #: image-zoooom.php:134
25
+ msgid "WP Image Zoooom"
26
+ msgstr "WP Image Zoooom"
27
+
28
+ #: image-zoooom.php:430
29
+ msgid "Settings"
30
+ msgstr "Setari"
31
+
32
+ #: includes/image-zoom-admin-general.php:34
33
+ #: includes/image-zoom-admin-template.php:23
34
+ msgid "WP Image Zoom by %1$s"
35
+ msgstr "WP Image Zoom de %1$s"
36
+
37
+ #: includes/image-zoom-admin-general.php:41
38
+ #: includes/image-zoom-admin-template.php:30
39
+ msgid "General Settings"
40
+ msgstr "Setari generale"
41
+
42
+ #: includes/image-zoom-admin-general.php:43
43
+ #: includes/image-zoom-admin-template.php:32
44
+ msgid "Zoom Settings"
45
+ msgstr "Setari zoom"
46
+
47
+ #: includes/image-zoom-admin-general.php:81
48
+ #: includes/image-zoom-admin-template.php:199
49
+ msgid "Save changes"
50
+ msgstr "Salveaza"
51
+
52
+ #: includes/image-zoom-admin-template.php:48
53
+ msgid "Step 1"
54
+ msgstr "Pasul 1"
55
+
56
+ #: includes/image-zoom-admin-template.php:48
57
+ msgid "Choose the Lens Shape"
58
+ msgstr "Alege forma lentilei"
59
+
60
+ #: includes/image-zoom-admin-template.php:76
61
+ msgid "Step 2"
62
+ msgstr "Pasul 2"
63
+
64
+ #: includes/image-zoom-admin-template.php:76
65
+ msgid "Check your configuration changes on the image"
66
+ msgstr "Verifica pe image schimbarile de configurare"
67
+
68
+ #: includes/image-zoom-admin-template.php:82
69
+ msgid "Step 3"
70
+ msgstr "Pasul 3"
71
+
72
+ #: includes/image-zoom-admin-template.php:82
73
+ msgid "Make more fine-grained configurations on the zoom"
74
+ msgstr "Configureaza zoom-ul in detaliu"
75
+
76
+ #: includes/image-zoom-admin-template.php:86
77
+ msgid "General"
78
+ msgstr "General"
79
+
80
+ #: includes/image-zoom-admin-template.php:89
81
+ msgid "Lens"
82
+ msgstr "Lentila"
83
+
84
+ #: includes/image-zoom-admin-template.php:92
85
+ msgid "Zoom Window"
86
+ msgstr "Fereastra zoom"
87
+
88
+ #: includes/image-zoom-admin-template.php:95
89
+ msgid "Custom Text"
90
+ msgstr "Text personalizat"
91
+
92
+ #: includes/image-zoom-admin-template.php:196
93
+ msgid "Step 4"
94
+ msgstr "Pasul 4"
95
+
96
+ #: includes/image-zoom-admin-template.php:196
97
+ msgid "Don't forget to save the changes in order to apply them on the website"
98
+ msgstr "Nu uita sa salvezi schimbarile pentru a fi aplicate pe site"
99
+
100
+ #. Plugin Name of the plugin/theme
101
+ #: includes/image-zoom-admin.php:29 includes/image-zoom-admin.php:30
102
+ msgid "WP Image Zoom"
103
+ msgstr "WP Image Zoom"
104
+
105
+ #: includes/image-zoom-admin.php:90
106
+ msgid "Lens Shape"
107
+ msgstr "Forma lentilei"
108
+
109
+ #: includes/image-zoom-admin.php:92
110
+ msgid "No Lens"
111
+ msgstr "Fara lentila"
112
+
113
+ #: includes/image-zoom-admin.php:93
114
+ msgid "Circle Lens"
115
+ msgstr "Lentila circulara"
116
+
117
+ #: includes/image-zoom-admin.php:94
118
+ msgid "Square Lens"
119
+ msgstr "Lentila patrata"
120
+
121
+ #: includes/image-zoom-admin.php:95
122
+ msgid "With Zoom Window"
123
+ msgstr "cu fereastra zoom"
124
+
125
+ #: includes/image-zoom-admin.php:101
126
+ msgid "Cursor Type"
127
+ msgstr "Tip cursor"
128
+
129
+ #: includes/image-zoom-admin.php:103 includes/image-zoom-admin.php:306
130
+ msgid "Default"
131
+ msgstr "Default"
132
+
133
+ #: includes/image-zoom-admin.php:104
134
+ msgid "Pointer"
135
+ msgstr "Indicator"
136
+
137
+ #: includes/image-zoom-admin.php:105
138
+ msgid "Crosshair"
139
+ msgstr "Crosshair"
140
+
141
+ #: includes/image-zoom-admin.php:106
142
+ msgid "Move"
143
+ msgstr "Misca"
144
+
145
+ #: includes/image-zoom-admin.php:112
146
+ msgid "Animation Easing Effect"
147
+ msgstr "Efect de relaxare a animatiei"
148
+
149
+ #: includes/image-zoom-admin.php:114
150
+ msgid ""
151
+ "A number between 0 and 200 to represent the degree of the Animation Easing "
152
+ "Effect"
153
+ msgstr "Un numar intre 0 si 200"
154
+
155
+ #: includes/image-zoom-admin.php:119
156
+ msgid "Lens Size"
157
+ msgstr "Marimea lentilei"
158
+
159
+ #: includes/image-zoom-admin.php:122
160
+ msgid ""
161
+ "For Circle Lens it means the diameters, for Square Lens it means the width"
162
+ msgstr ""
163
+ "Marimea lentilei este diametrul pentru lentila circulara si latimea pentru "
164
+ "lentila patrata"
165
+
166
+ #: includes/image-zoom-admin.php:126 includes/image-zoom-admin.php:179
167
+ msgid "Border Thickness"
168
+ msgstr "Grosimea marginii"
169
+
170
+ #: includes/image-zoom-admin.php:132 includes/image-zoom-admin.php:192
171
+ msgid "Border Color"
172
+ msgstr "Culoarea marginii"
173
+
174
+ #: includes/image-zoom-admin.php:137 includes/image-zoom-admin.php:203
175
+ msgid "Fade Time"
176
+ msgstr "Timpul de disparitie"
177
+
178
+ #: includes/image-zoom-admin.php:140
179
+ msgid "The amount of time it takes for the Lens to slowly appear or dissapear"
180
+ msgstr "Timpul necesar pentru a lentila sa dispara sau sa apara"
181
+
182
+ #: includes/image-zoom-admin.php:144
183
+ msgid "Tint"
184
+ msgstr "Tenta"
185
+
186
+ #: includes/image-zoom-admin.php:146
187
+ msgid ""
188
+ "A color that will layed on top the of non-magnified image in order to "
189
+ "emphasize the lens"
190
+ msgstr ""
191
+ "O culoare pusa peste zona nemarita a imaginii pentru a accentua lentila"
192
+
193
+ #: includes/image-zoom-admin.php:150
194
+ msgid "Tint Color"
195
+ msgstr "Culoarea tentei"
196
+
197
+ #: includes/image-zoom-admin.php:155
198
+ msgid "Tint Opacity"
199
+ msgstr "Opacitatea tentei"
200
+
201
+ #: includes/image-zoom-admin.php:161
202
+ msgid "Zoom Window Width"
203
+ msgstr "Latimea ferestrei zoom"
204
+
205
+ #: includes/image-zoom-admin.php:167
206
+ msgid "Zoom Window Height"
207
+ msgstr "Inaltimea ferestrei zoom"
208
+
209
+ #: includes/image-zoom-admin.php:173
210
+ msgid "Distance from the Main Image"
211
+ msgstr "Distanta de la imagina principala"
212
+
213
+ #: includes/image-zoom-admin.php:185
214
+ msgid "Shadow Thickness"
215
+ msgstr "Grosimea umbrei"
216
+
217
+ #: includes/image-zoom-admin.php:189
218
+ msgid "Use 0px to remove the shadow"
219
+ msgstr "Scrie 0px pentru a inlatura umbra"
220
+
221
+ #: includes/image-zoom-admin.php:197
222
+ msgid "Rounded Corners"
223
+ msgstr "Colturi rotunjite"
224
+
225
+ #: includes/image-zoom-admin.php:206
226
+ msgid ""
227
+ "The amount of time it takes for the Zoom Window to slowly appear or disappear"
228
+ msgstr "Timpul necesar pentru a fereastra zoom sa apara sau sa dispara"
229
+
230
+ #: includes/image-zoom-admin.php:210
231
+ msgid "Enable the zoom on WooCommerce products"
232
+ msgstr "Activeaza zoom-ul pe produsele WooCommerce"
233
+
234
+ #: includes/image-zoom-admin.php:215
235
+ msgid "Exchange the thumbnail with main image on WooCommerce products"
236
+ msgstr "Schimba pozele mici cu poza principala in produsele WooCommerce"
237
+
238
+ #: includes/image-zoom-admin.php:218
239
+ msgid ""
240
+ "On a WooCommerce gallery, when clicking on a thumbnail, not only the main "
241
+ "image will be replaced with the thumbnail's image, but also the thumbnail "
242
+ "will be replaced with the main image"
243
+ msgstr ""
244
+ "Pentru o galerie WooCommerce, cand dati click pe o poza mica, nu doar poza "
245
+ "principala va fi schimbata cu poza mica, ci si poza mica va fi schimbata cu "
246
+ "poza principala."
247
+
248
+ #: includes/image-zoom-admin.php:221
249
+ msgid "Enable the zoom on mobile devices"
250
+ msgstr "Activeaza zoom-ul pe dispozitive mobile"
251
+
252
+ #: includes/image-zoom-admin.php:226
253
+ msgid "Enable the zoom on WooCommerce category pages"
254
+ msgstr "Activeaza zoom pe paginile cu categorii WooCommerce"
255
+
256
+ #: includes/image-zoom-admin.php:232
257
+ msgid "Force it to work on WooCommerce"
258
+ msgstr "Forteaza zoom-ul pe WooCommerce"
259
+
260
+ #: includes/image-zoom-admin.php:237
261
+ msgid "Compatible with LazyLoad (unveil.js)"
262
+ msgstr "Compatibil cu LazyLoad (unveil.js)"
263
+
264
+ #: includes/image-zoom-admin.php:245
265
+ msgid "Remove the Lightbox on thumbnail images"
266
+ msgstr "Indepartati Lightbox-ul de pe pozele mici"
267
+
268
+ #: includes/image-zoom-admin.php:251
269
+ msgid "Remove the Lightbox"
270
+ msgstr "Indepartati Lightbox-ul"
271
+
272
+ #: includes/image-zoom-admin.php:257
273
+ msgid "Enable on WooCommerce variation products"
274
+ msgstr "Activati zoom-ul pe produsele variate din WooCommerce"
275
+
276
+ #: includes/image-zoom-admin.php:263
277
+ msgid "Enable on attachments pages"
278
+ msgstr "Activati zoom-ul pe paginile attachment"
279
+
280
+ #: includes/image-zoom-admin.php:269
281
+ msgid "FlexSlider container class"
282
+ msgstr "Clasa container-ului FlexSlider"
283
+
284
+ #: includes/image-zoom-admin.php:275
285
+ msgid ""
286
+ "Enable inside <a href=\"http://fancyapps.com/fancybox/\" target=\"_blank"
287
+ "\">fancyBox</a> lightbox"
288
+ msgstr ""
289
+ "Activati zoom-ul pe pozele interne dintr-o galerie <a href=\"http://"
290
+ "fancyapps.com/fancybox/\" target=\"_blank\">fancyBox</a> lightbox."
291
+
292
+ #: includes/image-zoom-admin.php:281
293
+ msgid ""
294
+ "Enable inside <a href=\"https://jetpack.com/ support/carousel/\" target="
295
+ "\"_blank\">Jetpack Carousel</a> lightbox"
296
+ msgstr ""
297
+ "Activati zoom-ul pe pozele interne dintr-o galerie <a href=\"https://jetpack."
298
+ "com/ support/carousel/\" target=\"_blank\">Jetpack Carousel</a> lightbox."
299
+
300
+ #: includes/image-zoom-admin.php:288
301
+ msgid "Huge IT Gallery id"
302
+ msgstr "Id-ul Huge IT Gallery"
303
+
304
+ #: includes/image-zoom-admin.php:294
305
+ msgid "Enable the zoom on ..."
306
+ msgstr "Activeaza zoom-ul pe ..."
307
+
308
+ #: includes/image-zoom-admin.php:304
309
+ msgid "Zoom Level"
310
+ msgstr "Nivelul zoom-ului"
311
+
312
+ #: includes/image-zoom-admin.php:307
313
+ msgid "1,5 times"
314
+ msgstr "de 1,5 ori"
315
+
316
+ #: includes/image-zoom-admin.php:308
317
+ msgid "2 times"
318
+ msgstr "de 2 ori"
319
+
320
+ #: includes/image-zoom-admin.php:309
321
+ msgid "2,5 times"
322
+ msgstr "de 2,5 ori"
323
+
324
+ #: includes/image-zoom-admin.php:310
325
+ msgid "3 times"
326
+ msgstr "de 3 ori"
327
+
328
+ #: includes/image-zoom-admin.php:317
329
+ msgid "Lens Color"
330
+ msgstr "Culoarea lentilei"
331
+
332
+ #: includes/image-zoom-admin.php:323
333
+ msgid "Show as Grid"
334
+ msgstr "Arata ca si grila"
335
+
336
+ #: includes/image-zoom-admin.php:329
337
+ msgid "Responsive"
338
+ msgstr "Responsive"
339
+
340
+ #: includes/image-zoom-admin.php:335
341
+ msgid "Responsive Threshold"
342
+ msgstr "Pragul pentru responsive"
343
+
344
+ #: includes/image-zoom-admin.php:342
345
+ msgid "Positioning"
346
+ msgstr "Pozitionarea"
347
+
348
+ #: includes/image-zoom-admin.php:344
349
+ msgid "Right Top"
350
+ msgstr "Dreapta-sus"
351
+
352
+ #: includes/image-zoom-admin.php:345
353
+ msgid "Right Bottom"
354
+ msgstr "Dreapta-jos"
355
+
356
+ #: includes/image-zoom-admin.php:346
357
+ msgid "Right Center"
358
+ msgstr "Dreapta-centru"
359
+
360
+ #: includes/image-zoom-admin.php:347
361
+ msgid "Left Top"
362
+ msgstr "Stanga-sus"
363
+
364
+ #: includes/image-zoom-admin.php:348
365
+ msgid "Left Bottom"
366
+ msgstr "Stanga-jos"
367
+
368
+ #: includes/image-zoom-admin.php:349
369
+ msgid "Left Center"
370
+ msgstr "Stanga-centru"
371
+
372
+ #: includes/image-zoom-admin.php:357
373
+ msgid "Mousewheel Zoom"
374
+ msgstr "Zoom cu rotita mouse-ului"
375
+
376
+ #: includes/image-zoom-admin.php:363
377
+ msgid "Text on the image"
378
+ msgstr "Text pe imagine"
379
+
380
+ #: includes/image-zoom-admin.php:369
381
+ msgid "Text Size"
382
+ msgstr "Marimea text-ului"
383
+
384
+ #: includes/image-zoom-admin.php:376
385
+ msgid "Text Color"
386
+ msgstr "Culoarea textului"
387
+
388
+ #: includes/image-zoom-admin.php:382
389
+ msgid "Text Align"
390
+ msgstr "Pozitionarea textului"
391
+
392
+ #: includes/image-zoom-admin.php:385
393
+ msgid "Center Top"
394
+ msgstr "Centru sus"
395
+
396
+ #: includes/image-zoom-admin.php:388
397
+ msgid "Center Bottom"
398
+ msgstr "Centru jos"
399
+
400
+ #: includes/image-zoom-admin.php:421 includes/image-zoom-admin.php:438
401
+ msgid "Your settings have been saved."
402
+ msgstr "Setarile au fost salvate."
403
+
404
+ #: includes/image-zoom-admin.php:614 includes/image-zoom-admin.php:631
405
+ msgid "Unrecognized <b>%1$s</b>. The value was reset to <b>%2$s</b>"
406
+ msgstr "Valoarea <b>%1$s</b> nu e acceptabila. A fost resetata la <b>%2$s</b>."
407
+
408
+ #: includes/image-zoom-admin.php:651
409
+ msgid ""
410
+ "<b>%1$s</b> accepts values between %2$s and %3$s. Your value was reset to <b>"
411
+ "%4$s</b>"
412
+ msgstr ""
413
+ "<b>%1$s</b> accepta valori intre %2$s si %3$s. Valoarea a fost resetata la "
414
+ "<b>%4$s</b>."
415
+
416
+ #: includes/image-zoom-notices.php:173
417
+ msgid "Dismiss this notice"
418
+ msgstr "Ignora aceasta notita."
419
+
420
+ #: includes/image-zoom-warnings.php:57
421
+ msgid ""
422
+ "<b>If the zoom does not show up</b> on your website, it could be because you "
423
+ "need to add the “image_zoooom-init” and the “image_zoooom” to the “Scripts "
424
+ "to NOT minify” option in the BWP Minify settings, as shown in <a href=\"%1$s"
425
+ "\" target=\"_blank\">this screenshot</a>."
426
+ msgstr ""
427
+ "<b>Daca zoom-ul nu apare</b> pe site-ul dvs., ati putea remedia situatia "
428
+ "daca adaugati “image_zoooom-init” si “image_zoooom” la optiunea “Scripts to "
429
+ "NOT minify” in BWP Minify settings, asa cum e aratat in <a href=\"%1$s\" "
430
+ "target=\"_blank\">acest screenshot</a>."
431
+
432
+ #: includes/image-zoom-warnings.php:97
433
+ msgid ""
434
+ "The WP Image Zoom plugin <b>will not work</b> on the WooCommerce products "
435
+ "gallery with the Avada theme. The Avada theme changes entirely the default "
436
+ "WooCommerce gallery with the <a href=\"%1$s\" target=\"_blank\">Flexslider "
437
+ "gallery</a> and the zoom plugin does not support the Flexslider gallery. "
438
+ "Please check the <a href=\"%2$s\" target=\"_blank\">PRO version</a> of the "
439
+ "plugin for compatibility with the Flexslider gallery."
440
+ msgstr ""
441
+ "Plugin-ul WP Image Zoom <b>nu va functiona</b> pe produsele WooCommerce cu "
442
+ "tema Avada. Tema Avada schimba in totalitate galeria WooCommerce gallery cu "
443
+ "galeria <a href=\"%1$s\" target=\"_blank\">Flexslider</a> si plugin-ul nu e "
444
+ "compatibil cu galeria Flexslider. Va rugam sa verificati <a href=\"%2$s\" "
445
+ "target=\"_blank\">varianta PRO</a> a plugin-ului pentru compatibilitate cu "
446
+ "galeria Flexslider."
447
+
448
+ #: includes/image-zoom-warnings.php:133
449
+ msgid ""
450
+ "WP Image Zoom plugin is not compatible with the <a href=\"admin.php?"
451
+ "page=jetpack\">Jetpack Photon</a> module. If you find that the zoom is not "
452
+ "working, try to deactivate the Photon module and see if that solves it."
453
+ msgstr ""
454
+ "Plugin-ul WP Image Zoom nu e compatibil cu modulul <a href=\"admin.php?"
455
+ "page=jetpack\">Jetpack Photon</a>. In cazul in care zoom-ul nu functioneaza, "
456
+ "va rugam sa dezactivati modulul Photon si sa verificati din nou."
457
+
458
+ #: includes/premium-tooltips.php:3
459
+ msgid "Only available in <a href=\"%1$s\" target=\"_blank\">PRO version</a>"
460
+ msgstr "Disponibil doar in <a href=\"%1$s\" target=\"_blank\">varianta PRO</a>"
461
+
462
+ #: includes/right_columns.php:47
463
+ msgid "WP Image Zoooom Pro"
464
+ msgstr "WP Image Zoooom Pro"
465
+
466
+ #: includes/right_columns.php:60
467
+ msgid "Upgrade to PRO"
468
+ msgstr "Upgradeaza la PRO"
469
+
470
+ #: includes/right_columns.php:68
471
+ msgid "Like this Plugin?"
472
+ msgstr "E un plugin bun?"
473
+
474
+ #: includes/right_columns.php:71
475
+ msgid ""
476
+ "Share your opinion with the world on the WordPress.org Plugin Repository."
477
+ msgstr "Impartaseste-ti opinia pe WordPress.org Plugin Repository."
478
+
479
+ #: includes/right_columns.php:72
480
+ msgid "Rate it on WordPress.org"
481
+ msgstr "Voteaza plugin-ul pe WordPress.org"
482
+
483
+ #. Plugin URI of the plugin/theme
484
+ msgid "https://wordpress.org/plugins/wp-image-zoooom/"
485
+ msgstr "https://wordpress.org/plugins/wp-image-zoooom/"
486
+
487
+ #. Description of the plugin/theme
488
+ msgid ""
489
+ "Add zoom effect over the an image, whether it is an image in a post/page or "
490
+ "the featured image of a product in a WooCommerce shop"
491
+ msgstr ""
492
+ "Adauga efectul de zoom unei imagini, fie ca e o imagine intr-un post sau "
493
+ "pagina, sau the e imaginea principala a unui produs WooCommerce"
494
+
495
+ #. Author of the plugin/theme
496
+ msgid "SilkyPress"
497
+ msgstr "SilkyPress"
498
+
499
+ #. Author URI of the plugin/theme
500
+ msgid "https://www.silkypress.com"
501
+ msgstr "https://www.silkypress.com"
languages/wp-image-zoooom.pot ADDED
@@ -0,0 +1,471 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Copyright (C) 2017 WP Image Zoom
2
+ # This file is distributed under the same license as the WP Image Zoom package.
3
+ msgid ""
4
+ msgstr ""
5
+ "Project-Id-Version: WP Image Zoom 1.4\n"
6
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-image-zoooom\n"
7
+ "POT-Creation-Date: 2017-01-10 14:48:44+00:00\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2017-MO-DA HO:MI+ZONE\n"
12
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
+ "Language-Team: LANGUAGE <LL@li.org>\n"
14
+
15
+ #: image-zoooom.php:52 image-zoooom.php:59 includes/image-zoom.php:36
16
+ #: includes/image-zoom.php:43
17
+ msgid "Cheatin&#8217; huh?"
18
+ msgstr ""
19
+
20
+ #: image-zoooom.php:134
21
+ msgid "WP Image Zoooom"
22
+ msgstr ""
23
+
24
+ #: image-zoooom.php:430
25
+ msgid "Settings"
26
+ msgstr ""
27
+
28
+ #: includes/image-zoom-admin-general.php:34
29
+ #: includes/image-zoom-admin-template.php:23
30
+ msgid "WP Image Zoom by %1$s"
31
+ msgstr ""
32
+
33
+ #: includes/image-zoom-admin-general.php:41
34
+ #: includes/image-zoom-admin-template.php:30
35
+ msgid "General Settings"
36
+ msgstr ""
37
+
38
+ #: includes/image-zoom-admin-general.php:43
39
+ #: includes/image-zoom-admin-template.php:32
40
+ msgid "Zoom Settings"
41
+ msgstr ""
42
+
43
+ #: includes/image-zoom-admin-general.php:81
44
+ #: includes/image-zoom-admin-template.php:199
45
+ msgid "Save changes"
46
+ msgstr ""
47
+
48
+ #: includes/image-zoom-admin-template.php:48
49
+ msgid "Step 1"
50
+ msgstr ""
51
+
52
+ #: includes/image-zoom-admin-template.php:48
53
+ msgid "Choose the Lens Shape"
54
+ msgstr ""
55
+
56
+ #: includes/image-zoom-admin-template.php:76
57
+ msgid "Step 2"
58
+ msgstr ""
59
+
60
+ #: includes/image-zoom-admin-template.php:76
61
+ msgid "Check your configuration changes on the image"
62
+ msgstr ""
63
+
64
+ #: includes/image-zoom-admin-template.php:82
65
+ msgid "Step 3"
66
+ msgstr ""
67
+
68
+ #: includes/image-zoom-admin-template.php:82
69
+ msgid "Make more fine-grained configurations on the zoom"
70
+ msgstr ""
71
+
72
+ #: includes/image-zoom-admin-template.php:86
73
+ msgid "General"
74
+ msgstr ""
75
+
76
+ #: includes/image-zoom-admin-template.php:89
77
+ msgid "Lens"
78
+ msgstr ""
79
+
80
+ #: includes/image-zoom-admin-template.php:92
81
+ msgid "Zoom Window"
82
+ msgstr ""
83
+
84
+ #: includes/image-zoom-admin-template.php:95
85
+ msgid "Custom Text"
86
+ msgstr ""
87
+
88
+ #: includes/image-zoom-admin-template.php:196
89
+ msgid "Step 4"
90
+ msgstr ""
91
+
92
+ #: includes/image-zoom-admin-template.php:196
93
+ msgid "Don't forget to save the changes in order to apply them on the website"
94
+ msgstr ""
95
+
96
+ #. #-#-#-#-# wp-image-zoooom.pot (WP Image Zoom 1.4) #-#-#-#-#
97
+ #. Plugin Name of the plugin/theme
98
+ #: includes/image-zoom-admin.php:29 includes/image-zoom-admin.php:30
99
+ msgid "WP Image Zoom"
100
+ msgstr ""
101
+
102
+ #: includes/image-zoom-admin.php:90
103
+ msgid "Lens Shape"
104
+ msgstr ""
105
+
106
+ #: includes/image-zoom-admin.php:92
107
+ msgid "No Lens"
108
+ msgstr ""
109
+
110
+ #: includes/image-zoom-admin.php:93
111
+ msgid "Circle Lens"
112
+ msgstr ""
113
+
114
+ #: includes/image-zoom-admin.php:94
115
+ msgid "Square Lens"
116
+ msgstr ""
117
+
118
+ #: includes/image-zoom-admin.php:95
119
+ msgid "With Zoom Window"
120
+ msgstr ""
121
+
122
+ #: includes/image-zoom-admin.php:101
123
+ msgid "Cursor Type"
124
+ msgstr ""
125
+
126
+ #: includes/image-zoom-admin.php:103 includes/image-zoom-admin.php:306
127
+ msgid "Default"
128
+ msgstr ""
129
+
130
+ #: includes/image-zoom-admin.php:104
131
+ msgid "Pointer"
132
+ msgstr ""
133
+
134
+ #: includes/image-zoom-admin.php:105
135
+ msgid "Crosshair"
136
+ msgstr ""
137
+
138
+ #: includes/image-zoom-admin.php:106
139
+ msgid "Move"
140
+ msgstr ""
141
+
142
+ #: includes/image-zoom-admin.php:112
143
+ msgid "Animation Easing Effect"
144
+ msgstr ""
145
+
146
+ #: includes/image-zoom-admin.php:114
147
+ msgid ""
148
+ "A number between 0 and 200 to represent the degree of the Animation Easing "
149
+ "Effect"
150
+ msgstr ""
151
+
152
+ #: includes/image-zoom-admin.php:119
153
+ msgid "Lens Size"
154
+ msgstr ""
155
+
156
+ #: includes/image-zoom-admin.php:122
157
+ msgid ""
158
+ "For Circle Lens it means the diameters, for Square Lens it means the width"
159
+ msgstr ""
160
+
161
+ #: includes/image-zoom-admin.php:126 includes/image-zoom-admin.php:179
162
+ msgid "Border Thickness"
163
+ msgstr ""
164
+
165
+ #: includes/image-zoom-admin.php:132 includes/image-zoom-admin.php:192
166
+ msgid "Border Color"
167
+ msgstr ""
168
+
169
+ #: includes/image-zoom-admin.php:137 includes/image-zoom-admin.php:203
170
+ msgid "Fade Time"
171
+ msgstr ""
172
+
173
+ #: includes/image-zoom-admin.php:140
174
+ msgid "The amount of time it takes for the Lens to slowly appear or dissapear"
175
+ msgstr ""
176
+
177
+ #: includes/image-zoom-admin.php:144
178
+ msgid "Tint"
179
+ msgstr ""
180
+
181
+ #: includes/image-zoom-admin.php:146
182
+ msgid ""
183
+ "A color that will layed on top the of non-magnified image in order to "
184
+ "emphasize the lens"
185
+ msgstr ""
186
+
187
+ #: includes/image-zoom-admin.php:150
188
+ msgid "Tint Color"
189
+ msgstr ""
190
+
191
+ #: includes/image-zoom-admin.php:155
192
+ msgid "Tint Opacity"
193
+ msgstr ""
194
+
195
+ #: includes/image-zoom-admin.php:161
196
+ msgid "Zoom Window Width"
197
+ msgstr ""
198
+
199
+ #: includes/image-zoom-admin.php:167
200
+ msgid "Zoom Window Height"
201
+ msgstr ""
202
+
203
+ #: includes/image-zoom-admin.php:173
204
+ msgid "Distance from the Main Image"
205
+ msgstr ""
206
+
207
+ #: includes/image-zoom-admin.php:185
208
+ msgid "Shadow Thickness"
209
+ msgstr ""
210
+
211
+ #: includes/image-zoom-admin.php:189
212
+ msgid "Use 0px to remove the shadow"
213
+ msgstr ""
214
+
215
+ #: includes/image-zoom-admin.php:197
216
+ msgid "Rounded Corners"
217
+ msgstr ""
218
+
219
+ #: includes/image-zoom-admin.php:206
220
+ msgid ""
221
+ "The amount of time it takes for the Zoom Window to slowly appear or disappear"
222
+ msgstr ""
223
+
224
+ #: includes/image-zoom-admin.php:210
225
+ msgid "Enable the zoom on WooCommerce products"
226
+ msgstr ""
227
+
228
+ #: includes/image-zoom-admin.php:215
229
+ msgid "Exchange the thumbnail with main image on WooCommerce products"
230
+ msgstr ""
231
+
232
+ #: includes/image-zoom-admin.php:218
233
+ msgid ""
234
+ "On a WooCommerce gallery, when clicking on a thumbnail, not only the main "
235
+ "image will be replaced with the thumbnail's image, but also the thumbnail "
236
+ "will be replaced with the main image"
237
+ msgstr ""
238
+
239
+ #: includes/image-zoom-admin.php:221
240
+ msgid "Enable the zoom on mobile devices"
241
+ msgstr ""
242
+
243
+ #: includes/image-zoom-admin.php:226
244
+ msgid "Enable the zoom on WooCommerce category pages"
245
+ msgstr ""
246
+
247
+ #: includes/image-zoom-admin.php:232
248
+ msgid "Force it to work on WooCommerce"
249
+ msgstr ""
250
+
251
+ #: includes/image-zoom-admin.php:237
252
+ msgid "Compatible with LazyLoad (unveil.js)"
253
+ msgstr ""
254
+
255
+ #: includes/image-zoom-admin.php:245
256
+ msgid "Remove the Lightbox on thumbnail images"
257
+ msgstr ""
258
+
259
+ #: includes/image-zoom-admin.php:251
260
+ msgid "Remove the Lightbox"
261
+ msgstr ""
262
+
263
+ #: includes/image-zoom-admin.php:257
264
+ msgid "Enable on WooCommerce variation products"
265
+ msgstr ""
266
+
267
+ #: includes/image-zoom-admin.php:263
268
+ msgid "Enable on attachments pages"
269
+ msgstr ""
270
+
271
+ #: includes/image-zoom-admin.php:269
272
+ msgid "FlexSlider container class"
273
+ msgstr ""
274
+
275
+ #: includes/image-zoom-admin.php:275
276
+ msgid ""
277
+ "Enable inside <a href=\"http://fancyapps.com/fancybox/\" target=\"_blank"
278
+ "\">fancyBox</a> lightbox"
279
+ msgstr ""
280
+
281
+ #: includes/image-zoom-admin.php:281
282
+ msgid ""
283
+ "Enable inside <a href=\"https://jetpack.com/ support/carousel/\" target="
284
+ "\"_blank\">Jetpack Carousel</a> lightbox"
285
+ msgstr ""
286
+
287
+ #: includes/image-zoom-admin.php:288
288
+ msgid "Huge IT Gallery id"
289
+ msgstr ""
290
+
291
+ #: includes/image-zoom-admin.php:294
292
+ msgid "Enable the zoom on ..."
293
+ msgstr ""
294
+
295
+ #: includes/image-zoom-admin.php:304
296
+ msgid "Zoom Level"
297
+ msgstr ""
298
+
299
+ #: includes/image-zoom-admin.php:307
300
+ msgid "1,5 times"
301
+ msgstr ""
302
+
303
+ #: includes/image-zoom-admin.php:308
304
+ msgid "2 times"
305
+ msgstr ""
306
+
307
+ #: includes/image-zoom-admin.php:309
308
+ msgid "2,5 times"
309
+ msgstr ""
310
+
311
+ #: includes/image-zoom-admin.php:310
312
+ msgid "3 times"
313
+ msgstr ""
314
+
315
+ #: includes/image-zoom-admin.php:317
316
+ msgid "Lens Color"
317
+ msgstr ""
318
+
319
+ #: includes/image-zoom-admin.php:323
320
+ msgid "Show as Grid"
321
+ msgstr ""
322
+
323
+ #: includes/image-zoom-admin.php:329
324
+ msgid "Responsive"
325
+ msgstr ""
326
+
327
+ #: includes/image-zoom-admin.php:335
328
+ msgid "Responsive Threshold"
329
+ msgstr ""
330
+
331
+ #: includes/image-zoom-admin.php:342
332
+ msgid "Positioning"
333
+ msgstr ""
334
+
335
+ #: includes/image-zoom-admin.php:344
336
+ msgid "Right Top"
337
+ msgstr ""
338
+
339
+ #: includes/image-zoom-admin.php:345
340
+ msgid "Right Bottom"
341
+ msgstr ""
342
+
343
+ #: includes/image-zoom-admin.php:346
344
+ msgid "Right Center"
345
+ msgstr ""
346
+
347
+ #: includes/image-zoom-admin.php:347
348
+ msgid "Left Top"
349
+ msgstr ""
350
+
351
+ #: includes/image-zoom-admin.php:348
352
+ msgid "Left Bottom"
353
+ msgstr ""
354
+
355
+ #: includes/image-zoom-admin.php:349
356
+ msgid "Left Center"
357
+ msgstr ""
358
+
359
+ #: includes/image-zoom-admin.php:357
360
+ msgid "Mousewheel Zoom"
361
+ msgstr ""
362
+
363
+ #: includes/image-zoom-admin.php:363
364
+ msgid "Text on the image"
365
+ msgstr ""
366
+
367
+ #: includes/image-zoom-admin.php:369
368
+ msgid "Text Size"
369
+ msgstr ""
370
+
371
+ #: includes/image-zoom-admin.php:376
372
+ msgid "Text Color"
373
+ msgstr ""
374
+
375
+ #: includes/image-zoom-admin.php:382
376
+ msgid "Text Align"
377
+ msgstr ""
378
+
379
+ #: includes/image-zoom-admin.php:385
380
+ msgid "Center Top"
381
+ msgstr ""
382
+
383
+ #: includes/image-zoom-admin.php:388
384
+ msgid "Center Bottom"
385
+ msgstr ""
386
+
387
+ #: includes/image-zoom-admin.php:421 includes/image-zoom-admin.php:438
388
+ msgid "Your settings have been saved."
389
+ msgstr ""
390
+
391
+ #: includes/image-zoom-admin.php:614 includes/image-zoom-admin.php:631
392
+ msgid "Unrecognized <b>%1$s</b>. The value was reset to <b>%2$s</b>"
393
+ msgstr ""
394
+
395
+ #: includes/image-zoom-admin.php:651
396
+ msgid ""
397
+ "<b>%1$s</b> accepts values between %2$s and %3$s. Your value was reset to <b>"
398
+ "%4$s</b>"
399
+ msgstr ""
400
+
401
+ #: includes/image-zoom-notices.php:173
402
+ msgid "Dismiss this notice"
403
+ msgstr ""
404
+
405
+ #: includes/image-zoom-warnings.php:57
406
+ msgid ""
407
+ "<b>If the zoom does not show up</b> on your website, it could be because you "
408
+ "need to add the “image_zoooom-init” and the “image_zoooom” to the “Scripts "
409
+ "to NOT minify” option in the BWP Minify settings, as shown in <a href=\"%1$s"
410
+ "\" target=\"_blank\">this screenshot</a>."
411
+ msgstr ""
412
+
413
+ #: includes/image-zoom-warnings.php:97
414
+ msgid ""
415
+ "The WP Image Zoom plugin <b>will not work</b> on the WooCommerce products "
416
+ "gallery with the Avada theme. The Avada theme changes entirely the default "
417
+ "WooCommerce gallery with the <a href=\"%1$s\" target=\"_blank\">Flexslider "
418
+ "gallery</a> and the zoom plugin does not support the Flexslider gallery. "
419
+ "Please check the <a href=\"%2$s\" target=\"_blank\">PRO version</a> of the "
420
+ "plugin for compatibility with the Flexslider gallery."
421
+ msgstr ""
422
+
423
+ #: includes/image-zoom-warnings.php:133
424
+ msgid ""
425
+ "WP Image Zoom plugin is not compatible with the <a href=\"admin.php?"
426
+ "page=jetpack\">Jetpack Photon</a> module. If you find that the zoom is not "
427
+ "working, try to deactivate the Photon module and see if that solves it."
428
+ msgstr ""
429
+
430
+ #: includes/premium-tooltips.php:3
431
+ msgid "Only available in <a href=\"%1$s\" target=\"_blank\">PRO version</a>"
432
+ msgstr ""
433
+
434
+ #: includes/right_columns.php:47
435
+ msgid "WP Image Zoooom Pro"
436
+ msgstr ""
437
+
438
+ #: includes/right_columns.php:60
439
+ msgid "Upgrade to PRO"
440
+ msgstr ""
441
+
442
+ #: includes/right_columns.php:68
443
+ msgid "Like this Plugin?"
444
+ msgstr ""
445
+
446
+ #: includes/right_columns.php:71
447
+ msgid ""
448
+ "Share your opinion with the world on the WordPress.org Plugin Repository."
449
+ msgstr ""
450
+
451
+ #: includes/right_columns.php:72
452
+ msgid "Rate it on WordPress.org"
453
+ msgstr ""
454
+
455
+ #. Plugin URI of the plugin/theme
456
+ msgid "https://wordpress.org/plugins/wp-image-zoooom/"
457
+ msgstr ""
458
+
459
+ #. Description of the plugin/theme
460
+ msgid ""
461
+ "Add zoom effect over the an image, whether it is an image in a post/page or "
462
+ "the featured image of a product in a WooCommerce shop"
463
+ msgstr ""
464
+
465
+ #. Author of the plugin/theme
466
+ msgid "SilkyPress"
467
+ msgstr ""
468
+
469
+ #. Author URI of the plugin/theme
470
+ msgid "https://www.silkypress.com"
471
+ msgstr ""
readme.txt ADDED
@@ -0,0 +1,298 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === WP Image Zoom ===
2
+ Created: 21/11/2015
3
+ Contributors: diana_burduja
4
+ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=diana.burduja@gmail.com&lc=AT&item_name=Diana%20Burduja&item_number=WP%2dImage%2dZoooom%2dplugin&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted
5
+ Email: diana@burduja.eu
6
+ Tags: e-commerce, featured image, hover over image zoom, image, image zoom, image zoom plugin, image magnification, image magnifier, jquery picture zoom, magnifier, magnify image, magnifying glass, mouse over image zoom, panorama, picture zoom, product image, product zoom, product magnification, product magnifier, responsive, woocommerce product zoom, woocommerce zoom, woocommerce magnifying glass, zoom, zoom image, zoom plugin, woocommerce image zoom, woocommerce product image zoom, woocommerce zoom magnifier
7
+ Requires at least: 3.0.1
8
+ Tested up to: 4.8
9
+ Stable tag: 1.12
10
+ License: GPLv3
11
+ License URI: http://www.gnu.org/licenses/gpl-3.0.html
12
+
13
+ Awesome image zoom plugin for images in posts/pages and for WooCommerce products.
14
+
15
+ == Description ==
16
+
17
+ = Description =
18
+
19
+ Are you looking for a robust, modern and very configurable image zoom plugin? WP Image Zoom will allow you easily to create a magnifying glass on your images, all from a very intuitive WP admin interface.
20
+
21
+ Allow your visitors to see the details of your images. Improve the user experience. Improve your revenue.
22
+
23
+ [youtube https://www.youtube.com/watch?v=jIuhEUGurHY]
24
+
25
+ = Our users love these features =
26
+
27
+ * **4 zooming types** - inner zoom, round lens, square lens and outer zoom.
28
+ * **Animation Easing Effect** - the zooming lense will follow the mouse over the image with a sleak delay. This will add a touch of elegance to the zooming in experience.
29
+ * **Fade Effect** - the zoomed part will gracefully fade in or fade away.
30
+ * **Extremely configurable** - control zooming lens size, border color, border size, shadow, rounded corner, and others ...
31
+ * **Works with WooCommerce** - easily enable the zoom on all your products' images. Only a checkbox away.
32
+ * **Works in Pages and Posts** - within the post's/page's editor you'll find a button for applying the zooming effect on any image.
33
+
34
+ = Notes =
35
+
36
+ * This plugin is provided "as-is"; within the scope of WordPress. We will update this plugin to remain secure, and to follow WP coding standards.
37
+ * If you prefer more dedicated support, with more advanced and powerful plugin features, please consider upgrading to [WP Image Zoooom Pro](https://www.silkypress.com/wp-image-zoom-plugin/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner).
38
+
39
+ = Why should you upgrade to WP Image Zoooom Pro? =
40
+
41
+ * Works with WooCommerce variations
42
+ * Works with Portfolio images
43
+ * Works with Easy Digital Downloads featured images
44
+ * Works with MarketPress - WordPress eCommerce
45
+ * Responsive (the zoom window will fit to the browser width)
46
+ * Mousewheel Zoom
47
+ * You can place a text on the image like a watermark
48
+ * You can choose the zoom window position (left or right from the image)
49
+ * You can use on more than one image on the same page
50
+ * Custom theme support
51
+
52
+ == Installation ==
53
+
54
+ * From the WP admin panel, click "Plugins" -> "Add new".
55
+ * In the browser input box, type "WP Image Zoom".
56
+ * Select the "WP Image Zoom" plugin and click "Install".
57
+ * Activate the plugin.
58
+
59
+ OR...
60
+
61
+ * Download the plugin from this page.
62
+ * Save the .zip file to a location on your computer.
63
+ * Open the WP admin panel, and click "Plugins" -> "Add new".
64
+ * Click "upload".. then browse to the .zip file downloaded from this page.
65
+ * Click "Install".. and then "Activate plugin".
66
+
67
+ OR...
68
+
69
+ * Download the plugin from this page.
70
+ * Extract the .zip file to a location on your computer.
71
+ * Use either FTP or your hosts cPanel to gain access to your website file directories.
72
+ * Browse to the `wp-content/plugins` directory.
73
+ * Upload the extracted `wp-image-zoooom` folder to this directory location.
74
+ * Open the WP admin panel.. click the "Plugins" page.. and click "Activate" under the newly added "WP Image Zoom" plugin.
75
+
76
+ == Frequently Asked Questions ==
77
+
78
+ = Does it work with W3 Total Cache? =
79
+ Yes
80
+
81
+ = If I have Visual Composer installed, how do I apply the zoom? =
82
+ You can apply the zoom on the Single Image element from Visual Composer. See the following [screenshot](https://ps.w.org/wp-image-zoooom/trunk/screenshot-7.jpg).
83
+
84
+ = It display the zoom lens, but the picture is not enlarged =
85
+ In order for the zoom to work you have to upload a bigger picture than the one presented on the website. For more control over the zoom level you can try upgrading to the PRO version. There you can set the zoom level to 2x or 3x the size of the presented picture.
86
+
87
+ In case you did upload a bigger picture and the zoom still isn't working, you might try to deactivate the Jetpack Photon module. The module resizes the image and interferes with the zoom.
88
+
89
+ = The zoom window is about 1cm lower than the zoomed image =
90
+ This is an effect caused by the WordPres Admin Bar. Try logging out and check the zoom again.
91
+
92
+ Another cause could be the sticky header. When the page is loaded, the zoom window is built and set in the right position (next to the zoomed image). When you scroll down, the sticky header changes its height but the zoom window keeps staying in the same position. In order to solve this you can choose between removing the header's sticky effect or upgrading to the WP Image Zoooom PRO, as there the zoom window is totally differently built and the sticky header doesn't affect the zoom position.
93
+
94
+ Another cause could be the "CSS Animation" settings within Visual Composer. If you want to keep the animation effect and still have the zoom, I recommend you upgrade to the WP Image Zoooom PRO.
95
+
96
+ = How to zoom an image without the button in the editor? =
97
+ When you add a CSS class called 'zoooom' to any image, the zoom will be applied on that particular image. Remember that the zooming works only when the displayed image is smaller than the loaded image (i.e. the image is shrinked with "width" and "height" attributes).
98
+
99
+ = If I want to use a "lazy load" plugin will it work? =
100
+ We can ensure compatibility with [Unveil Lazy Load](https://wordpress.org/plugins/unveil-lazy-load/), [WP images lazy loading](https://wordpress.org/plugins/wp-images-lazy-loading/) and [Lazy Load](https://wordpress.org/plugins/lazy-load/) plugins.
101
+
102
+
103
+ = My image is within a tab =
104
+ The zoom lens is built on page load relative to the image and it will be shown in mouse hover no matter if the image is hidden in another tab. I cannot do anything about this, the zoom is not built to work with images within tabs.
105
+
106
+ Alternatively you can upgrade to the Pro version, as there the zoom lens is built on mouse hover and not on page load, which means that the zoom will work also with images within tabs.
107
+
108
+ = Known Incompatibilities =
109
+
110
+ * **Black Studio Tiny MCE Widget** plugin and **SiteOrigin Widgets Bundle** plugin makes the Image Zoooom button doesn't show in the Edit Post and Edit Page editor
111
+
112
+ * The zoom doesn't work well with **Image Carousel** on **Avada** theme. You cannot use the zoom and the carousel on the same page.
113
+
114
+ * The zoom doesn't work at all with the **WooCommerce Dynamic Gallery** plugin.
115
+
116
+ * The zoom will not work with the WooCommerce gallery on the **Avada** theme. The Avada theme changes entirely the default WooCommerce gallery with the [Flexslider gallery](https://woocommerce.com/flexslider/) and the zoom plugin does not support the Flexslider gallery. Please check the [PRO version](https://www.silkypress.com/wp-image-zoom-plugin/?utm_source=wordpress&utm_campaign=iz_free&utm_medium=banner) of the plugin for compatibility with the Flexslider gallery.
117
+
118
+ = Credits =
119
+
120
+ * Demo photo from http://pixabay.com/en/wordcloud-tagcloud-cloud-text-tag-679951/ under CC0 Public Domain license
121
+
122
+
123
+ == Screenshots ==
124
+
125
+ 1. Configuration menu for the Round Lens
126
+
127
+ 2. Configuration menu for the Square Lens
128
+
129
+ 3. Configuration menu for the Zoom Window
130
+
131
+ 4. Application of zoom on an image in a post
132
+
133
+ 5. General configuration menu
134
+
135
+ 6. WooCommerce product page with the Zoom Window applied on the featured image
136
+
137
+ 7. Apply the zoom from Visual Composer, the Single Image element
138
+
139
+ == Changelog ==
140
+
141
+ = 1.12 =
142
+ * Feature: support for custom post type
143
+
144
+ = 1.11 =
145
+ * Fix: when a caching plugin is present, a tablet is still considered a mobile device
146
+ * Fix: remove woocommerce slider support for the Kiddy theme
147
+ * Fix: with jQuery v<1.11 the mobile browser needs to be checked with $. instead of jQuery.
148
+
149
+ = 1.10 =
150
+ * Fix: warning for the Shopkeeper theme
151
+ * Fix: don't add/remove theme support for the gallery if is not enabled for WooCommerce
152
+
153
+ = 1.9 =
154
+ * Fix: if the image has data-large_image attribute, then use that for the zoom
155
+ * Fix: if data-zoom-image attribute present, then exchange it with the thumbnails in WooCommerce gallery
156
+ * Fix: remove click action on the WooCommerce images
157
+
158
+ = 1.8 =
159
+ * Feature: compatibility with WooCommerce 3.0.+
160
+
161
+ = 1.7 =
162
+ * Feature: compatibility with the Nouveau theme
163
+ * Feature: compatibility with the WP-Cache Super for the `enable on mobiles` option
164
+ * Fix: don't add the full size image to the srcset if the image is cropped
165
+ * Fix: replace the `move` cursor type with `zoom-in`
166
+ * Fix: compatibility with the 2.8.6+ Virtue theme, see https://wordpress.org/support/topic/woocommerce_single_product_image_html-filter/
167
+
168
+ = 1.6 =
169
+ * Feature: compatibility with the Lazy Load plugin (https://wordpress.org/plugins/lazy-load/)
170
+ * Fix: remove the "Compatible with LazyLoad (unveil)" option and apply the fix automatically if the $.unveil function is present
171
+
172
+ = 1.5 =
173
+ * Feature: plugin ready for translation
174
+ * Feature: translation for Romanian
175
+
176
+ = 1.4 =
177
+ * Feature: "Exchange the thumbnail with the main image on WooCommerce products" option
178
+ * Feature: compatibility with the Artcore theme
179
+ * Feature: show a notice about BWP Minify configurations
180
+
181
+ = 1.3.1 =
182
+ * Fix: remove the prettyPhoto only if WooCommerce is active and only on product pages
183
+
184
+ = 1.3.0 =
185
+ * Fix: PHP Notice when adding two arrays without checking first the variable type
186
+ * Fix: add the attachment-shop_single and attachment-thumbnail classes to the WooCommerce product images if these are missing
187
+ * Added grayed out fields as in the PRO version
188
+
189
+ = 1.2.9 =
190
+ * Fix: if the full image isn't present in the srcset, add it
191
+ * Fix: compatibility with the Bridge theme
192
+ * Fix: set the data-zoom-image attribute as having priority over the srcset attribute
193
+
194
+ = 1.2.8 =
195
+ * 04/21/2016
196
+ * Fix: For WooCommerce galleries keep the thumnail's src in data-thumbnail-src. This will fix some esthetic issue with long images
197
+ * Feature: add data-zoom-image attribute if the srcset is not present, but the "zoooom" class is present
198
+
199
+ = 1.2.7 =
200
+ * 04/11/2016
201
+ * Feature: add TinyMCE button to the LearnDash post types
202
+
203
+ = 1.2.6 =
204
+ * 02/14/2016
205
+ * Feature: Enable the zoom on the WooCommerce category pages
206
+ * Fix: replaced the <?= ?> with <?php echo ?> to make it work for PHP < 5.4 and short_open_tag = Off
207
+ * Feature: you can tag a div with "zoooom" class in order to apply the zoom
208
+ * Feature: compatibility with Visual Composer
209
+
210
+ = 1.2.5 =
211
+ * 01/19/2016
212
+ * Added admin-notices
213
+
214
+ = 1.2.4 =
215
+ * 12/24/2015
216
+ * Fix: With WordPress 4.4 the WooCommerce thumbnail images were not switched for the main image
217
+
218
+ = 1.2.3 =
219
+ * 11/21/2015
220
+ * Fix: The tooltips for checkboxes were not working
221
+ * Fix: 'Distance from the Main Image' was not having an effect on the frontend
222
+ * Fix: removed the mousewheel zoom as it was not working
223
+ * Fix: TinyMCE in the WP-Lister Templates was not working
224
+
225
+ = 1.2.2 =
226
+ * 11/06/2015
227
+ * Fix: 'Force to work on woocommerce' also on JPEG files
228
+
229
+ = 1.2.1 =
230
+ * 10/20/2015
231
+ * Added compatibility with LazyLoad (unveil.js)
232
+ * Fix: with round and square lens the zoom was flickering when getting out of the image area. (https://wordpress.org/support/topic/lazyload-conflicts-more)
233
+
234
+ = 1.2.0 =
235
+ * 10/13/2015
236
+ * Added .pot file for translation.
237
+
238
+ = 1.1.4 =
239
+ * 10/07/2015
240
+ * Fix: https://wordpress.org/support/topic/problem-when-resize-window (regenerate the zoomed image when the page is resized)
241
+ * Fix: https://wordpress.org/support/topic/not-working-1307 (when choosing another image from woocommerce gallery, if the image is not big enough to generate a zoom, it was still showing the previously chosen image)
242
+
243
+ = 1.1.3 =
244
+ * 08/18/2015
245
+ * The Shadow Thickness was not working.
246
+
247
+ = 1.1.2 =
248
+ * 08/05/2015
249
+ * Remove the WooCommerce lightbox. It doesn't make sense to have the lightbox and zoom at the same time
250
+
251
+ = 1.1.1 =
252
+ * 08/04/2015
253
+ * Fix: https://wordpress.org/support/topic/not-working-1307 (force it to work with WooCommerce images, even when the templates tries to load a smaller size image)
254
+
255
+ = 1.1.0 =
256
+ * 08/03/2015
257
+ * Update to WP 4.2.3
258
+
259
+ = 1.0.9 =
260
+ * 06/29/2015
261
+ * Fix: https://wordpress.org/support/topic/zoom-appears-behind-an-product-image
262
+
263
+ = 1.0.8 =
264
+ * 06/23/2015
265
+ * Fix: https://wordpress.org/support/topic/zoom-configuration-settings-not-available
266
+
267
+ = 1.0.7 =
268
+ * 06/21/2015
269
+ * Added: right side box with WP Image Zoooom Pro
270
+
271
+ = 1.0.6 =
272
+ * 06/03/2015
273
+ * Fix: https://wordpress.org/support/topic/the-zoom-button-does-not-appear (it was assumed that the path to the plugin is the standard one. Now it loads the .png from a path relative to tinyMCE-button.js)
274
+
275
+ = 1.0.5 =
276
+ * 06/01/2015
277
+ * Fix: https://wordpress.org/support/topic/parse-error-334 (retrieval of static variables for PHP<5.2 is done differently)
278
+
279
+ = 1.0.4 =
280
+ * 05/27/2015
281
+ * Fix: solved the JS bug that was leading to "works in the upper-left of the image"
282
+
283
+ = 1.0.3 =
284
+ * 05/26/2015
285
+ * Fix: add version number to the css, otherwise the css was taken from the cache from the previous version
286
+
287
+ = 1.0.2 =
288
+ * 05/26/2015
289
+ * Added: "Like this Plugin?" box in the admin
290
+ * Tweak: refactored the "Zoom Settings" page in the admin and added steps
291
+
292
+ = 1.0 =
293
+ * 05/19/2015
294
+ * Initial commit
295
+
296
+ == Upgrade Notice ==
297
+
298
+ Nothing at the moment