Initial commit

This commit is contained in:
Roshan476
2026-01-05 15:09:40 +05:45
commit 236fe7df0b
111 changed files with 73285 additions and 0 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
No Content: https://wp.xpressbuddy.com/evisa/wp-content/themes/evisa/assets/css/inline-style.css?ver=1.0.2

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,442 @@
/* Magnific Popup CSS */
.mfp-bg {
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1042;
overflow: hidden;
position: fixed;
background: #0b0b0b;
opacity: 0.8;
}
.mfp-wrap {
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1043;
position: fixed;
outline: none !important;
-webkit-backface-visibility: hidden;
}
.mfp-container {
text-align: center;
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
padding: 0 8px;
box-sizing: border-box;
}
.mfp-container:before {
content: '';
display: inline-block;
height: 100%;
vertical-align: middle;
}
.mfp-align-top .mfp-container:before {
display: none;
}
.mfp-content {
position: relative;
display: inline-block;
vertical-align: middle;
margin: 0 auto;
text-align: left;
z-index: 1045;
}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
width: 100%;
cursor: auto;
}
.mfp-ajax-cur {
cursor: progress;
}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
cursor: -moz-zoom-out;
cursor: -webkit-zoom-out;
cursor: zoom-out;
}
.mfp-zoom {
cursor: pointer;
cursor: -webkit-zoom-in;
cursor: -moz-zoom-in;
cursor: zoom-in;
}
.mfp-auto-cursor .mfp-content {
cursor: auto;
}
.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.mfp-loading.mfp-figure {
display: none;
}
.mfp-hide {
display: none !important;
}
.mfp-preloader {
color: #CCC;
position: absolute;
top: 50%;
width: auto;
text-align: center;
margin-top: -0.8em;
left: 8px;
right: 8px;
z-index: 1044;
}
.mfp-preloader a {
color: #CCC;
}
.mfp-preloader a:hover {
color: #FFF;
}
.mfp-s-ready .mfp-preloader {
display: none;
}
.mfp-s-error .mfp-content {
display: none;
}
button.mfp-close,
button.mfp-arrow {
overflow: visible;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
display: block;
outline: none;
padding: 0;
z-index: 1046;
box-shadow: none;
touch-action: manipulation;
}
button::-moz-focus-inner {
padding: 0;
border: 0;
}
.mfp-close {
width: 44px;
height: 44px;
line-height: 44px;
position: absolute;
right: 0;
top: 0;
text-decoration: none;
text-align: center;
opacity: 0.65;
padding: 0 0 18px 10px;
color: #FFF;
font-style: normal;
font-size: 28px;
font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover,
.mfp-close:focus {
opacity: 1;
}
.mfp-close:active {
top: 1px;
}
.mfp-close-btn-in .mfp-close {
color: #333;
}
.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
color: #FFF;
right: -6px;
text-align: right;
padding-right: 6px;
width: 100%;
}
.mfp-counter {
position: absolute;
top: 0;
right: 0;
color: #CCC;
font-size: 12px;
line-height: 18px;
white-space: nowrap;
}
.mfp-arrow {
position: absolute;
opacity: 0.65;
margin: 0;
top: 50%;
margin-top: -55px;
padding: 0;
width: 90px;
height: 110px;
-webkit-tap-highlight-color: transparent;
}
.mfp-arrow:active {
margin-top: -54px;
}
.mfp-arrow:hover,
.mfp-arrow:focus {
opacity: 1;
}
.mfp-arrow:before,
.mfp-arrow:after {
content: '';
display: block;
width: 0;
height: 0;
position: absolute;
left: 0;
top: 0;
margin-top: 35px;
margin-left: 35px;
border: medium inset transparent;
}
.mfp-arrow:after {
border-top-width: 13px;
border-bottom-width: 13px;
top: 8px;
}
.mfp-arrow:before {
border-top-width: 21px;
border-bottom-width: 21px;
opacity: 0.7;
}
.mfp-arrow-left {
left: 0;
}
.mfp-arrow-left:after {
border-right: 17px solid #FFF;
margin-left: 31px;
}
.mfp-arrow-left:before {
margin-left: 25px;
border-right: 27px solid #3F3F3F;
}
.mfp-arrow-right {
right: 0;
}
.mfp-arrow-right:after {
border-left: 17px solid #FFF;
margin-left: 39px;
}
.mfp-arrow-right:before {
border-left: 27px solid #3F3F3F;
}
.mfp-iframe-holder {
padding-top: 40px;
padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
line-height: 0;
width: 100%;
max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
top: -40px;
}
.mfp-iframe-scaler {
width: 100%;
height: 0;
overflow: hidden;
padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
position: absolute;
display: block;
top: 0;
left: 0;
width: 100%;
height: 100%;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
background: #000;
}
/* Main image in popup */
img.mfp-img {
width: auto;
max-width: 100%;
height: auto;
display: block;
line-height: 0;
box-sizing: border-box;
padding: 40px 0 40px;
margin: 0 auto;
}
/* The shadow behind the image */
.mfp-figure {
line-height: 0;
}
.mfp-figure:after {
content: '';
position: absolute;
left: 0;
top: 40px;
bottom: 40px;
display: block;
right: 0;
width: auto;
height: auto;
z-index: -1;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
background: #444;
}
.mfp-figure small {
color: #BDBDBD;
display: block;
font-size: 12px;
line-height: 14px;
}
.mfp-figure figure {
margin: 0;
}
.mfp-bottom-bar {
margin-top: -36px;
position: absolute;
top: 100%;
left: 0;
width: 100%;
cursor: auto;
}
.mfp-title {
text-align: left;
line-height: 18px;
color: #F3F3F3;
word-wrap: break-word;
padding-right: 36px;
}
.mfp-image-holder .mfp-content {
max-width: 100%;
}
.mfp-gallery .mfp-image-holder .mfp-figure {
cursor: pointer;
}
@media screen and (max-width: 800px) and (orientation: landscape),
screen and (max-height: 300px) {
/**
* Remove all paddings around the image on small screen
*/
.mfp-img-mobile .mfp-image-holder {
padding-left: 0;
padding-right: 0;
}
.mfp-img-mobile img.mfp-img {
padding: 0;
}
.mfp-img-mobile .mfp-figure:after {
top: 0;
bottom: 0;
}
.mfp-img-mobile .mfp-figure small {
display: inline;
margin-left: 5px;
}
.mfp-img-mobile .mfp-bottom-bar {
background: rgba(0, 0, 0, 0.6);
bottom: 0;
margin: 0;
top: auto;
padding: 3px 5px;
position: fixed;
box-sizing: border-box;
}
.mfp-img-mobile .mfp-bottom-bar:empty {
padding: 0;
}
.mfp-img-mobile .mfp-counter {
right: 5px;
top: 3px;
}
.mfp-img-mobile .mfp-close {
top: 0;
right: 0;
width: 35px;
height: 35px;
line-height: 35px;
background: rgba(0, 0, 0, 0.6);
position: fixed;
text-align: center;
padding: 0;
}
}
@media all and (max-width: 900px) {
.mfp-arrow {
-webkit-transform: scale(0.75);
transform: scale(0.75);
}
.mfp-arrow-left {
-webkit-transform-origin: 0;
transform-origin: 0;
}
.mfp-arrow-right {
-webkit-transform-origin: 100%;
transform-origin: 100%;
}
.mfp-container {
padding-left: 6px;
padding-right: 6px;
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,185 @@
.nice-select {
-webkit-tap-highlight-color: transparent;
background-color: #fff;
border-radius: 5px;
border: solid 1px #e8e8e8;
box-sizing: border-box;
clear: both;
cursor: pointer;
display: block;
float: left;
font-family: inherit;
font-size: 14px;
font-weight: normal;
height: 42px;
line-height: 40px;
outline: none;
padding-left: 18px;
padding-right: 30px;
position: relative;
text-align: left !important;
-webkit-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
width: auto;
}
.nice-select:hover {
border-color: #dbdbdb;
}
.nice-select:active,
.nice-select.open,
.nice-select:focus {
border-color: #999;
}
.nice-select:after {
border-bottom: 2px solid #999;
border-right: 2px solid #999;
content: '';
display: block;
height: 5px;
margin-top: -4px;
pointer-events: none;
position: absolute;
right: 12px;
top: 50%;
-webkit-transform-origin: 66% 66%;
-ms-transform-origin: 66% 66%;
transform-origin: 66% 66%;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-transition: all 0.15s ease-in-out;
transition: all 0.15s ease-in-out;
width: 5px;
}
.nice-select.open:after {
-webkit-transform: rotate(-135deg);
-ms-transform: rotate(-135deg);
transform: rotate(-135deg);
}
.nice-select.open .list {
opacity: 1;
pointer-events: auto;
-webkit-transform: scale(1) translateY(0);
-ms-transform: scale(1) translateY(0);
transform: scale(1) translateY(0);
}
.nice-select.disabled {
border-color: #ededed;
color: #999;
pointer-events: none;
}
.nice-select.disabled:after {
border-color: #cccccc;
}
.nice-select.wide {
width: 100%;
}
.nice-select.wide .list {
left: 0 !important;
right: 0 !important;
}
.nice-select.right {
float: right;
}
.nice-select.right .list {
left: auto;
right: 0;
}
.nice-select.small {
font-size: 12px;
height: 36px;
line-height: 34px;
}
.nice-select.small:after {
height: 4px;
width: 4px;
}
.nice-select.small .option {
line-height: 34px;
min-height: 34px;
}
.nice-select .list {
background-color: #fff;
border-radius: 5px;
box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
box-sizing: border-box;
margin-top: 4px;
opacity: 0;
overflow: hidden;
padding: 0;
pointer-events: none;
position: absolute;
top: 100%;
left: 0;
-webkit-transform-origin: 50% 0;
-ms-transform-origin: 50% 0;
transform-origin: 50% 0;
-webkit-transform: scale(0.75) translateY(-21px);
-ms-transform: scale(0.75) translateY(-21px);
transform: scale(0.75) translateY(-21px);
-webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
z-index: 9;
}
.nice-select .list:hover .option:not(:hover) {
background-color: transparent !important;
}
.nice-select .option {
cursor: pointer;
font-weight: 400;
line-height: 40px;
list-style: none;
min-height: 40px;
outline: none;
padding-left: 18px;
padding-right: 29px;
text-align: left;
-webkit-transition: all 0.2s;
transition: all 0.2s;
}
.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
background-color: #f6f6f6;
}
.nice-select .option.selected {
font-weight: bold;
}
.nice-select .option.disabled {
background-color: transparent;
color: #999;
cursor: default;
}
.no-csspointerevents .nice-select .list {
display: none;
}
.no-csspointerevents .nice-select.open .list {
display: block;
}

View File

@@ -0,0 +1,116 @@
.xbo.xbo-auto-theme,
.xbo.xbo-theme-default {
display: inline-block;
vertical-align: middle;
*vertical-align: auto;
*zoom: 1;
*display: inline;
position: relative;
}
.xbo.xbo-auto-theme .xbo-digit,
.xbo.xbo-theme-default .xbo-digit {
display: inline-block;
vertical-align: middle;
*vertical-align: auto;
*zoom: 1;
*display: inline;
position: relative;
}
.xbo.xbo-auto-theme .xbo-digit .xbo-digit-spacer,
.xbo.xbo-theme-default .xbo-digit .xbo-digit-spacer {
display: inline-block;
vertical-align: middle;
*vertical-align: auto;
*zoom: 1;
*display: inline;
visibility: hidden;
}
.xbo.xbo-auto-theme .xbo-digit .xbo-digit-inner,
.xbo.xbo-theme-default .xbo-digit .xbo-digit-inner {
text-align: left;
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
overflow: hidden;
}
.xbo.xbo-auto-theme .xbo-digit .xbo-ribbon,
.xbo.xbo-theme-default .xbo-digit .xbo-ribbon {
display: block;
}
.xbo.xbo-auto-theme .xbo-digit .xbo-ribbon-inner,
.xbo.xbo-theme-default .xbo-digit .xbo-ribbon-inner {
display: block;
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
}
.xbo.xbo-auto-theme .xbo-digit .xbo-value,
.xbo.xbo-theme-default .xbo-digit .xbo-value {
display: block;
transform: translateZ(0);
-webkit-transform: translateZ(0);
}
.xbo.xbo-auto-theme .xbo-digit .xbo-value.xbo-last-value,
.xbo.xbo-theme-default .xbo-digit .xbo-value.xbo-last-value {
position: absolute;
}
.xbo.xbo-auto-theme.xbo-animating-up .xbo-ribbon-inner,
.xbo.xbo-theme-default.xbo-animating-up .xbo-ribbon-inner {
-webkit-transition: -webkit-transform 2s;
-moz-transition: -moz-transform 2s;
-ms-transition: -ms-transform 2s;
-o-transition: -o-transform 2s;
transition: transform 2s;
}
.xbo.xbo-auto-theme.xbo-animating-up.xbo-animating .xbo-ribbon-inner,
.xbo.xbo-theme-default.xbo-animating-up.xbo-animating .xbo-ribbon-inner {
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
-ms-transform: translateY(-100%);
-o-transform: translateY(-100%);
transform: translateY(-100%);
}
.xbo.xbo-auto-theme.xbo-animating-down .xbo-ribbon-inner,
.xbo.xbo-theme-default.xbo-animating-down .xbo-ribbon-inner {
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
-ms-transform: translateY(-100%);
-o-transform: translateY(-100%);
transform: translateY(-100%);
}
.xbo.xbo-auto-theme.xbo-animating-down.xbo-animating .xbo-ribbon-inner,
.xbo.xbo-theme-default.xbo-animating-down.xbo-animating .xbo-ribbon-inner {
-webkit-transition: -webkit-transform 2s;
-moz-transition: -moz-transform 2s;
-ms-transition: -ms-transform 2s;
-o-transition: -o-transform 2s;
transition: transform 2s;
-webkit-transform: translateY(0);
-moz-transform: translateY(0);
-ms-transform: translateY(0);
-o-transform: translateY(0);
transform: translateY(0);
}
.xbo.xbo-auto-theme,
.xbo.xbo-theme-default {
line-height: 1.1em;
}
.xbo.xbo-auto-theme .xbo-value,
.xbo.xbo-theme-default .xbo-value {
text-align: center;
}

View File

@@ -0,0 +1,619 @@
/**
* Swiper 6.6.1
* Most modern mobile touch slider and framework with hardware accelerated transitions
* https://swiperjs.com
*
* Copyright 2014-2021 Vladimir Kharlampidi
*
* Released under the MIT License
*
* Released on: May 11, 2021
*/
@font-face {
font-family: swiper-icons;
src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA') format('woff');
font-weight: 400;
font-style: normal
}
:root {
--swiper-theme-color: #007aff
}
.swiper-container {
margin-left: auto;
margin-right: auto;
position: relative;
overflow: hidden;
list-style: none;
padding: 0;
z-index: 1
}
.swiper-container-vertical>.swiper-wrapper {
flex-direction: column
}
.swiper-wrapper {
position: relative;
width: 100%;
height: 100%;
z-index: 1;
display: flex;
transition-property: transform;
box-sizing: content-box
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
transform: translate3d(0px, 0, 0)
}
.swiper-container-multirow>.swiper-wrapper {
flex-wrap: wrap
}
.swiper-container-multirow-column>.swiper-wrapper {
flex-wrap: wrap;
flex-direction: column
}
.swiper-container-free-mode>.swiper-wrapper {
transition-timing-function: ease-out;
margin: 0 auto
}
.swiper-container-pointer-events {
touch-action: pan-y
}
.swiper-container-pointer-events.swiper-container-vertical {
touch-action: pan-x
}
.swiper-slide {
flex-shrink: 0;
width: 100%;
height: 100%;
position: relative;
transition-property: transform
}
.swiper-slide-invisible-blank {
visibility: hidden
}
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
height: auto
}
.swiper-container-autoheight .swiper-wrapper {
align-items: flex-start;
transition-property: transform, height
}
.swiper-container-3d {
perspective: 1200px
}
.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
transform-style: preserve-3d
}
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 10
}
.swiper-container-3d .swiper-slide-shadow-left {
background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-container-3d .swiper-slide-shadow-right {
background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-container-3d .swiper-slide-shadow-top {
background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-container-3d .swiper-slide-shadow-bottom {
background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-container-css-mode>.swiper-wrapper {
overflow: auto;
scrollbar-width: none;
-ms-overflow-style: none
}
.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
display: none
}
.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
scroll-snap-align: start start
}
.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
scroll-snap-type: x mandatory
}
.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
scroll-snap-type: y mandatory
}
:root {
--swiper-navigation-size: 44px
}
.swiper-button-next,
.swiper-button-prev {
position: absolute;
top: 50%;
width: calc(var(--swiper-navigation-size)/ 44 * 27);
height: var(--swiper-navigation-size);
margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
z-index: 10;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
color: var(--swiper-navigation-color, var(--swiper-theme-color))
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
opacity: .35;
cursor: auto;
pointer-events: none
}
.swiper-button-next:after,
.swiper-button-prev:after {
font-family: swiper-icons;
font-size: var(--swiper-navigation-size);
text-transform: none !important;
letter-spacing: 0;
text-transform: none;
font-variant: initial;
line-height: 1
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
left: 10px;
right: auto
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
content: 'prev'
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
right: 10px;
left: auto
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
content: 'next'
}
.swiper-button-next.swiper-button-white,
.swiper-button-prev.swiper-button-white {
--swiper-navigation-color: #ffffff
}
.swiper-button-next.swiper-button-black,
.swiper-button-prev.swiper-button-black {
--swiper-navigation-color: #000000
}
.swiper-button-lock {
display: none
}
.swiper-pagination {
position: absolute;
text-align: center;
transition: .3s opacity;
transform: translate3d(0, 0, 0);
z-index: 10
}
.swiper-pagination.swiper-pagination-hidden {
opacity: 0
}
.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
bottom: 10px;
left: 0;
width: 100%
}
.swiper-pagination-bullets-dynamic {
overflow: hidden;
font-size: 0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transform: scale(.33);
position: relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
transform: scale(.33)
}
.swiper-pagination-bullet {
width: 8px;
height: 8px;
display: inline-block;
border-radius: 50%;
background: #000;
opacity: .2
}
button.swiper-pagination-bullet {
border: none;
margin: 0;
padding: 0;
box-shadow: none;
-webkit-appearance: none;
appearance: none
}
.swiper-pagination-clickable .swiper-pagination-bullet {
cursor: pointer
}
.swiper-pagination-bullet-active {
opacity: 1;
background: var(--swiper-pagination-color, var(--swiper-theme-color))
}
.swiper-container-vertical>.swiper-pagination-bullets {
right: 10px;
top: 50%;
transform: translate3d(0px, -50%, 0)
}
.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
margin: 6px 0;
display: block
}
.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
top: 50%;
transform: translateY(-50%);
width: 8px
}
.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
display: inline-block;
transition: .2s transform, .2s top
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
margin: 0 4px
}
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
left: 50%;
transform: translateX(-50%);
white-space: nowrap
}
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transition: .2s transform, .2s left
}
.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transition: .2s transform, .2s right
}
.swiper-pagination-progressbar {
background: rgba(0, 0, 0, .25);
position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
background: var(--swiper-pagination-color, var(--swiper-theme-color));
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
transform: scale(0);
transform-origin: left top
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
transform-origin: right top
}
.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
width: 100%;
height: 4px;
left: 0;
top: 0
}
.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
width: 4px;
height: 100%;
left: 0;
top: 0
}
.swiper-pagination-white {
--swiper-pagination-color: #ffffff
}
.swiper-pagination-black {
--swiper-pagination-color: #000000
}
.swiper-pagination-lock {
display: none
}
.swiper-scrollbar {
border-radius: 10px;
position: relative;
-ms-touch-action: none;
background: rgba(0, 0, 0, .1)
}
.swiper-container-horizontal>.swiper-scrollbar {
position: absolute;
left: 1%;
bottom: 3px;
z-index: 50;
height: 5px;
width: 98%
}
.swiper-container-vertical>.swiper-scrollbar {
position: absolute;
right: 3px;
top: 1%;
z-index: 50;
width: 5px;
height: 98%
}
.swiper-scrollbar-drag {
height: 100%;
width: 100%;
position: relative;
background: rgba(0, 0, 0, .5);
border-radius: 10px;
left: 0;
top: 0
}
.swiper-scrollbar-cursor-drag {
cursor: move
}
.swiper-scrollbar-lock {
display: none
}
.swiper-zoom-container {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
text-align: center
}
.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
max-width: 100%;
max-height: 100%;
object-fit: contain
}
.swiper-slide-zoomed {
cursor: move
}
.swiper-lazy-preloader {
width: 42px;
height: 42px;
position: absolute;
left: 50%;
top: 50%;
margin-left: -21px;
margin-top: -21px;
z-index: 10;
transform-origin: 50%;
animation: swiper-preloader-spin 1s infinite linear;
box-sizing: border-box;
border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
border-radius: 50%;
border-top-color: transparent
}
.swiper-lazy-preloader-white {
--swiper-preloader-color: #fff
}
.swiper-lazy-preloader-black {
--swiper-preloader-color: #000
}
@keyframes swiper-preloader-spin {
100% {
transform: rotate(360deg)
}
}
.swiper-container .swiper-notification {
position: absolute;
left: 0;
top: 0;
pointer-events: none;
opacity: 0;
z-index: -1000
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
transition-timing-function: ease-out
}
.swiper-container-fade .swiper-slide {
pointer-events: none;
transition-property: opacity
}
.swiper-container-fade .swiper-slide .swiper-slide {
pointer-events: none
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
pointer-events: auto
}
.swiper-container-cube {
overflow: visible
}
.swiper-container-cube .swiper-slide {
pointer-events: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
z-index: 1;
visibility: hidden;
transform-origin: 0 0;
width: 100%;
height: 100%
}
.swiper-container-cube .swiper-slide .swiper-slide {
pointer-events: none
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
transform-origin: 100% 0
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
pointer-events: auto
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next+.swiper-slide,
.swiper-container-cube .swiper-slide-prev {
pointer-events: auto;
visibility: visible
}
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
z-index: 0;
-webkit-backface-visibility: hidden;
backface-visibility: hidden
}
.swiper-container-cube .swiper-cube-shadow {
position: absolute;
left: 0;
bottom: 0px;
width: 100%;
height: 100%;
opacity: .6;
z-index: 0
}
.swiper-container-cube .swiper-cube-shadow:before {
content: '';
background: #000;
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
filter: blur(50px)
}
.swiper-container-flip {
overflow: visible
}
.swiper-container-flip .swiper-slide {
pointer-events: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
z-index: 1
}
.swiper-container-flip .swiper-slide .swiper-slide {
pointer-events: none
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
pointer-events: auto
}
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
z-index: 0;
-webkit-backface-visibility: hidden;
backface-visibility: hidden
}

