7268c45b by Jeff Balicki

emails

1 parent ad31dfdd
Showing 82 changed files with 2015 additions and 255 deletions
...@@ -35,8 +35,23 @@ ...@@ -35,8 +35,23 @@
35 /* 35 /*
36 * Welcome Panel 36 * Welcome Panel
37 */ 37 */
38 .welcome-panel .welcome-panel-column, 38 .wpcf7-welcome-panel .welcome-panel-close {
39 .welcome-panel .welcome-panel-column:first-child { 39 left: 10px;
40 right: auto;
41 padding: 10px 21px 10px 15px;
42 }
43
44 .wpcf7-welcome-panel .welcome-panel-close::before {
45 right: 0;
46 left: auto;
47 }
48
49 .wpcf7-welcome-panel .welcome-panel-content {
50 margin-right: 13px;
51 }
52
53 .wpcf7-welcome-panel .welcome-panel-column {
54 float: right;
40 padding: 0 0 0 2%; 55 padding: 0 0 0 2%;
41 } 56 }
42 57
......
...@@ -359,30 +359,26 @@ ul.config-error li { ...@@ -359,30 +359,26 @@ ul.config-error li {
359 /* 359 /*
360 * Welcome Panel 360 * Welcome Panel
361 */ 361 */
362 .welcome-panel .welcome-panel-column, 362 .wpcf7-welcome-panel {
363 .welcome-panel .welcome-panel-column:first-child { 363 position: relative;
364 width: 48%; 364 overflow: auto;
365 padding: 0 2% 0 0; 365 margin: 16px 0;
366 margin: 0 0 1em 0; 366 padding: 23px 10px 0;
367 } 367 border: 1px solid #c3c4c7;
368 368 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
369 @media screen and (max-width: 870px) { 369 background: #fff;
370 .welcome-panel .welcome-panel-column, 370 font-size: 13px;
371 .welcome-panel .welcome-panel-column:first-child { 371 line-height: 1.7;
372 display: block;
373 float: none;
374 width: 100%;
375 }
376 } 372 }
377 373
378 .welcome-panel h3 { 374 .wpcf7-welcome-panel h3 {
379 font-size: 16px; 375 font-size: 16px;
380 font-weight: 600; 376 font-weight: 600;
381 line-height: 2.1em; 377 line-height: 2.1em;
382 margin: 1em 0 1.2em; 378 margin: 1em 0 1.2em;
383 } 379 }
384 380
385 .welcome-panel h3 .dashicons { 381 .wpcf7-welcome-panel h3 .dashicons {
386 position: relative; 382 position: relative;
387 top: -2px; 383 top: -2px;
388 display: inline-block; 384 display: inline-block;
...@@ -391,12 +387,75 @@ ul.config-error li { ...@@ -391,12 +387,75 @@ ul.config-error li {
391 font-size: 40px; 387 font-size: 40px;
392 } 388 }
393 389
394 .welcome-panel p a { 390 .wpcf7-welcome-panel p {
391 color: #646970;
392 }
393
394 .wpcf7-welcome-panel p a {
395 font-weight: bold; 395 font-weight: bold;
396 } 396 }
397 397
398 .welcome-panel-close { 398 .wpcf7-welcome-panel .welcome-panel-close {
399 position: absolute;
399 z-index: 2; 400 z-index: 2;
401 top: 10px;
402 right: 10px;
403 padding: 10px 15px 10px 21px;
404 font-size: 13px;
405 line-height: 1.23076923; /* Chrome rounding, needs to be 16px equivalent */
406 text-decoration: none;
407 }
408
409 .wpcf7-welcome-panel .welcome-panel-close::before {
410 background: 0 0;
411 color: #787c82;
412 content: "\f153";
413 display: block;
414 font: normal 16px/20px dashicons;
415 speak: never;
416 height: 20px;
417 text-align: center;
418 width: 20px;
419 -webkit-font-smoothing: antialiased;
420 -moz-osx-font-smoothing: grayscale;
421 position: absolute;
422 top: 8px;
423 left: 0;
424 transition: all .1s ease-in-out;
425 }
426
427 .wpcf7-welcome-panel .welcome-panel-content {
428 display: block;
429 margin-left: 13px;
430 max-width: 1500px;
431 min-height: auto;
432 }
433
434 .wpcf7-welcome-panel .welcome-panel-column-container {
435 clear: both;
436 position: relative;
437 }
438
439 .wpcf7-welcome-panel .welcome-panel-column {
440 display: block;
441 width: 48%;
442 min-width: 200px;
443 float: left;
444 padding: 0 2% 0 0;
445 margin: 0 0 1em 0;
446 }
447
448 @media screen and (max-width: 870px) {
449 .wpcf7-welcome-panel .welcome-panel-column {
450 display: block;
451 float: none;
452 width: 100%;
453 }
454 }
455
456 .wpcf7-welcome-panel .welcome-panel-column p {
457 margin-top: 7px;
458 color: #3c434a;
400 } 459 }
401 460
402 /* 461 /*
......
...@@ -200,7 +200,7 @@ function wpcf7_welcome_panel() { ...@@ -200,7 +200,7 @@ function wpcf7_welcome_panel() {
200 $columns[] = new WPCF7_WelcomePanelColumn_Integration(); 200 $columns[] = new WPCF7_WelcomePanelColumn_Integration();
201 } 201 }
202 202
203 $classes = 'welcome-panel'; 203 $classes = 'wpcf7-welcome-panel';
204 204
205 $vers = (array) get_user_meta( get_current_user_id(), 205 $vers = (array) get_user_meta( get_current_user_id(),
206 'wpcf7_hide_welcome_panel_on', true 206 'wpcf7_hide_welcome_panel_on', true
...@@ -211,7 +211,7 @@ function wpcf7_welcome_panel() { ...@@ -211,7 +211,7 @@ function wpcf7_welcome_panel() {
211 } 211 }
212 212
213 ?> 213 ?>
214 <div id="welcome-panel" class="<?php echo esc_attr( $classes ); ?>"> 214 <div id="wpcf7-welcome-panel" class="<?php echo esc_attr( $classes ); ?>">
215 <?php wp_nonce_field( 'wpcf7-welcome-panel-nonce', 'welcomepanelnonce', false ); ?> 215 <?php wp_nonce_field( 'wpcf7-welcome-panel-nonce', 'welcomepanelnonce', false ); ?>
216 <a class="welcome-panel-close" href="<?php echo esc_url( menu_page_url( 'wpcf7', false ) ); ?>"><?php echo esc_html( __( 'Dismiss', 'contact-form-7' ) ); ?></a> 216 <a class="welcome-panel-close" href="<?php echo esc_url( menu_page_url( 'wpcf7', false ) ); ?>"><?php echo esc_html( __( 'Dismiss', 'contact-form-7' ) ); ?></a>
217 217
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 } 7 }
8 8
9 $( function() { 9 $( function() {
10 var welcomePanel = $( '#welcome-panel' ); 10 var welcomePanel = $( '#wpcf7-welcome-panel' );
11 var updateWelcomePanel; 11 var updateWelcomePanel;
12 12
13 updateWelcomePanel = function( visible ) { 13 updateWelcomePanel = function( visible ) {
......
1 !function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var c in r)e.o(r,c)&&!e.o(t,c)&&Object.defineProperty(t,c,{enumerable:!0,get:r[c]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t=window.wp.element,r=window.wp.i18n,c=window.wp.blocks,n=(0,t.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 242.5 239.46"},(0,t.createElement)("defs",null,(0,t.createElement)("clipPath",{id:"clip-path",transform:"translate(1.72)"},(0,t.createElement)("circle",{className:"cls-1",cx:"119.73",cy:"119.73",r:"116.15",fill:"none"}))),(0,t.createElement)("g",{id:"Layer_2","data-name":"Layer 2"},(0,t.createElement)("g",{id:"Layer_1","data-name":"Layer 1"},(0,t.createElement)("g",{className:"cls-2",clipPath:"url(#clip-path)"},(0,t.createElement)("circle",{className:"cls-3",cx:"121.45",cy:"119.73",r:"116.15",fill:"#33c6f4"}),(0,t.createElement)("path",{className:"cls-4",d:"M239.32,167.79c-53.41-24-108.37-91.46-113-94.55s-10.84.77-10.84.77c-3.87-6.19-10.06.77-10.06.77C76.77,123.55.14,170.11.14,170.11S36.94,237.79,122,237.79C208.48,237.79,239.32,167.79,239.32,167.79Z",transform:"translate(1.72)",fill:"#1b447e"}),(0,t.createElement)("path",{className:"cls-5",d:"M67.48,116.58s15.48-7,12.38,4.65-15.48,28.64-11.61,29.41S83,140.58,86.06,142.12s5.42.78,3.87,6.2-3.1,9.29,0,9.29,5.42-7,9.29-13.94,10.06-3.87,12.38-1.55,9.29,15.49,14.71,13.94,8.51-8.52,6.19-24,1.55-20.12,1.55-20.12,4.64-2.32,13.16,8.51,24,27.09,26.31,26.32-10.83-17.8-7.74-19.35,15.48,2.32,21.68,7.74c0,0,2.12,8.87,2.12.36L126.31,73.24,115.47,74l-10.06.77S80.64,111.94,67.48,116.58Z",transform:"translate(1.72)",fill:"#fff"}),(0,t.createElement)("path",{className:"cls-6",d:"M239.32,170.11c-53.41-24-108.37-93.78-113-96.87s-10.84.77-10.84.77c-3.87-6.19-10.06.77-10.06.77C76.77,123.55.14,170.11.14,170.11",transform:"translate(1.72)",fill:"none",stroke:"#221e1f",strokeMiterlimit:"10",strokeWidth:"8px"})),(0,t.createElement)("circle",{className:"cls-6",cx:"121.45",cy:"119.73",r:"116.15",fill:"none",stroke:"#1b447e",strokeMiterlimit:"10",strokeWidth:"8px"})))),a=window.wp.apiFetch,o=e.n(a),l=window.wp.compose,s=window.wp.components;const i=new Map;o()({path:"contact-form-7/v1/contact-forms?per_page=20"}).then((e=>{Object.entries(e).forEach((([e,t])=>{i.set(t.id,t)}))}));var m={from:[{type:"shortcode",tag:"contact-form-7",attributes:{id:{type:"integer",shortcode:function(e){var t=e.named.id;return parseInt(t)}},title:{type:"string",shortcode:function(e){return e.named.title}}}}],to:[{type:"block",blocks:["core/shortcode"],transform:function(e){return(0,c.createBlock)("core/shortcode",{text:'[contact-form-7 id="'.concat(e.id,'" title="').concat(e.title,'"]')})}}]};(0,c.registerBlockType)("contact-form-7/contact-form-selector",{title:(0,r.__)("Contact Form 7","contact-form-7"),description:(0,r.__)("Insert a contact form you have created with Contact Form 7.","contact-form-7"),category:"widgets",attributes:{id:{type:"integer"},title:{type:"string"}},icon:n,transforms:m,edit:function e({attributes:c,setAttributes:n}){if(!i.size&&!c.id)return(0,t.createElement)("div",{className:"components-placeholder"},(0,t.createElement)("p",null,(0,r.__)("No contact forms were found. Create a contact form first.","contact-form-7")));const a=Array.from(i.values(),(e=>({value:e.id,label:e.title})));if(c.id)a.length||a.push({value:c.id,label:c.title});else{const e=a[0];c={id:parseInt(e.value),title:e.label}}const o=`contact-form-7-contact-form-selector-${(0,l.useInstanceId)(e)}`;return(0,t.createElement)("div",{className:"components-placeholder"},(0,t.createElement)("label",{htmlFor:o,className:"components-placeholder__label"},(0,r.__)("Select a contact form:","contact-form-7")),(0,t.createElement)(s.SelectControl,{id:o,options:a,value:c.id,onChange:e=>n({id:parseInt(e),title:i.get(parseInt(e)).title})}))},save:function(e){var r=e.attributes;return(0,t.createElement)("div",null,'[contact-form-7 id="',r.id,'" title="',r.title,'"]')}})}();
...\ No newline at end of file ...\ No newline at end of file
1 !function(){"use strict";var t,e={n:function(t){var c=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(c,{a:c}),c},d:function(t,c){for(var r in c)e.o(c,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:c[r]})},o:function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}},c=window.wp.element,r=window.wp.apiFetch,o=e.n(r),n=window.wp.i18n,a=window.wp.blocks,l=(0,c.createElement)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 242.5 239.46"},(0,c.createElement)("defs",null,(0,c.createElement)("clipPath",{id:"clip-path",transform:"translate(1.72)"},(0,c.createElement)("circle",{className:"cls-1",cx:"119.73",cy:"119.73",r:"116.15",fill:"none"}))),(0,c.createElement)("g",{id:"Layer_2","data-name":"Layer 2"},(0,c.createElement)("g",{id:"Layer_1","data-name":"Layer 1"},(0,c.createElement)("g",{className:"cls-2",clipPath:"url(#clip-path)"},(0,c.createElement)("circle",{className:"cls-3",cx:"121.45",cy:"119.73",r:"116.15",fill:"#33c6f4"}),(0,c.createElement)("path",{className:"cls-4",d:"M239.32,167.79c-53.41-24-108.37-91.46-113-94.55s-10.84.77-10.84.77c-3.87-6.19-10.06.77-10.06.77C76.77,123.55.14,170.11.14,170.11S36.94,237.79,122,237.79C208.48,237.79,239.32,167.79,239.32,167.79Z",transform:"translate(1.72)",fill:"#1b447e"}),(0,c.createElement)("path",{className:"cls-5",d:"M67.48,116.58s15.48-7,12.38,4.65-15.48,28.64-11.61,29.41S83,140.58,86.06,142.12s5.42.78,3.87,6.2-3.1,9.29,0,9.29,5.42-7,9.29-13.94,10.06-3.87,12.38-1.55,9.29,15.49,14.71,13.94,8.51-8.52,6.19-24,1.55-20.12,1.55-20.12,4.64-2.32,13.16,8.51,24,27.09,26.31,26.32-10.83-17.8-7.74-19.35,15.48,2.32,21.68,7.74c0,0,2.12,8.87,2.12.36L126.31,73.24,115.47,74l-10.06.77S80.64,111.94,67.48,116.58Z",transform:"translate(1.72)",fill:"#fff"}),(0,c.createElement)("path",{className:"cls-6",d:"M239.32,170.11c-53.41-24-108.37-93.78-113-96.87s-10.84.77-10.84.77c-3.87-6.19-10.06.77-10.06.77C76.77,123.55.14,170.11.14,170.11",transform:"translate(1.72)",fill:"none",stroke:"#221e1f",strokeMiterlimit:"10",strokeWidth:"8px"})),(0,c.createElement)("circle",{className:"cls-6",cx:"121.45",cy:"119.73",r:"116.15",fill:"none",stroke:"#1b447e",strokeMiterlimit:"10",strokeWidth:"8px"})))),i=window.wp.compose,s=window.wp.components,m={from:[{type:"shortcode",tag:"contact-form-7",attributes:{id:{type:"integer",shortcode:t=>{let{named:{id:e}}=t;return parseInt(e)}},title:{type:"string",shortcode:t=>{let{named:{title:e}}=t;return e}}}}],to:[{type:"block",blocks:["core/shortcode"],transform:t=>(0,a.createBlock)("core/shortcode",{text:`[contact-form-7 id="${t.id}" title="${t.title}"]`})}]};window.wpcf7=null!==(t=window.wpcf7)&&void 0!==t?t:{},o()({path:"contact-form-7/v1/contact-forms?per_page=20"}).then((t=>{window.wpcf7.contactForms=t})),(0,a.registerBlockType)("contact-form-7/contact-form-selector",{title:(0,n.__)("Contact Form 7","contact-form-7"),description:(0,n.__)("Insert a contact form you have created with Contact Form 7.","contact-form-7"),category:"widgets",attributes:{id:{type:"integer"},title:{type:"string"}},icon:l,transforms:m,edit:function t(e){let{attributes:r,setAttributes:o}=e;const a=new Map;if(Object.entries(window.wpcf7.contactForms).forEach((t=>{let[e,c]=t;a.set(c.id,c)})),!a.size&&!r.id)return(0,c.createElement)("div",{className:"components-placeholder"},(0,c.createElement)("p",null,(0,n.__)("No contact forms were found. Create a contact form first.","contact-form-7")));const l=Array.from(a.values(),(t=>({value:t.id,label:t.title})));if(r.id)l.length||l.push({value:r.id,label:r.title});else{const t=l[0];r={id:parseInt(t.value),title:t.label}}const m=`contact-form-7-contact-form-selector-${(0,i.useInstanceId)(t)}`;return(0,c.createElement)("div",{className:"components-placeholder"},(0,c.createElement)("label",{htmlFor:m,className:"components-placeholder__label"},(0,n.__)("Select a contact form:","contact-form-7")),(0,c.createElement)(s.SelectControl,{id:m,options:l,value:r.id,onChange:t=>o({id:parseInt(t),title:a.get(parseInt(t)).title})}))},save:t=>{var e,r,o,n;let{attributes:a}=t;return a={id:null!==(e=a.id)&&void 0!==e?e:null===(r=window.wpcf7.contactForms[0])||void 0===r?void 0:r.id,title:null!==(o=a.title)&&void 0!==o?o:null===(n=window.wpcf7.contactForms[0])||void 0===n?void 0:n.title},(0,c.createElement)("div",null,'[contact-form-7 id="',a.id,'" title="',a.title,'"]')}})}();
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(){"use strict";var e=function(e){return Math.abs(parseInt(e,10))};const t=(e,t)=>{const n=new Map([["init","init"],["validation_failed","invalid"],["acceptance_missing","unaccepted"],["spam","spam"],["aborted","aborted"],["mail_sent","sent"],["mail_failed","failed"],["submitting","submitting"],["resetting","resetting"],["payment_required","payment-required"]]);n.has(t)&&(t=n.get(t)),Array.from(n.values()).includes(t)||(t=`custom-${t=(t=t.replace(/[^0-9a-z]+/i," ").trim()).replace(/\s+/,"-")}`);const r=e.getAttribute("data-status");return e.wpcf7.status=t,e.setAttribute("data-status",t),e.classList.add(t),r&&r!==t&&e.classList.remove(r),t};var n=function(e,t,n){var r=new CustomEvent("wpcf7".concat(t),{bubbles:!0,detail:n});"string"==typeof e&&(e=document.querySelector(e)),e.dispatchEvent(r)};function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var o=function(e){var t=wpcf7.api,n=t.root,r=t.namespace,a=void 0===r?"contact-form-7/v1":r;return i.reduceRight((function(e,t){return function(n){return t(n,e)}}),(function(e){var t,r,o=e.url,i=e.path,s=e.endpoint,u=e.headers,l=e.body,f=e.data,p=function(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},c=Object.keys(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,["url","path","endpoint","headers","body","data"]);"string"==typeof s&&(t=a.replace(/^\/|\/$/g,""),i=(r=s.replace(/^\//,""))?t+"/"+r:t),"string"==typeof i&&(-1!==n.indexOf("?")&&(i=i.replace("?","&")),i=i.replace(/^\//,""),o=n+i),delete(u=c({Accept:"application/json, */*;q=0.1"},u))["X-WP-Nonce"],f&&(l=JSON.stringify(f),u["Content-Type"]="application/json");var d={code:"fetch_error",message:"You are probably offline."},w={code:"invalid_json",message:"The response is not a valid JSON response."};return window.fetch(o||i||window.location.href,c(c({},p),{},{headers:u,body:l})).then((function(e){return Promise.resolve(e).then((function(e){if(e.status>=200&&e.status<300)return e;throw e})).then((function(e){if(204===e.status)return null;if(e&&e.json)return e.json().catch((function(){throw w}));throw w}))}),(function(){throw d}))}))(e)},i=[];function s(e,r={}){if(wpcf7.blocked)return u(e),void t(e,"submitting");const a=new FormData(e);r.submitter&&r.submitter.name&&a.append(r.submitter.name,r.submitter.value);const c={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(a,(e=>{const t=e[0],n=e[1];return!t.match(/^_/)&&{name:t,value:n}})).filter((e=>!1!==e)),formData:a},i=t=>{const n=document.createElement("li");n.setAttribute("id",t.error_id),t.idref?n.insertAdjacentHTML("beforeend",`<a href="#${t.idref}">${t.message}</a>`):n.insertAdjacentText("beforeend",t.message),e.wpcf7.parent.querySelector(".screen-reader-response ul").appendChild(n)},s=t=>{const n=e.querySelector(t.into),r=n.querySelector(".wpcf7-form-control");r.classList.add("wpcf7-not-valid"),r.setAttribute("aria-describedby",t.error_id);const a=document.createElement("span");a.setAttribute("class","wpcf7-not-valid-tip"),a.setAttribute("aria-hidden","true"),a.insertAdjacentText("beforeend",t.message),n.appendChild(a),n.querySelectorAll("[aria-invalid]").forEach((e=>{e.setAttribute("aria-invalid","true")})),r.closest(".use-floating-validation-tip")&&(r.addEventListener("focus",(e=>{a.setAttribute("style","display: none")})),a.addEventListener("mouseover",(e=>{a.setAttribute("style","display: none")})))};o({endpoint:`contact-forms/${e.wpcf7.id}/feedback`,method:"POST",body:a,wpcf7:{endpoint:"feedback",form:e,detail:c}}).then((r=>{const a=t(e,r.status);return c.status=r.status,c.apiResponse=r,["invalid","unaccepted","spam","aborted"].includes(a)?n(e,a,c):["sent","failed"].includes(a)&&n(e,`mail${a}`,c),n(e,"submit",c),r})).then((t=>{t.posted_data_hash&&(e.querySelector('input[name="_wpcf7_posted_data_hash"]').value=t.posted_data_hash),"mail_sent"===t.status&&(e.reset(),e.wpcf7.resetOnMailSent=!0),t.invalid_fields&&(t.invalid_fields.forEach(i),t.invalid_fields.forEach(s)),e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').insertAdjacentText("beforeend",t.message),e.querySelectorAll(".wpcf7-response-output").forEach((e=>{e.innerText=t.message}))})).catch((e=>console.error(e)))}o.use=function(e){i.unshift(e)},o.use(((e,r)=>{if(e.wpcf7&&"feedback"===e.wpcf7.endpoint){const{form:r,detail:a}=e.wpcf7;u(r),n(r,"beforesubmit",a),t(r,"submitting")}return r(e)}));const u=e=>{e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').innerText="",e.wpcf7.parent.querySelector(".screen-reader-response ul").innerText="",e.querySelectorAll(".wpcf7-not-valid-tip").forEach((e=>{e.remove()})),e.querySelectorAll("[aria-invalid]").forEach((e=>{e.setAttribute("aria-invalid","false")})),e.querySelectorAll(".wpcf7-form-control").forEach((e=>{e.removeAttribute("aria-describedby"),e.classList.remove("wpcf7-not-valid")})),e.querySelectorAll(".wpcf7-response-output").forEach((e=>{e.innerText=""}))};function l(e){var r=new FormData(e),a={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(r,(function(e){var t=e[0],n=e[1];return!t.match(/^_/)&&{name:t,value:n}})).filter((function(e){return!1!==e})),formData:r};o({endpoint:"contact-forms/".concat(e.wpcf7.id,"/refill"),method:"GET",wpcf7:{endpoint:"refill",form:e,detail:a}}).then((function(r){e.wpcf7.resetOnMailSent?(delete e.wpcf7.resetOnMailSent,t(e,"mail_sent")):t(e,"init"),a.apiResponse=r,n(e,"reset",a)})).catch((function(e){return console.error(e)}))}o.use((function(e,n){if(e.wpcf7&&"refill"===e.wpcf7.endpoint){var r=e.wpcf7,a=r.form;r.detail,u(a),t(a,"resetting")}return n(e)}));var f=function(e,t){var n=function(n){var r=t[n];e.querySelectorAll('input[name="'.concat(n,'"]')).forEach((function(e){e.value=""})),e.querySelectorAll("img.wpcf7-captcha-".concat(n)).forEach((function(e){e.setAttribute("src",r)}));var a=/([0-9]+)\.(png|gif|jpeg)$/.exec(r);a&&e.querySelectorAll('input[name="_wpcf7_captcha_challenge_'.concat(n,'"]')).forEach((function(e){e.value=a[1]}))};for(var r in t)n(r)},p=function(e,t){var n=function(n){var r=t[n][0],a=t[n][1];e.querySelectorAll(".wpcf7-form-control-wrap.".concat(n)).forEach((function(e){e.querySelector('input[name="'.concat(n,'"]')).value="",e.querySelector(".wpcf7-quiz-label").textContent=r,e.querySelector('input[name="_wpcf7_quiz_answer_'.concat(n,'"]')).value=a}))};for(var r in t)n(r)};function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(t){const n=new FormData(t);t.wpcf7={id:e(n.get("_wpcf7")),status:t.getAttribute("data-status"),pluginVersion:n.get("_wpcf7_version"),locale:n.get("_wpcf7_locale"),unitTag:n.get("_wpcf7_unit_tag"),containerPost:e(n.get("_wpcf7_container_post")),parent:t.closest(".wpcf7")},t.querySelectorAll(".has-spinner").forEach((e=>{e.insertAdjacentHTML("afterend",'<span class="wpcf7-spinner"></span>')})),function(e){e.querySelectorAll(".wpcf7-exclusive-checkbox").forEach((function(t){t.addEventListener("change",(function(t){var n=t.target.getAttribute("name");e.querySelectorAll('input[type="checkbox"][name="'.concat(n,'"]')).forEach((function(e){e!==t.target&&(e.checked=!1)}))}))}))}(t),function(e){e.querySelectorAll(".has-free-text").forEach((function(t){var n=t.querySelector("input.wpcf7-free-text"),r=t.querySelector('input[type="checkbox"], input[type="radio"]');n.disabled=!r.checked,e.addEventListener("change",(function(e){n.disabled=!r.checked,e.target===r&&r.checked&&n.focus()}))}))}(t),function(e){e.querySelectorAll(".wpcf7-validates-as-url").forEach((function(e){e.addEventListener("change",(function(t){var n=e.value.trim();n&&!n.match(/^[a-z][a-z0-9.+-]*:/i)&&-1!==n.indexOf(".")&&(n="http://"+(n=n.replace(/^\/+/,""))),e.value=n}))}))}(t),function(e){if(e.querySelector(".wpcf7-acceptance")&&!e.classList.contains("wpcf7-acceptance-as-validation")){var t=function(){var t=!0;e.querySelectorAll(".wpcf7-acceptance").forEach((function(e){if(t&&!e.classList.contains("optional")){var n=e.querySelector('input[type="checkbox"]');(e.classList.contains("invert")&&n.checked||!e.classList.contains("invert")&&!n.checked)&&(t=!1)}})),e.querySelectorAll(".wpcf7-submit").forEach((function(e){e.disabled=!t}))};t(),e.addEventListener("change",(function(e){t()})),e.addEventListener("wpcf7reset",(function(e){t()}))}}(t),function(t){var n=function(t,n){var r=e(t.getAttribute("data-starting-value")),a=e(t.getAttribute("data-maximum-value")),c=e(t.getAttribute("data-minimum-value")),o=t.classList.contains("down")?r-n.value.length:n.value.length;t.setAttribute("data-current-value",o),t.innerText=o,a&&a<n.value.length?t.classList.add("too-long"):t.classList.remove("too-long"),c&&n.value.length<c?t.classList.add("too-short"):t.classList.remove("too-short")},a=function(e){e=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?d(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):d(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({init:!1},e),t.querySelectorAll(".wpcf7-character-count").forEach((function(r){var a=r.getAttribute("data-target-name"),c=t.querySelector('[name="'.concat(a,'"]'));c&&(c.value=c.defaultValue,n(r,c),e.init&&c.addEventListener("keyup",(function(e){n(r,c)})))}))};a({init:!0}),t.addEventListener("wpcf7reset",(function(e){a()}))}(t),window.addEventListener("load",(e=>{wpcf7.cached&&t.reset()})),t.addEventListener("reset",(e=>{wpcf7.reset(t)})),t.addEventListener("submit",(e=>{const n=e.submitter;wpcf7.submit(t,{submitter:n}),e.preventDefault()})),t.addEventListener("wpcf7submit",(e=>{e.detail.apiResponse.captcha&&f(t,e.detail.apiResponse.captcha),e.detail.apiResponse.quiz&&p(t,e.detail.apiResponse.quiz)})),t.addEventListener("wpcf7reset",(e=>{e.detail.apiResponse.captcha&&f(t,e.detail.apiResponse.captcha),e.detail.apiResponse.quiz&&p(t,e.detail.apiResponse.quiz)}))}document.addEventListener("DOMContentLoaded",(e=>{var t;if("undefined"==typeof wpcf7)return void console.error("wpcf7 is not defined.");if(void 0===wpcf7.api)return void console.error("wpcf7.api is not defined.");if("function"!=typeof window.fetch)return void console.error("Your browser doesn't support window.fetch().");if("function"!=typeof window.FormData)return void console.error("Your browser doesn't support window.FormData().");const n=document.querySelectorAll(".wpcf7 > form");"function"==typeof n.forEach?(wpcf7={init:w,submit:s,reset:l,...null!==(t=wpcf7)&&void 0!==t?t:{}},n.forEach((e=>wpcf7.init(e)))):console.error("Your browser doesn't support NodeList.forEach().")}))}();
...\ No newline at end of file ...\ No newline at end of file
1 !function(){"use strict";const e=e=>Math.abs(parseInt(e,10)),t=(e,t)=>{const r=new Map([["init","init"],["validation_failed","invalid"],["acceptance_missing","unaccepted"],["spam","spam"],["aborted","aborted"],["mail_sent","sent"],["mail_failed","failed"],["submitting","submitting"],["resetting","resetting"],["payment_required","payment-required"]]);r.has(t)&&(t=r.get(t)),Array.from(r.values()).includes(t)||(t=`custom-${t=(t=t.replace(/[^0-9a-z]+/i," ").trim()).replace(/\s+/,"-")}`);const n=e.getAttribute("data-status");return e.wpcf7.status=t,e.setAttribute("data-status",t),e.classList.add(t),n&&n!==t&&e.classList.remove(n),t},r=(e,t,r)=>{const n=new CustomEvent(`wpcf7${t}`,{bubbles:!0,detail:r});"string"==typeof e&&(e=document.querySelector(e)),e.dispatchEvent(n)},n=e=>{const{root:t,namespace:r="contact-form-7/v1"}=wpcf7.api;return a.reduceRight(((e,t)=>r=>t(r,e)),(e=>{let n,a,{url:c,path:s,endpoint:o,headers:i,body:l,data:p,...d}=e;"string"==typeof o&&(n=r.replace(/^\/|\/$/g,""),a=o.replace(/^\//,""),s=a?n+"/"+a:n),"string"==typeof s&&(-1!==t.indexOf("?")&&(s=s.replace("?","&")),s=s.replace(/^\//,""),c=t+s),i={Accept:"application/json, */*;q=0.1",...i},delete i["X-WP-Nonce"],p&&(l=JSON.stringify(p),i["Content-Type"]="application/json");const u={code:"fetch_error",message:"You are probably offline."},f={code:"invalid_json",message:"The response is not a valid JSON response."};return window.fetch(c||s||window.location.href,{...d,headers:i,body:l}).then((e=>Promise.resolve(e).then((e=>{if(e.status>=200&&e.status<300)return e;throw e})).then((e=>{if(204===e.status)return null;if(e&&e.json)return e.json().catch((()=>{throw f}));throw f}))),(()=>{throw u}))}))(e)},a=[];function c(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(wpcf7.blocked)return s(e),void t(e,"submitting");const c=new FormData(e);a.submitter&&a.submitter.name&&c.append(a.submitter.name,a.submitter.value);const o={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(c,(e=>{const t=e[0],r=e[1];return!t.match(/^_/)&&{name:t,value:r}})).filter((e=>!1!==e)),formData:c},i=t=>{const r=document.createElement("li");r.setAttribute("id",t.error_id),t.idref?r.insertAdjacentHTML("beforeend",`<a href="#${t.idref}">${t.message}</a>`):r.insertAdjacentText("beforeend",t.message),e.wpcf7.parent.querySelector(".screen-reader-response ul").appendChild(r)},l=t=>{const r=e.querySelector(t.into),n=r.querySelector(".wpcf7-form-control");n.classList.add("wpcf7-not-valid"),n.setAttribute("aria-describedby",t.error_id);const a=document.createElement("span");a.setAttribute("class","wpcf7-not-valid-tip"),a.setAttribute("aria-hidden","true"),a.insertAdjacentText("beforeend",t.message),r.appendChild(a),r.querySelectorAll("[aria-invalid]").forEach((e=>{e.setAttribute("aria-invalid","true")})),n.closest(".use-floating-validation-tip")&&(n.addEventListener("focus",(e=>{a.setAttribute("style","display: none")})),a.addEventListener("mouseover",(e=>{a.setAttribute("style","display: none")})))};n({endpoint:`contact-forms/${e.wpcf7.id}/feedback`,method:"POST",body:c,wpcf7:{endpoint:"feedback",form:e,detail:o}}).then((n=>{const a=t(e,n.status);return o.status=n.status,o.apiResponse=n,["invalid","unaccepted","spam","aborted"].includes(a)?r(e,a,o):["sent","failed"].includes(a)&&r(e,`mail${a}`,o),r(e,"submit",o),n})).then((t=>{t.posted_data_hash&&(e.querySelector('input[name="_wpcf7_posted_data_hash"]').value=t.posted_data_hash),"mail_sent"===t.status&&(e.reset(),e.wpcf7.resetOnMailSent=!0),t.invalid_fields&&(t.invalid_fields.forEach(i),t.invalid_fields.forEach(l)),e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').insertAdjacentText("beforeend",t.message),e.querySelectorAll(".wpcf7-response-output").forEach((e=>{e.innerText=t.message}))})).catch((e=>console.error(e)))}n.use=e=>{a.unshift(e)},n.use(((e,n)=>{if(e.wpcf7&&"feedback"===e.wpcf7.endpoint){const{form:n,detail:a}=e.wpcf7;s(n),r(n,"beforesubmit",a),t(n,"submitting")}return n(e)}));const s=e=>{e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').innerText="",e.wpcf7.parent.querySelector(".screen-reader-response ul").innerText="",e.querySelectorAll(".wpcf7-not-valid-tip").forEach((e=>{e.remove()})),e.querySelectorAll("[aria-invalid]").forEach((e=>{e.setAttribute("aria-invalid","false")})),e.querySelectorAll(".wpcf7-form-control").forEach((e=>{e.removeAttribute("aria-describedby"),e.classList.remove("wpcf7-not-valid")})),e.querySelectorAll(".wpcf7-response-output").forEach((e=>{e.innerText=""}))};function o(e){const a=new FormData(e),c={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(a,(e=>{const t=e[0],r=e[1];return!t.match(/^_/)&&{name:t,value:r}})).filter((e=>!1!==e)),formData:a};n({endpoint:`contact-forms/${e.wpcf7.id}/refill`,method:"GET",wpcf7:{endpoint:"refill",form:e,detail:c}}).then((n=>{e.wpcf7.resetOnMailSent?(delete e.wpcf7.resetOnMailSent,t(e,"mail_sent")):t(e,"init"),c.apiResponse=n,r(e,"reset",c)})).catch((e=>console.error(e)))}n.use(((e,r)=>{if(e.wpcf7&&"refill"===e.wpcf7.endpoint){const{form:r,detail:n}=e.wpcf7;s(r),t(r,"resetting")}return r(e)}));const i=(e,t)=>{for(const r in t){const n=t[r];e.querySelectorAll(`input[name="${r}"]`).forEach((e=>{e.value=""})),e.querySelectorAll(`img.wpcf7-captcha-${r}`).forEach((e=>{e.setAttribute("src",n)}));const a=/([0-9]+)\.(png|gif|jpeg)$/.exec(n);a&&e.querySelectorAll(`input[name="_wpcf7_captcha_challenge_${r}"]`).forEach((e=>{e.value=a[1]}))}},l=(e,t)=>{for(const r in t){const n=t[r][0],a=t[r][1];e.querySelectorAll(`.wpcf7-form-control-wrap.${r}`).forEach((e=>{e.querySelector(`input[name="${r}"]`).value="",e.querySelector(".wpcf7-quiz-label").textContent=n,e.querySelector(`input[name="_wpcf7_quiz_answer_${r}"]`).value=a}))}};function p(t){const r=new FormData(t);t.wpcf7={id:e(r.get("_wpcf7")),status:t.getAttribute("data-status"),pluginVersion:r.get("_wpcf7_version"),locale:r.get("_wpcf7_locale"),unitTag:r.get("_wpcf7_unit_tag"),containerPost:e(r.get("_wpcf7_container_post")),parent:t.closest(".wpcf7")},t.querySelectorAll(".has-spinner").forEach((e=>{e.insertAdjacentHTML("afterend",'<span class="wpcf7-spinner"></span>')})),(e=>{e.querySelectorAll(".wpcf7-exclusive-checkbox").forEach((t=>{t.addEventListener("change",(t=>{const r=t.target.getAttribute("name");e.querySelectorAll(`input[type="checkbox"][name="${r}"]`).forEach((e=>{e!==t.target&&(e.checked=!1)}))}))}))})(t),(e=>{e.querySelectorAll(".has-free-text").forEach((t=>{const r=t.querySelector("input.wpcf7-free-text"),n=t.querySelector('input[type="checkbox"], input[type="radio"]');r.disabled=!n.checked,e.addEventListener("change",(e=>{r.disabled=!n.checked,e.target===n&&n.checked&&r.focus()}))}))})(t),(e=>{e.querySelectorAll(".wpcf7-validates-as-url").forEach((e=>{e.addEventListener("change",(t=>{let r=e.value.trim();r&&!r.match(/^[a-z][a-z0-9.+-]*:/i)&&-1!==r.indexOf(".")&&(r=r.replace(/^\/+/,""),r="http://"+r),e.value=r}))}))})(t),(e=>{if(!e.querySelector(".wpcf7-acceptance")||e.classList.contains("wpcf7-acceptance-as-validation"))return;const t=()=>{let t=!0;e.querySelectorAll(".wpcf7-acceptance").forEach((e=>{if(!t||e.classList.contains("optional"))return;const r=e.querySelector('input[type="checkbox"]');(e.classList.contains("invert")&&r.checked||!e.classList.contains("invert")&&!r.checked)&&(t=!1)})),e.querySelectorAll(".wpcf7-submit").forEach((e=>{e.disabled=!t}))};t(),e.addEventListener("change",(e=>{t()})),e.addEventListener("wpcf7reset",(e=>{t()}))})(t),(t=>{const r=(t,r)=>{const n=e(t.getAttribute("data-starting-value")),a=e(t.getAttribute("data-maximum-value")),c=e(t.getAttribute("data-minimum-value")),s=t.classList.contains("down")?n-r.value.length:r.value.length;t.setAttribute("data-current-value",s),t.innerText=s,a&&a<r.value.length?t.classList.add("too-long"):t.classList.remove("too-long"),c&&r.value.length<c?t.classList.add("too-short"):t.classList.remove("too-short")},n=e=>{e={init:!1,...e},t.querySelectorAll(".wpcf7-character-count").forEach((n=>{const a=n.getAttribute("data-target-name"),c=t.querySelector(`[name="${a}"]`);c&&(c.value=c.defaultValue,r(n,c),e.init&&c.addEventListener("keyup",(e=>{r(n,c)})))}))};n({init:!0}),t.addEventListener("wpcf7reset",(e=>{n()}))})(t),window.addEventListener("load",(e=>{wpcf7.cached&&t.reset()})),t.addEventListener("reset",(e=>{wpcf7.reset(t)})),t.addEventListener("submit",(e=>{const r=e.submitter;wpcf7.submit(t,{submitter:r}),e.preventDefault()})),t.addEventListener("wpcf7submit",(e=>{e.detail.apiResponse.captcha&&i(t,e.detail.apiResponse.captcha),e.detail.apiResponse.quiz&&l(t,e.detail.apiResponse.quiz)})),t.addEventListener("wpcf7reset",(e=>{e.detail.apiResponse.captcha&&i(t,e.detail.apiResponse.captcha),e.detail.apiResponse.quiz&&l(t,e.detail.apiResponse.quiz)}))}document.addEventListener("DOMContentLoaded",(e=>{var t;if("undefined"==typeof wpcf7)return void console.error("wpcf7 is not defined.");if(void 0===wpcf7.api)return void console.error("wpcf7.api is not defined.");if("function"!=typeof window.fetch)return void console.error("Your browser doesn't support window.fetch().");if("function"!=typeof window.FormData)return void console.error("Your browser doesn't support window.FormData().");const r=document.querySelectorAll(".wpcf7 > form");"function"==typeof r.forEach?(wpcf7={init:p,submit:c,reset:o,...null!==(t=wpcf7)&&void 0!==t?t:{}},r.forEach((e=>wpcf7.init(e)))):console.error("Your browser doesn't support NodeList.forEach().")}))}();
...\ No newline at end of file ...\ No newline at end of file
......
1 <?php 1 <?php
2 /**
3 * Pipe-related classes.
4 *
5 * @link https://contactform7.com/selectable-recipient-with-pipes/
6 */
2 7
8
9 /**
10 * Class representing a pair of pipe.
11 */
3 class WPCF7_Pipe { 12 class WPCF7_Pipe {
4 13
5 public $before = ''; 14 public $before = '';
...@@ -19,6 +28,10 @@ class WPCF7_Pipe { ...@@ -19,6 +28,10 @@ class WPCF7_Pipe {
19 } 28 }
20 } 29 }
21 30
31
32 /**
33 * Class representing a list of pipes.
34 */
22 class WPCF7_Pipes { 35 class WPCF7_Pipes {
23 36
24 private $pipes = array(); 37 private $pipes = array();
...@@ -40,18 +53,12 @@ class WPCF7_Pipes { ...@@ -40,18 +53,12 @@ class WPCF7_Pipes {
40 ) ); 53 ) );
41 54
42 foreach ( $this->pipes as $pipe ) { 55 foreach ( $this->pipes as $pipe ) {
43 56 $before_canonical = wpcf7_canonicalize( $pipe->before, array(
44 list( $before, $after ) = array_map(
45 function ( $item ) {
46 return wpcf7_canonicalize( $item, array(
47 'strto' => 'as-is', 57 'strto' => 'as-is',
48 ) ); 58 ) );
49 },
50 array( $pipe->before, $pipe->after )
51 );
52 59
53 if ( $input_canonical === $before ) { 60 if ( $input_canonical === $before_canonical ) {
54 return $after; 61 return $pipe->after;
55 } 62 }
56 } 63 }
57 64
......
1 Contact Form 7 WordPress Plugin, 2007-2021 Takayuki Miyoshi 1 Contact Form 7 WordPress Plugin, 2007-2022 Takayuki Miyoshi
2 Contact Form 7 is distributed under the terms of the GNU GPL 2 Contact Form 7 is distributed under the terms of the GNU GPL
3 3
4 This program is free software; you can redistribute it and/or modify 4 This program is free software; you can redistribute it and/or modify
......
...@@ -43,6 +43,7 @@ class WPCF7 { ...@@ -43,6 +43,7 @@ class WPCF7 {
43 self::load_module( 'count' ); 43 self::load_module( 'count' );
44 self::load_module( 'date' ); 44 self::load_module( 'date' );
45 self::load_module( 'disallowed-list' ); 45 self::load_module( 'disallowed-list' );
46 self::load_module( 'doi-helper' );
46 self::load_module( 'file' ); 47 self::load_module( 'file' );
47 self::load_module( 'flamingo' ); 48 self::load_module( 'flamingo' );
48 self::load_module( 'hidden' ); 49 self::load_module( 'hidden' );
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
3 wpcf7_include_module_file( 'constant-contact/service.php' ); 3 wpcf7_include_module_file( 'constant-contact/service.php' );
4 wpcf7_include_module_file( 'constant-contact/contact-post-request.php' ); 4 wpcf7_include_module_file( 'constant-contact/contact-post-request.php' );
5 wpcf7_include_module_file( 'constant-contact/contact-form-properties.php' ); 5 wpcf7_include_module_file( 'constant-contact/contact-form-properties.php' );
6 wpcf7_include_module_file( 'constant-contact/doi.php' );
6 7
7 8
8 add_action( 9 add_action(
...@@ -96,10 +97,28 @@ function wpcf7_constant_contact_submit( $contact_form, $result ) { ...@@ -96,10 +97,28 @@ function wpcf7_constant_contact_submit( $contact_form, $result ) {
96 return; 97 return;
97 } 98 }
98 99
99 if ( $email = $request_builder->get_email_address() 100 $email = $request_builder->get_email_address();
100 and $service->email_exists( $email ) ) { 101
102 if ( $email ) {
103 if ( $service->email_exists( $email ) ) {
101 return; 104 return;
102 } 105 }
103 106
107 $token = null;
108
109 do_action_ref_array( 'wpcf7_doi', array(
110 'wpcf7_constant_contact',
111 array(
112 'email_to' => $email,
113 'properties' => $request_builder->to_array(),
114 ),
115 &$token,
116 ) );
117
118 if ( isset( $token ) ) {
119 return;
120 }
121 }
122
104 $service->create_contact( $request_builder->to_array() ); 123 $service->create_contact( $request_builder->to_array() );
105 } 124 }
......
1 <?php
2 /**
3 * Double Opt-In Helper-related functions
4 *
5 * @link https://contactform7.com/doi-helper/
6 */
7
8
9 add_action(
10 'doihelper_init',
11 'wpcf7_constant_contact_doi_register_agent',
12 10, 0
13 );
14
15 /**
16 * Registers wpcf7_constant_contact as an agent.
17 */
18 function wpcf7_constant_contact_doi_register_agent() {
19 if ( ! function_exists( 'doihelper_register_agent' ) ) {
20 return;
21 }
22
23 doihelper_register_agent( 'wpcf7_constant_contact', array(
24 'optin_callback' => apply_filters(
25 'wpcf7_constant_contact_doi_optin_callback',
26 'wpcf7_constant_contact_doi_default_optin_callback'
27 ),
28 'email_callback' => apply_filters(
29 'wpcf7_constant_contact_doi_email_callback',
30 'wpcf7_constant_contact_doi_default_email_callback'
31 ),
32 ) );
33 }
34
35
36 /**
37 * Default optin_callback function.
38 */
39 function wpcf7_constant_contact_doi_default_optin_callback( $properties ) {
40 $service = WPCF7_ConstantContact::get_instance();
41
42 if ( $service->is_active() ) {
43 $service->create_contact( $properties );
44 }
45 }
46
47
48 /**
49 * Default email_callback function.
50 */
51 function wpcf7_constant_contact_doi_default_email_callback( $args ) {
52 if ( ! isset( $args['token'] ) or ! isset( $args['email_to'] ) ) {
53 return;
54 }
55
56 $site_title = wp_specialchars_decode(
57 get_bloginfo( 'name' ),
58 ENT_QUOTES
59 );
60
61 $link = add_query_arg(
62 array( 'doitoken' => $args['token'] ),
63 home_url()
64 );
65
66 $to = $args['email_to'];
67
68 $subject = sprintf(
69 /* translators: %s: blog name */
70 __( 'Opt-in confirmation from %s', 'contact-form-7' ),
71 $site_title
72 );
73
74 $message = sprintf(
75 /* translators: 1: blog name, 2: confirmation link */
76 __( 'Hello,
77
78 This is a confirmation email sent from %1$s.
79
80 We have received your submission to our web form, according to which you have allowed us to add you to our contact list. But, the process has not yet been completed. To complete it, please click the following link.
81
82 %2$s
83
84 If it was not your intention, or if you have no idea why you received this message, please do not click on the link, and ignore this message. We will never collect or use your personal data without your clear consent.
85
86 Sincerely,
87 %1$s', 'contact-form-7' ),
88 $site_title,
89 $link
90 );
91
92 wp_mail( $to, $subject, $message );
93 }
1 <?php
2 /**
3 * Double Opt-In Helper module
4 *
5 * @link https://contactform7.com/doi-helper/
6 */
7
8
9 add_action( 'wpcf7_doi', 'wpcf7_doihelper_start_session', 10, 3 );
10
11 /**
12 * Starts a double opt-in session.
13 */
14 function wpcf7_doihelper_start_session( $agent_name, $args, &$token ) {
15 if ( isset( $token ) ) {
16 return;
17 }
18
19 if ( ! function_exists( 'doihelper_start_session' ) ) {
20 return;
21 }
22
23 $submission = WPCF7_Submission::get_instance();
24
25 if ( ! $submission ) {
26 return;
27 }
28
29 $contact_form = $submission->get_contact_form();
30
31 $do_doi = ! array_filter(
32 $contact_form->additional_setting( 'doi', false ),
33 function ( $setting ) {
34 return in_array( $setting, array( 'off', 'false', '0' ), true );
35 }
36 );
37
38 $do_doi = apply_filters( 'wpcf7_do_doi', $do_doi, $agent_name, $args );
39
40 if ( ! $do_doi ) {
41 return;
42 }
43
44 $token = doihelper_start_session( $agent_name, $args );
45 }
1 document.addEventListener("DOMContentLoaded",(e=>{var t;wpcf7_recaptcha={...null!==(t=wpcf7_recaptcha)&&void 0!==t?t:{}};const c=wpcf7_recaptcha.sitekey,{homepage:n,contactform:a}=wpcf7_recaptcha.actions,o=e=>{const{action:t,func:n,params:a}=e;grecaptcha.execute(c,{action:t}).then((e=>{const c=new CustomEvent("wpcf7grecaptchaexecuted",{detail:{action:t,token:e}});document.dispatchEvent(c)})).then((()=>{"function"==typeof n&&n(...a)})).catch((e=>console.error(e)))};if(grecaptcha.ready((()=>{o({action:n})})),document.addEventListener("change",(e=>{o({action:a})})),"undefined"!=typeof wpcf7&&"function"==typeof wpcf7.submit){const e=wpcf7.submit;wpcf7.submit=(t,c={})=>{o({action:a,func:e,params:[t,c]})}}document.addEventListener("wpcf7grecaptchaexecuted",(e=>{const t=document.querySelectorAll('form.wpcf7-form input[name="_wpcf7_recaptcha_response"]');for(let c=0;c<t.length;c++)t[c].setAttribute("value",e.detail.token)}))}));
...\ No newline at end of file ...\ No newline at end of file
1 document.addEventListener("DOMContentLoaded",(t=>{var e;wpcf7_recaptcha={...null!==(e=wpcf7_recaptcha)&&void 0!==e?e:{}};const c=wpcf7_recaptcha.sitekey,{homepage:n,contactform:a}=wpcf7_recaptcha.actions,o=t=>{const{action:e,func:n,params:a}=t;grecaptcha.execute(c,{action:e}).then((t=>{const c=new CustomEvent("wpcf7grecaptchaexecuted",{detail:{action:e,token:t}});document.dispatchEvent(c)})).then((()=>{"function"==typeof n&&n(...a)})).catch((t=>console.error(t)))};if(grecaptcha.ready((()=>{o({action:n})})),document.addEventListener("change",(t=>{o({action:a})})),"undefined"!=typeof wpcf7&&"function"==typeof wpcf7.submit){const t=wpcf7.submit;wpcf7.submit=function(e){let c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};o({action:a,func:t,params:[e,c]})}}document.addEventListener("wpcf7grecaptchaexecuted",(t=>{const e=document.querySelectorAll('form.wpcf7-form input[name="_wpcf7_recaptcha_response"]');for(let c=0;c<e.length;c++)e[c].setAttribute("value",t.detail.token)}))}));
...\ No newline at end of file ...\ No newline at end of file
......
1 <?php
2 /**
3 * Double Opt-In Helper-related functions
4 *
5 * @link https://contactform7.com/doi-helper/
6 */
7
8
9 add_action(
10 'doihelper_init',
11 'wpcf7_sendinblue_doi_register_agent',
12 10, 0
13 );
14
15 /**
16 * Registers wpcf7_sendinblue as an agent.
17 */
18 function wpcf7_sendinblue_doi_register_agent() {
19 if ( ! function_exists( 'doihelper_register_agent' ) ) {
20 return;
21 }
22
23 doihelper_register_agent( 'wpcf7_sendinblue', array(
24 'optin_callback' => apply_filters(
25 'wpcf7_sendinblue_doi_optin_callback',
26 'wpcf7_sendinblue_doi_default_optin_callback'
27 ),
28 'email_callback' => apply_filters(
29 'wpcf7_sendinblue_doi_email_callback',
30 'wpcf7_sendinblue_doi_default_email_callback'
31 ),
32 ) );
33 }
34
35
36 /**
37 * Default optin_callback function.
38 */
39 function wpcf7_sendinblue_doi_default_optin_callback( $properties ) {
40 $service = WPCF7_Sendinblue::get_instance();
41
42 if ( ! $service->is_active() ) {
43 return;
44 }
45
46 if ( ! empty( $properties['contact'] ) ) {
47 $contact_id = $service->create_contact( $properties['contact'] );
48
49 if ( $contact_id and ! empty( $properties['email'] ) ) {
50 $service->send_email( $properties['email'] );
51 }
52 }
53 }
54
55
56 /**
57 * Default email_callback function.
58 */
59 function wpcf7_sendinblue_doi_default_email_callback( $args ) {
60 if ( ! isset( $args['token'] ) or ! isset( $args['email_to'] ) ) {
61 return;
62 }
63
64 $site_title = wp_specialchars_decode(
65 get_bloginfo( 'name' ),
66 ENT_QUOTES
67 );
68
69 $link = add_query_arg(
70 array( 'doitoken' => $args['token'] ),
71 home_url()
72 );
73
74 $to = $args['email_to'];
75
76 $subject = sprintf(
77 /* translators: %s: blog name */
78 __( 'Opt-in confirmation from %s', 'contact-form-7' ),
79 $site_title
80 );
81
82 $message = sprintf(
83 /* translators: 1: blog name, 2: confirmation link */
84 __( 'Hello,
85
86 This is a confirmation email sent from %1$s.
87
88 We have received your submission to our web form, according to which you have allowed us to add you to our contact list. But, the process has not yet been completed. To complete it, please click the following link.
89
90 %2$s
91
92 If it was not your intention, or if you have no idea why you received this message, please do not click on the link, and ignore this message. We will never collect or use your personal data without your clear consent.
93
94 Sincerely,
95 %1$s', 'contact-form-7' ),
96 $site_title,
97 $link
98 );
99
100 wp_mail( $to, $subject, $message );
101 }
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
2 2
3 wpcf7_include_module_file( 'sendinblue/service.php' ); 3 wpcf7_include_module_file( 'sendinblue/service.php' );
4 wpcf7_include_module_file( 'sendinblue/contact-form-properties.php' ); 4 wpcf7_include_module_file( 'sendinblue/contact-form-properties.php' );
5 wpcf7_include_module_file( 'sendinblue/doi.php' );
5 6
6 7
7 add_action( 'wpcf7_init', 'wpcf7_sendinblue_register_service', 1, 0 ); 8 add_action( 'wpcf7_init', 'wpcf7_sendinblue_register_service', 1, 0 );
...@@ -69,11 +70,13 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) { ...@@ -69,11 +70,13 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) {
69 70
70 $attributes = wpcf7_sendinblue_collect_parameters(); 71 $attributes = wpcf7_sendinblue_collect_parameters();
71 72
72 if ( empty( $attributes['EMAIL'] ) and empty( $attributes['SMS'] ) ) { 73 $params = array(
73 return; 74 'contact' => array(),
74 } 75 'email' => array(),
76 );
75 77
76 $contact_params = apply_filters( 78 if ( ! empty( $attributes['EMAIL'] ) or ! empty( $attributes['SMS'] ) ) {
79 $params['contact'] = apply_filters(
77 'wpcf7_sendinblue_contact_parameters', 80 'wpcf7_sendinblue_contact_parameters',
78 array( 81 array(
79 'email' => $attributes['EMAIL'], 82 'email' => $attributes['EMAIL'],
...@@ -82,17 +85,9 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) { ...@@ -82,17 +85,9 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) {
82 'updateEnabled' => false, 85 'updateEnabled' => false,
83 ) 86 )
84 ); 87 );
85
86 $contact_id = $service->create_contact( $contact_params );
87
88 if ( ! $contact_id ) {
89 return;
90 }
91
92 if ( ! $prop['enable_transactional_email'] or ! $prop['email_template'] ) {
93 return;
94 } 88 }
95 89
90 if ( $prop['enable_transactional_email'] and $prop['email_template'] ) {
96 $first_name = isset( $attributes['FIRSTNAME'] ) 91 $first_name = isset( $attributes['FIRSTNAME'] )
97 ? trim( $attributes['FIRSTNAME'] ) 92 ? trim( $attributes['FIRSTNAME'] )
98 : ''; 93 : '';
...@@ -112,7 +107,7 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) { ...@@ -112,7 +107,7 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) {
112 $email_to_name = ''; 107 $email_to_name = '';
113 } 108 }
114 109
115 $email_params = apply_filters( 110 $params['email'] = apply_filters(
116 'wpcf7_sendinblue_email_parameters', 111 'wpcf7_sendinblue_email_parameters',
117 array( 112 array(
118 'templateId' => absint( $prop['email_template'] ), 113 'templateId' => absint( $prop['email_template'] ),
...@@ -126,8 +121,32 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) { ...@@ -126,8 +121,32 @@ function wpcf7_sendinblue_submit( $contact_form, $result ) {
126 'tags' => array( 'Contact Form 7' ), 121 'tags' => array( 'Contact Form 7' ),
127 ) 122 )
128 ); 123 );
124 }
125
126 if ( is_email( $attributes['EMAIL'] ) ) {
127 $token = null;
129 128
130 $service->send_email( $email_params ); 129 do_action_ref_array( 'wpcf7_doi', array(
130 'wpcf7_sendinblue',
131 array(
132 'email_to' => $attributes['EMAIL'],
133 'properties' => $params,
134 ),
135 &$token,
136 ) );
137
138 if ( isset( $token ) ) {
139 return;
140 }
141 }
142
143 if ( ! empty( $params['contact'] ) ) {
144 $contact_id = $service->create_contact( $params['contact'] );
145
146 if ( $contact_id and ! empty( $params['email'] ) ) {
147 $service->send_email( $params['email'] );
148 }
149 }
131 } 150 }
132 151
133 152
......
...@@ -3,8 +3,8 @@ Contributors: takayukister ...@@ -3,8 +3,8 @@ Contributors: takayukister
3 Donate link: https://contactform7.com/donate/ 3 Donate link: https://contactform7.com/donate/
4 Tags: contact, form, contact form, feedback, email, ajax, captcha, akismet, multilingual 4 Tags: contact, form, contact form, feedback, email, ajax, captcha, akismet, multilingual
5 Requires at least: 5.7 5 Requires at least: 5.7
6 Tested up to: 5.8 6 Tested up to: 5.9
7 Stable tag: 5.5.3 7 Stable tag: 5.5.4
8 License: GPLv2 or later 8 License: GPLv2 or later
9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html
10 10
...@@ -77,6 +77,10 @@ Do you have questions or issues with Contact Form 7? Use these support channels ...@@ -77,6 +77,10 @@ Do you have questions or issues with Contact Form 7? Use these support channels
77 77
78 For more information, see [Releases](https://contactform7.com/category/releases/). 78 For more information, see [Releases](https://contactform7.com/category/releases/).
79 79
80 = 5.5.4 =
81
82 [https://contactform7.com/contact-form-7-554/](https://contactform7.com/contact-form-7-554/)
83
80 = 5.5.3 = 84 = 5.5.3 =
81 85
82 [https://contactform7.com/contact-form-7-553/](https://contactform7.com/contact-form-7-553/) 86 [https://contactform7.com/contact-form-7-553/](https://contactform7.com/contact-form-7-553/)
......
...@@ -7,10 +7,10 @@ Author: Takayuki Miyoshi ...@@ -7,10 +7,10 @@ Author: Takayuki Miyoshi
7 Author URI: https://ideasilo.wordpress.com/ 7 Author URI: https://ideasilo.wordpress.com/
8 Text Domain: contact-form-7 8 Text Domain: contact-form-7
9 Domain Path: /languages/ 9 Domain Path: /languages/
10 Version: 5.5.3 10 Version: 5.5.4
11 */ 11 */
12 12
13 define( 'WPCF7_VERSION', '5.5.3' ); 13 define( 'WPCF7_VERSION', '5.5.4' );
14 14
15 define( 'WPCF7_REQUIRED_WP_VERSION', '5.7' ); 15 define( 'WPCF7_REQUIRED_WP_VERSION', '5.7' );
16 16
......
...@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i ...@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
4 Tags: contact form 7, contact form 7 module, post, custom post, form to post, contact form 7 to post, contact form 7 extension 4 Tags: contact form 7, contact form 7 module, post, custom post, form to post, contact form 7 to post, contact form 7 extension
5 Requires at least: 4.7 5 Requires at least: 4.7
6 Requires PHP: 5.6 6 Requires PHP: 5.6
7 Tested up to: 5.8.2 7 Tested up to: 5.8.3
8 Stable tag: trunk 8 Stable tag: trunk
9 License: GPLv2 or later 9 License: GPLv2 or later
10 License URI: http://www.gnu.org/licenses/gpl-2.0.html 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html
...@@ -543,6 +543,10 @@ The following have contributed to bug fixes, documentation, and/or translations ...@@ -543,6 +543,10 @@ The following have contributed to bug fixes, documentation, and/or translations
543 As of now there is no special upgrade notes, simply follow the normal plugin update process. 543 As of now there is no special upgrade notes, simply follow the normal plugin update process.
544 544
545 == Change Log == 545 == Change Log ==
546 = 5.4.6 =
547 * fix json-error on existing post meta-fields.
548 * fix submitted post checkbox in post editor.
549 * fix loading of default posts for loggedout users.
546 = 5.4.5 = 550 = 5.4.5 =
547 * fix quick edit form table css/warning msg/filter. 551 * fix quick edit form table css/warning msg/filter.
548 * fix factory source setup on initial admin page. 552 * fix factory source setup on initial admin page.
......
...@@ -535,18 +535,18 @@ class Cf7_2_Post_Admin { ...@@ -535,18 +535,18 @@ class Cf7_2_Post_Admin {
535 } 535 }
536 ?> 536 ?>
537 <span>Form:&nbsp;</span> 537 <span>Form:&nbsp;</span>
538 <input id="cf72post_submitted" type="checkbox" value="submitted" <?=$checked?>/> 538 <input class="cf72post-submitted" type="checkbox" value="submitted" <?=$checked?>/>
539 <label for="cf7_2_post_submitted">submitted.</label> 539 <label for="cf7_2_post_submitted">submitted.</label>
540 <p><em>Uncheck to flag this submission as un-submitted.</em> This will reload this post into the form when the its author logs in again.</p> 540 <p><em>Uncheck to flag this submission as un-submitted.</em> This will reload this post into the form when the its author logs in again.</p>
541 <input type="hidden" id="cf72post_submitted_hidden" name="cf7_2_post_submitted" value="<?= $submitted?>" <?= $hidden?>/> 541 <input type="hidden" id="cf72post-submitted-hidden" name="cf7_2_post_submitted" value="<?= $submitted?>" <?= $hidden?>/>
542 <script type="text/javascript"> 542 <script type="text/javascript">
543 (function( $ ) { 543 (function( $ ) {
544 $(document).ready(function(){ 544 $(document).ready(function(){
545 $('#cf72post_submitted').on('change', function(){ 545 $('input.cf72post-submitted').on('change', function(){
546 if( $(this).is(':checked') ){ 546 if( $(this).is(':checked') ){
547 $('#cf72post_submitted_hidden').val('yes'); 547 $('#cf72post-submitted-hidden').val('yes');
548 }else{ 548 }else{
549 $('#cf72post_submitted_hidden').val('no'); 549 $('#cf72post-submitted-hidden').val('no');
550 } 550 }
551 }); 551 });
552 }); 552 });
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
16 * Plugin Name: Post My CF7 Form 16 * Plugin Name: Post My CF7 Form
17 * Plugin URI: http://wordpress.syllogic.in 17 * Plugin URI: http://wordpress.syllogic.in
18 * Description: This plugin enables the mapping of your CF7 forms to custom posts. 18 * Description: This plugin enables the mapping of your CF7 forms to custom posts.
19 * Version: 5.4.5 19 * Version: 5.4.6
20 * Author: Aurovrata V. 20 * Author: Aurovrata V.
21 * Author URI: http://syllogic.in 21 * Author URI: http://syllogic.in
22 * License: GPL-2.0+ 22 * License: GPL-2.0+
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
29 if ( ! defined( 'WPINC' ) ) { 29 if ( ! defined( 'WPINC' ) ) {
30 die; 30 die;
31 } 31 }
32 define( 'CF7_2_POST_VERSION', '5.4.5' ); 32 define( 'CF7_2_POST_VERSION', '5.4.6' );
33 33
34 /** 34 /**
35 * The code that runs during plugin activation. 35 * The code that runs during plugin activation.
......
...@@ -547,9 +547,11 @@ class CF72Post_Mapping_Factory { ...@@ -547,9 +547,11 @@ class CF72Post_Mapping_Factory {
547 if(is_user_logged_in()){ //let's see if this form is already mapped for this user 547 if(is_user_logged_in()){ //let's see if this form is already mapped for this user
548 $user = wp_get_current_user(); 548 $user = wp_get_current_user();
549 $args['author'] = $user->ID; 549 $args['author'] = $user->ID;
550 } 550 }else $args = array();
551 551
552 $args = apply_filters('cf7_2_post_filter_user_draft_form_query', $args, $mapper->post_properties['type'], $mapper->cf7_key); 552 $args = apply_filters('cf7_2_post_filter_user_draft_form_query', $args, $mapper->post_properties['type'], $mapper->cf7_key);
553
554 if(!empty($args)){
553 $posts_array = get_posts( $args ); 555 $posts_array = get_posts( $args );
554 // debug_msg($args, "looking for posts.... found, ".sizeof($posts_array)); 556 // debug_msg($args, "looking for posts.... found, ".sizeof($posts_array));
555 if(!empty($posts_array)){ 557 if(!empty($posts_array)){
...@@ -558,6 +560,7 @@ class CF72Post_Mapping_Factory { ...@@ -558,6 +560,7 @@ class CF72Post_Mapping_Factory {
558 $field_and_values['map_post_id']= $post->ID; 560 $field_and_values['map_post_id']= $post->ID;
559 wp_reset_postdata(); 561 wp_reset_postdata();
560 } 562 }
563 }
561 564
562 //we now need to load the save meta field values 565 //we now need to load the save meta field values
563 foreach($mapper->get_post_map_fields() as $form_field => $post_field){ 566 foreach($mapper->get_post_map_fields() as $form_field => $post_field){
...@@ -1036,6 +1039,7 @@ class CF72Post_Mapping_Factory { ...@@ -1036,6 +1039,7 @@ class CF72Post_Mapping_Factory {
1036 $html = ''; 1039 $html = '';
1037 $select = '<option value="">'.__('Select a field','post-my-contact-form-7').'</option>'.PHP_EOL; 1040 $select = '<option value="">'.__('Select a field','post-my-contact-form-7').'</option>'.PHP_EOL;
1038 foreach($metas as $row){ 1041 foreach($metas as $row){
1042 if(empty(trim($row->meta_key))) continue; /** @since 5.4.6 */
1039 if( 0=== strpos( $row->meta_key, '_') && 1043 if( 0=== strpos( $row->meta_key, '_') &&
1040 /** 1044 /**
1041 * filter plugin specific (internal) meta fields starting with '_'. By defaults these are skiupped by this plugin. 1045 * filter plugin specific (internal) meta fields starting with '_'. By defaults these are skiupped by this plugin.
......
...@@ -798,10 +798,16 @@ abstract class Form_2_Post_Mapper { ...@@ -798,10 +798,16 @@ abstract class Form_2_Post_Mapper {
798 'post_status'=> $post_status, 798 'post_status'=> $post_status,
799 'post_title' => $post_title 799 'post_title' => $post_title
800 ); 800 );
801 $post_id = ''; 801 /** @since 5.5 integrate Stripe payment */
802 $post_id = false;
803 if ( empty( $_POST['_wpcf7_stripe_payment_intent'] )) {
804 $post_id = get_transient( $_POST['_cf72post_nonce'] );
805 }
802 $is_update = false; 806 $is_update = false;
803 if(isset($_POST['_map_post_id']) && !empty($_POST['_map_post_id'])){ 807 if(isset($_POST['_map_post_id']) && !empty($_POST['_map_post_id'])){
804 $post_id = $_POST['_map_post_id']; //this is an existing post being updated 808 $post_id = $_POST['_map_post_id']; //this is an existing post being updated
809 }
810 if(!empty($post_id)){
805 $wp_post = get_post($post_id); 811 $wp_post = get_post($post_id);
806 $post['post_status'] = $post_status; 812 $post['post_status'] = $post_status;
807 $post['post_author'] = $wp_post->post_author; 813 $post['post_author'] = $wp_post->post_author;
......
...@@ -403,7 +403,7 @@ class Cf7_2_Post_Public { ...@@ -403,7 +403,7 @@ class Cf7_2_Post_Public {
403 } 403 }
404 /** 404 /**
405 * Map author to hidden field on form load. 405 * Map author to hidden field on form load.
406 * 406 * Hooked to 'wpcf7_form_hidden_fields'
407 *@since 3.9.0 407 *@since 3.9.0
408 *@param array $param array of hidden fields 408 *@param array $param array of hidden fields
409 *@return array array of hidden fields 409 *@return array array of hidden fields
......
...@@ -18,11 +18,17 @@ use Nextend\Framework\Plugin; ...@@ -18,11 +18,17 @@ use Nextend\Framework\Plugin;
18 18
19 /* 19 /*
20 jQuery.getJSON('https://www.googleapis.com/webfonts/v1/webfonts?sort=alpha&key=AIzaSyBIzBtder0-ef5a6kX-Ri9IfzVwFu21PGw').done(function(data){ 20 jQuery.getJSON('https://www.googleapis.com/webfonts/v1/webfonts?sort=alpha&key=AIzaSyBIzBtder0-ef5a6kX-Ri9IfzVwFu21PGw').done(function(data){
21 var f = []; 21 var f = [];
22 for(var i = 0; i < data.items.length; i++){ 22 for(var i = 0; i < data.items.length; i++){
23 f.push(data.items[i].family); 23 f.push(data.items[i].family);
24 } 24 }
25 console.log(JSON.stringify(f)); 25
26 var fontString='';
27 f.forEach(function(font){
28 fontString+= font+'\n';
29 });
30
31 console.log(fontString);
26 }); 32 });
27 */ 33 */
28 34
......
...@@ -17,9 +17,9 @@ Alatsi ...@@ -17,9 +17,9 @@ Alatsi
17 Aldrich 17 Aldrich
18 Alef 18 Alef
19 Alegreya 19 Alegreya
20 Alegreya SC
20 Alegreya Sans 21 Alegreya Sans
21 Alegreya Sans SC 22 Alegreya Sans SC
22 Alegreya SC
23 Aleo 23 Aleo
24 Alex Brush 24 Alex Brush
25 Alfa Slab One 25 Alfa Slab One
...@@ -29,21 +29,22 @@ Alike Angular ...@@ -29,21 +29,22 @@ Alike Angular
29 Allan 29 Allan
30 Allerta 30 Allerta
31 Allerta Stencil 31 Allerta Stencil
32 Allison
32 Allura 33 Allura
33 Almarai 34 Almarai
34 Almendra 35 Almendra
35 Almendra Display 36 Almendra Display
36 Almendra SC 37 Almendra SC
38 Alumni Sans
37 Amarante 39 Amarante
38 Amaranth 40 Amaranth
39 Amatic SC 41 Amatic SC
40 Amatica SC
41 Amethysta 42 Amethysta
42 Amiko 43 Amiko
43 Amiri 44 Amiri
44 Amita 45 Amita
45 Anaheim 46 Anaheim
46 Andada 47 Andada Pro
47 Andika 48 Andika
48 Andika New Basic 49 Andika New Basic
49 Angkor 50 Angkor
...@@ -61,6 +62,7 @@ Architects Daughter ...@@ -61,6 +62,7 @@ Architects Daughter
61 Archivo 62 Archivo
62 Archivo Black 63 Archivo Black
63 Archivo Narrow 64 Archivo Narrow
65 Are You Serious
64 Aref Ruqaa 66 Aref Ruqaa
65 Arima Madurai 67 Arima Madurai
66 Arimo 68 Arimo
...@@ -78,6 +80,7 @@ Assistant ...@@ -78,6 +80,7 @@ Assistant
78 Astloch 80 Astloch
79 Asul 81 Asul
80 Athiti 82 Athiti
83 Atkinson Hyperlegible
81 Atma 84 Atma
82 Atomic Age 85 Atomic Age
83 Aubrey 86 Aubrey
...@@ -89,31 +92,24 @@ Averia Gruesa Libre ...@@ -89,31 +92,24 @@ Averia Gruesa Libre
89 Averia Libre 92 Averia Libre
90 Averia Sans Libre 93 Averia Sans Libre
91 Averia Serif Libre 94 Averia Serif Libre
95 Azeret Mono
92 B612 96 B612
93 B612 Mono 97 B612 Mono
94 Bad Script 98 Bad Script
95 Bahiana 99 Bahiana
96 Bahianita 100 Bahianita
97 Bai Jamjuree 101 Bai Jamjuree
102 Bakbak One
98 Ballet 103 Ballet
99 Baloo
100 Baloo 2 104 Baloo 2
101 Baloo Bhai
102 Baloo Bhai 2 105 Baloo Bhai 2
103 Baloo Bhaijaan 106 Baloo Bhaijaan 2
104 Baloo Bhaina
105 Baloo Bhaina 2 107 Baloo Bhaina 2
106 Baloo Chettan
107 Baloo Chettan 2 108 Baloo Chettan 2
108 Baloo Da
109 Baloo Da 2 109 Baloo Da 2
110 Baloo Paaji
111 Baloo Paaji 2 110 Baloo Paaji 2
112 Baloo Tamma
113 Baloo Tamma 2 111 Baloo Tamma 2
114 Baloo Tammudu
115 Baloo Tammudu 2 112 Baloo Tammudu 2
116 Baloo Thambi
117 Baloo Thambi 2 113 Baloo Thambi 2
118 Balsamiq Sans 114 Balsamiq Sans
119 Balthazar 115 Balthazar
...@@ -128,7 +124,7 @@ Baskervville ...@@ -128,7 +124,7 @@ Baskervville
128 Battambang 124 Battambang
129 Baumans 125 Baumans
130 Bayon 126 Bayon
131 Be Vietnam 127 Be Vietnam Pro
132 Bebas Neue 128 Bebas Neue
133 Belgrano 129 Belgrano
134 Bellefair 130 Bellefair
...@@ -139,6 +135,7 @@ BenchNine ...@@ -139,6 +135,7 @@ BenchNine
139 Benne 135 Benne
140 Bentham 136 Bentham
141 Berkshire Swash 137 Berkshire Swash
138 Besley
142 Beth Ellen 139 Beth Ellen
143 Bevan 140 Bevan
144 Big Shoulders Display 141 Big Shoulders Display
...@@ -153,6 +150,8 @@ Bilbo ...@@ -153,6 +150,8 @@ Bilbo
153 Bilbo Swash Caps 150 Bilbo Swash Caps
154 BioRhyme 151 BioRhyme
155 BioRhyme Expanded 152 BioRhyme Expanded
153 Birthstone
154 Birthstone Bounce
156 Biryani 155 Biryani
157 Bitter 156 Bitter
158 Black And White Picture 157 Black And White Picture
...@@ -163,6 +162,7 @@ Bodoni Moda ...@@ -163,6 +162,7 @@ Bodoni Moda
163 Bokor 162 Bokor
164 Bona Nova 163 Bona Nova
165 Bonbon 164 Bonbon
165 Bonheur Royale
166 Boogaloo 166 Boogaloo
167 Bowlby One 167 Bowlby One
168 Bowlby One SC 168 Bowlby One SC
...@@ -196,6 +196,8 @@ Cantarell ...@@ -196,6 +196,8 @@ Cantarell
196 Cantata One 196 Cantata One
197 Cantora One 197 Cantora One
198 Capriola 198 Capriola
199 Caramel
200 Carattere
199 Cardo 201 Cardo
200 Carme 202 Carme
201 Carrois Gothic 203 Carrois Gothic
...@@ -219,6 +221,7 @@ Chau Philomene One ...@@ -219,6 +221,7 @@ Chau Philomene One
219 Chela One 221 Chela One
220 Chelsea Market 222 Chelsea Market
221 Chenla 223 Chenla
224 Cherish
222 Cherry Cream Soda 225 Cherry Cream Soda
223 Cherry Swash 226 Cherry Swash
224 Chewy 227 Chewy
...@@ -235,6 +238,8 @@ Codystar ...@@ -235,6 +238,8 @@ Codystar
235 Coiny 238 Coiny
236 Combo 239 Combo
237 Comfortaa 240 Comfortaa
241 Comforter
242 Comforter Brush
238 Comic Neue 243 Comic Neue
239 Coming Soon 244 Coming Soon
240 Commissioner 245 Commissioner
...@@ -246,6 +251,7 @@ Convergence ...@@ -246,6 +251,7 @@ Convergence
246 Cookie 251 Cookie
247 Copse 252 Copse
248 Corben 253 Corben
254 Corinthia
249 Cormorant 255 Cormorant
250 Cormorant Garamond 256 Cormorant Garamond
251 Cormorant Infant 257 Cormorant Infant
...@@ -261,13 +267,16 @@ Crafty Girls ...@@ -261,13 +267,16 @@ Crafty Girls
261 Creepster 267 Creepster
262 Crete Round 268 Crete Round
263 Crimson Pro 269 Crimson Pro
264 Crimson Text
265 Croissant One 270 Croissant One
266 Crushed 271 Crushed
267 Cuprum 272 Cuprum
268 Cute Font 273 Cute Font
269 Cutive 274 Cutive
270 Cutive Mono 275 Cutive Mono
276 DM Mono
277 DM Sans
278 DM Serif Display
279 DM Serif Text
271 Damion 280 Damion
272 Dancing Script 281 Dancing Script
273 Dangrek 282 Dangrek
...@@ -287,31 +296,24 @@ Dhurjati ...@@ -287,31 +296,24 @@ Dhurjati
287 Didact Gothic 296 Didact Gothic
288 Diplomata 297 Diplomata
289 Diplomata SC 298 Diplomata SC
290 DM Mono
291 DM Sans
292 DM Serif Display
293 DM Serif Text
294 Do Hyeon 299 Do Hyeon
295 Dokdo 300 Dokdo
296 Domine 301 Domine
297 Donegal One 302 Donegal One
303 Dongle
298 Doppio One 304 Doppio One
299 Dorsa 305 Dorsa
300 Dosis 306 Dosis
301 DotGothic16 307 DotGothic16
302 Dr Sugiyama 308 Dr Sugiyama
303 Droid Sans
304 Droid Sans Mono
305 Droid Serif
306 Duru Sans 309 Duru Sans
307 Dynalight 310 Dynalight
311 EB Garamond
308 Eagle Lake 312 Eagle Lake
309 East Sea Dokdo 313 East Sea Dokdo
310 Eater 314 Eater
311 EB Garamond
312 Economica 315 Economica
313 Eczar 316 Eczar
314 Ek Mukta
315 El Messiri 317 El Messiri
316 Electrolize 318 Electrolize
317 Elsie 319 Elsie
...@@ -327,14 +329,17 @@ Encode Sans Semi Expanded ...@@ -327,14 +329,17 @@ Encode Sans Semi Expanded
327 Engagement 329 Engagement
328 Englebert 330 Englebert
329 Enriqueta 331 Enriqueta
332 Ephesis
330 Epilogue 333 Epilogue
331 Erica One 334 Erica One
332 Esteban 335 Esteban
336 Estonia
333 Euphoria Script 337 Euphoria Script
334 Ewert 338 Ewert
335 Exo 339 Exo
336 Exo 2 340 Exo 2
337 Expletus Sans 341 Expletus Sans
342 Explora
338 Fahkwang 343 Fahkwang
339 Fanwood Text 344 Fanwood Text
340 Farro 345 Farro
...@@ -360,6 +365,10 @@ Fjalla One ...@@ -360,6 +365,10 @@ Fjalla One
360 Fjord One 365 Fjord One
361 Flamenco 366 Flamenco
362 Flavors 367 Flavors
368 Fleur De Leah
369 Flow Block
370 Flow Circular
371 Flow Rounded
363 Fondamento 372 Fondamento
364 Fontdiner Swanky 373 Fontdiner Swanky
365 Forum 374 Forum
...@@ -375,6 +384,9 @@ Frijole ...@@ -375,6 +384,9 @@ Frijole
375 Fruktur 384 Fruktur
376 Fugaz One 385 Fugaz One
377 Fuggles 386 Fuggles
387 Fuzzy Bubbles
388 GFS Didot
389 GFS Neohellenic
378 Gabriela 390 Gabriela
379 Gaegu 391 Gaegu
380 Gafata 392 Gafata
...@@ -384,14 +396,16 @@ Galindo ...@@ -384,14 +396,16 @@ Galindo
384 Gamja Flower 396 Gamja Flower
385 Gayathri 397 Gayathri
386 Gelasio 398 Gelasio
399 Gemunu Libre
400 Genos
387 Gentium Basic 401 Gentium Basic
388 Gentium Book Basic 402 Gentium Book Basic
389 Geo 403 Geo
404 Georama
390 Geostar 405 Geostar
391 Geostar Fill 406 Geostar Fill
392 Germania One 407 Germania One
393 GFS Didot 408 Gideon Roman
394 GFS Neohellenic
395 Gidugu 409 Gidugu
396 Gilda Display 410 Gilda Display
397 Girassol 411 Girassol
...@@ -399,6 +413,8 @@ Give You Glory ...@@ -399,6 +413,8 @@ Give You Glory
399 Glass Antiqua 413 Glass Antiqua
400 Glegoo 414 Glegoo
401 Gloria Hallelujah 415 Gloria Hallelujah
416 Glory
417 Gluten
402 Goblin One 418 Goblin One
403 Gochi Hand 419 Gochi Hand
404 Goldman 420 Goldman
...@@ -406,21 +422,27 @@ Gorditas ...@@ -406,21 +422,27 @@ Gorditas
406 Gothic A1 422 Gothic A1
407 Gotu 423 Gotu
408 Goudy Bookletter 1911 424 Goudy Bookletter 1911
425 Gowun Batang
426 Gowun Dodum
409 Graduate 427 Graduate
410 Grand Hotel 428 Grand Hotel
411 Grandstander 429 Grandstander
412 Gravitas One 430 Gravitas One
413 Great Vibes 431 Great Vibes
432 Grechen Fuemen
414 Grenze 433 Grenze
415 Grenze Gotisch 434 Grenze Gotisch
435 Grey Qo
416 Griffy 436 Griffy
417 Gruppo 437 Gruppo
418 Gudea 438 Gudea
419 Gugi 439 Gugi
420 Gupter 440 Gupter
421 Gurajada 441 Gurajada
442 Gwendolyn
422 Habibi 443 Habibi
423 Hachi Maru Pop 444 Hachi Maru Pop
445 Hahmlet
424 Halant 446 Halant
425 Hammersmith One 447 Hammersmith One
426 Hanalei 448 Hanalei
...@@ -435,6 +457,7 @@ Henny Penny ...@@ -435,6 +457,7 @@ Henny Penny
435 Hepta Slab 457 Hepta Slab
436 Herr Von Muellerhoff 458 Herr Von Muellerhoff
437 Hi Melody 459 Hi Melody
460 Hina Mincho
438 Hind 461 Hind
439 Hind Guntur 462 Hind Guntur
440 Hind Madurai 463 Hind Madurai
...@@ -443,24 +466,32 @@ Hind Vadodara ...@@ -443,24 +466,32 @@ Hind Vadodara
443 Holtwood One SC 466 Holtwood One SC
444 Homemade Apple 467 Homemade Apple
445 Homenaje 468 Homenaje
446 Ibarra Real Nova 469 Hurricane
447 IBM Plex Mono 470 IBM Plex Mono
448 IBM Plex Sans 471 IBM Plex Sans
472 IBM Plex Sans Arabic
449 IBM Plex Sans Condensed 473 IBM Plex Sans Condensed
474 IBM Plex Sans Devanagari
475 IBM Plex Sans Hebrew
476 IBM Plex Sans KR
477 IBM Plex Sans Thai
478 IBM Plex Sans Thai Looped
450 IBM Plex Serif 479 IBM Plex Serif
451 Iceberg
452 Iceland
453 IM Fell Double Pica
454 IM Fell Double Pica SC
455 IM Fell DW Pica 480 IM Fell DW Pica
456 IM Fell DW Pica SC 481 IM Fell DW Pica SC
482 IM Fell Double Pica
483 IM Fell Double Pica SC
457 IM Fell English 484 IM Fell English
458 IM Fell English SC 485 IM Fell English SC
459 IM Fell French Canon 486 IM Fell French Canon
460 IM Fell French Canon SC 487 IM Fell French Canon SC
461 IM Fell Great Primer 488 IM Fell Great Primer
462 IM Fell Great Primer SC 489 IM Fell Great Primer SC
490 Ibarra Real Nova
491 Iceberg
492 Iceland
463 Imbue 493 Imbue
494 Imperial Script
464 Imprima 495 Imprima
465 Inconsolata 496 Inconsolata
466 Inder 497 Inder
...@@ -469,8 +500,10 @@ Inika ...@@ -469,8 +500,10 @@ Inika
469 Inknut Antiqua 500 Inknut Antiqua
470 Inria Sans 501 Inria Sans
471 Inria Serif 502 Inria Serif
503 Inspiration
472 Inter 504 Inter
473 Irish Grover 505 Irish Grover
506 Island Moments
474 Istok Web 507 Istok Web
475 Italiana 508 Italiana
476 Italianno 509 Italianno
...@@ -498,6 +531,10 @@ Just Another Hand ...@@ -498,6 +531,10 @@ Just Another Hand
498 Just Me Again Down Here 531 Just Me Again Down Here
499 K2D 532 K2D
500 Kadwa 533 Kadwa
534 Kaisei Decol
535 Kaisei HarunoUmi
536 Kaisei Opti
537 Kaisei Tokumin
501 Kalam 538 Kalam
502 Kameron 539 Kameron
503 Kanit 540 Kanit
...@@ -516,12 +553,16 @@ Kenia ...@@ -516,12 +553,16 @@ Kenia
516 Khand 553 Khand
517 Khmer 554 Khmer
518 Khula 555 Khula
556 Kings
519 Kirang Haerang 557 Kirang Haerang
520 Kite One 558 Kite One
521 Kiwi Maru 559 Kiwi Maru
560 Klee One
522 Knewave 561 Knewave
523 Kodchasan
524 KoHo 562 KoHo
563 Kodchasan
564 Koh Santepheap
565 Kolker Brush
525 Kosugi 566 Kosugi
526 Kosugi Maru 567 Kosugi Maru
527 Kotta One 568 Kotta One
...@@ -571,6 +612,7 @@ Libre Baskerville ...@@ -571,6 +612,7 @@ Libre Baskerville
571 Libre Caslon Display 612 Libre Caslon Display
572 Libre Caslon Text 613 Libre Caslon Text
573 Libre Franklin 614 Libre Franklin
615 Licorice
574 Life Savers 616 Life Savers
575 Lilita One 617 Lilita One
576 Lily Script One 618 Lily Script One
...@@ -587,13 +629,20 @@ Londrina Sketch ...@@ -587,13 +629,20 @@ Londrina Sketch
587 Londrina Solid 629 Londrina Solid
588 Long Cang 630 Long Cang
589 Lora 631 Lora
632 Love Light
590 Love Ya Like A Sister 633 Love Ya Like A Sister
591 Loved by the King 634 Loved by the King
592 Lovers Quarrel 635 Lovers Quarrel
593 Luckiest Guy 636 Luckiest Guy
594 Lusitana 637 Lusitana
595 Lustria 638 Lustria
639 Luxurious Roman
640 Luxurious Script
641 M PLUS 1
642 M PLUS 1 Code
596 M PLUS 1p 643 M PLUS 1p
644 M PLUS 2
645 M PLUS Code Latin
597 M PLUS Rounded 1c 646 M PLUS Rounded 1c
598 Ma Shan Zheng 647 Ma Shan Zheng
599 Macondo 648 Macondo
...@@ -625,12 +674,14 @@ Mate ...@@ -625,12 +674,14 @@ Mate
625 Mate SC 674 Mate SC
626 Maven Pro 675 Maven Pro
627 McLaren 676 McLaren
677 Mea Culpa
628 Meddon 678 Meddon
629 MedievalSharp 679 MedievalSharp
630 Medula One 680 Medula One
631 Meera Inimai 681 Meera Inimai
632 Megrim 682 Megrim
633 Meie Script 683 Meie Script
684 Meow Script
634 Merienda 685 Merienda
635 Merienda One 686 Merienda One
636 Merriweather 687 Merriweather
...@@ -649,9 +700,12 @@ Miriam Libre ...@@ -649,9 +700,12 @@ Miriam Libre
649 Mirza 700 Mirza
650 Miss Fajardose 701 Miss Fajardose
651 Mitr 702 Mitr
703 Mochiy Pop One
704 Mochiy Pop P One
652 Modak 705 Modak
653 Modern Antiqua 706 Modern Antiqua
654 Mogra 707 Mogra
708 Mohave
655 Molengo 709 Molengo
656 Molle 710 Molle
657 Monda 711 Monda
...@@ -659,10 +713,14 @@ Monofett ...@@ -659,10 +713,14 @@ Monofett
659 Monoton 713 Monoton
660 Monsieur La Doulaise 714 Monsieur La Doulaise
661 Montaga 715 Montaga
716 Montagu Slab
717 MonteCarlo
662 Montez 718 Montez
663 Montserrat 719 Montserrat
664 Montserrat Alternates 720 Montserrat Alternates
665 Montserrat Subrayada 721 Montserrat Subrayada
722 Moo Lah Lah
723 Moon Dance
666 Moul 724 Moul
667 Moulpali 725 Moulpali
668 Mountains of Christmas 726 Mountains of Christmas
...@@ -676,10 +734,11 @@ Mukta ...@@ -676,10 +734,11 @@ Mukta
676 Mukta Mahee 734 Mukta Mahee
677 Mukta Malar 735 Mukta Malar
678 Mukta Vaani 736 Mukta Vaani
679 Muli
680 Mulish 737 Mulish
738 Murecho
681 MuseoModerno 739 MuseoModerno
682 Mystery Quest 740 Mystery Quest
741 NTR
683 Nanum Brush Script 742 Nanum Brush Script
684 Nanum Gothic 743 Nanum Gothic
685 Nanum Gothic Coding 744 Nanum Gothic Coding
...@@ -702,17 +761,189 @@ Nosifer ...@@ -702,17 +761,189 @@ Nosifer
702 Notable 761 Notable
703 Nothing You Could Do 762 Nothing You Could Do
704 Noticia Text 763 Noticia Text
764 Noto Kufi Arabic
765 Noto Music
766 Noto Naskh Arabic
767 Noto Nastaliq Urdu
768 Noto Rashi Hebrew
705 Noto Sans 769 Noto Sans
770 Noto Sans Adlam
771 Noto Sans Adlam Unjoined
772 Noto Sans Anatolian Hieroglyphs
773 Noto Sans Arabic
774 Noto Sans Armenian
775 Noto Sans Avestan
776 Noto Sans Balinese
777 Noto Sans Bamum
778 Noto Sans Bassa Vah
779 Noto Sans Batak
780 Noto Sans Bengali
781 Noto Sans Bhaiksuki
782 Noto Sans Brahmi
783 Noto Sans Buginese
784 Noto Sans Buhid
785 Noto Sans Canadian Aboriginal
786 Noto Sans Carian
787 Noto Sans Caucasian Albanian
788 Noto Sans Chakma
789 Noto Sans Cham
790 Noto Sans Cherokee
791 Noto Sans Coptic
792 Noto Sans Cuneiform
793 Noto Sans Cypriot
794 Noto Sans Deseret
795 Noto Sans Devanagari
796 Noto Sans Display
797 Noto Sans Duployan
798 Noto Sans Egyptian Hieroglyphs
799 Noto Sans Elbasan
800 Noto Sans Elymaic
801 Noto Sans Georgian
802 Noto Sans Glagolitic
803 Noto Sans Gothic
804 Noto Sans Grantha
805 Noto Sans Gujarati
806 Noto Sans Gunjala Gondi
807 Noto Sans Gurmukhi
706 Noto Sans HK 808 Noto Sans HK
809 Noto Sans Hanifi Rohingya
810 Noto Sans Hanunoo
811 Noto Sans Hatran
812 Noto Sans Hebrew
813 Noto Sans Imperial Aramaic
814 Noto Sans Indic Siyaq Numbers
815 Noto Sans Inscriptional Pahlavi
816 Noto Sans Inscriptional Parthian
707 Noto Sans JP 817 Noto Sans JP
818 Noto Sans Javanese
708 Noto Sans KR 819 Noto Sans KR
820 Noto Sans Kaithi
821 Noto Sans Kannada
822 Noto Sans Kayah Li
823 Noto Sans Kharoshthi
824 Noto Sans Khmer
825 Noto Sans Khojki
826 Noto Sans Khudawadi
827 Noto Sans Lao
828 Noto Sans Lepcha
829 Noto Sans Limbu
830 Noto Sans Linear A
831 Noto Sans Linear B
832 Noto Sans Lisu
833 Noto Sans Lycian
834 Noto Sans Lydian
835 Noto Sans Mahajani
836 Noto Sans Malayalam
837 Noto Sans Mandaic
838 Noto Sans Manichaean
839 Noto Sans Marchen
840 Noto Sans Masaram Gondi
841 Noto Sans Math
842 Noto Sans Mayan Numerals
843 Noto Sans Medefaidrin
844 Noto Sans Meetei Mayek
845 Noto Sans Meroitic
846 Noto Sans Miao
847 Noto Sans Modi
848 Noto Sans Mongolian
849 Noto Sans Mono
850 Noto Sans Mro
851 Noto Sans Multani
852 Noto Sans Myanmar
853 Noto Sans N Ko
854 Noto Sans Nabataean
855 Noto Sans New Tai Lue
856 Noto Sans Newa
857 Noto Sans Nushu
858 Noto Sans Ogham
859 Noto Sans Ol Chiki
860 Noto Sans Old Hungarian
861 Noto Sans Old Italic
862 Noto Sans Old North Arabian
863 Noto Sans Old Permic
864 Noto Sans Old Persian
865 Noto Sans Old Sogdian
866 Noto Sans Old South Arabian
867 Noto Sans Old Turkic
868 Noto Sans Oriya
869 Noto Sans Osage
870 Noto Sans Osmanya
871 Noto Sans Pahawh Hmong
872 Noto Sans Palmyrene
873 Noto Sans Pau Cin Hau
874 Noto Sans Phags Pa
875 Noto Sans Phoenician
876 Noto Sans Psalter Pahlavi
877 Noto Sans Rejang
878 Noto Sans Runic
709 Noto Sans SC 879 Noto Sans SC
880 Noto Sans Samaritan
881 Noto Sans Saurashtra
882 Noto Sans Sharada
883 Noto Sans Shavian
884 Noto Sans Siddham
885 Noto Sans Sinhala
886 Noto Sans Sogdian
887 Noto Sans Sora Sompeng
888 Noto Sans Soyombo
889 Noto Sans Sundanese
890 Noto Sans Syloti Nagri
891 Noto Sans Symbols
892 Noto Sans Symbols 2
893 Noto Sans Syriac
710 Noto Sans TC 894 Noto Sans TC
895 Noto Sans Tagalog
896 Noto Sans Tagbanwa
897 Noto Sans Tai Le
898 Noto Sans Tai Tham
899 Noto Sans Tai Viet
900 Noto Sans Takri
901 Noto Sans Tamil
902 Noto Sans Tamil Supplement
903 Noto Sans Telugu
904 Noto Sans Thaana
905 Noto Sans Thai
906 Noto Sans Thai Looped
907 Noto Sans Tifinagh
908 Noto Sans Tirhuta
909 Noto Sans Ugaritic
910 Noto Sans Vai
911 Noto Sans Wancho
912 Noto Sans Warang Citi
913 Noto Sans Yi
914 Noto Sans Zanabazar Square
711 Noto Serif 915 Noto Serif
916 Noto Serif Ahom
917 Noto Serif Armenian
918 Noto Serif Balinese
919 Noto Serif Bengali
920 Noto Serif Devanagari
921 Noto Serif Display
922 Noto Serif Dogra
923 Noto Serif Ethiopic
924 Noto Serif Georgian
925 Noto Serif Grantha
926 Noto Serif Gujarati
927 Noto Serif Gurmukhi
928 Noto Serif Hebrew
712 Noto Serif JP 929 Noto Serif JP
713 Noto Serif KR 930 Noto Serif KR
931 Noto Serif Kannada
932 Noto Serif Khmer
933 Noto Serif Lao
934 Noto Serif Malayalam
935 Noto Serif Myanmar
936 Noto Serif Nyiakeng Puachue Hmong
714 Noto Serif SC 937 Noto Serif SC
938 Noto Serif Sinhala
715 Noto Serif TC 939 Noto Serif TC
940 Noto Serif Tamil
941 Noto Serif Tangut
942 Noto Serif Telugu
943 Noto Serif Thai
944 Noto Serif Tibetan
945 Noto Serif Yezidi
946 Noto Traditional Nushu
716 Nova Cut 947 Nova Cut
717 Nova Flat 948 Nova Flat
718 Nova Mono 949 Nova Mono
...@@ -721,7 +952,6 @@ Nova Round ...@@ -721,7 +952,6 @@ Nova Round
721 Nova Script 952 Nova Script
722 Nova Slim 953 Nova Slim
723 Nova Square 954 Nova Square
724 NTR
725 Numans 955 Numans
726 Nunito 956 Nunito
727 Nunito Sans 957 Nunito Sans
...@@ -731,8 +961,10 @@ Offside ...@@ -731,8 +961,10 @@ Offside
731 Oi 961 Oi
732 Old Standard TT 962 Old Standard TT
733 Oldenburg 963 Oldenburg
964 Ole
734 Oleo Script 965 Oleo Script
735 Oleo Script Swash Caps 966 Oleo Script Swash Caps
967 Oooh Baby
736 Open Sans 968 Open Sans
737 Open Sans Condensed 969 Open Sans Condensed
738 Oranienbaum 970 Oranienbaum
...@@ -743,6 +975,7 @@ Orienta ...@@ -743,6 +975,7 @@ Orienta
743 Original Surfer 975 Original Surfer
744 Oswald 976 Oswald
745 Otomanopee One 977 Otomanopee One
978 Outfit
746 Over the Rainbow 979 Over the Rainbow
747 Overlock 980 Overlock
748 Overlock SC 981 Overlock SC
...@@ -752,15 +985,23 @@ Ovo ...@@ -752,15 +985,23 @@ Ovo
752 Oxanium 985 Oxanium
753 Oxygen 986 Oxygen
754 Oxygen Mono 987 Oxygen Mono
988 PT Mono
989 PT Sans
990 PT Sans Caption
991 PT Sans Narrow
992 PT Serif
993 PT Serif Caption
755 Pacifico 994 Pacifico
756 Padauk 995 Padauk
757 Palanquin 996 Palanquin
758 Palanquin Dark 997 Palanquin Dark
998 Palette Mosaic
759 Pangolin 999 Pangolin
760 Paprika 1000 Paprika
761 Parisienne 1001 Parisienne
762 Passero One 1002 Passero One
763 Passion One 1003 Passion One
1004 Passions Conflict
764 Pathway Gothic One 1005 Pathway Gothic One
765 Patrick Hand 1006 Patrick Hand
766 Patrick Hand SC 1007 Patrick Hand SC
...@@ -771,6 +1012,7 @@ Paytone One ...@@ -771,6 +1012,7 @@ Paytone One
771 Peddana 1012 Peddana
772 Peralta 1013 Peralta
773 Permanent Marker 1014 Permanent Marker
1015 Petemoss
774 Petit Formal Script 1016 Petit Formal Script
775 Petrona 1017 Petrona
776 Philosopher 1018 Philosopher
...@@ -795,6 +1037,7 @@ Port Lligat Sans ...@@ -795,6 +1037,7 @@ Port Lligat Sans
795 Port Lligat Slab 1037 Port Lligat Slab
796 Potta One 1038 Potta One
797 Pragati Narrow 1039 Pragati Narrow
1040 Praise
798 Prata 1041 Prata
799 Preahvihear 1042 Preahvihear
800 Press Start 2P 1043 Press Start 2P
...@@ -804,13 +1047,8 @@ Prociono ...@@ -804,13 +1047,8 @@ Prociono
804 Prompt 1047 Prompt
805 Prosto One 1048 Prosto One
806 Proza Libre 1049 Proza Libre
807 PT Mono
808 PT Sans
809 PT Sans Caption
810 PT Sans Narrow
811 PT Serif
812 PT Serif Caption
813 Public Sans 1050 Public Sans
1051 Puppies Play
814 Puritan 1052 Puritan
815 Purple Purse 1053 Purple Purse
816 Qahiri 1054 Qahiri
...@@ -822,6 +1060,7 @@ Questrial ...@@ -822,6 +1060,7 @@ Questrial
822 Quicksand 1060 Quicksand
823 Quintessential 1061 Quintessential
824 Qwigley 1062 Qwigley
1063 Qwitcher Grypen
825 Racing Sans One 1064 Racing Sans One
826 Radley 1065 Radley
827 Rajdhani 1066 Rajdhani
...@@ -832,16 +1071,21 @@ Ramabhadra ...@@ -832,16 +1071,21 @@ Ramabhadra
832 Ramaraja 1071 Ramaraja
833 Rambla 1072 Rambla
834 Rammetto One 1073 Rammetto One
1074 Rampart One
835 Ranchers 1075 Ranchers
836 Rancho 1076 Rancho
837 Ranga 1077 Ranga
838 Rasa 1078 Rasa
839 Rationale 1079 Rationale
840 Ravi Prakash 1080 Ravi Prakash
1081 Readex Pro
841 Recursive 1082 Recursive
842 Red Hat Display 1083 Red Hat Display
1084 Red Hat Mono
843 Red Hat Text 1085 Red Hat Text
844 Red Rose 1086 Red Rose
1087 Redacted
1088 Redacted Script
845 Redressed 1089 Redressed
846 Reem Kufi 1090 Reem Kufi
847 Reenie Beanie 1091 Reenie Beanie
...@@ -852,11 +1096,13 @@ Ribeye ...@@ -852,11 +1096,13 @@ Ribeye
852 Ribeye Marrow 1096 Ribeye Marrow
853 Righteous 1097 Righteous
854 Risque 1098 Risque
1099 Road Rage
855 Roboto 1100 Roboto
856 Roboto Condensed 1101 Roboto Condensed
857 Roboto Mono 1102 Roboto Mono
858 Roboto Slab 1103 Roboto Slab
859 Rochester 1104 Rochester
1105 Rock 3D
860 Rock Salt 1106 Rock Salt
861 RocknRoll One 1107 RocknRoll One
862 Rokkitt 1108 Rokkitt
...@@ -868,8 +1114,8 @@ Rouge Script ...@@ -868,8 +1114,8 @@ Rouge Script
868 Rowdies 1114 Rowdies
869 Rozha One 1115 Rozha One
870 Rubik 1116 Rubik
1117 Rubik Beastly
871 Rubik Mono One 1118 Rubik Mono One
872 Rubik One
873 Ruda 1119 Ruda
874 Rufina 1120 Rufina
875 Ruge Boogie 1121 Ruge Boogie
...@@ -879,6 +1125,7 @@ Ruslan Display ...@@ -879,6 +1125,7 @@ Ruslan Display
879 Russo One 1125 Russo One
880 Ruthie 1126 Ruthie
881 Rye 1127 Rye
1128 STIX Two Text
882 Sacramento 1129 Sacramento
883 Sahitya 1130 Sahitya
884 Sail 1131 Sail
...@@ -891,17 +1138,17 @@ Salsa ...@@ -891,17 +1138,17 @@ Salsa
891 Sanchez 1138 Sanchez
892 Sancreek 1139 Sancreek
893 Sansita 1140 Sansita
894 Sansita One
895 Sansita Swashed 1141 Sansita Swashed
896 Sarabun 1142 Sarabun
897 Sarala 1143 Sarala
898 Sarina 1144 Sarina
899 Sarpanch 1145 Sarpanch
1146 Sassy Frass
900 Satisfy 1147 Satisfy
901 Sawarabi Gothic 1148 Sawarabi Gothic
902 Sawarabi Mincho 1149 Sawarabi Mincho
903 Scada 1150 Scada
904 Scheherazade 1151 Scheherazade New
905 Schoolbell 1152 Schoolbell
906 Scope One 1153 Scope One
907 Seaweed Script 1154 Seaweed Script
...@@ -913,12 +1160,16 @@ Sevillana ...@@ -913,12 +1160,16 @@ Sevillana
913 Seymour One 1160 Seymour One
914 Shadows Into Light 1161 Shadows Into Light
915 Shadows Into Light Two 1162 Shadows Into Light Two
1163 Shalimar
916 Shanti 1164 Shanti
917 Share 1165 Share
918 Share Tech 1166 Share Tech
919 Share Tech Mono 1167 Share Tech Mono
1168 Shippori Antique
1169 Shippori Antique B1
920 Shippori Mincho 1170 Shippori Mincho
921 Shippori Mincho B1 1171 Shippori Mincho B1
1172 Shizuru
922 Shojumaru 1173 Shojumaru
923 Short Stack 1174 Short Stack
924 Shrikhand 1175 Shrikhand
...@@ -936,6 +1187,7 @@ Slabo 13px ...@@ -936,6 +1187,7 @@ Slabo 13px
936 Slabo 27px 1187 Slabo 27px
937 Slackey 1188 Slackey
938 Smokum 1189 Smokum
1190 Smooch
939 Smythe 1191 Smythe
940 Sniglet 1192 Sniglet
941 Snippet 1193 Snippet
...@@ -948,7 +1200,9 @@ Sonsie One ...@@ -948,7 +1200,9 @@ Sonsie One
948 Sora 1200 Sora
949 Sorts Mill Goudy 1201 Sorts Mill Goudy
950 Source Code Pro 1202 Source Code Pro
1203 Source Sans 3
951 Source Sans Pro 1204 Source Sans Pro
1205 Source Serif 4
952 Source Serif Pro 1206 Source Serif Pro
953 Space Grotesk 1207 Space Grotesk
954 Space Mono 1208 Space Mono
...@@ -959,6 +1213,7 @@ Spectral SC ...@@ -959,6 +1213,7 @@ Spectral SC
959 Spicy Rice 1213 Spicy Rice
960 Spinnaker 1214 Spinnaker
961 Spirax 1215 Spirax
1216 Spline Sans
962 Squada One 1217 Squada One
963 Sree Krushnadevaraya 1218 Sree Krushnadevaraya
964 Sriracha 1219 Sriracha
...@@ -968,11 +1223,12 @@ Stalemate ...@@ -968,11 +1223,12 @@ Stalemate
968 Stalinist One 1223 Stalinist One
969 Stardos Stencil 1224 Stardos Stencil
970 Stick 1225 Stick
1226 Stick No Bills
971 Stint Ultra Condensed 1227 Stint Ultra Condensed
972 Stint Ultra Expanded 1228 Stint Ultra Expanded
973 STIX Two Math
974 Stoke 1229 Stoke
975 Strait 1230 Strait
1231 Style Script
976 Stylish 1232 Stylish
977 Sue Ellen Francisco 1233 Sue Ellen Francisco
978 Suez One 1234 Suez One
...@@ -1003,6 +1259,7 @@ Text Me One ...@@ -1003,6 +1259,7 @@ Text Me One
1003 Texturina 1259 Texturina
1004 Thasadith 1260 Thasadith
1005 The Girl Next Door 1261 The Girl Next Door
1262 The Nautigal
1006 Tienne 1263 Tienne
1007 Tillana 1264 Tillana
1008 Timmana 1265 Timmana
...@@ -1021,6 +1278,7 @@ Truculenta ...@@ -1021,6 +1278,7 @@ Truculenta
1021 Trykker 1278 Trykker
1022 Tulpen One 1279 Tulpen One
1023 Turret Road 1280 Turret Road
1281 Twinkle Star
1024 Ubuntu 1282 Ubuntu
1025 Ubuntu Condensed 1283 Ubuntu Condensed
1026 Ubuntu Mono 1284 Ubuntu Mono
...@@ -1034,6 +1292,8 @@ UnifrakturMaguntia ...@@ -1034,6 +1292,8 @@ UnifrakturMaguntia
1034 Unkempt 1292 Unkempt
1035 Unlock 1293 Unlock
1036 Unna 1294 Unna
1295 Urbanist
1296 VT323
1037 Vampiro One 1297 Vampiro One
1038 Varela 1298 Varela
1039 Varela Round 1299 Varela Round
...@@ -1050,16 +1310,19 @@ Volkhov ...@@ -1050,16 +1310,19 @@ Volkhov
1050 Vollkorn 1310 Vollkorn
1051 Vollkorn SC 1311 Vollkorn SC
1052 Voltaire 1312 Voltaire
1053 VT323 1313 Vujahday Script
1054 Waiting for the Sunrise 1314 Waiting for the Sunrise
1055 Wallpoet 1315 Wallpoet
1056 Walter Turncoat 1316 Walter Turncoat
1057 Warnes 1317 Warnes
1318 Waterfall
1058 Wellfleet 1319 Wellfleet
1059 Wendy One 1320 Wendy One
1321 WindSong
1060 Wire One 1322 Wire One
1061 Work Sans 1323 Work Sans
1062 Xanh Mono 1324 Xanh Mono
1325 Yaldevi
1063 Yanone Kaffeesatz 1326 Yanone Kaffeesatz
1064 Yantramanav 1327 Yantramanav
1065 Yatra One 1328 Yatra One
...@@ -1069,14 +1332,25 @@ Yeseva One ...@@ -1069,14 +1332,25 @@ Yeseva One
1069 Yesteryear 1332 Yesteryear
1070 Yomogi 1333 Yomogi
1071 Yrsa 1334 Yrsa
1335 Yuji Boku
1336 Yuji Hentaigana Akari
1337 Yuji Hentaigana Akebono
1338 Yuji Mai
1339 Yuji Syuku
1072 Yusei Magic 1340 Yusei Magic
1073 ZCOOL KuaiLe 1341 ZCOOL KuaiLe
1074 ZCOOL QingKe HuangYou 1342 ZCOOL QingKe HuangYou
1075 ZCOOL XiaoWei 1343 ZCOOL XiaoWei
1344 Zen Antique
1345 Zen Antique Soft
1076 Zen Dots 1346 Zen Dots
1347 Zen Kaku Gothic Antique
1348 Zen Kaku Gothic New
1349 Zen Kurenaido
1077 Zen Loop 1350 Zen Loop
1351 Zen Maru Gothic
1352 Zen Old Mincho
1078 Zen Tokyo Zoo 1353 Zen Tokyo Zoo
1079 Zeyad
1080 Zeyada 1354 Zeyada
1081 Zhi Mang Xing 1355 Zhi Mang Xing
1082 Zilla Slab 1356 Zilla Slab
......
...@@ -97,6 +97,9 @@ class ImageEdit { ...@@ -97,6 +97,9 @@ class ImageEdit {
97 } 97 }
98 $extension = 'png'; 98 $extension = 'png';
99 break; 99 break;
100 case IMAGETYPE_WEBP:
101 $extension = 'webp';
102 break;
100 } 103 }
101 if (!$extension) { 104 if (!$extension) {
102 return $originalImageUrl; 105 return $originalImageUrl;
...@@ -142,6 +145,9 @@ class ImageEdit { ...@@ -142,6 +145,9 @@ class ImageEdit {
142 $image = $rotated; 145 $image = $rotated;
143 } 146 }
144 } 147 }
148 } else if ($extension == 'webp') {
149 //@TODO: should we need to care about rotation?
150 $image = @imagecreatefromwebp($imagePath);
145 } 151 }
146 152
147 if (isset($image) && $image) { 153 if (isset($image) && $image) {
...@@ -159,6 +165,10 @@ class ImageEdit { ...@@ -159,6 +165,10 @@ class ImageEdit {
159 imagepng($image, $targetFile); 165 imagepng($image, $targetFile);
160 } else if ($extension == 'jpg') { 166 } else if ($extension == 'jpg') {
161 imagejpeg($image, $targetFile, $quality); 167 imagejpeg($image, $targetFile, $quality);
168 } else if ($extension == 'webp') {
169 imagesavealpha($image, true);
170 imagealphablending($image, false);
171 imagewebp($image, $targetFile, $quality);
162 } 172 }
163 imagedestroy($image); 173 imagedestroy($image);
164 174
...@@ -173,7 +183,7 @@ class ImageEdit { ...@@ -173,7 +183,7 @@ class ImageEdit {
173 } 183 }
174 if ($rotated || $originalWidth != $targetWidth || $originalHeight != $targetHeight) { 184 if ($rotated || $originalWidth != $targetWidth || $originalHeight != $targetHeight) {
175 $newImage = imagecreatetruecolor($targetWidth, $targetHeight); 185 $newImage = imagecreatetruecolor($targetWidth, $targetHeight);
176 if ($extension == 'png') { 186 if ($extension == 'png' || $extension == 'webp') {
177 imagesavealpha($newImage, true); 187 imagesavealpha($newImage, true);
178 imagealphablending($newImage, false); 188 imagealphablending($newImage, false);
179 $transparent = imagecolorallocatealpha($newImage, 255, 255, 255, 127); 189 $transparent = imagecolorallocatealpha($newImage, 255, 255, 255, 127);
...@@ -199,6 +209,8 @@ class ImageEdit { ...@@ -199,6 +209,8 @@ class ImageEdit {
199 imagepng($newImage, $targetFile); 209 imagepng($newImage, $targetFile);
200 } else if ($extension == 'jpg') { 210 } else if ($extension == 'jpg') {
201 imagejpeg($newImage, $targetFile, $quality); 211 imagejpeg($newImage, $targetFile, $quality);
212 } else if ($extension == 'webp') {
213 imagewebp($newImage, $targetFile, $quality);
202 } 214 }
203 imagedestroy($newImage); 215 imagedestroy($newImage);
204 216
...@@ -272,6 +284,9 @@ class ImageEdit { ...@@ -272,6 +284,9 @@ class ImageEdit {
272 } 284 }
273 $extension = 'png'; 285 $extension = 'png';
274 break; 286 break;
287 case IMAGETYPE_WEBP:
288 $extension = 'webp';
289 break;
275 } 290 }
276 if (!$extension) { 291 if (!$extension) {
277 return $originalImageUrl; 292 return $originalImageUrl;
...@@ -311,6 +326,9 @@ class ImageEdit { ...@@ -311,6 +326,9 @@ class ImageEdit {
311 $image = $rotated; 326 $image = $rotated;
312 } 327 }
313 } 328 }
329 } else if ($extension == 'webp') {
330 //@TODO: should we need to care about rotation?
331 $image = @imagecreatefromwebp($imagePath);
314 } 332 }
315 333
316 if ($image) { 334 if ($image) {
...@@ -320,7 +338,7 @@ class ImageEdit { ...@@ -320,7 +338,7 @@ class ImageEdit {
320 $targetHeight = $originalHeight * $scale; 338 $targetHeight = $originalHeight * $scale;
321 if ((isset($rotated) && $rotated) || $originalWidth != $targetWidth || $originalHeight != $targetHeight) { 339 if ((isset($rotated) && $rotated) || $originalWidth != $targetWidth || $originalHeight != $targetHeight) {
322 $newImage = imagecreatetruecolor($targetWidth, $targetHeight); 340 $newImage = imagecreatetruecolor($targetWidth, $targetHeight);
323 if ($extension == 'png') { 341 if ($extension == 'png' || $extension == 'webp') {
324 imagesavealpha($newImage, true); 342 imagesavealpha($newImage, true);
325 imagealphablending($newImage, false); 343 imagealphablending($newImage, false);
326 $transparent = imagecolorallocatealpha($newImage, 255, 255, 255, 127); 344 $transparent = imagecolorallocatealpha($newImage, 255, 255, 255, 127);
...@@ -342,6 +360,8 @@ class ImageEdit { ...@@ -342,6 +360,8 @@ class ImageEdit {
342 imagepng($newImage, $targetFile); 360 imagepng($newImage, $targetFile);
343 } else if ($extension == 'jpg') { 361 } else if ($extension == 'jpg') {
344 imagejpeg($newImage, $targetFile, $quality); 362 imagejpeg($newImage, $targetFile, $quality);
363 } else if ($extension == 'webp') {
364 imagewebp($newImage, $targetFile, $quality);
345 } 365 }
346 imagedestroy($newImage); 366 imagedestroy($newImage);
347 367
...@@ -414,6 +434,7 @@ class ImageEdit { ...@@ -414,6 +434,7 @@ class ImageEdit {
414 'jpg' => 'jpg', 434 'jpg' => 'jpg',
415 'jpeg' => 'jpg', 435 'jpeg' => 'jpg',
416 'gif' => 'gif', 436 'gif' => 'gif',
437 'webp' => 'webp',
417 'svg' => 'svg' 438 'svg' => 'svg'
418 ); 439 );
419 $extension = strtolower($extension); 440 $extension = strtolower($extension);
...@@ -546,6 +567,9 @@ class ImageEdit { ...@@ -546,6 +567,9 @@ class ImageEdit {
546 case IMAGETYPE_PNG: 567 case IMAGETYPE_PNG:
547 $extension = 'png'; 568 $extension = 'png';
548 break; 569 break;
570 case IMAGETYPE_WEBP:
571 $extension = 'webp';
572 break;
549 } 573 }
550 if (!$extension) { 574 if (!$extension) {
551 return $originalImageUrl; 575 return $originalImageUrl;
...@@ -595,6 +619,14 @@ class ImageEdit { ...@@ -595,6 +619,14 @@ class ImageEdit {
595 $image = $rotated; 619 $image = $rotated;
596 } 620 }
597 } 621 }
622 } else if ($extension == 'webp') {
623 //@TODO: should we need to care about rotation?
624 $image = @imagecreatefromwebp($imagePath);
625 if (!imageistruecolor($image)) {
626 imagepalettetotruecolor($image);
627 imagealphablending($image, true);
628 imagesavealpha($image, true);
629 }
598 } 630 }
599 631
600 if ($image) { 632 if ($image) {
......
1 msgid "" 1 msgid ""
2 msgstr "" 2 msgstr ""
3 "Project-Id-Version: \n" 3 "Project-Id-Version: \n"
4 "POT-Creation-Date: 2021-10-16 08:50+0200\n" 4 "POT-Creation-Date: 2021-11-16 15:36+0100\n"
5 "PO-Revision-Date: 2021-11-02 14:26+0100\n" 5 "PO-Revision-Date: 2021-11-16 18:37+0100\n"
6 "Last-Translator: \n" 6 "Last-Translator: \n"
7 "Language-Team: \n" 7 "Language-Team: \n"
8 "Language: es\n" 8 "Language: es\n"
...@@ -1456,6 +1456,9 @@ msgstr "" ...@@ -1456,6 +1456,9 @@ msgstr ""
1456 msgid "JavaScript callbacks" 1456 msgid "JavaScript callbacks"
1457 msgstr "Callbacks JavaScript" 1457 msgstr "Callbacks JavaScript"
1458 1458
1459 msgid "Loading animation waiting time"
1460 msgstr "Tiempo de espera de animación de pre-carga"
1461
1459 msgid "Post IDs" 1462 msgid "Post IDs"
1460 msgstr "ID del artículo" 1463 msgstr "ID del artículo"
1461 1464
...@@ -1804,7 +1807,7 @@ msgid "Cache variations" ...@@ -1804,7 +1807,7 @@ msgid "Cache variations"
1804 msgstr "Variaciones del cache" 1807 msgstr "Variaciones del cache"
1805 1808
1806 msgid "Reverse" 1809 msgid "Reverse"
1807 msgstr "Reverso" 1810 msgstr "Orden inverso"
1808 1811
1809 msgid "You can make your slides appear in the slider in a reversed order." 1812 msgid "You can make your slides appear in the slider in a reversed order."
1810 msgstr "Puedes hacer que tu slides aparezcan en un orden inverso." 1813 msgstr "Puedes hacer que tu slides aparezcan en un orden inverso."
...@@ -3861,13 +3864,6 @@ msgstr "Cuando no esté visible" ...@@ -3861,13 +3864,6 @@ msgstr "Cuando no esté visible"
3861 msgid "You can pause the video when the visitor scrolls away from the slider" 3864 msgid "You can pause the video when the visitor scrolls away from the slider"
3862 msgstr "Puedes pausar el video cuando el usuario se desplaza fuera del slider" 3865 msgstr "Puedes pausar el video cuando el usuario se desplaza fuera del slider"
3863 3866
3864 msgid "Private video"
3865 msgstr "Video privado"
3866
3867 msgid ""
3868 "Turn it on to remove the admin warning that your video is not accessible."
3869 msgstr "Actívalo para ocultar la advertencia si el video no se puede acceder."
3870
3871 msgid "Display" 3867 msgid "Display"
3872 msgstr "Pantalla" 3868 msgstr "Pantalla"
3873 3869
...@@ -5695,6 +5691,12 @@ msgstr "Limite de submenu" ...@@ -5695,6 +5691,12 @@ msgstr "Limite de submenu"
5695 msgid "No limit" 5691 msgid "No limit"
5696 msgstr "Sin límite" 5692 msgstr "Sin límite"
5697 5693
5694 msgid "Hide empty categories"
5695 msgstr "Ocultar categorías vacías"
5696
5697 msgid "Yes"
5698 msgstr "Si"
5699
5698 msgid "Downloadable" 5700 msgid "Downloadable"
5699 msgstr "Descargable" 5701 msgstr "Descargable"
5700 5702
...@@ -6102,6 +6104,77 @@ msgstr "Antes de" ...@@ -6102,6 +6104,77 @@ msgstr "Antes de"
6102 msgid "Animation duration" 6104 msgid "Animation duration"
6103 msgstr "Duración de la animación" 6105 msgstr "Duración de la animación"
6104 6106
6107 msgid "Countdown"
6108 msgstr "Contador"
6109
6110 msgid "Days"
6111 msgstr "Días"
6112
6113 msgid "Hours"
6114 msgstr "Horas"
6115
6116 msgid "Minutes"
6117 msgstr "Minutos"
6118
6119 msgid "Seconds"
6120 msgstr "Segundos"
6121
6122 msgid "Use slide schedule"
6123 msgstr "Usar fecha del slide"
6124
6125 msgid "You can use the \"Unpublished on\" date of the slide itself."
6126 msgstr "Puedes usar la opción \"Despublicar en\" del propio slide."
6127
6128 msgid "Use Slide Schedule"
6129 msgstr "Usar fecha del slide"
6130
6131 msgid "Go to Slide → Content tab and set the Unpublish on date for the slide."
6132 msgstr ""
6133 "Para establecer una fecha para despublicar el slide deber ir a Slide > "
6134 "Contenido."
6135
6136 msgid ""
6137 "Displays the days, hours, minutes and seconds texts under the counter "
6138 "numbers. To display the labels in your own language, translate the texts in "
6139 "the language files."
6140 msgstr ""
6141 "Muestra el texto \"Días\", \"Horas\", \"Minutos\" y \"Segundos\" debajo de "
6142 "los números del contador."
6143
6144 msgid "Gap"
6145 msgstr "Espaciado"
6146
6147 msgid "Creates vertical and horizontal distance between the counter elements."
6148 msgstr ""
6149 "Crea un espacio vertical u horizontal entre los elementos del contador."
6150
6151 msgid "Tablet style"
6152 msgstr "Estilo para tableta"
6153
6154 msgid "Set custom Gap and Column for tablet."
6155 msgstr "Fija el espaciado y la columna para tabletas."
6156
6157 msgid "Mobile style"
6158 msgstr "Estilo para móvil"
6159
6160 msgid "Set custom Gap and Column for mobile."
6161 msgstr "Fija el espaciado y la columna para dispositivos móviles."
6162
6163 msgid "Action when ends"
6164 msgstr "Acción cuando finaliza"
6165
6166 msgid "No action"
6167 msgstr "No hacer nada"
6168
6169 msgid "Hide layer"
6170 msgstr "Ocultar capa"
6171
6172 msgid "Redirect to URL"
6173 msgstr "Redirigir a la URL"
6174
6175 msgid "Choose what happens after the counter reached zero."
6176 msgstr "Selecciona lo que ocurre cuando el contador alcanza el cero."
6177
6105 msgid "Circle 1" 6178 msgid "Circle 1"
6106 msgstr "Círculo 1" 6179 msgstr "Círculo 1"
6107 6180
...@@ -6321,9 +6394,6 @@ msgstr "" ...@@ -6321,9 +6394,6 @@ msgstr ""
6321 msgid "iframe url" 6394 msgid "iframe url"
6322 msgstr "url iframe" 6395 msgstr "url iframe"
6323 6396
6324 msgid "Yes"
6325 msgstr "Si"
6326
6327 msgid "You can disable the scroll on the iframe content." 6397 msgid "You can disable the scroll on the iframe content."
6328 msgstr "Puedes desactivar el desplazamiento para el contenido del iframe." 6398 msgstr "Puedes desactivar el desplazamiento para el contenido del iframe."
6329 6399
...@@ -6691,6 +6761,14 @@ msgstr "Color de la pista" ...@@ -6691,6 +6761,14 @@ msgstr "Color de la pista"
6691 msgid "Bar color" 6761 msgid "Bar color"
6692 msgstr "Color de la barra" 6762 msgstr "Color de la barra"
6693 6763
6764 #~ msgid "Private video"
6765 #~ msgstr "Video privado"
6766
6767 #~ msgid ""
6768 #~ "Turn it on to remove the admin warning that your video is not accessible."
6769 #~ msgstr ""
6770 #~ "Actívalo para ocultar la advertencia si el video no se puede acceder."
6771
6694 #~ msgctxt "Default Google font charset for admin" 6772 #~ msgctxt "Default Google font charset for admin"
6695 #~ msgid "latin" 6773 #~ msgid "latin"
6696 #~ msgstr "latín" 6774 #~ msgstr "latín"
...@@ -6891,9 +6969,6 @@ msgstr "Color de la barra" ...@@ -6891,9 +6969,6 @@ msgstr "Color de la barra"
6891 #~ "visible cuando el navegador cargar el slider. En la mayoría de los casos " 6969 #~ "visible cuando el navegador cargar el slider. En la mayoría de los casos "
6892 #~ "esto no sugerimos desactivar <b>Desvanecer al cargar</b>." 6970 #~ "esto no sugerimos desactivar <b>Desvanecer al cargar</b>."
6893 6971
6894 #~ msgid "Loading animation"
6895 #~ msgstr "Animación de pre-carga"
6896
6897 #~ msgid "Spinner" 6972 #~ msgid "Spinner"
6898 #~ msgstr "Spinner" 6973 #~ msgstr "Spinner"
6899 6974
...@@ -6935,12 +7010,6 @@ msgstr "Color de la barra" ...@@ -6935,12 +7010,6 @@ msgstr "Color de la barra"
6935 #~ msgid "Optimize layer images" 7010 #~ msgid "Optimize layer images"
6936 #~ msgstr "Optimizar imágenes de capa" 7011 #~ msgstr "Optimizar imágenes de capa"
6937 7012
6938 #~ msgid "Tablet scale"
6939 #~ msgstr "Escala en tableta"
6940
6941 #~ msgid "Mobile scale"
6942 #~ msgstr "Escala móvil"
6943
6944 #~ msgid "Adaptive" 7013 #~ msgid "Adaptive"
6945 #~ msgstr "Adaptativo" 7014 #~ msgstr "Adaptativo"
6946 7015
......
...@@ -2,19 +2,19 @@ ...@@ -2,19 +2,19 @@
2 msgid "" 2 msgid ""
3 msgstr "" 3 msgstr ""
4 "Project-Id-Version: \n" 4 "Project-Id-Version: \n"
5 "POT-Creation-Date: 2021-11-11 15:39+0100\n" 5 "POT-Creation-Date: 2022-01-13 13:55+0100\n"
6 "PO-Revision-Date: 2020-03-10 19:30+0100\n" 6 "PO-Revision-Date: 2020-03-10 19:30+0100\n"
7 "Last-Translator: \n" 7 "Last-Translator: \n"
8 "Language-Team: \n" 8 "Language-Team: \n"
9 "Language: en\n"
9 "MIME-Version: 1.0\n" 10 "MIME-Version: 1.0\n"
10 "Content-Type: text/plain; charset=UTF-8\n" 11 "Content-Type: text/plain; charset=UTF-8\n"
11 "Content-Transfer-Encoding: 8bit\n" 12 "Content-Transfer-Encoding: 8bit\n"
12 "X-Generator: Poedit 3.0\n" 13 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14 "X-Generator: Poedit 3.0.1\n"
13 "X-Poedit-SourceCharset: UTF-8\n" 15 "X-Poedit-SourceCharset: UTF-8\n"
14 "X-Poedit-Basepath: ..\n" 16 "X-Poedit-Basepath: ..\n"
15 "X-Poedit-KeywordsList: ;n2_;n2_e;n2_n:1,2;n2_en:1,2;n2_x:1,2c;n2_ex:1,2c\n" 17 "X-Poedit-KeywordsList: ;n2_;n2_e;n2_n:1,2;n2_en:1,2;n2_x:1,2c;n2_ex:1,2c\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 "Language: en\n"
18 "X-Poedit-Flags-xgettext: --no-location\n" 18 "X-Poedit-Flags-xgettext: --no-location\n"
19 "X-Poedit-SearchPath-0: .\n" 19 "X-Poedit-SearchPath-0: .\n"
20 "X-Poedit-SearchPathExcluded-0: Framework/Asset/Builder/cache\n" 20 "X-Poedit-SearchPathExcluded-0: Framework/Asset/Builder/cache\n"
...@@ -1076,13 +1076,19 @@ msgstr "" ...@@ -1076,13 +1076,19 @@ msgstr ""
1076 msgid "Set" 1076 msgid "Set"
1077 msgstr "" 1077 msgstr ""
1078 1078
1079 msgid "Up" 1079 msgid "Edit"
1080 msgstr "" 1080 msgstr ""
1081 1081
1082 msgid "Insert group" 1082 msgid "Group"
1083 msgstr "" 1083 msgstr ""
1084 1084
1085 msgid "Group" 1085 msgid "Edit slider"
1086 msgstr ""
1087
1088 msgid "Up"
1089 msgstr ""
1090
1091 msgid "Insert group"
1086 msgstr "" 1092 msgstr ""
1087 1093
1088 msgid "Move to trash" 1094 msgid "Move to trash"
...@@ -1127,6 +1133,24 @@ msgstr "" ...@@ -1127,6 +1133,24 @@ msgstr ""
1127 msgid "delete this slide" 1133 msgid "delete this slide"
1128 msgstr "" 1134 msgstr ""
1129 1135
1136 msgid "Max width"
1137 msgstr ""
1138
1139 msgid "Margin"
1140 msgstr ""
1141
1142 msgid "top"
1143 msgstr ""
1144
1145 msgid "right"
1146 msgstr ""
1147
1148 msgid "bottom"
1149 msgstr ""
1150
1151 msgid "left"
1152 msgstr ""
1153
1130 msgid "Animations" 1154 msgid "Animations"
1131 msgstr "" 1155 msgstr ""
1132 1156
...@@ -1446,9 +1470,6 @@ msgstr "" ...@@ -1446,9 +1470,6 @@ msgstr ""
1446 msgid "Align" 1470 msgid "Align"
1447 msgstr "" 1471 msgstr ""
1448 1472
1449 msgid "Margin"
1450 msgstr ""
1451
1452 msgid "Puts a fix margin around your slider." 1473 msgid "Puts a fix margin around your slider."
1453 msgstr "" 1474 msgstr ""
1454 1475
...@@ -1956,9 +1977,6 @@ msgstr "" ...@@ -1956,9 +1977,6 @@ msgstr ""
1956 msgid "Color end" 1977 msgid "Color end"
1957 msgstr "" 1978 msgstr ""
1958 1979
1959 msgid "Max width"
1960 msgstr ""
1961
1962 msgid "Position" 1980 msgid "Position"
1963 msgstr "" 1981 msgstr ""
1964 1982
...@@ -2262,9 +2280,6 @@ msgstr "" ...@@ -2262,9 +2280,6 @@ msgstr ""
2262 msgid "Scale down" 2280 msgid "Scale down"
2263 msgstr "" 2281 msgstr ""
2264 2282
2265 msgid "Edit"
2266 msgstr ""
2267
2268 msgid "Static overlay" 2283 msgid "Static overlay"
2269 msgstr "" 2284 msgstr ""
2270 2285
...@@ -2316,7 +2331,7 @@ msgstr "" ...@@ -2316,7 +2331,7 @@ msgstr ""
2316 msgid "Drop images here" 2331 msgid "Drop images here"
2317 msgstr "" 2332 msgstr ""
2318 2333
2319 msgid "Edit slider" 2334 msgid "Search Project"
2320 msgstr "" 2335 msgstr ""
2321 2336
2322 msgid "View trash" 2337 msgid "View trash"
...@@ -2343,9 +2358,29 @@ msgstr "" ...@@ -2343,9 +2358,29 @@ msgstr ""
2343 msgid "Export" 2358 msgid "Export"
2344 msgstr "" 2359 msgstr ""
2345 2360
2361 msgid "Show"
2362 msgstr ""
2363
2364 #, php-format
2365 msgid "Showing %s to %s of %s projects"
2366 msgstr ""
2367
2368 msgid "No projects to show"
2369 msgstr ""
2370
2346 msgid "New project" 2371 msgid "New project"
2347 msgstr "" 2372 msgstr ""
2348 2373
2374 msgid "Sorry we couldn’t find any matches"
2375 msgstr ""
2376
2377 msgid "Please try searching with another term."
2378 msgstr ""
2379
2380 #, php-format
2381 msgid "Showing %s results for %s."
2382 msgstr ""
2383
2349 msgid "Module" 2384 msgid "Module"
2350 msgstr "" 2385 msgstr ""
2351 2386
...@@ -4338,6 +4373,9 @@ msgstr "" ...@@ -4338,6 +4373,9 @@ msgstr ""
4338 msgid "Fan 3" 4373 msgid "Fan 3"
4339 msgstr "" 4374 msgstr ""
4340 4375
4376 msgid "Fan 4"
4377 msgstr ""
4378
4341 msgid "Hills" 4379 msgid "Hills"
4342 msgstr "" 4380 msgstr ""
4343 4381
...@@ -4380,6 +4418,24 @@ msgstr "" ...@@ -4380,6 +4418,24 @@ msgstr ""
4380 msgid "Waves" 4418 msgid "Waves"
4381 msgstr "" 4419 msgstr ""
4382 4420
4421 msgid "Columns 1"
4422 msgstr ""
4423
4424 msgid "Columns 2"
4425 msgstr ""
4426
4427 msgid "Paper 1"
4428 msgstr ""
4429
4430 msgid "Paper 2"
4431 msgstr ""
4432
4433 msgid "Paper 3"
4434 msgstr ""
4435
4436 msgid "Paper 4"
4437 msgstr ""
4438
4383 msgid "2 Colors" 4439 msgid "2 Colors"
4384 msgstr "" 4440 msgstr ""
4385 4441
...@@ -5067,6 +5123,12 @@ msgstr "" ...@@ -5067,6 +5123,12 @@ msgstr ""
5067 msgid "No limit" 5123 msgid "No limit"
5068 msgstr "" 5124 msgstr ""
5069 5125
5126 msgid "Hide empty categories"
5127 msgstr ""
5128
5129 msgid "Yes"
5130 msgstr ""
5131
5070 msgid "Downloadable" 5132 msgid "Downloadable"
5071 msgstr "" 5133 msgstr ""
5072 5134
...@@ -5463,6 +5525,69 @@ msgstr "" ...@@ -5463,6 +5525,69 @@ msgstr ""
5463 msgid "Animation duration" 5525 msgid "Animation duration"
5464 msgstr "" 5526 msgstr ""
5465 5527
5528 msgid "Countdown"
5529 msgstr ""
5530
5531 msgid "Days"
5532 msgstr ""
5533
5534 msgid "Hours"
5535 msgstr ""
5536
5537 msgid "Minutes"
5538 msgstr ""
5539
5540 msgid "Seconds"
5541 msgstr ""
5542
5543 msgid "Use slide schedule"
5544 msgstr ""
5545
5546 msgid "You can use the \"Unpublished on\" date of the slide itself."
5547 msgstr ""
5548
5549 msgid "Use Slide Schedule"
5550 msgstr ""
5551
5552 msgid "Go to Slide → Content tab and set the Unpublish on date for the slide."
5553 msgstr ""
5554
5555 msgid "Displays the days, hours, minutes and seconds texts under the counter numbers. To display the labels in your own language, translate the texts in the language files."
5556 msgstr ""
5557
5558 msgid "Gap"
5559 msgstr ""
5560
5561 msgid "Creates vertical and horizontal distance between the counter elements."
5562 msgstr ""
5563
5564 msgid "Tablet style"
5565 msgstr ""
5566
5567 msgid "Set custom Gap and Column for tablet."
5568 msgstr ""
5569
5570 msgid "Mobile style"
5571 msgstr ""
5572
5573 msgid "Set custom Gap and Column for mobile."
5574 msgstr ""
5575
5576 msgid "Action when ends"
5577 msgstr ""
5578
5579 msgid "No action"
5580 msgstr ""
5581
5582 msgid "Hide layer"
5583 msgstr ""
5584
5585 msgid "Redirect to URL"
5586 msgstr ""
5587
5588 msgid "Choose what happens after the counter reached zero."
5589 msgstr ""
5590
5466 msgid "Circle 1" 5591 msgid "Circle 1"
5467 msgstr "" 5592 msgstr ""
5468 5593
...@@ -5662,9 +5787,6 @@ msgstr "" ...@@ -5662,9 +5787,6 @@ msgstr ""
5662 msgid "iframe url" 5787 msgid "iframe url"
5663 msgstr "" 5788 msgstr ""
5664 5789
5665 msgid "Yes"
5666 msgstr ""
5667
5668 msgid "You can disable the scroll on the iframe content." 5790 msgid "You can disable the scroll on the iframe content."
5669 msgstr "" 5791 msgstr ""
5670 5792
......
...@@ -36,7 +36,8 @@ abstract class AbstractControllerAdmin extends AbstractAdminController { ...@@ -36,7 +36,8 @@ abstract class AbstractControllerAdmin extends AbstractAdminController {
36 'exportAllUrl' => $this->getUrlDashboardExportAll($groupID), 36 'exportAllUrl' => $this->getUrlDashboardExportAll($groupID),
37 'ajaxUrl' => $this->getAjaxUrlSlidesCreate(), 37 'ajaxUrl' => $this->getAjaxUrlSlidesCreate(),
38 'previewUrl' => $this->getUrlPreviewIndex(0), 38 'previewUrl' => $this->getUrlPreviewIndex(0),
39 'importUrl' => $this->getUrlImport($groupID) 39 'importUrl' => $this->getUrlImport($groupID),
40 'paginationUrl' => $this->getUrlPaginator()
40 ); 41 );
41 42
42 Js::addInline("new _N2.ManageSliders('" . $groupID . "', " . json_encode($options) . ", " . json_encode(SmartSlider3Info::shouldSkipLicenseModal()) . ");"); 43 Js::addInline("new _N2.ManageSliders('" . $groupID . "', " . json_encode($options) . ", " . json_encode(SmartSlider3Info::shouldSkipLicenseModal()) . ");");
......
...@@ -53,6 +53,10 @@ class SliderAnimations extends AbstractSliderTab { ...@@ -53,6 +53,10 @@ class SliderAnimations extends AbstractSliderTab {
53 } 53 }
54 54
55 protected function layerAnimations() { 55 protected function layerAnimations() {
56
57 /**
58 * Used for field removal: /animations/layer-animations
59 */
56 } 60 }
57 61
58 protected function layerParallax() { 62 protected function layerParallax() {
......
1 <?php 1 <?php
2 2
3 \Nextend\Framework\Localization\Localization::addJS(array("%s or newer required for this feature.","Above %s pixels.","Action","Activate","Activate Smart Slider 3 Pro","Activation is required to unlock all features!","Add animation","Add keyframe","Add Layer","Add post","Adjust","Advanced","Align (Absolute)","All layers, all devices","All layers, current device","An event you use to trigger layer animation(s) with","Animated heading","Animation","Animation tab","Are you sure?","Area","Arrows","Audio","Auto","Autoplay duration","Backward","Before After","Below %s pixels.","Between %s and %s pixels.","Block","Bottom","Boxed","Button","Cancel","Caption","Carousel","Center","Change group","Change slider type","Changing your slider type is irreversible. After changing your slider type, <b>you will lose all slider type related settings</b>.","Child layers","Choose folder","Choose images","Circle counter","Clean HTML","Clear device specific settings","Clear guides","Close","Column","Content","Content List - One Per Line","Content tab","Convert","Convert to slide","Copy","Copy slide to","Counter","Create","Create a New Project","Create group","Create new project","Current layer, all devices","Current layer, current device","Current path","Dashboard","Data","Delete","Delete permanently","delete these slides","delete this slide","delete this slider","Deleted.","Desktop","Direction","Disabled","Done","Drop files here","Duplicate","Edit","Edit generator","Edit Slider","Editor settings","Empty","empty the trash","Enabled","Event name","Examples","Filter","Find image","Find link","Forward","Full page","Full width","General","Go Pro","Go to slide","Go to slide ID","Got it","Group","Group created","Group name","Groups","Guide settings","Heading","Height","Hide on","Highlighted heading","HTML","Icon","Icon not found","Icons","Iframe","Image","Image area","Image box","Image field can not be empty!","Input","Insert","Insert a slider into your content","Insert group","Join more than 120,000 subscribers and get access to the latest slider templates, tips, tutorials and other exclusive contents directly to your inbox.","Join The Smart Slider 3 Community","Joomla module","Keyboard shortcuts","Keyframe","Landscape","Laptop","Large desktop","Large mobile","Large tablet","Layer","Layer Animation - Basic","Layer Animation - Reveal","Layer design options affect every device. If you need to make responsive adjustments, look for the options with the device icon.","Layer List","Layer(s)","Layout","Left","Lightbox","List","Load style","Loop","Loops %s and returns to starting slide.","Loops %s and stops before starting slide.","Middle","Mobile","Move (Absolute)","Move to trash","My project","Name","Next slide","No","No file selected.","Notice","Numeric keys","Off","On","Oops, Something Went Wrong","Open docs","Open/Close","or import your own files","Orientation","Outer %s","Overwrite preset","Parent","Parent directory","Paste","Pick the align point of the child layer!","Pick the align point of the parent layer!","Pick the parent layer!","Play animations","Please fill the name field!","Please select a Post first!","Portrait","Posts","Preset","Preset deleted.","Preset saved.","Preview","Previous slide","Pro","Progress bar","Project type","Publish","Records","Redo","Register Smart Slider 3 Pro on this domain to enable auto update, slider templates and slide library.","Remove animations","Remove HTML","Remove line breaks","Remove links","Rename","Reset style to default","Respect words","Result","Right","Round to 5px","Row","Ruler","Save","Save as","Save as New","Save style as new preset","Saved.","Scroll to","Scroll to alias","Scrolls to the bottom of the page.","Scrolls to the top of the page.","Search","Search keyword","Select","Select A Slider","Select image","Select Slider","Select the slider you want to insert.","Set","Set as first","Settings","Show/Hide in editor","Showcase","Simple","Size","Skip","Slide","Slide event","Slide height","Slide ID","Slide index","slide index: 2 %s direction: backward","slide index: 5 %s direction: forward","Slide title","Slide width","Slider","Slider alias","Slider alias set at Slider settings > General","Slider type","Smart Slider 3 activated!","Smart snap","Special Zero","Split by Chars","Start a new project from scratch and build exactly what you’ve imagined. You can easily customize every pixels and create anything with layers.","Start with a Template","Start with a template and make it your own with the innovative drag and drop interface. You can choose from hundreds of premade templates.","Static","Strict","Style tab","Subscribe","Success","Switches %s slide(s).","Switches to the %s. slide.","Switches to the fifth slide as if the next arrow was pressed","Switches to the second slide as if the previous arrow was pressed","Switches to the slide with the #2 ID as if the previous arrow was pressed","Switches to the slide with the #5 ID as if the next arrow was pressed","Tablet","Text","Text animation in","Text animation out","The changes you made will be lost if you navigate away from this page.","The deletion is irreversible, and it's not possible to recover %s.","The image is empty","Theme","There is no layer available to be parent of the current layer!","This block is not available in the free version. %s","This section requires activated Pro version.","This slide is hidden on the following devices: %s","Timeline","Titles - One Per Line","Top","Top and bottom","Transition","Undo","Unexpected response","Unpublish","Up","Upgrade to Pro","URL","Use default selector","Use Joomla selector","Use our powerful visual editor, or simply import one of our existing template.","Video","View","What do you want to create today?","Width","You can use any jQuery selector to scroll to a specific element on the page. Example: \"#pricing\" scrolls to the element with the id of \"pricing\".","You can use presets to save style settings for later use. Clicking on any preset will load its styling to your current layer, and the previous style settings will be lost.","You have not created any presets for this layer yet.","You're about to %s. "));
...\ No newline at end of file ...\ No newline at end of file
3 \Nextend\Framework\Localization\Localization::addJS(array("%s or newer required for this feature.","Above %s pixels.","Action","Activate","Activate Smart Slider 3 Pro","Activation is required to unlock all features!","Add animation","Add keyframe","Add Layer","Add post","Adjust","Advanced","Align (Absolute)","All layers, all devices","All layers, current device","An event you use to trigger layer animation(s) with","Animated heading","Animation","Animation tab","Are you sure?","Area","Arrows","Audio","Auto","Autoplay duration","Backward","Before After","Below %s pixels.","Between %s and %s pixels.","Block","bottom","Bottom","Boxed","Button","Cancel","Caption","Carousel","Center","Change group","Change slider type","Changing your slider type is irreversible. After changing your slider type, <b>you will lose all slider type related settings</b>.","Child layers","Choose folder","Choose images","Circle counter","Clean HTML","Clear device specific settings","Clear guides","Close","Column","Content","Content List - One Per Line","Content tab","Convert","Convert to slide","Copy","Copy slide to","Countdown","Counter","Create","Create a New Project","Create group","Create new project","Current layer, all devices","Current layer, current device","Current path","Dashboard","Data","Days","Delete","Delete permanently","delete these slides","delete this slide","delete this slider","Deleted.","Desktop","Direction","Disabled","Done","Drop files here","Duplicate","Edit","Edit generator","Edit slider","Edit Slider","Editor settings","Empty","empty the trash","Enabled","Event name","Examples","Filter","Find image","Find link","Forward","Full page","Full width","General","Go Pro","Go to slide","Go to slide ID","Got it","Group","Group created","Group name","Groups","Guide settings","Heading","Height","Hide on","Highlighted heading","Hours","HTML","Icon","Icon not found","Icons","Iframe","Image","Image area","Image box","Image field can not be empty!","Input","Insert","Insert a slider into your content","Insert group","Join more than 120,000 subscribers and get access to the latest slider templates, tips, tutorials and other exclusive contents directly to your inbox.","Join The Smart Slider 3 Community","Joomla module","Keyboard shortcuts","Keyframe","Landscape","Laptop","Large desktop","Large mobile","Large tablet","Layer","Layer Animation - Basic","Layer Animation - Reveal","Layer design options affect every device. If you need to make responsive adjustments, look for the options with the device icon.","Layer List","Layer(s)","Layout","left","Left","Lightbox","List","Load style","Loop","Loops %s and returns to starting slide.","Loops %s and stops before starting slide.","Margin","Max width","Middle","Minutes","Mobile","Move (Absolute)","Move to trash","My project","Name","Next slide","No","No file selected.","None","Notice","Numeric keys","Off","On","Oops, Something Went Wrong","Open docs","Open/Close","or import your own files","Orientation","Outer %s","Overwrite preset","Padding","Parent","Parent directory","Paste","Pick the align point of the child layer!","Pick the align point of the parent layer!","Pick the parent layer!","Play animations","Please fill the name field!","Please select a Post first!","Portrait","Posts","Preset","Preset deleted.","Preset saved.","Preview","Previous slide","Pro","Progress bar","Project type","Publish","Records","Redo","Register Smart Slider 3 Pro on this domain to enable auto update, slider templates and slide library.","Remove animations","Remove HTML","Remove line breaks","Remove links","Rename","Reset style to default","Respect words","Result","right","Right","Round to 5px","Row","Ruler","Save","Save as","Save as New","Save style as new preset","Saved.","Scroll to","Scroll to alias","Scrolls to the bottom of the page.","Scrolls to the top of the page.","Search","Search keyword","Seconds","Select","Select A Slider","Select image","Select Slider","Select the slider you want to insert.","Set","Set as first","Settings","Show/Hide in editor","Showcase","Simple","Size","Skip","Slide","Slide event","Slide height","Slide ID","Slide index","slide index: 2 %s direction: backward","slide index: 5 %s direction: forward","Slide title","Slide width","Slider","Slider alias","Slider alias set at Slider settings > General","Slider type","Smart Slider 3 activated!","Smart snap","Special Zero","Split by Chars","Start a new project from scratch and build exactly what you’ve imagined. You can easily customize every pixels and create anything with layers.","Start with a Template","Start with a template and make it your own with the innovative drag and drop interface. You can choose from hundreds of premade templates.","Static","Strict","Style tab","Subscribe","Success","Switches %s slide(s).","Switches to the %s. slide.","Switches to the fifth slide as if the next arrow was pressed","Switches to the second slide as if the previous arrow was pressed","Switches to the slide with the #2 ID as if the previous arrow was pressed","Switches to the slide with the #5 ID as if the next arrow was pressed","Tablet","Text","Text animation in","Text animation out","The changes you made will be lost if you navigate away from this page.","The deletion is irreversible, and it's not possible to recover %s.","The image is empty","Theme","There is no layer available to be parent of the current layer!","This block is not available in the free version. %s","This section requires activated Pro version.","This slide is hidden on the following devices: %s","Timeline","Titles - One Per Line","top","Top","Top and bottom","Transition","Undo","Unexpected response","Unpublish","Up","Upgrade to Pro","URL","Use default selector","Use Joomla selector","Use our powerful visual editor, or simply import one of our existing template.","Video","View","What do you want to create today?","Width","You can use any jQuery selector to scroll to a specific element on the page. Example: \"#pricing\" scrolls to the element with the id of \"pricing\".","You can use presets to save style settings for later use. Clicking on any preset will load its styling to your current layer, and the previous style settings will be lost.","You have not created any presets for this layer yet.","You're about to %s. "));
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -10,9 +10,18 @@ class AbstractButtonLabel extends AbstractButton { ...@@ -10,9 +10,18 @@ class AbstractButtonLabel extends AbstractButton {
10 10
11 protected $icon = ''; 11 protected $icon = '';
12 12
13 protected $iconBefore = "";
14
15 protected $iconBeforeClass = "";
16
13 protected function getContent() { 17 protected function getContent() {
18 $content = '';
14 19
15 $content = '<span class="' . $this->baseClass . '__label">' . $this->getLabel() . '</span>'; 20 if (!empty($this->iconBefore)) {
21 $content .= '<i class="' . $this->iconBefore . ' ' . $this->itemBeforeClass . '"></i>';
22 }
23
24 $content .= '<span class="' . $this->baseClass . '__label">' . $this->getLabel() . '</span>';
16 25
17 if (!empty($this->icon)) { 26 if (!empty($this->icon)) {
18 $content .= '<i class="' . $this->icon . '"></i>'; 27 $content .= '<i class="' . $this->icon . '"></i>';
...@@ -41,4 +50,14 @@ class AbstractButtonLabel extends AbstractButton { ...@@ -41,4 +50,14 @@ class AbstractButtonLabel extends AbstractButton {
41 public function setIcon($icon) { 50 public function setIcon($icon) {
42 $this->icon = $icon; 51 $this->icon = $icon;
43 } 52 }
53
54 /**
55 * @param string $icon
56 * @param string $extraClass
57 */
58 public function setIconBefore($icon, $extraClass = "") {
59 $this->iconBefore = $icon;
60 $this->itemBeforeClass = $extraClass;
61 }
62
44 } 63 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -222,7 +222,6 @@ class LayerWindowSettingsSlide extends AbstractLayerWindowSettings { ...@@ -222,7 +222,6 @@ class LayerWindowSettingsSlide extends AbstractLayerWindowSettings {
222 'layerslide-backgroundImageBlur', 222 'layerslide-backgroundImageBlur',
223 'layerslide-backgroundMode', 223 'layerslide-backgroundMode',
224 'layerslide-background-notice-image', 224 'layerslide-background-notice-image',
225 'layerslide-backgroundBlurFit'
226 ) 225 )
227 ); 226 );
228 $fieldImage = new FieldImageResponsive($rowImage, 'slide-backgroundImage', n2_('Slide background'), '', $slideBackgroundAttr); 227 $fieldImage = new FieldImageResponsive($rowImage, 'slide-backgroundImage', n2_('Slide background'), '', $slideBackgroundAttr);
...@@ -260,9 +259,9 @@ class LayerWindowSettingsSlide extends AbstractLayerWindowSettings { ...@@ -260,9 +259,9 @@ class LayerWindowSettingsSlide extends AbstractLayerWindowSettings {
260 )); 259 ));
261 new NumberSlider($rowImage, 'slide-backgroundBlurFit', n2_('Background blur'), 7, array( 260 new NumberSlider($rowImage, 'slide-backgroundBlurFit', n2_('Background blur'), 7, array(
262 'unit' => 'px', 261 'unit' => 'px',
263 'min'=> 7, 262 'min' => 7,
264 'max' => 50, 263 'max' => 50,
265 'wide'=>3 264 'wide' => 3
266 )); 265 ));
267 266
268 new NumberSlider($rowImage, 'slide-backgroundImageOpacity', n2_('Opacity'), 100, array( 267 new NumberSlider($rowImage, 'slide-backgroundImageOpacity', n2_('Opacity'), 100, array(
......
...@@ -92,6 +92,14 @@ class BlockSliderBox extends AbstractBlock { ...@@ -92,6 +92,14 @@ class BlockSliderBox extends AbstractBlock {
92 /** 92 /**
93 * @return int 93 * @return int
94 */ 94 */
95
96 public function getOrdering() {
97 return $this->slider['ordering'];
98 }
99
100 /**
101 * @return int
102 */
95 public function getGroupID() { 103 public function getGroupID() {
96 return $this->groupID; 104 return $this->groupID;
97 } 105 }
......
...@@ -12,7 +12,8 @@ use Nextend\Framework\Sanitize; ...@@ -12,7 +12,8 @@ use Nextend\Framework\Sanitize;
12 <div class="n2_slider_manager__box n2_slider_box<?php echo $this->isGroup() ? ' n2_slider_box--group' : ' n2_slider_box--slider'; ?>" 12 <div class="n2_slider_manager__box n2_slider_box<?php echo $this->isGroup() ? ' n2_slider_box--group' : ' n2_slider_box--slider'; ?>"
13 data-group="<?php echo $this->isGroup() ? '1' : '0'; ?>" 13 data-group="<?php echo $this->isGroup() ? '1' : '0'; ?>"
14 data-title="<?php echo Sanitize::esc_attr($this->getSliderTitle()); ?>" 14 data-title="<?php echo Sanitize::esc_attr($this->getSliderTitle()); ?>"
15 data-sliderid="<?php echo $this->getSliderID(); ?>"> 15 data-sliderid="<?php echo $this->getSliderID(); ?>"
16 data-ordering="<?php echo $this->getOrdering(); ?>">
16 17
17 <?php 18 <?php
18 $thumbnailUrl = Sanitize::esc_attr($this->getThumbnail()); 19 $thumbnailUrl = Sanitize::esc_attr($this->getThumbnail());
......
...@@ -12,15 +12,28 @@ namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManag ...@@ -12,15 +12,28 @@ namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManag
12 12
13 $this->displayOrderBy(); 13 $this->displayOrderBy();
14 14
15 $this->displayBulkActions();
16
17 $this->displayCreateGroup(); 15 $this->displayCreateGroup();
18 16
17 $this->displayTrash();
18
19 $this->displayBulkActions();
20
19 ?> 21 ?>
20 </div> 22 </div>
21 <div class="n2_slider_manager__action_bar_right"> 23 <div class="n2_slider_manager__action_bar_right">
22 <?php 24 <?php if ($this->sliderManager->getGroupID() == 0) { ?>
23 $this->displayTrash(); 25 <div class="n2_slider_manager__search">
24 ?> 26 <div class="n2_slider_manager__search_icon n2_slider_manager__search_icon--magnifier">
27 <i class="ssi_16 ssi_16--magnifier"></i>
28 </div>
29 <div class="n2_slider_manager__search_icon n2_slider_manager__search_icon--abort">
30 <i class="ssi_16 ssi_16--circularremove"></i>
25 </div> 31 </div>
32 <form class="n2_slider_manager__search_form" autocomplete="off">
33 <input type="text" name="kw" class="n2_slider_manager__search_input" value="" placeholder="<?php echo n2_('Search Project'); ?>" tabindex="-1">
34 </form>
35 </div>
36 <?php } ?>
37 </div>
38
26 </div> 39 </div>
......
...@@ -41,7 +41,9 @@ class BlockActionBar extends AbstractBlock { ...@@ -41,7 +41,9 @@ class BlockActionBar extends AbstractBlock {
41 $blockButton = new BlockButtonPlain($this); 41 $blockButton = new BlockButtonPlain($this);
42 $blockButton->setUrl($this->getUrlTrash()); 42 $blockButton->setUrl($this->getUrlTrash());
43 $blockButton->setLabel(n2_('View trash')); 43 $blockButton->setLabel(n2_('View trash'));
44 $blockButton->addClass('n2_slider_trash');
44 $blockButton->setSmall(); 45 $blockButton->setSmall();
46 $blockButton->setIconBefore('ssi_16 ssi_16--delete', 'n2_slider_icon--blue');
45 $blockButton->setTabIndex(-1); 47 $blockButton->setTabIndex(-1);
46 $blockButton->display(); 48 $blockButton->display();
47 } 49 }
...@@ -58,37 +60,54 @@ class BlockActionBar extends AbstractBlock { ...@@ -58,37 +60,54 @@ class BlockActionBar extends AbstractBlock {
58 $blockButton = new BlockButtonPlain($this); 60 $blockButton = new BlockButtonPlain($this);
59 $blockButton->setLabel(n2_('Order by')); 61 $blockButton->setLabel(n2_('Order by'));
60 $blockButton->setIcon('ssi_16 ssi_16--selectarrow'); 62 $blockButton->setIcon('ssi_16 ssi_16--selectarrow');
63 $blockButton->setIconBefore('ssi_16 ssi_16--order', 'n2_slider_icon--blue');
64 $blockButton->addClass('n2_slider_order');
61 $blockButton->setSmall(); 65 $blockButton->setSmall();
62 $blockOrderBy->setButton($blockButton); 66 $blockOrderBy->setButton($blockButton);
63 67
64 $manualOrder = new BlockFloatingMenuItem($this); 68 $manualOrder = new BlockFloatingMenuItem($this);
65 $manualOrder->setLabel(n2_('Manual order')); 69 $manualOrder->setLabel(n2_('Manual order'));
66 $manualOrder->setIsActive($orderBy == 'ordering' && $orderByDirection == 'ASC'); 70 $manualOrder->setIsActive($orderBy == 'ordering' && $orderByDirection == 'ASC');
67 $manualOrder->setUrl($this->getUrlDashboardOrderBy('ordering', 'ASC')); 71 $manualOrder->addAttribute('data-ordering', 'ordering');
72 $manualOrder->addAttribute('data-orderdirection', 'ASC');
73 $manualOrder->addClass('n2_floating_menu__item-order');
74 $manualOrder->setUrl('#');
68 $blockOrderBy->addMenuItem($manualOrder); 75 $blockOrderBy->addMenuItem($manualOrder);
69 76
70 $orderAZ = new BlockFloatingMenuItem($this); 77 $orderAZ = new BlockFloatingMenuItem($this);
71 $orderAZ->setLabel(n2_('A-Z')); 78 $orderAZ->setLabel(n2_('A-Z'));
72 $orderAZ->setIsActive($orderBy == 'title' && $orderByDirection == 'ASC'); 79 $orderAZ->setIsActive($orderBy == 'title' && $orderByDirection == 'ASC');
73 $orderAZ->setUrl($this->getUrlDashboardOrderBy('title', 'ASC')); 80 $orderAZ->addAttribute('data-ordering', 'title');
81 $orderAZ->addAttribute('data-orderdirection', 'ASC');
82 $orderAZ->addClass('n2_floating_menu__item-order');
83 $orderAZ->setUrl('#');
74 $blockOrderBy->addMenuItem($orderAZ); 84 $blockOrderBy->addMenuItem($orderAZ);
75 85
76 $orderZA = new BlockFloatingMenuItem($this); 86 $orderZA = new BlockFloatingMenuItem($this);
77 $orderZA->setLabel(n2_('Z-A')); 87 $orderZA->setLabel(n2_('Z-A'));
78 $orderZA->setIsActive($orderBy == 'title' && $orderByDirection == 'DESC'); 88 $orderZA->setIsActive($orderBy == 'title' && $orderByDirection == 'DESC');
79 $orderZA->setUrl($this->getUrlDashboardOrderBy('title', 'DESC')); 89 $orderZA->addAttribute('data-ordering', 'title');
90 $orderZA->addAttribute('data-orderdirection', 'DESC');
91 $orderZA->addClass('n2_floating_menu__item-order');
92 $orderZA->setUrl('#');
80 $blockOrderBy->addMenuItem($orderZA); 93 $blockOrderBy->addMenuItem($orderZA);
81 94
82 $orderNewest = new BlockFloatingMenuItem($this); 95 $orderNewest = new BlockFloatingMenuItem($this);
83 $orderNewest->setLabel(n2_('Newest first')); 96 $orderNewest->setLabel(n2_('Newest first'));
84 $orderNewest->setIsActive($orderBy == 'time' && $orderByDirection == 'DESC'); 97 $orderNewest->setIsActive($orderBy == 'time' && $orderByDirection == 'DESC');
85 $orderNewest->setUrl($this->getUrlDashboardOrderBy('time', 'DESC')); 98 $orderNewest->addAttribute('data-ordering', 'time');
99 $orderNewest->addAttribute('data-orderdirection', 'DESC');
100 $orderNewest->addClass('n2_floating_menu__item-order');
101 $orderNewest->setUrl('#');
86 $blockOrderBy->addMenuItem($orderNewest); 102 $blockOrderBy->addMenuItem($orderNewest);
87 103
88 $orderOldest = new BlockFloatingMenuItem($this); 104 $orderOldest = new BlockFloatingMenuItem($this);
89 $orderOldest->setLabel(n2_('Oldest first')); 105 $orderOldest->setLabel(n2_('Oldest first'));
90 $orderOldest->setIsActive($orderBy == 'time' && $orderByDirection == 'ASC'); 106 $orderOldest->setIsActive($orderBy == 'time' && $orderByDirection == 'ASC');
91 $orderOldest->setUrl($this->getUrlDashboardOrderBy('time', 'ASC')); 107 $orderOldest->addAttribute('data-ordering', 'time');
108 $orderOldest->addAttribute('data-orderdirection', 'ASC');
109 $orderOldest->addClass('n2_floating_menu__item-order');
110 $orderOldest->setUrl('#');
92 $blockOrderBy->addMenuItem($orderOldest); 111 $blockOrderBy->addMenuItem($orderOldest);
93 112
94 $blockOrderBy->display(); 113 $blockOrderBy->display();
...@@ -104,8 +123,10 @@ class BlockActionBar extends AbstractBlock { ...@@ -104,8 +123,10 @@ class BlockActionBar extends AbstractBlock {
104 123
105 $blockButton = new BlockButtonPlain($this); 124 $blockButton = new BlockButtonPlain($this);
106 $blockButton->setLabel(n2_('Bulk actions')); 125 $blockButton->setLabel(n2_('Bulk actions'));
107 $blockButton->setIcon('ssi_16 ssi_16--selectarrow');
108 $blockButton->setSmall(); 126 $blockButton->setSmall();
127 $blockButton->setIcon('ssi_16 ssi_16--selectarrow');
128 $blockButton->setIconBefore('ssi_16 ssi_16--slides', 'n2_slider_icon--blue');
129
109 $blockBulkActions->setButton($blockButton); 130 $blockBulkActions->setButton($blockButton);
110 131
111 $duplicate = new BlockFloatingMenuItem($this); 132 $duplicate = new BlockFloatingMenuItem($this);
......
...@@ -16,15 +16,18 @@ class BlockSliderManager extends AbstractBlock { ...@@ -16,15 +16,18 @@ class BlockSliderManager extends AbstractBlock {
16 16
17 protected $orderByDirection = 'ASC'; 17 protected $orderByDirection = 'ASC';
18 18
19 protected $paginationIndex = 0;
20
21 protected $paginationLimit = 'all';
22
19 public function display() { 23 public function display() {
20 if ($this->groupID > 0) { 24 if ($this->groupID <= 0) {
21 $this->orderBy = 'ordering';
22 $this->orderByDirection = 'ASC';
23 } else {
24 $this->orderBy = Settings::get('slidersOrder2', 'ordering'); 25 $this->orderBy = Settings::get('slidersOrder2', 'ordering');
25 $this->orderByDirection = Settings::get('slidersOrder2Direction', 'ASC'); 26 $this->orderByDirection = Settings::get('slidersOrder2Direction', 'ASC');
27 $this->paginationLimit = Settings::get('limit', 'all');
26 } 28 }
27 29
30
28 $this->renderTemplatePart('SliderManager'); 31 $this->renderTemplatePart('SliderManager');
29 } 32 }
30 33
...@@ -42,11 +45,57 @@ class BlockSliderManager extends AbstractBlock { ...@@ -42,11 +45,57 @@ class BlockSliderManager extends AbstractBlock {
42 $this->groupID = $groupID; 45 $this->groupID = $groupID;
43 } 46 }
44 47
48 /**
49 * @return int
50 */
51 public function getPaginationIndex() {
52 return $this->paginationIndex;
53 }
54
55 /**
56 * @param int $index
57 */
58 public function setPaginationIndex($index) {
59 $this->paginationIndex = $index;
60 }
61
62
63 /**
64 * @return int
65 */
66
67 public function getPaginationLimit() {
68 return $this->paginationLimit;
69 }
70
71 /**
72 * @param string $status
73 *
74 */
45 public function getSliders($status = '*') { 75 public function getSliders($status = '*') {
76 $slidersModel = new ModelSliders($this);
77
78 $sliders = $slidersModel->getAll($this->groupID, $status, $this->orderBy, $this->orderByDirection, $this->paginationIndex, $this->paginationLimit);
79 if ($this->groupID <= 0 && empty($sliders) && $sliderCount = $this->getSliderCount('published', true)) {
80 $lastPageIndex = intval(ceil(($sliderCount - $this->paginationLimit) / $this->paginationLimit));
81 $sliders = $slidersModel->getAll($this->groupID, $status, $this->orderBy, $this->orderByDirection, $lastPageIndex, $this->paginationLimit);
82 $this->paginationIndex = $lastPageIndex;
83 }
84
85 return $sliders;
86 }
87
88 /**
89 * @param string $status
90 * @param false $withGroup
91 *
92 * @return int
93 */
46 94
95 public function getSliderCount($status = '*', $withGroup = false) {
47 $slidersModel = new ModelSliders($this); 96 $slidersModel = new ModelSliders($this);
48 97
49 return $slidersModel->getAll($this->groupID, $status, $this->orderBy, $this->orderByDirection); 98 return $slidersModel->getSlidersCount($status, $withGroup);
50 } 99 }
51 100
52 /** 101 /**
......
1 <?php
2
3 namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManager\Paginator;
4
5 use Nextend\Framework\View\AbstractBlock;
6 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Forms\Button\BlockButtonIconCode;
7 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Forms\Button\BlockButtonPlain;
8 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Forms\Button\BlockButtonPlainIcon;
9 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Forms\FloatingMenu\BlockFloatingMenu;
10 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Forms\FloatingMenu\BlockFloatingMenuItem;
11
12 class BlockPaginator extends AbstractBlock {
13
14 protected $sliderCount;
15 protected $paginationLimit;
16
17 /**
18 * @var BlockSliderManager
19 */
20 protected $sliderManager;
21
22 public function display() {
23
24 $this->renderTemplatePart('Paginator');
25 }
26
27 /**
28 * @param BlockSliderManager $sliderManager
29 */
30 public function setSliderManager($sliderManager) {
31 $this->sliderManager = $sliderManager;
32 }
33
34
35 public function setSliderCount($sliderCount) {
36 $this->sliderCount = $sliderCount;
37 }
38
39 public function setPaginationLimit($limit) {
40 $this->paginationLimit = $limit;
41 }
42
43 private function transformedPaginationLimit() {
44 if ($this->paginationLimit === 'all') {
45 /*used in calculations*/
46 return $this->sliderCount;
47 } else {
48 return $this->paginationLimit;
49 }
50 }
51
52
53 public function displayPaginationButtons() {
54
55 $totalPages = $this->sliderCount ? ceil(($this->sliderCount / $this->transformedPaginationLimit())) : 0;
56 $delta = 2;
57 $left = intval($this->sliderManager->getPaginationIndex()) - $delta;
58 $right = intval($this->sliderManager->getPaginationIndex()) + $delta;
59
60 /*PageList*/
61 if ($totalPages > 1) {
62 for ($i = 0; $i < $totalPages; $i++) {
63 if ($i == 0 || $i == $totalPages - 1 || $i >= $left && $i <= $right) {
64 $blockButton = new BlockButtonPlain($this);
65 $blockButton->setUrl('#');
66 $blockButton->setLabel($i + 1);
67 $blockButton->addAttribute('data-page', $i);
68 $blockButton->setSmall();
69 $blockButton->setTabIndex(-1);
70 $class = 'n2_slider_manager__paginator_item ' . (($i === intval($this->sliderManager->getPaginationIndex())) ? 'n2_slider_manager__paginator_item--active' : '');
71 $blockButton->addAttribute('class', $class);
72 $blockButton->display();
73 } else if ($i === $left - 1 || $i === $right + 1) {
74 echo "<div class='n2_slider_manager__paginator_item n2_slider_manager__paginator_item_spacer'>...</div>";
75 }
76 }
77 }
78
79 }
80
81 public function displayPaginationPrevious() {
82
83 $blockButtonPrev = new BlockButtonPlainIcon($this);
84 $blockButtonPrev->setUrl('#');
85 $blockButtonPrev->setIcon('ssi_16 ssi_16--paginatiorarrow');
86 $blockButtonPrev->setSmall();
87 $blockButtonPrev->setTabIndex(-1);
88 $blockButtonPrev->addAttribute('data-page', 'prev');
89 $blockButtonPrev->addAttribute('class', 'n2_slider_manager__paginator_item n2_slider_manager__paginator_item_arrow n2_slider_manager__paginator_item_arrow--prev n2_slider_manager__paginator_item_arrow--disabled');
90 $blockButtonPrev->display();
91 }
92
93 public function displayPaginationNext() {
94 $blockButtonNext = new BlockButtonPlainIcon($this);
95 $blockButtonNext->setUrl('#');
96 $blockButtonNext->setIcon('ssi_16 ssi_16--paginatiorarrow');
97 $blockButtonNext->setSmall();
98 $blockButtonNext->setTabIndex(-1);
99 $blockButtonNext->addAttribute('data-page', 'next');
100 $blockButtonNext->addAttribute('class', 'n2_slider_manager__paginator_item n2_slider_manager__paginator_item_arrow n2_slider_manager__paginator_item_arrow--next n2_slider_manager__paginator_item_arrow--disabled');
101 $blockButtonNext->display();
102 }
103
104 public function displayPaginationLimiters() {
105 $blockLimiter = new BlockFloatingMenu($this);
106
107 $blockButton = new BlockButtonPlain($this);
108 $blockButton->setLabel(n2_('Show') . " <span class='limitNumber'>" . $this->paginationLimit . "</span>");
109 $blockButton->setIcon('ssi_16 ssi_16--selectarrow');
110 $blockButton->setSmall();
111 $blockLimiter->setButton($blockButton);
112
113
114 $limits = array(
115 10,
116 25,
117 50,
118 100
119 );
120
121 foreach ($limits as $limit) {
122 $limitItem = new BlockFloatingMenuItem($this);
123 $limitItem->setLabel($limit);
124 $limitItem->setUrl('#');
125 $limitItem->addAttribute('data-limit', $limit);
126 $limitItem->addClass('n2_floating_menu__item-limiter');
127 $limitItem->setIsActive($this->paginationLimit == $limit);
128 $blockLimiter->addMenuItem($limitItem);
129 }
130
131 $limitAll = new BlockFloatingMenuItem($this);
132 $limitAll->setLabel(n2_('All'));
133 $limitAll->setUrl('#');
134 $limitAll->addAttribute('data-limit', 'all');
135 $limitAll->addClass('n2_floating_menu__item-limiter');
136 $limitAll->setIsActive($this->paginationLimit == 'all');
137 $blockLimiter->addMenuItem($limitAll);
138
139
140 $blockLimiter->display();
141 }
142
143 public function displayPaginationLabel() {
144
145
146 $actualSliderStart = $this->transformedPaginationLimit() * $this->sliderManager->getPaginationIndex();
147 $actualSlidersEnd = $actualSliderStart + $this->transformedPaginationLimit();
148 $allSliders = $this->sliderCount;
149
150 echo sprintf(n2_("Showing %s to %s of %s projects"), "<span class='n2_slider_manager__paginator_label_item__from'>" . (($actualSliderStart === 0) ? 1 : $actualSliderStart) . "</span>", "<span class='n2_slider_manager__paginator_label_item__to' > " . (($actualSlidersEnd < $this->sliderCount) ? $actualSlidersEnd : $this->sliderCount) . "</span > ", "<span class='n2_slider_manager__paginator_label_item__max' > " . $allSliders . "</span > ");
151 }
152
153 public function displayNoSlidersLabel() {
154 echo n2_('No projects to show');
155 }
156
157 }
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2
3 namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManager\Paginator;
4
5 /**
6 * @var BlockPaginator $this
7 */
8
9 ?>
10 <div class="n2_slider_manager__paginator_label <?php echo $this->sliderCount === 0 ? "n2_slider_manager__paginator_label--nosliders" : "" ?>">
11 <p class="n2_slider_manager__paginator_label_item n2_slider_manager__paginator_label_item--active"><?php $this->displayPaginationLabel(); ?></p>
12 <p class="n2_slider_manager__paginator_label_item n2_slider_manager__paginator_label_item--empty"><?php $this->displayNoSlidersLabel(); ?></p>
13 </div>
14 <div class=" n2_slider_manager__paginator_buttons">
15
16 <?php
17 $this->displayPaginationPrevious();
18 ?>
19 <div class="n2_slider_manager__paginator_buttons--numbers">
20 <?php
21 $this->displayPaginationButtons();
22 ?>
23 </div>
24 <?php
25 $this->displayPaginationNext();
26 ?>
27 </div>
28 <div class="n2_slider_manager__paginator_limiter">
29 <?php $this->displayPaginationLimiters() ?>
30 </div>
31
32
33
34
...@@ -3,17 +3,20 @@ namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManag ...@@ -3,17 +3,20 @@ namespace Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManag
3 3
4 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderBox\BlockSliderBox; 4 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderBox\BlockSliderBox;
5 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManager\ActionBar\BlockActionBar; 5 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManager\ActionBar\BlockActionBar;
6 use Nextend\SmartSlider3\Application\Admin\Layout\Block\Slider\SliderManager\Paginator\BlockPaginator;
6 7
7 /** 8 /**
8 * @var BlockSliderManager $this 9 * @var BlockSliderManager $this
9 */ 10 */
10
11 $groupID = $this->getGroupID(); 11 $groupID = $this->getGroupID();
12
13 $orderBy = $this->getOrderBy(); 12 $orderBy = $this->getOrderBy();
14 $orderByDirection = $this->getOrderByDirection(); 13 $orderByDirection = $this->getOrderByDirection();
15 14
16 $sliders = $this->getSliders('published'); 15 $sliders = $this->getSliders('published');
16 $sliderCount = $this->getSliderCount('published', true);
17
18 $limit = $this->getPaginationLimit();
19 $paginationIndex = $this->getPaginationIndex();
17 20
18 ?> 21 ?>
19 <div class="n2_slider_manager" data-groupid="<?php echo $groupID; ?>" data-orderby="<?php echo $orderBy; ?>" data-orderbydirection="<?php echo $orderByDirection; ?>"> 22 <div class="n2_slider_manager" data-groupid="<?php echo $groupID; ?>" data-orderby="<?php echo $orderBy; ?>" data-orderbydirection="<?php echo $orderByDirection; ?>">
...@@ -42,5 +45,33 @@ $sliders = $this->getSliders('published'); ...@@ -42,5 +45,33 @@ $sliders = $this->getSliders('published');
42 $blockSliderBox->display(); 45 $blockSliderBox->display();
43 } 46 }
44 ?> 47 ?>
48 <?php if ($groupID <= 0) { ?>
49 <div class="n2_slider_manager__content--empty">
50 <div class="n2_slider_manager__content--empty__logo">
51 <i class="ssi_48 ssi_48--bug"></i>
52 </div>
53 <div class="n2_slider_manager__content--empty__heading">
54 <?php n2_e('Sorry we couldn’t find any matches'); ?>
55 </div>
56 <div class="n2_slider_manager__content--empty__paragraph">
57 <?php n2_e('Please try searching with another term.'); ?>
58 </div>
59 </div>
60 <?php } ?>
61
62 </div>
63 <?php if ($groupID <= 0) { ?>
64 <div class="n2_slider_manager__paginator" data-countstart="<?php echo $sliderCount ?>" data-currentstart="<?php echo $paginationIndex ?>" data-limitstart="<?php echo $limit ?>">
65 <?php
66 $blockPaginator = new BlockPaginator($this);
67 $blockPaginator->setSliderManager($this);
68 $blockPaginator->setSliderCount($sliderCount);
69 $blockPaginator->setPaginationLimit($limit);
70 $blockPaginator->display();
71 ?>
72 </div>
73 <div class="n2_slider_manager__search_label">
74 <p class="n2_slider_manager__search_label_item n2_slider_manager__search_label_item"><?php echo sprintf(n2_("Showing %s results for %s."), "<span class='n2_slider_manager__search_label_item__counter'>0</span>", "<span class='n2_slider_manager__search_label_item__keyword'></span>") ?></p>
45 </div> 75 </div>
76 <?php } ?>
46 </div> 77 </div>
......
...@@ -241,7 +241,10 @@ class ControllerAjaxSlider extends AdminAjaxController { ...@@ -241,7 +241,10 @@ class ControllerAjaxSlider extends AdminAjaxController {
241 $view = new ViewAjaxSliderBox($this); 241 $view = new ViewAjaxSliderBox($this);
242 $view->setSlider($slider); 242 $view->setSlider($slider);
243 243
244 $this->response->respond($view->display()); 244 $this->response->respond(array(
245 'html' => $view->display(),
246 'sliderCount' => $slidersModel->getSlidersCount('published', true)
247 ));
245 } 248 }
246 249
247 public function actionChangeSliderType() { 250 public function actionChangeSliderType() {
......
...@@ -7,6 +7,7 @@ namespace Nextend\SmartSlider3\Application\Admin\Sliders; ...@@ -7,6 +7,7 @@ namespace Nextend\SmartSlider3\Application\Admin\Sliders;
7 use Nextend\Framework\Controller\Admin\AdminAjaxController; 7 use Nextend\Framework\Controller\Admin\AdminAjaxController;
8 use Nextend\Framework\Data\Data; 8 use Nextend\Framework\Data\Data;
9 use Nextend\Framework\Filesystem\Filesystem; 9 use Nextend\Framework\Filesystem\Filesystem;
10 use Nextend\Framework\Misc\HttpClient;
10 use Nextend\Framework\Model\StorageSectionManager; 11 use Nextend\Framework\Model\StorageSectionManager;
11 use Nextend\Framework\Notification\Notification; 12 use Nextend\Framework\Notification\Notification;
12 use Nextend\Framework\Platform\Platform; 13 use Nextend\Framework\Platform\Platform;
...@@ -70,7 +71,7 @@ class ControllerAjaxSliders extends AdminAjaxController { ...@@ -70,7 +71,7 @@ class ControllerAjaxSliders extends AdminAjaxController {
70 $this->validatePermission('smartslider_edit'); 71 $this->validatePermission('smartslider_edit');
71 72
72 $slidersModel = new ModelSliders($this); 73 $slidersModel = new ModelSliders($this);
73 $result = $slidersModel->order(Request::$REQUEST->getVar('groupID', 0), Request::$REQUEST->getVar('sliderorder'), Request::$REQUEST->getInt('isReversed', 1)); 74 $result = $slidersModel->order(Request::$REQUEST->getVar('groupID', 0), Request::$REQUEST->getVar('sliderorder'), Request::$REQUEST->getInt('isReversed', 1), Request::$REQUEST->getVar('orders', array()));
74 $this->validateDatabase($result); 75 $this->validateDatabase($result);
75 76
76 Notification::success(n2_('Slider order saved.')); 77 Notification::success(n2_('Slider order saved.'));
...@@ -145,6 +146,100 @@ class ControllerAjaxSliders extends AdminAjaxController { ...@@ -145,6 +146,100 @@ class ControllerAjaxSliders extends AdminAjaxController {
145 $this->response->respond(); 146 $this->response->respond();
146 } 147 }
147 148
149 public function actionSearch() {
150 $this->validateToken();
151 $slidersModel = new ModelSliders($this);
152
153 $keyword = Request::$REQUEST->getVar('keyword', '');
154 $sliders = array();
155
156 $url = parse_url($keyword);
157 $baseUrl =parse_url(Platform::getSiteUrl()) ;
158
159 if (isset($url['host']) && $url['host'] === $baseUrl['host']) {
160 $options = array(
161 'error' => true,
162 );
163
164 $content = HttpClient::get($keyword, $options);
165 preg_match_all('/data-ssid="(?<id>[0-9]+)/', $content, $matches);
166
167 foreach ($matches['id'] as $sliderID) {
168 if ($_slider = $slidersModel->getWithThumbnail($sliderID)) {
169 array_push($sliders, $_slider);
170 }
171 }
172 }
173
174 $sliders = array_merge($sliders, $slidersModel->getSearchResults($keyword));
175 $result = array();
176 if (!empty($sliders)) {
177 foreach ($sliders as $slider) {
178 $result[] = array(
179 'id' => $slider['id'],
180 'alias' => $slider['alias'],
181 'title' => $slider['title'],
182 'thumbnail' => $this->getSliderThumbnail($slider),
183 'isGroup' => $slider['type'] == 'group',
184 'childrenCount' => $slider['slides'] > 0 ? $slider['slides'] : 0,
185 'editUrl' => $this->getUrlSliderEdit($slider['id'], $slider['group_id']),
186 'order' => $slider['ordering']
187 );
188 }
189 }
190
191 $this->response->respond($result);
192
193 }
194
195 public function actionPagination() {
196 $this->validateToken();
197 $slidersModel = new ModelSliders($this);
198 $pageIndex = Request::$REQUEST->getInt('pageIndex', 0);
199 $limit = Request::$REQUEST->getVar('limit', 20);
200 $orderBy = Request::$REQUEST->getCmd('orderBy', 'ordering');
201 $orderDirection = Request::$REQUEST->getCmd('orderDirection', 'ASC');
202
203 Settings::set('limit', $limit);
204 Settings::set('slidersOrder2', $orderBy);
205 Settings::set('slidersOrder2Direction', $orderDirection);
206
207 if ($pageIndex < 0) {
208 $pageIndex = 0;
209 }
210
211 $sliderCount = $slidersModel->getSlidersCount('published', true);
212 $result = array();
213
214 $sliders = $slidersModel->getAll(0, 'published', $orderBy, $orderDirection, $pageIndex, $limit);
215
216 //if last page is empty
217 if (empty($sliders) && $sliderCount) {
218 $lastPageIndex = intval(ceil(($sliderCount - $limit) / $limit));
219 $sliders = $slidersModel->getAll(0, 'published', $orderBy, $orderDirection, $lastPageIndex, $limit);
220 $result['pageIndex'] = $lastPageIndex;
221 }
222
223 if (!empty($sliders)) {
224 foreach ($sliders as $slider) {
225 $result['sliders'][] = array(
226 'id' => $slider['id'],
227 'alias' => $slider['alias'],
228 'title' => $slider['title'],
229 'thumbnail' => $this->getSliderThumbnail($slider),
230 'isGroup' => $slider['type'] == 'group',
231 'childrenCount' => $slider['slides'] > 0 ? $slider['slides'] : 0,
232 'editUrl' => $this->getUrlSliderEdit($slider['id'], 0),
233 'order' => $slider['ordering']
234 );
235 }
236 $result['slidersPerPage'] = count($sliders);
237 }
238 $result['sliderCount'] = $sliderCount;
239
240 $this->response->respond($result);
241 }
242
148 protected function actionImport() { 243 protected function actionImport() {
149 244
150 $this->validateToken(); 245 $this->validateToken();
......
...@@ -39,10 +39,10 @@ class ControllerSliders extends AbstractControllerAdmin { ...@@ -39,10 +39,10 @@ class ControllerSliders extends AbstractControllerAdmin {
39 } 39 }
40 40
41 protected function actionIndex() { 41 protected function actionIndex() {
42
43 $this->loadSliderManager(); 42 $this->loadSliderManager();
44 43
45 $view = new ViewSlidersIndex($this); 44 $view = new ViewSlidersIndex($this);
45 $view->setPaginationIndex(max(0, intval(Request::$REQUEST->getInt('pageIndex', 0)) - 1)); /*-1 needs because beautified query string*/
46 46
47 $view->display(); 47 $view->display();
48 } 48 }
...@@ -54,31 +54,10 @@ class ControllerSliders extends AbstractControllerAdmin { ...@@ -54,31 +54,10 @@ class ControllerSliders extends AbstractControllerAdmin {
54 $view->display(); 54 $view->display();
55 } 55 }
56 56
57 protected function actionOrderBy() {
58 $ordering = Request::$REQUEST->getCmd('ordering', null);
59 if ($ordering == 'DESC' || $ordering == 'ASC') {
60 Settings::set('slidersOrder2', 'ordering');
61 Settings::set('slidersOrder2Direction', 'ASC');
62 }
63
64 $time = Request::$REQUEST->getCmd('time', null);
65 if ($time == 'DESC' || $time == 'ASC') {
66 Settings::set('slidersOrder2', 'time');
67 Settings::set('slidersOrder2Direction', $time);
68 }
69 $title = Request::$REQUEST->getCmd('title', null);
70 if ($title == 'DESC' || $title == 'ASC') {
71 Settings::set('slidersOrder2', 'title');
72 Settings::set('slidersOrder2Direction', $title);
73 }
74
75 $this->redirectToSliders();
76 }
77
78 protected function actionExportAll() { 57 protected function actionExportAll() {
79 $slidersModel = new ModelSliders($this); 58 $slidersModel = new ModelSliders($this);
80 $sliders = $slidersModel->getAll(Request::$REQUEST->getInt('currentGroupID', 0), 'published'); 59 $groupID = (Request::$REQUEST->getVar('inSearch', false))?'*':Request::$REQUEST->getInt('currentGroupID', 0);
81 60 $sliders = $slidersModel->getAll($groupID, 'published');
82 $ids = Request::$REQUEST->getVar('sliders'); 61 $ids = Request::$REQUEST->getVar('sliders');
83 62
84 $files = array(); 63 $files = array();
......
...@@ -16,6 +16,7 @@ class ViewSlidersIndex extends AbstractView { ...@@ -16,6 +16,7 @@ class ViewSlidersIndex extends AbstractView {
16 * @var LayoutDefault 16 * @var LayoutDefault
17 */ 17 */
18 protected $layout; 18 protected $layout;
19 protected $paginationIndex = 0;
19 20
20 public function display() { 21 public function display() {
21 22
...@@ -35,12 +36,17 @@ class ViewSlidersIndex extends AbstractView { ...@@ -35,12 +36,17 @@ class ViewSlidersIndex extends AbstractView {
35 $this->layout->render(); 36 $this->layout->render();
36 } 37 }
37 38
39 public function setPaginationIndex($index) {
40 $this->paginationIndex = $index;
41 }
42
38 protected function displayHeader() { 43 protected function displayHeader() {
39 } 44 }
40 45
41 protected function displaySliderManager() { 46 protected function displaySliderManager() {
42 47
43 $sliderManager = new BlockSliderManager($this); 48 $sliderManager = new BlockSliderManager($this);
49 $sliderManager->setPaginationIndex($this->paginationIndex);
44 $this->layout->addContentBlock($sliderManager); 50 $this->layout->addContentBlock($sliderManager);
45 } 51 }
46 } 52 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -30,12 +30,20 @@ trait TraitAdminUrl { ...@@ -30,12 +30,20 @@ trait TraitAdminUrl {
30 )); 30 ));
31 } 31 }
32 32
33 public function getUrlDashboardOrderBy($orderBy, $direction) { 33 public function getUrlPaginator() {
34 $args = array(); 34
35 return $this->createAjaxUrl(array(
36 'sliders/pagination',
37 ));
38 }
35 39
40 public function getUrlDashboardOrderBy($orderBy, $direction, $page = null, $limit = null) {
41 $args = array();
36 $args[$orderBy] = $direction; 42 $args[$orderBy] = $direction;
43 $args['pageIndex'] = $page;
44 $args['limit'] = $limit;
37 45
38 return $this->createUrl(array( 46 return $this->createAjaxUrl(array(
39 'sliders/orderby', 47 'sliders/orderby',
40 $args 48 $args
41 ), true); 49 ), true);
......
...@@ -48,12 +48,13 @@ class ModelSliders extends AbstractModelTable { ...@@ -48,12 +48,13 @@ class ModelSliders extends AbstractModelTable {
48 public function getWithThumbnail($id) { 48 public function getWithThumbnail($id) {
49 $slidesModel = new ModelSlides($this); 49 $slidesModel = new ModelSlides($this);
50 50
51 return Database::queryRow("SELECT sliders.*, IF(sliders.thumbnail != '',sliders.thumbnail,(SELECT slides.thumbnail from " . $slidesModel->getTableName() . " AS slides WHERE slides.slider = sliders.id AND slides.published = 1 AND slides.generator_id = 0 AND slides.thumbnail NOT LIKE '' ORDER BY slides.first DESC, slides.ordering ASC LIMIT 1)) AS thumbnail, 51 return Database::queryRow("SELECT sliders.*,xref.group_id, IF(sliders.thumbnail != '',sliders.thumbnail,(SELECT slides.thumbnail from " . $slidesModel->getTableName() . " AS slides WHERE slides.slider = sliders.id AND slides.published = 1 AND slides.generator_id = 0 AND slides.thumbnail NOT LIKE '' ORDER BY slides.first DESC, slides.ordering ASC LIMIT 1)) AS thumbnail,
52 IF(sliders.type != 'group', 52 IF(sliders.type != 'group',
53 (SELECT count(*) FROM " . $slidesModel->getTableName() . " AS slides2 WHERE slides2.slider = sliders.id GROUP BY slides2.slider), 53 (SELECT count(*) FROM " . $slidesModel->getTableName() . " AS slides2 WHERE slides2.slider = sliders.id GROUP BY slides2.slider),
54 (SELECT count(*) FROM " . $this->xref->getTableName() . " AS xref2 WHERE xref2.group_id = sliders.id GROUP BY xref2.group_id) 54 (SELECT count(*) FROM " . $this->xref->getTableName() . " AS xref2 WHERE xref2.group_id = sliders.id GROUP BY xref2.group_id)
55 ) AS slides 55 ) AS slides
56 FROM " . $this->getTableName() . " AS sliders 56 FROM " . $this->getTableName() . " AS sliders
57 LEFT JOIN " . $this->xref->getTableName() . " AS xref ON xref.slider_id = sliders.id
57 WHERE sliders.id = :id", array( 58 WHERE sliders.id = :id", array(
58 ":id" => $id 59 ":id" => $id
59 )); 60 ));
...@@ -71,8 +72,22 @@ class ModelSliders extends AbstractModelTable { ...@@ -71,8 +72,22 @@ class ModelSliders extends AbstractModelTable {
71 $this->markChanged($sliderid); 72 $this->markChanged($sliderid);
72 } 73 }
73 74
74 public function getSlidersCount() { 75 public function getSlidersCount($status = '*', $witGroup = false) {
75 $data = Database::queryRow("SELECT COUNT(*) AS sliders FROM " . $this->getTableName()); 76 $wheres = array();
77 $join = "";
78
79 if ($status !== '*') {
80 $wheres[] = " WHERE _sliders.status LIKE " . Database::quote($status);
81 }
82
83 if ($witGroup) {
84 $join = "LEFT JOIN " . $this->xref->getTableName() . " AS xref ON xref.slider_id = _sliders.id ";
85 $wheres[] = "(xref.group_id IS NULL OR xref.group_id = 0)";
86 }
87
88 $data = Database::queryRow("SELECT COUNT(*) AS sliders FROM " . $this->getTableName() . " as _sliders " . $join . " " . implode(' AND ', $wheres));
89
90
76 if (!empty($data)) { 91 if (!empty($data)) {
77 return intval($data['sliders']); 92 return intval($data['sliders']);
78 } 93 }
...@@ -83,7 +98,7 @@ class ModelSliders extends AbstractModelTable { ...@@ -83,7 +98,7 @@ class ModelSliders extends AbstractModelTable {
83 /** 98 /**
84 * @return mixed 99 * @return mixed
85 */ 100 */
86 public function getAll($groupID = '*', $status = '*', $orderBy = 'ordering', $orderByDirection = 'ASC') { 101 public function getAll($groupID = '*', $status = '*', $orderBy = 'ordering', $orderByDirection = 'ASC', $page = null, $limit = 'all') {
87 $slidesModel = new ModelSlides($this); 102 $slidesModel = new ModelSlides($this);
88 103
89 if (empty($orderBy)) { 104 if (empty($orderBy)) {
...@@ -94,11 +109,16 @@ class ModelSliders extends AbstractModelTable { ...@@ -94,11 +109,16 @@ class ModelSliders extends AbstractModelTable {
94 } 109 }
95 110
96 $_orderby = $orderBy . ' ' . $orderByDirection; 111 $_orderby = $orderBy . ' ' . $orderByDirection;
112 $limitQuery = "";
97 113
98 $wheres = array(); 114 $wheres = array();
99 if ($groupID !== '*') { 115 if ($groupID !== '*') {
100 if ($groupID == 0) { 116 if ($groupID == 0) {
101 $wheres[] = "(xref.group_id IS NULL OR xref.group_id = 0)"; 117 $wheres[] = "(xref.group_id IS NULL OR xref.group_id = 0)";
118 if ($page !== null && $limit != 'all') {
119 $first = intval($page) * intval($limit);
120 $limitQuery = "LIMIT " . $first . "," . intval($limit);
121 }
102 } else { 122 } else {
103 if ($orderBy == 'ordering') { 123 if ($orderBy == 'ordering') {
104 $_orderby = 'xref.' . $orderBy . ' ' . $orderByDirection; 124 $_orderby = 'xref.' . $orderBy . ' ' . $orderByDirection;
...@@ -112,6 +132,7 @@ class ModelSliders extends AbstractModelTable { ...@@ -112,6 +132,7 @@ class ModelSliders extends AbstractModelTable {
112 $wheres[] = "sliders.status LIKE " . Database::quote($status); 132 $wheres[] = "sliders.status LIKE " . Database::quote($status);
113 } 133 }
114 134
135
115 $sliders = Database::queryAll(" 136 $sliders = Database::queryAll("
116 SELECT sliders.*, 137 SELECT sliders.*,
117 IF(sliders.thumbnail != '', 138 IF(sliders.thumbnail != '',
...@@ -129,7 +150,8 @@ class ModelSliders extends AbstractModelTable { ...@@ -129,7 +150,8 @@ class ModelSliders extends AbstractModelTable {
129 FROM " . $this->getTableName() . " AS sliders 150 FROM " . $this->getTableName() . " AS sliders
130 LEFT JOIN " . $this->xref->getTableName() . " AS xref ON xref.slider_id = sliders.id 151 LEFT JOIN " . $this->xref->getTableName() . " AS xref ON xref.slider_id = sliders.id
131 WHERE " . implode(' AND ', $wheres) . " 152 WHERE " . implode(' AND ', $wheres) . "
132 ORDER BY " . $_orderby); 153 ORDER BY " . $_orderby . " " . $limitQuery);
154
133 155
134 return $sliders; 156 return $sliders;
135 } 157 }
...@@ -138,6 +160,46 @@ class ModelSliders extends AbstractModelTable { ...@@ -138,6 +160,46 @@ class ModelSliders extends AbstractModelTable {
138 return Database::queryAll("SELECT sliders.* FROM " . $this->getTableName() . " AS sliders"); 160 return Database::queryAll("SELECT sliders.* FROM " . $this->getTableName() . " AS sliders");
139 } 161 }
140 162
163 public function getSearchResults($keyword = "") {
164 $slidesModel = new ModelSlides($this);
165 $wheres = array();
166 $orderByExtra = "";
167 $id = intval($keyword);
168 if ($id > 0) {
169 $wheres[] = "sliders.id LIKE '%" . $id . "%'";
170 $orderByExtra = "(sliders.id = '" . $id . "') DESC, ";
171 }
172
173 $wheres[] = "sliders.alias LIKE " . Database::quote('%' . $keyword . '%') . " OR sliders.title LIKE " . Database::quote('%' . $keyword . '%');
174
175 return Database::queryAll("SELECT sliders.*,
176 xref.group_id,
177 IF(sliders.thumbnail != '',
178 sliders.thumbnail,
179 IF(sliders.type != 'group',
180 (SELECT slides.thumbnail FROM " . $slidesModel->getTableName() . " AS slides WHERE slides.slider = sliders.id AND slides.published = 1 AND slides.generator_id = 0 AND slides.thumbnail NOT LIKE '' ORDER BY slides.first DESC, slides.ordering ASC LIMIT 1),
181 ''
182 )
183 ) AS thumbnail,
184 IF(sliders.type != 'group',
185 (SELECT count(*) FROM " . $slidesModel->getTableName() . " AS slides2 WHERE slides2.slider = sliders.id GROUP BY slides2.slider),
186 (SELECT count(*) FROM " . $this->xref->getTableName() . " AS xref2 LEFT JOIN " . $this->getTableName() . " AS sliders2 ON sliders2.id = xref2.slider_id WHERE xref2.group_id = sliders.id AND sliders2.status LIKE 'published' GROUP BY xref2.group_id)
187 ) AS slides
188 FROM " . $this->getTableName() . " AS sliders
189 LEFT JOIN " . $this->xref->getTableName() . " AS xref ON xref.slider_id = sliders.id
190 WHERE
191 (
192 xref.group_id IS NULL
193 OR xref.group_id = 0
194 OR (SELECT _sliders.status FROM " . $this->getTableName() . " AS _sliders WHERE _sliders.id = xref.group_id ) LIKE 'published'
195 )
196 AND sliders.status LIKE 'published'
197 AND (" . implode(' OR ', $wheres) . ")
198 GROUP BY sliders.id
199 ORDER BY " . $orderByExtra . "sliders.title ASC");
200
201 }
202
141 public function getGroups($status = '*') { 203 public function getGroups($status = '*') {
142 204
143 $wheres = array( 205 $wheres = array(
...@@ -167,7 +229,8 @@ class ModelSliders extends AbstractModelTable { ...@@ -167,7 +229,8 @@ class ModelSliders extends AbstractModelTable {
167 'type' => $slider['type'], 229 'type' => $slider['type'],
168 'thumbnail' => empty($slider['thumbnail']) ? '' : $slider['thumbnail'], 230 'thumbnail' => empty($slider['thumbnail']) ? '' : $slider['thumbnail'],
169 'params' => $slider['params']->toJSON(), 231 'params' => $slider['params']->toJSON(),
170 'time' => date('Y-m-d H:i:s', Platform::getTimestamp()) 232 'time' => date('Y-m-d H:i:s', Platform::getTimestamp()),
233 'ordering' => -1
171 )); 234 ));
172 235
173 $sliderID = $this->table->insertId(); 236 $sliderID = $this->table->insertId();
...@@ -177,6 +240,7 @@ class ModelSliders extends AbstractModelTable { ...@@ -177,6 +240,7 @@ class ModelSliders extends AbstractModelTable {
177 } 240 }
178 241
179 $this->xref->add($groupID, $sliderID); 242 $this->xref->add($groupID, $sliderID);
243 $this->reindexOrdering();
180 244
181 SmartSlider3Info::sliderChanged(); 245 SmartSlider3Info::sliderChanged();
182 246
...@@ -276,12 +340,13 @@ class ModelSliders extends AbstractModelTable { ...@@ -276,12 +340,13 @@ class ModelSliders extends AbstractModelTable {
276 'params' => json_encode($slider), 340 'params' => json_encode($slider),
277 'thumbnail' => $thumbnail, 341 'thumbnail' => $thumbnail,
278 'time' => date('Y-m-d H:i:s', Platform::getTimestamp()), 342 'time' => date('Y-m-d H:i:s', Platform::getTimestamp()),
279 'ordering' => $this->getMaximalOrderValue() 343 'ordering' => -1
280 )); 344 ));
281 345
282 $sliderID = $this->table->insertId(); 346 $sliderID = $this->table->insertId();
283 347
284 $this->xref->add($groupID, $sliderID); 348 $this->xref->add($groupID, $sliderID);
349 $this->reindexOrdering();
285 350
286 SmartSlider3Info::sliderChanged(); 351 SmartSlider3Info::sliderChanged();
287 352
...@@ -575,6 +640,7 @@ class ModelSliders extends AbstractModelTable { ...@@ -575,6 +640,7 @@ class ModelSliders extends AbstractModelTable {
575 AbstractCache::clearGroup(AdminSlider::getCacheId($id)); 640 AbstractCache::clearGroup(AdminSlider::getCacheId($id));
576 641
577 $this->markChanged($id); 642 $this->markChanged($id);
643 $this->reindexOrdering();
578 644
579 SmartSlider3Info::sliderChanged(); 645 SmartSlider3Info::sliderChanged();
580 646
...@@ -660,6 +726,8 @@ class ModelSliders extends AbstractModelTable { ...@@ -660,6 +726,8 @@ class ModelSliders extends AbstractModelTable {
660 } 726 }
661 } 727 }
662 728
729 $this->reindexOrdering();
730
663 SmartSlider3Info::sliderChanged(); 731 SmartSlider3Info::sliderChanged();
664 732
665 return $newSliderId; 733 return $newSliderId;
...@@ -671,7 +739,8 @@ class ModelSliders extends AbstractModelTable { ...@@ -671,7 +739,8 @@ class ModelSliders extends AbstractModelTable {
671 $helper->setSliderChanged($sliderid, 1); 739 $helper->setSliderChanged($sliderid, 1);
672 } 740 }
673 741
674 public function order($groupID, $ids, $isReverse = false) { 742 public function order($groupID, $ids, $isReverse = false, $orders = array()) {
743
675 if (is_array($ids) && count($ids) > 0) { 744 if (is_array($ids) && count($ids) > 0) {
676 if ($isReverse) { 745 if ($isReverse) {
677 $ids = array_reverse($ids); 746 $ids = array_reverse($ids);
...@@ -680,13 +749,23 @@ class ModelSliders extends AbstractModelTable { ...@@ -680,13 +749,23 @@ class ModelSliders extends AbstractModelTable {
680 if ($groupID <= 0) { 749 if ($groupID <= 0) {
681 $groupID = false; 750 $groupID = false;
682 } 751 }
752 if (!empty($orders)) {
753 asort($orders);
754 $orders = array_values($orders);
755 }
756
683 $i = 0; 757 $i = 0;
684 foreach ($ids as $id) { 758 foreach ($ids as $id) {
685 $id = intval($id); 759 $id = intval($id);
686 if ($id > 0) { 760 if ($id > 0) {
687 if (!$groupID) { 761 if (!$groupID) {
762 if (!empty($orders)) {
763 $order = intval($orders[$i]);
764 } else {
765 $order = $i;
766 }
688 $this->table->update(array( 767 $this->table->update(array(
689 'ordering' => $i, 768 'ordering' => $order,
690 ), array( 769 ), array(
691 "id" => $id 770 "id" => $id
692 )); 771 ));
...@@ -709,6 +788,18 @@ class ModelSliders extends AbstractModelTable { ...@@ -709,6 +788,18 @@ class ModelSliders extends AbstractModelTable {
709 return false; 788 return false;
710 } 789 }
711 790
791 public function reindexOrdering() {
792 $sliders = $this->getAll(0);
793 foreach ($sliders as $idx => $slider) {
794 $this->table->update(array(
795 'ordering' => $idx
796 ), array(
797 "id" => $slider['id']
798 ));
799 }
800
801 }
802
712 protected function getMaximalOrderValue() { 803 protected function getMaximalOrderValue() {
713 804
714 $query = "SELECT MAX(ordering) AS ordering FROM " . $this->getTableName() . ""; 805 $query = "SELECT MAX(ordering) AS ordering FROM " . $this->getTableName() . "";
......
...@@ -128,6 +128,69 @@ class PostsPostsByIDs extends AbstractGenerator { ...@@ -128,6 +128,69 @@ class PostsPostsByIDs extends AbstractGenerator {
128 } 128 }
129 } 129 }
130 } 130 }
131
132 $post_meta = get_post_meta($post->ID);
133
134 $excluded_metas = array(
135 'hc-editor-mode',
136 'techline-sidebar'
137 );
138
139 foreach ($excluded_metas as $excluded_meta) {
140 if (isset($post_meta[$excluded_meta])) {
141 unset($post_meta[$excluded_meta]);
142 }
143 }
144
145 if (count($post_meta) && is_array($post_meta) && !empty($post_meta)) {
146 foreach ($post_meta as $key => $value) {
147 if (count($value) && is_array($value) && !empty($value)) {
148 foreach ($value as $v) {
149 if (!empty($v) && !is_array($v) && !is_object($v)) {
150 $key = str_replace(array(
151 '_',
152 '-'
153 ), array(
154 '',
155 ''
156 ), $key);
157 if (array_key_exists($key, $record)) {
158 $key = 'meta' . $key;
159 }
160 if (is_serialized($v)) {
161 $unserialize_values = unserialize($v);
162 $unserialize_count = 1;
163 if (!empty($unserialize_values) && is_array($unserialize_values)) {
164 foreach ($unserialize_values as $unserialize_value) {
165 if (!empty($unserialize_value) && is_string($unserialize_value)) {
166 $record['us_' . $key . $unserialize_count] = $unserialize_value;
167 $unserialize_count++;
168 } else if (is_array($unserialize_value)) {
169 foreach ($unserialize_value as $u_v) {
170 if (is_string($u_v)) {
171 $record['us_' . $key . $unserialize_count] = $u_v;
172 $unserialize_count++;
173 }
174 }
175 }
176 }
177 }
178 } else {
179 $record[$key] = $v;
180 }
181 }
182 }
183 }
184 }
185 if (!empty($record['elementordata'])) {
186 $elementordatas = json_decode($record['elementordata']);
187 foreach ($elementordatas as $elementordata) {
188 foreach ($this->getElementorTextEditors($elementordata) as $elementorKey => $elementorVal) {
189 $record[$elementorKey] = $elementorVal;
190 }
191 }
192 }
193 }
131 if (isset($record['primarytermcategory'])) { 194 if (isset($record['primarytermcategory'])) {
132 $primary = get_category($record['primarytermcategory']); 195 $primary = get_category($record['primarytermcategory']);
133 $record['primary_category_name'] = $primary->name; 196 $record['primary_category_name'] = $primary->name;
......
...@@ -18,6 +18,11 @@ class Install { ...@@ -18,6 +18,11 @@ class Install {
18 $tables->install(); 18 $tables->install();
19 InstallWordPress::install(); 19 InstallWordPress::install();
20 20
21 preg_match('/[\d\.]+[\d]/', Settings::get('n2_ss3_version'), $oldversion);
22 if ($oldversion && version_compare($oldversion[0], "3.5.1.2", '<=')) {
23 $tables->reindexOrders();
24 }
25
21 Settings::set('n2_ss3_version', SmartSlider3Info::$completeVersion); 26 Settings::set('n2_ss3_version', SmartSlider3Info::$completeVersion);
22 27
23 /** 28 /**
......
...@@ -204,6 +204,28 @@ class Tables { ...@@ -204,6 +204,28 @@ class Tables {
204 )); 204 ));
205 } 205 }
206 206
207
208 public function reindexOrders() {
209 $query = "SELECT
210 sliders.*
211 FROM
212 `#__nextend2_smartslider3_sliders` AS sliders
213 LEFT JOIN `#__nextend2_smartslider3_sliders_xref` AS xref
214 ON
215 xref.slider_id = sliders.id
216 WHERE
217 (
218 xref.group_id IS NULL OR xref.group_id = 0
219 )
220 ORDER BY ordering";
221 $sliders = Database::queryAll(Database::parsePrefix($query));
222 foreach ($sliders as $idx => $slider) {
223 $this->query("UPDATE `#__nextend2_smartslider3_sliders` SET `ordering` = '" . $idx . "' WHERE `id` = " . $slider['id'] . " ");
224 }
225
226 }
227
228
207 /** 229 /**
208 * @param string $tableName 230 * @param string $tableName
209 * @param array|string $colNames 231 * @param array|string $colNames
......
...@@ -14,11 +14,18 @@ class WidgetHelper { ...@@ -14,11 +14,18 @@ class WidgetHelper {
14 $this, 14 $this,
15 'widgets_init' 15 'widgets_init'
16 ), 11); 16 ), 11);
17
18 /**
19 * As fallback for the Classic Widgets
20 */
21 if ($this->isOldEditor()) {
17 add_action('widgets_admin_page', array( 22 add_action('widgets_admin_page', array(
18 $this, 23 $this,
19 'widgets_admin_page' 24 'widgets_admin_page'
20 )); 25 ));
21 } 26 }
27 }
28
22 29
23 public function widgets_init() { 30 public function widgets_init() {
24 31
...@@ -32,10 +39,10 @@ class WidgetHelper { ...@@ -32,10 +39,10 @@ class WidgetHelper {
32 $widgetAreas = intval(Settings::get('wordpress-widget-areas', 1)); 39 $widgetAreas = intval(Settings::get('wordpress-widget-areas', 1));
33 if ($widgetAreas > 0) { 40 if ($widgetAreas > 0) {
34 for ($i = 1; $i <= $widgetAreas; $i++) { 41 for ($i = 1; $i <= $widgetAreas; $i++) {
35 42 $description = (!$this->isOldEditor()) ? 'Display this widget area in your theme: <strong>&lt;?php dynamic_sidebar( \'smartslider_area_' . $i . '\' ); ?&gt; </strong>' : '';
36 register_sidebar(array( 43 register_sidebar(array(
37 'name' => 'Custom Widget Area - #' . $i, 44 'name' => 'Custom Widget Area - #' . $i,
38 'description' => '', 45 'description' => $description,
39 'id' => 'smartslider_area_' . $i, 46 'id' => 'smartslider_area_' . $i,
40 'before_widget' => '', 47 'before_widget' => '',
41 'after_widget' => '', 48 'after_widget' => '',
...@@ -59,4 +66,10 @@ class WidgetHelper { ...@@ -59,4 +66,10 @@ class WidgetHelper {
59 } 66 }
60 67
61 } 68 }
69
70 private function isOldEditor() {
71 $blockEditor = function_exists('wp_use_widgets_block_editor');
72
73 return !$blockEditor || ($blockEditor && !wp_use_widgets_block_editor());
74 }
62 } 75 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -602,9 +602,9 @@ abstract class AbstractComponent { ...@@ -602,9 +602,9 @@ abstract class AbstractComponent {
602 $this->addLocalStyle('normal', 'background', $this->getBackgroundCSS($color, $gradient, $colorEnd, $backgroundStyle) . $backgroundStyle); 602 $this->addLocalStyle('normal', 'background', $this->getBackgroundCSS($color, $gradient, $colorEnd, $backgroundStyle) . $backgroundStyle);
603 603
604 604
605 $colorHover = $this->data->get('bgcolor-hover'); 605 $colorHover = $this->owner->fill($this->data->get('bgcolor-hover'));
606 $gradientHover = $this->data->get('bgcolorgradient-hover'); 606 $gradientHover = $this->data->get('bgcolorgradient-hover');
607 $colorEndHover = $this->data->get('bgcolorgradientend-hover'); 607 $colorEndHover = $this->owner->fill($this->data->get('bgcolorgradientend-hover'));
608 $isHoverDifferent = false; 608 $isHoverDifferent = false;
609 if (!empty($colorHover) && $colorHover != $color) { 609 if (!empty($colorHover) && $colorHover != $color) {
610 $isHoverDifferent = true; 610 $isHoverDifferent = true;
......
...@@ -175,10 +175,10 @@ class ItemYouTubeFrontend extends AbstractItemFrontend { ...@@ -175,10 +175,10 @@ class ItemYouTubeFrontend extends AbstractItemFrontend {
175 } 175 }
176 176
177 private function parseYoutubeUrl($youTubeUrl) { 177 private function parseYoutubeUrl($youTubeUrl) {
178 preg_match('/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/', $youTubeUrl, $matches); 178 preg_match('%(?:youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/\s]{11})%i', $youTubeUrl, $matches);
179 179
180 if ($matches && isset($matches[7]) && strlen($matches[7]) == 11) { 180 if ($matches && isset($matches[1]) && strlen($matches[1]) == 11) {
181 return $matches[7]; 181 return $matches[1];
182 } 182 }
183 183
184 return $youTubeUrl; 184 return $youTubeUrl;
......
...@@ -56,6 +56,15 @@ class SVGFlip { ...@@ -56,6 +56,15 @@ class SVGFlip {
56 $pathCommand = substr($values[$i], 0, 1); 56 $pathCommand = substr($values[$i], 0, 1);
57 $pathPart = substr($values[$i], 1); 57 $pathPart = substr($values[$i], 1);
58 $points = explode(',', $pathPart); 58 $points = explode(',', $pathPart);
59 if ($pathCommand === 'A') {
60 $points[2] = -$points[2];
61 $points[4] = ($points[4]) ? 1 : 0;
62 $points[5] = self::$viewBoxX - $points[5];
63 } else if ($pathCommand == 'a') {
64 $points[2] = -$points[2];
65 $points[4] = ($points[4]) ? 1 : 0;
66 $points[5] = -$points[5];
67 } else {
59 for ($j = 0; $j < count($points); $j = $j + 2) { 68 for ($j = 0; $j < count($points); $j = $j + 2) {
60 switch ($pathCommand) { 69 switch ($pathCommand) {
61 case 'l': 70 case 'l':
...@@ -78,6 +87,7 @@ class SVGFlip { ...@@ -78,6 +87,7 @@ class SVGFlip {
78 break; 87 break;
79 } 88 }
80 } 89 }
90 }
81 $newPath .= $pathCommand . implode(',', $points); 91 $newPath .= $pathCommand . implode(',', $points);
82 } 92 }
83 93
...@@ -94,6 +104,15 @@ class SVGFlip { ...@@ -94,6 +104,15 @@ class SVGFlip {
94 $pathCommand = substr($values[$i], 0, 1); 104 $pathCommand = substr($values[$i], 0, 1);
95 $pathPart = substr($values[$i], 1); 105 $pathPart = substr($values[$i], 1);
96 $points = explode(',', $pathPart); 106 $points = explode(',', $pathPart);
107 if ($pathCommand === 'A') {
108 $points[2] = -$points[2];
109 $points[4] = ($points[4]) ? 1 : 0;
110 $points[6] = self::$viewBoxY - $points[6];
111 } else if ($pathCommand === 'a') {
112 $points[2] = -$points[2];
113 $points[4] = ($points[4]) ? 1 : 0;
114 $points[6] = -$points[6];
115 } else {
97 for ($j = 0; $j < count($points); $j = $j + 2) { 116 for ($j = 0; $j < count($points); $j = $j + 2) {
98 switch ($pathCommand) { 117 switch ($pathCommand) {
99 case 'v': 118 case 'v':
...@@ -120,6 +139,7 @@ class SVGFlip { ...@@ -120,6 +139,7 @@ class SVGFlip {
120 break; 139 break;
121 } 140 }
122 } 141 }
142 }
123 $newPath .= $pathCommand . implode(',', $points); 143 $newPath .= $pathCommand . implode(',', $points);
124 } 144 }
125 145
...@@ -136,6 +156,13 @@ class SVGFlip { ...@@ -136,6 +156,13 @@ class SVGFlip {
136 $pathCommand = substr($values[$i], 0, 1); 156 $pathCommand = substr($values[$i], 0, 1);
137 $pathPart = substr($values[$i], 1); 157 $pathPart = substr($values[$i], 1);
138 $points = explode(',', $pathPart); 158 $points = explode(',', $pathPart);
159 if ($pathCommand === 'A') {
160 $points[5] = self::$viewBoxX - $points[5];
161 $points[6] = self::$viewBoxY - $points[6];
162 } else if ($pathCommand == 'a') {
163 $points[5] = -$points[5];
164 $points[6] = -$points[6];
165 } else {
139 for ($j = 0; $j < count($points); $j = $j + 2) { 166 for ($j = 0; $j < count($points); $j = $j + 2) {
140 switch ($pathCommand) { 167 switch ($pathCommand) {
141 case 'h': 168 case 'h':
...@@ -168,6 +195,7 @@ class SVGFlip { ...@@ -168,6 +195,7 @@ class SVGFlip {
168 break; 195 break;
169 } 196 }
170 } 197 }
198 }
171 $newPath .= $pathCommand . implode(',', $points); 199 $newPath .= $pathCommand . implode(',', $points);
172 } 200 }
173 201
......
...@@ -14,15 +14,15 @@ use Nextend\SmartSlider3\Application\Model\ModelLicense; ...@@ -14,15 +14,15 @@ use Nextend\SmartSlider3\Application\Model\ModelLicense;
14 14
15 class SmartSlider3Info { 15 class SmartSlider3Info {
16 16
17 public static $version = '3.5.1.2'; 17 public static $version = '3.5.1.3';
18 18
19 public static $channel = 'stable'; 19 public static $channel = 'stable';
20 20
21 public static $revision = 'f4759c2e729fca8cf3071d0c6356eadecf6f7308'; 21 public static $revision = '5023544a4fcfe8dfb1226d4b8c667713df879709';
22 22
23 public static $revisionShort = 'f4759c2e'; 23 public static $revisionShort = '5023544a';
24 24
25 public static $branch = 'release-3.5.1.2'; 25 public static $branch = 'release-3.5.1.3';
26 26
27 public static $completeVersion; 27 public static $completeVersion;
28 28
......
...@@ -94,7 +94,7 @@ class OutputBuffer { ...@@ -94,7 +94,7 @@ class OutputBuffer {
94 $this, 94 $this,
95 "outputCallback" 95 "outputCallback"
96 )); 96 ));
97 }); 97 }, 11);
98 } 98 }
99 } 99 }
100 100
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s,r=t.document,o=r.documentElement,h=t.setTimeout,a=t.clearTimeout,u=i._N2,c=(t.requestAnimationFrame,r.createElement.bind(r)),f=Object.assign,l=function(t,i){return t.dataset[i]},v=function(t,i){return t.dispatchEvent(i)},d=function(t,i,n){return n=f({bubbles:!0,cancelable:!0},n),v(t,new Event(i,n))},p=function(t,i,n,s){return s=s||{},t.addEventListener(i,n,s),t.removeEventListener.bind(t,i,n,s)},m=function(t){"complete"===r.readyState||"interactive"===r.readyState?t():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==r.addEventListener?Document.prototype.addEventListener.call(r,"DOMContentLoaded",t):r.addEventListener("DOMContentLoaded",t)},g=navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1?function(t){t()}:i.requestIdleCallback||function(t){return h(t,1)};i.cancelIdleCallback;m((function(){n=r.body})),function(){"use strict";var t={},n={};i.n2Slow=navigator.userAgent.indexOf("Chrome-Lighthouse")>-1&&navigator.userAgent.indexOf("Android")>-1;var r=[],o=!1;function a(){var t=performance.now(),n=r;r=[];for(var s=n.length-1;s>=0&&(n.pop().call(),!(performance.now()-t>7));s--);!i.n2Slow&&n.length&&(i.n2Slow=!0),n.unshift.apply(n,r),(r=n).length?g(a,{timeout:2e3}):o=!1}function f(t){r.unshift(t),o||(o=!0,g(a,{timeout:2e3}))}var l=new Date,v=function(){if(i.jQuery){var $=i.jQuery;u.d("$",(function(){return $}))}else{if(h(v,20),(new Date).getTime()-l.getTime()>1e3)c("script").src=u._jQueryFallback}};function d(i){return!(!i||t[i]!==s)&&(t[i]=new Promise((function(t){n[i]=t})),"$"===i&&v(),!0)}function p(i,s,r){var o=[];if(d(i)||n[i]){if("function"==typeof s?(r=s,s=[]):"string"==typeof s&&(s=[s]),(s=s||[]).length)for(var h=0;h<s.length;h++)d(s[h]),o.push(t[s[h]]);Promise.all(o).then(function(t){u[i]="function"!=typeof r||r.call(u),t()}.bind(this,n[i])),delete n[i]}}function m(i,n){var r=[];if(n===s?(n=i,i=[]):"string"==typeof i&&(i=[i]),i=i||[])for(var o=0;o<i.length;o++)d(i[o]),r.push(t[i[o]]);Promise.all(r).then((function(){n.call(u)}))}i.N2DISABLESCHEDULER?(u.d=p,u.r=m):(u.d=function(t,i,n){f(p.bind(this,t,i,n))},u.r=function(t,i){f(m.bind(this,t,i))});for(var b=0;b<this._N2._d.length;b++)u.d.apply(this,this._N2._d[b]);for(var w=0;w<this._N2._r.length;w++)u.r.apply(this,this._N2._r[w])}.call(i),i.NextendThrottle=function(t,i){var n,s;return i||(i=250),function(){var r=this,o=+new Date,u=arguments;n&&o<n+i?(a(s),s=h((function(){n=o,t.apply(r,u)}),i)):(n=o,t.apply(r,u))}},i.NextendDeBounce=function(t,i,n){var s;return function(){var r=this,o=arguments,u=function(){s=null,n||t.apply(r,o)},c=n&&!s;a(s),s=h(u,i),c&&t.apply(r,o)}},u.r("nextend-frontend",(function(){if(m((function(){u.d("documentReady")})),"complete"===r.readyState)u.d("windowLoad");else{let s;const o=navigator.userAgent;o.indexOf("Safari")>0&&-1===o.indexOf("Chrome")&&(s=setInterval((function(){"interactive"!==r.readyState&&"complete"!==r.readyState||(u.d("windowLoad"),clearInterval(s))}),2e3)),t="load",n=function(){u.d("windowLoad"),clearInterval(s)},i.addEventListener(t,n,{once:!0})}var t,n})),i.ResizeObserver||(i.ResizeObserver=function(){"use strict";var t=function(){if("undefined"!=typeof Map)return Map;function t(t,i){var n=-1;return t.some((function(t,s){return t[0]===i&&(n=s,!0)})),n}return function(){function i(){this.__entries__=[]}return Object.defineProperty(i.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),i.prototype.get=function(i){var n=t(this.__entries__,i),s=this.__entries__[n];return s&&s[1]},i.prototype.set=function(i,n){var s=t(this.__entries__,i);~s?this.__entries__[s][1]=n:this.__entries__.push([i,n])},i.prototype.delete=function(i){var n=this.__entries__,s=t(n,i);~s&&n.splice(s,1)},i.prototype.has=function(i){return!!~t(this.__entries__,i)},i.prototype.clear=function(){this.__entries__.splice(0)},i.prototype.forEach=function(t,i){void 0===i&&(i=null);for(var n=0,s=this.__entries__;n<s.length;n++){var r=s[n];t.call(i,r[1],r[0])}},i}()}(),n=void 0!==i&&void 0!==r&&i.document===r,s="undefined"!=typeof global&&global.Math===Math?global:"undefined"!=typeof self&&self.Math===Math?self:void 0!==i&&i.Math===Math?i:Function("return this")(),o="function"==typeof requestAnimationFrame?requestAnimationFrame.bind(s):function(t){return h((function(){return t(Date.now())}),1e3/60)},a=2;function u(t,i){var n=!1,s=!1,r=0;function u(){n&&(n=!1,t()),s&&f()}function c(){o(u)}function f(){var t=Date.now();if(n){if(t-r<a)return;s=!0}else n=!0,s=!1,h(c,i);r=t}return f}var c=20,f=["top","right","bottom","left","width","height","size","weight"],l="undefined"!=typeof MutationObserver,v=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=u(this.refresh.bind(this),c)}return t.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},t.prototype.removeObserver=function(t){var i=this.observers_,n=i.indexOf(t);~n&&i.splice(n,1),!i.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},t.prototype.updateObservers_=function(){var t=this.observers_.filter((function(t){return t.gatherActive(),t.hasActive()}));return t.forEach((function(t){return t.broadcastActive()})),t.length>0},t.prototype.connect_=function(){n&&!this.connected_&&(r.addEventListener("transitionend",this.onTransitionEnd_),i.addEventListener("resize",this.refresh),l?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(r,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(r.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){n&&this.connected_&&(r.removeEventListener("transitionend",this.onTransitionEnd_),i.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&r.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(t){var i=t.propertyName,n=void 0===i?"":i;f.some((function(t){return!!~n.indexOf(t)}))&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),d=function(t,i){for(var n=0,s=Object.keys(i);n<s.length;n++){var r=s[n];Object.defineProperty(t,r,{value:i[r],enumerable:!1,writable:!1,configurable:!0})}return t},p=function(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView||s},m=k(0,0,0,0);function g(t){return parseFloat(t)||0}function b(t){for(var i=[],n=1;n<arguments.length;n++)i[n-1]=arguments[n];return i.reduce((function(i,n){return i+g(t["border-"+n+"-width"])}),0)}function w(t){for(var i={},n=0,s=["top","right","bottom","left"];n<s.length;n++){var r=s[n],o=t["padding-"+r];i[r]=g(o)}return i}function y(t){var i=t.getBBox();return k(0,0,i.width,i.height)}function M(t){var i=t.clientWidth,n=t.clientHeight;if(!i&&!n)return m;var s=p(t).getComputedStyle(t),r=w(s),o=r.left+r.right,h=r.top+r.bottom,a=g(s.width),u=g(s.height);if("border-box"===s.boxSizing&&(Math.round(a+o)!==i&&(a-=b(s,"left","right")+o),Math.round(u+h)!==n&&(u-=b(s,"top","bottom")+h)),!_(t)){var c=Math.round(a+o)-i,f=Math.round(u+h)-n;1!==Math.abs(c)&&(a-=c),1!==Math.abs(f)&&(u-=f)}return k(r.left,r.top,a,u)}var x="undefined"!=typeof SVGGraphicsElement?function(t){return t instanceof p(t).SVGGraphicsElement}:function(t){return t instanceof p(t).SVGElement&&"function"==typeof t.getBBox};function _(t){return t===p(t).document.documentElement}function P(t){return n?x(t)?y(t):M(t):m}function O(t){var i=t.x,n=t.y,s=t.width,r=t.height,o="undefined"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,h=Object.create(o.prototype);return d(h,{x:i,y:n,width:s,height:r,top:n,right:i+s,bottom:r+n,left:i}),h}function k(t,i,n,s){return{x:t,y:i,width:n,height:s}}var S=function(){function t(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=k(0,0,0,0),this.target=t}return t.prototype.isActive=function(){var t=P(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},t}(),E=function(){function t(t,i){var n=O(i);d(this,{target:t,contentRect:n})}return t}(),A=function(){function i(i,n,s){if(this.activeObservations_=[],this.observations_=new t,"function"!=typeof i)throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=i,this.controller_=n,this.callbackCtx_=s}return i.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof p(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var i=this.observations_;i.has(t)||(i.set(t,new S(t)),this.controller_.addObserver(this),this.controller_.refresh())}},i.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof p(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var i=this.observations_;i.has(t)&&(i.delete(t),i.size||this.controller_.removeObserver(this))}},i.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},i.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach((function(i){i.isActive()&&t.activeObservations_.push(i)}))},i.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,i=this.activeObservations_.map((function(t){return new E(t.target,t.broadcastRect())}));this.callback_.call(t,i,t),this.clearActive()}},i.prototype.clearActive=function(){this.activeObservations_.splice(0)},i.prototype.hasActive=function(){return this.activeObservations_.length>0},i}(),C="undefined"!=typeof WeakMap?new WeakMap:new t,D=function(){function t(i){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=v.getInstance(),s=new A(i,n,this);C.set(this,s)}return t}();return["observe","unobserve","disconnect"].forEach((function(t){D.prototype[t]=function(){var i;return(i=C.get(this))[t].apply(i,arguments)}})),void 0!==s.ResizeObserver?s.ResizeObserver:D}()),u.StringHelper={capitalize:function(t){return t.charAt(0).toUpperCase()+t.slice(1)}},function(){var t=function(t){return Symbol.iterator in Object(t)},i={add:function(t){requestAnimationFrame(t)},remove:function(){}};u.t=u.t||i;var n,r=new class{constructor(){this.i=!1,this.o=new Set,this.h=this.u.bind(this)}add(t){this.o.add(t),this.i||(this.i=!0,u.t.add(this.h))}u(){for(let t of this.o)t.render?t.render():t();this.o.clear(),this.i=!1,u.t.remove(this.h)}},o={};n=/Safari/i.test(navigator.userAgent)&&!/Chrom[ei]/i.test(navigator.userAgent)?function(t,i,n,s){var r="";return s&&(t||i||n)?"translate3d("+(t||0)+"px, "+(i||0)+"px, "+(n||0)+"px) ":((t||i)&&(r+="translate("+(t||0)+"px, "+(i||0)+"px) "),n&&(r+="translateZ("+n+"px) "),r)}:function(t,i,n,s){return t||i||n?"translate3d("+(t||0)+"px, "+(i||0)+"px, "+(n||0)+"px) ":""};class h{constructor(i,n){t(i)?this.l=Array.from(i):this.l=[i],this.v=f({},n),this.p=new Set}get scale(){return this.scaleX}set scale(t){this.scaleX=t,this.scaleY=t}render(){for(let i of this.p){var t=this.v[i];switch(i){case"transform":t=this.m();break;case"filter":t=this.g();break;case"n2AutoAlpha":0===this.opacity?this.M||(this.M=!0,this._("data-force-hidden","")):this.M&&(this.M=!1,this.P("data-force-hidden"));continue;case"opacity":this.v.n2AutoAlpha&&(0===t?this.M||(this.M=!0,this._("data-force-hidden","")):this.M&&(this.M=!1,this.P("data-force-hidden")));break;case"width":case"height":case"perspective":"number"==typeof t&&(t+="px")}for(let n of this.l)n.style.setProperty(i,t)}this.p.clear()}m(){let{xP:t,yP:i,x:r,y:o,z:h,xAbs:a,yAbs:u,xPAbs:c,yPAbs:f,parallaxX:l,parallaxY:v,parallaxRotationX:d,parallaxRotationY:p,layerRotation:m,rotationZ:g,rotationY:b,rotationX:w,scaleX:y,scaleY:M,scaleZ:x,skewX:_,skewY:P,transformPerspective:O,force3D:k}=this.v,S="";return O&&(S+="perspective("+O+"px) "),(t||i)&&(S+="translate("+(t||0)+"%, "+(i||0)+"%) "),(a||u)&&(S+="translate("+(a||0)+"px, "+(u||0)+"px) "),(c||f)&&(S+="translate("+(c||0)+"%, "+(f||0)+"%) "),S+=n(r,o,h,k),_&&(S+="skewX("+_+"deg) "),P&&(S+="skewY("+P+"deg) "),m&&(S+="rotate("+m+"deg) "),g&&(S+="rotate("+g+"deg) "),b&&(S+="rotateY("+b+"deg) "),w&&(S+="rotateX("+w+"deg) "),y===s&&(y=1),M===s&&(M=1),1===y&&1===M||(S+="scale("+y+", "+M+") "),x===s&&(x=1),1!==x&&(S+="scaleZ("+x+") "),S||"translate3d(0, 0, 0)"}g(){let{n2blur:t}=this.v,i="";return t>.1&&(i="blur("+t+"px) "),i||"none"}_(t,i){for(let n of this.l)(n.relatedLayer||n).setAttribute(t,i)}P(t){for(let i of this.l)(i.relatedLayer||i).removeAttribute(t)}setValues(t){for(var i in t)this[i]=t[i]}}class a{constructor(t,i){this.O=[];for(var n=0;n<t.length;n++)t[n]&&this.O.push(b.k(t[n],i))}setValues(t){for(var i=0;i<this.O.length;i++)this.O[i].setValues(t)}}var c={},l=function(t){Object.defineProperty(a.prototype,t,{get:function(){return this.O[0][t]},set:function(i){i instanceof Function&&(i=i());for(var n=0;n<this.O.length;n++)this.O[n][t]=i}})},v=function(t,i,n){Object.getOwnPropertyDescriptor(h.prototype,t)||(i===s&&(i=""),n===s&&(n=t),c[n]===s&&(c[n]=[]),c[n].push(t),o[t]=i,Object.defineProperty(h.prototype,t,{get:function(){return this.v[t]===s&&(this.v[t]=o[t]),this.v[t]},set:function(i){i instanceof Function&&(i=i()),this.v[t]!==i&&(this.v[t]=i,this.p.add(n),r.add(this))}}),l(t))},d=function(t,i){Object.defineProperty(h.prototype,t,{get:function(){return this[i]},set:function(t){this[i]=t}}),l(t)};v("property"),v("display"),v("z-index",1),v("overflow","visible"),v("overflow-x","visible"),v("backface-visibility","visible"),v("transform-origin","50% 50% 0"),v("opacity",1),v("width",0),v("height",0),v("justify-content"),v("background"),v("color"),v("will-change",""),v("stroke-dasharray",""),v("visibility"),v("perspective",0),v("transform-style"),v("cursor",""),v("top"),v("right"),v("bottom"),v("left");var p="transform";v("force3D",0,p),v("transformPerspective",0,p),v("xP",0,p),v("yP",0,p),v("x",0,p),v("y",0,p),v("z",0,p),v("xAbs",0,p),v("yAbs",0,p),v("xPAbs",0,p),v("yPAbs",0,p),v("scaleX",1,p),v("scaleY",1,p),v("scaleZ",1,p),v("rotationZ",0,p),v("rotationX",0,p),v("rotationY",0,p),v("skewX",0,p),v("skewY",0,p),v("layerRotation",0,p),v("n2blur",0,"filter"),v("n2AutoAlpha",0),d("zIndex","z-index"),d("backfaceVisibility","backface-visibility"),d("transformOrigin","transform-origin"),d("justifyContent","justify-content"),d("transformStyle","transform-style"),d("overflowX","overflow-x"),d("clipPath","clip-path");var m={0:function(t){this.classList.add(t)},1:function(t){this.classList.remove(t)}};class g{constructor(i){t(i)?this.l=Array.from(i):this.l=[i],this.S=[]}addClass(t){this.S.push([0,t]),r.add(this)}removeClass(t){this.S.push([1,t]),r.add(this)}render(){for(var t=0;t<this.S.length;t++){var i=this.S[t];for(let t of this.l)m[i[0]].apply(t,i.splice(1))}this.S=[]}}var b=u.MW={A:v,k:function(t,i){return t.smw||(t.smw=new h(t,i)),t.smw},C:function(t,i){for(var n=[],s=0;s<t.length;s++)n.push(b.k(t[s],i));return n},D:function(t,i){return new a(t,i)},R:function(t,i){t.forEach((function(t){t.setValues(i)}))},T:function(t,i){i.forEach((function(i){c[i]&&c[i].forEach((function(i){t[i]=o[i]}))}))},j:function(t,i){r.add((function(){t.className.add(i)}))},F:function(t,i){r.add((function(){t.className.remove(i)}))},N:function(t){r.add(t)},I:function(t){return t.umw||(t.umw=new g(t)),t.umw},flush(){r.u()}}}(),customElements.define("ss3-force-full-width",class extends HTMLElement{connectedCallback(){if(this.isConnected){n=n||r.body,this.L="rtl"===o.getAttribute("dir"),this._width=0,this._offset=Number.MAX_SAFE_INTEGER,this.X=u.MW.k(this,{x:Number.MAX_SAFE_INTEGER,opacity:0});var t=l(this,"overflowX");t&&"none"!==t&&r.querySelectorAll(t).forEach((function(t){u.MW.k(t).overflowX="hidden"}));var s=n;if(i.ssForceFullHorizontalSelector)s=i.ssForceFullHorizontalSelector;else{var h=l(this,"horizontalSelector");if(h&&"body"!==h)try{s=this.closest(h)}catch(t){}}if(s===n)for(var a=[".elementor-section-stretched",'.siteorigin-panels-stretch[data-stretch-type="full-stretched"]','.siteorigin-panels-stretch[data-stretch-type="full-stretched-padded"]',".themify_builder_row.fullwidth",'.vce-row[data-vce-stretch-content="true"]'],c=0;c<a.length;c++){var f=this.closest(a[c]);if(f){s=f;break}}this.fullWidthTo=s,this.resizeObserver=new ResizeObserver(this.doResize.bind(this)),this.resizeObserver.observe(this.parentNode),i.addEventListener("resize",this.doResize.bind(this))}}doResize(){var t=0,s=0;if(this.fullWidthTo){var r=this.fullWidthTo.getBoundingClientRect();s=r.width,t=this.L?-s+r.right:r.left}var o,h,a=s>0?s:n.clientWidth,u=i.getComputedStyle(this.parentNode);o=this.L?a-this.parentNode.getBoundingClientRect().right-parseInt(u.getPropertyValue("padding-right"))-parseInt(u.getPropertyValue("border-right-width"))+t:-this.parentNode.getBoundingClientRect().left-parseInt(u.getPropertyValue("padding-left"))-parseInt(u.getPropertyValue("border-left-width"))+t,o+=h=o%1,a-=Math.floor(h),(this._width-a<=0||this._width-a>1||this._offset-o<-1||this._offset-o>=0)&&(this._offset!==o&&(this.X.x=o,this._offset=o,0!==o&&this.classList.add("n2-ss-no-bga-fixed")),this._width!==a&&(this.X.width=a,this._width=a)),this.setVisible&&this.setVisible()}setVisible(){this.X.opacity=1,delete this.setVisible}}),customElements.define("ss3-loader",class extends HTMLElement{connectedCallback(){this.B=[]}set display(t){this.V!==t&&(this.V=t,this.style.display=t)}show(){this.display="grid"}addPromise(t){this.B.push(t),this.syncStyle(),t.finally(this.removePromise.bind(this,t))}removePromise(t){var i=this.B.indexOf(t);i>-1&&(this.B.splice(i,1),this.syncStyle())}syncStyle(){this.B.length?this.Y||(this.Y=h(this.show.bind(this),100)):(this.Y&&(a(this.Y),delete this.Y),this.display="")}});var b,w="MacIntel"===navigator.platform&&navigator.maxTouchPoints>1;i.n2const={devicePixelRatio:i.devicePixelRatio||1,isFirefox:/Firefox/i.test(navigator.userAgent),isIOS:/iPad|iPhone|iPod/.test(navigator.platform)||w,isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Silk/i.test(navigator.userAgent)||w,isPhone:/Android/i.test(navigator.userAgent)&&/mobile/i.test(navigator.userAgent)||/webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),isSamsungBrowser:navigator.userAgent.match(/SamsungBrowser/i),isBot:/bot|googlebot|crawler|spider|robot|crawling|Google Search Console/i.test(navigator.userAgent),isLighthouse:navigator.userAgent.indexOf("Chrome-Lighthouse")>-1,lightboxMobileNewTab:1,isVideoAutoplayAllowed:function(){var t=!!(navigator.platform.match(/(Win|Mac)/)||!/Mobi/.test(navigator.userAgent)||"playsInline"in c("video")||"webkit-playsinline"in c("video")||navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)&&parseInt(navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)[2])>=53||navigator.userAgent.match(/Android.*(Firefox|Edge|Opera)/));return i.n2const.isVideoAutoplayAllowed=function(){return t},t},isWaybackMachine:function(){var t=void 0!==i.__wm;return i.n2const.isWaybackMachine=function(){return t},t},setLocation:function(t){"function"==typeof i.zajax_goto?i.zajax_goto(t):i.location=t},isParentSameOrigin:function(){try{return parent.document,!0}catch(t){}return!1},activeElementBlur:function(){r.activeElement&&r.activeElement.blur()},getScrollbarSize:function(){var t=c("div");t.style.visibility="hidden",t.style.overflow="scroll",n.appendChild(t);var i=t.offsetHeight-t.clientHeight;return n.removeChild(t),n2const.getScrollbarSize=function(){return i},i},fonts:new Promise((function(t){if("fonts"in r){r.fonts.ready.then(t);const i=navigator.userAgent;i.indexOf("Safari")>0&&-1===i.indexOf("Chrome")&&u.r("windowLoad",t)}else u.r("windowLoad",t)}))},i.n2const.isTablet=!i.n2const.isPhone&&(/Android|iPad|tablet|Silk/i.test(navigator.userAgent)||w),i.n2const.rtl=(i.n2const.isRTL=function(){return i.n2const.rtl.isRtl},"rtl"===o.getAttribute("dir")?{isRtl:!0,marginLeft:"marginRight",marginRight:"marginLeft","margin-left":"margin-right","margin-right":"margin-left",left:"right",right:"left",modifier:-1}:{isRtl:!1,marginLeft:"marginLeft",marginRight:"marginRight","margin-left":"margin-left","margin-right":"margin-right",left:"left",right:"right",modifier:1}),u._triggerResize=(b=null,function(){b&&a(b),b=h((function(){d(i,"resize"),b=null}),100)}),u._shouldPreventClick=!1,u._preventClick=function(){u._shouldPreventClick||(u._shouldPreventClick=!0,h((function(){u._shouldPreventClick=!1}),300))},u.d("ImagesLoaded",(function(){return function(t){var i,n=[];i="IMG"===t.tagName?[t]:t.querySelectorAll("img");for(var s=0;s<i.length;s++){var r=i[s];r.loading="eager",r.complete?r.naturalWidth||n.push(new Promise(function(t){h(t,16)}.bind(r))):n.push(new Promise(function(t,i){this.addEventListener("load",(function(){t()})),this.addEventListener("error",(function(){i()}))}.bind(r)))}return Promise.all(n)}})),u.d("UniversalPointer",(function(){var t=!!i.PointerEvent,n=!!i.TouchEvent;function r(t,i){this.el=t,this.handler=i,this.preventMouse=!1,this.timeouts=[],this.localListeners=[],this.globalListeners=[]}function c(i,s,h){var a=this.context=new r(i,s);a.addGlobalEventListener("click",(function(e){a.preventMouse||a.click(e)})),t?a.addGlobalEventListener("pointerdown",(function(t){t.isPrimary&&(a.startComplexInteraction(t.currentTarget),a.addLocalEventListener(o,"pointerup",(function(i){i.isPrimary&&t.pointerId===i.pointerId&&(Math.abs(i.clientX-t.clientX)<10&&Math.abs(i.clientY-t.clientY)<10?a.click(i):a.clear(),a.endComplexInteraction())})))})):n&&a.addGlobalEventListener("touchstart",(function(t){a.clearTimeouts(),a.startComplexInteraction(t.currentTarget),a.addLocalEventListener(o,"touchend",(function(i){Math.abs(i.changedTouches[0].clientX-t.changedTouches[0].clientX)<10&&Math.abs(i.changedTouches[0].clientY-t.changedTouches[0].clientY)<10?a.click(i):a.clear(),a.endComplexInteraction()}),{passive:!0})}),{passive:!0})}function l(t,i,n){this.el=t,this.handler=i,this.leaveOnSecond=n,this.preventMouse=!1,this.isActive=!1,this.timeouts=[],this.localListeners=[],this.globalListeners=[]}function d(i,s,r){r=f({leaveOnSecond:!1},r);var a=this.context=new l(i,s,r.leaveOnSecond);t?(a.addGlobalEventListener("pointerenter",(function(e){e.isPrimary&&(a.clearTimeouts(),a.enter(e)&&"mouse"!==e.pointerType&&(a.addLocalEventListener(o,"pointerdown",(function(e){e.isPrimary&&a.testLeave(e.target)})),a.addTimeout(h((function(){a.leave()}),5e3))))})),a.addGlobalEventListener("pointerleave",(function(e){e.isPrimary&&"mouse"===e.pointerType&&a.leave()}))):(a.addGlobalEventListener("mouseenter",(function(e){a.preventMouse||a.enter(e)})),a.addGlobalEventListener("mouseleave",(function(){a.preventMouse||a.leave()})),n&&a.addGlobalEventListener("touchstart",(function(e){a.preventMouse=!0,a.clearTimeouts(),a.enter(e)&&(a.addLocalEventListener(o,"touchstart",(function(e){a.testLeave(e.target)})),a.addTimeout(h((function(){a.leave(),a.preventMouse=!1}),5e3)))}),{passive:!0}))}r.prototype.addTimeout=function(t){this.timeouts.push(t)},r.prototype.clearTimeouts=function(){for(var t=0;t<this.timeouts.length;t++)a(this.timeouts[t]);this.timeouts=[]},r.prototype.click=function(e){this.currentTarget!==s&&(e={currentTarget:this.currentTarget,target:this.el}),this.handler.call(this.el,e),this.clear()},r.prototype.clear=function(){for(var t=0;t<this.localListeners.length;t++)this.localListeners[t][0].removeEventListener(this.localListeners[t][1],this.localListeners[t][2],this.localListeners[t][3])},r.prototype.addGlobalEventListener=function(t,i,n){this.globalListeners.push(p(this.el,t,i,n))},r.prototype.addLocalEventListener=function(t,i,n,s){this.localListeners.push([t,i,n,s]),t.addEventListener(i,n,s)},r.prototype.remove=function(){this.clear(),this.clearTimeouts();for(var t=0;t<this.globalListeners.length;t++)this.globalListeners[t]();delete this.globalListeners},r.prototype.startComplexInteraction=function(t){this.clearTimeouts(),this.preventMouse=!0,this.currentTarget=t},r.prototype.endComplexInteraction=function(){delete this.currentTarget,this.addTimeout(h(function(){this.preventMouse=!1}.bind(this),1e3))},c.prototype.remove=function(){this.context.remove(),delete this.context},u.UniversalClick=c,l.prototype.enter=function(e){return this.leaveOnSecond&&this.isActive?(this.leave(),!1):(this.handler.apply(this.el,arguments),this.isActive=!0,!0)},l.prototype.leave=function(){this.clearTimeouts();for(var t=0;t<this.localListeners.length;t++)this.localListeners[t][0].removeEventListener(this.localListeners[t][1],this.localListeners[t][2],this.localListeners[t][3]);var i;this.isActive=!1,i=this.el,v(i,new Event("universalleave",{bubbles:!1,cancelable:!1}))},l.prototype.testLeave=function(t){!this.el===t&&this.el.contains(t)&&this.leave()},l.prototype.addTimeout=function(t){this.timeouts.push(t)},l.prototype.clearTimeouts=function(){for(var t=0;t<this.timeouts.length;t++)a(this.timeouts[t]);this.timeouts=[]},l.prototype.addGlobalEventListener=function(t,i,n){this.globalListeners.push(p(this.el,t,i,n))},l.prototype.remove=function(){this.isActive&&this.leave(),this.clearTimeouts();for(var t=0;t<this.globalListeners.length;t++)this.globalListeners[t]();delete this.globalListeners},l.prototype.addLocalEventListener=function(t,i,n,s){this.localListeners.push([t,i,n,s]),t.addEventListener(i,n,s)},d.prototype.remove=function(){this.context.remove(),delete this.context},u.UniversalEnter=d})),u.d("EventBurrito",(function(){var t=function(){return!0},o=!1;return function(a,u){var c={preventDefault:!0,preventScroll:!1,mouse:!0,axis:"x",start:t,move:t,end:t,click:t};f(c,u);var l,v,m,g,b={pointerEvents:!(n2const.isIOS&&i.TouchEvent||!i.PointerEvent&&!i.PointerEventsPolyfill)},w={},y={},M=[],x=!0,_=b.pointerEvents?1:0,P=[["touchstart","touchmove","touchend","touchcancel"],["pointerdown","pointermove","pointerup","pointercancel","pointerleave"],["mousedown","mousemove","mouseup","","mouseleave"]],O=[function(e){return e.touches&&e.touches.length>1||e.scale&&1!==e.scale},function(e){return!e.isPrimary||e.buttons&&1!==e.buttons||!c.mouse&&"touch"!==e.pointerType&&"pen"!==e.pointerType},function(e){return e.buttons&&1!==e.buttons}],k=function(t,i){var n=t.tagName;return"INPUT"===n||"TEXTAREA"===n||"SELECT"===n||"BUTTON"===n||"VIDEO"===n||t.classList.contains("n2_container_scrollable")||t.closest(".n2_container_scrollable")};function S(t){t.preventDefault?t.preventDefault():t.returnValue=!1}function E(t){y={x:(g?t.clientX:t.touches[0].clientX)-w.x,y:(g?t.clientY:t.touches[0].clientY)-w.y,time:Date.now()}}function A(e,t){if((e.isPrimary===s||e.isPrimary)&&!o&&(l=[],x=!0,!O[g=t](e)&&!k(e.target)))if(("mousedown"===e.type||"pointerdown"===e.type&&"mouse"===e.pointerType)&&e.target.closest(".n2-ss-text")){var i=p(e.target,"click",(function(t){i(),Math.abs(e.clientX-t.clientX)<10&&Math.abs(e.clientY-t.clientY)<10&&d(e.target,"n2click")}));h(i,2e3)}else o=!0,0!==g&&l.push(p(r,P[g][1],C,{passive:!1,capture:!0})),l.push(p(r,P[g][2],R,{passive:!1,capture:!0})),l.push(p(r,P[g][3],R,{passive:!1,capture:!0})),l.push(p(n,P[g][4],D,{passive:!1,capture:!0})),w={x:g?e.clientX:e.touches[0].clientX,y:g?e.clientY:e.touches[0].clientY,time:Date.now()},v=s,m=!1,y={x:0,y:0},c.start(e,w),C(e)}function C(t){(t.isPrimary===s||t.isPrimary)&&("x"===c.axis&&(!c.preventScroll&&v||O[g](t))||k(t.target)||(E(t),(Math.abs(y.x)>10||Math.abs(y.y)>10)&&(x=!1),v===s&&2!==g&&(v=Math.abs(y.x)<Math.abs(y.y)&&!c.preventScroll)||c.move(t,w,y,m)&&c.preventDefault&&S(t)))}function D(t){t.target===t.currentTarget&&R(t)}function R(t){if(t.isPrimary===s||t.isPrimary){g&&E(t),!x&&t.target&&t.target.blur&&t.target.blur();for(var i=l.length-1;i>=0;i--)l[i]();l=null,c.end(t,w,y,m),m=!1,o=!1}}return M.push(p(r,"scroll",(function(){i.nextendScrollFocus!==s&&i.nextendScrollFocus||(m=!0)}))),1===_&&(a.style.touchAction="y"===c.axis?"pan-x":"pan-y"),M.push(p(a,P[_][0],(function(e){A(e,_)}),{passive:!1,capture:!0})),0===_&&M.push(p(a,P[0][1],(function(e){C(e)}),{passive:!1,capture:!0})),M.push(p(a,"dragstart",S)),c.mouse&&0===_&&M.push(p(a,P[2][0],(function(e){A(e,2)}))),M.push(p(a,"click",(function(t){x?c.click(t):S(t)}))),{supportsPointerEvents:b.pointerEvents,getClicksAllowed:function(){return x},kill:function(){for(var t=M.length-1;t>=0;t--)M[t]()}}}})),function(){var t,n=!1,s=-1,r=new Set,o=new Set,a=i.requestAnimationFrame||(t=0,function(i){var n=(new Date).getTime(),s=Math.max(0,16-(n-t));return t=n+s,h((function(){i(n+s)}),s)});function c(t){s=t,n&&(s=t,a(f))}function f(t){if(n&&0===r.size&&0===o.size)s=-1,n=!1;else if(-1!==s){var i=(t-s)/1e3;0!==i&&(r.forEach((function(t){t(i)})),o.forEach((function(t){t()})))}!function(t){n&&(s=t,a(f))}(t)}u.t={addP:function(t){r.add(t),n||(n=!0,a(c))},removeP:function(t){r.delete(t)},add:function(t){o.add(t),n||(n=!0,a(c))},remove:function(t){o.delete(t)}}}(),u.d("Animation",(function(){function t(t){this._tickCallback=null,this._progress=0,this._delayTimeout=!1,this._delay=0,this._duration=4,this._timeScale=1,this._isPlaying=!1,this._startTime=0,this._eventCallbacks={},this._immediateRender=!0,this._timeline=null,this._isCompleted=!1,this._isStarted=!1,this._isReversed=!1,this.toParams=t,this.initParameters()}return t.prototype.initParameters=function(){this.parseParameters(this.toParams),"object"!=typeof this.toParams&&this.paused(!1)},t.prototype.parseParameters=function(t){t&&(t.delay&&(this.delay(t.delay),delete t.delay),t.duration!==s&&(this.duration(t.duration),delete t.duration),t.onComplete&&(this.eventCallback("onComplete",t.onComplete),delete t.onComplete),t.onStart&&(this.eventCallback("onStart",t.onStart),delete t.onStart),t.onUpdate&&(this.eventCallback("onUpdate",t.onUpdate),delete t.onUpdate),t.immediateRender&&(this._immediateRender=t.immediateRender,delete t.immediateRender),t.paused&&(this.paused(!0),delete t.paused))},t.prototype.setTimeline=function(t){this._timeline=t},t.prototype._tick=function(t){var i=this._progress;this._isReversed?(this._progress-=t/this._duration*this._timeScale,1!=i&&this._isStarted?this._progress<=0?(this._progress=0,this._isPlaying=!1,u.t.removeP(this.getTickCallback()),this._onUpdate(),this._onReverseComplete()):this._onUpdate():this._onReverseStart()):(this._progress+=t/this._duration*this._timeScale,0!=i&&this._isStarted?this._progress>=1?(this._progress=1,this._isPlaying=!1,u.t.removeP(this.getTickCallback()),this._onUpdate(),this._onComplete()):this._onUpdate():this._onStart())},t.prototype._onStart=function(){this._isStarted=!0,this._isCompleted=!1,this._dispatch("onStart"),this._onUpdate()},t.prototype._onUpdate=function(){this._dispatch("onUpdate")},t.prototype._onComplete=function(){this._isCompleted=!0,this._onUpdate(),this._dispatch("onComplete")},t.prototype._onReverseComplete=function(){this._isCompleted=!0,this._isReversed=!1,this._onUpdate(),this._dispatch("onReverseComplete")},t.prototype._onReverseStart=function(){this._isStarted=!0,this._isCompleted=!1,this._dispatch("onReverseStart"),this._onUpdate()},t.prototype.getTickCallback=function(){if(!this._tickCallback){var t=this;this._tickCallback=function(){t._tick.apply(t,arguments)}}return this._tickCallback},t.prototype._clearDelayTimeout=function(){this._delayTimeout&&(a(this._delayTimeout),this._delayTimeout=!1)},t.prototype._timeToProgress=function(t){return t/this._duration*this._timeScale},t.prototype.delay=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return!isNaN(t)&&t!=1/0&&t||(t=0),this._delay=Math.max(0,t),this}return this._delay},t.prototype.duration=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return!isNaN(t)&&t!=1/0&&t||(t=0),this._duration=Math.max(0,t),this}return this._duration},t.prototype.eventCallback=function(t){return arguments.length>3?this._eventCallbacks[t]=[arguments[1],arguments[2],arguments[3]]:arguments.length>2?this._eventCallbacks[t]=[arguments[1],arguments[2],this]:arguments.length>1&&(this._eventCallbacks[t]=[arguments[1],[],this]),this._eventCallbacks[t]},t.prototype.pause=function(){return this._isPlaying=!1,u.t.removeP(this.getTickCallback()),arguments.length>0&&null!=arguments[0]&&this.progress(this._timeToProgress(arguments[0])),this},t.prototype.paused=function(){return arguments.length>0?(arguments[0]?this._isPlaying&&this.pause():this._isPlaying||this.play(),this):!this._isPlaying},t.prototype.play=function(){var t=!0;arguments.length>0&&null!=arguments[0]&&(t=!1,this._progress=this._timeToProgress(arguments[0])),this._play(t)},t.prototype._play=function(t){if(this._progress<1)if(0==this._progress&&t&&this._delay>0){if(!this._delayTimeout){var i=this;this._delayTimeout=h((function(){i.__play.apply(i,arguments)}),1e3*this._delay)}}else this.__play();else this._isCompleted||(this._isReversed?this._onReverseComplete():this._onComplete())},t.prototype.__play=function(){this._clearDelayTimeout(),this._isPlaying||(u.t.addP(this.getTickCallback()),this._isPlaying=!0)},t.prototype.progress=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),t=Math.min(1,Math.max(0,t)),this._progress=t,this._isPlaying||(this._isStarted||this._onStart(),this._onUpdate()),this}return this._progress},t.prototype.reverse=function(){this._isReversed=!0,0!=this.progress()&&this.play()},t.prototype.restart=function(){return arguments.length>0&&arguments[0]?(this.pause(0),this.play(),this):(this.play(0),this)},t.prototype.seek=function(t){null!=t&&(this._progress=this._timeToProgress(arguments[0]),this._isPlaying||this._onUpdate())},t.prototype.startTime=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),this._startTime=Math.max(0,t),this}return this._startTime},t.prototype.timeScale=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=1),t=Math.max(.01,t),this._timeScale!=t&&(this._timeScale=t),this}return this._timeScale},t.prototype._dispatch=function(t){"object"==typeof this._eventCallbacks[t]&&this._eventCallbacks[t][0].apply(this._eventCallbacks[t][2],this._eventCallbacks[t][1])},t.prototype.totalDuration=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),t=Math.max(0,t),this.timeScale(this._duration/t),this}return this._duration*this._timeScale},t.prototype.reset=function(){this._isCompleted=!1,this._isStarted=!1,this.progress(0)},t})),u.d("Tween",(function(){var t=2,i=3,n=function(t){return Symbol.iterator in Object(t)};function r(s,r){var o,h;switch(this.ease="linear",this._tweenContainer=null,this._setContainer=null,this._roundProps={},arguments.length){case 4:o=arguments[2],h=arguments[3],this._mode=t;break;default:this._mode=i,o={},h=arguments[2]}if(n(s)||(s=[s]),this._target=s,this.fromParams=o,u.Animation.call(this,h),this.parseParameters({duration:r}),this._mode===t&&this._immediateRender){for(var a in null===this._tweenContainer&&this._makeTweenContainer(this.fromParams,this.toParams),this._tweenContainer){var c=this._tweenContainer[a];this._target.forEach((function(t){t[a]=c.unit?c.startValue+c.unit:c.startValue}))}for(var a in this._setContainer){c=this._setContainer[a];this._target.forEach((function(t){t[a]=c.unit?c.endValue+c.unit:c.endValue}))}}}function o(t){var i=[t,""];t=String(t);var n=parseFloat(t);return isNaN(n)||(i[0]=n,i[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||""),i}function h(t,i,n,r){n===s&&(n=t[0][i]),r===s&&(r=t[0][i]),n=o(n);var h=0;return""!==(r=o(r))[1]&&n[1]!==r[1]&&(n[0]=0,n[1]=r[1]),"number"==typeof n[0]&&"number"==typeof r[0]&&(h=r[0]-n[0]),{startValue:n[0],endValue:r[0],unit:r[1],range:h}}return r.prototype=Object.create(u.Animation.prototype),r.prototype.constructor=r,r.prototype.initParameters=function(){this.parseParameters(this.fromParams),u.Animation.prototype.initParameters.apply(this,arguments)},r.prototype.parseParameters=function(t){t&&(t.ease&&(this.ease=t.ease,delete t.ease),u.Animation.prototype.parseParameters.apply(this,arguments))},r.prototype._onStart=function(){for(var t in null===this._tweenContainer&&this._makeTweenContainer(this.fromParams,this.toParams),this._setContainer){var i=this._setContainer[t];this._target.forEach((function(n){n[t]=i.unit?i.endValue+i.unit:i.endValue}))}u.Animation.prototype._onStart.call(this)},r.prototype._onUpdate=function(){for(var t in this._tweenContainer){var i=this._tweenContainer[t],n=u.Easings[this.ease]?u.Easings[this.ease](this._progress):this._progress,s=i.startValue+i.range*n;this._roundProps[t]&&(s=Math.round((10*s|0)/10)),this._target.forEach((function(n){n[t]=i.unit?s+i.unit:s}))}u.Animation.prototype._onUpdate.call(this)},r.prototype.initRoundProps=function(t){for(var i=t.split(","),n=0;n<i.length;n++)this._roundProps[i[n]]=!0},r.prototype._makeTweenContainer=function(t,i){for(var n in t.snap!==s&&(this.initRoundProps(t.snap),delete t.snap),this._setContainer={},this._tweenContainer={},i.snap!==s&&(this.initRoundProps(i.snap),delete i.snap),i){var r=h(this._target,n,t[n],i[n]);0==r.range?this._setContainer[n]=r:this._tweenContainer[n]=r}},r.to=function(t,i,n){var o=new r(t,i,n);return n.paused!==s&&n.paused||o.play(),o},r.fromTo=function(t,i,n,o){var h=new r(t,i,n,o);return o.paused!==s&&o.paused||h.play(),h},u.W=r,r})),u.d("Timeline",(function(){function t(t){this.originalParams=f({},t),this._tweens=[],u.Animation.call(this,t),this._duration=0}return t.prototype=Object.create(u.Animation.prototype),t.prototype.constructor=t,t.prototype._onUpdate=function(){if(this.tweensContainer)for(var t=0;t<this.tweensContainer.length;t++){var i=this.tweensContainer[t],n=Math.min(1,(this._progress-i.startProgress)/(i.endProgress-i.startProgress));i.tween._isCompleted&&n<=i.endProgress&&i.tween.reset(),!i.tween._isStarted&&n>=0&&0==i.tween.progress()&&i.tween._onStart(),i.tween._isStarted&&(1!=n||i.tween._isCompleted?n>=0&&n<1?i.tween.progress(n):n<0&&0!=i.tween.progress()&&i.tween.progress(0):(i.tween.progress(n),i.tween._onComplete()))}u.Animation.prototype._onUpdate.call(this)},t.prototype.addTween=function(t){t.pause(),t.setTimeline(this);var i=0;i=arguments.length>1?this._parsePosition(arguments[1]):this._parsePosition();var n=t.delay();n>0&&(i+=n,t.delay(0)),t.startTime(i),this._tweens.push(t);var s=t.totalDuration()+i;s>this._duration&&(this._duration=s),this.makeCache()},t.prototype.clear=function(){this.paused()||this.pause(),t.call(this,this.originalParams)},t.prototype.add=function(t,i){this.addTween(t,i)},t.prototype.set=function(t,i,n){this.addTween(u.W.to(t,.05,i),n)},t.prototype.to=function(t,i,n,s){n.paused=!0,this.addTween(u.W.to(t,i,n),s)},t.prototype.fromTo=function(t,i,n,s,r){s.paused=!0,this.addTween(u.W.fromTo(t,i,n,s),r)},t.prototype._play=function(){if(0==this._progress)for(var t=0;t<this._tweens.length;t++)this._tweens[t].pause(0);u.Animation.prototype._play.apply(this,arguments)},t.prototype._parsePosition=function(){var t="+=0";arguments.length>0&&arguments[0]!==s&&!isNaN(arguments[0])&&(t=arguments[0]);var i=0;switch(typeof t){case"string":switch(t.substr(0,2)){case"+=":i=this.duration()+parseFloat(t.substr(2));break;case"-=":i=this.duration()-parseFloat(t.substr(2))}break;default:i=parseFloat(t)}return Math.max(0,i)},t.prototype.makeCache=function(){var t=this.totalDuration();this.tweensContainer=[];for(var i=0;i<this._tweens.length;i++){var n=this._tweens[i],s=n.startTime()/t,r=(n.startTime()+n.totalDuration())/t;this.tweensContainer.push({tween:n,startProgress:s,endProgress:r,range:r-s})}},u.q=t,t})),u.d("Easings",(function(){var t={Sine:function(t){return 1-Math.cos(t*Math.PI/2)},Circ:function(t){return 1-Math.sqrt(1-t*t)},Elastic:function(t){return 0===t||1===t?t:-Math.pow(2,8*(t-1))*Math.sin((80*(t-1)-7.5)*Math.PI/15)},Back:function(t){return t*t*(3*t-2)},Bounce:function(t){for(var i,n=4;t<((i=Math.pow(2,--n))-1)/11;);return 1/Math.pow(4,3-n)-7.5625*Math.pow((3*i-2)/22-t,2)}};["Quad","Cubic","Quart","Quint","Expo"].forEach((function(i,n){t[i]=function(t){return Math.pow(t,n+2)}}));var i={};for(var n in t)!function(t,n){i["easeIn"+t]=n,i["easeOut"+t]=function(t){return 1-n(1-t)},i["easeInOut"+t]=function(t){return t<.5?n(2*t)/2:1-n(-2*t+2)/2}}(n,t[n]);return i})),u.d("nextend-frontend"),u.d("n2")}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s,r=t.document,o=r.documentElement,h=t.setTimeout,a=t.clearTimeout,u=i._N2,c=(t.requestAnimationFrame,function(t,i=null,n=null,s=null){const o=r.createElement(t);return i&&("string"==typeof i?g(o,i):b(o,i)),n&&v(o,n),s&&m(o,s),o}),f=Object.assign,l=function(t,i,n){t.setAttribute(i,n)},v=function(t,i){for(var n in i)l(t,n,i[n])},d=function(t,i){return t.dataset[i]},p=function(t,i,n){t.dataset[i]=n},m=function(t,i){for(let n in i)p(t,n,i[n])},g=function(t,i){t.classList.add(i)},b=function(t,i){i.forEach((function(i){t.classList.add(i)}))},w=function(t,i){return t.dispatchEvent(i)},y=function(t,i,n){return n=f({bubbles:!0,cancelable:!0},n),w(t,new Event(i,n))},M=function(t,i,n,s){return s=s||{},t.addEventListener(i,n,s),t.removeEventListener.bind(t,i,n,s)},x=function(t){"complete"===r.readyState||"interactive"===r.readyState?t():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==r.addEventListener?Document.prototype.addEventListener.call(r,"DOMContentLoaded",t):r.addEventListener("DOMContentLoaded",t)},_=navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1?function(t){t()}:i.requestIdleCallback||function(t){return h(t,1)};i.cancelIdleCallback;x((function(){n=r.body})),function(){"use strict";var t={},n={};i.n2Slow=navigator.userAgent.indexOf("Chrome-Lighthouse")>-1&&navigator.userAgent.indexOf("Android")>-1;var r=[],o=!1;function a(){var t=performance.now(),n=r;r=[];for(var s=n.length-1;s>=0&&(n.pop().call(),!(performance.now()-t>7));s--);!i.n2Slow&&n.length&&(i.n2Slow=!0),n.unshift.apply(n,r),(r=n).length?_(a,{timeout:2e3}):o=!1}function f(t){r.unshift(t),o||(o=!0,_(a,{timeout:2e3}))}var l=new Date,v=function(){if(i.jQuery){var $=i.jQuery;u.d("$",(function(){return $}))}else{if(h(v,20),(new Date).getTime()-l.getTime()>1e3)c("script").src=u._jQueryFallback}};function d(i){return!(!i||t[i]!==s)&&(t[i]=new Promise((function(t){n[i]=t})),"$"===i&&v(),!0)}function p(i,s,r){var o=[];if(d(i)||n[i]){if("function"==typeof s?(r=s,s=[]):"string"==typeof s&&(s=[s]),(s=s||[]).length)for(var h=0;h<s.length;h++)d(s[h]),o.push(t[s[h]]);Promise.all(o).then(function(t){u[i]="function"!=typeof r||r.call(u),t()}.bind(this,n[i])),delete n[i]}}function m(i,n){var r=[];if(n===s?(n=i,i=[]):"string"==typeof i&&(i=[i]),i=i||[])for(var o=0;o<i.length;o++)d(i[o]),r.push(t[i[o]]);Promise.all(r).then((function(){n.call(u)}))}i.N2DISABLESCHEDULER?(u.d=p,u.r=m):(u.d=function(t,i,n){f(p.bind(this,t,i,n))},u.r=function(t,i){f(m.bind(this,t,i))});for(var g=0;g<this._N2._d.length;g++)u.d.apply(this,this._N2._d[g]);for(var b=0;b<this._N2._r.length;b++)u.r.apply(this,this._N2._r[b])}.call(i),i.NextendThrottle=function(t,i){var n,s;return i||(i=250),function(){var r=this,o=+new Date,u=arguments;n&&o<n+i?(a(s),s=h((function(){n=o,t.apply(r,u)}),i)):(n=o,t.apply(r,u))}},i.NextendDeBounce=function(t,i,n){var s;return function(){var r=this,o=arguments,u=function(){s=null,n||t.apply(r,o)},c=n&&!s;a(s),s=h(u,i),c&&t.apply(r,o)}},u.r("nextend-frontend",(function(){if(x((function(){u.d("documentReady")})),"complete"===r.readyState)u.d("windowLoad");else{let s;const o=navigator.userAgent;o.indexOf("Safari")>0&&-1===o.indexOf("Chrome")&&(s=setInterval((function(){"interactive"!==r.readyState&&"complete"!==r.readyState||(u.d("windowLoad"),clearInterval(s))}),2e3)),t="load",n=function(){u.d("windowLoad"),clearInterval(s)},i.addEventListener(t,n,{once:!0})}var t,n})),i.ResizeObserver||(i.ResizeObserver=function(){"use strict";var t=function(){if("undefined"!=typeof Map)return Map;function t(t,i){var n=-1;return t.some((function(t,s){return t[0]===i&&(n=s,!0)})),n}return function(){function i(){this.__entries__=[]}return Object.defineProperty(i.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),i.prototype.get=function(i){var n=t(this.__entries__,i),s=this.__entries__[n];return s&&s[1]},i.prototype.set=function(i,n){var s=t(this.__entries__,i);~s?this.__entries__[s][1]=n:this.__entries__.push([i,n])},i.prototype.delete=function(i){var n=this.__entries__,s=t(n,i);~s&&n.splice(s,1)},i.prototype.has=function(i){return!!~t(this.__entries__,i)},i.prototype.clear=function(){this.__entries__.splice(0)},i.prototype.forEach=function(t,i){void 0===i&&(i=null);for(var n=0,s=this.__entries__;n<s.length;n++){var r=s[n];t.call(i,r[1],r[0])}},i}()}(),n=void 0!==i&&void 0!==r&&i.document===r,s="undefined"!=typeof global&&global.Math===Math?global:"undefined"!=typeof self&&self.Math===Math?self:void 0!==i&&i.Math===Math?i:Function("return this")(),o="function"==typeof requestAnimationFrame?requestAnimationFrame.bind(s):function(t){return h((function(){return t(Date.now())}),1e3/60)},a=2;function u(t,i){var n=!1,s=!1,r=0;function u(){n&&(n=!1,t()),s&&f()}function c(){o(u)}function f(){var t=Date.now();if(n){if(t-r<a)return;s=!0}else n=!0,s=!1,h(c,i);r=t}return f}var c=20,f=["top","right","bottom","left","width","height","size","weight"],l="undefined"!=typeof MutationObserver,v=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=u(this.refresh.bind(this),c)}return t.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},t.prototype.removeObserver=function(t){var i=this.observers_,n=i.indexOf(t);~n&&i.splice(n,1),!i.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},t.prototype.updateObservers_=function(){var t=this.observers_.filter((function(t){return t.gatherActive(),t.hasActive()}));return t.forEach((function(t){return t.broadcastActive()})),t.length>0},t.prototype.connect_=function(){n&&!this.connected_&&(r.addEventListener("transitionend",this.onTransitionEnd_),i.addEventListener("resize",this.refresh),l?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(r,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(r.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){n&&this.connected_&&(r.removeEventListener("transitionend",this.onTransitionEnd_),i.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&r.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(t){var i=t.propertyName,n=void 0===i?"":i;f.some((function(t){return!!~n.indexOf(t)}))&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),d=function(t,i){for(var n=0,s=Object.keys(i);n<s.length;n++){var r=s[n];Object.defineProperty(t,r,{value:i[r],enumerable:!1,writable:!1,configurable:!0})}return t},p=function(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView||s},m=k(0,0,0,0);function g(t){return parseFloat(t)||0}function b(t){for(var i=[],n=1;n<arguments.length;n++)i[n-1]=arguments[n];return i.reduce((function(i,n){return i+g(t["border-"+n+"-width"])}),0)}function w(t){for(var i={},n=0,s=["top","right","bottom","left"];n<s.length;n++){var r=s[n],o=t["padding-"+r];i[r]=g(o)}return i}function y(t){var i=t.getBBox();return k(0,0,i.width,i.height)}function M(t){var i=t.clientWidth,n=t.clientHeight;if(!i&&!n)return m;var s=p(t).getComputedStyle(t),r=w(s),o=r.left+r.right,h=r.top+r.bottom,a=g(s.width),u=g(s.height);if("border-box"===s.boxSizing&&(Math.round(a+o)!==i&&(a-=b(s,"left","right")+o),Math.round(u+h)!==n&&(u-=b(s,"top","bottom")+h)),!_(t)){var c=Math.round(a+o)-i,f=Math.round(u+h)-n;1!==Math.abs(c)&&(a-=c),1!==Math.abs(f)&&(u-=f)}return k(r.left,r.top,a,u)}var x="undefined"!=typeof SVGGraphicsElement?function(t){return t instanceof p(t).SVGGraphicsElement}:function(t){return t instanceof p(t).SVGElement&&"function"==typeof t.getBBox};function _(t){return t===p(t).document.documentElement}function P(t){return n?x(t)?y(t):M(t):m}function O(t){var i=t.x,n=t.y,s=t.width,r=t.height,o="undefined"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,h=Object.create(o.prototype);return d(h,{x:i,y:n,width:s,height:r,top:n,right:i+s,bottom:r+n,left:i}),h}function k(t,i,n,s){return{x:t,y:i,width:n,height:s}}var S=function(){function t(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=k(0,0,0,0),this.target=t}return t.prototype.isActive=function(){var t=P(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},t}(),E=function(){function t(t,i){var n=O(i);d(this,{target:t,contentRect:n})}return t}(),A=function(){function i(i,n,s){if(this.activeObservations_=[],this.observations_=new t,"function"!=typeof i)throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=i,this.controller_=n,this.callbackCtx_=s}return i.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof p(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var i=this.observations_;i.has(t)||(i.set(t,new S(t)),this.controller_.addObserver(this),this.controller_.refresh())}},i.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof p(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var i=this.observations_;i.has(t)&&(i.delete(t),i.size||this.controller_.removeObserver(this))}},i.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},i.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach((function(i){i.isActive()&&t.activeObservations_.push(i)}))},i.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,i=this.activeObservations_.map((function(t){return new E(t.target,t.broadcastRect())}));this.callback_.call(t,i,t),this.clearActive()}},i.prototype.clearActive=function(){this.activeObservations_.splice(0)},i.prototype.hasActive=function(){return this.activeObservations_.length>0},i}(),C="undefined"!=typeof WeakMap?new WeakMap:new t,D=function(){function t(i){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=v.getInstance(),s=new A(i,n,this);C.set(this,s)}return t}();return["observe","unobserve","disconnect"].forEach((function(t){D.prototype[t]=function(){var i;return(i=C.get(this))[t].apply(i,arguments)}})),void 0!==s.ResizeObserver?s.ResizeObserver:D}()),u.StringHelper={capitalize:function(t){return t.charAt(0).toUpperCase()+t.slice(1)}},function(){var t=function(t){return Symbol.iterator in Object(t)},i={add:function(t){requestAnimationFrame(t)},remove:function(){}};u.t=u.t||i;var n,r=new class{constructor(){this.i=!1,this.o=new Set,this.h=this.u.bind(this)}add(t){this.o.add(t),this.i||(this.i=!0,u.t.add(this.h))}u(){for(let t of this.o)t.render?t.render():t();this.o.clear(),this.i=!1,u.t.remove(this.h)}},o={};n=/Safari/i.test(navigator.userAgent)&&!/Chrom[ei]/i.test(navigator.userAgent)?function(t,i,n,s){var r="";return s&&(t||i||n)?"translate3d("+(t||0)+"px, "+(i||0)+"px, "+(n||0)+"px) ":((t||i)&&(r+="translate("+(t||0)+"px, "+(i||0)+"px) "),n&&(r+="translateZ("+n+"px) "),r)}:function(t,i,n,s){return t||i||n?"translate3d("+(t||0)+"px, "+(i||0)+"px, "+(n||0)+"px) ":""};class h{constructor(i,n){t(i)?this.l=Array.from(i):this.l=[i],this.v=f({},n),this.p=new Set}get scale(){return this.scaleX}set scale(t){this.scaleX=t,this.scaleY=t}render(){for(let i of this.p){var t=this.v[i];switch(i){case"transform":t=this.m();break;case"filter":t=this.g();break;case"n2AutoAlpha":0===this.opacity?this.M||(this.M=!0,this._("data-force-hidden","")):this.M&&(this.M=!1,this.P("data-force-hidden"));continue;case"opacity":this.v.n2AutoAlpha&&(0===t?this.M||(this.M=!0,this._("data-force-hidden","")):this.M&&(this.M=!1,this.P("data-force-hidden")));break;case"width":case"height":case"perspective":"number"==typeof t&&(t+="px")}for(let n of this.l)n.style.setProperty(i,t)}this.p.clear()}m(){let{xP:t,yP:i,x:r,y:o,z:h,xAbs:a,yAbs:u,xPAbs:c,yPAbs:f,parallaxX:l,parallaxY:v,parallaxRotationX:d,parallaxRotationY:p,layerRotation:m,rotationZ:g,rotationY:b,rotationX:w,scaleX:y,scaleY:M,scaleZ:x,skewX:_,skewY:P,transformPerspective:O,force3D:k}=this.v,S="";return O&&(S+="perspective("+O+"px) "),(t||i)&&(S+="translate("+(t||0)+"%, "+(i||0)+"%) "),(a||u)&&(S+="translate("+(a||0)+"px, "+(u||0)+"px) "),(c||f)&&(S+="translate("+(c||0)+"%, "+(f||0)+"%) "),S+=n(r,o,h,k),_&&(S+="skewX("+_+"deg) "),P&&(S+="skewY("+P+"deg) "),m&&(S+="rotate("+m+"deg) "),g&&(S+="rotate("+g+"deg) "),b&&(S+="rotateY("+b+"deg) "),w&&(S+="rotateX("+w+"deg) "),y===s&&(y=1),M===s&&(M=1),1===y&&1===M||(S+="scale("+y+", "+M+") "),x===s&&(x=1),1!==x&&(S+="scaleZ("+x+") "),S||"translate3d(0, 0, 0)"}g(){let{n2blur:t}=this.v,i="";return t>.1&&(i="blur("+t+"px) "),i||"none"}_(t,i){for(let n of this.l)(n.relatedLayer||n).setAttribute(t,i)}P(t){for(let i of this.l)(i.relatedLayer||i).removeAttribute(t)}setValues(t){for(var i in t)this[i]=t[i]}}class a{constructor(t,i){this.O=[];for(var n=0;n<t.length;n++)t[n]&&this.O.push(b.k(t[n],i))}setValues(t){for(var i=0;i<this.O.length;i++)this.O[i].setValues(t)}}var c={},l=function(t){Object.defineProperty(a.prototype,t,{get:function(){return this.O[0][t]},set:function(i){i instanceof Function&&(i=i());for(var n=0;n<this.O.length;n++)this.O[n][t]=i}})},v=function(t,i,n){Object.getOwnPropertyDescriptor(h.prototype,t)||(i===s&&(i=""),n===s&&(n=t),c[n]===s&&(c[n]=[]),c[n].push(t),o[t]=i,Object.defineProperty(h.prototype,t,{get:function(){return this.v[t]===s&&(this.v[t]=o[t]),this.v[t]},set:function(i){i instanceof Function&&(i=i()),this.v[t]!==i&&(this.v[t]=i,this.p.add(n),r.add(this))}}),l(t))},d=function(t,i){Object.defineProperty(h.prototype,t,{get:function(){return this[i]},set:function(t){this[i]=t}}),l(t)};v("property"),v("display"),v("z-index",1),v("overflow","visible"),v("overflow-x","visible"),v("backface-visibility","visible"),v("transform-origin","50% 50% 0"),v("opacity",1),v("width",0),v("height",0),v("justify-content"),v("background"),v("color"),v("will-change",""),v("stroke-dasharray",""),v("visibility"),v("perspective",0),v("transform-style"),v("cursor",""),v("top"),v("right"),v("bottom"),v("left");var p="transform";v("force3D",0,p),v("transformPerspective",0,p),v("xP",0,p),v("yP",0,p),v("x",0,p),v("y",0,p),v("z",0,p),v("xAbs",0,p),v("yAbs",0,p),v("xPAbs",0,p),v("yPAbs",0,p),v("scaleX",1,p),v("scaleY",1,p),v("scaleZ",1,p),v("rotationZ",0,p),v("rotationX",0,p),v("rotationY",0,p),v("skewX",0,p),v("skewY",0,p),v("layerRotation",0,p),v("n2blur",0,"filter"),v("n2AutoAlpha",0),d("zIndex","z-index"),d("backfaceVisibility","backface-visibility"),d("transformOrigin","transform-origin"),d("justifyContent","justify-content"),d("transformStyle","transform-style"),d("overflowX","overflow-x"),d("clipPath","clip-path");var m={0:function(t){this.classList.add(t)},1:function(t){this.classList.remove(t)}};class g{constructor(i){t(i)?this.l=Array.from(i):this.l=[i],this.S=[]}addClass(t){this.S.push([0,t]),r.add(this)}removeClass(t){this.S.push([1,t]),r.add(this)}render(){for(var t=0;t<this.S.length;t++){var i=this.S[t];for(let t of this.l)m[i[0]].apply(t,i.splice(1))}this.S=[]}}var b=u.MW={A:v,k:function(t,i){return t.smw||(t.smw=new h(t,i)),t.smw},C:function(t,i){for(var n=[],s=0;s<t.length;s++)n.push(b.k(t[s],i));return n},D:function(t,i){return new a(t,i)},R:function(t,i){t.forEach((function(t){t.setValues(i)}))},T:function(t,i){i.forEach((function(i){c[i]&&c[i].forEach((function(i){t[i]=o[i]}))}))},j:function(t,i){r.add((function(){t.className.add(i)}))},F:function(t,i){r.add((function(){t.className.remove(i)}))},N:function(t){r.add(t)},I:function(t){return t.umw||(t.umw=new g(t)),t.umw},flush(){r.u()}}}(),customElements.define("ss3-force-full-width",class extends HTMLElement{connectedCallback(){if(this.isConnected){n=n||r.body,this.L="rtl"===o.getAttribute("dir"),this._width=0,this._offset=Number.MAX_SAFE_INTEGER,this.X=u.MW.k(this,{x:Number.MAX_SAFE_INTEGER,opacity:0});var t=d(this,"overflowX");t&&"none"!==t&&r.querySelectorAll(t).forEach((function(t){u.MW.k(t).overflowX="hidden"}));var s=n;if(i.ssForceFullHorizontalSelector)s=i.ssForceFullHorizontalSelector;else{var h=d(this,"horizontalSelector");if(h&&"body"!==h)try{s=this.closest(h)}catch(t){}}if(s===n)for(var a=[".elementor-section-stretched",'.siteorigin-panels-stretch[data-stretch-type="full-stretched"]','.siteorigin-panels-stretch[data-stretch-type="full-stretched-padded"]',".themify_builder_row.fullwidth",'.vce-row[data-vce-stretch-content="true"]'],c=0;c<a.length;c++){var f=this.closest(a[c]);if(f){s=f;break}}this.fullWidthTo=s,this.resizeObserver=new ResizeObserver(this.doResize.bind(this)),this.resizeObserver.observe(this.parentNode),i.addEventListener("resize",this.doResize.bind(this))}}doResize(){var t=0,s=0;if(this.fullWidthTo){var r=this.fullWidthTo.getBoundingClientRect();s=r.width,t=this.L?-s+r.right:r.left}var o,h,a=s>0?s:n.clientWidth,u=i.getComputedStyle(this.parentNode);o=this.L?a-this.parentNode.getBoundingClientRect().right-parseInt(u.getPropertyValue("padding-right"))-parseInt(u.getPropertyValue("border-right-width"))+t:-this.parentNode.getBoundingClientRect().left-parseInt(u.getPropertyValue("padding-left"))-parseInt(u.getPropertyValue("border-left-width"))+t,o+=h=o%1,a-=Math.floor(h),(this._width-a<=0||this._width-a>1||this._offset-o<-1||this._offset-o>=0)&&(this._offset!==o&&(this.X.x=o,this._offset=o,0!==o&&this.classList.add("n2-ss-no-bga-fixed")),this._width!==a&&(this.X.width=a,this._width=a)),this.setVisible&&this.setVisible()}setVisible(){this.X.opacity=1,delete this.setVisible}}),customElements.define("ss3-loader",class extends HTMLElement{connectedCallback(){this.B=[]}set display(t){this.V!==t&&(this.V=t,this.style.display=t)}show(){this.display="grid"}addPromise(t){this.B.push(t),this.syncStyle(),t.finally(this.removePromise.bind(this,t))}removePromise(t){var i=this.B.indexOf(t);i>-1&&(this.B.splice(i,1),this.syncStyle())}syncStyle(){this.B.length?this.Y||(this.Y=h(this.show.bind(this),100)):(this.Y&&(a(this.Y),delete this.Y),this.display="")}});var P,O="MacIntel"===navigator.platform&&navigator.maxTouchPoints>1;i.n2const={devicePixelRatio:i.devicePixelRatio||1,isFirefox:/Firefox/i.test(navigator.userAgent),isIOS:/iPad|iPhone|iPod/.test(navigator.platform)||O,isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Silk/i.test(navigator.userAgent)||O,isPhone:/Android/i.test(navigator.userAgent)&&/mobile/i.test(navigator.userAgent)||/webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),isSamsungBrowser:navigator.userAgent.match(/SamsungBrowser/i),isBot:/bot|googlebot|crawler|spider|robot|crawling|Google Search Console/i.test(navigator.userAgent),isLighthouse:navigator.userAgent.indexOf("Chrome-Lighthouse")>-1,lightboxMobileNewTab:1,isVideoAutoplayAllowed:function(){var t=!!(navigator.platform.match(/(Win|Mac)/)||!/Mobi/.test(navigator.userAgent)||"playsInline"in c("video")||"webkit-playsinline"in c("video")||navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)&&parseInt(navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)[2])>=53||navigator.userAgent.match(/Android.*(Firefox|Edge|Opera)/));return i.n2const.isVideoAutoplayAllowed=function(){return t},t},isWaybackMachine:function(){var t=void 0!==i.__wm;return i.n2const.isWaybackMachine=function(){return t},t},setLocation:function(t){"function"==typeof i.zajax_goto?i.zajax_goto(t):i.location=t},isParentSameOrigin:function(){try{return parent.document,!0}catch(t){}return!1},activeElementBlur:function(){r.activeElement&&r.activeElement.blur()},getScrollbarSize:function(){var t,i,s,r=c("div",t,i,s);r.style.visibility="hidden",r.style.overflow="scroll",n.appendChild(r);var o=r.offsetHeight-r.clientHeight;return n.removeChild(r),n2const.getScrollbarSize=function(){return o},o},fonts:new Promise((function(t){if("fonts"in r){r.fonts.ready.then(t);const i=navigator.userAgent;i.indexOf("Safari")>0&&-1===i.indexOf("Chrome")&&u.r("windowLoad",t)}else u.r("windowLoad",t)}))},i.n2const.isTablet=!i.n2const.isPhone&&(/Android|iPad|tablet|Silk/i.test(navigator.userAgent)||O),i.n2const.rtl=(i.n2const.isRTL=function(){return i.n2const.rtl.isRtl},"rtl"===o.getAttribute("dir")?{isRtl:!0,marginLeft:"marginRight",marginRight:"marginLeft","margin-left":"margin-right","margin-right":"margin-left",left:"right",right:"left",modifier:-1}:{isRtl:!1,marginLeft:"marginLeft",marginRight:"marginRight","margin-left":"margin-left","margin-right":"margin-right",left:"left",right:"right",modifier:1}),u._triggerResize=(P=null,function(){P&&a(P),P=h((function(){y(i,"resize"),P=null}),100)}),u._shouldPreventClick=!1,u._preventClick=function(){u._shouldPreventClick||(u._shouldPreventClick=!0,h((function(){u._shouldPreventClick=!1}),300))},u.d("ImagesLoaded",(function(){return function(t){var i,n=[];i="IMG"===t.tagName?[t]:t.querySelectorAll("img");for(var s=0;s<i.length;s++){var r=i[s];r.loading="eager",r.complete?r.naturalWidth||n.push(new Promise(function(t){h(t,16)}.bind(r))):n.push(new Promise(function(t,i){this.addEventListener("load",(function(){t()})),this.addEventListener("error",(function(){i()}))}.bind(r)))}return Promise.all(n)}})),u.d("UniversalPointer",(function(){var t=!!i.PointerEvent,n=!!i.TouchEvent;function r(t,i){this.el=t,this.handler=i,this.preventMouse=!1,this.timeouts=[],this.localListeners=[],this.globalListeners=[]}function c(i,s,h){var a=this.context=new r(i,s);a.addGlobalEventListener("click",(function(e){a.preventMouse||a.click(e)})),t?a.addGlobalEventListener("pointerdown",(function(t){t.isPrimary&&(a.startComplexInteraction(t.currentTarget),a.addLocalEventListener(o,"pointerup",(function(i){i.isPrimary&&t.pointerId===i.pointerId&&(Math.abs(i.clientX-t.clientX)<10&&Math.abs(i.clientY-t.clientY)<10?a.click(i):a.clear(),a.endComplexInteraction())})))})):n&&a.addGlobalEventListener("touchstart",(function(t){a.clearTimeouts(),a.startComplexInteraction(t.currentTarget),a.addLocalEventListener(o,"touchend",(function(i){Math.abs(i.changedTouches[0].clientX-t.changedTouches[0].clientX)<10&&Math.abs(i.changedTouches[0].clientY-t.changedTouches[0].clientY)<10?a.click(i):a.clear(),a.endComplexInteraction()}),{passive:!0})}),{passive:!0})}function l(t,i,n){this.el=t,this.handler=i,this.leaveOnSecond=n,this.preventMouse=!1,this.isActive=!1,this.timeouts=[],this.localListeners=[],this.globalListeners=[]}function v(i,s,r){r=f({leaveOnSecond:!1},r);var a=this.context=new l(i,s,r.leaveOnSecond);t?(a.addGlobalEventListener("pointerenter",(function(e){e.isPrimary&&(a.clearTimeouts(),a.enter(e)&&"mouse"!==e.pointerType&&(a.addLocalEventListener(o,"pointerdown",(function(e){e.isPrimary&&a.testLeave(e.target)})),a.addTimeout(h((function(){a.leave()}),5e3))))})),a.addGlobalEventListener("pointerleave",(function(e){e.isPrimary&&"mouse"===e.pointerType&&a.leave()}))):(a.addGlobalEventListener("mouseenter",(function(e){a.preventMouse||a.enter(e)})),a.addGlobalEventListener("mouseleave",(function(){a.preventMouse||a.leave()})),n&&a.addGlobalEventListener("touchstart",(function(e){a.preventMouse=!0,a.clearTimeouts(),a.enter(e)&&(a.addLocalEventListener(o,"touchstart",(function(e){a.testLeave(e.target)})),a.addTimeout(h((function(){a.leave(),a.preventMouse=!1}),5e3)))}),{passive:!0}))}r.prototype.addTimeout=function(t){this.timeouts.push(t)},r.prototype.clearTimeouts=function(){for(var t=0;t<this.timeouts.length;t++)a(this.timeouts[t]);this.timeouts=[]},r.prototype.click=function(e){this.currentTarget!==s&&(e={currentTarget:this.currentTarget,target:this.el}),this.handler.call(this.el,e),this.clear()},r.prototype.clear=function(){for(var t=0;t<this.localListeners.length;t++)this.localListeners[t][0].removeEventListener(this.localListeners[t][1],this.localListeners[t][2],this.localListeners[t][3])},r.prototype.addGlobalEventListener=function(t,i,n){this.globalListeners.push(M(this.el,t,i,n))},r.prototype.addLocalEventListener=function(t,i,n,s){this.localListeners.push([t,i,n,s]),t.addEventListener(i,n,s)},r.prototype.remove=function(){this.clear(),this.clearTimeouts();for(var t=0;t<this.globalListeners.length;t++)this.globalListeners[t]();delete this.globalListeners},r.prototype.startComplexInteraction=function(t){this.clearTimeouts(),this.preventMouse=!0,this.currentTarget=t},r.prototype.endComplexInteraction=function(){delete this.currentTarget,this.addTimeout(h(function(){this.preventMouse=!1}.bind(this),1e3))},c.prototype.remove=function(){this.context.remove(),delete this.context},u.UniversalClick=c,l.prototype.enter=function(e){return this.leaveOnSecond&&this.isActive?(this.leave(),!1):(this.handler.apply(this.el,arguments),this.isActive=!0,!0)},l.prototype.leave=function(){this.clearTimeouts();for(var t=0;t<this.localListeners.length;t++)this.localListeners[t][0].removeEventListener(this.localListeners[t][1],this.localListeners[t][2],this.localListeners[t][3]);var i;this.isActive=!1,i=this.el,w(i,new Event("universalleave",{bubbles:!1,cancelable:!1}))},l.prototype.testLeave=function(t){!this.el===t&&this.el.contains(t)&&this.leave()},l.prototype.addTimeout=function(t){this.timeouts.push(t)},l.prototype.clearTimeouts=function(){for(var t=0;t<this.timeouts.length;t++)a(this.timeouts[t]);this.timeouts=[]},l.prototype.addGlobalEventListener=function(t,i,n){this.globalListeners.push(M(this.el,t,i,n))},l.prototype.remove=function(){this.isActive&&this.leave(),this.clearTimeouts();for(var t=0;t<this.globalListeners.length;t++)this.globalListeners[t]();delete this.globalListeners},l.prototype.addLocalEventListener=function(t,i,n,s){this.localListeners.push([t,i,n,s]),t.addEventListener(i,n,s)},v.prototype.remove=function(){this.context.remove(),delete this.context},u.UniversalEnter=v})),u.d("EventBurrito",(function(){var t=function(){return!0},o=!1;return function(a,u){var c={preventDefault:!0,preventScroll:!1,mouse:!0,axis:"x",start:t,move:t,end:t,click:t};f(c,u);var l,v,d,p,m={pointerEvents:!(n2const.isIOS&&i.TouchEvent||!i.PointerEvent&&!i.PointerEventsPolyfill)},g={},b={},w=[],x=!0,_=m.pointerEvents?1:0,P=[["touchstart","touchmove","touchend","touchcancel"],["pointerdown","pointermove","pointerup","pointercancel","pointerleave"],["mousedown","mousemove","mouseup","","mouseleave"]],O=[function(e){return e.touches&&e.touches.length>1||e.scale&&1!==e.scale},function(e){return!e.isPrimary||e.buttons&&1!==e.buttons||!c.mouse&&"touch"!==e.pointerType&&"pen"!==e.pointerType},function(e){return e.buttons&&1!==e.buttons}],k=function(t,i){var n=t.tagName;return"INPUT"===n||"TEXTAREA"===n||"SELECT"===n||"BUTTON"===n||"VIDEO"===n||t.classList.contains("n2_container_scrollable")||t.closest(".n2_container_scrollable")};function S(t){t.preventDefault?t.preventDefault():t.returnValue=!1}function E(t){b={x:(p?t.clientX:t.touches[0].clientX)-g.x,y:(p?t.clientY:t.touches[0].clientY)-g.y,time:Date.now()}}function A(e,t){if((e.isPrimary===s||e.isPrimary)&&!o&&(l=[],x=!0,!O[p=t](e)&&!k(e.target)))if(("mousedown"===e.type||"pointerdown"===e.type&&"mouse"===e.pointerType)&&e.target.closest(".n2-ss-text")){var i=M(e.target,"click",(function(t){i(),Math.abs(e.clientX-t.clientX)<10&&Math.abs(e.clientY-t.clientY)<10&&y(e.target,"n2click")}));h(i,2e3)}else o=!0,0!==p&&l.push(M(r,P[p][1],C,{passive:!1,capture:!0})),l.push(M(r,P[p][2],R,{passive:!1,capture:!0})),l.push(M(r,P[p][3],R,{passive:!1,capture:!0})),l.push(M(n,P[p][4],D,{passive:!1,capture:!0})),g={x:p?e.clientX:e.touches[0].clientX,y:p?e.clientY:e.touches[0].clientY,time:Date.now()},v=s,d=!1,b={x:0,y:0},c.start(e,g),C(e)}function C(t){(t.isPrimary===s||t.isPrimary)&&("x"===c.axis&&(!c.preventScroll&&v||O[p](t))||k(t.target)||(E(t),(Math.abs(b.x)>10||Math.abs(b.y)>10)&&(x=!1),v===s&&2!==p&&(v=Math.abs(b.x)<Math.abs(b.y)&&!c.preventScroll)||c.move(t,g,b,d)&&c.preventDefault&&S(t)))}function D(t){t.target===t.currentTarget&&R(t)}function R(t){if(t.isPrimary===s||t.isPrimary){p&&E(t),!x&&t.target&&t.target.blur&&t.target.blur();for(var i=l.length-1;i>=0;i--)l[i]();l=null,c.end(t,g,b,d),d=!1,o=!1}}return w.push(M(r,"scroll",(function(){i.nextendScrollFocus!==s&&i.nextendScrollFocus||(d=!0)}))),1===_&&(a.style.touchAction="y"===c.axis?"pan-x":"pan-y"),w.push(M(a,P[_][0],(function(e){A(e,_)}),{passive:!1,capture:!0})),0===_&&w.push(M(a,P[0][1],(function(e){C(e)}),{passive:!1,capture:!0})),w.push(M(a,"dragstart",S)),c.mouse&&0===_&&w.push(M(a,P[2][0],(function(e){A(e,2)}))),w.push(M(a,"click",(function(t){x?c.click(t):S(t)}))),{supportsPointerEvents:m.pointerEvents,getClicksAllowed:function(){return x},kill:function(){for(var t=w.length-1;t>=0;t--)w[t]()}}}})),function(){var t,n=!1,s=-1,r=new Set,o=new Set,a=i.requestAnimationFrame||(t=0,function(i){var n=(new Date).getTime(),s=Math.max(0,16-(n-t));return t=n+s,h((function(){i(n+s)}),s)});function c(t){s=t,n&&(s=t,a(f))}function f(t){if(n&&0===r.size&&0===o.size)s=-1,n=!1;else if(-1!==s){var i=(t-s)/1e3;0!==i&&(r.forEach((function(t){t(i)})),o.forEach((function(t){t()})))}!function(t){n&&(s=t,a(f))}(t)}u.t={addP:function(t){r.add(t),n||(n=!0,a(c))},removeP:function(t){r.delete(t)},add:function(t){o.add(t),n||(n=!0,a(c))},remove:function(t){o.delete(t)}}}(),u.d("Animation",(function(){function t(t){this._tickCallback=null,this._progress=0,this._delayTimeout=!1,this._delay=0,this._duration=4,this._timeScale=1,this._isPlaying=!1,this._startTime=0,this._eventCallbacks={},this._immediateRender=!0,this._timeline=null,this._isCompleted=!1,this._isStarted=!1,this._isReversed=!1,this.toParams=t,this.initParameters()}return t.prototype.initParameters=function(){this.parseParameters(this.toParams),"object"!=typeof this.toParams&&this.paused(!1)},t.prototype.parseParameters=function(t){t&&(t.delay&&(this.delay(t.delay),delete t.delay),t.duration!==s&&(this.duration(t.duration),delete t.duration),t.onComplete&&(this.eventCallback("onComplete",t.onComplete),delete t.onComplete),t.onStart&&(this.eventCallback("onStart",t.onStart),delete t.onStart),t.onUpdate&&(this.eventCallback("onUpdate",t.onUpdate),delete t.onUpdate),t.immediateRender&&(this._immediateRender=t.immediateRender,delete t.immediateRender),t.paused&&(this.paused(!0),delete t.paused))},t.prototype.setTimeline=function(t){this._timeline=t},t.prototype._tick=function(t){var i=this._progress;this._isReversed?(this._progress-=t/this._duration*this._timeScale,1!=i&&this._isStarted?this._progress<=0?(this._progress=0,this._isPlaying=!1,u.t.removeP(this.getTickCallback()),this._onUpdate(),this._onReverseComplete()):this._onUpdate():this._onReverseStart()):(this._progress+=t/this._duration*this._timeScale,0!=i&&this._isStarted?this._progress>=1?(this._progress=1,this._isPlaying=!1,u.t.removeP(this.getTickCallback()),this._onUpdate(),this._onComplete()):this._onUpdate():this._onStart())},t.prototype._onStart=function(){this._isStarted=!0,this._isCompleted=!1,this._dispatch("onStart"),this._onUpdate()},t.prototype._onUpdate=function(){this._dispatch("onUpdate")},t.prototype._onComplete=function(){this._isCompleted=!0,this._onUpdate(),this._dispatch("onComplete")},t.prototype._onReverseComplete=function(){this._isCompleted=!0,this._isReversed=!1,this._onUpdate(),this._dispatch("onReverseComplete")},t.prototype._onReverseStart=function(){this._isStarted=!0,this._isCompleted=!1,this._dispatch("onReverseStart"),this._onUpdate()},t.prototype.getTickCallback=function(){if(!this._tickCallback){var t=this;this._tickCallback=function(){t._tick.apply(t,arguments)}}return this._tickCallback},t.prototype._clearDelayTimeout=function(){this._delayTimeout&&(a(this._delayTimeout),this._delayTimeout=!1)},t.prototype._timeToProgress=function(t){return t/this._duration*this._timeScale},t.prototype.delay=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return!isNaN(t)&&t!=1/0&&t||(t=0),this._delay=Math.max(0,t),this}return this._delay},t.prototype.duration=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return!isNaN(t)&&t!=1/0&&t||(t=0),this._duration=Math.max(0,t),this}return this._duration},t.prototype.eventCallback=function(t){return arguments.length>3?this._eventCallbacks[t]=[arguments[1],arguments[2],arguments[3]]:arguments.length>2?this._eventCallbacks[t]=[arguments[1],arguments[2],this]:arguments.length>1&&(this._eventCallbacks[t]=[arguments[1],[],this]),this._eventCallbacks[t]},t.prototype.pause=function(){return this._isPlaying=!1,u.t.removeP(this.getTickCallback()),arguments.length>0&&null!=arguments[0]&&this.progress(this._timeToProgress(arguments[0])),this},t.prototype.paused=function(){return arguments.length>0?(arguments[0]?this._isPlaying&&this.pause():this._isPlaying||this.play(),this):!this._isPlaying},t.prototype.play=function(){var t=!0;arguments.length>0&&null!=arguments[0]&&(t=!1,this._progress=this._timeToProgress(arguments[0])),this._play(t)},t.prototype._play=function(t){if(this._progress<1)if(0==this._progress&&t&&this._delay>0){if(!this._delayTimeout){var i=this;this._delayTimeout=h((function(){i.__play.apply(i,arguments)}),1e3*this._delay)}}else this.__play();else this._isCompleted||(this._isReversed?this._onReverseComplete():this._onComplete())},t.prototype.__play=function(){this._clearDelayTimeout(),this._isPlaying||(u.t.addP(this.getTickCallback()),this._isPlaying=!0)},t.prototype.progress=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),t=Math.min(1,Math.max(0,t)),this._progress=t,this._isPlaying||(this._isStarted||this._onStart(),this._onUpdate()),this}return this._progress},t.prototype.reverse=function(){this._isReversed=!0,0!=this.progress()&&this.play()},t.prototype.restart=function(){return arguments.length>0&&arguments[0]?(this.pause(0),this.play(),this):(this.play(0),this)},t.prototype.seek=function(t){null!=t&&(this._progress=this._timeToProgress(arguments[0]),this._isPlaying||this._onUpdate())},t.prototype.startTime=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),this._startTime=Math.max(0,t),this}return this._startTime},t.prototype.timeScale=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=1),t=Math.max(.01,t),this._timeScale!=t&&(this._timeScale=t),this}return this._timeScale},t.prototype._dispatch=function(t){"object"==typeof this._eventCallbacks[t]&&this._eventCallbacks[t][0].apply(this._eventCallbacks[t][2],this._eventCallbacks[t][1])},t.prototype.totalDuration=function(){if(arguments.length>0){var t=parseFloat(arguments[0]);return isNaN(t)&&(t=0),t=Math.max(0,t),this.timeScale(this._duration/t),this}return this._duration*this._timeScale},t.prototype.reset=function(){this._isCompleted=!1,this._isStarted=!1,this.progress(0)},t})),u.d("Tween",(function(){var t=2,i=3,n=function(t){return Symbol.iterator in Object(t)};function r(s,r){var o,h;switch(this.ease="linear",this._tweenContainer=null,this._setContainer=null,this._roundProps={},arguments.length){case 4:o=arguments[2],h=arguments[3],this._mode=t;break;default:this._mode=i,o={},h=arguments[2]}if(n(s)||(s=[s]),this._target=s,this.fromParams=o,u.Animation.call(this,h),this.parseParameters({duration:r}),this._mode===t&&this._immediateRender){for(var a in null===this._tweenContainer&&this._makeTweenContainer(this.fromParams,this.toParams),this._tweenContainer){var c=this._tweenContainer[a];this._target.forEach((function(t){t[a]=c.unit?c.startValue+c.unit:c.startValue}))}for(var a in this._setContainer){c=this._setContainer[a];this._target.forEach((function(t){t[a]=c.unit?c.endValue+c.unit:c.endValue}))}}}function o(t){var i=[t,""];t=String(t);var n=parseFloat(t);return isNaN(n)||(i[0]=n,i[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||""),i}function h(t,i,n,r){n===s&&(n=t[0][i]),r===s&&(r=t[0][i]),n=o(n);var h=0;return""!==(r=o(r))[1]&&n[1]!==r[1]&&(n[0]=0,n[1]=r[1]),"number"==typeof n[0]&&"number"==typeof r[0]&&(h=r[0]-n[0]),{startValue:n[0],endValue:r[0],unit:r[1],range:h}}return r.prototype=Object.create(u.Animation.prototype),r.prototype.constructor=r,r.prototype.initParameters=function(){this.parseParameters(this.fromParams),u.Animation.prototype.initParameters.apply(this,arguments)},r.prototype.parseParameters=function(t){t&&(t.ease&&(this.ease=t.ease,delete t.ease),u.Animation.prototype.parseParameters.apply(this,arguments))},r.prototype._onStart=function(){for(var t in null===this._tweenContainer&&this._makeTweenContainer(this.fromParams,this.toParams),this._setContainer){var i=this._setContainer[t];this._target.forEach((function(n){n[t]=i.unit?i.endValue+i.unit:i.endValue}))}u.Animation.prototype._onStart.call(this)},r.prototype._onUpdate=function(){for(var t in this._tweenContainer){var i=this._tweenContainer[t],n=u.Easings[this.ease]?u.Easings[this.ease](this._progress):this._progress,s=i.startValue+i.range*n;this._roundProps[t]&&(s=Math.round((10*s|0)/10)),this._target.forEach((function(n){n[t]=i.unit?s+i.unit:s}))}u.Animation.prototype._onUpdate.call(this)},r.prototype.initRoundProps=function(t){for(var i=t.split(","),n=0;n<i.length;n++)this._roundProps[i[n]]=!0},r.prototype._makeTweenContainer=function(t,i){for(var n in t.snap!==s&&(this.initRoundProps(t.snap),delete t.snap),this._setContainer={},this._tweenContainer={},i.snap!==s&&(this.initRoundProps(i.snap),delete i.snap),i){var r=h(this._target,n,t[n],i[n]);0==r.range?this._setContainer[n]=r:this._tweenContainer[n]=r}},r.to=function(t,i,n){var o=new r(t,i,n);return n.paused!==s&&n.paused||o.play(),o},r.fromTo=function(t,i,n,o){var h=new r(t,i,n,o);return o.paused!==s&&o.paused||h.play(),h},u.W=r,r})),u.d("Timeline",(function(){function t(t){this.originalParams=f({},t),this._tweens=[],u.Animation.call(this,t),this._duration=0}return t.prototype=Object.create(u.Animation.prototype),t.prototype.constructor=t,t.prototype._onUpdate=function(){if(this.tweensContainer)for(var t=0;t<this.tweensContainer.length;t++){var i=this.tweensContainer[t],n=Math.min(1,(this._progress-i.startProgress)/(i.endProgress-i.startProgress));i.tween._isCompleted&&n<=i.endProgress&&i.tween.reset(),!i.tween._isStarted&&n>=0&&0==i.tween.progress()&&i.tween._onStart(),i.tween._isStarted&&(1!=n||i.tween._isCompleted?n>=0&&n<1?i.tween.progress(n):n<0&&0!=i.tween.progress()&&i.tween.progress(0):(i.tween.progress(n),i.tween._onComplete()))}u.Animation.prototype._onUpdate.call(this)},t.prototype.addTween=function(t){t.pause(),t.setTimeline(this);var i=0;i=arguments.length>1?this._parsePosition(arguments[1]):this._parsePosition();var n=t.delay();n>0&&(i+=n,t.delay(0)),t.startTime(i),this._tweens.push(t);var s=t.totalDuration()+i;s>this._duration&&(this._duration=s),this.makeCache()},t.prototype.clear=function(){this.paused()||this.pause(),t.call(this,this.originalParams)},t.prototype.add=function(t,i){this.addTween(t,i)},t.prototype.set=function(t,i,n){this.addTween(u.W.to(t,.05,i),n)},t.prototype.to=function(t,i,n,s){n.paused=!0,this.addTween(u.W.to(t,i,n),s)},t.prototype.fromTo=function(t,i,n,s,r){s.paused=!0,this.addTween(u.W.fromTo(t,i,n,s),r)},t.prototype._play=function(){if(0==this._progress)for(var t=0;t<this._tweens.length;t++)this._tweens[t].pause(0);u.Animation.prototype._play.apply(this,arguments)},t.prototype._parsePosition=function(){var t="+=0";arguments.length>0&&arguments[0]!==s&&!isNaN(arguments[0])&&(t=arguments[0]);var i=0;switch(typeof t){case"string":switch(t.substr(0,2)){case"+=":i=this.duration()+parseFloat(t.substr(2));break;case"-=":i=this.duration()-parseFloat(t.substr(2))}break;default:i=parseFloat(t)}return Math.max(0,i)},t.prototype.makeCache=function(){var t=this.totalDuration();this.tweensContainer=[];for(var i=0;i<this._tweens.length;i++){var n=this._tweens[i],s=n.startTime()/t,r=(n.startTime()+n.totalDuration())/t;this.tweensContainer.push({tween:n,startProgress:s,endProgress:r,range:r-s})}},u.q=t,t})),u.d("Easings",(function(){var t={Sine:function(t){return 1-Math.cos(t*Math.PI/2)},Circ:function(t){return 1-Math.sqrt(1-t*t)},Elastic:function(t){return 0===t||1===t?t:-Math.pow(2,8*(t-1))*Math.sin((80*(t-1)-7.5)*Math.PI/15)},Back:function(t){return t*t*(3*t-2)},Bounce:function(t){for(var i,n=4;t<((i=Math.pow(2,--n))-1)/11;);return 1/Math.pow(4,3-n)-7.5625*Math.pow((3*i-2)/22-t,2)}};["Quad","Cubic","Quart","Quint","Expo"].forEach((function(i,n){t[i]=function(t){return Math.pow(t,n+2)}}));var i={};for(var n in t)!function(t,n){i["easeIn"+t]=n,i["easeOut"+t]=function(t){return 1-n(1-t)},i["easeInOut"+t]=function(t){return t<.5?n(2*t)/2:1-n(-2*t+2)/2}}(n,t[n]);return i})),u.d("nextend-frontend"),u.d("n2")}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,n=t.document,h=(n.documentElement,t.setTimeout),o=t.clearTimeout,r=i._N2;t.requestAnimationFrame,n.createElement.bind(n),Object.assign,navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){n.body},"complete"===n.readyState||"interactive"===n.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==n.addEventListener?Document.prototype.addEventListener.call(n,"DOMContentLoaded",s):n.addEventListener("DOMContentLoaded",s),r.d("SmartSliderBlock",["SmartSliderAbstract"],(function(){function t(t,i){this.type="block",this.responsiveClass=r.SmartSliderResponsiveBlock,r.SmartSliderAbstract.prototype.constructor.call(this,t,i)}return t.prototype=Object.create(r.SmartSliderAbstract.prototype),t.prototype.constructor=t,t.prototype.initResponsiveMode=function(){this.responsive=new r.SmartSliderResponsiveBlock(this,this.parameters.responsive),this.responsive.start(),r.SmartSliderAbstract.prototype.initResponsiveMode.call(this)},t.prototype.initMainAnimation=function(){this.mainAnimation=!1,this.isAdmin||this.disabled.postBackgroundAnimations||0==this.parameters.postBackgroundAnimations||(this.postBackgroundAnimation=new r.SmartSliderPostBackgroundAnimation(this,!1))},t.prototype.afterRawSlidesReady=function(){if(this.parameters.postBackgroundAnimations&&this.parameters.postBackgroundAnimations.slides){for(var t=0;t<this.slides.length;t++)this.slides[t].postBackgroundAnimation=this.parameters.postBackgroundAnimations.slides[t];delete this.parameters.postBackgroundAnimations.slides}},t.prototype.getSlideBackgroundContainer=function(){return this.sliderElement.querySelector(".n2-ss-slide").parentNode},t})),r.d("SmartSliderResponsiveBlock",["SmartSliderResponsive"],(function(){function t(){r.SmartSliderResponsive.prototype.constructor.apply(this,arguments),this.xt=this.sliderElement.classList.contains("n2-ss-full-page--constrain-ratio")}return t.prototype=Object.create(r.SmartSliderResponsive.prototype),t.prototype.constructor=t,t.prototype.init=function(){r.SmartSliderResponsive.prototype.init.call(this),this._cacheEl={slider:this.sliderElement.querySelector(".n2-ss-slider-wrapper-inside")||this.sliderElement}},t.prototype.calculateResponsiveValues=function(){var t=this.slider.visibleRealSlides[0].element,i=t.getBoundingClientRect();this.resizeContext.slideSelfWidth=i.width,this.resizeContext.slideSelfHeight=i.height;var s=t.querySelector(".n2-ss-layers-container").getBoundingClientRect();this.resizeContext.slideWidth=s.width,this.resizeContext.slideHeight=s.height;var n=this._cacheEl.slider.getBoundingClientRect();if(this.resizeContext.sliderWidth=n.width,this.resizeContext.sliderHeight=n.height,r.SmartSliderResponsive.prototype.calculateResponsiveValues.call(this),this.xt){var h=(this.resizeContext.sliderWidth-this.resizeContext.slideWidth)/-2+"px",o=(this.resizeContext.sliderHeight-this.resizeContext.slideHeight)/-2+"px";r.MW.k(this._cacheEl.slider)["--ss-clip-path"]="inset("+o+" "+h+" "+o+" "+h+")"}},t})),r.d("ss-block",["SmartSliderBlock","SmartSliderResponsiveBlock"])}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,n=t.document,h=(n.documentElement,t.setTimeout),o=t.clearTimeout,r=i._N2;t.requestAnimationFrame,Object.assign,navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){n.body},"complete"===n.readyState||"interactive"===n.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==n.addEventListener?Document.prototype.addEventListener.call(n,"DOMContentLoaded",s):n.addEventListener("DOMContentLoaded",s),r.d("SmartSliderBlock",["SmartSliderAbstract"],(function(){function t(t,i){this.type="block",this.responsiveClass=r.SmartSliderResponsiveBlock,r.SmartSliderAbstract.prototype.constructor.call(this,t,i)}return t.prototype=Object.create(r.SmartSliderAbstract.prototype),t.prototype.constructor=t,t.prototype.initResponsiveMode=function(){this.responsive=new r.SmartSliderResponsiveBlock(this,this.parameters.responsive),this.responsive.start(),r.SmartSliderAbstract.prototype.initResponsiveMode.call(this)},t.prototype.initMainAnimation=function(){this.mainAnimation=!1,this.isAdmin||this.disabled.postBackgroundAnimations||0==this.parameters.postBackgroundAnimations||(this.postBackgroundAnimation=new r.SmartSliderPostBackgroundAnimation(this,!1))},t.prototype.afterRawSlidesReady=function(){if(this.parameters.postBackgroundAnimations&&this.parameters.postBackgroundAnimations.slides){for(var t=0;t<this.slides.length;t++)this.slides[t].postBackgroundAnimation=this.parameters.postBackgroundAnimations.slides[t];delete this.parameters.postBackgroundAnimations.slides}},t.prototype.getSlideBackgroundContainer=function(){return this.sliderElement.querySelector(".n2-ss-slide").parentNode},t})),r.d("SmartSliderResponsiveBlock",["SmartSliderResponsive"],(function(){function t(){r.SmartSliderResponsive.prototype.constructor.apply(this,arguments),this.Dt=this.sliderElement.classList.contains("n2-ss-full-page--constrain-ratio")}return t.prototype=Object.create(r.SmartSliderResponsive.prototype),t.prototype.constructor=t,t.prototype.init=function(){r.SmartSliderResponsive.prototype.init.call(this),this._cacheEl={slider:this.sliderElement.querySelector(".n2-ss-slider-wrapper-inside")||this.sliderElement}},t.prototype.calculateResponsiveValues=function(){var t=this.slider.visibleRealSlides[0].element,i=t.getBoundingClientRect();this.resizeContext.slideSelfWidth=i.width,this.resizeContext.slideSelfHeight=i.height;var s=t.querySelector(".n2-ss-layers-container").getBoundingClientRect();this.resizeContext.slideWidth=s.width,this.resizeContext.slideHeight=s.height;var n=this._cacheEl.slider.getBoundingClientRect();if(this.resizeContext.sliderWidth=n.width,this.resizeContext.sliderHeight=n.height,r.SmartSliderResponsive.prototype.calculateResponsiveValues.call(this),this.Dt){var h=(this.resizeContext.sliderWidth-this.resizeContext.slideWidth)/-2+"px",o=(this.resizeContext.sliderHeight-this.resizeContext.slideHeight)/-2+"px";r.MW.k(this._cacheEl.slider)["--ss-clip-path"]="inset("+o+" "+h+" "+o+" "+h+")"}},t})),r.d("ss-block",["SmartSliderBlock","SmartSliderResponsiveBlock"])}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s,o=t.document,r=(o.documentElement,t.setTimeout),h=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,o.createElement.bind(o)),c=function(){return u("div")},l=Object.assign,f=function(t,i){for(var s=Object(t),o=1;o<arguments.length;o++){var r=arguments[o];if(null!==r&&r!==n)for(var h in r)null!==r[h]&&Object.prototype.hasOwnProperty.call(r,h)&&("object"==typeof r[h]&&(r[h].constructor===Object||Array.isArray(r[h]))?(Array.isArray(r[h])?s[h]=[]:("object"!=typeof s[h]||Array.isArray(s[h]))&&(s[h]={}),s[h]=f(s[h],r[h])):s[h]=r[h])}return s},d=function(t,i){return t.dataset[i]},p=function(t,i,n){t.style.setProperty(i,n)},v=function(t,i){for(var n in i)p(t,n,i[n])};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",s):o.addEventListener("DOMContentLoaded",s),a.d("SmartSliderFrontendBackgroundAnimation",["SmartSliderMainAnimationSimple"],(function(){function t(t,i,n){this._currentBackgroundAnimation=!1,a.SmartSliderMainAnimationSimple.prototype.constructor.call(this,t,i),this.isReverseAllowed=!1,this.bgAnimationElement=this.sliderElement.querySelector(".n2-ss-background-animation"),this.slider.parameters.perspective>0&&this.bgAnimationElement&&p(this.bgAnimationElement,"perspective",this.slider.parameters.perspective+"px"),this.backgroundAnimations=l({global:0,speed:"normal"},n),this.backgrounds=t.backgrounds.getBackgroundImages()}return t.prototype=Object.create(a.SmartSliderMainAnimationSimple.prototype),t.prototype.constructor=t,t.prototype.getBackgroundAnimation=function(t,i){if(this.slider.parameters.backgroundParallax)return!1;if(i.hasBackgroundVideo()||t.hasBackgroundVideo())return!1;var n=this.backgroundAnimations.global,s=this.backgroundAnimations.speed;if(this.Mt=!1,i.backgroundAnimation){var o=i.backgroundAnimation;n=o.animation,s=o.speed,o.color&&(this.Mt=o.color)}if(!n)return!1;const r=Math.floor(Math.random()*n.length);return!!this.canAnimateWithBackgroundMode(n[r].allowedBackgroundModes,i.background.mode,t.background.mode)&&[n[r],s]},t.prototype.canAnimateWithBackgroundMode=function(t,i,n){return!!(!t||t.includes(i)&&t.includes(n))},t.prototype._initAnimation=function(t,i,n){this._currentBackgroundAnimation=!1;var s=t.background,o=i.background;if(s&&o){const h=new a.SmartSliderBackgroundAnimationBackgroundInterfaceFrontend(s),u=new a.SmartSliderBackgroundAnimationBackgroundInterfaceFrontend(o),c=this.getBackgroundAnimation(t,i);if(!1!==c){var r=1;switch(c[1]){case"superSlow10":r=10;break;case"superSlow":r=3;break;case"slow":r=1.5;break;case"fast":r=.75;break;case"superFast":r=.5}return this._currentBackgroundAnimation=new a["SmartSliderBackgroundAnimation"+c[0].type](this,h,u,c[0],r,n),a.SmartSliderMainAnimationSimple.prototype._initAnimation.apply(this,arguments),this._currentBackgroundAnimation.postSetup(),void this.timeline.set({},{onComplete:function(){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.ended(),this._currentBackgroundAnimation=!1)}.bind(this)})}}a.SmartSliderMainAnimationSimple.prototype._initAnimation.apply(this,arguments)},t.prototype.onChangeToComplete=function(t,i){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.ended(),this._currentBackgroundAnimation=!1),a.SmartSliderMainAnimationSimple.prototype.onChangeToComplete.apply(this,arguments)},t.prototype.onReverseChangeToComplete=function(t,i,n){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.revertEnded(),this._currentBackgroundAnimation=!1),a.SmartSliderMainAnimationSimple.prototype.onReverseChangeToComplete.apply(this,arguments)},t.prototype.getExtraDelay=function(){return this._currentBackgroundAnimation?this._currentBackgroundAnimation.getExtraDelay():0},t.prototype.hasBackgroundAnimation=function(){return this._currentBackgroundAnimation},t})),a.d("SmartSliderBackgroundAnimationAbstract",(function(){function t(t,i,n,s,o,r){this.durationMultiplier=o,this.original={currentImage:i,currentImageElement:i.backgroundElement,currentImageSMW:a.MW.k(i.backgroundElement),nextImage:n,nextImageElement:n.backgroundElement,nextImageSMW:a.MW.k(n.backgroundElement)},this.animationProperties=s,this.reversed=r,this.sliderBackgroundAnimation=t,this.timeline=t.timeline,this.containerElement=t.bgAnimationElement,this.shiftedBackgroundAnimation=t.parameters.shiftedBackgroundAnimation,this.clonedImages={}}return t.prototype.postSetup=function(){},t.prototype.ended=function(){},t.prototype.revertEnded=function(){},t.prototype.placeNextImage=function(){this.clonedImages.nextImage=this.original.nextImageElement.cloneNode(!0),v(this.clonedImages.nextImage,{position:"absolute",top:0,left:0,transform:"translate3d(0,0,0)",opacity:1}),this.containerElement.appendChild(this.clonedImages.nextImage)},t.prototype.placeCurrentImage=function(){this.clonedImages.currentImage=this.original.currentImageElement.cloneNode(!0),v(this.clonedImages.currentImage,{position:"absolute",top:0,left:0,transform:"translate3d(0,0,0)",opacity:1}),this.containerElement.appendChild(this.clonedImages.currentImage)},t.prototype.hideOriginals=function(){p(this.original.currentImageElement,"opacity",0),p(this.original.nextImageElement,"opacity",0)},t.prototype.resetAll=function(){p(this.original.currentImageElement,"opacity",1),p(this.original.nextImageElement,"opacity",1),this.containerElement.innerHTML=""},t.prototype.getExtraDelay=function(){return 10/60},t})),a.d("SmartSliderBackgroundAnimationBackgroundInterface",(function(){return class{constructor(t){this.backgroundElement=t}getImage(){return this.backgroundElement.querySelector("img").currentSrc}getSize(){const t=this.backgroundElement.getBoundingClientRect();return[t.width,t.height]}hasImage(){return!0}isCover(){return!0}getOpacity(){return 1}getBlur(){return 0}isOverlay(){return!1}getOverlay(){return!1}getFocusX(){return.5}getFocusY(){return.5}getColor(){return"RGBA(0,0,0,0)"}}})),a.d("SmartSliderBackgroundAnimationBackgroundInterfaceFrontend","SmartSliderBackgroundAnimationBackgroundInterface",(function(){class t extends a.SmartSliderBackgroundAnimationBackgroundInterface{constructor(t){super(t.element),this.background=t}hasImage(){return this.background.hasImage()}getImage(){return super.getImage()}isCover(){return!this.hasImage()||"fill"===d(this.background.element,"mode")}getOpacity(){return+d(this.background.elements.image.imageElements[0],"opacity")/100}getBlur(){return+this.background.elements.image.blur}isOverlay(){return!!d(this.background.elements.color.el,"overlay")}getFocusX(){return+d(this.background.elements.image.imageElements[0],"x")/100}getFocusY(){return+d(this.background.elements.image.imageElements[0],"y")/100}getColor(t){const i=this.background.elements.color.el,n=d(i,"gradient"),s=t.canvas.width,o=t.canvas.height;let r=0;if(n){let h=0,a=0,u=0,c=0;switch(n){case"horizontal":u=s;break;case"vertical":c=o;break;case"diagonal1":r=45;break;case"diagonal2":r=135}if(0!==r){const t=(180-r)/180*Math.PI,i=Math.abs(s*Math.sin(t))+Math.abs(o*Math.cos(t)),n=Math.sin(t)*i/2,l=Math.cos(t)*i/2,f=s/2,d=o/2;h=f-n,a=d-l,u=f+n,c=d+l}let l=t.createLinearGradient(h,a,u,c);return l.addColorStop(0,d(i,"colorStart")),l.addColorStop(1,d(i,"colorEnd")),l}return d(i,"color")}}return t})),a.d("SmartSliderBackgroundAnimationCubic",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,fullCube:!0,tiles:{delay:.2,sequence:"Parallel"},depth:50,main:{side:"Left",duration:.5,ease:"easeInOutCubic",direction:"horizontal",real3D:!0},pre:[],post:[]},this.animationProperties);t.fullCube=!0,this.reversed&&(t.invert!==n&&f(t.main,t.invert),t.invertTiles!==n&&l(t.tiles,t.invertTiles)),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,s,o,r){var h=s.depth;switch(h){case"width":h=i;break;case"height":h=n}switch(s.main.side){case"Top":case"Bottom":h=n;break;case"Left":case"Right":h=i}s.main.real3D&&p(t,"transform-style","preserve-3d");var u=c(),l=a.MW.k(u);v(u,{position:"absolute",left:0,top:0,width:"100%",height:"100%","transform-style":"preserve-3d"}),l.z=-h/2,t.appendChild(u);var f=0;"horizontal"===s.main.direction&&(f=180);var d=this.getSide(u,i,n,0,0,-h/2,180,0,f),m={Back:d,BackInvert:d};(s.fullCube||"vertical"===s.main.direction)&&(m.Bottom=this.getSide(u,i,h,0,n-h/2,0,-90,0,0),m.Top=this.getSide(u,i,h,0,-h/2,0,90,0,0)),m.Front=this.getSide(u,i,n,0,0,h/2,0,0,0),(s.fullCube||"horizontal"===s.main.direction)&&(m.Left=this.getSide(u,h,n,-h/2,0,0,0,-90,0),m.Right=this.getSide(u,h,n,i-h/2,0,0,0,90,0));var x=this.clonedCurrent().cloneNode(!0);v(x,{position:"absolute",top:-r+"px",left:-o+"px"}),m.Front.appendChild(x);var g=this.clonedNext().cloneNode(!0);return v(g,{position:"absolute",top:-r+"px",left:-o+"px"}),m[s.main.side].appendChild(g),a.MW.k(u)},t.prototype.getSide=function(t,i,n,s,o,r,h,u,l){var f=c();return f.className="n2-bganim-side",v(f,{width:i+"px",height:n+"px","backface-visibility":"hidden"}),t.appendChild(f),a.MW.k(f).setValues({x:s,y:o,z:r,rotationZ:l,rotationY:u,rotationX:h}),f},t.prototype.transform=function(t,i,n){var s,o,r;for(s=0;s<t.pre.length;s++)r=(o=l({},t.pre[s])).duration*this.durationMultiplier,delete o.duration,this.timeline.to(i,r,o,n),n+=r;for(this["transform"+t.main.side](t.main,i,n),n+=t.main.duration*this.durationMultiplier,s=0;s<t.post.length;s++)r=(o=l({},t.post[s])).duration*this.durationMultiplier,delete o.duration,this.timeline.to(i,r,o,n),n+=r},t.prototype.transformLeft=function(t,i,n){this._transform(t,i,n,0,90,0)},t.prototype.transformRight=function(t,i,n){this._transform(t,i,n,0,-90,0)},t.prototype.transformTop=function(t,i,n){this._transform(t,i,n,-90,0,0)},t.prototype.transformBottom=function(t,i,n){this._transform(t,i,n,90,0,0)},t.prototype.transformBack=function(t,i,n){"horizontal"===t.direction?this._transform(t,i,n,0,180,0):this._transform(t,i,n,180,0,0)},t.prototype.transformBackInvert=function(t,i,n){"horizontal"===t.direction?this._transform(t,i,n,0,-180,0):this._transform(t,i,n,-180,0,0)},t.prototype._transform=function(t,i,n,s,o,r){this.timeline.to(i,t.duration*this.durationMultiplier,{rotationX:s,rotationY:o,rotationZ:r,ease:t.ease},n)},t})),a.d("SmartSliderBackgroundAnimationExplode",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,reverse:!1,tiles:{delay:0,sequence:"Parallel"},main:{duration:.5,zIndex:2,current:{ease:"easeInOutCubic"}}},this.animationProperties);this.placeNextImage(),v(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,s,o,r){var h=c(),u=this.clonedCurrent().cloneNode(!0);return v(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":s.main.zIndex,perspective:"1000px",transformStyle:"preserve-3d"}),v(u,{position:"absolute",top:-r+"px",left:-o+"px"}),h.appendChild(u),t.appendChild(h),{current:h,tileSMW:a.MW.k(t)}},t.prototype.transform=function(t,i,n){var s=l({},t.main.current);s.rotationX=90*(3*Math.random()-1),s.rotationY=90*(3*Math.random()-1),s.rotationZ=90*(3*Math.random()-1),this.timeline.to(i.tileSMW,t.main.duration*this.durationMultiplier,s,n)},t})),a.d("SmartSliderBackgroundAnimationExplodeReversed",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,reverse:!1,tiles:{delay:0,sequence:"Parallel"},main:{duration:.5,zIndex:2,current:{ease:"easeInOutCubic"}}},this.animationProperties);this.placeCurrentImage(),v(this.clonedImages.currentImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,s,o,r){var h=c(),u=this.clonedNext().cloneNode(!0);return v(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":s.main.zIndex,perspective:"1000px","transform-style":"preserve-3d"}),v(u,{position:"absolute",top:-r+"px",left:-o+"px"}),h.appendChild(u),t.appendChild(h),{next:h,tileSMW:a.MW.k(t)}},t.prototype.transform=function(t,i,n){var s=f({},t.main.current);s.rotationX=90*(3*Math.random()-1),s.rotationY=90*(3*Math.random()-1),s.rotationZ=30*(3*Math.random()-1),this.timeline.fromTo(i.tileSMW,t.main.duration*this.durationMultiplier,s,{ease:s.ease,rotationX:0,rotationY:0,rotationZ:0,opacity:1,x:0,y:0,z:0,scale:1},n)},t})),a.d("SmartSliderBackgroundAnimationFlat",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,tiles:{cropOuter:!1,crop:!0,delay:0,sequence:"Parallel"},main:{type:"next",duration:.5,real3D:!0,zIndex:1,current:{ease:"easeInOutCubic"},next:{ease:"easeInOutCubic"}}},this.animationProperties);this.reversed&&(t.invert!==n&&f(t.main,t.invert),t.invertTiles!==n&&l(t.tiles,t.invertTiles)),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t),t.tiles.cropOuter&&p(this.container,"overflow","hidden")},t.prototype.renderTile=function(t,i,n,s,o,r){s.tiles.crop&&p(t,"overflow","hidden");var h=c(),u=this.clonedCurrent().cloneNode(!0);v(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":s.main.zIndex}),v(u,{position:"absolute",top:-r+"px",left:-o+"px"}),h.appendChild(u),t.appendChild(h);var l,f,d=c(),m=this.clonedNext().cloneNode(!0);return v(d,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":1}),v(m,{position:"absolute",top:-r+"px",left:-o+"px"}),d.appendChild(m),t.appendChild(d),s.main.real3D&&(l="transform-style",f="preserve-3d",[t,h,d].forEach((function(t){p(t,l,f)}))),{current:h,currentSMW:a.MW.k(h),next:d,nextSMW:a.MW.k(d)}},t.prototype.transform=function(t,i,n){var s=t.main;s.current.transformOrigin&&(i.currentSMW.transformOrigin=s.current.transformOrigin),"current"!=s.type&&"both"!=s.type||this.timeline.to(i.currentSMW,s.duration*this.durationMultiplier,s.current,n),"next"!=s.type&&"both"!=s.type||(s.next.transformOrigin&&(i.nextSMW.transformOrigin=s.next.transformOrigin),this.timeline.fromTo(i.nextSMW,s.duration*this.durationMultiplier,s.next,{ease:s.next.ease,rotationX:0,rotationY:0,rotationZ:0,opacity:1,x:0,y:0,z:0,xP:0,yP:0,scale:1},n))},t})),a.d("SmartSliderBackgroundAnimationSlices",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments),this.setup()}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({slices:6,direction:"horizontal",isReversed:!1,tiles:{delay:.05,sequence:"normal",duration:.6,stages:[{},{},{}]}},this.animationProperties);this.container=c(),v(this.container,{position:"absolute",left:0,top:0,width:this.w+"px",height:this.h+"px",overflow:"hidden",perspective:"1000px"});var i,s,o=[];if("horizontal"===t.direction){for(var r=Math.floor(this.h/t.slices),h=this.h-t.slices*r,u=Math.ceil(h/t.slices),l=h,d=0,m=0;m<t.slices;m++){var x=r;l>0&&(x+=s=l>=u?u:l,l-=s),(i=c()).className="tile n2-bganim-tile-overlay-colored",v(i,{position:"absolute",top:d+"px",left:0,width:"100%",height:x+"px","z-index":1e6}),this.sliderBackgroundAnimation.Mt&&p(i,"background-color",this.sliderBackgroundAnimation.Mt),this.container.appendChild(i),o.push(a.MW.k(i)),d+=x}t.tiles.stages[0].x=this.w,t.tiles.stages[1].x=0,t.tiles.stages[2].x=-this.w}else if("vertical"===t.direction){for(var g=Math.floor(this.w/t.slices),b=this.w-t.slices*g,w=Math.ceil(b/t.slices),S=0,y=0;y<t.slices;y++){var k=g;b>0&&(k+=s=b>=w?w:b,b-=s),(i=c()).className="tile n2-bganim-tile-overlay-colored",v(i,{position:"absolute",top:0,left:S+"px",width:k+"px",height:"100%","z-index":1e6}),this.sliderBackgroundAnimation.Mt&&p(i,"background-color",this.sliderBackgroundAnimation.Mt),this.container.appendChild(i),o.push(a.MW.k(i)),S+=k}t.tiles.stages[0].y=this.h,t.tiles.stages[1].y=0,t.tiles.stages[2].y=-this.h}(this.reversed&&!t.isReversed||!this.reversed&&t.isReversed)&&(t.tiles.stages=t.tiles.stages.reverse());var M=c(),A=this.clonedCurrent().cloneNode(!0);v(M,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden","z-index":99999}),v(A,{position:"absolute",top:0,left:0}),M.appendChild(A),this.container.appendChild(M);var B=c(),O=a.MW.k(B),I=this.clonedNext().cloneNode(!0);v(B,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden","z-index":99999}),O.opacity=0,v(I,{position:"absolute",top:0,left:0}),B.appendChild(I),this.container.appendChild(B);var z,C,j=this.timeline.totalDuration();switch(t.tiles.sequence){case"FromSide":for(z=Math.floor(t.slices/2),C=0;C<o.length;C++)this.timeline.fromTo(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*Math.abs(Math.abs(z-C)-z));break;case"FromCenter":for(z=Math.floor(t.slices/2),C=0;C<o.length;C++)this.timeline.fromTo(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*Math.abs(z-C));break;default:for(C=0;C<o.length;C++)this.timeline.fromTo(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*C)}this.timeline.set(O,{opacity:1});var F=this.timeline.totalDuration()+.3;switch(t.tiles.sequence){case"FromSide":for(z=Math.floor(t.slices/2),C=0;C<o.length;C++)this.timeline.to(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*Math.abs(Math.abs(z-C)-z));break;case"FromCenter":for(z=Math.floor(t.slices/2),C=0;C<o.length;C++)this.timeline.to(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*Math.abs(z-C));break;default:for(C=0;C<o.length;C++)this.timeline.to(o[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*C)}t.nextImage!==n&&this.timeline.fromTo(O,this.timeline.totalDuration()-F+1,t.nextImage[0],t.nextImage[1],F),this.duration=this.timeline.totalDuration()-j,this.containerElement.appendChild(this.container),this.preSetup()},t})),a.d("SmartSliderBackgroundAnimationSlixes",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:2,rows:2,main:{duration:2,zIndex:2}},this.animationProperties);this.placeNextImage(),v(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,s,o,r){p(this.container,"overflow","hidden");var h=c(),u=this.clonedCurrent().cloneNode(!0);return v(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":s.main.zIndex}),v(u,{position:"absolute",top:-r+"px",left:-o+"px"}),h.appendChild(u),t.appendChild(h),v(t,{perspective:"1000px","transform-style":"preserve-3d"}),{current:h,tileSMW:a.MW.k(t)}},t.prototype.animate=function(t,i,n){this.timeline.to(n[0][0].tileSMW,t.main.duration*this.durationMultiplier,{xP:-100,ease:"easeInOutCubic"},0),this.timeline.to(n[0][1].tileSMW,t.main.duration*this.durationMultiplier,{xP:-100,ease:"easeInOutCubic"},.3),this.timeline.to(n[1][0].tileSMW,t.main.duration*this.durationMultiplier,{xP:100,ease:"easeInOutCubic"},.15),this.timeline.to(n[1][1].tileSMW,t.main.duration*this.durationMultiplier,{xP:100,ease:"easeInOutCubic"},.45);var s=c();v(s,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden"}),this.clonedImages.nextImage.parentNode.prepend(s),s.appendChild(this.clonedImages.nextImage),this.timeline.fromTo(this.clonedImages.nextImage,t.main.duration*this.durationMultiplier,{scale:1.3},{scale:1},.45)},t})),a.d("SmartSliderBackgroundAnimationTiled",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments),this.setup()}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t.prototype.setup=function(t){var i=c();v(i,{position:"absolute",left:0,top:0,width:this.w+"px",height:this.hc+"px",perspective:"1000px",transform:"translate3d(0,0,0)"}),this.container=i;for(var n=[],s=[],o=t.columns,r=t.rows,h=Math.floor(this.w/o),a=Math.floor(this.h/r),u=this.w-o*h,l=Math.ceil(u/o),f=this.h-r*a,d=Math.ceil(f/r),p=0,m=0;m<o;m++){n[m]=[];var x=h,g=0;if(u>0)x+=S=u>=l?l:u,u-=S;for(var b=f,w=0;w<r;w++){var S,y=a;if(b>0)y+=S=b>=d?d:b,b-=S;var k=c();k.className="tile",v(k,{position:"absolute",top:g+"px",left:p+"px",width:x+"px",height:y+"px","z-index":-Math.abs(m-parseInt(o/2))+o-Math.abs(w-parseInt(r/2))}),i.appendChild(k);var M=this.renderTile(k,x,y,t,p,g);s.push(M),n[m][w]=M,g+=y}p+=x}this.containerElement.appendChild(i),this.preSetup(),this.animate(t,s,n)},t.prototype.animate=function(t,i,n){this["sequence"+t.tiles.sequence](this.transform.bind(this,t),i,n,t.tiles.delay*this.durationMultiplier)},t.prototype.sequenceParallel=function(t,i){t(i,null)},t.prototype.sequenceRandom=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=0;r<i.length;r++)t(i[r],o+Math.random()*s)},t.prototype.sequenceForwardCol=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=0;r<i.length;r++)t(i[r],o+s*r)},t.prototype.sequenceBackwardCol=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=i.length-1,h=0;h<i.length;h++)t(i[h],o+s*(r-h))},t.prototype.sequenceForwardRow=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=0,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],o+s*r),r++},t.prototype.sequenceBackwardRow=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=i.length-1,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],o+s*r),r--},t.prototype.sequenceForwardDiagonal=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=0;r<n[0].length;r++)for(var h=0;h<n.length;h++)t(n[h][r],o+s*(h+r))},t.prototype.sequenceBackwardDiagonal=function(t,i,n,s){for(var o=this.timeline.totalDuration(),r=n[0].length+n.length-2,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],o+s*(r-a-h))},t})),a.d("SmartSliderBackgroundAnimationTurn",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments);var t=f({perspective:1.5*this.w,duration:.8,direction:"left"},this.animationProperties);this.reversed&&("left"===t.direction?t.direction="right":t.direction="left");var i=parseInt(this.w/2);v(this.clonedCurrent(),{position:"absolute",top:0,left:("left"===t.direction?this.w/2*-1:0)+"px"}),v(this.clonedNext(),{position:"absolute",top:0,left:("left"===t.direction?0:this.w/2*-1)+"px"});var n=c();n.className="tab",v(n,{width:i+"px",height:this.h+"px",position:"absolute",top:"0",left:("left"===t.direction?i:"0")+"px","z-index":101,"transform-style":"preserve-3d","transform-origin":"left"===t.direction?"0 0":i+"px 0"});var s=c();s.className="n2-ff-3d",s.appendChild(this.clonedCurrent()),v(s,{width:i+"px",height:this.h+"px",position:"absolute",top:0,left:0,overflow:"hidden","backface-visibility":"hidden","transform-style":"preserve-3d"}),n.appendChild(s);var o=c();o.className="n2-ff-3d",o.appendChild(this.clonedNext()),v(o,{width:i+"px",height:this.h+"px",position:"absolute",top:0,left:0,overflow:"hidden",transform:"rotateZ(0deg) rotateY(180deg)","backface-visibility":"hidden","transform-style":"preserve-3d"}),n.appendChild(o);var r=c(),h=this.clonedCurrent().cloneNode(!0);p(h,"left","left"===t.direction?0:-i+"px"),v(r,{position:"absolute",top:0,left:"left"===t.direction?"0":i+"px",width:i+"px",height:this.h+"px","z-index":100,overflow:"hidden"}),r.appendChild(h);var u=c();u.className="overlay",v(u,{position:"absolute",top:0,left:"left"===t.direction?i+"px":0,width:i+"px",height:this.h+"px",background:"#000",opacity:1,overflow:"hidden"});var l=c();v(l,{width:this.w+"px",height:this.h+"px",position:"absolute",top:0,left:0,perspective:t.perspective+"px","perspective-origin":"50% 50%"}),l.appendChild(n),l.appendChild(r),l.appendChild(u),this.placeNextImage(),v(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),this.containerElement.appendChild(l),this.preSetup(),this.timeline.to(a.MW.k(n),t.duration*this.durationMultiplier,{rotationY:"left"===t.direction?-180:180},0),this.timeline.to(a.MW.k(u),t.duration*this.durationMultiplier,{opacity:0},0)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t})),a.d("SmartSliderBackgroundAnimationFluxAbstract",["SmartSliderBackgroundAnimationAbstract"],(function(){function t(){this.shiftedPreSetup=!1,this._clonedCurrent=!1,this._clonedNext=!1,a.SmartSliderBackgroundAnimationAbstract.prototype.constructor.apply(this,arguments);var t=this.original.currentImageElement.getBoundingClientRect();this.w=Math.ceil(t.width),this.h=t.height,this.hc=Math.ceil(t.height)}function i(t){t.querySelectorAll("img").forEach((function(t){t.currentSrc&&t.src!==t.currentSrc&&(t.src="")}))}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationAbstract.prototype),t.prototype.constructor=t,t.prototype.clonedCurrent=function(){return this._clonedCurrent||(n2const.isFirefox&&i(this.original.currentImageElement),this._clonedCurrent=this.original.currentImageElement.cloneNode(!0),v(this._clonedCurrent,{width:this.w+"px",height:this.h+"px",transform:"translate3d(0,0,0)",opacity:1})),this._clonedCurrent},t.prototype.clonedNext=function(){return this._clonedNext||(n2const.isFirefox&&i(this.original.nextImageElement),this._clonedNext=this.original.nextImageElement.cloneNode(!0),v(this._clonedNext,{width:this.w+"px",height:this.h+"px",transform:"translate3d(0,0,0)",opacity:1})),this._clonedNext},t.prototype.preSetup=function(){0!=this.shiftedBackgroundAnimation?this.shiftedPreSetup=!0:this._preSetup()},t.prototype._preSetup=function(t){this.timeline.set(this.original.currentImageSMW,{opacity:0},0),this.original.nextImageSMW.opacity=0},t.prototype.postSetup=function(){this.timeline.set(this.original.nextImageSMW,{opacity:1})},t.prototype.ended=function(){this.original.currentImageSMW.opacity=1,this.containerElement.innerHTML=""},t.prototype.revertEnded=function(){this.original.nextImageSMW.opacity=1,this.containerElement.innerHTML=""},t})),a.d("smartslider-backgroundanimation")}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,o,s=t.document,r=(s.documentElement,t.setTimeout),h=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,function(t,i=null,n=null,o=null){const r=s.createElement(t);return i&&("string"==typeof i?w(r,i):S(r,i)),n&&p(r,n),o&&x(r,o),r}),c=function(t,i,n){return u("div",t,i,n)},l=Object.assign,f=function(t,i){for(var o=Object(t),s=1;s<arguments.length;s++){var r=arguments[s];if(null!==r&&r!==n)for(var h in r)null!==r[h]&&Object.prototype.hasOwnProperty.call(r,h)&&("object"==typeof r[h]&&(r[h].constructor===Object||Array.isArray(r[h]))?(Array.isArray(r[h])?o[h]=[]:("object"!=typeof o[h]||Array.isArray(o[h]))&&(o[h]={}),o[h]=f(o[h],r[h])):o[h]=r[h])}return o},d=function(t,i,n){t.setAttribute(i,n)},p=function(t,i){for(var n in i)d(t,n,i[n])},v=function(t,i){return t.dataset[i]},m=function(t,i,n){t.dataset[i]=n},x=function(t,i){for(let n in i)m(t,n,i[n])},g=function(t,i,n){t.style.setProperty(i,n)},b=function(t,i){for(var n in i)g(t,n,i[n])},w=function(t,i){t.classList.add(i)},S=function(t,i){i.forEach((function(i){t.classList.add(i)}))};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;o=function(){s.body},"complete"===s.readyState||"interactive"===s.readyState?o():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==s.addEventListener?Document.prototype.addEventListener.call(s,"DOMContentLoaded",o):s.addEventListener("DOMContentLoaded",o),a.d("SmartSliderFrontendBackgroundAnimation",["SmartSliderMainAnimationSimple"],(function(){function t(t,i,n){this._currentBackgroundAnimation=!1,a.SmartSliderMainAnimationSimple.prototype.constructor.call(this,t,i),this.isReverseAllowed=!1,this.bgAnimationElement=this.sliderElement.querySelector(".n2-ss-background-animation"),this.slider.parameters.perspective>0&&this.bgAnimationElement&&g(this.bgAnimationElement,"perspective",this.slider.parameters.perspective+"px"),this.backgroundAnimations=l({global:0,speed:"normal"},n),this.backgrounds=t.backgrounds.getBackgroundImages()}return t.prototype=Object.create(a.SmartSliderMainAnimationSimple.prototype),t.prototype.constructor=t,t.prototype.getBackgroundAnimation=function(t,i){if(this.slider.parameters.backgroundParallax)return!1;if(i.hasBackgroundVideo()||t.hasBackgroundVideo())return!1;var n=this.backgroundAnimations.global,o=this.backgroundAnimations.speed;if(this.xt=!1,i.backgroundAnimation){var s=i.backgroundAnimation;n=s.animation,o=s.speed,s.color&&(this.xt=s.color)}if(!n)return!1;const r=Math.floor(Math.random()*n.length);return!!this.canAnimateWithBackgroundMode(n[r].allowedBackgroundModes,i.background.mode,t.background.mode)&&[n[r],o]},t.prototype.canAnimateWithBackgroundMode=function(t,i,n){return!!(!t||t.includes(i)&&t.includes(n))},t.prototype._initAnimation=function(t,i,n){this._currentBackgroundAnimation=!1;var o=t.background,s=i.background;if(o&&s){const h=new a.SmartSliderBackgroundAnimationBackgroundInterfaceFrontend(o),u=new a.SmartSliderBackgroundAnimationBackgroundInterfaceFrontend(s),c=this.getBackgroundAnimation(t,i);if(!1!==c){var r=1;switch(c[1]){case"superSlow10":r=10;break;case"superSlow":r=3;break;case"slow":r=1.5;break;case"fast":r=.75;break;case"superFast":r=.5}return this._currentBackgroundAnimation=new a["SmartSliderBackgroundAnimation"+c[0].type](this,h,u,c[0],r,n),a.SmartSliderMainAnimationSimple.prototype._initAnimation.apply(this,arguments),this._currentBackgroundAnimation.postSetup(),void this.timeline.set({},{onComplete:function(){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.ended(),this._currentBackgroundAnimation=!1)}.bind(this)})}}a.SmartSliderMainAnimationSimple.prototype._initAnimation.apply(this,arguments)},t.prototype.onChangeToComplete=function(t,i){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.ended(),this._currentBackgroundAnimation=!1),a.SmartSliderMainAnimationSimple.prototype.onChangeToComplete.apply(this,arguments)},t.prototype.onReverseChangeToComplete=function(t,i,n){this._currentBackgroundAnimation&&(this._currentBackgroundAnimation.revertEnded(),this._currentBackgroundAnimation=!1),a.SmartSliderMainAnimationSimple.prototype.onReverseChangeToComplete.apply(this,arguments)},t.prototype.getExtraDelay=function(){return this._currentBackgroundAnimation?this._currentBackgroundAnimation.getExtraDelay():0},t.prototype.hasBackgroundAnimation=function(){return this._currentBackgroundAnimation},t})),a.d("SmartSliderBackgroundAnimationAbstract",(function(){function t(t,i,n,o,s,r){this.durationMultiplier=s,this.original={currentImage:i,currentImageElement:i.backgroundElement,currentImageSMW:a.MW.k(i.backgroundElement),nextImage:n,nextImageElement:n.backgroundElement,nextImageSMW:a.MW.k(n.backgroundElement)},this.animationProperties=o,this.reversed=r,this.sliderBackgroundAnimation=t,this.timeline=t.timeline,this.containerElement=t.bgAnimationElement,this.shiftedBackgroundAnimation=t.parameters.shiftedBackgroundAnimation,this.clonedImages={}}return t.prototype.postSetup=function(){},t.prototype.ended=function(){},t.prototype.revertEnded=function(){},t.prototype.placeNextImage=function(){this.clonedImages.nextImage=this.original.nextImageElement.cloneNode(!0),b(this.clonedImages.nextImage,{position:"absolute",top:0,left:0,transform:"translate3d(0,0,0)",opacity:1}),this.containerElement.appendChild(this.clonedImages.nextImage)},t.prototype.placeCurrentImage=function(){this.clonedImages.currentImage=this.original.currentImageElement.cloneNode(!0),b(this.clonedImages.currentImage,{position:"absolute",top:0,left:0,transform:"translate3d(0,0,0)",opacity:1}),this.containerElement.appendChild(this.clonedImages.currentImage)},t.prototype.hideOriginals=function(){g(this.original.currentImageElement,"opacity",0),g(this.original.nextImageElement,"opacity",0)},t.prototype.resetAll=function(){g(this.original.currentImageElement,"opacity",1),g(this.original.nextImageElement,"opacity",1),this.containerElement.innerHTML=""},t.prototype.getExtraDelay=function(){return 10/60},t})),a.d("SmartSliderBackgroundAnimationBackgroundInterface",(function(){return class{constructor(t){this.backgroundElement=t}getImage(){return this.backgroundElement.querySelector("img").currentSrc}getSize(){const t=this.backgroundElement.getBoundingClientRect();return[t.width,t.height]}hasImage(){return!0}isCover(){return!0}getOpacity(){return 1}getBlur(){return 0}isOverlay(){return!1}getOverlay(){return!1}getFocusX(){return.5}getFocusY(){return.5}getColor(){return"RGBA(0,0,0,0)"}}})),a.d("SmartSliderBackgroundAnimationBackgroundInterfaceFrontend","SmartSliderBackgroundAnimationBackgroundInterface",(function(){class t extends a.SmartSliderBackgroundAnimationBackgroundInterface{constructor(t){super(t.element),this.background=t}hasImage(){return this.background.hasImage()}getImage(){return super.getImage()}isCover(){return!this.hasImage()||"fill"===v(this.background.element,"mode")}getOpacity(){return+v(this.background.elements.image.imageElements[0],"opacity")/100}getBlur(){return+this.background.elements.image.blur}isOverlay(){return!!v(this.background.elements.color.el,"overlay")}getFocusX(){return+v(this.background.elements.image.imageElements[0],"x")/100}getFocusY(){return+v(this.background.elements.image.imageElements[0],"y")/100}getColor(t){const i=this.background.elements.color.el,n=v(i,"gradient"),o=t.canvas.width,s=t.canvas.height;let r=0;if(n){let h=0,a=0,u=0,c=0;switch(n){case"horizontal":u=o;break;case"vertical":c=s;break;case"diagonal1":r=45;break;case"diagonal2":r=135}if(0!==r){const t=(180-r)/180*Math.PI,i=Math.abs(o*Math.sin(t))+Math.abs(s*Math.cos(t)),n=Math.sin(t)*i/2,l=Math.cos(t)*i/2,f=o/2,d=s/2;h=f-n,a=d-l,u=f+n,c=d+l}let l=t.createLinearGradient(h,a,u,c);return l.addColorStop(0,v(i,"colorStart")),l.addColorStop(1,v(i,"colorEnd")),l}return v(i,"color")}}return t})),a.d("SmartSliderBackgroundAnimationCubic",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,fullCube:!0,tiles:{delay:.2,sequence:"Parallel"},depth:50,main:{side:"Left",duration:.5,ease:"easeInOutCubic",direction:"horizontal",real3D:!0},pre:[],post:[]},this.animationProperties);t.fullCube=!0,this.reversed&&(t.invert!==n&&f(t.main,t.invert),t.invertTiles!==n&&l(t.tiles,t.invertTiles)),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,o,s,r){var h=o.depth;switch(h){case"width":h=i;break;case"height":h=n}switch(o.main.side){case"Top":case"Bottom":h=n;break;case"Left":case"Right":h=i}o.main.real3D&&g(t,"transform-style","preserve-3d");var u=c(),l=a.MW.k(u);b(u,{position:"absolute",left:0,top:0,width:"100%",height:"100%","transform-style":"preserve-3d"}),l.z=-h/2,t.appendChild(u);var f=0;"horizontal"===o.main.direction&&(f=180);var d=this.getSide(u,i,n,0,0,-h/2,180,0,f),p={Back:d,BackInvert:d};(o.fullCube||"vertical"===o.main.direction)&&(p.Bottom=this.getSide(u,i,h,0,n-h/2,0,-90,0,0),p.Top=this.getSide(u,i,h,0,-h/2,0,90,0,0)),p.Front=this.getSide(u,i,n,0,0,h/2,0,0,0),(o.fullCube||"horizontal"===o.main.direction)&&(p.Left=this.getSide(u,h,n,-h/2,0,0,0,-90,0),p.Right=this.getSide(u,h,n,i-h/2,0,0,0,90,0));var v=this.clonedCurrent().cloneNode(!0);b(v,{position:"absolute",top:-r+"px",left:-s+"px"}),p.Front.appendChild(v);var m=this.clonedNext().cloneNode(!0);return b(m,{position:"absolute",top:-r+"px",left:-s+"px"}),p[o.main.side].appendChild(m),a.MW.k(u)},t.prototype.getSide=function(t,i,n,o,s,r,h,u,l){var f=c();return f.className="n2-bganim-side",b(f,{width:i+"px",height:n+"px","backface-visibility":"hidden"}),t.appendChild(f),a.MW.k(f).setValues({x:o,y:s,z:r,rotationZ:l,rotationY:u,rotationX:h}),f},t.prototype.transform=function(t,i,n){var o,s,r;for(o=0;o<t.pre.length;o++)r=(s=l({},t.pre[o])).duration*this.durationMultiplier,delete s.duration,this.timeline.to(i,r,s,n),n+=r;for(this["transform"+t.main.side](t.main,i,n),n+=t.main.duration*this.durationMultiplier,o=0;o<t.post.length;o++)r=(s=l({},t.post[o])).duration*this.durationMultiplier,delete s.duration,this.timeline.to(i,r,s,n),n+=r},t.prototype.transformLeft=function(t,i,n){this._transform(t,i,n,0,90,0)},t.prototype.transformRight=function(t,i,n){this._transform(t,i,n,0,-90,0)},t.prototype.transformTop=function(t,i,n){this._transform(t,i,n,-90,0,0)},t.prototype.transformBottom=function(t,i,n){this._transform(t,i,n,90,0,0)},t.prototype.transformBack=function(t,i,n){"horizontal"===t.direction?this._transform(t,i,n,0,180,0):this._transform(t,i,n,180,0,0)},t.prototype.transformBackInvert=function(t,i,n){"horizontal"===t.direction?this._transform(t,i,n,0,-180,0):this._transform(t,i,n,-180,0,0)},t.prototype._transform=function(t,i,n,o,s,r){this.timeline.to(i,t.duration*this.durationMultiplier,{rotationX:o,rotationY:s,rotationZ:r,ease:t.ease},n)},t})),a.d("SmartSliderBackgroundAnimationExplode",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,reverse:!1,tiles:{delay:0,sequence:"Parallel"},main:{duration:.5,zIndex:2,current:{ease:"easeInOutCubic"}}},this.animationProperties);this.placeNextImage(),b(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,o,s,r){var h=c(),u=this.clonedCurrent().cloneNode(!0);return b(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":o.main.zIndex,perspective:"1000px",transformStyle:"preserve-3d"}),b(u,{position:"absolute",top:-r+"px",left:-s+"px"}),h.appendChild(u),t.appendChild(h),{current:h,tileSMW:a.MW.k(t)}},t.prototype.transform=function(t,i,n){var o=l({},t.main.current);o.rotationX=90*(3*Math.random()-1),o.rotationY=90*(3*Math.random()-1),o.rotationZ=90*(3*Math.random()-1),this.timeline.to(i.tileSMW,t.main.duration*this.durationMultiplier,o,n)},t})),a.d("SmartSliderBackgroundAnimationExplodeReversed",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,reverse:!1,tiles:{delay:0,sequence:"Parallel"},main:{duration:.5,zIndex:2,current:{ease:"easeInOutCubic"}}},this.animationProperties);this.placeCurrentImage(),b(this.clonedImages.currentImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,o,s,r){var h=c(),u=this.clonedNext().cloneNode(!0);return b(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":o.main.zIndex,perspective:"1000px","transform-style":"preserve-3d"}),b(u,{position:"absolute",top:-r+"px",left:-s+"px"}),h.appendChild(u),t.appendChild(h),{next:h,tileSMW:a.MW.k(t)}},t.prototype.transform=function(t,i,n){var o=f({},t.main.current);o.rotationX=90*(3*Math.random()-1),o.rotationY=90*(3*Math.random()-1),o.rotationZ=30*(3*Math.random()-1),this.timeline.fromTo(i.tileSMW,t.main.duration*this.durationMultiplier,o,{ease:o.ease,rotationX:0,rotationY:0,rotationZ:0,opacity:1,x:0,y:0,z:0,scale:1},n)},t})),a.d("SmartSliderBackgroundAnimationFlat",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:1,rows:1,tiles:{cropOuter:!1,crop:!0,delay:0,sequence:"Parallel"},main:{type:"next",duration:.5,real3D:!0,zIndex:1,current:{ease:"easeInOutCubic"},next:{ease:"easeInOutCubic"}}},this.animationProperties);this.reversed&&(t.invert!==n&&f(t.main,t.invert),t.invertTiles!==n&&l(t.tiles,t.invertTiles)),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t),t.tiles.cropOuter&&g(this.container,"overflow","hidden")},t.prototype.renderTile=function(t,i,n,o,s,r){o.tiles.crop&&g(t,"overflow","hidden");var h=c(),u=this.clonedCurrent().cloneNode(!0);b(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":o.main.zIndex}),b(u,{position:"absolute",top:-r+"px",left:-s+"px"}),h.appendChild(u),t.appendChild(h);var l,f,d=c(),p=this.clonedNext().cloneNode(!0);return b(d,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":1}),b(p,{position:"absolute",top:-r+"px",left:-s+"px"}),d.appendChild(p),t.appendChild(d),o.main.real3D&&(l="transform-style",f="preserve-3d",[t,h,d].forEach((function(t){g(t,l,f)}))),{current:h,currentSMW:a.MW.k(h),next:d,nextSMW:a.MW.k(d)}},t.prototype.transform=function(t,i,n){var o=t.main;o.current.transformOrigin&&(i.currentSMW.transformOrigin=o.current.transformOrigin),"current"!=o.type&&"both"!=o.type||this.timeline.to(i.currentSMW,o.duration*this.durationMultiplier,o.current,n),"next"!=o.type&&"both"!=o.type||(o.next.transformOrigin&&(i.nextSMW.transformOrigin=o.next.transformOrigin),this.timeline.fromTo(i.nextSMW,o.duration*this.durationMultiplier,o.next,{ease:o.next.ease,rotationX:0,rotationY:0,rotationZ:0,opacity:1,x:0,y:0,z:0,xP:0,yP:0,scale:1},n))},t})),a.d("SmartSliderBackgroundAnimationSlices",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments),this.setup()}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({slices:6,direction:"horizontal",isReversed:!1,tiles:{delay:.05,sequence:"normal",duration:.6,stages:[{},{},{}]}},this.animationProperties);this.container=c(),b(this.container,{position:"absolute",left:0,top:0,width:this.w+"px",height:this.h+"px",overflow:"hidden",perspective:"1000px"});var i,o,s=[];if("horizontal"===t.direction){for(var r=Math.floor(this.h/t.slices),h=this.h-t.slices*r,u=Math.ceil(h/t.slices),l=h,d=0,p=0;p<t.slices;p++){var v=r;l>0&&(v+=o=l>=u?u:l,l-=o),(i=c()).className="tile n2-bganim-tile-overlay-colored",b(i,{position:"absolute",top:d+"px",left:0,width:"100%",height:v+"px","z-index":1e6}),this.sliderBackgroundAnimation.xt&&g(i,"background-color",this.sliderBackgroundAnimation.xt),this.container.appendChild(i),s.push(a.MW.k(i)),d+=v}t.tiles.stages[0].x=this.w,t.tiles.stages[1].x=0,t.tiles.stages[2].x=-this.w}else if("vertical"===t.direction){for(var m=Math.floor(this.w/t.slices),x=this.w-t.slices*m,w=Math.ceil(x/t.slices),S=0,y=0;y<t.slices;y++){var k=m;x>0&&(k+=o=x>=w?w:x,x-=o),(i=c()).className="tile n2-bganim-tile-overlay-colored",b(i,{position:"absolute",top:0,left:S+"px",width:k+"px",height:"100%","z-index":1e6}),this.sliderBackgroundAnimation.xt&&g(i,"background-color",this.sliderBackgroundAnimation.xt),this.container.appendChild(i),s.push(a.MW.k(i)),S+=k}t.tiles.stages[0].y=this.h,t.tiles.stages[1].y=0,t.tiles.stages[2].y=-this.h}(this.reversed&&!t.isReversed||!this.reversed&&t.isReversed)&&(t.tiles.stages=t.tiles.stages.reverse());var M=c(),A=this.clonedCurrent().cloneNode(!0);b(M,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden","z-index":99999}),b(A,{position:"absolute",top:0,left:0}),M.appendChild(A),this.container.appendChild(M);var B=c(),O=a.MW.k(B),I=this.clonedNext().cloneNode(!0);b(B,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden","z-index":99999}),O.opacity=0,b(I,{position:"absolute",top:0,left:0}),B.appendChild(I),this.container.appendChild(B);var z,C,j=this.timeline.totalDuration();switch(t.tiles.sequence){case"FromSide":for(z=Math.floor(t.slices/2),C=0;C<s.length;C++)this.timeline.fromTo(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*Math.abs(Math.abs(z-C)-z));break;case"FromCenter":for(z=Math.floor(t.slices/2),C=0;C<s.length;C++)this.timeline.fromTo(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*Math.abs(z-C));break;default:for(C=0;C<s.length;C++)this.timeline.fromTo(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[0],t.tiles.stages[1],j+t.tiles.delay*C)}this.timeline.set(O,{opacity:1});var F=this.timeline.totalDuration()+.3;switch(t.tiles.sequence){case"FromSide":for(z=Math.floor(t.slices/2),C=0;C<s.length;C++)this.timeline.to(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*Math.abs(Math.abs(z-C)-z));break;case"FromCenter":for(z=Math.floor(t.slices/2),C=0;C<s.length;C++)this.timeline.to(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*Math.abs(z-C));break;default:for(C=0;C<s.length;C++)this.timeline.to(s[C],t.tiles.duration*this.durationMultiplier,t.tiles.stages[2],F+t.tiles.delay*C)}t.nextImage!==n&&this.timeline.fromTo(O,this.timeline.totalDuration()-F+1,t.nextImage[0],t.nextImage[1],F),this.duration=this.timeline.totalDuration()-j,this.containerElement.appendChild(this.container),this.preSetup()},t})),a.d("SmartSliderBackgroundAnimationSlixes",["SmartSliderBackgroundAnimationTiled"],(function(){function t(){a.SmartSliderBackgroundAnimationTiled.prototype.constructor.apply(this,arguments)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationTiled.prototype),t.prototype.constructor=t,t.prototype.setup=function(){var t=f({columns:2,rows:2,main:{duration:2,zIndex:2}},this.animationProperties);this.placeNextImage(),b(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),a.SmartSliderBackgroundAnimationTiled.prototype.setup.call(this,t)},t.prototype.renderTile=function(t,i,n,o,s,r){g(this.container,"overflow","hidden");var h=c(),u=this.clonedCurrent().cloneNode(!0);return b(h,{position:"absolute",left:0,top:0,width:i+"px",height:n+"px",overflow:"hidden","z-index":o.main.zIndex}),b(u,{position:"absolute",top:-r+"px",left:-s+"px"}),h.appendChild(u),t.appendChild(h),b(t,{perspective:"1000px","transform-style":"preserve-3d"}),{current:h,tileSMW:a.MW.k(t)}},t.prototype.animate=function(t,i,n){this.timeline.to(n[0][0].tileSMW,t.main.duration*this.durationMultiplier,{xP:-100,ease:"easeInOutCubic"},0),this.timeline.to(n[0][1].tileSMW,t.main.duration*this.durationMultiplier,{xP:-100,ease:"easeInOutCubic"},.3),this.timeline.to(n[1][0].tileSMW,t.main.duration*this.durationMultiplier,{xP:100,ease:"easeInOutCubic"},.15),this.timeline.to(n[1][1].tileSMW,t.main.duration*this.durationMultiplier,{xP:100,ease:"easeInOutCubic"},.45);var o=c();b(o,{position:"absolute",left:0,top:0,width:"100%",height:"100%",overflow:"hidden"}),this.clonedImages.nextImage.parentNode.prepend(o),o.appendChild(this.clonedImages.nextImage),this.timeline.fromTo(this.clonedImages.nextImage,t.main.duration*this.durationMultiplier,{scale:1.3},{scale:1},.45)},t})),a.d("SmartSliderBackgroundAnimationTiled",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments),this.setup()}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t.prototype.setup=function(t){var i=c();b(i,{position:"absolute",left:0,top:0,width:this.w+"px",height:this.hc+"px",perspective:"1000px",transform:"translate3d(0,0,0)"}),this.container=i;for(var n=[],o=[],s=t.columns,r=t.rows,h=Math.floor(this.w/s),a=Math.floor(this.h/r),u=this.w-s*h,l=Math.ceil(u/s),f=this.h-r*a,d=Math.ceil(f/r),p=0,v=0;v<s;v++){n[v]=[];var m=h,x=0;if(u>0)m+=S=u>=l?l:u,u-=S;for(var g=f,w=0;w<r;w++){var S,y=a;if(g>0)y+=S=g>=d?d:g,g-=S;var k=c();k.className="tile",b(k,{position:"absolute",top:x+"px",left:p+"px",width:m+"px",height:y+"px","z-index":-Math.abs(v-parseInt(s/2))+s-Math.abs(w-parseInt(r/2))}),i.appendChild(k);var M=this.renderTile(k,m,y,t,p,x);o.push(M),n[v][w]=M,x+=y}p+=m}this.containerElement.appendChild(i),this.preSetup(),this.animate(t,o,n)},t.prototype.animate=function(t,i,n){this["sequence"+t.tiles.sequence](this.transform.bind(this,t),i,n,t.tiles.delay*this.durationMultiplier)},t.prototype.sequenceParallel=function(t,i){t(i,null)},t.prototype.sequenceRandom=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=0;r<i.length;r++)t(i[r],s+Math.random()*o)},t.prototype.sequenceForwardCol=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=0;r<i.length;r++)t(i[r],s+o*r)},t.prototype.sequenceBackwardCol=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=i.length-1,h=0;h<i.length;h++)t(i[h],s+o*(r-h))},t.prototype.sequenceForwardRow=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=0,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],s+o*r),r++},t.prototype.sequenceBackwardRow=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=i.length-1,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],s+o*r),r--},t.prototype.sequenceForwardDiagonal=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=0;r<n[0].length;r++)for(var h=0;h<n.length;h++)t(n[h][r],s+o*(h+r))},t.prototype.sequenceBackwardDiagonal=function(t,i,n,o){for(var s=this.timeline.totalDuration(),r=n[0].length+n.length-2,h=0;h<n[0].length;h++)for(var a=0;a<n.length;a++)t(n[a][h],s+o*(r-a-h))},t})),a.d("SmartSliderBackgroundAnimationTurn",["SmartSliderBackgroundAnimationFluxAbstract"],(function(){function t(){a.SmartSliderBackgroundAnimationFluxAbstract.prototype.constructor.apply(this,arguments);var t=f({perspective:1.5*this.w,duration:.8,direction:"left"},this.animationProperties);this.reversed&&("left"===t.direction?t.direction="right":t.direction="left");var i=parseInt(this.w/2);b(this.clonedCurrent(),{position:"absolute",top:0,left:("left"===t.direction?this.w/2*-1:0)+"px"}),b(this.clonedNext(),{position:"absolute",top:0,left:("left"===t.direction?0:this.w/2*-1)+"px"});var n=c();n.className="tab",b(n,{width:i+"px",height:this.h+"px",position:"absolute",top:"0",left:("left"===t.direction?i:"0")+"px","z-index":101,"transform-style":"preserve-3d","transform-origin":"left"===t.direction?"0 0":i+"px 0"});var o=c();o.className="n2-ff-3d",o.appendChild(this.clonedCurrent()),b(o,{width:i+"px",height:this.h+"px",position:"absolute",top:0,left:0,overflow:"hidden","backface-visibility":"hidden","transform-style":"preserve-3d"}),n.appendChild(o);var s=c();s.className="n2-ff-3d",s.appendChild(this.clonedNext()),b(s,{width:i+"px",height:this.h+"px",position:"absolute",top:0,left:0,overflow:"hidden",transform:"rotateZ(0deg) rotateY(180deg)","backface-visibility":"hidden","transform-style":"preserve-3d"}),n.appendChild(s);var r=c(),h=this.clonedCurrent().cloneNode(!0);g(h,"left","left"===t.direction?0:-i+"px"),b(r,{position:"absolute",top:0,left:"left"===t.direction?"0":i+"px",width:i+"px",height:this.h+"px","z-index":100,overflow:"hidden"}),r.appendChild(h);var u=c();u.className="overlay",b(u,{position:"absolute",top:0,left:"left"===t.direction?i+"px":0,width:i+"px",height:this.h+"px",background:"#000",opacity:1,overflow:"hidden"});var l=c();b(l,{width:this.w+"px",height:this.h+"px",position:"absolute",top:0,left:0,perspective:t.perspective+"px","perspective-origin":"50% 50%"}),l.appendChild(n),l.appendChild(r),l.appendChild(u),this.placeNextImage(),b(this.clonedImages.nextImage,{overflow:"hidden",width:"100%",height:"100%"}),this.containerElement.appendChild(l),this.preSetup(),this.timeline.to(a.MW.k(n),t.duration*this.durationMultiplier,{rotationY:"left"===t.direction?-180:180},0),this.timeline.to(a.MW.k(u),t.duration*this.durationMultiplier,{opacity:0},0)}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationFluxAbstract.prototype),t.prototype.constructor=t,t})),a.d("SmartSliderBackgroundAnimationFluxAbstract",["SmartSliderBackgroundAnimationAbstract"],(function(){function t(){this.shiftedPreSetup=!1,this._clonedCurrent=!1,this._clonedNext=!1,a.SmartSliderBackgroundAnimationAbstract.prototype.constructor.apply(this,arguments);var t=this.original.currentImageElement.getBoundingClientRect();this.w=Math.ceil(t.width),this.h=t.height,this.hc=Math.ceil(t.height)}function i(t){t.querySelectorAll("img").forEach((function(t){t.currentSrc&&t.src!==t.currentSrc&&(t.src="")}))}return t.prototype=Object.create(a.SmartSliderBackgroundAnimationAbstract.prototype),t.prototype.constructor=t,t.prototype.clonedCurrent=function(){return this._clonedCurrent||(n2const.isFirefox&&i(this.original.currentImageElement),this._clonedCurrent=this.original.currentImageElement.cloneNode(!0),b(this._clonedCurrent,{width:this.w+"px",height:this.h+"px",transform:"translate3d(0,0,0)",opacity:1})),this._clonedCurrent},t.prototype.clonedNext=function(){return this._clonedNext||(n2const.isFirefox&&i(this.original.nextImageElement),this._clonedNext=this.original.nextImageElement.cloneNode(!0),b(this._clonedNext,{width:this.w+"px",height:this.h+"px",transform:"translate3d(0,0,0)",opacity:1})),this._clonedNext},t.prototype.preSetup=function(){0!=this.shiftedBackgroundAnimation?this.shiftedPreSetup=!0:this._preSetup()},t.prototype._preSetup=function(t){this.timeline.set(this.original.currentImageSMW,{opacity:0},0),this.original.nextImageSMW.opacity=0},t.prototype.postSetup=function(){this.timeline.set(this.original.nextImageSMW,{opacity:1})},t.prototype.ended=function(){this.original.currentImageSMW.opacity=1,this.containerElement.innerHTML=""},t.prototype.revertEnded=function(){this.original.nextImageSMW.opacity=1,this.containerElement.innerHTML=""},t})),a.d("smartslider-backgroundanimation")}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,h=t.document,n=(h.documentElement,t.setTimeout),a=t.clearTimeout,r=i._N2,o=(t.requestAnimationFrame,h.createElement.bind(h),Object.assign),c=function(t,i){return t.dispatchEvent(i)},u=function(t,i){return c(t,new Event(i,{bubbles:!1,cancelable:!1}))},l=function(t,i,s){t.addEventListener(i,s,{once:!0})};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){h.body},"complete"===h.readyState||"interactive"===h.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==h.addEventListener?Document.prototype.addEventListener.call(h,"DOMContentLoaded",s):h.addEventListener("DOMContentLoaded",s),r.d("SmartSliderMainAnimationSimple",["SmartSliderMainAnimationAbstract"],(function(){function t(t,i){switch(this.postBackgroundAnimation=!1,this._currentBackgroundAnimation=!1,this.reverseSlideIndex=null,(i=o({delay:0,type:"horizontal",shiftedBackgroundAnimation:"auto"},i)).delay/=1e3,i.duration<300&&(i.type="no"),r.SmartSliderMainAnimationAbstract.prototype.constructor.call(this,t,i),this.parameters.type){case"no":this.animation=this._mainAnimationNo,this.isNoAnimation=!0;break;case"fade":this.animation=this._mainAnimationFade;break;case"crossfade":this.animation=this._mainAnimationCrossFade;break;case"vertical":t.backgrounds.hasFixed?this.animation=this._mainAnimationFade:this.animation=this._mainAnimationVertical;break;case"vertical-reversed":t.backgrounds.hasFixed?this.animation=this._mainAnimationFade:this.animation=this._mainAnimationVerticalReversed;break;case"horizontal-reversed":this.animation=this._mainAnimationHorizontalReversed;break;default:this.animation=this._mainAnimationHorizontal}}return t.prototype=Object.create(r.SmartSliderMainAnimationAbstract.prototype),t.prototype.constructor=t,t.prototype.changeTo=function(t,i,s,h){this.postBackgroundAnimation&&this.postBackgroundAnimation.prepareToSwitchSlide(t,i),r.SmartSliderMainAnimationAbstract.prototype.changeTo.apply(this,arguments)},t.prototype.setActiveSlide=function(t){for(var i=0;i<this.slider.slides.length;i++)this.slider.slides[i]!==t&&this.hideSlide(this.slider.slides[i])},t.prototype.hideSlide=function(t){r.MW.R(t.SMWs,{x:-1e5*n2const.rtl.modifier})},t.prototype.showSlide=function(t){r.MW.R(t.SMWs,{x:0,y:0})},t.prototype.cleanSlideIndex=function(t){this.hideSlide(this.slider.slides[t])},t.prototype.revertTo=function(t,i){r.MW.R(this.slider.slides[i].SMWs,{zIndex:""}),this.hideSlide(this.slider.slides[i]),r.SmartSliderMainAnimationAbstract.prototype.revertTo.apply(this,arguments)},t.prototype._initAnimation=function(t,i,s){this.animation(t,i,s)},t.prototype.onBackwardChangeToComplete=function(t,i,s){this.reverseSlideIndex=null,this.onChangeToComplete(t,i,s)},t.prototype.onChangeToComplete=function(t,i,s){null!==this.reverseSlideIndex&&(u(this.slider.slides[this.reverseSlideIndex].element,"mainAnimationStartInCancel"),this.reverseSlideIndex=null),this.hideSlide(t),r.SmartSliderMainAnimationAbstract.prototype.onChangeToComplete.apply(this,arguments)},t.prototype.onReverseChangeToComplete=function(t,i,s){this.hideSlide(t),r.SmartSliderMainAnimationAbstract.prototype.onReverseChangeToComplete.apply(this,arguments)},t.prototype._mainAnimationNo=function(t,i){this.parameters.delay=0,this.parameters.duration=.1,this._mainAnimationFade(t,i)},t.prototype._mainAnimationFade=function(t,i){r.MW.R(t.SMWs,{zIndex:23}),this.showSlide(i),t.unsetActive(),i.setActive();var s=this.adjustMainAnimation();if(0!==this.parameters.shiftedBackgroundAnimation){var h=!1,n=!1;if("auto"===this.parameters.shiftedBackgroundAnimation?t.hasLayers()?h=!0:n=!0:h=!0,this._currentBackgroundAnimation&&h){var a=s.outDuration-s.extraDelay;a>0&&this.timeline.shiftChildren(a),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else n&&(s.extraDelay>0&&this.timeline.shiftChildren(s.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}var o=[t.SMWs[0]];!this._currentBackgroundAnimation&&t.SMWs[1]&&o.push(t.SMWs[1]),this.timeline.fromTo(o,s.outDuration,{opacity:1},{opacity:0,ease:this.getEase()},s.outDelay);var c=r.MW.k(i.element);this.timeline.fromTo(c,s.inDuration,{opacity:0},{opacity:1,ease:this.getEase()},s.inDelay),!this._currentBackgroundAnimation&&i.background&&(r.MW.k(i.background.element).opacity=1),l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex];r.MW.R(t.SMWs,{zIndex:"",opacity:1})}.bind(this)),this.slider.updateInsideSlides([t,i])},t.prototype._mainAnimationCrossFade=function(t,i){r.MW.R(t.SMWs,{zIndex:23}),this.showSlide(i),t.unsetActive(),i.setActive();var s=this.adjustMainAnimation();if(0!=this.parameters.shiftedBackgroundAnimation){var h=!1,n=!1;if("auto"==this.parameters.shiftedBackgroundAnimation?t.hasLayers()?h=!0:n=!0:h=!0,this._currentBackgroundAnimation&&h){var a=s.outDuration-s.extraDelay;a>0&&this.timeline.shiftChildren(a),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else n&&(s.extraDelay>0&&this.timeline.shiftChildren(s.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}var o=[t.SMWs[0]];!this._currentBackgroundAnimation&&t.SMWs[1]&&o.push(t.SMWs[1]),this.timeline.fromTo(o,s.outDuration,{opacity:1},{opacity:0,ease:this.getEase()},s.outDelay);var c=[i.SMWs[0]];!this._currentBackgroundAnimation&&i.SMWs[1]&&c.push(i.SMWs[1]),this.timeline.fromTo(c,s.inDuration,{opacity:0},{opacity:1,ease:this.getEase()},s.inDelay),l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex],i=this.slider.slides[e.detail.currentSlideIndex];r.MW.R(t.SMWs,{zIndex:"",opacity:1}),r.MW.R(i.SMWs,{opacity:1})}.bind(this)),this.slider.updateInsideSlides([t,i])},t.prototype._mainAnimationHorizontal=function(t,i,s){this.__mainAnimationDirection(t,i,"horizontal",s)},t.prototype._mainAnimationVertical=function(t,i,s){this.showSlide(i),this.__mainAnimationDirection(t,i,"vertical",s)},t.prototype._mainAnimationHorizontalReversed=function(t,i,s){this.__mainAnimationDirection(t,i,"horizontal",!s)},t.prototype._mainAnimationVerticalReversed=function(t,i,s){this.showSlide(i),this.__mainAnimationDirection(t,i,"vertical",!s)},t.prototype.__mainAnimationDirection=function(t,i,s,h){var n=t.SMWs,a=i.SMWs,o=[t,i],c="",u=0;"horizontal"===s?(c="x",u=Math.floor(this.slider.responsive.resizeContext.slideOuterWidth),n2const.rtl.isRtl&&(h=!h)):"vertical"===s&&(c="y",u=Math.floor(this.slider.responsive.resizeContext.slideOuterHeight)),h&&(u*=-1);var f={},v={snap:"x,y",ease:this.getEase()},d={snap:"x,y",ease:this.getEase()};f[c]=u,d[c]=-u,r.MW.R(n,{zIndex:23});var m={zIndex:23};m[c]=u,r.MW.R(a,m),t.unsetActive(),i.setActive();var p,S=this.adjustMainAnimation();if(v[c]=0,this.timeline.fromTo(a,S.inDuration,f,v,S.inDelay),0!=this.parameters.shiftedBackgroundAnimation){var x=!1,y=!1;if("auto"===this.parameters.shiftedBackgroundAnimation?t.hasLayers()?x=!0:y=!0:x=!0,this._currentBackgroundAnimation&&x){var b=S.outDuration-S.extraDelay;b>0&&this.timeline.shiftChildren(b),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else y&&(S.extraDelay>0&&this.timeline.shiftChildren(S.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}if(this.timeline.to(n,S.outDuration,d,S.outDelay),this.isTouch&&this.isReverseAllowed)if(h?this.slider.blockCarousel&&this.slider.isChangeCarousel("next")||(p=t.getNext()):this.slider.blockCarousel&&this.slider.isChangeCarousel("previous")||(p=t.getPrevious()),p&&p!==i){this.reverseSlideIndex=p.index,this.enableReverseMode(),o.push(p),"vertical"===s&&this.showSlide(p);var D=p.SMWs,z={};z[c]=u,r.MW.R(D,z);var A={},I={snap:"x,y",ease:this.getEase()},w={},k={snap:"x,y",ease:this.getEase()};I[c]=0,A[c]=-u,k[c]=u,w[c]=0,p.K("mainAnimationStartIn",{mainAnimation:this,previousSlideIndex:t.index,currentSlideIndex:p.index,isSystem:!1}),this.reverseTimeline.paused(!0),this.reverseTimeline.eventCallback("onComplete",this.onBackwardChangeToComplete.bind(this),[t,p,!1]),this.reverseTimeline.fromTo(D,S.inDuration,A,I,S.inDelay),this.reverseTimeline.fromTo(n,S.inDuration,w,k,S.inDelay)}else this.reverseSlideIndex=null;l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex],i=this.slider.slides[e.detail.currentSlideIndex];r.MW.R(t.SMWs,{zIndex:""}),r.MW.R(i.SMWs,{zIndex:""})}.bind(this)),this.slider.updateInsideSlides(o)},t.prototype.getExtraDelay=function(){return 0},t.prototype.adjustMainAnimation=function(){var t=this.parameters.duration,i=this.parameters.delay,s=this.timeline.totalDuration(),h=this.getExtraDelay();if(s>0){var n=t+i;if(!(n>(s-=.05)))return{inDuration:t,outDuration:t,inDelay:s-t,outDelay:h,extraDelay:h};t=t*s/n,(i=i*s/n)<h&&(t-=h-i,i=h)}else i+=h;return{inDuration:t,outDuration:t,inDelay:i,outDelay:i,extraDelay:h}},t.prototype.hasBackgroundAnimation=function(){return!1},t})),r.d("SmartSliderResponsiveSimple",["SmartSliderResponsive"],(function(){function t(){this.round=1,r.SmartSliderResponsive.prototype.constructor.apply(this,arguments),this.xt=this.sliderElement.classList.contains("n2-ss-full-page--constrain-ratio"),this.mainAnimation=this.slider.mainAnimation}return t.prototype=Object.create(r.SmartSliderResponsive.prototype),t.prototype.constructor=t,t.prototype.init=function(){r.SmartSliderResponsive.prototype.init.call(this),this._cacheEl={slider:this.sliderElement.querySelector(".n2-ss-slider-wrapper-inside")||this.sliderElement,"n2-ss-slider-2":this.sliderElement.querySelector(".n2-ss-slider-2"),"n2-ss-slider-3":this.sliderElement.querySelector(".n2-ss-slider-3")},this._cacheEl["n2-ss-slider-3"].addEventListener("scroll",(function(e){e.currentTarget.scrollTop=0,e.currentTarget.scrollLeft=0}),{capture:!0})},t.prototype.calculateResponsiveValues=function(){var t=this.slider.visibleRealSlides[0].element,i=t.getBoundingClientRect();this.resizeContext.slideSelfWidth=i.width,this.resizeContext.slideSelfHeight=i.height;var s=t.querySelector(".n2-ss-layers-container").getBoundingClientRect();this.resizeContext.slideWidth=s.width,this.resizeContext.slideHeight=s.height;var h=this._cacheEl.slider.getBoundingClientRect();this.resizeContext.sliderWidth=h.width,this.resizeContext.sliderHeight=h.height;var n=this._cacheEl["n2-ss-slider-3"].getBoundingClientRect();if(this.resizeContext.slideOuterWidth=n.width,this.resizeContext.slideOuterHeight=n.height,r.SmartSliderResponsive.prototype.calculateResponsiveValues.call(this),this.xt){var a=(this.resizeContext.sliderWidth-this.resizeContext.slideWidth)/-2+"px",o=(this.resizeContext.sliderHeight-this.resizeContext.slideHeight)/-2+"px";r.MW.k(this._cacheEl.slider)["--ss-clip-path"]="inset("+o+" "+a+" "+o+" "+a+")"}},t.prototype.onStarterSlide=function(t){this.slider.slides.forEach((function(t){t.SMWs=[r.MW.k(t.element,{x:"-10000px"})],t.background&&t.SMWs.push(r.MW.k(t.background.element,{x:"-10000px"}))})),r.SmartSliderResponsive.prototype.onStarterSlide.apply(this,arguments),this.mainAnimation.setActiveSlide(this.slider.currentSlide)},t})),r.d("SmartSliderSimple",["SmartSliderAbstract"],(function(){function t(t,i){this.type="simple",r.SmartSliderAbstract.prototype.constructor.call(this,t,o({bgAnimations:0,carousel:1},i))}return t.prototype=Object.create(r.SmartSliderAbstract.prototype),t.prototype.constructor=t,t.prototype.initResponsiveMode=function(){this.responsive=new r.SmartSliderResponsiveSimple(this,this.parameters.responsive),this.responsive.start(),r.SmartSliderAbstract.prototype.initResponsiveMode.call(this)},t.prototype.initMainAnimation=function(){!this.disabled.backgroundAnimations&&this.parameters.bgAnimations?this.mainAnimation=new r.SmartSliderFrontendBackgroundAnimation(this,this.parameters.mainanimation,this.parameters.bgAnimations):this.mainAnimation=new r.SmartSliderMainAnimationSimple(this,this.parameters.mainanimation)},t.prototype.afterRawSlidesReady=function(){if(this.parameters.postBackgroundAnimations&&this.parameters.postBackgroundAnimations.slides){for(var t=0;t<this.slides.length;t++)this.slides[t].postBackgroundAnimation=this.parameters.postBackgroundAnimations.slides[t];delete this.parameters.postBackgroundAnimations.slides}if(this.parameters.bgAnimations&&this.parameters.bgAnimations.slides){for(var i=0;i<this.slides.length;i++)this.slides[i].backgroundAnimation=this.parameters.bgAnimations.slides[i];delete this.parameters.bgAnimations.slides}},t.prototype.forceSetActiveSlide=function(t){t.setActive(),this.mainAnimation.showSlide(t)},t.prototype.forceUnsetActiveSlide=function(t){t.unsetActive(),this.mainAnimation.hideSlide(t)},t.prototype.getAnimationAxis=function(){switch(this.mainAnimation.parameters.type){case"vertical":case"vertical-reversed":return"vertical"}return"horizontal"},t})),r.d("ss-simple",["SmartSliderSimple","SmartSliderResponsiveSimple","SmartSliderMainAnimationSimple"])}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,h=t.document,n=(h.documentElement,t.setTimeout),a=t.clearTimeout,r=i._N2,o=(t.requestAnimationFrame,Object.assign),c=function(t,i){return t.dispatchEvent(i)},u=function(t,i){return c(t,new Event(i,{bubbles:!1,cancelable:!1}))},l=function(t,i,s){t.addEventListener(i,s,{once:!0})};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){h.body},"complete"===h.readyState||"interactive"===h.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==h.addEventListener?Document.prototype.addEventListener.call(h,"DOMContentLoaded",s):h.addEventListener("DOMContentLoaded",s),r.d("SmartSliderMainAnimationSimple",["SmartSliderMainAnimationAbstract"],(function(){function t(t,i){switch(this.postBackgroundAnimation=!1,this._currentBackgroundAnimation=!1,this.reverseSlideIndex=null,(i=o({delay:0,type:"horizontal",shiftedBackgroundAnimation:"auto"},i)).delay/=1e3,i.duration<300&&(i.type="no"),r.SmartSliderMainAnimationAbstract.prototype.constructor.call(this,t,i),this.parameters.type){case"no":this.animation=this._mainAnimationNo,this.isNoAnimation=!0;break;case"fade":this.animation=this._mainAnimationFade;break;case"crossfade":this.animation=this._mainAnimationCrossFade;break;case"vertical":t.backgrounds.hasFixed?this.animation=this._mainAnimationFade:this.animation=this._mainAnimationVertical;break;case"vertical-reversed":t.backgrounds.hasFixed?this.animation=this._mainAnimationFade:this.animation=this._mainAnimationVerticalReversed;break;case"horizontal-reversed":this.animation=this._mainAnimationHorizontalReversed;break;default:this.animation=this._mainAnimationHorizontal}}return t.prototype=Object.create(r.SmartSliderMainAnimationAbstract.prototype),t.prototype.constructor=t,t.prototype.changeTo=function(t,i,s,h){this.postBackgroundAnimation&&this.postBackgroundAnimation.prepareToSwitchSlide(t,i),r.SmartSliderMainAnimationAbstract.prototype.changeTo.apply(this,arguments)},t.prototype.setActiveSlide=function(t){for(var i=0;i<this.slider.slides.length;i++)this.slider.slides[i]!==t&&this.hideSlide(this.slider.slides[i])},t.prototype.hideSlide=function(t){r.MW.R(t.SMWs,{x:-1e5*n2const.rtl.modifier})},t.prototype.showSlide=function(t){r.MW.R(t.SMWs,{x:0,y:0})},t.prototype.cleanSlideIndex=function(t){this.hideSlide(this.slider.slides[t])},t.prototype.revertTo=function(t,i){r.MW.R(this.slider.slides[i].SMWs,{zIndex:""}),this.hideSlide(this.slider.slides[i]),r.SmartSliderMainAnimationAbstract.prototype.revertTo.apply(this,arguments)},t.prototype._initAnimation=function(t,i,s){this.animation(t,i,s)},t.prototype.onBackwardChangeToComplete=function(t,i,s){this.reverseSlideIndex=null,this.onChangeToComplete(t,i,s)},t.prototype.onChangeToComplete=function(t,i,s){null!==this.reverseSlideIndex&&(u(this.slider.slides[this.reverseSlideIndex].element,"mainAnimationStartInCancel"),this.reverseSlideIndex=null),this.hideSlide(t),r.SmartSliderMainAnimationAbstract.prototype.onChangeToComplete.apply(this,arguments)},t.prototype.onReverseChangeToComplete=function(t,i,s){this.hideSlide(t),r.SmartSliderMainAnimationAbstract.prototype.onReverseChangeToComplete.apply(this,arguments)},t.prototype._mainAnimationNo=function(t,i){this.parameters.delay=0,this.parameters.duration=.1,this._mainAnimationFade(t,i)},t.prototype._mainAnimationFade=function(t,i){r.MW.R(t.SMWs,{zIndex:23}),this.showSlide(i),t.unsetActive(),i.setActive();var s=this.adjustMainAnimation();if(0!==this.parameters.shiftedBackgroundAnimation){var h=!1,n=!1;if("auto"===this.parameters.shiftedBackgroundAnimation?t.hasLayers()?h=!0:n=!0:h=!0,this._currentBackgroundAnimation&&h){var a=s.outDuration-s.extraDelay;a>0&&this.timeline.shiftChildren(a),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else n&&(s.extraDelay>0&&this.timeline.shiftChildren(s.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}var o=[t.SMWs[0]];!this._currentBackgroundAnimation&&t.SMWs[1]&&o.push(t.SMWs[1]),this.timeline.fromTo(o,s.outDuration,{opacity:1},{opacity:0,ease:this.getEase()},s.outDelay);var c=r.MW.k(i.element);this.timeline.fromTo(c,s.inDuration,{opacity:0},{opacity:1,ease:this.getEase()},s.inDelay),!this._currentBackgroundAnimation&&i.background&&(r.MW.k(i.background.element).opacity=1),l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex];r.MW.R(t.SMWs,{zIndex:"",opacity:1})}.bind(this)),this.slider.updateInsideSlides([t,i])},t.prototype._mainAnimationCrossFade=function(t,i){r.MW.R(t.SMWs,{zIndex:23}),this.showSlide(i),t.unsetActive(),i.setActive();var s=this.adjustMainAnimation();if(0!=this.parameters.shiftedBackgroundAnimation){var h=!1,n=!1;if("auto"==this.parameters.shiftedBackgroundAnimation?t.hasLayers()?h=!0:n=!0:h=!0,this._currentBackgroundAnimation&&h){var a=s.outDuration-s.extraDelay;a>0&&this.timeline.shiftChildren(a),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else n&&(s.extraDelay>0&&this.timeline.shiftChildren(s.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}var o=[t.SMWs[0]];!this._currentBackgroundAnimation&&t.SMWs[1]&&o.push(t.SMWs[1]),this.timeline.fromTo(o,s.outDuration,{opacity:1},{opacity:0,ease:this.getEase()},s.outDelay);var c=[i.SMWs[0]];!this._currentBackgroundAnimation&&i.SMWs[1]&&c.push(i.SMWs[1]),this.timeline.fromTo(c,s.inDuration,{opacity:0},{opacity:1,ease:this.getEase()},s.inDelay),l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex],i=this.slider.slides[e.detail.currentSlideIndex];r.MW.R(t.SMWs,{zIndex:"",opacity:1}),r.MW.R(i.SMWs,{opacity:1})}.bind(this)),this.slider.updateInsideSlides([t,i])},t.prototype._mainAnimationHorizontal=function(t,i,s){this.__mainAnimationDirection(t,i,"horizontal",s)},t.prototype._mainAnimationVertical=function(t,i,s){this.showSlide(i),this.__mainAnimationDirection(t,i,"vertical",s)},t.prototype._mainAnimationHorizontalReversed=function(t,i,s){this.__mainAnimationDirection(t,i,"horizontal",!s)},t.prototype._mainAnimationVerticalReversed=function(t,i,s){this.showSlide(i),this.__mainAnimationDirection(t,i,"vertical",!s)},t.prototype.__mainAnimationDirection=function(t,i,s,h){var n=t.SMWs,a=i.SMWs,o=[t,i],c="",u=0;"horizontal"===s?(c="x",u=Math.floor(this.slider.responsive.resizeContext.slideOuterWidth),n2const.rtl.isRtl&&(h=!h)):"vertical"===s&&(c="y",u=Math.floor(this.slider.responsive.resizeContext.slideOuterHeight)),h&&(u*=-1);var f={},v={snap:"x,y",ease:this.getEase()},d={snap:"x,y",ease:this.getEase()};f[c]=u,d[c]=-u,r.MW.R(n,{zIndex:23});var m={zIndex:23};m[c]=u,r.MW.R(a,m),t.unsetActive(),i.setActive();var p,S=this.adjustMainAnimation();if(v[c]=0,this.timeline.fromTo(a,S.inDuration,f,v,S.inDelay),0!=this.parameters.shiftedBackgroundAnimation){var x=!1,y=!1;if("auto"===this.parameters.shiftedBackgroundAnimation?t.hasLayers()?x=!0:y=!0:x=!0,this._currentBackgroundAnimation&&x){var b=S.outDuration-S.extraDelay;b>0&&this.timeline.shiftChildren(b),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup()}else y&&(S.extraDelay>0&&this.timeline.shiftChildren(S.extraDelay),this._currentBackgroundAnimation.shiftedPreSetup&&this._currentBackgroundAnimation._preSetup())}if(this.timeline.to(n,S.outDuration,d,S.outDelay),this.isTouch&&this.isReverseAllowed)if(h?this.slider.blockCarousel&&this.slider.isChangeCarousel("next")||(p=t.getNext()):this.slider.blockCarousel&&this.slider.isChangeCarousel("previous")||(p=t.getPrevious()),p&&p!==i){this.reverseSlideIndex=p.index,this.enableReverseMode(),o.push(p),"vertical"===s&&this.showSlide(p);var D=p.SMWs,z={};z[c]=u,r.MW.R(D,z);var A={},I={snap:"x,y",ease:this.getEase()},w={},k={snap:"x,y",ease:this.getEase()};I[c]=0,A[c]=-u,k[c]=u,w[c]=0,p.K("mainAnimationStartIn",{mainAnimation:this,previousSlideIndex:t.index,currentSlideIndex:p.index,isSystem:!1}),this.reverseTimeline.paused(!0),this.reverseTimeline.eventCallback("onComplete",this.onBackwardChangeToComplete.bind(this),[t,p,!1]),this.reverseTimeline.fromTo(D,S.inDuration,A,I,S.inDelay),this.reverseTimeline.fromTo(n,S.inDuration,w,k,S.inDelay)}else this.reverseSlideIndex=null;l(this.sliderElement,"mainAnimationComplete",function(e){var t=this.slider.slides[e.detail.previousSlideIndex],i=this.slider.slides[e.detail.currentSlideIndex];r.MW.R(t.SMWs,{zIndex:""}),r.MW.R(i.SMWs,{zIndex:""})}.bind(this)),this.slider.updateInsideSlides(o)},t.prototype.getExtraDelay=function(){return 0},t.prototype.adjustMainAnimation=function(){var t=this.parameters.duration,i=this.parameters.delay,s=this.timeline.totalDuration(),h=this.getExtraDelay();if(s>0){var n=t+i;if(!(n>(s-=.05)))return{inDuration:t,outDuration:t,inDelay:s-t,outDelay:h,extraDelay:h};t=t*s/n,(i=i*s/n)<h&&(t-=h-i,i=h)}else i+=h;return{inDuration:t,outDuration:t,inDelay:i,outDelay:i,extraDelay:h}},t.prototype.hasBackgroundAnimation=function(){return!1},t})),r.d("SmartSliderResponsiveSimple",["SmartSliderResponsive"],(function(){function t(){this.round=1,r.SmartSliderResponsive.prototype.constructor.apply(this,arguments),this.Dt=this.sliderElement.classList.contains("n2-ss-full-page--constrain-ratio"),this.mainAnimation=this.slider.mainAnimation}return t.prototype=Object.create(r.SmartSliderResponsive.prototype),t.prototype.constructor=t,t.prototype.init=function(){r.SmartSliderResponsive.prototype.init.call(this),this._cacheEl={slider:this.sliderElement.querySelector(".n2-ss-slider-wrapper-inside")||this.sliderElement,"n2-ss-slider-2":this.sliderElement.querySelector(".n2-ss-slider-2"),"n2-ss-slider-3":this.sliderElement.querySelector(".n2-ss-slider-3")},this._cacheEl["n2-ss-slider-3"].addEventListener("scroll",(function(e){e.currentTarget.scrollTop=0,e.currentTarget.scrollLeft=0}),{capture:!0})},t.prototype.calculateResponsiveValues=function(){var t=this.slider.visibleRealSlides[0].element,i=t.getBoundingClientRect();this.resizeContext.slideSelfWidth=i.width,this.resizeContext.slideSelfHeight=i.height;var s=t.querySelector(".n2-ss-layers-container").getBoundingClientRect();this.resizeContext.slideWidth=s.width,this.resizeContext.slideHeight=s.height;var h=this._cacheEl.slider.getBoundingClientRect();this.resizeContext.sliderWidth=h.width,this.resizeContext.sliderHeight=h.height;var n=this._cacheEl["n2-ss-slider-3"].getBoundingClientRect();if(this.resizeContext.slideOuterWidth=n.width,this.resizeContext.slideOuterHeight=n.height,r.SmartSliderResponsive.prototype.calculateResponsiveValues.call(this),this.Dt){var a=(this.resizeContext.sliderWidth-this.resizeContext.slideWidth)/-2+"px",o=(this.resizeContext.sliderHeight-this.resizeContext.slideHeight)/-2+"px";r.MW.k(this._cacheEl.slider)["--ss-clip-path"]="inset("+o+" "+a+" "+o+" "+a+")"}},t.prototype.onStarterSlide=function(t){this.slider.slides.forEach((function(t){t.SMWs=[r.MW.k(t.element,{x:"-10000px"})],t.background&&t.SMWs.push(r.MW.k(t.background.element,{x:"-10000px"}))})),r.SmartSliderResponsive.prototype.onStarterSlide.apply(this,arguments),this.mainAnimation.setActiveSlide(this.slider.currentSlide)},t})),r.d("SmartSliderSimple",["SmartSliderAbstract"],(function(){function t(t,i){this.type="simple",r.SmartSliderAbstract.prototype.constructor.call(this,t,o({bgAnimations:0,carousel:1},i))}return t.prototype=Object.create(r.SmartSliderAbstract.prototype),t.prototype.constructor=t,t.prototype.initResponsiveMode=function(){this.responsive=new r.SmartSliderResponsiveSimple(this,this.parameters.responsive),this.responsive.start(),r.SmartSliderAbstract.prototype.initResponsiveMode.call(this)},t.prototype.initMainAnimation=function(){!this.disabled.backgroundAnimations&&this.parameters.bgAnimations?this.mainAnimation=new r.SmartSliderFrontendBackgroundAnimation(this,this.parameters.mainanimation,this.parameters.bgAnimations):this.mainAnimation=new r.SmartSliderMainAnimationSimple(this,this.parameters.mainanimation)},t.prototype.afterRawSlidesReady=function(){if(this.parameters.postBackgroundAnimations&&this.parameters.postBackgroundAnimations.slides){for(var t=0;t<this.slides.length;t++)this.slides[t].postBackgroundAnimation=this.parameters.postBackgroundAnimations.slides[t];delete this.parameters.postBackgroundAnimations.slides}if(this.parameters.bgAnimations&&this.parameters.bgAnimations.slides){for(var i=0;i<this.slides.length;i++)this.slides[i].backgroundAnimation=this.parameters.bgAnimations.slides[i];delete this.parameters.bgAnimations.slides}},t.prototype.forceSetActiveSlide=function(t){t.setActive(),this.mainAnimation.showSlide(t)},t.prototype.forceUnsetActiveSlide=function(t){t.unsetActive(),this.mainAnimation.hideSlide(t)},t.prototype.getAnimationAxis=function(){switch(this.mainAnimation.parameters.type){case"vertical":case"vertical-reversed":return"vertical"}return"horizontal"},t})),r.d("ss-simple",["SmartSliderSimple","SmartSliderResponsiveSimple","SmartSliderMainAnimationSimple"])}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,o=t.document,c=(o.documentElement,t.setTimeout),r=t.clearTimeout,u=i._N2;t.requestAnimationFrame,o.createElement.bind(o),Object.assign,navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",n):o.addEventListener("DOMContentLoaded",n),u.d("SmartSliderWidgetArrowImage","SmartSliderWidget",(function(){function t(t,i,n){this.Dt=n,u.SmartSliderWidget.prototype.constructor.call(this,i,t,"#"+i.elementID+"-arrow-"+t)}return t.prototype=Object.create(u.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){var t,i,n,o;t=this.widget,i="click",n=function(e){e.stopPropagation(),this.slider[this.Dt]()}.bind(this),o=o||{},t.addEventListener(i,n,o)},function(i){this.key="arrow",this.previous=new t("previous",i,"previousWithDirection"),this.next=new t("next",i,"nextWithDirection")}}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,o=t.document,c=(o.documentElement,t.setTimeout),r=t.clearTimeout,u=i._N2;t.requestAnimationFrame,Object.assign,navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",n):o.addEventListener("DOMContentLoaded",n),u.d("SmartSliderWidgetArrowImage","SmartSliderWidget",(function(){function t(t,i,n){this.Ot=n,u.SmartSliderWidget.prototype.constructor.call(this,i,t,"#"+i.elementID+"-arrow-"+t)}return t.prototype=Object.create(u.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){var t,i,n,o;t=this.widget,i="click",n=function(e){e.stopPropagation(),this.slider[this.Ot]()}.bind(this),o=o||{},t.addEventListener(i,n,o)},function(i){this.key="arrow",this.previous=new t("previous",i,"previousWithDirection"),this.next=new t("next",i,"nextWithDirection")}}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,o=t.document,a=(o.documentElement,t.setTimeout),s=t.clearTimeout,u=i._N2,h=(t.requestAnimationFrame,o.createElement.bind(o),Object.assign,function(t,i,n){t.setAttribute(i,n)}),c=function(t,i){return t.dataset[i]},r=function(t){t&&t.parentNode&&t.parentNode.removeChild(t)},l=function(t,i){t.classList.add(i)},d=function(t,i){t.classList.remove(i)},f=function(t,i,n,o){return o=o||{},t.addEventListener(i,n,o),t.removeEventListener.bind(t,i,n,o)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",n):o.addEventListener("DOMContentLoaded",n),u.d("SmartSliderWidgetAutoplayImage","SmartSliderWidget",(function(){"use strict";function t(t){u.SmartSliderWidget.prototype.constructor.call(this,t,"autoplay",".nextend-autoplay")}return t.prototype=Object.create(u.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.paused=!1,this._listeners=[f(this.slider.sliderElement,"autoplayStarted",this.setPlaying.bind(this)),f(this.slider.sliderElement,"autoplayPaused",this.setPaused.bind(this))];var t,i,n,o,a=NextendDeBounce(this.switchState.bind(this),300,!0);t=this.widget,i="n2Activate",n=a,o=o||{},t.addEventListener(i,n,o),new u.UniversalClick(this.widget,a),this.slider.stages.done("AutoplayDestroyed",this.destroy.bind(this))},t.prototype.switchState=function(e){this.slider.controls.autoplay.preventClickHandle(),this.paused?(this.setPlaying(),this.slider.K("autoplayResume",{progress:1})):(this.setPaused(),this.slider.K("autoplayPause"))},t.prototype.setPaused=function(){this.paused=!0,l(this.widget,"n2-autoplay-paused"),h(this.widget,"aria-label",c(this.widget,"playLabel"))},t.prototype.setPlaying=function(){this.paused=!1,d(this.widget,"n2-autoplay-paused"),h(this.widget,"aria-label",c(this.widget,"pauseLabel"))},t.prototype.destroy=function(){var t;r(this.widget),(t=this._listeners).forEach((function(t){t()})),t.splice(0,t.length)},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,o=t.document,a=(o.documentElement,t.setTimeout),s=t.clearTimeout,u=i._N2,h=(t.requestAnimationFrame,Object.assign,function(t,i,n){t.setAttribute(i,n)}),c=function(t,i){return t.dataset[i]},r=function(t){t&&t.parentNode&&t.parentNode.removeChild(t)},l=function(t,i){t.classList.add(i)},d=function(t,i){t.classList.remove(i)},f=function(t,i,n,o){return o=o||{},t.addEventListener(i,n,o),t.removeEventListener.bind(t,i,n,o)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",n):o.addEventListener("DOMContentLoaded",n),u.d("SmartSliderWidgetAutoplayImage","SmartSliderWidget",(function(){"use strict";function t(t){u.SmartSliderWidget.prototype.constructor.call(this,t,"autoplay",".nextend-autoplay")}return t.prototype=Object.create(u.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.paused=!1,this._listeners=[f(this.slider.sliderElement,"autoplayStarted",this.setPlaying.bind(this)),f(this.slider.sliderElement,"autoplayPaused",this.setPaused.bind(this))];var t,i,n,o,a=NextendDeBounce(this.switchState.bind(this),300,!0);t=this.widget,i="n2Activate",n=a,o=o||{},t.addEventListener(i,n,o),new u.UniversalClick(this.widget,a),this.slider.stages.done("AutoplayDestroyed",this.destroy.bind(this))},t.prototype.switchState=function(e){this.slider.controls.autoplay.preventClickHandle(),this.paused?(this.setPlaying(),this.slider.K("autoplayResume",{progress:1})):(this.setPaused(),this.slider.K("autoplayPause"))},t.prototype.setPaused=function(){this.paused=!0,l(this.widget,"n2-autoplay-paused"),h(this.widget,"aria-label",c(this.widget,"playLabel"))},t.prototype.setPlaying=function(){this.paused=!1,d(this.widget,"n2-autoplay-paused"),h(this.widget,"aria-label",c(this.widget,"pauseLabel"))},t.prototype.destroy=function(){var t;r(this.widget),(t=this._listeners).forEach((function(t){t()})),t.splice(0,t.length)},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,n,h=t.document,o=(h.documentElement,t.setTimeout),a=t.clearTimeout,c=i._N2,r=(t.requestAnimationFrame,h.createElement.bind(h),Object.assign),u=function(t){t&&t.parentNode&&t.parentNode.removeChild(t)},l=function(t,i){return t.dispatchEvent(i)},f=function(t,i,s,n){n=n||{},t.addEventListener(i,s,n)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){h.body},"complete"===h.readyState||"interactive"===h.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==h.addEventListener?Document.prototype.addEventListener.call(h,"DOMContentLoaded",n):h.addEventListener("DOMContentLoaded",n),c.d("SmartSliderWidgetBarHorizontal","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=i,c.SmartSliderWidget.prototype.constructor.call(this,t,"bar",".nextend-bar")}return t.prototype=Object.create(c.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(t){this.tween=null,this.innerBar=this.widget.querySelector("div"),this.Ct=c.MW.k(this.innerBar);var i="click";this.slider.hasTouch()&&(i="n2click"),f(this.widget,"click",function(){var t,s,n,h=this.slider.sliderElement.querySelector(".n2-ss-slide-active .n2-ss-layers-container");h&&(t=h,s=i,n=r({bubbles:!0,cancelable:!0},n),l(t,new Event(s,n)))}.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this))},t.prototype.hasContent=function(t){return!(!this.parameters.showTitle||""===t.getTitle()&&!this.parameters.slideCount)||!(!this.parameters.showDescription||""===t.getDescription()&&!this.parameters.slideCount)},t.prototype.onBeforeShow=function(){this.onSliderSwitchTo({detail:{targetSlide:this.slider.currentSlide}}),this.parameters.animate?f(this.slider.sliderElement,"mainAnimationStart",this.onSliderSwitchToAnimateStart.bind(this)):f(this.slider.sliderElement,"SlideWillChange",this.onSliderSwitchTo.bind(this))},t.prototype.renderBarContent=function(t){var i,s,n="";this.parameters.showTitle&&(""!==t.getTitle()||this.parameters.slideCount)&&(i=this.parameters.slideCount?t.index+1:t.getTitle(),n+='<span class="'+this.parameters.fontTitle+'">'+i+"</span>");this.parameters.showDescription&&(""!==t.getDescription()||this.parameters.slideCount)&&(s=this.parameters.slideCount?t.slider.slides.length:t.getDescription(),n+='<span class="'+this.parameters.fontDescription+'">'+(""===n?"":this.parameters.separator)+s+"</span>");return""===n?'<span class="'+this.parameters.fontDescription+'">&nbsp;</span>':n},t.prototype.onSliderSwitchTo=function(e){var t=e.detail.targetSlide.slides[0],i=this.hasContent(t);i&&(this.innerBar.innerHTML=this.renderBarContent(t),this.setCursor(t.hasLink())),this.slider.widgets.setState("hide.bar",!i)},t.prototype.onSliderSwitchToAnimateStart=function(){var t,n;this.Ot===s&&(this.Ot=(t=this.innerBar,n="opacity",i.getComputedStyle(t).getPropertyValue(n)),this.Ct.opacity=this.Ot);var h,o,a,r=new Promise(function(t){this.tween&&this.tween.pause(),c.W.to(this.Ct,.3,{opacity:0,onComplete:function(){t()}})}.bind(this));h=this.slider.sliderElement,o="mainAnimationComplete",a=this.onSliderSwitchToAnimateEnd.bind(this,r),h.addEventListener(o,a,{once:!0})},t.prototype.onSliderSwitchToAnimateEnd=function(t,e){var i=this.slider.slides[e.detail.currentSlideIndex];t.then(function(){var t=this.hasContent(i);if(t){var s=this.innerBar.cloneNode(!0);u(this.innerBar),this.setCursor(i.hasLink()),s.innerHTML=this.renderBarContent(i),this.widget.appendChild(s),this.innerBar=s,this.Ct=c.MW.k(this.innerBar),this.Ct.opacity=0,this.tween=c.W.to(this.Ct,.3,{opacity:this.Ot})}this.slider.widgets.setState("hide.bar",!t)}.bind(this))},t.prototype.setCursor=function(t){this.Ct.cursor=t?"pointer":"inherit"},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var s,n,h=t.document,o=(h.documentElement,t.setTimeout),a=t.clearTimeout,c=i._N2,r=(t.requestAnimationFrame,Object.assign),u=function(t){t&&t.parentNode&&t.parentNode.removeChild(t)},l=function(t,i){return t.dispatchEvent(i)},f=function(t,i,s,n){n=n||{},t.addEventListener(i,s,n)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){h.body},"complete"===h.readyState||"interactive"===h.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==h.addEventListener?Document.prototype.addEventListener.call(h,"DOMContentLoaded",n):h.addEventListener("DOMContentLoaded",n),c.d("SmartSliderWidgetBarHorizontal","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=i,c.SmartSliderWidget.prototype.constructor.call(this,t,"bar",".nextend-bar")}return t.prototype=Object.create(c.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(t){this.tween=null,this.innerBar=this.widget.querySelector("div"),this.Ct=c.MW.k(this.innerBar);var i="click";this.slider.hasTouch()&&(i="n2click"),f(this.widget,"click",function(){var t,s,n,h=this.slider.sliderElement.querySelector(".n2-ss-slide-active .n2-ss-layers-container");h&&(t=h,s=i,n=r({bubbles:!0,cancelable:!0},n),l(t,new Event(s,n)))}.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this))},t.prototype.hasContent=function(t){return!(!this.parameters.showTitle||""===t.getTitle()&&!this.parameters.slideCount)||!(!this.parameters.showDescription||""===t.getDescription()&&!this.parameters.slideCount)},t.prototype.onBeforeShow=function(){this.onSliderSwitchTo({detail:{targetSlide:this.slider.currentSlide}}),this.parameters.animate?f(this.slider.sliderElement,"mainAnimationStart",this.onSliderSwitchToAnimateStart.bind(this)):f(this.slider.sliderElement,"SlideWillChange",this.onSliderSwitchTo.bind(this))},t.prototype.renderBarContent=function(t){var i,s,n="";this.parameters.showTitle&&(""!==t.getTitle()||this.parameters.slideCount)&&(i=this.parameters.slideCount?t.index+1:t.getTitle(),n+='<span class="'+this.parameters.fontTitle+'">'+i+"</span>");this.parameters.showDescription&&(""!==t.getDescription()||this.parameters.slideCount)&&(s=this.parameters.slideCount?t.slider.slides.length:t.getDescription(),n+='<span class="'+this.parameters.fontDescription+'">'+(""===n?"":this.parameters.separator)+s+"</span>");return""===n?'<span class="'+this.parameters.fontDescription+'">&nbsp;</span>':n},t.prototype.onSliderSwitchTo=function(e){var t=e.detail.targetSlide.slides[0],i=this.hasContent(t);i&&(this.innerBar.innerHTML=this.renderBarContent(t),this.setCursor(t.hasLink())),this.slider.widgets.setState("hide.bar",!i)},t.prototype.onSliderSwitchToAnimateStart=function(){var t,n;this.Wt===s&&(this.Wt=(t=this.innerBar,n="opacity",i.getComputedStyle(t).getPropertyValue(n)),this.Ct.opacity=this.Wt);var h,o,a,r=new Promise(function(t){this.tween&&this.tween.pause(),c.W.to(this.Ct,.3,{opacity:0,onComplete:function(){t()}})}.bind(this));h=this.slider.sliderElement,o="mainAnimationComplete",a=this.onSliderSwitchToAnimateEnd.bind(this,r),h.addEventListener(o,a,{once:!0})},t.prototype.onSliderSwitchToAnimateEnd=function(t,e){var i=this.slider.slides[e.detail.currentSlideIndex];t.then(function(){var t=this.hasContent(i);if(t){var s=this.innerBar.cloneNode(!0);u(this.innerBar),this.setCursor(i.hasLink()),s.innerHTML=this.renderBarContent(i),this.widget.appendChild(s),this.innerBar=s,this.Ct=c.MW.k(this.innerBar),this.Ct.opacity=0,this.tween=c.W.to(this.Ct,.3,{opacity:this.Wt})}this.slider.widgets.setState("hide.bar",!t)}.bind(this))},t.prototype.setCursor=function(t){this.Ct.cursor=t?"pointer":"inherit"},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s,a=t.document,h=(a.documentElement,t.setTimeout),r=t.clearTimeout,o=i._N2,c=(t.requestAnimationFrame,a.createElement.bind(a)),u=function(){return c("div")},l=(Object.assign,function(t,i,n){t.setAttribute(i,n)}),f=function(t,i){for(var n in i)l(t,n,i[n])},p=function(t,i){t.removeAttribute(i)},b=function(t,i,n){t.style.setProperty(i,n)},m=function(t,i){for(var n in i)b(t,n,i[n])},d=function(t,i){t.classList.add(i)},v=function(t,i){t.classList.remove(i)},g=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){a.body},"complete"===a.readyState||"interactive"===a.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==a.addEventListener?Document.prototype.addEventListener.call(a,"DOMContentLoaded",s):a.addEventListener("DOMContentLoaded",s),o.d("SmartSliderWidgetBulletTransition","SmartSliderWidget",(function(){function t(t,i){this.parameters=i,o.SmartSliderWidget.prototype.constructor.call(this,t,"bullet",".n2-ss-control-bullet")}return t.prototype=Object.create(o.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){switch(this.hasDots=!0,this.axis="horizontal",this.bar=this.widget.querySelector(".nextend-bullet-bar"),this.parameters.area){case 5:case 8:this.axis="vertical"}this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this))},t.prototype.onBeforeShow=function(){if(this.onVisibleSlidesChanged(),this.hasDots){var t=this.slider.currentSlide.ssdot;d(t,"n2-active"),p(t,"tabindex"),l(t,"aria-current","true")}g(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this)),g(this.slider.sliderElement,"visibleSlidesChanged",this.onVisibleSlidesChanged.bind(this))},t.prototype.onSlideSwitch=function(e){if(this.hasDots){for(var t,i=0;i<this._dots.length;i++)t=this._dots[i],v(t,"n2-active"),l(t,"tabindex",0),p(t,"aria-current");t=e.detail.targetSlide.ssdot||e.detail.targetSlide.group.ssdot,d(t,"n2-active"),p(t,"tabindex"),l(t,"aria-current","true")}},t.prototype.showThumbnail=function(t,e){var i,n,s,a=this.getThumbnail(t);o.W.to(o.MW.k(a),.3,{opacity:1}),i=t.ssdot,n="universalleave",s=this.hideThumbnail.bind(this,a),i.addEventListener(n,s,{once:!0})},t.prototype.hideThumbnail=function(t,e){e.stopPropagation(),o.W.to(o.MW.k(t),.3,{opacity:0,onComplete:function(){t.remove()}})},t.prototype.getThumbnail=function(t){var n=t.ssdot,s=this.slider.sliderElement.getBoundingClientRect(),a=n.getBoundingClientRect(),h=u(),r=u();r.className="n2-ss-bullet-thumbnail",m(r,{width:this.parameters.thumbnailWidth+"px",height:this.parameters.thumbnailHeight+"px","background-image":'url("'+t.getThumbnail()+'")'}),h.appendChild(r),o.MW.k(h).opacity=0,h.className=this.parameters.thumbnailStyle+" n2-ss-bullet-thumbnail-container",this.slider.sliderElement.appendChild(h);var c=i.getComputedStyle(h),l=h.getBoundingClientRect();switch(this.parameters.thumbnailPosition){case"right":m(h,{left:a.left-s.left+a.width-parseInt(c.getPropertyValue("margin-left"))-parseInt(c.getPropertyValue("margin-right"))+"px",top:a.top-s.top+a.height/2-l.height/2+"px"});break;case"left":m(h,{left:a.left-s.left-l.width-parseInt(c.getPropertyValue("margin-left"))-parseInt(c.getPropertyValue("margin-right"))+"px",top:a.top-s.top+a.height/2-l.height/2+"px"});break;case"top":m(h,{left:a.left-s.left+a.width/2-l.width/2+"px",top:a.top-s.top-l.height-parseInt(c.getPropertyValue("margin-top"))-parseInt(c.getPropertyValue("margin-bottom"))+"px"});break;case"bottom":m(h,{left:a.left-s.left+a.width/2-l.width/2+"px",top:a.top-s.top+a.height-parseInt(c.getPropertyValue("margin-top"))-parseInt(c.getPropertyValue("margin-bottom"))+"px"})}return h},t.prototype.onVisibleSlidesChanged=function(){if(this._dotsOuter!==n&&this._dotsOuter.forEach((function(t){!function(t){t&&t.parentNode&&t.parentNode.removeChild(t)}(t)})),this.bar.innerText="",this.slider.visibleSlides.length<=1)this.hasDots=!1;else{this.hasDots=!0,this._dots=[],this._dotsOuter=[];for(var t=0;t<this.slider.visibleSlides.length;t++){var i=this.slider.visibleSlides[t],s=u(),a=u();switch(a.className="n2-bullet "+this.parameters.dotClasses,f(a,{tabindex:0,role:"button","aria-label":i.getTitle()}),s.appendChild(a),this.bar.appendChild(s),"mouseenter"===this.parameters.action?new o.UniversalEnter(a,this.onDotClick.bind(this,i)):new o.UniversalClick(a,this.onDotClick.bind(this,i)),g(s,"n2Activate",this.onDotClick.bind(this,i)),this._dotsOuter.push(s),i.ssdot=a,this._dots.push(a),this.parameters.mode){case"numeric":a.innerText=t+1;break;case"title":a.innerText=i.getTitle()}if(1===this.parameters.thumbnail)i.getThumbnail()&&new o.UniversalEnter(a,this.showThumbnail.bind(this,i),{leaveOnSecond:!0})}this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})}this.slider.widgets.onAdvancedVariableWidgetChanged(this.key)},t.prototype.onDotClick=function(t,e){this.slider.directionalChangeTo(t.index)},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s,o=t.document,r=(o.documentElement,t.setTimeout),a=t.clearTimeout,h=i._N2,c=(t.requestAnimationFrame,function(t,i=null,n=null,s=null){const r=o.createElement(t);return i&&("string"==typeof i?v(r,i):x(r,i)),n&&f(r,n),s&&m(r,s),r}),u=function(t,i,n){return c("div",t,i,n)},l=(Object.assign,function(t,i,n){t.setAttribute(i,n)}),f=function(t,i){for(var n in i)l(t,n,i[n])},p=function(t,i){t.removeAttribute(i)},b=function(t,i,n){t.dataset[i]=n},m=function(t,i){for(let n in i)b(t,n,i[n])},d=function(t,i,n){t.style.setProperty(i,n)},g=function(t,i){for(var n in i)d(t,n,i[n])},v=function(t,i){t.classList.add(i)},x=function(t,i){i.forEach((function(i){t.classList.add(i)}))},w=function(t,i){t.classList.remove(i)},S=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;s=function(){o.body},"complete"===o.readyState||"interactive"===o.readyState?s():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==o.addEventListener?Document.prototype.addEventListener.call(o,"DOMContentLoaded",s):o.addEventListener("DOMContentLoaded",s),h.d("SmartSliderWidgetBulletTransition","SmartSliderWidget",(function(){function t(t,i){this.parameters=i,h.SmartSliderWidget.prototype.constructor.call(this,t,"bullet",".n2-ss-control-bullet")}return t.prototype=Object.create(h.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){switch(this.hasDots=!0,this.axis="horizontal",this.bar=this.widget.querySelector(".nextend-bullet-bar"),this.parameters.area){case 5:case 8:this.axis="vertical"}this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this))},t.prototype.onBeforeShow=function(){if(this.onVisibleSlidesChanged(),this.hasDots){var t=this.slider.currentSlide.ssdot;v(t,"n2-active"),p(t,"tabindex"),l(t,"aria-current","true")}S(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this)),S(this.slider.sliderElement,"visibleSlidesChanged",this.onVisibleSlidesChanged.bind(this))},t.prototype.onSlideSwitch=function(e){if(this.hasDots){for(var t,i=0;i<this._dots.length;i++)t=this._dots[i],w(t,"n2-active"),l(t,"tabindex",0),p(t,"aria-current");t=e.detail.targetSlide.ssdot||e.detail.targetSlide.group.ssdot,v(t,"n2-active"),p(t,"tabindex"),l(t,"aria-current","true")}},t.prototype.showThumbnail=function(t,e){var i,n,s,o=this.getThumbnail(t);h.W.to(h.MW.k(o),.3,{opacity:1}),i=t.ssdot,n="universalleave",s=this.hideThumbnail.bind(this,o),i.addEventListener(n,s,{once:!0})},t.prototype.hideThumbnail=function(t,e){e.stopPropagation(),h.W.to(h.MW.k(t),.3,{opacity:0,onComplete:function(){t.remove()}})},t.prototype.getThumbnail=function(t){var n=t.ssdot,s=this.slider.sliderElement.getBoundingClientRect(),o=n.getBoundingClientRect(),r=u(),a=u();a.className="n2-ss-bullet-thumbnail",g(a,{width:this.parameters.thumbnailWidth+"px",height:this.parameters.thumbnailHeight+"px","background-image":'url("'+t.getThumbnail()+'")'}),r.appendChild(a),h.MW.k(r).opacity=0,r.className=this.parameters.thumbnailStyle+" n2-ss-bullet-thumbnail-container",this.slider.sliderElement.appendChild(r);var c=i.getComputedStyle(r),l=r.getBoundingClientRect();switch(this.parameters.thumbnailPosition){case"right":g(r,{left:o.left-s.left+o.width-parseInt(c.getPropertyValue("margin-left"))-parseInt(c.getPropertyValue("margin-right"))+"px",top:o.top-s.top+o.height/2-l.height/2+"px"});break;case"left":g(r,{left:o.left-s.left-l.width-parseInt(c.getPropertyValue("margin-left"))-parseInt(c.getPropertyValue("margin-right"))+"px",top:o.top-s.top+o.height/2-l.height/2+"px"});break;case"top":g(r,{left:o.left-s.left+o.width/2-l.width/2+"px",top:o.top-s.top-l.height-parseInt(c.getPropertyValue("margin-top"))-parseInt(c.getPropertyValue("margin-bottom"))+"px"});break;case"bottom":g(r,{left:o.left-s.left+o.width/2-l.width/2+"px",top:o.top-s.top+o.height-parseInt(c.getPropertyValue("margin-top"))-parseInt(c.getPropertyValue("margin-bottom"))+"px"})}return r},t.prototype.onVisibleSlidesChanged=function(){if(this._dotsOuter!==n&&this._dotsOuter.forEach((function(t){!function(t){t&&t.parentNode&&t.parentNode.removeChild(t)}(t)})),this.bar.innerText="",this.slider.visibleSlides.length<=1)this.hasDots=!1;else{this.hasDots=!0,this._dots=[],this._dotsOuter=[];for(var t=0;t<this.slider.visibleSlides.length;t++){var i=this.slider.visibleSlides[t],s=u(),o=u();switch(o.className="n2-bullet "+this.parameters.dotClasses,f(o,{tabindex:0,role:"button","aria-label":i.getTitle()}),s.appendChild(o),this.bar.appendChild(s),"mouseenter"===this.parameters.action?new h.UniversalEnter(o,this.onDotClick.bind(this,i)):new h.UniversalClick(o,this.onDotClick.bind(this,i)),S(s,"n2Activate",this.onDotClick.bind(this,i)),this._dotsOuter.push(s),i.ssdot=o,this._dots.push(o),this.parameters.mode){case"numeric":o.innerText=t+1;break;case"title":o.innerText=i.getTitle()}if(1===this.parameters.thumbnail)i.getThumbnail()&&new h.UniversalEnter(o,this.showThumbnail.bind(this,i),{leaveOnSecond:!0})}this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})}this.slider.widgets.onAdvancedVariableWidgetChanged(this.key)},t.prototype.onDotClick=function(t,e){this.slider.directionalChangeTo(t.index)},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s=t.document,h=(s.documentElement,t.setTimeout),o=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,s.createElement.bind(s),Object.assign),r=function(t,i,n){t.dataset[i]=n},c=function(t,i){t.classList.add(i)},l=function(t,i){t.classList.remove(i)},d=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){s.body},"complete"===s.readyState||"interactive"===s.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==s.addEventListener?Document.prototype.addEventListener.call(s,"DOMContentLoaded",n):s.addEventListener("DOMContentLoaded",n),a.d("SmartSliderWidgetThumbnailDefaultHorizontal","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=u({minimumThumbnailCount:1.5},i),a.SmartSliderWidget.prototype.constructor.call(this,t,"thumbnail",".nextend-thumbnail-default")}t.prototype=Object.create(a.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.bar=this.widget.querySelector(".nextend-thumbnail-inner"),d(this.bar,"scroll",this.onScroll.bind(this));var t=this.widget.querySelector(".nextend-thumbnail-previous"),i=this.widget.querySelector(".nextend-thumbnail-next");t&&d(t,"click",this.previousPane.bind(this)),i&&d(i,"click",this.nextPane.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this)),this.slider.stages.done("WidgetsReady",this.onWidgetsReady.bind(this))},t.prototype.onBeforeShow=function(){var t=this.bar.querySelector(".nextend-thumbnail-scroller");this.dots=t.querySelectorAll(".n2-thumbnail-dot");for(var i,n,s=this.slider.realSlides,h=0;h<s.length;h++){var o=t.querySelector('.n2-thumbnail-dot[data-slide-public-id="'+(i=s[h].element,n="slidePublicId",i.dataset[n]+'"]'));"mouseenter"===this.parameters.action?new a.UniversalEnter(o,this.onDotHover.bind(this,s[h])):new a.UniversalClick(o,this.onDotClick.bind(this,s[h])),s[h].thumbnailDot=o}requestAnimationFrame(this.onScroll.bind(this)),d(this.slider.sliderElement,"SliderResize",this.onScroll.bind(this)),d(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this))},t.prototype.onWidgetsReady=function(){this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})},t.prototype.onScroll=function(){var t=this.bar.scrollLeft,i=this.bar.clientWidth,n=this.bar.scrollWidth;n2const.isRTL()?(r(this.widget,"hasNext",0===t?0:1),r(this.widget,"hasPrevious",-1*t+i<n?1:0)):(r(this.widget,"hasPrevious",0===t?0:1),r(this.widget,"hasNext",t+i<n?1:0))};var n=!1;return t.prototype.onDotClick=function(t){a._shouldPreventClick||(n||(this.slider.directionalChangeToReal(t.index),n=!0),h(function(){n=!1}.bind(this),400))},t.prototype.onDotHover=function(t){this.slider.directionalChangeToReal(t.index)},t.prototype.onSlideSwitch=function(e){var t=e.detail.targetSlide.slides[0];this.activateDots(t);var n=i.getComputedStyle(t.thumbnailDot),s=t.thumbnailDot.offsetLeft-parseInt(n.getPropertyValue("margin-left")),h=t.thumbnailDot.getBoundingClientRect().width+parseInt(n.getPropertyValue("margin-left"))+parseInt(n.getPropertyValue("margin-right")),o=this.bar.scrollLeft,a=i.getComputedStyle(this.bar),u=parseInt(a.paddingLeft),r=this.bar.clientWidth,c=this.bar.scrollWidth;(s<o||s+h>o+r)&&(this.bar.scrollLeft=Math.min(c-r,-u+s))},t.prototype.activateDots=function(t){var i,n;i=this.dots,n="n2-active",i.forEach((function(t){l(t,n)}));for(var s=t.slides,h=0;s.length>h;h++)c(s[h].thumbnailDot,"n2-active")},t.prototype.previousPane=function(){this.bar.scrollLeft-=.75*this.bar.clientWidth},t.prototype.nextPane=function(){this.bar.scrollLeft+=.75*this.bar.clientWidth},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s=t.document,h=(s.documentElement,t.setTimeout),o=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,Object.assign),r=function(t,i,n){t.dataset[i]=n},c=function(t,i){t.classList.add(i)},l=function(t,i){t.classList.remove(i)},d=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){s.body},"complete"===s.readyState||"interactive"===s.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==s.addEventListener?Document.prototype.addEventListener.call(s,"DOMContentLoaded",n):s.addEventListener("DOMContentLoaded",n),a.d("SmartSliderWidgetThumbnailDefaultHorizontal","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=u({minimumThumbnailCount:1.5},i),a.SmartSliderWidget.prototype.constructor.call(this,t,"thumbnail",".nextend-thumbnail-default")}t.prototype=Object.create(a.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.bar=this.widget.querySelector(".nextend-thumbnail-inner"),d(this.bar,"scroll",this.onScroll.bind(this));var t=this.widget.querySelector(".nextend-thumbnail-previous"),i=this.widget.querySelector(".nextend-thumbnail-next");t&&d(t,"click",this.previousPane.bind(this)),i&&d(i,"click",this.nextPane.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this)),this.slider.stages.done("WidgetsReady",this.onWidgetsReady.bind(this))},t.prototype.onBeforeShow=function(){var t=this.bar.querySelector(".nextend-thumbnail-scroller");this.dots=t.querySelectorAll(".n2-thumbnail-dot");for(var i,n,s=this.slider.realSlides,h=0;h<s.length;h++){var o=t.querySelector('.n2-thumbnail-dot[data-slide-public-id="'+(i=s[h].element,n="slidePublicId",i.dataset[n]+'"]'));"mouseenter"===this.parameters.action?new a.UniversalEnter(o,this.onDotHover.bind(this,s[h])):new a.UniversalClick(o,this.onDotClick.bind(this,s[h])),s[h].thumbnailDot=o}requestAnimationFrame(this.onScroll.bind(this)),d(this.slider.sliderElement,"SliderResize",this.onScroll.bind(this)),d(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this))},t.prototype.onWidgetsReady=function(){this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})},t.prototype.onScroll=function(){var t=this.bar.scrollLeft,i=this.bar.clientWidth,n=this.bar.scrollWidth;n2const.isRTL()?(r(this.widget,"hasNext",0===t?0:1),r(this.widget,"hasPrevious",-1*t+i<n?1:0)):(r(this.widget,"hasPrevious",0===t?0:1),r(this.widget,"hasNext",t+i<n?1:0))};var n=!1;return t.prototype.onDotClick=function(t){a._shouldPreventClick||(n||(this.slider.directionalChangeToReal(t.index),n=!0),h(function(){n=!1}.bind(this),400))},t.prototype.onDotHover=function(t){this.slider.directionalChangeToReal(t.index)},t.prototype.onSlideSwitch=function(e){var t=e.detail.targetSlide.slides[0];this.activateDots(t);var n=i.getComputedStyle(t.thumbnailDot),s=t.thumbnailDot.offsetLeft-parseInt(n.getPropertyValue("margin-left")),h=t.thumbnailDot.getBoundingClientRect().width+parseInt(n.getPropertyValue("margin-left"))+parseInt(n.getPropertyValue("margin-right")),o=this.bar.scrollLeft,a=i.getComputedStyle(this.bar),u=parseInt(a.paddingLeft),r=this.bar.clientWidth,c=this.bar.scrollWidth;(s<o||s+h>o+r)&&(this.bar.scrollLeft=Math.min(c-r,-u+s))},t.prototype.activateDots=function(t){var i,n;i=this.dots,n="n2-active",i.forEach((function(t){l(t,n)}));for(var s=t.slides,h=0;s.length>h;h++)c(s[h].thumbnailDot,"n2-active")},t.prototype.previousPane=function(){this.bar.scrollLeft-=.75*this.bar.clientWidth},t.prototype.nextPane=function(){this.bar.scrollLeft+=.75*this.bar.clientWidth},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s=t.document,h=(s.documentElement,t.setTimeout),o=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,s.createElement.bind(s),Object.assign),r=function(t,i,n){t.dataset[i]=n},c=function(t,i){t.classList.add(i)},l=function(t,i){t.classList.remove(i)},d=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){s.body},"complete"===s.readyState||"interactive"===s.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==s.addEventListener?Document.prototype.addEventListener.call(s,"DOMContentLoaded",n):s.addEventListener("DOMContentLoaded",n),a.d("SmartSliderWidgetThumbnailDefaultVertical","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=u({minimumThumbnailCount:1.5},i),a.SmartSliderWidget.prototype.constructor.call(this,t,"thumbnail",".nextend-thumbnail-default")}t.prototype=Object.create(a.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.bar=this.widget.querySelector(".nextend-thumbnail-inner"),d(this.bar,"scroll",this.onScroll.bind(this));var t=this.widget.querySelector(".nextend-thumbnail-previous"),i=this.widget.querySelector(".nextend-thumbnail-next");t&&d(t,"click",this.previousPane.bind(this)),i&&d(i,"click",this.nextPane.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this)),this.slider.stages.done("WidgetsReady",this.onWidgetsReady.bind(this))},t.prototype.onBeforeShow=function(){var t=this.bar.querySelector(".nextend-thumbnail-scroller");this.dots=t.querySelectorAll(".n2-thumbnail-dot");for(var i,n,s=this.slider.realSlides,h=0;h<s.length;h++){var o=t.querySelector('[data-slide-public-id="'+(i=s[h].element,n="slidePublicId",i.dataset[n]+'"]'));"mouseenter"===this.parameters.action?new a.UniversalEnter(o,this.onDotHover.bind(this,s[h])):new a.UniversalClick(o,this.onDotClick.bind(this,s[h])),s[h].thumbnailDot=o}requestAnimationFrame(this.onScroll.bind(this)),d(this.slider.sliderElement,"SliderResize",this.onScroll.bind(this)),d(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this))},t.prototype.onWidgetsReady=function(){this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})},t.prototype.onScroll=function(){var t=this.bar.scrollTop,i=this.bar.clientHeight,n=this.bar.scrollHeight;r(this.widget,"hasPrevious",0===t?0:1),r(this.widget,"hasNext",t+i<n?1:0)};var n=!1;return t.prototype.onDotClick=function(t){a._shouldPreventClick||(n||(this.slider.directionalChangeToReal(t.index),n=!0),h(function(){n=!1}.bind(this),400))},t.prototype.onDotHover=function(t){this.slider.directionalChangeToReal(t.index)},t.prototype.onSlideSwitch=function(e){var t=e.detail.targetSlide.slides[0];this.activateDots(t);var n=i.getComputedStyle(t.thumbnailDot),s=t.thumbnailDot.offsetTop-parseInt(n.getPropertyValue("margin-top")),h=t.thumbnailDot.getBoundingClientRect().height+parseInt(n.getPropertyValue("margin-top"))+parseInt(n.getPropertyValue("margin-bottom")),o=this.bar.scrollTop,a=i.getComputedStyle(this.bar),u=parseInt(a.paddingTop),r=this.bar.clientHeight,c=this.bar.scrollHeight;(s<o||s+h>o+r)&&(this.bar.scrollTop=Math.min(c-r,-u+s))},t.prototype.activateDots=function(t){var i,n;i=this.dots,n="n2-active",i.forEach((function(t){l(t,n)}));for(var s=t.slides,h=0;s.length>h;h++)c(s[h].thumbnailDot,"n2-active")},t.prototype.previousPane=function(){this.bar.scrollTop-=.75*this.bar.clientHeight},t.prototype.nextPane=function(){this.bar.scrollTop+=.75*this.bar.clientHeight},t.prototype.getSize=function(){return this.getWidth()},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
1 !function(t){var i=t;i._N2=i._N2||{_r:[],_d:[],r:function(){this._r.push(arguments)},d:function(){this._d.push(arguments)}};var n,s=t.document,h=(s.documentElement,t.setTimeout),o=t.clearTimeout,a=i._N2,u=(t.requestAnimationFrame,Object.assign),r=function(t,i,n){t.dataset[i]=n},c=function(t,i){t.classList.add(i)},l=function(t,i){t.classList.remove(i)},d=function(t,i,n,s){s=s||{},t.addEventListener(i,n,s)};navigator.userAgent.indexOf("+http://www.google.com/bot.html")>-1||i.requestIdleCallback,i.cancelIdleCallback;n=function(){s.body},"complete"===s.readyState||"interactive"===s.readyState?n():Document&&Document.prototype&&Document.prototype.addEventListener&&Document.prototype.addEventListener!==s.addEventListener?Document.prototype.addEventListener.call(s,"DOMContentLoaded",n):s.addEventListener("DOMContentLoaded",n),a.d("SmartSliderWidgetThumbnailDefaultVertical","SmartSliderWidget",(function(){"use strict";function t(t,i){this.parameters=u({minimumThumbnailCount:1.5},i),a.SmartSliderWidget.prototype.constructor.call(this,t,"thumbnail",".nextend-thumbnail-default")}t.prototype=Object.create(a.SmartSliderWidget.prototype),t.prototype.constructor=t,t.prototype.onStart=function(){this.bar=this.widget.querySelector(".nextend-thumbnail-inner"),d(this.bar,"scroll",this.onScroll.bind(this));var t=this.widget.querySelector(".nextend-thumbnail-previous"),i=this.widget.querySelector(".nextend-thumbnail-next");t&&d(t,"click",this.previousPane.bind(this)),i&&d(i,"click",this.nextPane.bind(this)),this.slider.stages.done("BeforeShow",this.onBeforeShow.bind(this)),this.slider.stages.done("WidgetsReady",this.onWidgetsReady.bind(this))},t.prototype.onBeforeShow=function(){var t=this.bar.querySelector(".nextend-thumbnail-scroller");this.dots=t.querySelectorAll(".n2-thumbnail-dot");for(var i,n,s=this.slider.realSlides,h=0;h<s.length;h++){var o=t.querySelector('[data-slide-public-id="'+(i=s[h].element,n="slidePublicId",i.dataset[n]+'"]'));"mouseenter"===this.parameters.action?new a.UniversalEnter(o,this.onDotHover.bind(this,s[h])):new a.UniversalClick(o,this.onDotClick.bind(this,s[h])),s[h].thumbnailDot=o}requestAnimationFrame(this.onScroll.bind(this)),d(this.slider.sliderElement,"SliderResize",this.onScroll.bind(this)),d(this.slider.sliderElement,"SlideWillChange",this.onSlideSwitch.bind(this))},t.prototype.onWidgetsReady=function(){this.onSlideSwitch({detail:{targetSlide:this.slider.currentRealSlide}})},t.prototype.onScroll=function(){var t=this.bar.scrollTop,i=this.bar.clientHeight,n=this.bar.scrollHeight;r(this.widget,"hasPrevious",0===t?0:1),r(this.widget,"hasNext",t+i<n?1:0)};var n=!1;return t.prototype.onDotClick=function(t){a._shouldPreventClick||(n||(this.slider.directionalChangeToReal(t.index),n=!0),h(function(){n=!1}.bind(this),400))},t.prototype.onDotHover=function(t){this.slider.directionalChangeToReal(t.index)},t.prototype.onSlideSwitch=function(e){var t=e.detail.targetSlide.slides[0];this.activateDots(t);var n=i.getComputedStyle(t.thumbnailDot),s=t.thumbnailDot.offsetTop-parseInt(n.getPropertyValue("margin-top")),h=t.thumbnailDot.getBoundingClientRect().height+parseInt(n.getPropertyValue("margin-top"))+parseInt(n.getPropertyValue("margin-bottom")),o=this.bar.scrollTop,a=i.getComputedStyle(this.bar),u=parseInt(a.paddingTop),r=this.bar.clientHeight,c=this.bar.scrollHeight;(s<o||s+h>o+r)&&(this.bar.scrollTop=Math.min(c-r,-u+s))},t.prototype.activateDots=function(t){var i,n;i=this.dots,n="n2-active",i.forEach((function(t){l(t,n)}));for(var s=t.slides,h=0;s.length>h;h++)c(s[h].thumbnailDot,"n2-active")},t.prototype.previousPane=function(){this.bar.scrollTop-=.75*this.bar.clientHeight},t.prototype.nextPane=function(){this.bar.scrollTop+=.75*this.bar.clientHeight},t.prototype.getSize=function(){return this.getWidth()},t}))}(window);
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -49,6 +49,7 @@ ...@@ -49,6 +49,7 @@
49 49
50 .n2-thumbnail-dot { 50 .n2-thumbnail-dot {
51 position: relative; 51 position: relative;
52 cursor: pointer;
52 53
53 img { 54 img {
54 object-fit: cover; 55 object-fit: cover;
...@@ -111,6 +112,7 @@ ...@@ -111,6 +112,7 @@
111 .n2-thumbnail-dot { 112 .n2-thumbnail-dot {
112 display: grid; 113 display: grid;
113 grid-template-columns: auto 1fr; 114 grid-template-columns: auto 1fr;
115 overflow:hidden;
114 } 116 }
115 117
116 .nextend-thumbnail-button { 118 .nextend-thumbnail-button {
......
...@@ -4,7 +4,7 @@ Tags: slider, wordpress slider, image slider, layer slider, responsive slider, s ...@@ -4,7 +4,7 @@ Tags: slider, wordpress slider, image slider, layer slider, responsive slider, s
4 Donate link: https://sites.fastspring.com/nextend/product/smartslider3donate 4 Donate link: https://sites.fastspring.com/nextend/product/smartslider3donate
5 Requires at least: 4.9 5 Requires at least: 4.9
6 Tested up to: 5.8.1 6 Tested up to: 5.8.1
7 Stable tag: 3.5.1.2 7 Stable tag: 3.5.1.3
8 Requires PHP: 7.0 8 Requires PHP: 7.0
9 License: GPLv3 or later 9 License: GPLv3 or later
10 License URI: http://www.gnu.org/licenses/gpl-3.0.html 10 License URI: http://www.gnu.org/licenses/gpl-3.0.html
...@@ -209,6 +209,24 @@ Of course! Smart Slider use protocol relative urls which works fine on http:// a ...@@ -209,6 +209,24 @@ Of course! Smart Slider use protocol relative urls which works fine on http:// a
209 209
210 == Changelog == 210 == Changelog ==
211 211
212 = 3.5.1.3 - 18. January 2022 =
213 * Feature: Pagination and Search options in the Dashboard.
214 * Feature: The variable selector is now available at the column and row background colors.
215 * Feature: We'll use pointer cursor at the thumbnails to indicate that they're clickable.
216 * Feature: Perfmatter compatibility improvements.
217 * Fix: Overflow hidden is added to vertical thumbnails to allow rounded borders.
218 * Fix: Firefox changed the default background color of the select tag, which creates less contrast between the text and background. We changed it back to white.
219 * Fix: The color picker allowed saving a 7 digit color code, which resulted a bad color.
220 * Fix: Margin and padding values are now translatable in the Slide editor UI.
221 * Fix: Optimize images option now works on full URLs.
222 * Fix: The YouTube layer didn't always recognize the youtu.be URLs properly.
223 * Fix: Static Overlay background options caused error when the only slide in the slider is a Static Overlay.
224 * Fix: Smart Slider's custom widget area will now properly display the publishing instructions.
225 * Fix: Background Blur could show up even if the fill mode was not set to Blur fit.
226 * Other: Spanish translation updated. Thanks, Rodrigo!
227 * Other: The es_ES.po and es_ES.mo renamed to es.po and es.mo respectively to support all Spanish languages.
228
229
212 = 3.5.1.2 - 18. November 2021 = 230 = 3.5.1.2 - 18. November 2021 =
213 * Feature: The old background animations are allowed again when the fill mode is not fill, but anything else. 231 * Feature: The old background animations are allowed again when the fill mode is not fill, but anything else.
214 * Feature: You can now customize the Loading animation delay time. 232 * Feature: You can now customize the Loading animation delay time.
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
3 Plugin Name: Smart Slider 3 3 Plugin Name: Smart Slider 3
4 Plugin URI: https://smartslider3.com/ 4 Plugin URI: https://smartslider3.com/
5 Description: The perfect all-in-one responsive slider solution for WordPress. 5 Description: The perfect all-in-one responsive slider solution for WordPress.
6 Version: 3.5.1.2 6 Version: 3.5.1.3
7 Requires PHP: 7.0 7 Requires PHP: 7.0
8 Requires at least: 4.9 8 Requires at least: 4.9
9 Author: Nextend 9 Author: Nextend
......
...@@ -134,7 +134,11 @@ if ( !class_exists( 'WPSL_Borlabs_Cookie' ) ) { ...@@ -134,7 +134,11 @@ if ( !class_exists( 'WPSL_Borlabs_Cookie' ) ) {
134 ); 134 );
135 135
136 // Default thumbnail 136 // Default thumbnail
137 $thumbnail = BORLABS_COOKIE_PLUGIN_URL.'images/bct-google-maps.png'; 137 if ( defined( 'BORLABS_COOKIE_VERSION' ) && version_compare( BORLABS_COOKIE_VERSION, '2.2.36', '>=' )) {
138 $thumbnail = BORLABS_COOKIE_PLUGIN_URL . 'assets/images/cb-maps.png';
139 } else {
140 $thumbnail = BORLABS_COOKIE_PLUGIN_URL . 'images/bct-google-maps.png';
141 }
138 142
139 // Get the title which was maybe set via title-attribute in a shortcode 143 // Get the title which was maybe set via title-attribute in a shortcode
140 $title = BorlabsCookieHelper()->getCurrentTitleOfBlockedContentType(); 144 $title = BorlabsCookieHelper()->getCurrentTitleOfBlockedContentType();
......
...@@ -4,8 +4,8 @@ Contributors: tijmensmit ...@@ -4,8 +4,8 @@ Contributors: tijmensmit
4 Donate link: https://www.paypal.me/tijmensmit 4 Donate link: https://www.paypal.me/tijmensmit
5 Tags: google maps, store locator, business locations, geocoding, stores, geo, zipcode locator, dealer locater, geocode, gmaps, google map, google map plugin, location finder, map tools, shop locator, wp google map 5 Tags: google maps, store locator, business locations, geocoding, stores, geo, zipcode locator, dealer locater, geocode, gmaps, google map, google map plugin, location finder, map tools, shop locator, wp google map
6 Requires at least: 3.7 6 Requires at least: 3.7
7 Tested up to: 5.7 7 Tested up to: 5.8.2
8 Stable tag: 2.2.234 8 Stable tag: 2.2.235
9 License: GPLv3 9 License: GPLv3
10 License URI: http://www.gnu.org/licenses/gpl.html 10 License URI: http://www.gnu.org/licenses/gpl.html
11 11
...@@ -127,6 +127,9 @@ If you find a plugin or theme that causes a conflict, please report it on the [s ...@@ -127,6 +127,9 @@ If you find a plugin or theme that causes a conflict, please report it on the [s
127 127
128 == Changelog == 128 == Changelog ==
129 129
130 = 2.2.235, 10 January, 2022 =
131 * Fixed: Borlabs Cookie](https://borlabs.io/borlabs-cookie/) compatiblity problem with the Google Maps placeholder.
132
130 = 2.2.234, 23 January, 2021 = 133 = 2.2.234, 23 January, 2021 =
131 * Fixed: PHP 8 Compatiblity 134 * Fixed: PHP 8 Compatiblity
132 * Fixed: Polylang Compatiblity 135 * Fixed: Polylang Compatiblity
......
...@@ -4,7 +4,7 @@ Plugin Name: WP Store Locator ...@@ -4,7 +4,7 @@ Plugin Name: WP Store Locator
4 Description: An easy to use location management system that enables users to search for nearby physical stores 4 Description: An easy to use location management system that enables users to search for nearby physical stores
5 Author: Tijmen Smit 5 Author: Tijmen Smit
6 Author URI: https://wpstorelocator.co/ 6 Author URI: https://wpstorelocator.co/
7 Version: 2.2.234 7 Version: 2.2.235
8 Text Domain: wpsl 8 Text Domain: wpsl
9 Domain Path: /languages/ 9 Domain Path: /languages/
10 License: GPL v3 10 License: GPL v3
...@@ -61,7 +61,7 @@ if ( !class_exists( 'WP_Store_locator' ) ) { ...@@ -61,7 +61,7 @@ if ( !class_exists( 'WP_Store_locator' ) ) {
61 public function define_constants() { 61 public function define_constants() {
62 62
63 if ( !defined( 'WPSL_VERSION_NUM' ) ) 63 if ( !defined( 'WPSL_VERSION_NUM' ) )
64 define( 'WPSL_VERSION_NUM', '2.2.234' ); 64 define( 'WPSL_VERSION_NUM', '2.2.235' );
65 65
66 if ( !defined( 'WPSL_URL' ) ) 66 if ( !defined( 'WPSL_URL' ) )
67 define( 'WPSL_URL', plugin_dir_url( __FILE__ ) ); 67 define( 'WPSL_URL', plugin_dir_url( __FILE__ ) );
......
...@@ -126,3 +126,18 @@ add_filter("wpcf7_ajax_json_echo", function ($response, $result) { ...@@ -126,3 +126,18 @@ add_filter("wpcf7_ajax_json_echo", function ($response, $result) {
126 return $response; 126 return $response;
127 127
128 },10,2); 128 },10,2);
129
130
131 // UnderStrap's includes directory.
132 $understrap_inc_dir = 'inc';
133
134 // Array of files to include.
135 $understrap_includes = array(
136 '/emails.php'
137 );
138
139
140 // Include files.
141 foreach ( $understrap_includes as $file ) {
142 require_once get_theme_file_path( $understrap_inc_dir . $file );
143 }
......
1 <!DOCTYPE html>
2 <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:o="urn:schemas-microsoft-com:office:office">
3 <head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width,initial-scale=1">
6 <meta name="x-apple-disable-message-reformatting">
7 <title></title>
8 <!--[if mso]>
9 <noscript>
10 <xml>
11 <o:OfficeDocumentSettings>
12 <o:PixelsPerInch>96</o:PixelsPerInch>
13 </o:OfficeDocumentSettings>
14 </xml>
15 </noscript>
16 <![endif]-->
17 <style>
18 @font-face { font-family: Calibri;
19 src: url('https://fp-canada.gotenzing.com/wp-content/themes/understrap-child/Calibri.woff') format('woff'); }
20
21 @font-face { font-family: Calibri-bold;
22 src: url('https://fp-canada.gotenzing.com/wp-content/themes/understrap-child/Calibri-Bold.woff') format('woff'); }
23
24 table, td, div, h1, p {font-family: Calibri;}
25 strong{font-family: Calibri;}
26 </style>
27 </head>
28 <body style="margin:0;padding:0;">
29 <table role="presentation" style="width:100%;border-collapse:collapse;border:0;border-spacing:0;background:#ffffff;">
30 <tr>
31 <td align="center" style="padding:0;">
32 <table role="presentation" style="width:602px;border-collapse:collapse;border-spacing:0;text-align:left;">
33 <tr style="background:#582C83;">
34 <td align="center">
35 &nbsp;
36 </td>
37 <td align="center">
38 &nbsp;
39 </td>
40 <td align="center" width="135">
41 <img width="135" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/fp_logo.png" class="img-fluid" alt="FP Canada">
42 </td>
43 <td align="center" width="40">
44 &nbsp;&nbsp;
45 </td>
46 </tr>
47 <tr style="background:#582C83;">
48 <td colspan="4" style="padding:36px 30px 42px 30px;">
49 <table role="presentation" style="width:100%;border-collapse:collapse;border:0;border-spacing:0;">
50 <tr>
51 <td style="padding:0 0 36px 0;color:#153643;">
52 <h1 style="font-size:50px;line-height:55px;color:#fff;margin:0 0 20px 0; font-family: Calibri-bold;">
53 Important<br>Registration<br>Information</h1>
54
55 </td>
56 </tr>
57 <tr>
58
59 </td>
60 </tr>
61 </table>
62 </td>
63 </tr>
64 <tr style="background:#ffffff;">
65 <td colspan="4" style="padding:36px 30px 42px 30px;">
66 <table role="presentation" style="width:100%;border-collapse:collapse;border:0;border-spacing:0;">
67 <tr>
68 <td colspan="3" style="padding:0 0 36px 0;color:#153643;">
69 <p style="margin:0 0 12px 0;font-size:24px;line-height:28px;font-family: Calibri;color:#012169;">We’ve received your registration information and we’ll confirm program acceptance within two business days from now. If we have questions, we’ll let you know or we will simply confirm acceptance.</p>
70 <p style="margin:0;font-weight:bold;font-size:20px;line-height:22px;font-family: Calibri-bold;color:#5B6770;">If you have questions, contact us at <a style="color:#012169;text-decoration: none;" href="mailto:wyncampaign@fpcanada.ca">wyncampaign@fpcanada.ca</a></p>
71
72 </td>
73 </tr>
74 <tr style="background:#ffffff;">
75 <td colspan="4" style="padding-bottom:10px">
76 </td>
77 </tr>
78 <tr>
79 <td align="center">
80 &nbsp;
81 </td>
82 <td align="center">
83 <img width="147" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/logo.png" class="img-fluid" alt="FP Canada">
84 </td>
85 <td align="center">
86 &nbsp;
87 </td>
88 </tr>
89 </table>
90 </td>
91 </tr>
92 <tr>
93 <td colspan="4" style="padding:30px;background:#fff;">
94 <table role="presentation" style="width:100%;border-collapse:collapse;border:0;border-spacing:0;font-size:9px;font-family:Arial,sans-serif;">
95 <tr>
96 <td style="padding-bottom:50px;width:5%;" align="left">
97 &nbsp;&nbsp;
98 </td>
99 <td style="padding:0;width:90%;border-top: 1px solid #000;" align="left">
100 <table role="presentation" style="width:100%;border-collapse:collapse;border:0;border-spacing:0;">
101 <tr>
102 <td colspan="7" style="padding:0;width:5%;" align="left">
103 &nbsp;&nbsp;
104 </td>
105 </tr>
106 <tr>
107 <td style="padding:0;width:5%;" align="left">
108
109 </td>
110 <td style="padding:0;width:5%;" align="left">
111 <img width="16" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/t.png" class="img-fluid" alt="FP Canada">
112 </td>
113 <td style="padding:0;width:5%;" align="left">
114 <img width="8" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/fb.png" class="img-fluid" alt="FP Canada">
115 </td>
116 <td style="padding:0;width:5%;" align="left">
117 <img width="17" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/insta.png" class="img-fluid" alt="FP Canada">
118 </td>
119 <td style="padding:0;width:5%;" align="left">
120 <img width="16" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/you.png" class="img-fluid" alt="FP Canada">
121 </td>
122 <td style="padding:0;width:5%;" align="left">
123 <img width="16" src="https://fp-canada.gotenzing.com/wp-content/uploads/2022/01/link.png" class="img-fluid" alt="FP Canada">
124 </td>
125 <td style="padding:0;width:5%;" align="left">
126 &nbsp;&nbsp;
127 </td>
128 </tr>
129 </table>
130 </td>
131 <td style="padding:0;width:5%;" align="left">
132
133 </td>
134 </tr>
135 <tr>
136 <td style="padding-bottom:0px;width:5%;" align="left">
137 &nbsp;&nbsp;
138 </td>
139 </tr>
140 <tr>
141 <td colspan="4" style="padding-bottom:10px;width:5%; font-size:14px;" align="center">
142 <p><strong>FP Canada</strong><br>
143 902-375 University Ave.<br>
144 Toronto, ON M5G 2J5 <br>
145 <a style="color:#5B6770;text-decoration: none;" href="tel:1 800 305 9886">1 800 305 9886</a> | <a style="color:#5B6770;text-decoration: none;" href="mailto:wyncampaign@fpcanada.ca">wyncampaign@fpcanada.ca</a>
146 </p>
147 </td>
148 </tr>
149 </table>
150 </td>
151 </tr>
152 </table>
153 </td>
154 </tr>
155 </table>
156 </body>
157 </html>
158
1 <?php
2 /**
3 * Understrap emails
4 *
5 * @package Understrap
6 */
7
8 // Exit if accessed directly.
9
10
11 add_filter( 'cf7_2_post_status_wpsl_stores', 'publish_new_wpsl_stores',10,3);
12 /**
13 * Function to change the post status of saved/submitted posts.
14 * @param string $status the post status, default is 'draft'.
15 * @param string $ckf7_key unique key to identify your form.
16 * @param array $submitted_data complete set of data submitted in the form as an array of field-name=>value pairs.
17 * @return string a valid post status ('publish'|'draft'|'pending'|'trash')
18 */
19 function publish_new_wpsl_stores($status, $ckf7_key, $submitted_data){
20
21 $email = $submitted_data['your-email'];
22
23 $subject = 'Important Registration Information';
24 $message = file_get_contents('registration-confirmation.html');
25 $headers_customer = array('Content-Type: text/html; charset=UTF-8');
26 wp_mail( $email , $subject, $message, $headers_customer);
27
28
29 return 'draft';
30 }
...\ No newline at end of file ...\ No newline at end of file