View File

@@ -0,0 +1 @@
No Content: https://wp.xpressbuddy.com/evisa/wp-content/themes/evisa/assets/fonts/fa-brands-400.ttf

View File

@@ -0,0 +1 @@
No Content: https://wp.xpressbuddy.com/evisa/wp-content/themes/evisa/assets/fonts/fa-regular-400.ttf

View File

@@ -0,0 +1,5 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.4775 13.7475C16.4775 14.0175 16.4175 14.295 16.29 14.565C16.1625 14.835 15.9975 15.09 15.78 15.33C15.4125 15.735 15.0075 16.0275 14.55 16.215C14.1 16.4025 13.6125 16.5 13.0875 16.5C12.3225 16.5 11.505 16.32 10.6425 15.9525C9.78 15.585 8.9175 15.09 8.0625 14.4675C7.2 13.8375 6.3825 13.14 5.6025 12.3675C4.83 11.5875 4.1325 10.77 3.51 9.915C2.895 9.06 2.4 8.205 2.04 7.3575C1.68 6.5025 1.5 5.685 1.5 4.905C1.5 4.395 1.59 3.9075 1.77 3.4575C1.95 3 2.235 2.58 2.6325 2.205C3.1125 1.7325 3.6375 1.5 4.1925 1.5C4.4025 1.5 4.6125 1.545 4.8 1.635C4.995 1.725 5.1675 1.86 5.3025 2.055L7.0425 4.5075C7.1775 4.695 7.275 4.8675 7.3425 5.0325C7.41 5.19 7.4475 5.3475 7.4475 5.49C7.4475 5.67 7.395 5.85 7.29 6.0225C7.1925 6.195 7.05 6.375 6.87 6.555L6.3 7.1475C6.2175 7.23 6.18 7.3275 6.18 7.4475C6.18 7.5075 6.1875 7.56 6.2025 7.62C6.225 7.68 6.2475 7.725 6.2625 7.77C6.3975 8.0175 6.63 8.34 6.96 8.73C7.2975 9.12 7.6575 9.5175 8.0475 9.915C8.4525 10.3125 8.8425 10.68 9.24 11.0175C9.63 11.3475 9.9525 11.5725 10.2075 11.7075C10.245 11.7225 10.29 11.745 10.3425 11.7675C10.4025 11.79 10.4625 11.7975 10.53 11.7975C10.6575 11.7975 10.755 11.7525 10.8375 11.67L11.4075 11.1075C11.595 10.92 11.775 10.7775 11.9475 10.6875C12.12 10.5825 12.2925 10.53 12.48 10.53C12.6225 10.53 12.7725 10.56 12.9375 10.6275C13.1025 10.695 13.275 10.7925 13.4625 10.92L15.945 12.6825C16.14 12.8175 16.275 12.975 16.3575 13.1625C16.4325 13.35 16.4775 13.5375 16.4775 13.7475Z" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10"/>
<path d="M13.875 6.75C13.875 6.3 13.5225 5.61 12.9975 5.0475C12.5175 4.53 11.88 4.125 11.25 4.125" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M16.5 6.75C16.5 3.8475 14.1525 1.5 11.25 1.5" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,6 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.5 6.375C1.5 3.75 3 2.625 5.25 2.625H12.75C15 2.625 16.5 3.75 16.5 6.375V11.625C16.5 14.25 15 15.375 12.75 15.375H5.25" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12.75 6.75L10.4025 8.625C9.63 9.24 8.3625 9.24 7.59 8.625L5.25 6.75" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1.5 12.375H6" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1.5 9.375H3.75" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 795 B

View File

@@ -0,0 +1,4 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.8524 12.6225L14.1449 14.9925C14.2199 15.615 13.5524 16.05 13.0199 15.7275L9.87738 13.86C9.53238 13.86 9.19489 13.8375 8.86489 13.7925C9.41989 13.14 9.74989 12.315 9.74989 11.4225C9.74989 9.29249 7.90489 7.56752 5.62489 7.56752C4.75489 7.56752 3.95239 7.815 3.28489 8.25C3.26239 8.0625 3.25488 7.87499 3.25488 7.67999C3.25488 4.26749 6.21738 1.5 9.87738 1.5C13.5374 1.5 16.4999 4.26749 16.4999 7.67999C16.4999 9.70499 15.4574 11.4975 13.8524 12.6225Z" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M9.75 11.4223C9.75 12.3148 9.42001 13.1399 8.86501 13.7924C8.12251 14.6924 6.945 15.2699 5.625 15.2699L3.6675 16.4323C3.3375 16.6348 2.9175 16.3574 2.9625 15.9749L3.15 14.4974C2.145 13.7999 1.5 12.6823 1.5 11.4223C1.5 10.1023 2.205 8.93986 3.285 8.24986C3.9525 7.81486 4.755 7.56738 5.625 7.56738C7.905 7.56738 9.75 9.29235 9.75 11.4223Z" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,7 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.94727 11.9098L11.9098 2.94727" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M8.32593 13.7096L9.22593 12.8096" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M10.3447 11.6919L12.1372 9.89941" stroke="#B1B4BA" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M2.70095 7.67913L7.68095 2.69913C9.27095 1.10913 10.066 1.10163 11.641 2.67663L15.3235 6.35913C16.8985 7.93413 16.891 8.72913 15.301 10.3191L10.321 15.2991C8.73095 16.8891 7.93595 16.8966 6.36095 15.3216L2.67845 11.6391C1.10345 10.0641 1.10345 9.27663 2.70095 7.67913Z" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1.5 16.499H16.5" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,4 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9 9C11.0711 9 12.75 7.32107 12.75 5.25C12.75 3.17893 11.0711 1.5 9 1.5C6.92893 1.5 5.25 3.17893 5.25 5.25C5.25 7.32107 6.92893 9 9 9Z" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M15.4426 16.5C15.4426 13.5975 12.5551 11.25 9.00011 11.25C5.44511 11.25 2.55762 13.5975 2.55762 16.5" stroke="#B1B4BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 529 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 896 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 221 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 582 KiB

View File

@@ -0,0 +1,120 @@
(function($) {
var selectors = [];
var checkBinded = false;
var checkLock = false;
var defaults = {
interval: 250,
force_process: false
};
var $window = $(window);
var $priorAppeared = [];
function isAppeared() {
return $(this).is(':appeared');
}
function isNotTriggered() {
return !$(this).data('_appear_triggered');
}
function process() {
checkLock = false;
for (var index = 0, selectorsLength = selectors.length; index < selectorsLength; index++) {
var $appeared = $(selectors[index]).filter(isAppeared);
$appeared
.filter(isNotTriggered)
.data('_appear_triggered', true)
.trigger('appear', [$appeared]);
if ($priorAppeared[index]) {
var $disappeared = $priorAppeared[index].not($appeared);
$disappeared
.data('_appear_triggered', false)
.trigger('disappear', [$disappeared]);
}
$priorAppeared[index] = $appeared;
}
}
function addSelector(selector) {
selectors.push(selector);
$priorAppeared.push();
}
// ":appeared" custom filter
$.expr.pseudos.appeared = $.expr.createPseudo(function(_arg) {
return function(element) {
var $element = $(element);
if (!$element.is(':visible')) {
return false;
}
var windowLeft = $window.scrollLeft();
var windowTop = $window.scrollTop();
var offset = $element.offset();
var left = offset.left;
var top = offset.top;
if (top + $element.height() >= windowTop &&
top - ($element.data('appear-top-offset') || 0) <= windowTop + $window.height() &&
left + $element.width() >= windowLeft &&
left - ($element.data('appear-left-offset') || 0) <= windowLeft + $window.width()) {
return true;
}
return false;
};
});
$.fn.extend({
// watching for element's appearance in browser viewport
appear: function(selector, options) {
$.appear(this, options);
return this;
}
});
$.extend({
appear: function(selector, options) {
var opts = $.extend({}, defaults, options || {});
if (!checkBinded) {
var onCheck = function() {
if (checkLock) {
return;
}
checkLock = true;
setTimeout(process, opts.interval);
};
$(window).scroll(onCheck).resize(onCheck);
checkBinded = true;
}
if (opts.force_process) {
setTimeout(process, opts.interval);
}
addSelector(selector);
},
// force elements's appearance check
force_appear: function() {
if (checkBinded) {
process();
return true;
}
return false;
}
});
}(function() {
if (typeof module !== 'undefined') {
// Node
return require('jquery');
}
return jQuery;
}()));

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,728 @@
/*!
* Name : Just Another Parallax [Jarallax]
* Version : 1.7.3
* Author : _nK https://nkdev.info
* GitHub : https://github.com/nk-o/jarallax
*/
(function(window) {
'use strict';
// Adapted from https://gist.github.com/paulirish/1579671
if (!Date.now) {
Date.now = function() {
return new Date().getTime();
};
}
if (!window.requestAnimationFrame) {
(function() {
var vendors = ['webkit', 'moz'];
for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) {
var vp = vendors[i];
window.requestAnimationFrame = window[vp + 'RequestAnimationFrame'];
window.cancelAnimationFrame = window[vp + 'CancelAnimationFrame'] ||
window[vp + 'CancelRequestAnimationFrame'];
}
if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) // iOS6 is buggy
||
!window.requestAnimationFrame || !window.cancelAnimationFrame) {
var lastTime = 0;
window.requestAnimationFrame = function(callback) {
var now = Date.now();
var nextTime = Math.max(lastTime + 16, now);
return setTimeout(function() {
callback(lastTime = nextTime);
},
nextTime - now);
};
window.cancelAnimationFrame = clearTimeout;
}
}());
}
var supportTransform = (function() {
if (!window.getComputedStyle) {
return false;
}
var el = document.createElement('p'),
has3d,
transforms = {
'webkitTransform': '-webkit-transform',
'OTransform': '-o-transform',
'msTransform': '-ms-transform',
'MozTransform': '-moz-transform',
'transform': 'transform'
};
// Add it to the body to get the computed style.
(document.body || document.documentElement).insertBefore(el, null);
for (var t in transforms) {
if (typeof el.style[t] !== 'undefined') {
el.style[t] = "translate3d(1px,1px,1px)";
has3d = window.getComputedStyle(el).getPropertyValue(transforms[t]);
}
}
(document.body || document.documentElement).removeChild(el);
return typeof has3d !== 'undefined' && has3d.length > 0 && has3d !== "none";
}());
var isAndroid = navigator.userAgent.toLowerCase().indexOf('android') > -1;
var isIOs = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
var isOperaOld = !!window.opera;
var isEdge = /Edge\/\d+/.test(navigator.userAgent);
var isIE11 = /Trident.*rv[ :]*11\./.test(navigator.userAgent);
var isIE10 = !!Function('/*@cc_on return document.documentMode===10@*/')();
var isIElt10 = document.all && !window.atob;
var wndW;
var wndH;
function updateWndVars() {
wndW = window.innerWidth || document.documentElement.clientWidth;
wndH = window.innerHeight || document.documentElement.clientHeight;
}
updateWndVars();
// list with all jarallax instances
// need to render all in one scroll/resize event
var jarallaxList = [];
// Jarallax instance
var Jarallax = (function() {
var instanceID = 0;
function Jarallax_inner(item, userOptions) {
var _this = this,
dataOptions;
_this.$item = item;
_this.defaults = {
type: 'scroll', // type of parallax: scroll, scale, opacity, scale-opacity, scroll-opacity
speed: 0.5, // supported value from -1 to 2
imgSrc: null,
imgWidth: null,
imgHeight: null,
enableTransform: true,
elementInViewport: null,
zIndex: -100,
noAndroid: false,
noIos: true,
// events
onScroll: null, // function(calculations) {}
onInit: null, // function() {}
onDestroy: null, // function() {}
onCoverImage: null // function() {}
};
dataOptions = JSON.parse(_this.$item.getAttribute('data-jarallax') || '{}');
_this.options = _this.extend({}, _this.defaults, dataOptions, userOptions);
// stop init if android or ios
if (isAndroid && _this.options.noAndroid || isIOs && _this.options.noIos) {
return;
}
// fix speed option [-1.0, 2.0]
_this.options.speed = Math.min(2, Math.max(-1, parseFloat(_this.options.speed)));
// custom element to check if parallax in viewport
var elementInVP = _this.options.elementInViewport;
// get first item from array
if (elementInVP && typeof elementInVP === 'object' && typeof elementInVP.length !== 'undefined') {
elementInVP = elementInVP[0];
}
// check if dom element
if (!elementInVP instanceof Element) {
elementInVP = null;
}
_this.options.elementInViewport = elementInVP;
_this.instanceID = instanceID++;
_this.image = {
src: _this.options.imgSrc || null,
$container: null,
$item: null,
width: _this.options.imgWidth || null,
height: _this.options.imgHeight || null,
// fix for some devices
// use <img> instead of background image - more smoothly
useImgTag: isIOs || isAndroid || isOperaOld || isIE11 || isIE10 || isEdge
};
if (_this.initImg()) {
_this.init();
}
}
return Jarallax_inner;
}());
// add styles to element
Jarallax.prototype.css = function(el, styles) {
if (typeof styles === 'string') {
if (window.getComputedStyle) {
return window.getComputedStyle(el).getPropertyValue(styles);
}
return el.style[styles];
}
// add transform property with vendor prefixes
if (styles.transform) {
styles.WebkitTransform = styles.MozTransform = styles.transform;
}
for (var k in styles) {
el.style[k] = styles[k];
}
return el;
};
// Extend like jQuery.extend
Jarallax.prototype.extend = function(out) {
out = out || {};
for (var i = 1; i < arguments.length; i++) {
if (!arguments[i]) {
continue;
}
for (var key in arguments[i]) {
if (arguments[i].hasOwnProperty(key)) {
out[key] = arguments[i][key];
}
}
}
return out;
};
// Jarallax functions
Jarallax.prototype.initImg = function() {
var _this = this;
// get image src
if (_this.image.src === null) {
_this.image.src = _this.css(_this.$item, 'background-image').replace(/^url\(['"]?/g, '').replace(/['"]?\)$/g, '');
}
return !(!_this.image.src || _this.image.src === 'none');
};
Jarallax.prototype.init = function() {
var _this = this,
containerStyles = {
position: 'absolute',
top: 0,
left: 0,
width: '100%',
height: '100%',
overflow: 'hidden',
pointerEvents: 'none'
},
imageStyles = {
position: 'fixed'
};
// save default user styles
_this.$item.setAttribute('data-jarallax-original-styles', _this.$item.getAttribute('style'));
// set relative position and z-index to the parent
if (_this.css(_this.$item, 'position') === 'static') {
_this.css(_this.$item, {
position: 'relative'
});
}
if (_this.css(_this.$item, 'z-index') === 'auto') {
_this.css(_this.$item, {
zIndex: 0
});
}
// container for parallax image
_this.image.$container = document.createElement('div');
_this.css(_this.image.$container, containerStyles);
_this.css(_this.image.$container, {
visibility: 'hidden',
'z-index': _this.options.zIndex
});
_this.image.$container.setAttribute('id', 'jarallax-container-' + _this.instanceID);
_this.$item.appendChild(_this.image.$container);
// use img tag
if (_this.image.useImgTag && supportTransform && _this.options.enableTransform) {
_this.image.$item = document.createElement('img');
_this.image.$item.setAttribute('src', _this.image.src);
imageStyles = _this.extend({
'max-width': 'none'
}, containerStyles, imageStyles);
}
// use div with background image
else {
_this.image.$item = document.createElement('div');
imageStyles = _this.extend({
'background-position': '50% 50%',
'background-size': '100% auto',
'background-repeat': 'no-repeat no-repeat',
'background-image': 'url("' + _this.image.src + '")'
}, containerStyles, imageStyles);
}
// fix for IE9 and less
if (isIElt10) {
imageStyles.backgroundAttachment = 'fixed';
}
// check if one of parents have transform style (without this check, scroll transform will be inverted)
// discussion - https://github.com/nk-o/jarallax/issues/9
_this.parentWithTransform = 0;
var $itemParents = _this.$item;
while ($itemParents !== null && $itemParents !== document && _this.parentWithTransform === 0) {
var parent_transform = _this.css($itemParents, '-webkit-transform') || _this.css($itemParents, '-moz-transform') || _this.css($itemParents, 'transform');
if (parent_transform && parent_transform !== 'none') {
_this.parentWithTransform = 1;
// add transform on parallax container if there is parent with transform
_this.css(_this.image.$container, {
transform: 'translateX(0) translateY(0)'
});
}
$itemParents = $itemParents.parentNode;
}
// parallax image
_this.css(_this.image.$item, imageStyles);
_this.image.$container.appendChild(_this.image.$item);
// cover image if width and height is ready
function initAfterReady() {
_this.coverImage();
_this.clipContainer();
_this.onScroll(true);
// call onInit event
if (_this.options.onInit) {
_this.options.onInit.call(_this);
}
// timeout to fix IE blinking
setTimeout(function() {
if (_this.$item) {
// remove default user background
_this.css(_this.$item, {
'background-image': 'none',
'background-attachment': 'scroll',
'background-size': 'auto'
});
}
}, 0);
}
if (_this.image.width && _this.image.height) {
// init if width and height already exists
initAfterReady();
} else {
// load image and get width and height
_this.getImageSize(_this.image.src, function(width, height) {
_this.image.width = width;
_this.image.height = height;
initAfterReady();
});
}
jarallaxList.push(_this);
};
Jarallax.prototype.destroy = function() {
var _this = this;
// remove from instances list
for (var k = 0, len = jarallaxList.length; k < len; k++) {
if (jarallaxList[k].instanceID === _this.instanceID) {
jarallaxList.splice(k, 1);
break;
}
}
// return styles on container as before jarallax init
var originalStylesTag = _this.$item.getAttribute('data-jarallax-original-styles');
_this.$item.removeAttribute('data-jarallax-original-styles');
// null occurs if there is no style tag before jarallax init
if (originalStylesTag === 'null') {
_this.$item.removeAttribute('style');
} else {
_this.$item.setAttribute('style', originalStylesTag);
}
// remove additional dom elements
if (_this.$clipStyles) {
_this.$clipStyles.parentNode.removeChild(_this.$clipStyles);
}
_this.image.$container.parentNode.removeChild(_this.image.$container);
// call onDestroy event
if (_this.options.onDestroy) {
_this.options.onDestroy.call(_this);
}
// delete jarallax from item
delete _this.$item.jarallax;
// delete all variables
for (var n in _this) {
delete _this[n];
}
};
Jarallax.prototype.getImageSize = function(src, callback) {
if (!src || !callback) {
return;
}
var tempImg = new Image();
tempImg.onload = function() {
callback(tempImg.width, tempImg.height);
};
tempImg.src = src;
};
// it will remove some image overlapping
// overlapping occur due to an image position fixed inside absolute position element (webkit based browsers works without any fix)
Jarallax.prototype.clipContainer = function() {
// clip is not working properly on real IE9 and less
if (isIElt10) {
return;
}
var _this = this,
rect = _this.image.$container.getBoundingClientRect(),
width = rect.width,
height = rect.height;
if (!_this.$clipStyles) {
_this.$clipStyles = document.createElement('style');
_this.$clipStyles.setAttribute('type', 'text/css');
_this.$clipStyles.setAttribute('id', '#jarallax-clip-' + _this.instanceID);
var head = document.head || document.getElementsByTagName('head')[0];
head.appendChild(_this.$clipStyles);
}
var styles = [
'#jarallax-container-' + _this.instanceID + ' {',
' clip: rect(0 ' + width + 'px ' + height + 'px 0);',
' clip: rect(0, ' + width + 'px, ' + height + 'px, 0);',
'}'
].join('\n');
// add clip styles inline (this method need for support IE8 and less browsers)
if (_this.$clipStyles.styleSheet) {
_this.$clipStyles.styleSheet.cssText = styles;
} else {
_this.$clipStyles.innerHTML = styles;
}
};
Jarallax.prototype.coverImage = function() {
var _this = this;
if (!_this.image.width || !_this.image.height) {
return;
}
var rect = _this.image.$container.getBoundingClientRect(),
contW = rect.width,
contH = rect.height,
contL = rect.left,
imgW = _this.image.width,
imgH = _this.image.height,
speed = _this.options.speed,
isScroll = _this.options.type === 'scroll' || _this.options.type === 'scroll-opacity',
scrollDist = 0,
resultW = 0,
resultH = contH,
resultML = 0,
resultMT = 0;
// scroll parallax
if (isScroll) {
// scroll distance and height for image
if (speed < 0) {
scrollDist = speed * Math.max(contH, wndH);
} else {
scrollDist = speed * (contH + wndH);
}
// size for scroll parallax
if (speed > 1) {
resultH = Math.abs(scrollDist - wndH);
} else if (speed < 0) {
resultH = scrollDist / speed + Math.abs(scrollDist);
} else {
resultH += Math.abs(wndH - contH) * (1 - speed);
}
scrollDist /= 2;
}
// calculate width relative to height and image size
resultW = resultH * imgW / imgH;
if (resultW < contW) {
resultW = contW;
resultH = resultW * imgH / imgW;
}
// when disabled transformations, height should be >= window height
_this.bgPosVerticalCenter = 0;
if (isScroll && resultH < wndH && (!supportTransform || !_this.options.enableTransform)) {
_this.bgPosVerticalCenter = (wndH - resultH) / 2;
resultH = wndH;
}
// center parallax image
if (isScroll) {
resultML = contL + (contW - resultW) / 2;
resultMT = (wndH - resultH) / 2;
} else {
resultML = (contW - resultW) / 2;
resultMT = (contH - resultH) / 2;
}
// fix if parents with transform style
if (supportTransform && _this.options.enableTransform && _this.parentWithTransform) {
resultML -= contL;
}
// store scroll distance
_this.parallaxScrollDistance = scrollDist;
// apply result to item
_this.css(_this.image.$item, {
width: resultW + 'px',
height: resultH + 'px',
marginLeft: resultML + 'px',
marginTop: resultMT + 'px'
});
// call onCoverImage event
if (_this.options.onCoverImage) {
_this.options.onCoverImage.call(_this);
}
};
Jarallax.prototype.isVisible = function() {
return this.isElementInViewport || false;
};
Jarallax.prototype.onScroll = function(force) {
var _this = this;
if (!_this.image.width || !_this.image.height) {
return;
}
var rect = _this.$item.getBoundingClientRect(),
contT = rect.top,
contH = rect.height,
styles = {
position: 'absolute',
visibility: 'visible',
backgroundPosition: '50% 50%'
};
// check if in viewport
var viewportRect = rect;
if (_this.options.elementInViewport) {
viewportRect = _this.options.elementInViewport.getBoundingClientRect();
}
_this.isElementInViewport =
viewportRect.bottom >= 0 &&
viewportRect.right >= 0 &&
viewportRect.top <= wndH &&
viewportRect.left <= wndW;
// stop calculations if item is not in viewport
if (force ? false : !_this.isElementInViewport) {
return;
}
// calculate parallax helping variables
var beforeTop = Math.max(0, contT),
beforeTopEnd = Math.max(0, contH + contT),
afterTop = Math.max(0, -contT),
beforeBottom = Math.max(0, contT + contH - wndH),
beforeBottomEnd = Math.max(0, contH - (contT + contH - wndH)),
afterBottom = Math.max(0, -contT + wndH - contH),
fromViewportCenter = 1 - 2 * (wndH - contT) / (wndH + contH);
// calculate on how percent of section is visible
var visiblePercent = 1;
if (contH < wndH) {
visiblePercent = 1 - (afterTop || beforeBottom) / contH;
} else {
if (beforeTopEnd <= wndH) {
visiblePercent = beforeTopEnd / wndH;
} else if (beforeBottomEnd <= wndH) {
visiblePercent = beforeBottomEnd / wndH;
}
}
// opacity
if (_this.options.type === 'opacity' || _this.options.type === 'scale-opacity' || _this.options.type === 'scroll-opacity') {
styles.transform = 'translate3d(0, 0, 0)';
styles.opacity = visiblePercent;
}
// scale
if (_this.options.type === 'scale' || _this.options.type === 'scale-opacity') {
var scale = 1;
if (_this.options.speed < 0) {
scale -= _this.options.speed * visiblePercent;
} else {
scale += _this.options.speed * (1 - visiblePercent);
}
styles.transform = 'scale(' + scale + ') translate3d(0, 0, 0)';
}
// scroll
if (_this.options.type === 'scroll' || _this.options.type === 'scroll-opacity') {
var positionY = _this.parallaxScrollDistance * fromViewportCenter;
if (supportTransform && _this.options.enableTransform) {
// fix if parents with transform style
if (_this.parentWithTransform) {
positionY -= contT;
}
styles.transform = 'translate3d(0, ' + positionY + 'px, 0)';
} else if (_this.image.useImgTag) {
styles.top = positionY + 'px';
} else {
// vertical centering
if (_this.bgPosVerticalCenter) {
positionY += _this.bgPosVerticalCenter;
}
styles.backgroundPosition = '50% ' + positionY + 'px';
}
// fixed position is not work properly for IE9 and less
// solution - use absolute position and emulate fixed by using container offset
styles.position = isIElt10 ? 'absolute' : 'fixed';
}
_this.css(_this.image.$item, styles);
// call onScroll event
if (_this.options.onScroll) {
_this.options.onScroll.call(_this, {
section: rect,
beforeTop: beforeTop,
beforeTopEnd: beforeTopEnd,
afterTop: afterTop,
beforeBottom: beforeBottom,
beforeBottomEnd: beforeBottomEnd,
afterBottom: afterBottom,
visiblePercent: visiblePercent,
fromViewportCenter: fromViewportCenter
});
}
};
// init events
function addEventListener(el, eventName, handler) {
if (el.addEventListener) {
el.addEventListener(eventName, handler);
} else {
el.attachEvent('on' + eventName, function() {
handler.call(el);
});
}
}
function update(e) {
window.requestAnimationFrame(function() {
if (e.type !== 'scroll') {
updateWndVars();
}
for (var k = 0, len = jarallaxList.length; k < len; k++) {
// cover image and clip needed only when parallax container was changed
if (e.type !== 'scroll') {
jarallaxList[k].coverImage();
jarallaxList[k].clipContainer();
}
jarallaxList[k].onScroll();
}
});
}
addEventListener(window, 'scroll', update);
addEventListener(window, 'resize', update);
addEventListener(window, 'orientationchange', update);
addEventListener(window, 'load', update);
// global definition
var plugin = function(items) {
// check for dom element
// thanks: http://stackoverflow.com/questions/384286/javascript-isdom-how-do-you-check-if-a-javascript-object-is-a-dom-object
if (typeof HTMLElement === "object" ? items instanceof HTMLElement : items && typeof items === "object" && items !== null && items.nodeType === 1 && typeof items.nodeName === "string") {
items = [items];
}
var options = arguments[1],
args = Array.prototype.slice.call(arguments, 2),
len = items.length,
k = 0,
ret;
for (k; k < len; k++) {
if (typeof options === 'object' || typeof options === 'undefined') {
if (!items[k].jarallax) {
items[k].jarallax = new Jarallax(items[k], options);
}
} else if (items[k].jarallax) {
ret = items[k].jarallax[options].apply(items[k].jarallax, args);
}
if (typeof ret !== 'undefined') {
return ret;
}
}
return items;
};
plugin.constructor = Jarallax;
// no conflict
var oldPlugin = window.jarallax;
window.jarallax = plugin;
window.jarallax.noConflict = function() {
window.jarallax = oldPlugin;
return this;
};
// jQuery support
if (typeof jQuery !== 'undefined') {
var jQueryPlugin = function() {
var args = arguments || [];
Array.prototype.unshift.call(args, this);
var res = plugin.apply(window, args);
return typeof res !== 'object' ? res : this;
};
jQueryPlugin.constructor = Jarallax;
// no conflict
var oldJqPlugin = jQuery.fn.jarallax;
jQuery.fn.jarallax = jQueryPlugin;
jQuery.fn.jarallax.noConflict = function() {
jQuery.fn.jarallax = oldJqPlugin;
return this;
};
}
// data-jarallax initialization
addEventListener(window, 'DOMContentLoaded', function() {
plugin(document.querySelectorAll('[data-jarallax], [data-jarallax-video]'));
});
}(window));

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,660 @@
/*! Magnific Popup - v1.1.0 - 2016-02-20
* http://dimsemenov.com/plugins/magnific-popup/
* Copyright (c) 2016 Dmitry Semenov; */
! function(a) {
"function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto)
}(function(a) {
var b, c, d, e, f, g, h = "Close",
i = "BeforeClose",
j = "AfterClose",
k = "BeforeAppend",
l = "MarkupParse",
m = "Open",
n = "Change",
o = "mfp",
p = "." + o,
q = "mfp-ready",
r = "mfp-removing",
s = "mfp-prevent-close",
t = function() {},
u = !!window.jQuery,
v = a(window),
w = function(a, c) {
b.ev.on(o + a + p, c)
},
x = function(b, c, d, e) {
var f = document.createElement("div");
return f.className = "mfp-" + b, d && (f.innerHTML = d), e ? c && c.appendChild(f) : (f = a(f), c && f.appendTo(c)), f
},
y = function(c, d) {
b.ev.triggerHandler(o + c, d), b.st.callbacks && (c = c.charAt(0).toLowerCase() + c.slice(1), b.st.callbacks[c] && b.st.callbacks[c].apply(b, a.isArray(d) ? d : [d]))
},
z = function(c) {
return c === g && b.currTemplate.closeBtn || (b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose)), g = c), b.currTemplate.closeBtn
},
A = function() {
a.magnificPopup.instance || (b = new t, b.init(), a.magnificPopup.instance = b)
},
B = function() {
var a = document.createElement("p").style,
b = ["ms", "O", "Moz", "Webkit"];
if (void 0 !== a.transition) return !0;
for (; b.length;)
if (b.pop() + "Transition" in a) return !0;
return !1
};
t.prototype = {
constructor: t,
init: function() {
var c = navigator.appVersion;
b.isLowIE = b.isIE8 = document.all && !document.addEventListener, b.isAndroid = /android/gi.test(c), b.isIOS = /iphone|ipad|ipod/gi.test(c), b.supportsTransition = B(), b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), d = a(document), b.popupsCache = {}
},
open: function(c) {
var e;
if (c.isObj === !1) {
b.items = c.items.toArray(), b.index = 0;
var g, h = c.items;
for (e = 0; e < h.length; e++)
if (g = h[e], g.parsed && (g = g.el[0]), g === c.el[0]) {
b.index = e;
break
}
} else b.items = a.isArray(c.items) ? c.items : [c.items], b.index = c.index || 0;
if (b.isOpen) return void b.updateItemHTML();
b.types = [], f = "", c.mainEl && c.mainEl.length ? b.ev = c.mainEl.eq(0) : b.ev = d, c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), b.currTemplate = b.popupsCache[c.key]) : b.currTemplate = {}, b.st = a.extend(!0, {}, a.magnificPopup.defaults, c), b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos, b.st.modal && (b.st.closeOnContentClick = !1, b.st.closeOnBgClick = !1, b.st.showCloseBtn = !1, b.st.enableEscapeKey = !1), b.bgOverlay || (b.bgOverlay = x("bg").on("click" + p, function() {
b.close()
}), b.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function(a) {
b._checkIfClose(a.target) && b.close()
}), b.container = x("container", b.wrap)), b.contentContainer = x("content"), b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading));
var i = a.magnificPopup.modules;
for (e = 0; e < i.length; e++) {
var j = i[e];
j = j.charAt(0).toUpperCase() + j.slice(1), b["init" + j].call(b)
}
y("BeforeOpen"), b.st.showCloseBtn && (b.st.closeBtnInside ? (w(l, function(a, b, c, d) {
c.close_replaceWith = z(d.type)
}), f += " mfp-close-btn-in") : b.wrap.append(z())), b.st.alignTop && (f += " mfp-align-top"), b.fixedContentPos ? b.wrap.css({
overflow: b.st.overflowY,
overflowX: "hidden",
overflowY: b.st.overflowY
}) : b.wrap.css({
top: v.scrollTop(),
position: "absolute"
}), (b.st.fixedBgPos === !1 || "auto" === b.st.fixedBgPos && !b.fixedContentPos) && b.bgOverlay.css({
height: d.height(),
position: "absolute"
}), b.st.enableEscapeKey && d.on("keyup" + p, function(a) {
27 === a.keyCode && b.close()
}), v.on("resize" + p, function() {
b.updateSize()
}), b.st.closeOnContentClick || (f += " mfp-auto-cursor"), f && b.wrap.addClass(f);
var k = b.wH = v.height(),
n = {};
if (b.fixedContentPos && b._hasScrollBar(k)) {
var o = b._getScrollbarSize();
o && (n.marginRight = o)
}
b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : n.overflow = "hidden");
var r = b.st.mainClass;
return b.isIE7 && (r += " mfp-ie7"), r && b._addClassToMFP(r), b.updateItemHTML(), y("BuildControls"), a("html").css(n), b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo || a(document.body)), b._lastFocusedEl = document.activeElement, setTimeout(function() {
b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn)
}, 16), b.isOpen = !0, b.updateSize(k), y(m), c
},
close: function() {
b.isOpen && (y(i), b.isOpen = !1, b.st.removalDelay && !b.isLowIE && b.supportsTransition ? (b._addClassToMFP(r), setTimeout(function() {
b._close()
}, b.st.removalDelay)) : b._close())
},
_close: function() {
y(h);
var c = r + " " + q + " ";
if (b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos) {
var e = {
marginRight: ""
};
b.isIE7 ? a("body, html").css("overflow", "") : e.overflow = "", a("html").css(e)
}
d.off("keyup" + p + " focusin" + p), b.ev.off(p), b.wrap.attr("class", "mfp-wrap").removeAttr("style"), b.bgOverlay.attr("class", "mfp-bg"), b.container.attr("class", "mfp-container"), !b.st.showCloseBtn || b.st.closeBtnInside && b.currTemplate[b.currItem.type] !== !0 || b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach(), b.st.autoFocusLast && b._lastFocusedEl && a(b._lastFocusedEl).focus(), b.currItem = null, b.content = null, b.currTemplate = null, b.prevHeight = 0, y(j)
},
updateSize: function(a) {
if (b.isIOS) {
var c = document.documentElement.clientWidth / window.innerWidth,
d = window.innerHeight * c;
b.wrap.css("height", d), b.wH = d
} else b.wH = a || v.height();
b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize")
},
updateItemHTML: function() {
var c = b.items[b.index];
b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index));
var d = c.type;
if (y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), b.currItem = c, !b.currTemplate[d]) {
var f = b.st[d] ? b.st[d].markup : !1;
y("FirstMarkupParse", f), f ? b.currTemplate[d] = a(f) : b.currTemplate[d] = !0
}
e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder");
var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]);
b.appendContent(g, d), c.preloaded = !0, y(n, c), e = c.type, b.container.prepend(b.contentContainer), y("AfterChange")
},
appendContent: function(a, c) {
b.content = a, a ? b.st.showCloseBtn && b.st.closeBtnInside && b.currTemplate[c] === !0 ? b.content.find(".mfp-close").length || b.content.append(z()) : b.content = a : b.content = "", y(k), b.container.addClass("mfp-" + c + "-holder"), b.contentContainer.append(b.content)
},
parseEl: function(c) {
var d, e = b.items[c];
if (e.tagName ? e = {
el: a(e)
} : (d = e.type, e = {
data: e,
src: e.src
}), e.el) {
for (var f = b.types, g = 0; g < f.length; g++)
if (e.el.hasClass("mfp-" + f[g])) {
d = f[g];
break
}
e.src = e.el.attr("data-mfp-src"), e.src || (e.src = e.el.attr("href"))
}
return e.type = d || b.st.type || "inline", e.index = c, e.parsed = !0, b.items[c] = e, y("ElementParse", e), b.items[c]
},
addGroup: function(a, c) {
var d = function(d) {
d.mfpEl = this, b._openClick(d, a, c)
};
c || (c = {});
var e = "click.magnificPopup";
c.mainEl = a, c.items ? (c.isObj = !0, a.off(e).on(e, d)) : (c.isObj = !1, c.delegate ? a.off(e).on(e, c.delegate, d) : (c.items = a, a.off(e).on(e, d)))
},
_openClick: function(c, d, e) {
var f = void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick;
if (f || !(2 === c.which || c.ctrlKey || c.metaKey || c.altKey || c.shiftKey)) {
var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn;
if (g)
if (a.isFunction(g)) {
if (!g.call(b)) return !0
} else if (v.width() < g) return !0;
c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), e.el = a(c.mfpEl), e.delegate && (e.items = d.find(e.delegate)), b.open(e)
}
},
updateStatus: function(a, d) {
if (b.preloader) {
c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading);
var e = {
status: a,
text: d
};
y("UpdateStatus", e), a = e.status, d = e.text, b.preloader.html(d), b.preloader.find("a").on("click", function(a) {
a.stopImmediatePropagation()
}), b.container.addClass("mfp-s-" + a), c = a
}
},
_checkIfClose: function(c) {
if (!a(c).hasClass(s)) {
var d = b.st.closeOnContentClick,
e = b.st.closeOnBgClick;
if (d && e) return !0;
if (!b.content || a(c).hasClass("mfp-close") || b.preloader && c === b.preloader[0]) return !0;
if (c === b.content[0] || a.contains(b.content[0], c)) {
if (d) return !0
} else if (e && a.contains(document, c)) return !0;
return !1
}
},
_addClassToMFP: function(a) {
b.bgOverlay.addClass(a), b.wrap.addClass(a)
},
_removeClassFromMFP: function(a) {
this.bgOverlay.removeClass(a), b.wrap.removeClass(a)
},
_hasScrollBar: function(a) {
return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height())
},
_setFocus: function() {
(b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus()
},
_onFocusIn: function(c) {
return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1)
},
_parseMarkup: function(b, c, d) {
var e;
d.data && (c = a.extend(d.data, c)), y(l, [b, c, d]), a.each(c, function(c, d) {
if (void 0 === d || d === !1) return !0;
if (e = c.split("_"), e.length > 1) {
var f = b.find(p + "-" + e[0]);
if (f.length > 0) {
var g = e[1];
"replaceWith" === g ? f[0] !== d[0] && f.replaceWith(d) : "img" === g ? f.is("img") ? f.attr("src", d) : f.replaceWith(a("<img>").attr("src", d).attr("class", f.attr("class"))) : f.attr(e[1], d)
}
} else b.find(p + "-" + c).html(d)
})
},
_getScrollbarSize: function() {
if (void 0 === b.scrollbarSize) {
var a = document.createElement("div");
a.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;", document.body.appendChild(a), b.scrollbarSize = a.offsetWidth - a.clientWidth, document.body.removeChild(a)
}
return b.scrollbarSize
}
}, a.magnificPopup = {
instance: null,
proto: t.prototype,
modules: [],
open: function(b, c) {
return A(), b = b ? a.extend(!0, {}, b) : {}, b.isObj = !0, b.index = c || 0, this.instance.open(b)
},
close: function() {
return a.magnificPopup.instance && a.magnificPopup.instance.close()
},
registerModule: function(b, c) {
c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b)
},
defaults: {
disableOn: 0,
key: null,
midClick: !1,
mainClass: "",
preloader: !0,
focus: "",
closeOnContentClick: !1,
closeOnBgClick: !0,
closeBtnInside: !0,
showCloseBtn: !0,
enableEscapeKey: !0,
modal: !1,
alignTop: !1,
removalDelay: 0,
prependTo: null,
fixedContentPos: "auto",
fixedBgPos: "auto",
overflowY: "auto",
closeMarkup: '<button title="%title%" type="button" class="mfp-close">&#215;</button>',
tClose: "Close (Esc)",
tLoading: "Loading...",
autoFocusLast: !0
}
}, a.fn.magnificPopup = function(c) {
A();
var d = a(this);
if ("string" == typeof c)
if ("open" === c) {
var e, f = u ? d.data("magnificPopup") : d[0].magnificPopup,
g = parseInt(arguments[1], 10) || 0;
f.items ? e = f.items[g] : (e = d, f.delegate && (e = e.find(f.delegate)), e = e.eq(g)), b._openClick({
mfpEl: e
}, d, f)
} else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1));
else c = a.extend(!0, {}, c), u ? d.data("magnificPopup", c) : d[0].magnificPopup = c, b.addGroup(d, c);
return d
};
var C, D, E, F = "inline",
G = function() {
E && (D.after(E.addClass(C)).detach(), E = null)
};
a.magnificPopup.registerModule(F, {
options: {
hiddenClass: "hide",
markup: "",
tNotFound: "Content not found"
},
proto: {
initInline: function() {
b.types.push(F), w(h + "." + F, function() {
G()
})
},
getInline: function(c, d) {
if (G(), c.src) {
var e = b.st.inline,
f = a(c.src);
if (f.length) {
var g = f[0].parentNode;
g && g.tagName && (D || (C = e.hiddenClass, D = x(C), C = "mfp-" + C), E = f.after(D).detach().removeClass(C)), b.updateStatus("ready")
} else b.updateStatus("error", e.tNotFound), f = a("<div>");
return c.inlineElement = f, f
}
return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d
}
}
});
var H, I = "ajax",
J = function() {
H && a(document.body).removeClass(H)
},
K = function() {
J(), b.req && b.req.abort()
};
a.magnificPopup.registerModule(I, {
options: {
settings: null,
cursor: "mfp-ajax-cur",
tError: '<a href="%url%">The content</a> could not be loaded.'
},
proto: {
initAjax: function() {
b.types.push(I), H = b.st.ajax.cursor, w(h + "." + I, K), w("BeforeChange." + I, K)
},
getAjax: function(c) {
H && a(document.body).addClass(H), b.updateStatus("loading");
var d = a.extend({
url: c.src,
success: function(d, e, f) {
var g = {
data: d,
xhr: f
};
y("ParseAjax", g), b.appendContent(a(g.data), I), c.finished = !0, J(), b._setFocus(), setTimeout(function() {
b.wrap.addClass(q)
}, 16), b.updateStatus("ready"), y("AjaxContentAdded")
},
error: function() {
J(), c.finished = c.loadError = !0, b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src))
}
}, b.st.ajax.settings);
return b.req = a.ajax(d), ""
}
}
});
var L, M = function(c) {
if (c.data && void 0 !== c.data.title) return c.data.title;
var d = b.st.image.titleSrc;
if (d) {
if (a.isFunction(d)) return d.call(b, c);
if (c.el) return c.el.attr(d) || ""
}
return ""
};
a.magnificPopup.registerModule("image", {
options: {
markup: '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',
cursor: "mfp-zoom-out-cur",
titleSrc: "title",
verticalFit: !0,
tError: '<a href="%url%">The image</a> could not be loaded.'
},
proto: {
initImage: function() {
var c = b.st.image,
d = ".image";
b.types.push("image"), w(m + d, function() {
"image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor)
}), w(h + d, function() {
c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p)
}), w("Resize" + d, b.resizeImage), b.isLowIE && w("AfterChange", b.resizeImage)
},
resizeImage: function() {
var a = b.currItem;
if (a && a.img && b.st.image.verticalFit) {
var c = 0;
b.isLowIE && (c = parseInt(a.img.css("padding-top"), 10) + parseInt(a.img.css("padding-bottom"), 10)), a.img.css("max-height", b.wH - c)
}
},
_onImageHasSize: function(a) {
a.img && (a.hasSize = !0, L && clearInterval(L), a.isCheckingImgSize = !1, y("ImageHasSize", a), a.imgHidden && (b.content && b.content.removeClass("mfp-loading"), a.imgHidden = !1))
},
findImageSize: function(a) {
var c = 0,
d = a.img[0],
e = function(f) {
L && clearInterval(L), L = setInterval(function() {
return d.naturalWidth > 0 ? void b._onImageHasSize(a) : (c > 200 && clearInterval(L), c++, void(3 === c ? e(10) : 40 === c ? e(50) : 100 === c && e(500)))
}, f)
};
e(1)
},
getImage: function(c, d) {
var e = 0,
f = function() {
c && (c.img[0].complete ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), c.hasSize = !0, c.loaded = !0, y("ImageLoadComplete")) : (e++, 200 > e ? setTimeout(f, 100) : g()))
},
g = function() {
c && (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("error", h.tError.replace("%url%", c.src))), c.hasSize = !0, c.loaded = !0, c.loadError = !0)
},
h = b.st.image,
i = d.find(".mfp-img");
if (i.length) {
var j = document.createElement("img");
j.className = "mfp-img", c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")), c.img = a(j).on("load.mfploader", f).on("error.mfploader", g), j.src = c.src, i.is("img") && (c.img = c.img.clone()), j = c.img[0], j.naturalWidth > 0 ? c.hasSize = !0 : j.width || (c.hasSize = !1)
}
return b._parseMarkup(d, {
title: M(c),
img_replaceWith: c.img
}, c), b.resizeImage(), c.hasSize ? (L && clearInterval(L), c.loadError ? (d.addClass("mfp-loading"), b.updateStatus("error", h.tError.replace("%url%", c.src))) : (d.removeClass("mfp-loading"), b.updateStatus("ready")), d) : (b.updateStatus("loading"), c.loading = !0, c.hasSize || (c.imgHidden = !0, d.addClass("mfp-loading"), b.findImageSize(c)), d)
}
}
});
var N, O = function() {
return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N
};
a.magnificPopup.registerModule("zoom", {
options: {
enabled: !1,
easing: "ease-in-out",
duration: 300,
opener: function(a) {
return a.is("img") ? a : a.find("img")
}
},
proto: {
initZoom: function() {
var a, c = b.st.zoom,
d = ".zoom";
if (c.enabled && b.supportsTransition) {
var e, f, g = c.duration,
j = function(a) {
var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),
d = "all " + c.duration / 1e3 + "s " + c.easing,
e = {
position: "fixed",
zIndex: 9999,
left: 0,
top: 0,
"-webkit-backface-visibility": "hidden"
},
f = "transition";
return e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d, b.css(e), b
},
k = function() {
b.content.css("visibility", "visible")
};
w("BuildControls" + d, function() {
if (b._allowZoom()) {
if (clearTimeout(e), b.content.css("visibility", "hidden"), a = b._getItemToZoom(), !a) return void k();
f = j(a), f.css(b._getOffset()), b.wrap.append(f), e = setTimeout(function() {
f.css(b._getOffset(!0)), e = setTimeout(function() {
k(), setTimeout(function() {
f.remove(), a = f = null, y("ZoomAnimationEnded")
}, 16)
}, g)
}, 16)
}
}), w(i + d, function() {
if (b._allowZoom()) {
if (clearTimeout(e), b.st.removalDelay = g, !a) {
if (a = b._getItemToZoom(), !a) return;
f = j(a)
}
f.css(b._getOffset(!0)), b.wrap.append(f), b.content.css("visibility", "hidden"), setTimeout(function() {
f.css(b._getOffset())
}, 16)
}
}), w(h + d, function() {
b._allowZoom() && (k(), f && f.remove(), a = null)
})
}
},
_allowZoom: function() {
return "image" === b.currItem.type
},
_getItemToZoom: function() {
return b.currItem.hasSize ? b.currItem.img : !1
},
_getOffset: function(c) {
var d;
d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem);
var e = d.offset(),
f = parseInt(d.css("padding-top"), 10),
g = parseInt(d.css("padding-bottom"), 10);
e.top -= a(window).scrollTop() - f;
var h = {
width: d.width(),
height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f
};
return O() ? h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)" : (h.left = e.left, h.top = e.top), h
}
}
});
var P = "iframe",
Q = "//about:blank",
R = function(a) {
if (b.currTemplate[P]) {
var c = b.currTemplate[P].find("iframe");
c.length && (a || (c[0].src = Q), b.isIE8 && c.css("display", a ? "block" : "none"))
}
};
a.magnificPopup.registerModule(P, {
options: {
markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',
srcAction: "iframe_src",
patterns: {
youtube: {
index: "youtube.com",
id: "v=",
src: "//www.youtube.com/embed/%id%?autoplay=1"
},
vimeo: {
index: "vimeo.com/",
id: "/",
src: "//player.vimeo.com/video/%id%?autoplay=1"
},
gmaps: {
index: "//maps.google.",
src: "%id%&output=embed"
}
}
},
proto: {
initIframe: function() {
b.types.push(P), w("BeforeChange", function(a, b, c) {
b !== c && (b === P ? R() : c === P && R(!0))
}), w(h + "." + P, function() {
R()
})
},
getIframe: function(c, d) {
var e = c.src,
f = b.st.iframe;
a.each(f.patterns, function() {
return e.indexOf(this.index) > -1 ? (this.id && (e = "string" == typeof this.id ? e.substr(e.lastIndexOf(this.id) + this.id.length, e.length) : this.id.call(this, e)), e = this.src.replace("%id%", e), !1) : void 0
});
var g = {};
return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d
}
}
});
var S = function(a) {
var c = b.items.length;
return a > c - 1 ? a - c : 0 > a ? c + a : a
},
T = function(a, b, c) {
return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c)
};
a.magnificPopup.registerModule("gallery", {
options: {
enabled: !1,
arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',
preload: [0, 2],
navigateByImgClick: !0,
arrows: !0,
tPrev: "Previous (Left arrow key)",
tNext: "Next (Right arrow key)",
tCounter: "%curr% of %total%"
},
proto: {
initGallery: function() {
var c = b.st.gallery,
e = ".mfp-gallery";
return b.direction = !0, c && c.enabled ? (f += " mfp-gallery", w(m + e, function() {
c.navigateByImgClick && b.wrap.on("click" + e, ".mfp-img", function() {
return b.items.length > 1 ? (b.next(), !1) : void 0
}), d.on("keydown" + e, function(a) {
37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next()
})
}), w("UpdateStatus" + e, function(a, c) {
c.text && (c.text = T(c.text, b.currItem.index, b.items.length))
}), w(l + e, function(a, d, e, f) {
var g = b.items.length;
e.counter = g > 1 ? T(c.tCounter, f.index, g) : ""
}), w("BuildControls" + e, function() {
if (b.items.length > 1 && c.arrows && !b.arrowLeft) {
var d = c.arrowMarkup,
e = b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s),
f = b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s);
e.click(function() {
b.prev()
}), f.click(function() {
b.next()
}), b.container.append(e.add(f))
}
}), w(n + e, function() {
b._preloadTimeout && clearTimeout(b._preloadTimeout), b._preloadTimeout = setTimeout(function() {
b.preloadNearbyImages(), b._preloadTimeout = null
}, 16)
}), void w(h + e, function() {
d.off(e), b.wrap.off("click" + e), b.arrowRight = b.arrowLeft = null
})) : !1
},
next: function() {
b.direction = !0, b.index = S(b.index + 1), b.updateItemHTML()
},
prev: function() {
b.direction = !1, b.index = S(b.index - 1), b.updateItemHTML()
},
goTo: function(a) {
b.direction = a >= b.index, b.index = a, b.updateItemHTML()
},
preloadNearbyImages: function() {
var a, c = b.st.gallery.preload,
d = Math.min(c[0], b.items.length),
e = Math.min(c[1], b.items.length);
for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a);
for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a)
},
_preloadItem: function(c) {
if (c = S(c), !b.items[c].preloaded) {
var d = b.items[c];
d.parsed || (d = b.parseEl(c)), y("LazyLoad", d), "image" === d.type && (d.img = a('<img class="mfp-img" />').on("load.mfploader", function() {
d.hasSize = !0
}).on("error.mfploader", function() {
d.hasSize = !0, d.loadError = !0, y("LazyLoadError", d)
}).attr("src", d.src)), d.preloaded = !0
}
}
}
});
var U = "retina";
a.magnificPopup.registerModule(U, {
options: {
replaceSrc: function(a) {
return a.src.replace(/\.\w+$/, function(a) {
return "@2x" + a
})
},
ratio: 1
},
proto: {
initRetina: function() {
if (window.devicePixelRatio > 1) {
var a = b.st.retina,
c = a.ratio;
c = isNaN(c) ? c() : c, c > 1 && (w("ImageHasSize." + U, function(a, b) {
b.img.css({
"max-width": b.img[0].naturalWidth / c,
width: "100%"
})
}), w("ElementParse." + U, function(b, d) {
d.src = a.replaceSrc(d, c)
}))
}
}
}
}), A()
});

View File

@@ -0,0 +1,65 @@
/* jQuery Nice Select - v1.0
https://github.com/hernansartorio/jquery-nice-select
Made by Hernán Sartorio */
! function(e) {
e.fn.niceSelect = function(t) {
function s(t) {
t.after(e("<div></div>").addClass("nice-select").addClass(t.attr("class") || "").addClass(t.attr("disabled") ? "disabled" : "").attr("tabindex", t.attr("disabled") ? null : "0").html('<span class="current"></span><ul class="list"></ul>'));
var s = t.next(),
n = t.find("option"),
i = t.find("option:selected");
s.find(".current").html(i.data("display") || i.text()), n.each(function(t) {
var n = e(this),
i = n.data("display");
s.find("ul").append(e("<li></li>").attr("data-value", n.val()).attr("data-display", i || null).addClass("option" + (n.is(":selected") ? " selected" : "") + (n.is(":disabled") ? " disabled" : "")).html(n.text()))
})
}
if ("string" == typeof t) return "update" == t ? this.each(function() {
var t = e(this),
n = e(this).next(".nice-select"),
i = n.hasClass("open");
n.length && (n.remove(), s(t), i && t.next().trigger("click"))
}) : "destroy" == t ? (this.each(function() {
var t = e(this),
s = e(this).next(".nice-select");
s.length && (s.remove(), t.css("display", ""))
}), 0 == e(".nice-select").length && e(document).off(".nice_select")) : console.log('Method "' + t + '" does not exist.'), this;
this.hide(), this.each(function() {
var t = e(this);
t.next().hasClass("nice-select") || s(t)
}), e(document).off(".nice_select"), e(document).on("click.nice_select", ".nice-select", function(t) {
var s = e(this);
e(".nice-select").not(s).removeClass("open"), s.toggleClass("open"), s.hasClass("open") ? (s.find(".option"), s.find(".focus").removeClass("focus"), s.find(".selected").addClass("focus")) : s.focus()
}), e(document).on("click.nice_select", function(t) {
0 === e(t.target).closest(".nice-select").length && e(".nice-select").removeClass("open").find(".option")
}), e(document).on("click.nice_select", ".nice-select .option:not(.disabled)", function(t) {
var s = e(this),
n = s.closest(".nice-select");
n.find(".selected").removeClass("selected"), s.addClass("selected");
var i = s.data("display") || s.text();
n.find(".current").text(i), n.prev("select").val(s.data("value")).trigger("change")
}), e(document).on("keydown.nice_select", ".nice-select", function(t) {
var s = e(this),
n = e(s.find(".focus") || s.find(".list .option.selected"));
if (32 == t.keyCode || 13 == t.keyCode) return s.hasClass("open") ? n.trigger("click") : s.trigger("click"), !1;
if (40 == t.keyCode) {
if (s.hasClass("open")) {
var i = n.nextAll(".option:not(.disabled)").first();
i.length > 0 && (s.find(".focus").removeClass("focus"), i.addClass("focus"))
} else s.trigger("click");
return !1
}
if (38 == t.keyCode) {
if (s.hasClass("open")) {
var l = n.prevAll(".option:not(.disabled)").first();
l.length > 0 && (s.find(".focus").removeClass("focus"), l.addClass("focus"))
} else s.trigger("click");
return !1
}
if (27 == t.keyCode) s.hasClass("open") && s.trigger("click");
else if (9 == t.keyCode && s.hasClass("open")) return !1
});
var n = document.createElement("a").style;
return n.cssText = "pointer-events:auto", "auto" !== n.pointerEvents && e("html").addClass("no-csspointerevents"), this
}
}(jQuery);

View File

@@ -0,0 +1,431 @@
(function($) {
"use strict";
$(window).on('load', function() {
preloader();
wowAnimation();
});
// preloader
function preloader() {
$('#xb-loadding').delay().fadeOut();
};
// back to top - start
// --------------------------------------------------
$(window).scroll(function() {
if ($(this).scrollTop() > 500) {
$('.xb-backtotop').addClass('active');
} else {
$('.xb-backtotop').removeClass('active');
}
});
$(function() {
$(".scroll").on('click', function() {
$("html,body").animate({
scrollTop: 0
}, "slow");
return false
});
});
// back to top - end
// --------------------------------------------------
// sticky header
if ($('.stricky').length) {
$('.stricky').addClass('original').clone(true).insertAfter('.stricky').addClass('stricked-menu').removeClass('original');
}
$(window).on('scroll', function() {
if ($('.stricked-menu').length) {
var headerScrollPos = 100;
var stricky = $('.stricked-menu');
if ($(window).scrollTop() > headerScrollPos) {
stricky.addClass('stricky-fixed');
} else if ($(this).scrollTop() <= headerScrollPos) {
stricky.removeClass('stricky-fixed');
}
}
});
//=======================
// header search
$(".header-search-btn").on("click", function(e) {
e.preventDefault();
$(".header-search-form-wrapper").addClass("open");
$('.header-search-form-wrapper input[type="search"]').focus();
$('.body-overlay').addClass('active');
});
$(".xb-search-close").on("click", function(e) {
e.preventDefault();
$(".header-search-form-wrapper").removeClass("open");
$("body").removeClass("active");
$('.body-overlay').removeClass('active');
});
// sidebar info start
// --------------------------------------------------
$('.sidebar-menu-close, .body-overlay').on('click', function() {
$('.offcanvas-sidebar').removeClass('active');
$('.body-overlay').removeClass('active');
});
$('.offcanvas-sidebar-btn').on('click', function() {
$('.offcanvas-sidebar').addClass('active');
$('.body-overlay').addClass('active');
});
$('.body-overlay').on('click', function() {
$(this).removeClass('active');
$(".header-search-form-wrapper").removeClass("open");
});
// mobile menu
// --------------------------------------------------
$('.xb-nav-hidden li.menu-item-has-children > a').append('<span class="xb-menu-toggle"></span>');
$('.xb-header-menu li.menu-item-has-children, .xb-menu-primary li.menu-item-has-children').append('<span class="xb-menu-toggle"></span>');
$('.xb-menu-toggle').on('click', function() {
if (!$(this).hasClass('active')) {
$(this).closest('ul').find('.xb-menu-toggle.active').toggleClass('active');
$(this).closest('ul').find('.sub-menu.active').toggleClass('active').slideToggle();
}
$(this).toggleClass('active');
$(this).closest('.menu-item').find('> .sub-menu').toggleClass('active');
$(this).closest('.menu-item').find('> .sub-menu').slideToggle();
});
$('.xb-nav-hidden li.menu-item-has-children > a').click(function(e) {
var target = $(e.target);
if ($(this).attr('href') === '#' && !(target.is('.xb-menu-toggle'))) {
e.stopPropagation();
if (!$(this).find('.xb-menu-toggle').hasClass('active')) {
$(this).closest('ul').find('.xb-menu-toggle.active').toggleClass('active');
$(this).closest('ul').find('.sub-menu.active').toggleClass('active').slideToggle();
}
$(this).find('.xb-menu-toggle').toggleClass('active');
$(this).closest('.menu-item').find('> .sub-menu').toggleClass('active');
$(this).closest('.menu-item').find('> .sub-menu').slideToggle();
}
});
$(".xb-nav-mobile").on('click', function() {
$(this).toggleClass('active');
$('.xb-header-menu').toggleClass('active');
});
$(".xb-menu-close, .xb-header-menu-backdrop").on('click', function() {
$(this).removeClass('active');
$('.xb-header-menu').removeClass('active');
});
/* End Menu Mobile */
//data background
$("[data-background]").each(function() {
$(this).css("background-image", "url(" + $(this).attr("data-background") + ") ")
})
// data bg color
$("[data-bg-color]").each(function() {
$(this).css("background-color", $(this).attr("data-bg-color"));
});
function wowAnimation() {
var wow = new WOW({
boxClass: 'wow',
animateClass: 'animated',
offset: 0,
mobile: false,
live: true
});
wow.init();
}
// xbo counter start
function xboActive($scope, $) {
if ($(".xbo").length) {
$('.xbo').appear();
$(document.body).on('appear', '.xbo', function(e) {
var odo = $(".xbo");
odo.each(function() {
var countNumber = $(this).attr("data-count");
$(this).html(countNumber);
});
window.xboOptions = {
format: 'd',
};
});
}
}
// xbo counter end
// isotop
function isotopActive($scope, $) {
$('.grid').imagesLoaded(function() {
// init Isotope
var $grid = $('.grid').isotope({
itemSelector: '.grid-item',
percentPosition: true,
masonry: {
// use outer width of grid-sizer for columnWidth
columnWidth: '.grid-item',
}
});
});
}
// post gallery slider
var slider = new Swiper('.post-gallery-slider', {
spaceBetween: 0,
slidesPerView: 1,
centeredSlides: true,
roundLengths: true,
loop: true,
loopAdditionalSlides: 30,
autoplay: {
enabled: true,
delay: 6000
},
navigation: {
nextEl: ".post-gallery-button-next",
prevEl: ".post-gallery-button-prev",
},
speed: 400,
});
var slider = new Swiper('.brand-slider .swiper-container', {
slidesPerView: 'auto', // important for custom widths
loop: true,
centeredSlides: true,
loopAdditionalSlides: 30,
watchSlidesVisibility: true,
slideVisibleClass: 'swiper-slide-visible',
autoplay: {
delay: 6000,
},
speed: 400,
spaceBetween: 20, // spacing between slides
breakpoints: {
1600: { slidesPerView: 'auto' },
1200: { slidesPerView: 'auto' },
992: { slidesPerView: 'auto', centeredSlides: false },
768: { slidesPerView: 'auto', centeredSlides: false },
576: { slidesPerView: 'auto', centeredSlides: false },
0: { slidesPerView: 'auto' },
},
});
// testimonial slider
function testimonialActive($scope, $) {
var slider = new Swiper('.xb-testimonial-slider', {
spaceBetween: 34,
slidesPerView: 2,
roundLengths: true,
loop: true,
loopAdditionalSlides: 30,
watchSlidesVisibility: true,
slideVisibleClass: 'swiper-slide-visible',
navigation: {
nextEl: ".tm-button-next",
prevEl: ".tm-button-prev",
},
autoplay: {
enabled: true,
delay: 6000
},
speed: 400,
breakpoints: {
'1600': {
slidesPerView: 2,
},
'1200': {
slidesPerView: 2,
},
'992': {
slidesPerView: 2,
},
'768': {
slidesPerView: 2,
},
'576': {
slidesPerView: 2,
},
'0': {
slidesPerView: 1,
},
},
});
}
// testimonial slider
function testimonialActiveV3($scope, $) {
var slider = new Swiper('.xb-testimonial-slider2', {
spaceBetween: 30,
slidesPerView: 3,
roundLengths: true,
loop: true,
loopAdditionalSlides: 30,
watchSlidesVisibility: true,
autoplay: {
enabled: true,
delay: 6000
},
speed: 400,
breakpoints: {
'1600': {
slidesPerView: 3,
},
'1200': {
slidesPerView: 3,
},
'992': {
slidesPerView: 2,
},
'768': {
slidesPerView: 2,
},
'576': {
slidesPerView: 2,
},
'0': {
slidesPerView: 1,
},
},
});
}
// country slider
function countryActive($scope, $) {
var slider = new Swiper('.xb-country-slide', {
slidesPerView: 6,
roundLengths: true,
loop: true,
loopAdditionalSlides: 30,
watchSlidesVisibility: true,
slideVisibleClass: 'swiper-slide-visible',
autoplay: {
enabled: true,
delay: 6000
},
speed: 400,
breakpoints: {
'1600': {
slidesPerView: 6,
},
'1200': {
slidesPerView: 6,
},
'992': {
slidesPerView: 5,
},
'768': {
slidesPerView: 4,
},
'576': {
slidesPerView: 3,
},
'0': {
slidesPerView: 2,
},
},
});
}
// category slider
function categoryActive($scope, $) {
var slider = new Swiper('.xb-category-slider', {
spaceBetween: 30,
slidesPerView: 7,
roundLengths: true,
loop: true,
loopAdditionalSlides: 30,
watchSlidesVisibility: true,
autoplay: {
enabled: true,
delay: 6000
},
speed: 400,
breakpoints: {
'1600': {
slidesPerView: 7,
},
'1200': {
slidesPerView: 6,
},
'992': {
slidesPerView: 5,
},
'768': {
slidesPerView: 4,
},
'576': {
slidesPerView: 3,
},
'0': {
slidesPerView: 2,
},
},
});
}
// nice select
$('.nice-select').niceSelect();
/* magnificPopup img view */
$('.popup-image').magnificPopup({
type: 'image',
gallery: {
enabled: true
}
});
/* magnificPopup video view */
$('.popup-video').magnificPopup({
type: 'iframe',
mainClass: 'mfp-zoom-in',
});
// Accordion Box start
if ($(".accordion_box").length) {
$(".accordion_box").on("click", ".acc-btn", function() {
var outerBox = $(this).parents(".accordion_box");
var target = $(this).parents(".accordion");
if ($(this).next(".acc_body").is(":visible")) {
$(this).removeClass("active");
$(this).next(".acc_body").slideUp(300);
$(outerBox).children(".accordion").removeClass("active-block");
} else {
$(outerBox).find(".accordion .acc-btn").removeClass("active");
$(this).addClass("active");
$(outerBox).children(".accordion").removeClass("active-block");
$(outerBox).find(".accordion").children(".acc_body").slideUp(300);
target.addClass("active-block");
$(this).next(".acc_body").slideDown(300);
}
});
}
// Accordion Box end
// datepicker
$(".datepicker").datepicker();
$(window).on('elementor/frontend/init', function() {
elementorFrontend.hooks.addAction('frontend/element_ready/int-brand.default', brandActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-funfact.default', xboActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-testimonial.default', testimonialActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-funfact-v2.default', xboActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-country-v2.default', countryActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-categories.default', categoryActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-testimonial-v3.default', testimonialActiveV3);
elementorFrontend.hooks.addAction('frontend/element_ready/int-funfact-v3.default', xboActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-blog-v4.default', testimonialActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-brand-v3.default', categoryActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-skills.default', xboActive);
elementorFrontend.hooks.addAction('frontend/element_ready/int-testimonial-v4.default', isotopActive);
});
})(jQuery);

View File

@@ -0,0 +1,195 @@
/*! xbo 0.4.8 */
(function() {
var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G = [].slice;
q = '<span class="xbo-value"></span>', n = '<span class="xbo-ribbon"><span class="xbo-ribbon-inner">' + q + "</span></span>", d = '<span class="xbo-digit"><span class="xbo-digit-spacer">8</span><span class="xbo-digit-inner">' + n + "</span></span>", g = '<span class="xbo-formatting-mark"></span>', c = "(,ddd).dd", h = /^\(?([^)]*)\)?(?:(.)(d+))?$/, i = 30, f = 2e3, a = 20, j = 2, e = .5, k = 1e3 / i, b = 1e3 / a, o = "transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd", y = document.createElement("div").style, p = null != y.transition || null != y.webkitTransition || null != y.mozTransition || null != y.oTransition, w = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame, l = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver, s = function(a) {
var b;
return b = document.createElement("div"), b.innerHTML = a, b.children[0]
}, v = function(a, b) {
return a.className = a.className.replace(new RegExp("(^| )" + b.split(" ").join("|") + "( |$)", "gi"), " ")
}, r = function(a, b) {
return v(a, b), a.className += " " + b
}, z = function(a, b) {
var c;
return null != document.createEvent ? (c = document.createEvent("HTMLEvents"), c.initEvent(b, !0, !0), a.dispatchEvent(c)) : void 0
}, u = function() {
var a, b;
return null != (a = null != (b = window.performance) && "function" == typeof b.now ? b.now() : void 0) ? a : +new Date
}, x = function(a, b) {
return null == b && (b = 0), b ? (a *= Math.pow(10, b), a += .5, a = Math.floor(a), a /= Math.pow(10, b)) : Math.round(a)
}, A = function(a) {
return 0 > a ? Math.ceil(a) : Math.floor(a)
}, t = function(a) {
return a - x(a)
}, C = !1, (B = function() {
var a, b, c, d, e;
if (!C && null != window.jQuery) {
for (C = !0, d = ["html", "text"], e = [], b = 0, c = d.length; c > b; b++) a = d[b], e.push(function(a) {
var b;
return b = window.jQuery.fn[a], window.jQuery.fn[a] = function(a) {
var c;
return null == a || null == (null != (c = this[0]) ? c.xbo : void 0) ? b.apply(this, arguments) : this[0].xbo.update(a)
}
}(a));
return e
}
})(), setTimeout(B, 0), m = function() {
function a(b) {
var c, d, e, g, h, i, l, m, n, o, p = this;
if (this.options = b, this.el = this.options.el, null != this.el.xbo) return this.el.xbo;
this.el.xbo = this, m = a.options;
for (d in m) g = m[d], null == this.options[d] && (this.options[d] = g);
null == (h = this.options).duration && (h.duration = f), this.MAX_VALUES = this.options.duration / k / j | 0, this.resetFormat(), this.value = this.cleanValue(null != (n = this.options.value) ? n : ""), this.renderInside(), this.render();
try {
for (o = ["innerHTML", "innerText", "textContent"], i = 0, l = o.length; l > i; i++) e = o[i], null != this.el[e] && ! function(a) {
return Object.defineProperty(p.el, a, {
get: function() {
var b;
return "innerHTML" === a ? p.inside.outerHTML : null != (b = p.inside.innerText) ? b : p.inside.textContent
},
set: function(a) {
return p.update(a)
}
})
}(e)
} catch (q) {
c = q, this.watchForMutations()
}
}
return a.prototype.renderInside = function() {
return this.inside = document.createElement("div"), this.inside.className = "xbo-inside", this.el.innerHTML = "", this.el.appendChild(this.inside)
}, a.prototype.watchForMutations = function() {
var a, b = this;
if (null != l) try {
return null == this.observer && (this.observer = new l(function(a) {
var c;
return c = b.el.innerText, b.renderInside(), b.render(b.value), b.update(c)
})), this.watchMutations = !0, this.startWatchingMutations()
} catch (c) {
a = c
}
}, a.prototype.startWatchingMutations = function() {
return this.watchMutations ? this.observer.observe(this.el, {
childList: !0
}) : void 0
}, a.prototype.stopWatchingMutations = function() {
var a;
return null != (a = this.observer) ? a.disconnect() : void 0
}, a.prototype.cleanValue = function(a) {
var b;
return "string" == typeof a && (a = a.replace(null != (b = this.format.radix) ? b : ".", "<radix>"), a = a.replace(/[.,]/g, ""), a = a.replace("<radix>", "."), a = parseFloat(a, 10) || 0), x(a, this.format.precision)
}, a.prototype.bindTransitionEnd = function() {
var a, b, c, d, e, f, g = this;
if (!this.transitionEndBound) {
for (this.transitionEndBound = !0, b = !1, e = o.split(" "), f = [], c = 0, d = e.length; d > c; c++) a = e[c], f.push(this.el.addEventListener(a, function() {
return b ? !0 : (b = !0, setTimeout(function() {
return g.render(), b = !1, z(g.el, "xbodone")
}, 0), !0)
}, !1));
return f
}
}, a.prototype.resetFormat = function() {
var a, b, d, e, f, g, i, j;
if (a = null != (i = this.options.format) ? i : c, a || (a = "d"), d = h.exec(a), !d) throw new Error("Odometer: Unparsable digit format");
return j = d.slice(1, 4), g = j[0], f = j[1], b = j[2], e = (null != b ? b.length : void 0) || 0, this.format = {
repeating: g,
radix: f,
precision: e
}
}, a.prototype.render = function(a) {
var b, c, d, e, f, g, h;
for (null == a && (a = this.value), this.stopWatchingMutations(), this.resetFormat(), this.inside.innerHTML = "", f = this.options.theme, b = this.el.className.split(" "), e = [], g = 0, h = b.length; h > g; g++) c = b[g], c.length && ((d = /^xbo-theme-(.+)$/.exec(c)) ? f = d[1] : /^xbo(-|$)/.test(c) || e.push(c));
return e.push("xbo"), p || e.push("xbo-no-transitions"), f ? e.push("xbo-theme-" + f) : e.push("xbo-auto-theme"), this.el.className = e.join(" "), this.ribbons = {}, this.formatDigits(a), this.startWatchingMutations()
}, a.prototype.formatDigits = function(a) {
var b, c, d, e, f, g, h, i, j, k;
if (this.digits = [], this.options.formatFunction)
for (d = this.options.formatFunction(a), j = d.split("").reverse(), f = 0, h = j.length; h > f; f++) c = j[f], c.match(/0-9/) ? (b = this.renderDigit(), b.querySelector(".xbo-value").innerHTML = c, this.digits.push(b), this.insertDigit(b)) : this.addSpacer(c);
else
for (e = !this.format.precision || !t(a) || !1, k = a.toString().split("").reverse(), g = 0, i = k.length; i > g; g++) b = k[g], "." === b && (e = !0), this.addDigit(b, e)
}, a.prototype.update = function(a) {
var b, c = this;
return a = this.cleanValue(a), (b = a - this.value) ? (v(this.el, "xbo-animating-up xbo-animating-down xbo-animating"), b > 0 ? r(this.el, "xbo-animating-up") : r(this.el, "xbo-animating-down"), this.stopWatchingMutations(), this.animate(a), this.startWatchingMutations(), setTimeout(function() {
return c.el.offsetHeight, r(c.el, "xbo-animating")
}, 0), this.value = a) : void 0
}, a.prototype.renderDigit = function() {
return s(d)
}, a.prototype.insertDigit = function(a, b) {
return null != b ? this.inside.insertBefore(a, b) : this.inside.children.length ? this.inside.insertBefore(a, this.inside.children[0]) : this.inside.appendChild(a)
}, a.prototype.addSpacer = function(a, b, c) {
var d;
return d = s(g), d.innerHTML = a, c && r(d, c), this.insertDigit(d, b)
}, a.prototype.addDigit = function(a, b) {
var c, d, e, f;
if (null == b && (b = !0), "-" === a) return this.addSpacer(a, null, "xbo-negation-mark");
if ("." === a) return this.addSpacer(null != (f = this.format.radix) ? f : ".", null, "xbo-radix-mark");
if (b)
for (e = !1;;) {
if (!this.format.repeating.length) {
if (e) throw new Error("Bad xbo format without digits");
this.resetFormat(), e = !0
}
if (c = this.format.repeating[this.format.repeating.length - 1], this.format.repeating = this.format.repeating.substring(0, this.format.repeating.length - 1), "d" === c) break;
this.addSpacer(c)
}
return d = this.renderDigit(), d.querySelector(".xbo-value").innerHTML = a, this.digits.push(d), this.insertDigit(d)
}, a.prototype.animate = function(a) {
return p && "count" !== this.options.animation ? this.animateSlide(a) : this.animateCount(a)
}, a.prototype.animateCount = function(a) {
var c, d, e, f, g, h = this;
if (d = +a - this.value) return f = e = u(), c = this.value, (g = function() {
var i, j, k;
return u() - f > h.options.duration ? (h.value = a, h.render(), void z(h.el, "xbodone")) : (i = u() - e, i > b && (e = u(), k = i / h.options.duration, j = d * k, c += j, h.render(Math.round(c))), null != w ? w(g) : setTimeout(g, b))
})()
}, a.prototype.getDigitCount = function() {
var a, b, c, d, e, f;
for (d = 1 <= arguments.length ? G.call(arguments, 0) : [], a = e = 0, f = d.length; f > e; a = ++e) c = d[a], d[a] = Math.abs(c);
return b = Math.max.apply(Math, d), Math.ceil(Math.log(b + 1) / Math.log(10))
}, a.prototype.getFractionalDigitCount = function() {
var a, b, c, d, e, f, g;
for (e = 1 <= arguments.length ? G.call(arguments, 0) : [], b = /^\-?\d*\.(\d*?)0*$/, a = f = 0, g = e.length; g > f; a = ++f) d = e[a], e[a] = d.toString(), c = b.exec(e[a]), null == c ? e[a] = 0 : e[a] = c[1].length;
return Math.max.apply(Math, e)
}, a.prototype.resetDigits = function() {
return this.digits = [], this.ribbons = [], this.inside.innerHTML = "", this.resetFormat()
}, a.prototype.animateSlide = function(a) {
var b, c, d, f, g, h, i, j, k, l, m, n, o, p, q, s, t, u, v, w, x, y, z, B, C, D, E;
if (s = this.value, j = this.getFractionalDigitCount(s, a), j && (a *= Math.pow(10, j), s *= Math.pow(10, j)), d = a - s) {
for (this.bindTransitionEnd(), f = this.getDigitCount(s, a), g = [], b = 0, m = v = 0; f >= 0 ? f > v : v > f; m = f >= 0 ? ++v : --v) {
if (t = A(s / Math.pow(10, f - m - 1)), i = A(a / Math.pow(10, f - m - 1)), h = i - t, Math.abs(h) > this.MAX_VALUES) {
for (l = [], n = h / (this.MAX_VALUES + this.MAX_VALUES * b * e), c = t; h > 0 && i > c || 0 > h && c > i;) l.push(Math.round(c)), c += n;
l[l.length - 1] !== i && l.push(i), b++
} else l = function() {
E = [];
for (var a = t; i >= t ? i >= a : a >= i; i >= t ? a++ : a--) E.push(a);
return E
}.apply(this);
for (m = w = 0, y = l.length; y > w; m = ++w) k = l[m], l[m] = Math.abs(k % 10);
g.push(l)
}
for (this.resetDigits(), D = g.reverse(), m = x = 0, z = D.length; z > x; m = ++x)
for (l = D[m], this.digits[m] || this.addDigit(" ", m >= j), null == (u = this.ribbons)[m] && (u[m] = this.digits[m].querySelector(".xbo-ribbon-inner")), this.ribbons[m].innerHTML = "", 0 > d && (l = l.reverse()), o = C = 0, B = l.length; B > C; o = ++C) k = l[o], q = document.createElement("div"), q.className = "xbo-value", q.innerHTML = k, this.ribbons[m].appendChild(q), o === l.length - 1 && r(q, "xbo-last-value"), 0 === o && r(q, "xbo-first-value");
return 0 > t && this.addDigit("-"), p = this.inside.querySelector(".xbo-radix-mark"), null != p && p.parent.removeChild(p), j ? this.addSpacer(this.format.radix, this.digits[j - 1], "xbo-radix-mark") : void 0
}
}, a
}(), m.options = null != (E = window.xboOptions) ? E : {}, setTimeout(function() {
var a, b, c, d, e;
if (window.xboOptions) {
d = window.xboOptions, e = [];
for (a in d) b = d[a], e.push(null != (c = m.options)[a] ? (c = m.options)[a] : c[a] = b);
return e
}
}, 0), m.init = function() {
var a, b, c, d, e, f;
if (null != document.querySelectorAll) {
for (b = document.querySelectorAll(m.options.selector || ".xbo"), f = [], c = 0, d = b.length; d > c; c++) a = b[c], f.push(a.xbo = new m({
el: a,
value: null != (e = a.innerText) ? e : a.textContent
}));
return f
}
}, null != (null != (F = document.documentElement) ? F.doScroll : void 0) && null != document.createEventObject ? (D = document.onreadystatechange, document.onreadystatechange = function() {
return "complete" === document.readyState && m.options.auto !== !1 && m.init(), null != D ? D.apply(this, arguments) : void 0
}) : document.addEventListener("DOMContentLoaded", function() {
return m.options.auto !== !1 ? m.init() : void 0
}, !1), "function" == typeof define && define.amd ? define([], function() {
return m
}) : "undefined" != typeof exports && null !== exports ? module.exports = m : window.Odometer = m
}).call(this);

View File

@@ -0,0 +1,170 @@
(function($) {
"use strict";
$(function() {
ParallaxScroll.init();
});
var ParallaxScroll = {
showLogs: false,
round: 1000,
init: function() {
this._log("init");
if (this._inited) {
this._log("Already Inited");
this._inited = true;
return;
}
this._requestAnimationFrame = (function() {
return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function(callback, element) {
window.setTimeout(callback, 1000 / 60);
};
})();
this._onScroll(true);
},
_inited: false,
_properties: ['x', 'y', 'z', 'rotateX', 'rotateY', 'rotateZ', 'scaleX', 'scaleY', 'scaleZ', 'scale'],
_requestAnimationFrame: null,
_log: function(message) {
if (this.showLogs) console.log("Parallax Scroll / " + message);
},
_onScroll: function(noSmooth) {
var scroll = $(document).scrollTop();
var windowHeight = $(window).height();
this._log("onScroll " + scroll);
$("[data-parallax]").each($.proxy(function(index, el) {
var $el = $(el);
var properties = [];
var applyProperties = false;
var style = $el.data("style");
if (style == undefined) {
style = $el.attr("style") || "";
$el.data("style", style);
}
var datas = [$el.data("parallax")];
var iData;
for (iData = 2;; iData++) {
if ($el.data("parallax" + iData)) {
datas.push($el.data("parallax-" + iData));
} else {
break;
}
}
var datasLength = datas.length;
for (iData = 0; iData < datasLength; iData++) {
var data = datas[iData];
var scrollFrom = data["from-scroll"];
if (scrollFrom == undefined) scrollFrom = Math.max(0, $(el).offset().top - windowHeight);
scrollFrom = scrollFrom | 0;
var scrollDistance = data["distance"];
var scrollTo = data["to-scroll"];
if (scrollDistance == undefined && scrollTo == undefined) scrollDistance = windowHeight;
scrollDistance = Math.max(scrollDistance | 0, 1);
var easing = data["easing"];
var easingReturn = data["easing-return"];
if (easing == undefined || !$.easing || !$.easing[easing]) easing = null;
if (easingReturn == undefined || !$.easing || !$.easing[easingReturn]) easingReturn = easing;
if (easing) {
var totalTime = data["duration"];
if (totalTime == undefined) totalTime = scrollDistance;
totalTime = Math.max(totalTime | 0, 1);
var totalTimeReturn = data["duration-return"];
if (totalTimeReturn == undefined) totalTimeReturn = totalTime;
scrollDistance = 1;
var currentTime = $el.data("current-time");
if (currentTime == undefined) currentTime = 0;
}
if (scrollTo == undefined) scrollTo = scrollFrom + scrollDistance;
scrollTo = scrollTo | 0;
var smoothness = data["smoothness"];
if (smoothness == undefined) smoothness = 30;
smoothness = smoothness | 0;
if (noSmooth || smoothness == 0) smoothness = 1;
smoothness = smoothness | 0;
var scrollCurrent = scroll;
scrollCurrent = Math.max(scrollCurrent, scrollFrom);
scrollCurrent = Math.min(scrollCurrent, scrollTo);
if (easing) {
if ($el.data("sens") == undefined) $el.data("sens", "back");
if (scrollCurrent > scrollFrom) {
if ($el.data("sens") == "back") {
currentTime = 1;
$el.data("sens", "go");
} else {
currentTime++;
}
}
if (scrollCurrent < scrollTo) {
if ($el.data("sens") == "go") {
currentTime = 1;
$el.data("sens", "back");
} else {
currentTime++;
}
}
if (noSmooth) currentTime = totalTime;
$el.data("current-time", currentTime);
}
this._properties.map($.proxy(function(prop) {
var defaultProp = 0;
var to = data[prop];
if (to == undefined) return;
if (prop == "scale" || prop == "scaleX" || prop == "scaleY" || prop == "scaleZ") {
defaultProp = 1;
} else {
to = to | 0;
}
var prev = $el.data("_" + prop);
if (prev == undefined) prev = defaultProp;
var next = ((to - defaultProp) * ((scrollCurrent - scrollFrom) / (scrollTo - scrollFrom))) + defaultProp;
var val = prev + (next - prev) / smoothness;
if (easing && currentTime > 0 && currentTime <= totalTime) {
var from = defaultProp;
if ($el.data("sens") == "back") {
from = to;
to = -to;
easing = easingReturn;
totalTime = totalTimeReturn;
}
val = $.easing[easing](null, currentTime, from, to, totalTime);
}
val = Math.ceil(val * this.round) / this.round;
if (val == prev && next == to) val = to;
if (!properties[prop]) properties[prop] = 0;
properties[prop] += val;
if (prev != properties[prop]) {
$el.data("_" + prop, properties[prop]);
applyProperties = true;
}
}, this));
}
if (applyProperties) {
if (properties["z"] != undefined) {
var perspective = data["perspective"];
if (perspective == undefined) perspective = 800;
var $parent = $el.parent();
if (!$parent.data("style")) $parent.data("style", $parent.attr("style") || "");
$parent.attr("style", "perspective:" + perspective + "px; -webkit-perspective:" + perspective + "px; " + $parent.data("style"));
}
if (properties["scaleX"] == undefined) properties["scaleX"] = 1;
if (properties["scaleY"] == undefined) properties["scaleY"] = 1;
if (properties["scaleZ"] == undefined) properties["scaleZ"] = 1;
if (properties["scale"] != undefined) {
properties["scaleX"] *= properties["scale"];
properties["scaleY"] *= properties["scale"];
properties["scaleZ"] *= properties["scale"];
}
var translate3d = "translate3d(" + (properties["x"] ? properties["x"] : 0) + "px, " + (properties["y"] ? properties["y"] : 0) + "px, " + (properties["z"] ? properties["z"] : 0) + "px)";
var rotate3d = "rotateX(" + (properties["rotateX"] ? properties["rotateX"] : 0) + "deg) rotateY(" + (properties["rotateY"] ? properties["rotateY"] : 0) + "deg) rotateZ(" + (properties["rotateZ"] ? properties["rotateZ"] : 0) + "deg)";
var scale3d = "scaleX(" + properties["scaleX"] + ") scaleY(" + properties["scaleY"] + ") scaleZ(" + properties["scaleZ"] + ")";
var cssTransform = translate3d + " " + rotate3d + " " + scale3d + ";";
this._log(cssTransform);
$el.attr("style", "transform:" + cssTransform + " -webkit-transform:" + cssTransform + " " + style);
}
}, this));
if (window.requestAnimationFrame) {
window.requestAnimationFrame($.proxy(this._onScroll, this, false));
} else {
this._requestAnimationFrame($.proxy(this._onScroll, this, false));
}
}
};
})(window.jQuery);

View File

@@ -0,0 +1,526 @@
/**
* jQuery || Zepto Parallax Plugin
* @author Matthew Wagerfield - @wagerfield
* @description Creates a parallax effect between an array of layers,
* driving the motion from the gyroscope output of a smartdevice.
* If no gyroscope is available, the cursor position is used.
*/
;
(function($, window, document, undefined) {
// Strict Mode
'use strict';
// Constants
var NAME = 'parallax';
var MAGIC_NUMBER = 30;
var DEFAULTS = {
relativeInput: false,
clipRelativeInput: false,
calibrationThreshold: 100,
calibrationDelay: 500,
supportDelay: 500,
calibrateX: false,
calibrateY: true,
invertX: true,
invertY: true,
limitX: false,
limitY: false,
scalarX: 10.0,
scalarY: 10.0,
frictionX: 0.1,
frictionY: 0.1,
originX: 0.5,
originY: 0.5,
pointerEvents: true,
precision: 1
};
function Plugin(element, options) {
// DOM Context
this.element = element;
// Selections
this.$context = $(element).data('api', this);
this.$layers = this.$context.find('.layer');
// Data Extraction
var data = {
calibrateX: this.$context.data('calibrate-x') || null,
calibrateY: this.$context.data('calibrate-y') || null,
invertX: this.$context.data('invert-x') || null,
invertY: this.$context.data('invert-y') || null,
limitX: parseFloat(this.$context.data('limit-x')) || null,
limitY: parseFloat(this.$context.data('limit-y')) || null,
scalarX: parseFloat(this.$context.data('scalar-x')) || null,
scalarY: parseFloat(this.$context.data('scalar-y')) || null,
frictionX: parseFloat(this.$context.data('friction-x')) || null,
frictionY: parseFloat(this.$context.data('friction-y')) || null,
originX: parseFloat(this.$context.data('origin-x')) || null,
originY: parseFloat(this.$context.data('origin-y')) || null,
pointerEvents: this.$context.data('pointer-events') || true,
precision: parseFloat(this.$context.data('precision')) || 1
};
// Delete Null Data Values
for (var key in data) {
if (data[key] === null) delete data[key];
}
// Compose Settings Object
$.extend(this, DEFAULTS, options, data);
// States
this.calibrationTimer = null;
this.calibrationFlag = true;
this.enabled = false;
this.depthsX = [];
this.depthsY = [];
this.raf = null;
// Element Bounds
this.bounds = null;
this.ex = 0;
this.ey = 0;
this.ew = 0;
this.eh = 0;
// Element Center
this.ecx = 0;
this.ecy = 0;
// Element Range
this.erx = 0;
this.ery = 0;
// Calibration
this.cx = 0;
this.cy = 0;
// Input
this.ix = 0;
this.iy = 0;
// Motion
this.mx = 0;
this.my = 0;
// Velocity
this.vx = 0;
this.vy = 0;
// Callbacks
this.onMouseMove = this.onMouseMove.bind(this);
this.onDeviceOrientation = this.onDeviceOrientation.bind(this);
this.onOrientationTimer = this.onOrientationTimer.bind(this);
this.onCalibrationTimer = this.onCalibrationTimer.bind(this);
this.onAnimationFrame = this.onAnimationFrame.bind(this);
this.onWindowResize = this.onWindowResize.bind(this);
// Initialise
this.initialise();
}
Plugin.prototype.transformSupport = function(value) {
var element = document.createElement('div');
var propertySupport = false;
var propertyValue = null;
var featureSupport = false;
var cssProperty = null;
var jsProperty = null;
for (var i = 0, l = this.vendors.length; i < l; i++) {
if (this.vendors[i] !== null) {
cssProperty = this.vendors[i][0] + 'transform';
jsProperty = this.vendors[i][1] + 'Transform';
} else {
cssProperty = 'transform';
jsProperty = 'transform';
}
if (element.style[jsProperty] !== undefined) {
propertySupport = true;
break;
}
}
switch (value) {
case '2D':
featureSupport = propertySupport;
break;
case '3D':
if (propertySupport) {
var body = document.body || document.createElement('body');
var documentElement = document.documentElement;
var documentOverflow = documentElement.style.overflow;
var isCreatedBody = false;
if (!document.body) {
isCreatedBody = true;
documentElement.style.overflow = 'hidden';
documentElement.appendChild(body);
body.style.overflow = 'hidden';
body.style.background = '';
}
body.appendChild(element);
element.style[jsProperty] = 'translate3d(1px,1px,1px)';
propertyValue = window.getComputedStyle(element).getPropertyValue(cssProperty);
featureSupport = propertyValue !== undefined && propertyValue.length > 0 && propertyValue !== "none";
documentElement.style.overflow = documentOverflow;
body.removeChild(element);
if (isCreatedBody) {
body.removeAttribute('style');
body.parentNode.removeChild(body);
}
}
break;
}
return featureSupport;
};
Plugin.prototype.ww = null;
Plugin.prototype.wh = null;
Plugin.prototype.wcx = null;
Plugin.prototype.wcy = null;
Plugin.prototype.wrx = null;
Plugin.prototype.wry = null;
Plugin.prototype.portrait = null;
Plugin.prototype.desktop = !navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry|BB10|mobi|tablet|opera mini|nexus 7)/i);
Plugin.prototype.vendors = [null, ['-webkit-', 'webkit'],
['-moz-', 'Moz'],
['-o-', 'O'],
['-ms-', 'ms']
];
Plugin.prototype.motionSupport = !!window.DeviceMotionEvent;
Plugin.prototype.orientationSupport = !!window.DeviceOrientationEvent;
Plugin.prototype.orientationStatus = 0;
Plugin.prototype.transform2DSupport = Plugin.prototype.transformSupport('2D');
Plugin.prototype.transform3DSupport = Plugin.prototype.transformSupport('3D');
Plugin.prototype.propertyCache = {};
Plugin.prototype.initialise = function() {
// Configure Styles
if (this.$context.css('position') === 'static') {
this.$context.css({
position: 'relative'
});
}
// Pointer events
if (!this.pointerEvents) {
this.$context.css({
pointerEvents: 'none'
});
}
// Hardware Accelerate Context
this.accelerate(this.$context);
// Setup
this.updateLayers();
this.updateDimensions();
this.enable();
this.queueCalibration(this.calibrationDelay);
};
Plugin.prototype.updateLayers = function() {
// Cache Layer Elements
this.$layers = this.$context.find('.layer');
this.depthsX = [];
this.depthsY = [];
// Configure Layer Styles
this.$layers.css({
position: 'absolute',
display: 'block',
left: 0,
top: 0
});
this.$layers.first().css({
position: 'relative'
});
// Hardware Accelerate Layers
this.accelerate(this.$layers);
// Cache Depths
this.$layers.each($.proxy(function(index, element) {
//Graceful fallback on depth if depth-x or depth-y is absent
var depth = $(element).data('depth') || 0;
this.depthsX.push($(element).data('depth-x') || depth);
this.depthsY.push($(element).data('depth-y') || depth);
}, this));
};
Plugin.prototype.updateDimensions = function() {
this.ww = window.innerWidth;
this.wh = window.innerHeight;
this.wcx = this.ww * this.originX;
this.wcy = this.wh * this.originY;
this.wrx = Math.max(this.wcx, this.ww - this.wcx);
this.wry = Math.max(this.wcy, this.wh - this.wcy);
};
Plugin.prototype.updateBounds = function() {
this.bounds = this.element.getBoundingClientRect();
this.ex = this.bounds.left;
this.ey = this.bounds.top;
this.ew = this.bounds.width;
this.eh = this.bounds.height;
this.ecx = this.ew * this.originX;
this.ecy = this.eh * this.originY;
this.erx = Math.max(this.ecx, this.ew - this.ecx);
this.ery = Math.max(this.ecy, this.eh - this.ecy);
};
Plugin.prototype.queueCalibration = function(delay) {
clearTimeout(this.calibrationTimer);
this.calibrationTimer = setTimeout(this.onCalibrationTimer, delay);
};
Plugin.prototype.enable = function() {
if (!this.enabled) {
this.enabled = true;
if (this.orientationSupport) {
this.portrait = null;
window.addEventListener('deviceorientation', this.onDeviceOrientation);
setTimeout(this.onOrientationTimer, this.supportDelay);
} else {
this.cx = 0;
this.cy = 0;
this.portrait = false;
window.addEventListener('mousemove', this.onMouseMove);
}
window.addEventListener('resize', this.onWindowResize);
this.raf = requestAnimationFrame(this.onAnimationFrame);
}
};
Plugin.prototype.disable = function() {
if (this.enabled) {
this.enabled = false;
if (this.orientationSupport) {
window.removeEventListener('deviceorientation', this.onDeviceOrientation);
} else {
window.removeEventListener('mousemove', this.onMouseMove);
}
window.removeEventListener('resize', this.onWindowResize);
cancelAnimationFrame(this.raf);
}
};
Plugin.prototype.calibrate = function(x, y) {
this.calibrateX = x === undefined ? this.calibrateX : x;
this.calibrateY = y === undefined ? this.calibrateY : y;
};
Plugin.prototype.invert = function(x, y) {
this.invertX = x === undefined ? this.invertX : x;
this.invertY = y === undefined ? this.invertY : y;
};
Plugin.prototype.friction = function(x, y) {
this.frictionX = x === undefined ? this.frictionX : x;
this.frictionY = y === undefined ? this.frictionY : y;
};
Plugin.prototype.scalar = function(x, y) {
this.scalarX = x === undefined ? this.scalarX : x;
this.scalarY = y === undefined ? this.scalarY : y;
};
Plugin.prototype.limit = function(x, y) {
this.limitX = x === undefined ? this.limitX : x;
this.limitY = y === undefined ? this.limitY : y;
};
Plugin.prototype.origin = function(x, y) {
this.originX = x === undefined ? this.originX : x;
this.originY = y === undefined ? this.originY : y;
};
Plugin.prototype.clamp = function(value, min, max) {
value = Math.max(value, min);
value = Math.min(value, max);
return value;
};
Plugin.prototype.css = function(element, property, value) {
var jsProperty = this.propertyCache[property];
if (!jsProperty) {
for (var i = 0, l = this.vendors.length; i < l; i++) {
if (this.vendors[i] !== null) {
jsProperty = $.camelCase(this.vendors[i][1] + '-' + property);
} else {
jsProperty = property;
}
if (element.style[jsProperty] !== undefined) {
this.propertyCache[property] = jsProperty;
break;
}
}
}
element.style[jsProperty] = value;
};
Plugin.prototype.accelerate = function($element) {
for (var i = 0, l = $element.length; i < l; i++) {
var element = $element[i];
this.css(element, 'transform', 'translate3d(0,0,0)');
this.css(element, 'transform-style', 'preserve-3d');
this.css(element, 'backface-visibility', 'hidden');
}
};
Plugin.prototype.setPosition = function(element, x, y) {
x += 'px';
y += 'px';
if (this.transform3DSupport) {
this.css(element, 'transform', 'translate3d(' + x + ',' + y + ',0)');
} else if (this.transform2DSupport) {
this.css(element, 'transform', 'translate(' + x + ',' + y + ')');
} else {
element.style.left = x;
element.style.top = y;
}
};
Plugin.prototype.onOrientationTimer = function(event) {
if (this.orientationSupport && this.orientationStatus === 0) {
this.disable();
this.orientationSupport = false;
this.enable();
}
};
Plugin.prototype.onCalibrationTimer = function(event) {
this.calibrationFlag = true;
};
Plugin.prototype.onWindowResize = function(event) {
this.updateDimensions();
};
Plugin.prototype.onAnimationFrame = function() {
this.updateBounds();
var dx = this.ix - this.cx;
var dy = this.iy - this.cy;
if ((Math.abs(dx) > this.calibrationThreshold) || (Math.abs(dy) > this.calibrationThreshold)) {
this.queueCalibration(0);
}
if (this.portrait) {
this.mx = this.calibrateX ? dy : this.iy;
this.my = this.calibrateY ? dx : this.ix;
} else {
this.mx = this.calibrateX ? dx : this.ix;
this.my = this.calibrateY ? dy : this.iy;
}
this.mx *= this.ew * (this.scalarX / 100);
this.my *= this.eh * (this.scalarY / 100);
if (!isNaN(parseFloat(this.limitX))) {
this.mx = this.clamp(this.mx, -this.limitX, this.limitX);
}
if (!isNaN(parseFloat(this.limitY))) {
this.my = this.clamp(this.my, -this.limitY, this.limitY);
}
this.vx += (this.mx - this.vx) * this.frictionX;
this.vy += (this.my - this.vy) * this.frictionY;
for (var i = 0, l = this.$layers.length; i < l; i++) {
var depthX = this.depthsX[i];
var depthY = this.depthsY[i];
var layer = this.$layers[i];
var xOffset = this.vx * (depthX * (this.invertX ? -1 : 1));
var yOffset = this.vy * (depthY * (this.invertY ? -1 : 1));
this.setPosition(layer, xOffset, yOffset);
}
this.raf = requestAnimationFrame(this.onAnimationFrame);
};
Plugin.prototype.onDeviceOrientation = function(event) {
// Validate environment and event properties.
if (!this.desktop && event.beta !== null && event.gamma !== null) {
// Set orientation status.
this.orientationStatus = 1;
// Extract Rotation
var x = (event.beta || 0) / MAGIC_NUMBER; // -90 :: 90
var y = (event.gamma || 0) / MAGIC_NUMBER; // -180 :: 180
// Detect Orientation Change
var portrait = window.innerHeight > window.innerWidth;
if (this.portrait !== portrait) {
this.portrait = portrait;
this.calibrationFlag = true;
}
// Set Calibration
if (this.calibrationFlag) {
this.calibrationFlag = false;
this.cx = x;
this.cy = y;
}
// Set Input
this.ix = x;
this.iy = y;
}
};
Plugin.prototype.onMouseMove = function(event) {
// Cache mouse coordinates.
var clientX = event.clientX;
var clientY = event.clientY;
// Calculate Mouse Input
if (!this.orientationSupport && this.relativeInput) {
// Clip mouse coordinates inside element bounds.
if (this.clipRelativeInput) {
clientX = Math.max(clientX, this.ex);
clientX = Math.min(clientX, this.ex + this.ew);
clientY = Math.max(clientY, this.ey);
clientY = Math.min(clientY, this.ey + this.eh);
}
// Calculate input relative to the element.
this.ix = (clientX - this.ex - this.ecx) / this.erx;
this.iy = (clientY - this.ey - this.ecy) / this.ery;
} else {
// Calculate input relative to the window.
this.ix = (clientX - this.wcx) / this.wrx;
this.iy = (clientY - this.wcy) / this.wry;
}
};
var API = {
enable: Plugin.prototype.enable,
disable: Plugin.prototype.disable,
updateLayers: Plugin.prototype.updateLayers,
calibrate: Plugin.prototype.calibrate,
friction: Plugin.prototype.friction,
invert: Plugin.prototype.invert,
scalar: Plugin.prototype.scalar,
limit: Plugin.prototype.limit,
origin: Plugin.prototype.origin
};
$.fn[NAME] = function(value) {
var args = arguments;
return this.each(function() {
var $this = $(this);
var plugin = $this.data(NAME);
if (!plugin) {
plugin = new Plugin(this, value);
$this.data(NAME, plugin);
}
if (API[value]) {
plugin[value].apply(plugin, Array.prototype.slice.call(args, 1));
}
});
};
})(window.jQuery || window.Zepto, window, document);

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,192 @@
/*! WOW - v1.1.3 - 2016-05-06
* Copyright (c) 2016 Matthieu Aussaguel;*/
(function() {
var a, b, c, d, e, f = function(a, b) {
return function() {
return a.apply(b, arguments)
}
},
g = [].indexOf || function(a) {
for (var b = 0, c = this.length; c > b; b++)
if (b in this && this[b] === a) return b;
return -1
};
b = function() {
function a() {}
return a.prototype.extend = function(a, b) {
var c, d;
for (c in b) d = b[c], null == a[c] && (a[c] = d);
return a
}, a.prototype.isMobile = function(a) {
return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)
}, a.prototype.createEvent = function(a, b, c, d) {
var e;
return null == b && (b = !1), null == c && (c = !1), null == d && (d = null), null != document.createEvent ? (e = document.createEvent("CustomEvent"), e.initCustomEvent(a, b, c, d)) : null != document.createEventObject ? (e = document.createEventObject(), e.eventType = a) : e.eventName = a, e
}, a.prototype.emitEvent = function(a, b) {
return null != a.dispatchEvent ? a.dispatchEvent(b) : b in (null != a) ? a[b]() : "on" + b in (null != a) ? a["on" + b]() : void 0
}, a.prototype.addEvent = function(a, b, c) {
return null != a.addEventListener ? a.addEventListener(b, c, !1) : null != a.attachEvent ? a.attachEvent("on" + b, c) : a[b] = c
}, a.prototype.removeEvent = function(a, b, c) {
return null != a.removeEventListener ? a.removeEventListener(b, c, !1) : null != a.detachEvent ? a.detachEvent("on" + b, c) : delete a[b]
}, a.prototype.innerHeight = function() {
return "innerHeight" in window ? window.innerHeight : document.documentElement.clientHeight
}, a
}(), c = this.WeakMap || this.MozWeakMap || (c = function() {
function a() {
this.keys = [], this.values = []
}
return a.prototype.get = function(a) {
var b, c, d, e, f;
for (f = this.keys, b = d = 0, e = f.length; e > d; b = ++d)
if (c = f[b], c === a) return this.values[b]
}, a.prototype.set = function(a, b) {
var c, d, e, f, g;
for (g = this.keys, c = e = 0, f = g.length; f > e; c = ++e)
if (d = g[c], d === a) return void(this.values[c] = b);
return this.keys.push(a), this.values.push(b)
}, a
}()), a = this.MutationObserver || this.WebkitMutationObserver || this.MozMutationObserver || (a = function() {
function a() {
"undefined" != typeof console && null !== console && console.warn("MutationObserver is not supported by your browser."), "undefined" != typeof console && null !== console && console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")
}
return a.notSupported = !0, a.prototype.observe = function() {}, a
}()), d = this.getComputedStyle || function(a, b) {
return this.getPropertyValue = function(b) {
var c;
return "float" === b && (b = "styleFloat"), e.test(b) && b.replace(e, function(a, b) {
return b.toUpperCase()
}), (null != (c = a.currentStyle) ? c[b] : void 0) || null
}, this
}, e = /(\-([a-z]){1})/g, this.WOW = function() {
function e(a) {
null == a && (a = {}), this.scrollCallback = f(this.scrollCallback, this), this.scrollHandler = f(this.scrollHandler, this), this.resetAnimation = f(this.resetAnimation, this), this.start = f(this.start, this), this.scrolled = !0, this.config = this.util().extend(a, this.defaults), null != a.scrollContainer && (this.config.scrollContainer = document.querySelector(a.scrollContainer)), this.animationNameCache = new c, this.wowEvent = this.util().createEvent(this.config.boxClass)
}
return e.prototype.defaults = {
boxClass: "wow",
animateClass: "animated",
offset: 0,
mobile: !0,
live: !0,
callback: null,
scrollContainer: null
}, e.prototype.init = function() {
var a;
return this.element = window.document.documentElement, "interactive" === (a = document.readyState) || "complete" === a ? this.start() : this.util().addEvent(document, "DOMContentLoaded", this.start), this.finished = []
}, e.prototype.start = function() {
var b, c, d, e;
if (this.stopped = !1, this.boxes = function() {
var a, c, d, e;
for (d = this.element.querySelectorAll("." + this.config.boxClass), e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
return e
}.call(this), this.all = function() {
var a, c, d, e;
for (d = this.boxes, e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
return e
}.call(this), this.boxes.length)
if (this.disabled()) this.resetStyle();
else
for (e = this.boxes, c = 0, d = e.length; d > c; c++) b = e[c], this.applyStyle(b, !0);
return this.disabled() || (this.util().addEvent(this.config.scrollContainer || window, "scroll", this.scrollHandler), this.util().addEvent(window, "resize", this.scrollHandler), this.interval = setInterval(this.scrollCallback, 50)), this.config.live ? new a(function(a) {
return function(b) {
var c, d, e, f, g;
for (g = [], c = 0, d = b.length; d > c; c++) f = b[c], g.push(function() {
var a, b, c, d;
for (c = f.addedNodes || [], d = [], a = 0, b = c.length; b > a; a++) e = c[a], d.push(this.doSync(e));
return d
}.call(a));
return g
}
}(this)).observe(document.body, {
childList: !0,
subtree: !0
}) : void 0
}, e.prototype.stop = function() {
return this.stopped = !0, this.util().removeEvent(this.config.scrollContainer || window, "scroll", this.scrollHandler), this.util().removeEvent(window, "resize", this.scrollHandler), null != this.interval ? clearInterval(this.interval) : void 0
}, e.prototype.sync = function(b) {
return a.notSupported ? this.doSync(this.element) : void 0
}, e.prototype.doSync = function(a) {
var b, c, d, e, f;
if (null == a && (a = this.element), 1 === a.nodeType) {
for (a = a.parentNode || a, e = a.querySelectorAll("." + this.config.boxClass), f = [], c = 0, d = e.length; d > c; c++) b = e[c], g.call(this.all, b) < 0 ? (this.boxes.push(b), this.all.push(b), this.stopped || this.disabled() ? this.resetStyle() : this.applyStyle(b, !0), f.push(this.scrolled = !0)) : f.push(void 0);
return f
}
}, e.prototype.show = function(a) {
return this.applyStyle(a), a.className = a.className + " " + this.config.animateClass, null != this.config.callback && this.config.callback(a), this.util().emitEvent(a, this.wowEvent), this.util().addEvent(a, "animationend", this.resetAnimation), this.util().addEvent(a, "oanimationend", this.resetAnimation), this.util().addEvent(a, "webkitAnimationEnd", this.resetAnimation), this.util().addEvent(a, "MSAnimationEnd", this.resetAnimation), a
}, e.prototype.applyStyle = function(a, b) {
var c, d, e;
return d = a.getAttribute("data-wow-duration"), c = a.getAttribute("data-wow-delay"), e = a.getAttribute("data-wow-iteration"), this.animate(function(f) {
return function() {
return f.customStyle(a, b, d, c, e)
}
}(this))
}, e.prototype.animate = function() {
return "requestAnimationFrame" in window ? function(a) {
return window.requestAnimationFrame(a)
} : function(a) {
return a()
}
}(), e.prototype.resetStyle = function() {
var a, b, c, d, e;
for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], e.push(a.style.visibility = "visible");
return e
}, e.prototype.resetAnimation = function(a) {
var b;
return a.type.toLowerCase().indexOf("animationend") >= 0 ? (b = a.target || a.srcElement, b.className = b.className.replace(this.config.animateClass, "").trim()) : void 0
}, e.prototype.customStyle = function(a, b, c, d, e) {
return b && this.cacheAnimationName(a), a.style.visibility = b ? "hidden" : "visible", c && this.vendorSet(a.style, {
animationDuration: c
}), d && this.vendorSet(a.style, {
animationDelay: d
}), e && this.vendorSet(a.style, {
animationIterationCount: e
}), this.vendorSet(a.style, {
animationName: b ? "none" : this.cachedAnimationName(a)
}), a
}, e.prototype.vendors = ["moz", "webkit"], e.prototype.vendorSet = function(a, b) {
var c, d, e, f;
d = [];
for (c in b) e = b[c], a["" + c] = e, d.push(function() {
var b, d, g, h;
for (g = this.vendors, h = [], b = 0, d = g.length; d > b; b++) f = g[b], h.push(a["" + f + c.charAt(0).toUpperCase() + c.substr(1)] = e);
return h
}.call(this));
return d
}, e.prototype.vendorCSS = function(a, b) {
var c, e, f, g, h, i;
for (h = d(a), g = h.getPropertyCSSValue(b), f = this.vendors, c = 0, e = f.length; e > c; c++) i = f[c], g = g || h.getPropertyCSSValue("-" + i + "-" + b);
return g
}, e.prototype.animationName = function(a) {
var b;
try {
b = this.vendorCSS(a, "animation-name").cssText
} catch (c) {
b = d(a).getPropertyValue("animation-name")
}
return "none" === b ? "" : b
}, e.prototype.cacheAnimationName = function(a) {
return this.animationNameCache.set(a, this.animationName(a))
}, e.prototype.cachedAnimationName = function(a) {
return this.animationNameCache.get(a)
}, e.prototype.scrollHandler = function() {
return this.scrolled = !0
}, e.prototype.scrollCallback = function() {
var a;
return !this.scrolled || (this.scrolled = !1, this.boxes = function() {
var b, c, d, e;
for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], a && (this.isVisible(a) ? this.show(a) : e.push(a));
return e
}.call(this), this.boxes.length || this.config.live) ? void 0 : this.stop()
}, e.prototype.offsetTop = function(a) {
for (var b; void 0 === a.offsetTop;) a = a.parentNode;
for (b = a.offsetTop; a = a.offsetParent;) b += a.offsetTop;
return b
}, e.prototype.isVisible = function(a) {
var b, c, d, e, f;
return c = a.getAttribute("data-wow-offset") || this.config.offset, f = this.config.scrollContainer && this.config.scrollContainer.scrollTop || window.pageYOffset, e = f + Math.min(this.element.clientHeight, this.util().innerHeight()) - c, d = this.offsetTop(a), b = d + a.clientHeight, e >= d && b >= f
}, e.prototype.util = function() {
return null != this._util ? this._util : this._util = new b
}, e.prototype.disabled = function() {
return !this.config.mobile && this.util().isMobile(navigator.userAgent)
}, e
}()
}).call(this);