Carousel Slider - Version 1.8.4

Version Description

Download this release

Release Info

Developer sayful
Plugin Icon Carousel Slider
Version 1.8.4
Comparing to
See all releases

Code changes from version 1.8.3 to 1.8.4

assets/css/style.css CHANGED
@@ -1 +1 @@
1
- .carousel-slider{display:none;width:100%;-webkit-tap-highlight-color:transparent;position:relative;z-index:1}.carousel-slider .owl-stage{position:relative;-ms-touch-action:pan-Y}.carousel-slider .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.carousel-slider .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0px, 0px, 0px)}.carousel-slider .owl-item{position:relative;min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.carousel-slider .owl-item img{display:block;width:100%;-webkit-transform-style:preserve-3d}.carousel-slider .owl-nav.disabled,.carousel-slider .owl-dots.disabled{display:none}.carousel-slider .owl-nav .owl-prev,.carousel-slider .owl-nav .owl-next,.carousel-slider .owl-dot{cursor:hand;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.carousel-slider.owl-loaded{display:block}.carousel-slider.owl-loading{opacity:0;display:block}.carousel-slider.owl-hidden{opacity:0}.carousel-slider.owl-refresh .owl-item{visibility:hidden}.carousel-slider.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.carousel-slider.owl-grab{cursor:-webkit-grab;cursor:grab}.carousel-slider.owl-rtl{direction:rtl}.carousel-slider.owl-rtl .owl-item{float:right}.no-js .carousel-slider{display:block}.carousel-slider .animated{-webkit-animation-duration:1000ms;animation-duration:1000ms;-webkit-animation-fill-mode:both;animation-fill-mode:both}.carousel-slider .owl-animated-in{z-index:0}.carousel-slider .owl-animated-out{z-index:1}.carousel-slider .fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{-webkit-transition:height 500ms ease-in-out;-o-transition:height 500ms ease-in-out;transition:height 500ms ease-in-out}.carousel-slider .owl-item img.owl-lazy{background:url("../img/ajax-loader.gif") no-repeat center;min-width:32px;min-height:32px}.carousel-slider .owl-video-wrapper{position:relative;height:100%;background:#000}.carousel-slider .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url("../img/play.svg") no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;-webkit-transition:-webkit-transform 100ms ease;transition:-webkit-transform 100ms ease;-o-transition:transform 100ms ease;transition:transform 100ms ease;transition:transform 100ms ease, -webkit-transform 100ms ease}.carousel-slider .owl-video-play-icon:hover{-webkit-transform:scale(1.3, 1.3);-ms-transform:scale(1.3, 1.3);transform:scale(1.3, 1.3)}.carousel-slider .owl-video-playing .owl-video-tn,.carousel-slider .owl-video-playing .owl-video-play-icon{display:none}.carousel-slider .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;-webkit-transition:opacity 400ms ease;-o-transition:opacity 400ms ease;transition:opacity 400ms ease}.carousel-slider .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}.carousel-slider .owl-nav .owl-prev,.carousel-slider .owl-nav .owl-next{height:48px;width:48px;display:inline-block;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);opacity:0;margin:0;padding:0;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.carousel-slider .owl-nav .owl-prev{left:0}.carousel-slider .owl-nav .owl-next{right:0}.carousel-slider:hover .owl-nav .owl-prev,.carousel-slider:hover .owl-nav .owl-next{opacity:1}.carousel-slider.arrows-visible-always .owl-prev,.carousel-slider.arrows-visible-always .owl-next{opacity:1}.carousel-slider.arrows-outside .owl-nav .owl-prev{left:-48px}.carousel-slider.arrows-outside .owl-nav .owl-next{right:-48px}.carousel-slider .owl-dots{text-align:center;-webkit-tap-highlight-color:transparent;margin-top:10px}.carousel-slider .owl-dots .owl-dot{display:inline-block;zoom:1;*display:inline}.carousel-slider .owl-dots .owl-dot span{width:10px;height:10px;margin:4px 8px;background-color:#9e9e9e;display:block;-webkit-backface-visibility:visible;-webkit-transition:opacity 200ms ease;-o-transition:opacity 200ms ease;transition:opacity 200ms ease}.carousel-slider .owl-dots .owl-dot.active span,.carousel-slider .owl-dots .owl-dot:hover span{background-color:#4caf50}.carousel-slider.dots-center .owl-dots{text-align:center}.carousel-slider.dots-left .owl-dots{text-align:left}.carousel-slider.dots-left .owl-dots:first-child span{margin-left:0}.carousel-slider.dots-right .owl-dots{text-align:right}.carousel-slider.dots-right .owl-dots:last-child span{margin-right:0}.carousel-slider.dots-visible-hover .owl-dots{opacity:0}.carousel-slider.dots-visible-hover:hover .owl-dots{opacity:1}.carousel-slider.dots-circle .owl-dots .owl-dot span{border-radius:9999px}.carousel-slider__post{border:1px solid #f1f1f1;float:left;height:450px;width:100%;position:relative;display:block;overflow:hidden}.carousel-slider__post-content{bottom:0;position:absolute;top:0;-webkit-transition:all 0.2s ease 0s;-o-transition:all 0.2s ease 0s;transition:all 0.2s ease 0s;width:100%;display:block}.carousel-slider__post-image{border-bottom:1px solid #f1f1f1;display:block;height:207px;line-height:0;margin:0 auto;overflow:hidden;text-align:center;width:100%;background-color:#f1f1f1;background-size:cover;background-position:center center}.carousel-slider__post-title{display:block;margin:10px 15px 0;max-height:70px}.carousel-slider__post-title h1{color:#4a4a4a;font:bold 18px/1.4em Arial,sans-serif;margin-bottom:0;margin-top:0}.carousel-slider__post-excerpt{color:#7d7d7d;font-size:14px;line-height:1.5em;padding:10px 15px 5px;text-align:left;width:100%;position:absolute;top:285px}.carousel-slider__post-excerpt-overlay{background:transparent none repeat scroll 0 0;display:block;height:20px;width:100%}.carousel-slider__post-meta{bottom:10px;color:#8e8e8e;font-size:12px;left:0;padding:0 15px;position:absolute;width:100%;display:block}.carousel-slider__post-publication-meta{background-color:white;display:block;padding-top:15px;width:100%;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.carousel-slider__post-details-info{display:inline-block}.carousel-slider__post-author{display:block;font-style:normal;line-height:1em;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px}.carousel-slider__post-author-link{color:#8e8e8e;display:inline-block;max-width:175px;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.carousel-slider__post-category{color:#4cc1be;text-transform:uppercase;position:absolute;right:15px;top:50px;z-index:1}.carousel-slider__product{position:relative;text-align:center;border:1px solid #f1f1f1}.carousel-slider__product .woocommerce-LoopProduct-link{display:block;overflow:hidden;margin:0 0 .5em}.carousel-slider__product .onsale{border:0 none;line-height:1;margin:0;padding:15px 5px;color:#f1f1f1;background-color:#96588a;position:absolute;left:8px;top:8px;border-radius:50%}.carousel-slider__product h3{padding:.5em 1em;text-align:left;margin:0;font-size:1em;color:#333}.carousel-slider__product a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none}.carousel-slider__product a img{width:100%;height:auto;display:block;-webkit-box-shadow:none;box-shadow:none}.carousel-slider__product strong{display:block}.carousel-slider__product .price{color:#333;display:inline-block;font-weight:normal;margin:.5em 1em;font-size:.857em;float:left}.carousel-slider__product .price del{color:inherit;background-color:transparent;opacity:0.5;display:inline-block}.carousel-slider__product .price ins{color:inherit;background-color:transparent;font-weight:bold}.carousel-slider__product .star-rating{color:#96588a;display:inline-block;margin:.5em 1em;float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:'star'}.carousel-slider__product .star-rating:before{content:"\73\73\73\73\73";float:left;top:0;left:0;position:absolute}.carousel-slider__product .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.carousel-slider__product .star-rating span:before{content:"\53\53\53\53\53";top:0;position:absolute;left:0}.carousel-slider__product a.add_to_cart_button,.carousel-slider__product a.added_to_cart,.carousel-slider__product a.quick_view{color:#f1f1f1;background-color:#96588a;margin:1em;line-height:1;cursor:pointer;position:relative;text-decoration:none;overflow:visible;padding:.5em 1em;font-weight:normal;border-radius:3px;left:auto;border:0;white-space:nowrap;display:block;background-image:none;box-shadow:none;-webkit-box-shadow:none;text-shadow:none}.carousel-slider__product a.add_to_cart_button:hover,.carousel-slider__product a.added_to_cart:hover,.carousel-slider__product a.quick_view:hover{color:#f1f1f1;background-color:#96588a;text-decoration:none;background-image:none}.carousel-slider__product a.add_to_cart_button.loading{opacity:0.25;padding-right:2.618em}.carousel-slider__product a.add_to_cart_button.loading:after{font-family:"WooCommerce";content:"\e01c";vertical-align:top;-webkit-font-smoothing:antialiased;font-weight:normal;position:absolute;top:.618em;right:1em;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.carousel-slider__product a.add_to_cart_button.added:after{font-family:'WooCommerce';content:"\e017";margin-left:.53em;vertical-align:bottom}.carousel-slider-hero__cell__background{background-size:cover;background-position:center;background-repeat:no-repeat;min-width:100%;min-height:100%;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s}.carousel-slider-hero__cell__background.carousel-slider-hero-ken-out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.carousel-slider .active .carousel-slider-hero__cell__background{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:20s;animation-duration:20s}.carousel-slider .active .carousel-slider-hero__cell__background.carousel-slider-hero-ken-in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3);-webkit-animation-name:ken-burns-in;animation-name:ken-burns-in}.carousel-slider .active .carousel-slider-hero__cell__background.carousel-slider-hero-ken-out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-animation-name:ken-burns-out;animation-name:ken-burns-out}.carousel-slider-hero__cell{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;overflow:hidden;height:400px}.carousel-slider-hero__cell:focus{outline:0}.carousel-slider-hero__cell__inner{background-repeat:no-repeat;background-position:center;position:absolute;top:0;left:0;bottom:0;right:0;padding:50px}.carousel-slider-hero__cell__inner,.carousel-slider-hero__cell__inner:hover{color:white;display:-webkit-box;display:-ms-flexbox;display:flex}.carousel-slider-hero__cell__background_overlay{position:absolute;z-index:0;top:0;bottom:0;left:0;right:0}.carousel-slider-hero__cell__content{position:relative;z-index:1;width:100%;max-width:1140px}.carousel-slider-hero__cell__heading{font-size:40px;font-weight:bold;line-height:1}.carousel-slider-hero__cell__description{font-size:20px;line-height:1.4}.carousel-slider-hero__cell__heading:not(:last-child),.carousel-slider-hero__cell__description:not(:last-child){margin-bottom:30px}.carousel-slider-hero__cell__button__one{margin-right:5px}.carousel-slider-hero__cell__button__two{margin-left:5px}.carousel-slider-hero__cell__button__one,.carousel-slider-hero__cell__button__two{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.carousel-slider-hero__cell__inner.carousel-slider--v-position-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.carousel-slider-hero__cell__inner.carousel-slider--v-position-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.carousel-slider-hero__cell__inner.carousel-slider--v-position-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.carousel-slider-hero__cell__inner.carousel-slider--h-position-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.carousel-slider-hero__cell__inner.carousel-slider--h-position-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.carousel-slider-hero__cell__inner.carousel-slider--h-position-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.carousel-slider-hero__cell__inner.carousel-slider--text-left{text-align:left}.carousel-slider-hero__cell__inner.carousel-slider--text-right{text-align:right}.carousel-slider-hero__cell__inner.carousel-slider--text-center{text-align:center}@media (max-width: 767px){.carousel-slider-hero__cell__inner{padding:30px}.carousel-slider-hero__cell__heading{font-size:24px;line-height:1;margin-bottom:15px}.carousel-slider-hero__cell__description{font-size:14px;line-height:1.4;margin-bottom:15px}}.carousel-slider .carousel-slider__item{position:relative}.carousel-slider .carousel-slider__item img{display:block;margin-left:auto;margin-right:auto;max-width:100%;height:auto}.carousel-slider .carousel-slider__caption{position:relative}.carousel-slider .carousel-slider__caption .title{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;color:#474747;font-size:16px;font-weight:500;margin:10px 0 0;text-align:center}.carousel-slider .carousel-slider__caption .caption{font-size:14px;font-weight:300;margin:10px 0 0;text-align:center}.cs-hero-button{-webkit-appearance:none;-webkit-font-smoothing:inherit;display:inline-block;font-size:1rem;line-height:1;padding:0.75em 1em;border-radius:0;text-decoration:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all 200ms ease-in-out;-o-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out}.cs-hero-button:hover{text-decoration:none}.cs-hero-button--normal{opacity:0.9;filter:alpha(opacity=90)}.cs-hero-button--stroke{background:transparent;border-width:1px;border-style:solid;border-color:transparent}.cs-hero-button--medium{font-size:1.2rem;padding:0.9em 1.2em}.cs-hero-button--large{font-size:1.5rem;padding:0.9em 1.6em}.mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.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;-webkit-box-sizing:border-box;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:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-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;-ms-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;-webkit-box-shadow:none;box-shadow:none;-ms-touch-action:manipulation;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:.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:.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%;-webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);box-shadow:0 0 8px rgba(0,0,0,0.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;-webkit-box-sizing:border-box;box-sizing:border-box;padding:40px 0 40px;margin:0 auto}.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;-webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);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){.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;-webkit-box-sizing:border-box;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);-ms-transform:scale(0.75);transform:scale(0.75)}.mfp-arrow-left{-webkit-transform-origin:0;-ms-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;-ms-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-with-zoom .mfp-container,.mfp-with-zoom.mfp-bg{opacity:0;-webkit-backface-visibility:hidden;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;transition:all 0.3s ease-out}.mfp-with-zoom.mfp-ready .mfp-container{opacity:1}.mfp-with-zoom.mfp-ready.mfp-bg{opacity:0.8}.mfp-with-zoom.mfp-removing .mfp-container,.mfp-with-zoom.mfp-removing.mfp-bg{opacity:0}.mfp-content .product{background-color:#ffffff;display:table;margin:0 auto;padding:15px}.mfp-content .product .images{display:inline-block;float:left;max-width:600px}.mfp-content .product .images img{display:block}.mfp-content .product .onsale{left:24px;top:24px;position:absolute}.mfp-content .product .summary{display:inline-block;margin-left:15px;width:300px}.mfp-content .product .product_title,.mfp-content .product .description{margin:1em 0}.mfp-content .product .price{display:inline-block;font-weight:normal;margin:.5em 1em;font-size:.857em;float:left}.mfp-content .product .price del{color:inherit;background-color:transparent;opacity:0.5;display:inline-block}.mfp-content .product .price ins{color:inherit;background-color:transparent;font-weight:bold}.mfp-content .product .star-rating{display:inline-block;margin:.5em 1em;float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:'star'}.mfp-content .product .star-rating:before{content:"\73\73\73\73\73";float:left;top:0;left:0;position:absolute}.mfp-content .product .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.mfp-content .product .star-rating span:before{content:"\53\53\53\53\53";top:0;position:absolute;left:0}.mfp-content .product a.add_to_cart_button,.mfp-content .product a.added_to_cart{margin:0;line-height:1;cursor:pointer;position:relative;text-decoration:none;overflow:visible;padding:.5em 1em;font-weight:normal;border-radius:3px;left:auto;border:0;white-space:nowrap;display:inline-block;background-image:none;box-shadow:none;-webkit-box-shadow:none;text-shadow:none}.mfp-content .product a.add_to_cart_button:hover,.mfp-content .product a.added_to_cart:hover{text-decoration:none;background-image:none}.mfp-content .product a.add_to_cart_button.loading{opacity:0.25;padding-right:2.618em}.mfp-content .product a.add_to_cart_button.loading:after{font-family:"WooCommerce";content:"\e01c";vertical-align:top;-webkit-font-smoothing:antialiased;font-weight:normal;position:absolute;top:.618em;right:1em;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.mfp-content .product a.add_to_cart_button.added:after{font-family:'WooCommerce';content:"\e017";margin-left:.53em;vertical-align:bottom}.mfp-inline-holder .mfp-content,.mfp-ajax-holder .mfp-content{max-width:945px;margin-top:40px;margin-bottom:40px}@media (max-width: 600px){.mfp-content .product .images{margin-bottom:30px}.mfp-content .product .summary{display:block;margin:0;width:100%}}@media (min-width: 601px){.mfp-content .product .images{display:inline-block;width:49%}.mfp-content .product .summary{display:inline-block;margin:0 0 0 1%;width:49%}}
1
+ .carousel-slider{display:none;width:100%;-webkit-tap-highlight-color:transparent;position:relative;z-index:1}.carousel-slider .owl-stage{position:relative;-ms-touch-action:pan-Y}.carousel-slider .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.carousel-slider .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0px, 0px, 0px)}.carousel-slider .owl-item{position:relative;min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.carousel-slider .owl-item img{display:block;width:100%;-webkit-transform-style:preserve-3d}.carousel-slider .owl-nav.disabled,.carousel-slider .owl-dots.disabled{display:none}.carousel-slider .owl-nav .owl-prev,.carousel-slider .owl-nav .owl-next,.carousel-slider .owl-dot{cursor:hand;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.carousel-slider.owl-loaded{display:block}.carousel-slider.owl-loading{opacity:0;display:block}.carousel-slider.owl-hidden{opacity:0}.carousel-slider.owl-refresh .owl-item{visibility:hidden}.carousel-slider.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.carousel-slider.owl-grab{cursor:-webkit-grab;cursor:grab}.carousel-slider.owl-rtl{direction:rtl}.carousel-slider.owl-rtl .owl-item{float:right}.no-js .carousel-slider{display:block}.carousel-slider .animated{-webkit-animation-duration:1000ms;animation-duration:1000ms;-webkit-animation-fill-mode:both;animation-fill-mode:both}.carousel-slider .owl-animated-in{z-index:0}.carousel-slider .owl-animated-out{z-index:1}.carousel-slider .fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}.carousel-slider .fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}.carousel-slider .fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}.carousel-slider .fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}.carousel-slider .fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}.carousel-slider .zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes fadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes fadeInUp{from{opacity:0;-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes fadeInUp{from{opacity:0;-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes fadeInRight{from{opacity:0;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes fadeInRight{from{opacity:0;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes fadeInLeft{from{opacity:0;-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes fadeInLeft{from{opacity:0;-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes zoomIn{from{opacity:0;-webkit-transform:scale3d(0.3, 0.3, 0.3);transform:scale3d(0.3, 0.3, 0.3)}50%{opacity:1}}@keyframes zoomIn{from{opacity:0;-webkit-transform:scale3d(0.3, 0.3, 0.3);transform:scale3d(0.3, 0.3, 0.3)}50%{opacity:1}}.owl-height{-webkit-transition:height 500ms ease-in-out;-o-transition:height 500ms ease-in-out;transition:height 500ms ease-in-out}.carousel-slider .owl-item img.owl-lazy{background:url("../img/ajax-loader.gif") no-repeat center;min-width:32px;min-height:32px}.carousel-slider .carousel-slider-video-wrapper{position:relative;height:100%;background:#000}.carousel-slider .carousel-slider-video-play-icon{position:absolute;height:40px;width:40px;left:50%;top:50%;margin-left:-20px;margin-top:-20px;background:url("../img/play.svg") no-repeat;cursor:pointer;z-index:2;-webkit-backface-visibility:hidden;-webkit-transition:-webkit-transform 100ms ease;transition:-webkit-transform 100ms ease;-o-transition:transform 100ms ease;transition:transform 100ms ease;transition:transform 100ms ease, -webkit-transform 100ms ease}.carousel-slider .carousel-slider-video-overlay{position:absolute;height:100%;width:100%;left:0;top:0;background-color:rgba(0,0,0,0.5);z-index:1}.carousel-slider .carousel-slider-video-play-icon:hover{-webkit-transform:scale(1.3, 1.3);-ms-transform:scale(1.3, 1.3);transform:scale(1.3, 1.3)}.carousel-slider .owl-nav .owl-prev,.carousel-slider .owl-nav .owl-next{height:48px;width:48px;display:inline-block;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);opacity:0;margin:0;padding:0;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.carousel-slider .owl-nav .owl-prev{left:0}.carousel-slider .owl-nav .owl-next{right:0}.carousel-slider:hover .owl-nav .owl-prev,.carousel-slider:hover .owl-nav .owl-next{opacity:1}.carousel-slider.arrows-visible-always .owl-prev,.carousel-slider.arrows-visible-always .owl-next{opacity:1}.carousel-slider.arrows-outside .owl-nav .owl-prev{left:-48px}.carousel-slider.arrows-outside .owl-nav .owl-next{right:-48px}.carousel-slider .owl-dots{text-align:center;-webkit-tap-highlight-color:transparent;margin-top:10px}.carousel-slider .owl-dots .owl-dot{display:inline-block;zoom:1;*display:inline}.carousel-slider .owl-dots .owl-dot span{width:10px;height:10px;margin:4px 8px;background-color:#9e9e9e;display:block;-webkit-backface-visibility:visible;-webkit-transition:opacity 200ms ease;-o-transition:opacity 200ms ease;transition:opacity 200ms ease}.carousel-slider .owl-dots .owl-dot.active span,.carousel-slider .owl-dots .owl-dot:hover span{background-color:#4caf50}.carousel-slider.dots-center .owl-dots{text-align:center}.carousel-slider.dots-left .owl-dots{text-align:left}.carousel-slider.dots-left .owl-dots:first-child span{margin-left:0}.carousel-slider.dots-right .owl-dots{text-align:right}.carousel-slider.dots-right .owl-dots:last-child span{margin-right:0}.carousel-slider.dots-visible-hover .owl-dots{opacity:0}.carousel-slider.dots-visible-hover:hover .owl-dots{opacity:1}.carousel-slider.dots-circle .owl-dots .owl-dot span{border-radius:9999px}.carousel-slider__post{border:1px solid #f1f1f1;float:left;height:450px;width:100%;position:relative;display:block;overflow:hidden}.carousel-slider__post-content{bottom:0;position:absolute;top:0;-webkit-transition:all 0.2s ease 0s;-o-transition:all 0.2s ease 0s;transition:all 0.2s ease 0s;width:100%;display:block}.carousel-slider__post-image{border-bottom:1px solid #f1f1f1;display:block;height:207px;line-height:0;margin:0 auto;overflow:hidden;text-align:center;width:100%;background-color:#f1f1f1;background-size:cover;background-position:center center}.carousel-slider__post-title{display:block;margin:10px 15px 0;max-height:70px}.carousel-slider__post-title h1{color:#4a4a4a;font:bold 18px/1.4em Arial,sans-serif;margin-bottom:0;margin-top:0}.carousel-slider__post-excerpt{color:#7d7d7d;font-size:14px;line-height:1.5em;padding:10px 15px 5px;text-align:left;width:100%;position:absolute;top:285px}.carousel-slider__post-excerpt-overlay{background:transparent none repeat scroll 0 0;display:block;height:20px;width:100%}.carousel-slider__post-meta{bottom:10px;color:#8e8e8e;font-size:12px;left:0;padding:0 15px;position:absolute;width:100%;display:block}.carousel-slider__post-publication-meta{background-color:white;display:block;padding-top:15px;width:100%;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.carousel-slider__post-details-info{display:inline-block}.carousel-slider__post-author{display:block;font-style:normal;line-height:1em;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px}.carousel-slider__post-author-link{color:#8e8e8e;display:inline-block;max-width:175px;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.carousel-slider__post-category{color:#4cc1be;text-transform:uppercase;position:absolute;right:15px;top:50px;z-index:1}.carousel-slider__product{position:relative;text-align:center;border:1px solid #f1f1f1}.carousel-slider__product .woocommerce-LoopProduct-link{display:block;overflow:hidden;margin:0 0 .5em}.carousel-slider__product .onsale{border:0 none;line-height:1;margin:0;padding:15px 5px;color:#f1f1f1;background-color:#96588a;position:absolute;left:8px;top:8px;border-radius:50%}.carousel-slider__product h3{padding:.5em 1em;text-align:left;margin:0;font-size:1em;color:#333}.carousel-slider__product a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none}.carousel-slider__product a img{width:100%;height:auto;display:block;-webkit-box-shadow:none;box-shadow:none}.carousel-slider__product strong{display:block}.carousel-slider__product .price{color:#333;display:inline-block;font-weight:normal;margin:.5em 1em;font-size:.857em;float:left}.carousel-slider__product .price del{color:inherit;background-color:transparent;opacity:0.5;display:inline-block}.carousel-slider__product .price ins{color:inherit;background-color:transparent;font-weight:bold}.carousel-slider__product .star-rating{color:#96588a;display:inline-block;margin:.5em 1em;float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:'star'}.carousel-slider__product .star-rating:before{content:"\73\73\73\73\73";float:left;top:0;left:0;position:absolute}.carousel-slider__product .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.carousel-slider__product .star-rating span:before{content:"\53\53\53\53\53";top:0;position:absolute;left:0}.carousel-slider__product a.add_to_cart_button,.carousel-slider__product a.added_to_cart,.carousel-slider__product a.quick_view{color:#f1f1f1;background-color:#96588a;margin:1em;line-height:1;cursor:pointer;position:relative;text-decoration:none;overflow:visible;padding:.5em 1em;font-weight:normal;border-radius:3px;left:auto;border:0;white-space:nowrap;display:block;background-image:none;box-shadow:none;-webkit-box-shadow:none;text-shadow:none}.carousel-slider__product a.add_to_cart_button:hover,.carousel-slider__product a.added_to_cart:hover,.carousel-slider__product a.quick_view:hover{color:#f1f1f1;background-color:#96588a;text-decoration:none;background-image:none}.carousel-slider__product a.add_to_cart_button.loading{opacity:0.25;padding-right:2.618em}.carousel-slider__product a.add_to_cart_button.loading:after{font-family:"WooCommerce";content:"\e01c";vertical-align:top;-webkit-font-smoothing:antialiased;font-weight:normal;position:absolute;top:.618em;right:1em;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.carousel-slider__product a.add_to_cart_button.added:after{font-family:'WooCommerce';content:"\e017";margin-left:.53em;vertical-align:bottom}.carousel-slider-hero__cell__background{background-size:cover;background-position:center;background-repeat:no-repeat;min-width:100%;min-height:100%;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s}.carousel-slider-hero__cell__background.carousel-slider-hero-ken-out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.carousel-slider .active .carousel-slider-hero__cell__background{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:20s;animation-duration:20s}.carousel-slider .active .carousel-slider-hero__cell__background.carousel-slider-hero-ken-in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3);-webkit-animation-name:ken-burns-in;animation-name:ken-burns-in}.carousel-slider .active .carousel-slider-hero__cell__background.carousel-slider-hero-ken-out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-animation-name:ken-burns-out;animation-name:ken-burns-out}.carousel-slider-hero__cell{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;overflow:hidden;height:400px}.carousel-slider-hero__cell:focus{outline:0}.carousel-slider-hero__cell__inner{background-repeat:no-repeat;background-position:center;position:absolute;top:0;left:0;bottom:0;right:0;padding:50px}.carousel-slider-hero__cell__inner,.carousel-slider-hero__cell__inner:hover{color:white;display:-webkit-box;display:-ms-flexbox;display:flex}.carousel-slider-hero__cell__background_overlay{position:absolute;z-index:0;top:0;bottom:0;left:0;right:0}.carousel-slider-hero__cell__content{position:relative;z-index:1;width:100%;max-width:1140px}.carousel-slider-hero__cell__heading{font-size:40px;font-weight:bold;line-height:1}.carousel-slider-hero__cell__description{font-size:20px;line-height:1.4}.carousel-slider-hero__cell__heading:not(:last-child),.carousel-slider-hero__cell__description:not(:last-child){margin-bottom:30px}.carousel-slider-hero__cell__button__one{margin-right:5px}.carousel-slider-hero__cell__button__two{margin-left:5px}.carousel-slider-hero__cell__button__one,.carousel-slider-hero__cell__button__two{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.carousel-slider-hero__cell__inner.carousel-slider--v-position-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.carousel-slider-hero__cell__inner.carousel-slider--v-position-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.carousel-slider-hero__cell__inner.carousel-slider--v-position-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.carousel-slider-hero__cell__inner.carousel-slider--h-position-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.carousel-slider-hero__cell__inner.carousel-slider--h-position-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.carousel-slider-hero__cell__inner.carousel-slider--h-position-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.carousel-slider-hero__cell__inner.carousel-slider--text-left{text-align:left}.carousel-slider-hero__cell__inner.carousel-slider--text-right{text-align:right}.carousel-slider-hero__cell__inner.carousel-slider--text-center{text-align:center}@media (max-width: 767px){.carousel-slider-hero__cell__inner{padding:30px}.carousel-slider-hero__cell__heading{font-size:24px;line-height:1;margin-bottom:15px}.carousel-slider-hero__cell__description{font-size:14px;line-height:1.4;margin-bottom:15px}}.carousel-slider .carousel-slider__item{position:relative}.carousel-slider .carousel-slider__item img{display:block;margin-left:auto;margin-right:auto;max-width:100%;height:auto}.carousel-slider .carousel-slider__caption{position:relative}.carousel-slider .carousel-slider__caption .title{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;color:#474747;font-size:16px;font-weight:500;margin:10px 0 0;text-align:center}.carousel-slider .carousel-slider__caption .caption{font-size:14px;font-weight:300;margin:10px 0 0;text-align:center}.cs-hero-button{-webkit-appearance:none;-webkit-font-smoothing:inherit;display:inline-block;font-size:1rem;line-height:1;padding:0.75em 1em;border-radius:0;text-decoration:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all 200ms ease-in-out;-o-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out}.cs-hero-button:hover{text-decoration:none}.cs-hero-button--normal{opacity:0.9;filter:alpha(opacity=90)}.cs-hero-button--stroke{background:transparent;border-width:1px;border-style:solid;border-color:transparent}.cs-hero-button--medium{font-size:1.2rem;padding:0.9em 1.2em}.cs-hero-button--large{font-size:1.5rem;padding:0.9em 1.6em}.mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.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;-webkit-box-sizing:border-box;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:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-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;-ms-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;-webkit-box-shadow:none;box-shadow:none;-ms-touch-action:manipulation;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:.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:.65;top:50%;margin:-55px 0 0;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%;-webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);box-shadow:0 0 8px rgba(0,0,0,0.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;-webkit-box-sizing:border-box;box-sizing:border-box;padding:40px 0 40px;margin:0 auto}.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;-webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);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){.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;-webkit-box-sizing:border-box;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);-ms-transform:scale(0.75);transform:scale(0.75)}.mfp-arrow-left{-webkit-transform-origin:0;-ms-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;-ms-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-with-zoom .mfp-container,.mfp-with-zoom.mfp-bg{opacity:0;-webkit-backface-visibility:hidden;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;transition:all 0.3s ease-out}.mfp-with-zoom.mfp-ready .mfp-container{opacity:1}.mfp-with-zoom.mfp-ready.mfp-bg{opacity:0.8}.mfp-with-zoom.mfp-removing .mfp-container,.mfp-with-zoom.mfp-removing.mfp-bg{opacity:0}.mfp-content .product{background-color:#ffffff;display:table;margin:0 auto;padding:15px}.mfp-content .product .images{display:inline-block;float:left;max-width:600px}.mfp-content .product .images img{display:block}.mfp-content .product .onsale{left:24px;top:24px;position:absolute}.mfp-content .product .summary{display:inline-block;margin-left:15px;width:300px}.mfp-content .product .product_title,.mfp-content .product .description{margin:1em 0}.mfp-content .product .price{display:inline-block;font-weight:normal;margin:.5em 1em;font-size:.857em;float:left}.mfp-content .product .price del{color:inherit;background-color:transparent;opacity:0.5;display:inline-block}.mfp-content .product .price ins{color:inherit;background-color:transparent;font-weight:bold}.mfp-content .product .star-rating{display:inline-block;margin:.5em 1em;float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:'star'}.mfp-content .product .star-rating:before{content:"\73\73\73\73\73";float:left;top:0;left:0;position:absolute}.mfp-content .product .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.mfp-content .product .star-rating span:before{content:"\53\53\53\53\53";top:0;position:absolute;left:0}.mfp-content .product a.add_to_cart_button,.mfp-content .product a.added_to_cart{margin:0;line-height:1;cursor:pointer;position:relative;text-decoration:none;overflow:visible;padding:.5em 1em;font-weight:normal;border-radius:3px;left:auto;border:0;white-space:nowrap;display:inline-block;background-image:none;box-shadow:none;-webkit-box-shadow:none;text-shadow:none}.mfp-content .product a.add_to_cart_button:hover,.mfp-content .product a.added_to_cart:hover{text-decoration:none;background-image:none}.mfp-content .product a.add_to_cart_button.loading{opacity:0.25;padding-right:2.618em}.mfp-content .product a.add_to_cart_button.loading:after{font-family:"WooCommerce";content:"\e01c";vertical-align:top;-webkit-font-smoothing:antialiased;font-weight:normal;position:absolute;top:.618em;right:1em;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.mfp-content .product a.add_to_cart_button.added:after{font-family:'WooCommerce';content:"\e017";margin-left:.53em;vertical-align:bottom}.mfp-inline-holder .mfp-content,.mfp-ajax-holder .mfp-content{max-width:945px;margin-top:40px;margin-bottom:40px}@media (max-width: 600px){.mfp-content .product .images{margin-bottom:30px}.mfp-content .product .summary{display:block;margin:0;width:100%}}@media (min-width: 601px){.mfp-content .product .images{display:inline-block;width:49%}.mfp-content .product .summary{display:inline-block;margin:0 0 0 1%;width:49%}}
assets/img/play.svg CHANGED
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" width="80" height="80" fill="#f1f1f1"><path d="M12.1 6.7 35.1 20.2 12.1 33.7l0-26.9z"/><path d="m19.7 40c-11 0-20-9-20-20 0-11 9-20 20-20 11 0 20 9 20 20 0 11-9 20-20 20zm0-38c-9.9 0-18 8.1-18 18 0 9.9 8.1 18 18 18 9.9 0 18-8.1 18-18 0-9.9-8.1-18-18-18z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" width="40" height="40" fill="#f1f1f1"><path d="M12.1 6.7 35.1 20.2 12.1 33.7l0-26.9z"/><path d="m19.7 40c-11 0-20-9-20-20 0-11 9-20 20-20 11 0 20 9 20 20 0 11-9 20-20 20zm0-38c-9.9 0-18 8.1-18 18 0 9.9 8.1 18 18 18 9.9 0 18-8.1 18-18 0-9.9-8.1-18-18-18z"/></svg>
assets/js/admin.min.js CHANGED
@@ -1 +1 @@
1
- !function(e){"use strict";e(document).on("click",".accordion-header",function(){e(this).toggleClass("active");var t=e(this).next();parseInt(t.css("max-height"))>0?(t.css("max-height","0"),t.css("overflow","hidden")):(t.css("max-height",t.prop("scrollHeight")+"px"),t.css("overflow","visible"))})}(jQuery),function(e){"use strict";var t,i,o,s,a,n,l=e("body"),d=e("#contentButtonModal");l.on("click",".carousel-slider__add-slide",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"add-slide",post_id:e(this).data("post-id")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__delete_slide",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"delete-slide",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_top",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-top",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_up",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-up",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_down",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-down",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_bottom",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-bottom",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".slide_image_add",function(n){n.preventDefault();var l=e(this);i=l.closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),o=i.find(".background_image_id"),a=i.find(".delete-bg-img"),t?t.open():((t=wp.media({title:l.data("title"),button:{text:l.data("button-text")},multiple:!1})).on("select",function(){var e=t.state().get("selection").first().toJSON();s.css("background-image","url("+e.url+")"),o.val(e.id),a.removeClass("hidden")}),t.open())}),l.on("click",".delete-bg-img",function(t){t.preventDefault(),i=e(this).closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),o=i.find(".background_image_id"),a=i.find(".delete-bg-img"),s.css("background-image",""),o.val("0"),a.addClass("hidden")}),l.on("change",".background_image_position",function(){var t=e(this).val();i=e(this).closest(".slide_bg_wrapper"),(s=i.find(".content_slide_canvas")).css("background-position",t)}),l.on("change",".background_image_size",function(){var t=e(this).val();i=e(this).closest(".slide_bg_wrapper"),(s=i.find(".content_slide_canvas")).css("background-size",t)}),e(".addContentButton").on("click",function(t){t.preventDefault();var i=(n=e(this).closest(".button_config")).find(".button_text").val(),o=n.find(".button_url").val(),s=n.find(".button_target").val(),a=n.find(".button_type").val(),l=n.find(".button_size").val(),c=n.find(".button_color").val();d.find("#_button_text").val(i),d.find("#_button_url").val(o),d.find("#_button_target").val(s),d.find("#_button_type").val(a),d.find("#_button_size").val(l),d.find("#_button_color").val(c),d.addClass("is-active")}),e("#saveContentButton").on("click",function(e){if(e.preventDefault(),!n)return d.removeClass("is-active"),!1;var t=d.find("#_button_text").val(),i=d.find("#_button_url").val(),o=d.find("#_button_target").val(),s=d.find("#_button_type").val(),a=d.find("#_button_size").val(),l=d.find("#_button_color").val();n.find(".button_text").val(t),n.find(".button_url").val(i),n.find(".button_target").val(o),n.find(".button_type").val(s),n.find(".button_size").val(a),n.find(".button_color").val(l),d.removeClass("is-active")}),e(".slide-color-picker").each(function(){i=e(this).closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),e(this).wpColorPicker({palettes:["#2196F3","#009688","#4CAF50","#F44336","#FFEB3B","#00D1B2","#000000","#ffffff"],change:function(e,t){s.css("background-color",t.color.toString())}})}),e(document).on("change",".link_type",function(t){var i=e(this),o=i.val(),s=i.closest(".tab-content-link"),a=s.find(".ContentCarouselLinkFull"),n=s.find(".ContentCarouselLinkButtons");"full"===o?(n.hide(),a.show()):"button"===o?(a.hide(),n.show()):(a.hide(),n.hide())})}(jQuery),function(e){"use strict";function t(e){if(e){var t=new wp.shortcode({tag:"gallery",attrs:{ids:e},type:"single"}),i=wp.media.gallery.attachments(t),o=new wp.media.model.Selection(i.models,{props:i.props.toJSON(),multiple:!0});return o.gallery=i.gallery,o.more().done(function(){o.props.set({query:!1}),o.unmirror(),o.props.unset("orderby")}),o}return!1}var i,o=e("#carousel_slider_gallery_btn"),s=t(o.data("ids"));o.on("click",function(a){function n(){i.toolbar.get("view").set({insert:{style:"primary",text:o.data("save"),click:function(){var a="";i.state().get("library").each(function(e){a+=e.id+","}),this.el.innerHTML=o.data("progress"),e.ajax({type:"POST",url:ajaxurl,data:{ids:a,action:"carousel_slider_save_images",post_id:o.data("id")},success:function(){s=t(a),e("#_carousel_slider_images_ids").val(a),i.close()},dataType:"html"}).done(function(t){e(".carousel_slider_gallery_list").html(t)})}}})}a.preventDefault();var l={title:o.data("create"),state:"gallery-edit",frame:"post",selection:s};(i||s)&&(l.title=o.data("edit")),(i=wp.media(l).open()).menu.get("view").unset("cancel"),i.menu.get("view").unset("separateCancel"),i.menu.get("view").get("gallery-edit").el.innerHTML=o.data("edit"),i.content.get("view").sidebar.unset("gallery"),n(),i.on("toolbar:render:gallery-edit",function(){n()}),i.on("content:render:browse",function(e){e&&(e.sidebar.on("ready",function(){e.sidebar.unset("gallery")}),e.toolbar.on("ready",function(){"gallery-library"===e.toolbar.controller._state&&e.toolbar.$el.hide()}))}),i.state().get("library").on("remove",function(){0===i.state().get("library").length&&(s=!1,e.post(ajaxurl,{ids:"",action:"carousel_slider_save_images",post_id:o.data("id")}))})})}(jQuery),function(e){"use strict";var t=e("body"),i=e("#CarouselSliderModal"),o=e("#_images_urls_btn"),s=e("#carouselSliderGalleryUrlTemplate").html();o.on("click",function(t){t.preventDefault(),i.css("display","block"),e("body").addClass("overflowHidden")}),i.on("click",".carousel_slider-close",function(t){t.preventDefault(),i.css("display","none"),e("body").removeClass("overflowHidden")});var a=e(window).height()-148;e(".carousel_slider-modal-body").css("height",a+"px"),t.on("click",".add_row",function(){e(this).closest(".carousel_slider-fields").after(s)}),t.on("click",".delete_row",function(){e(this).closest(".carousel_slider-fields").remove()}),e("#carousel_slider_form").sortable()}(jQuery),function(e){"use strict";e(document).on("click",'[data-toggle="modal"]',function(t){t.preventDefault(),e(e(this).data("target")).addClass("is-active")}),e(document).on("click",'[data-dismiss="modal"]',function(t){t.preventDefault(),e(this).closest(".modal").removeClass("is-active")})}(jQuery),function(e){"use strict";var t=e("#_carousel_slider_slide_type"),i=e("#section_images_settings"),o=e("#section_url_images_settings"),s=e("#section_images_general_settings"),a=e("#section_post_query"),n=e("#section_video_settings"),l=e("#section_product_query"),d=e("#section_content_carousel"),c=e("#_post_query_type"),r=e("#field-_post_date_after"),u=e("#field-_post_date_before"),_=e("#field-_post_categories"),f=e("#field-_post_tags"),p=e("#field-_post_in"),h=e("#field-_posts_per_page"),v=e("#_product_query_type"),g=e("#field-_product_query"),b=e("#field-_product_categories"),m=e("#field-_product_tags"),w=e("#field-_product_in"),y=e("#field-_products_per_page");if(t.on("change",function(){i.hide("fast"),o.hide("fast"),s.hide("fast"),a.hide("fast"),n.hide("fast"),l.hide("fast"),d.hide("fast"),"image-carousel"===this.value&&(i.slideDown(),s.slideDown()),"image-carousel-url"===this.value&&(o.slideDown(),s.slideDown()),"post-carousel"===this.value&&a.slideDown(),"video-carousel"===this.value&&n.slideDown(),"product-carousel"===this.value&&(l.slideDown(),g.show()),"hero-banner-slider"===this.value&&d.slideDown()}),"post-carousel"===t.val()){var k=c.val();"date_range"===k&&(r.show(),u.show()),"post_categories"===k&&_.show(),"post_tags"===k&&f.show(),"specific_posts"===k&&(p.show(),h.hide())}if(c.on("change",function(){r.hide("fast"),u.hide("fast"),_.hide("fast"),f.hide("fast"),p.hide("fast"),h.show("fast"),"date_range"===this.value&&(r.slideDown(),u.slideDown()),"post_categories"===this.value&&_.slideDown(),"post_tags"===this.value&&f.slideDown(),"specific_posts"===this.value&&(p.slideDown(),h.hide("fast"))}),"product-carousel"===t.val()){var D=v.val();"query_porduct"===D&&g.show(),"product_categories"===D&&b.show(),"product_tags"===D&&m.show(),"specific_products"===D&&w.show()}v.on("change",function(){g.hide("fast"),b.hide("fast"),m.hide("fast"),w.hide("fast"),y.show("fast"),"query_porduct"===this.value&&g.slideDown(),"product_categories"===this.value&&b.slideDown(),"product_tags"===this.value&&m.slideDown(),"specific_products"===this.value&&(w.slideDown(),y.hide("fast"))})}(jQuery),function(e){"use strict";e(".cs-tooltip").each(function(){e(this).tipTip()}),e("select.select2").each(function(){e(this).select2()}),e(".shapla-toggle").each(function(){"closed"===e(this).attr("data-id")?e(this).accordion({collapsible:!0,heightStyle:"content",active:!1}):e(this).accordion({collapsible:!0,heightStyle:"content"})}),e(".shapla-tabs").tabs({hide:{effect:"fadeOut",duration:200},show:{effect:"fadeIn",duration:200}}),e(".datepicker").each(function(){e(this).datepicker({dateFormat:"MM dd, yy",changeMonth:!0,changeYear:!0,onClose:function(t){e(this).datepicker("option","minDate",t)}})}),e(".color-picker").each(function(){e(this).wpColorPicker({palettes:["#2196F3","#009688","#4CAF50","#F44336","#FFEB3B","#00D1B2","#000000","#ffffff"]})})}(jQuery);
1
+ !function(e){"use strict";e(document).on("click",".accordion-header",function(){e(this).toggleClass("active");var t=e(this).next();parseInt(t.css("max-height"))>0?(t.css("max-height","0"),t.css("overflow","hidden")):(t.css("max-height",t.prop("scrollHeight")+"px"),t.css("overflow","visible"))})}(jQuery),function(e){"use strict";var t,i,o,s,a,n,l=e("body"),d=e("#contentButtonModal");l.on("click",".carousel-slider__add-slide",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"add-slide",post_id:e(this).data("post-id")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__delete_slide",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"delete-slide",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_top",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-top",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_up",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-up",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_down",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-down",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".carousel_slider__move_bottom",function(t){t.preventDefault(),e.ajax({url:ajaxurl,method:"POST",data:{action:"add_content_slide",task:"move-slide-bottom",post_id:e(this).data("post-id"),slide_pos:e(this).data("slide-pos")},success:function(){window.location.reload(!0)}})}),l.on("click",".slide_image_add",function(n){n.preventDefault();var l=e(this);i=l.closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),o=i.find(".background_image_id"),a=i.find(".delete-bg-img"),t?t.open():((t=wp.media({title:l.data("title"),button:{text:l.data("button-text")},multiple:!1})).on("select",function(){var e=t.state().get("selection").first().toJSON();s.css("background-image","url("+e.url+")"),o.val(e.id),a.removeClass("hidden")}),t.open())}),l.on("click",".delete-bg-img",function(t){t.preventDefault(),i=e(this).closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),o=i.find(".background_image_id"),a=i.find(".delete-bg-img"),s.css("background-image",""),o.val("0"),a.addClass("hidden")}),l.on("change",".background_image_position",function(){var t=e(this).val();i=e(this).closest(".slide_bg_wrapper"),(s=i.find(".content_slide_canvas")).css("background-position",t)}),l.on("change",".background_image_size",function(){var t=e(this).val();i=e(this).closest(".slide_bg_wrapper"),(s=i.find(".content_slide_canvas")).css("background-size",t)}),e(".addContentButton").on("click",function(t){t.preventDefault();var i=(n=e(this).closest(".button_config")).find(".button_text").val(),o=n.find(".button_url").val(),s=n.find(".button_target").val(),a=n.find(".button_type").val(),l=n.find(".button_size").val(),c=n.find(".button_color").val();d.find("#_button_text").val(i),d.find("#_button_url").val(o),d.find("#_button_target").val(s),d.find("#_button_type").val(a),d.find("#_button_size").val(l),d.find("#_button_color").val(c),d.addClass("is-active")}),e("#saveContentButton").on("click",function(e){if(e.preventDefault(),!n)return d.removeClass("is-active"),!1;var t=d.find("#_button_text").val(),i=d.find("#_button_url").val(),o=d.find("#_button_target").val(),s=d.find("#_button_type").val(),a=d.find("#_button_size").val(),l=d.find("#_button_color").val();n.find(".button_text").val(t),n.find(".button_url").val(i),n.find(".button_target").val(o),n.find(".button_type").val(s),n.find(".button_size").val(a),n.find(".button_color").val(l),d.removeClass("is-active")}),e(".slide-color-picker").each(function(){i=e(this).closest(".slide_bg_wrapper"),s=i.find(".content_slide_canvas"),e(this).wpColorPicker({palettes:["#2196F3","#009688","#4CAF50","#F44336","#FFEB3B","#00D1B2","#000000","#ffffff"],change:function(e,t){s.css("background-color",t.color.toString())}})}),e(document).on("change",".link_type",function(t){var i=e(this),o=i.val(),s=i.closest(".tab-content-link"),a=s.find(".ContentCarouselLinkFull"),n=s.find(".ContentCarouselLinkButtons");"full"===o?(n.hide(),a.show()):"button"===o?(a.hide(),n.show()):(a.hide(),n.hide())})}(jQuery),function(e){"use strict";var t,i=e("#carousel_slider_gallery_btn"),o=s(i.data("ids"));function s(e){if(e){var t=new wp.shortcode({tag:"gallery",attrs:{ids:e},type:"single"}),i=wp.media.gallery.attachments(t),o=new wp.media.model.Selection(i.models,{props:i.props.toJSON(),multiple:!0});return o.gallery=i.gallery,o.more().done(function(){o.props.set({query:!1}),o.unmirror(),o.props.unset("orderby")}),o}return!1}i.on("click",function(a){a.preventDefault();var n={title:i.data("create"),state:"gallery-edit",frame:"post",selection:o};function l(){t.toolbar.get("view").set({insert:{style:"primary",text:i.data("save"),click:function(){var a="";t.state().get("library").each(function(e){a+=e.id+","}),this.el.innerHTML=i.data("progress"),e.ajax({type:"POST",url:ajaxurl,data:{ids:a,action:"carousel_slider_save_images",post_id:i.data("id")},success:function(){o=s(a),e("#_carousel_slider_images_ids").val(a),t.close()},dataType:"html"}).done(function(t){e(".carousel_slider_gallery_list").html(t)})}}})}(t||o)&&(n.title=i.data("edit")),(t=wp.media(n).open()).menu.get("view").unset("cancel"),t.menu.get("view").unset("separateCancel"),t.menu.get("view").get("gallery-edit").el.innerHTML=i.data("edit"),t.content.get("view").sidebar.unset("gallery"),l(),t.on("toolbar:render:gallery-edit",function(){l()}),t.on("content:render:browse",function(e){e&&(e.sidebar.on("ready",function(){e.sidebar.unset("gallery")}),e.toolbar.on("ready",function(){"gallery-library"===e.toolbar.controller._state&&e.toolbar.$el.hide()}))}),t.state().get("library").on("remove",function(){0===t.state().get("library").length&&(o=!1,e.post(ajaxurl,{ids:"",action:"carousel_slider_save_images",post_id:i.data("id")}))})})}(jQuery),function(e){"use strict";var t=e("body"),i=e("#CarouselSliderModal"),o=e("#_images_urls_btn"),s=e("#carouselSliderGalleryUrlTemplate").html();o.on("click",function(t){t.preventDefault(),i.css("display","block"),e("body").addClass("overflowHidden")}),i.on("click",".carousel_slider-close",function(t){t.preventDefault(),i.css("display","none"),e("body").removeClass("overflowHidden")});var a=e(window).height()-148;e(".carousel_slider-modal-body").css("height",a+"px"),t.on("click",".add_row",function(){e(this).closest(".carousel_slider-fields").after(s)}),t.on("click",".delete_row",function(){e(this).closest(".carousel_slider-fields").remove()}),e("#carousel_slider_form").sortable()}(jQuery),function(e){"use strict";e(document).on("click",'[data-toggle="modal"]',function(t){t.preventDefault(),e(e(this).data("target")).addClass("is-active")}),e(document).on("click",'[data-dismiss="modal"]',function(t){t.preventDefault(),e(this).closest(".modal").removeClass("is-active")})}(jQuery),function(e){"use strict";var t=e("#_carousel_slider_slide_type"),i=e("#section_images_settings"),o=e("#section_url_images_settings"),s=e("#section_images_general_settings"),a=e("#section_post_query"),n=e("#section_video_settings"),l=e("#section_product_query"),d=e("#section_content_carousel"),c=e("#_post_query_type"),r=e("#field-_post_date_after"),u=e("#field-_post_date_before"),_=e("#field-_post_categories"),f=e("#field-_post_tags"),p=e("#field-_post_in"),h=e("#field-_posts_per_page"),v=e("#_product_query_type"),g=e("#field-_product_query"),b=e("#field-_product_categories"),m=e("#field-_product_tags"),w=e("#field-_product_in"),y=e("#field-_products_per_page");if(t.on("change",function(){i.hide("fast"),o.hide("fast"),s.hide("fast"),a.hide("fast"),n.hide("fast"),l.hide("fast"),d.hide("fast"),"image-carousel"===this.value&&(i.slideDown(),s.slideDown()),"image-carousel-url"===this.value&&(o.slideDown(),s.slideDown()),"post-carousel"===this.value&&a.slideDown(),"video-carousel"===this.value&&n.slideDown(),"product-carousel"===this.value&&(l.slideDown(),g.show()),"hero-banner-slider"===this.value&&d.slideDown()}),"post-carousel"===t.val()){var k=c.val();"date_range"===k&&(r.show(),u.show()),"post_categories"===k&&_.show(),"post_tags"===k&&f.show(),"specific_posts"===k&&(p.show(),h.hide())}if(c.on("change",function(){r.hide("fast"),u.hide("fast"),_.hide("fast"),f.hide("fast"),p.hide("fast"),h.show("fast"),"date_range"===this.value&&(r.slideDown(),u.slideDown()),"post_categories"===this.value&&_.slideDown(),"post_tags"===this.value&&f.slideDown(),"specific_posts"===this.value&&(p.slideDown(),h.hide("fast"))}),"product-carousel"===t.val()){var D=v.val();"query_porduct"===D&&g.show(),"product_categories"===D&&b.show(),"product_tags"===D&&m.show(),"specific_products"===D&&w.show()}v.on("change",function(){g.hide("fast"),b.hide("fast"),m.hide("fast"),w.hide("fast"),y.show("fast"),"query_porduct"===this.value&&g.slideDown(),"product_categories"===this.value&&b.slideDown(),"product_tags"===this.value&&m.slideDown(),"specific_products"===this.value&&(w.slideDown(),y.hide("fast"))})}(jQuery),function(e){"use strict";e(".cs-tooltip").each(function(){e(this).tipTip()}),e("select.select2").each(function(){e(this).select2()}),e(".shapla-toggle").each(function(){"closed"===e(this).attr("data-id")?e(this).accordion({collapsible:!0,heightStyle:"content",active:!1}):e(this).accordion({collapsible:!0,heightStyle:"content"})}),e(".shapla-tabs").tabs({hide:{effect:"fadeOut",duration:200},show:{effect:"fadeIn",duration:200}}),e(".datepicker").each(function(){e(this).datepicker({dateFormat:"MM dd, yy",changeMonth:!0,changeYear:!0,onClose:function(t){e(this).datepicker("option","minDate",t)}})}),e(".color-picker").each(function(){e(this).wpColorPicker({palettes:["#2196F3","#009688","#4CAF50","#F44336","#FFEB3B","#00D1B2","#000000","#ffffff"]})})}(jQuery);
assets/js/public/script.js DELETED
@@ -1,60 +0,0 @@
1
- (function ($) {
2
- $('body').find('.carousel-slider').each(function () {
3
- var _this = $(this);
4
- var isVideo = _this.data('slide-type') === 'video-carousel';
5
- var videoWidth = isVideo ? _this.data('video-width') : false;
6
- var videoHeight = isVideo ? _this.data('video-height') : false;
7
- var autoWidth = _this.data('auto-width');
8
- var stagePadding = parseInt(_this.data('stage-padding'));
9
- autoWidth = isVideo ? isVideo : autoWidth;
10
- stagePadding = stagePadding > 0 ? stagePadding : 0;
11
-
12
- if (jQuery().owlCarousel) {
13
- _this.owlCarousel({
14
- stagePadding: stagePadding,
15
- nav: _this.data('nav'),
16
- dots: _this.data('dots'),
17
- margin: _this.data('margin'),
18
- loop: _this.data('loop'),
19
- autoplay: _this.data('autoplay'),
20
- autoplayTimeout: _this.data('autoplay-timeout'),
21
- autoplaySpeed: _this.data('autoplay-speed'),
22
- autoplayHoverPause: _this.data('autoplay-hover-pause'),
23
- slideBy: _this.data('slide-by'),
24
- lazyLoad: _this.data('lazy-load'),
25
- video: isVideo,
26
- videoWidth: videoWidth,
27
- videoHeight: videoHeight,
28
- autoWidth: autoWidth,
29
- navText: [
30
- '<svg class="carousel-slider-nav-icon" viewBox="0 0 20 20"><path d="M14 5l-5 5 5 5-1 2-7-7 7-7z"></path></use></svg>',
31
- '<svg class="carousel-slider-nav-icon" viewBox="0 0 20 20"><path d="M6 15l5-5-5-5 1-2 7 7-7 7z"></path></svg>'
32
- ],
33
- responsive: {
34
- 320: {items: _this.data('colums-mobile')},
35
- 600: {items: _this.data('colums-small-tablet')},
36
- 768: {items: _this.data('colums-tablet')},
37
- 993: {items: _this.data('colums-small-desktop')},
38
- 1200: {items: _this.data('colums-desktop')},
39
- 1921: {items: _this.data('colums')}
40
- }
41
- });
42
- }
43
-
44
- if (jQuery().magnificPopup) {
45
- var popupType = _this.data('slide-type') === 'product-carousel' ? 'ajax' : 'image';
46
- var popupGallery = _this.data('slide-type') !== 'product-carousel';
47
- $(this).find('.magnific-popup').magnificPopup({
48
- type: popupType,
49
- gallery: {
50
- enabled: popupGallery
51
- },
52
- zoom: {
53
- enabled: popupGallery,
54
- duration: 300,
55
- easing: 'ease-in-out'
56
- }
57
- });
58
- }
59
- });
60
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/scss/public/_animate.scss CHANGED
@@ -1,6 +1,6 @@
1
  // Owl Carousel - Animate Plugin
2
  .carousel-slider {
3
-
4
  .animated {
5
  animation-duration: 1000ms;
6
  animation-fill-mode: both;
@@ -14,6 +14,21 @@
14
  .fadeOut {
15
  animation-name: fadeOut;
16
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  }
18
 
19
  @keyframes fadeOut {
@@ -25,3 +40,57 @@
25
  opacity: 0;
26
  }
27
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  // Owl Carousel - Animate Plugin
2
  .carousel-slider {
3
+
4
  .animated {
5
  animation-duration: 1000ms;
6
  animation-fill-mode: both;
14
  .fadeOut {
15
  animation-name: fadeOut;
16
  }
17
+ .fadeInDown {
18
+ animation-name: fadeInDown;
19
+ }
20
+ .fadeInUp {
21
+ animation-name: fadeInUp;
22
+ }
23
+ .fadeInRight {
24
+ animation-name: fadeInRight;
25
+ }
26
+ .fadeInLeft {
27
+ animation-name: fadeInLeft;
28
+ }
29
+ .zoomIn {
30
+ animation-name: zoomIn;
31
+ }
32
  }
33
 
34
  @keyframes fadeOut {
40
  opacity: 0;
41
  }
42
  }
43
+
44
+ @keyframes fadeInDown {
45
+ from {
46
+ opacity: 0;
47
+ transform: translate3d(0, -100%, 0)
48
+ }
49
+ to {
50
+ opacity: 1;
51
+ transform: none
52
+ }
53
+ }
54
+
55
+ @keyframes fadeInUp {
56
+ from {
57
+ opacity: 0;
58
+ transform: translate3d(0, 100%, 0)
59
+ }
60
+ to {
61
+ opacity: 1;
62
+ transform: none
63
+ }
64
+ }
65
+
66
+ @keyframes fadeInRight {
67
+ from {
68
+ opacity: 0;
69
+ transform: translate3d(100%, 0, 0)
70
+ }
71
+ to {
72
+ opacity: 1;
73
+ transform: none
74
+ }
75
+ }
76
+
77
+ @keyframes fadeInLeft {
78
+ from {
79
+ opacity: 0;
80
+ transform: translate3d(-100%, 0, 0)
81
+ }
82
+ to {
83
+ opacity: 1;
84
+ transform: none
85
+ }
86
+ }
87
+
88
+ @keyframes zoomIn {
89
+ from {
90
+ opacity: 0;
91
+ transform: scale3d(.3, .3, .3)
92
+ }
93
+ 50% {
94
+ opacity: 1
95
+ }
96
+ }
assets/scss/public/_video.scss CHANGED
@@ -1,49 +1,38 @@
1
  // Owl Carousel - Video Plugin
2
  .carousel-slider {
3
 
4
- .owl-video-wrapper {
5
  position: relative;
6
  height: 100%;
7
  background: #000;
8
  }
9
 
10
- .owl-video-play-icon {
11
  position: absolute;
12
- height: 80px;
13
- width: 80px;
14
  left: 50%;
15
  top: 50%;
16
- margin-left: -40px;
17
- margin-top: -40px;
18
- background: url( $owl-video-play-icon ) no-repeat;
19
  cursor: pointer;
20
- z-index: 1;
21
  -webkit-backface-visibility: hidden;
22
  transition: transform 100ms ease;
23
  }
24
 
25
- .owl-video-play-icon:hover {
26
- transform: scale(1.3, 1.3);
27
- }
28
-
29
- .owl-video-playing .owl-video-tn,
30
- .owl-video-playing .owl-video-play-icon {
31
- display: none;
32
- }
33
-
34
- .owl-video-tn {
35
- opacity: 0;
36
  height: 100%;
37
- background-position: center center;
38
- background-repeat: no-repeat;
39
- background-size: contain;
40
- transition: opacity 400ms ease;
 
41
  }
42
 
43
- .owl-video-frame {
44
- position: relative;
45
- z-index: 1;
46
- height: 100%;
47
- width: 100%;
48
  }
49
  }
1
  // Owl Carousel - Video Plugin
2
  .carousel-slider {
3
 
4
+ .carousel-slider-video-wrapper {
5
  position: relative;
6
  height: 100%;
7
  background: #000;
8
  }
9
 
10
+ .carousel-slider-video-play-icon {
11
  position: absolute;
12
+ height: 40px;
13
+ width: 40px;
14
  left: 50%;
15
  top: 50%;
16
+ margin-left: -20px;
17
+ margin-top: -20px;
18
+ background: url($owl-video-play-icon) no-repeat;
19
  cursor: pointer;
20
+ z-index: 2;
21
  -webkit-backface-visibility: hidden;
22
  transition: transform 100ms ease;
23
  }
24
 
25
+ .carousel-slider-video-overlay {
26
+ position: absolute;
 
 
 
 
 
 
 
 
 
27
  height: 100%;
28
+ width: 100%;
29
+ left: 0;
30
+ top: 0;
31
+ background-color: rgba(#000000, 0.5);
32
+ z-index: 1;
33
  }
34
 
35
+ .carousel-slider-video-play-icon:hover {
36
+ transform: scale(1.3, 1.3);
 
 
 
37
  }
38
  }
carousel-slider.php CHANGED
@@ -3,14 +3,14 @@
3
  * Plugin Name: Carousel Slider
4
  * Plugin URI: http://wordpress.org/plugins/carousel-slider
5
  * Description: The Easiest Way to Create SEO friendly Image, Logo, Video, Post and WooCommerce Product Carousel.
6
- * Version: 1.8.3
7
  * Author: Sayful Islam
8
  * Author URI: https://sayfulislam.com
9
  * Requires at least: 4.4
10
  * Tested up to: 4.9
11
  *
12
  * WC requires at least: 2.5
13
- * WC tested up to: 3.2
14
  *
15
  * Text Domain: carousel-slider
16
  *
@@ -42,7 +42,7 @@ if ( ! class_exists( 'Carousel_Slider' ) ) {
42
  *
43
  * @var string
44
  */
45
- private $version = '1.8.3';
46
 
47
  /**
48
  * Minimum PHP version required
@@ -85,14 +85,14 @@ if ( ! class_exists( 'Carousel_Slider' ) ) {
85
  }
86
 
87
  public function define_constants() {
88
- $this->define( 'CAROUSEL_SLIDER_VERSION', $this->version );
89
- $this->define( 'CAROUSEL_SLIDER_FILE', __FILE__ );
90
- $this->define( 'CAROUSEL_SLIDER_PATH', dirname( CAROUSEL_SLIDER_FILE ) );
91
- $this->define( 'CAROUSEL_SLIDER_INCLUDES', CAROUSEL_SLIDER_PATH . '/includes' );
92
- $this->define( 'CAROUSEL_SLIDER_TEMPLATES', CAROUSEL_SLIDER_PATH . '/templates' );
93
- $this->define( 'CAROUSEL_SLIDER_WIDGETS', CAROUSEL_SLIDER_PATH . '/widgets' );
94
- $this->define( 'CAROUSEL_SLIDER_URL', plugins_url( '', CAROUSEL_SLIDER_FILE ) );
95
- $this->define( 'CAROUSEL_SLIDER_ASSETS', CAROUSEL_SLIDER_URL . '/assets' );
96
  }
97
 
98
  /**
3
  * Plugin Name: Carousel Slider
4
  * Plugin URI: http://wordpress.org/plugins/carousel-slider
5
  * Description: The Easiest Way to Create SEO friendly Image, Logo, Video, Post and WooCommerce Product Carousel.
6
+ * Version: 1.8.5
7
  * Author: Sayful Islam
8
  * Author URI: https://sayfulislam.com
9
  * Requires at least: 4.4
10
  * Tested up to: 4.9
11
  *
12
  * WC requires at least: 2.5
13
+ * WC tested up to: 3.3
14
  *
15
  * Text Domain: carousel-slider
16
  *
42
  *
43
  * @var string
44
  */
45
+ private $version = '1.8.5';
46
 
47
  /**
48
  * Minimum PHP version required
85
  }
86
 
87
  public function define_constants() {
88
+ define( 'CAROUSEL_SLIDER_VERSION', $this->version );
89
+ define( 'CAROUSEL_SLIDER_FILE', __FILE__ );
90
+ define( 'CAROUSEL_SLIDER_PATH', dirname( CAROUSEL_SLIDER_FILE ) );
91
+ define( 'CAROUSEL_SLIDER_INCLUDES', CAROUSEL_SLIDER_PATH . '/includes' );
92
+ define( 'CAROUSEL_SLIDER_TEMPLATES', CAROUSEL_SLIDER_PATH . '/templates' );
93
+ define( 'CAROUSEL_SLIDER_WIDGETS', CAROUSEL_SLIDER_PATH . '/widgets' );
94
+ define( 'CAROUSEL_SLIDER_URL', plugins_url( '', CAROUSEL_SLIDER_FILE ) );
95
+ define( 'CAROUSEL_SLIDER_ASSETS', CAROUSEL_SLIDER_URL . '/assets' );
96
  }
97
 
98
  /**
includes/class-carousel-slider-activator.php CHANGED
@@ -68,8 +68,6 @@ if ( ! class_exists( 'Carousel_Slider_Activator' ) ):
68
  update_post_meta( $id, '_lazy_load_image', $_lazy_load );
69
  update_post_meta( $id, '_items_desktop', $_items_desktop );
70
  update_post_meta( $id, '_slide_type', 'image-carousel' );
71
- update_post_meta( $id, '_video_width', '560' );
72
- update_post_meta( $id, '_video_height', '315' );
73
  }
74
  }
75
  }
68
  update_post_meta( $id, '_lazy_load_image', $_lazy_load );
69
  update_post_meta( $id, '_items_desktop', $_items_desktop );
70
  update_post_meta( $id, '_slide_type', 'image-carousel' );
 
 
71
  }
72
  }
73
  }
includes/class-carousel-slider-admin.php CHANGED
@@ -331,9 +331,11 @@ if ( ! class_exists( 'Carousel_Slider_Admin' ) ):
331
  public function attachment_fields_to_edit( $form_fields, $post ) {
332
  $form_fields["carousel_slider_link_url"]["label"] = __( "Link to URL", "carousel-slider" );
333
  $form_fields["carousel_slider_link_url"]["input"] = "textarea";
334
- $form_fields["carousel_slider_link_url"]["value"] = get_post_meta( $post->ID, "_carousel_slider_link_url", true );
 
335
  $form_fields["carousel_slider_link_url"]["extra_rows"] = array(
336
- 'carouselSliderInfo' => __( '"Link to URL" only works on Carousel Slider for linking image to a custom url.', 'carousel-slider' ),
 
337
  );
338
 
339
  return $form_fields;
@@ -420,9 +422,10 @@ if ( ! class_exists( 'Carousel_Slider_Admin' ) ):
420
  private function update_content_settings( $post_id ) {
421
  $setting = $_POST['content_settings'];
422
  $_settings = array(
423
- 'slide_height' => sanitize_text_field( $setting['slide_height'] ),
424
- 'content_width' => sanitize_text_field( $setting['content_width'] ),
425
- 'slide_padding' => array(
 
426
  'top' => sanitize_text_field( $setting['slide_padding']['top'] ),
427
  'right' => sanitize_text_field( $setting['slide_padding']['right'] ),
428
  'bottom' => sanitize_text_field( $setting['slide_padding']['bottom'] ),
331
  public function attachment_fields_to_edit( $form_fields, $post ) {
332
  $form_fields["carousel_slider_link_url"]["label"] = __( "Link to URL", "carousel-slider" );
333
  $form_fields["carousel_slider_link_url"]["input"] = "textarea";
334
+ $form_fields["carousel_slider_link_url"]["value"] = get_post_meta( $post->ID,
335
+ "_carousel_slider_link_url", true );
336
  $form_fields["carousel_slider_link_url"]["extra_rows"] = array(
337
+ 'carouselSliderInfo' => __( '"Link to URL" only works on Carousel Slider for linking image to a custom url.',
338
+ 'carousel-slider' ),
339
  );
340
 
341
  return $form_fields;
422
  private function update_content_settings( $post_id ) {
423
  $setting = $_POST['content_settings'];
424
  $_settings = array(
425
+ 'slide_height' => sanitize_text_field( $setting['slide_height'] ),
426
+ 'content_width' => sanitize_text_field( $setting['content_width'] ),
427
+ 'content_animation' => sanitize_text_field( $setting['content_animation'] ),
428
+ 'slide_padding' => array(
429
  'top' => sanitize_text_field( $setting['slide_padding']['top'] ),
430
  'right' => sanitize_text_field( $setting['slide_padding']['right'] ),
431
  'bottom' => sanitize_text_field( $setting['slide_padding']['bottom'] ),
includes/class-carousel-slider-script.php CHANGED
@@ -109,7 +109,8 @@ if ( ! class_exists( 'Carousel_Slider_Script' ) ):
109
  );
110
 
111
  foreach ( $scripts as $handle => $script ) {
112
- wp_register_script( $handle, $script['src'], $script['dependency'], $script['version'], $script['in_footer'] );
 
113
  }
114
  }
115
 
@@ -159,12 +160,8 @@ if ( ! class_exists( 'Carousel_Slider_Script' ) ):
159
 
160
  $('body').find('.carousel-slider').each(function () {
161
  var _this = $(this);
162
- var isVideo = _this.data('slide-type') === 'video-carousel';
163
- var videoWidth = isVideo ? _this.data('video-width') : false;
164
- var videoHeight = isVideo ? _this.data('video-height') : false;
165
  var autoWidth = _this.data('auto-width');
166
  var stagePadding = parseInt(_this.data('stage-padding'));
167
- autoWidth = isVideo ? isVideo : autoWidth;
168
  stagePadding = stagePadding > 0 ? stagePadding : 0;
169
 
170
  if (jQuery().owlCarousel) {
@@ -180,9 +177,6 @@ if ( ! class_exists( 'Carousel_Slider_Script' ) ):
180
  autoplayHoverPause: _this.data('autoplay-hover-pause'),
181
  slideBy: _this.data('slide-by'),
182
  lazyLoad: _this.data('lazy-load'),
183
- video: isVideo,
184
- videoWidth: videoWidth,
185
- videoHeight: videoHeight,
186
  autoWidth: autoWidth,
187
  navText: [
188
  '<svg class="carousel-slider-nav-icon" viewBox="0 0 20 20"><path d="M14 5l-5 5 5 5-1 2-7-7 7-7z"></path></use></svg>',
@@ -197,22 +191,46 @@ if ( ! class_exists( 'Carousel_Slider_Script' ) ):
197
  1921: {items: _this.data('colums')}
198
  }
199
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200
  }
201
 
202
  if (jQuery().magnificPopup) {
203
- var popupType = _this.data('slide-type') === 'product-carousel' ? 'ajax' : 'image';
204
- var popupGallery = _this.data('slide-type') !== 'product-carousel';
205
- $(this).find('.magnific-popup').magnificPopup({
206
- type: popupType,
207
- gallery: {
208
- enabled: popupGallery
209
- },
210
- zoom: {
211
- enabled: popupGallery,
212
- duration: 300,
213
- easing: 'ease-in-out'
214
- }
215
- });
 
 
 
 
 
 
 
 
216
  }
217
  });
218
  })(jQuery);
109
  );
110
 
111
  foreach ( $scripts as $handle => $script ) {
112
+ wp_register_script( $handle, $script['src'], $script['dependency'], $script['version'],
113
+ $script['in_footer'] );
114
  }
115
  }
116
 
160
 
161
  $('body').find('.carousel-slider').each(function () {
162
  var _this = $(this);
 
 
 
163
  var autoWidth = _this.data('auto-width');
164
  var stagePadding = parseInt(_this.data('stage-padding'));
 
165
  stagePadding = stagePadding > 0 ? stagePadding : 0;
166
 
167
  if (jQuery().owlCarousel) {
177
  autoplayHoverPause: _this.data('autoplay-hover-pause'),
178
  slideBy: _this.data('slide-by'),
179
  lazyLoad: _this.data('lazy-load'),
 
 
 
180
  autoWidth: autoWidth,
181
  navText: [
182
  '<svg class="carousel-slider-nav-icon" viewBox="0 0 20 20"><path d="M14 5l-5 5 5 5-1 2-7-7 7-7z"></path></use></svg>',
191
  1921: {items: _this.data('colums')}
192
  }
193
  });
194
+
195
+ if ('hero-banner-slider' === _this.data('slide-type')) {
196
+ var animation = _this.data('animation');
197
+ if (animation.length) {
198
+ _this.on('change.owl.carousel', function () {
199
+ var sliderContent = _this.find('.carousel-slider-hero__cell__content');
200
+ sliderContent.removeClass('animated' + ' ' + animation).hide();
201
+ });
202
+ _this.on('changed.owl.carousel', function (e) {
203
+ setTimeout(function () {
204
+ var current = $(e.target).find('.carousel-slider-hero__cell__content').eq(e.item.index);
205
+ current.show().addClass('animated' + ' ' + animation);
206
+ }, _this.data('autoplay-speed'));
207
+ });
208
+ }
209
+ }
210
  }
211
 
212
  if (jQuery().magnificPopup) {
213
+ if (_this.data('slide-type') === 'product-carousel') {
214
+ $(this).find('.magnific-popup').magnificPopup({
215
+ type: 'ajax'
216
+ });
217
+ } else if ('video-carousel' === _this.data('slide-type')) {
218
+ $(this).find('.magnific-popup').magnificPopup({
219
+ type: 'iframe'
220
+ });
221
+ } else {
222
+ $(this).find('.magnific-popup').magnificPopup({
223
+ type: 'image',
224
+ gallery: {
225
+ enabled: true
226
+ },
227
+ zoom: {
228
+ enabled: true,
229
+ duration: 300,
230
+ easing: 'ease-in-out'
231
+ }
232
+ });
233
+ }
234
  }
235
  });
236
  })(jQuery);
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: woocommerce, shortcode, images, carousel, carousel slider, image carousel,
4
  Requires at least: 4.5
5
  Tested up to: 4.9
6
  Requires PHP: 5.3
7
- Stable tag: 1.8.3
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.txt
10
 
@@ -33,6 +33,7 @@ Carousel Slider is a touch enabled WordPress plugin that lets you create highly
33
  = Full Feature Set =
34
 
35
  * **Multiple types carousel**, images from media gallery, images from URL, videos from youtube and vimeo, posts, and WooCommerce products carousel slider
 
36
  * **Posts carousel**, support Specific posts, Post Categories, Post Tags, Posts per page, Date range query and ordering
37
  * **Video carousel**, support custom height and width (Currently only support video from Youtube and Vimeo)
38
  * **WooCommerce Product carousel**, support Product Categories, Product Tags, Specific Products, Featured Products, Recent Products, Sale Products, Best-Selling Products, Top Rated Products
@@ -119,7 +120,16 @@ Now you can use the following function at your theme template file replacing `YO
119
 
120
  == Changelog ==
121
 
122
- = version 1.8.3 - 2017-12-08 =
 
 
 
 
 
 
 
 
 
123
  * Added - Background Overlay color for hero carousel.
124
  * Added - Ken Burns Effect for hero carousel.
125
  * Tweak - Update hero carousel style.
4
  Requires at least: 4.5
5
  Tested up to: 4.9
6
  Requires PHP: 5.3
7
+ Stable tag: 1.8.5
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.txt
10
 
33
  = Full Feature Set =
34
 
35
  * **Multiple types carousel**, images from media gallery, images from URL, videos from youtube and vimeo, posts, and WooCommerce products carousel slider
36
+ * **Hero slider** with background image, title, description, call to action buttons and more
37
  * **Posts carousel**, support Specific posts, Post Categories, Post Tags, Posts per page, Date range query and ordering
38
  * **Video carousel**, support custom height and width (Currently only support video from Youtube and Vimeo)
39
  * **WooCommerce Product carousel**, support Product Categories, Product Tags, Specific Products, Featured Products, Recent Products, Sale Products, Best-Selling Products, Top Rated Products
120
 
121
  == Changelog ==
122
 
123
+ = version 1.8.5 - 2018-01-31 =
124
+ * Fixed - Fixed syntax error for short array syntax on PHP 5.3
125
+
126
+ = version 1.8.4 - 2018-01-25 =
127
+ * Added - Add content animation for hero carouse slider.
128
+ * Fixed - Open Slide Link In New Window issue
129
+ * Removed - Fixed Width and Height for video carousel.
130
+ * Added - Add lightbox support for video carousel
131
+
132
+ = version 1.8.3 - 2017-12-01 =
133
  * Added - Background Overlay color for hero carousel.
134
  * Added - Ken Burns Effect for hero carousel.
135
  * Tweak - Update hero carousel style.
shortcodes/class-carousel-slider-deprecated-shortcode.php CHANGED
@@ -78,9 +78,6 @@ if ( ! class_exists( 'Carousel_Slider_Deprecated_Shortcode' ) ):
78
  // Navigation
79
  'data-nav' => $navigation,
80
  'data-dots' => $pagination,
81
- // Video
82
- 'data-video-width' => 'false',
83
- 'data-video-height' => 'false',
84
  // Autoplay
85
  'data-autoplay' => $auto_play,
86
  'data-autoplay-timeout' => $autoplay_timeout,
78
  // Navigation
79
  'data-nav' => $navigation,
80
  'data-dots' => $pagination,
 
 
 
81
  // Autoplay
82
  'data-autoplay' => $auto_play,
83
  'data-autoplay-timeout' => $autoplay_timeout,
shortcodes/class-carousel-slider-shortcode.php CHANGED
@@ -56,6 +56,10 @@ if ( ! class_exists( 'Carousel_Slider_Shortcode' ) ):
56
  }
57
 
58
  if ( $slide_type == 'video-carousel' ) {
 
 
 
 
59
  ob_start();
60
  require CAROUSEL_SLIDER_TEMPLATES . '/public/video-carousel.php';
61
  $html = ob_get_contents();
@@ -190,9 +194,6 @@ if ( ! class_exists( 'Carousel_Slider_Shortcode' ) ):
190
  // Navigation
191
  'data-dots' => $this->get_meta( $id, '_dot_nav', 'false' ),
192
  'data-nav' => $this->get_meta( $id, '_nav_button', 'false' ),
193
- // Video
194
- 'data-video-width' => $this->get_meta( $id, '_video_width', 'false' ),
195
- 'data-video-height' => $this->get_meta( $id, '_video_height', 'false' ),
196
  // Autoplay
197
  'data-autoplay' => $this->get_meta( $id, '_autoplay', 'true' ),
198
  'data-autoplay-timeout' => $this->get_meta( $id, '_autoplay_timeout', '5000' ),
@@ -234,42 +235,6 @@ if ( ! class_exists( 'Carousel_Slider_Shortcode' ) ):
234
  return carousel_slider_array_to_attribute( $array );
235
  }
236
 
237
- /**
238
- * Check if url is valid as per RFC 2396 Generic Syntax
239
- *
240
- * @param string $url
241
- *
242
- * @return boolean
243
- */
244
- public function is_valid_url( $url ) {
245
- return carousel_slider_is_url( $url );
246
- }
247
-
248
- /**
249
- * Convert url to youtube and vimeo video link
250
- *
251
- * @param $url
252
- *
253
- * @return string
254
- */
255
- public function video_url( $url ) {
256
- if ( ! $this->is_valid_url( $url ) ) {
257
- return '';
258
- }
259
-
260
- $url = esc_url( $url );
261
-
262
- if ( strpos( $url, 'youtube.com' ) > 0 ) {
263
- return '<div class="item-video"><a class="owl-video" href="' . $url . '"></a></div>';
264
- }
265
-
266
- if ( strpos( $url, 'vimeo.com' ) > 0 ) {
267
- return '<div class="item-video"><a class="owl-video" href="' . $url . '"></a></div>';
268
- }
269
-
270
- return '';
271
- }
272
-
273
  /**
274
  * Get product categories list carousel
275
  *
@@ -311,6 +276,96 @@ if ( ! class_exists( 'Carousel_Slider_Shortcode' ) ):
311
 
312
  return $html;
313
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
314
  }
315
 
316
  endif;
56
  }
57
 
58
  if ( $slide_type == 'video-carousel' ) {
59
+ wp_enqueue_script( 'magnific-popup' );
60
+ $_video_urls = array_filter( explode( ',', $this->get_meta( $id, '_video_url' ) ) );
61
+ $urls = $this->get_video_url( $_video_urls );
62
+
63
  ob_start();
64
  require CAROUSEL_SLIDER_TEMPLATES . '/public/video-carousel.php';
65
  $html = ob_get_contents();
194
  // Navigation
195
  'data-dots' => $this->get_meta( $id, '_dot_nav', 'false' ),
196
  'data-nav' => $this->get_meta( $id, '_nav_button', 'false' ),
 
 
 
197
  // Autoplay
198
  'data-autoplay' => $this->get_meta( $id, '_autoplay', 'true' ),
199
  'data-autoplay-timeout' => $this->get_meta( $id, '_autoplay_timeout', '5000' ),
235
  return carousel_slider_array_to_attribute( $array );
236
  }
237
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
238
  /**
239
  * Get product categories list carousel
240
  *
276
 
277
  return $html;
278
  }
279
+
280
+ /**
281
+ * Get Youtube video ID from URL
282
+ *
283
+ * @param string $url
284
+ *
285
+ * @return mixed Youtube video ID or FALSE if not found
286
+ */
287
+ private function get_youtube_id_from_url( $url ) {
288
+ $parts = parse_url( $url );
289
+ if ( isset( $parts['query'] ) ) {
290
+ parse_str( $parts['query'], $qs );
291
+ if ( isset( $qs['v'] ) ) {
292
+ return $qs['v'];
293
+ } elseif ( isset( $qs['vi'] ) ) {
294
+ return $qs['vi'];
295
+ }
296
+ }
297
+ if ( isset( $parts['path'] ) ) {
298
+ $path = explode( '/', trim( $parts['path'], '/' ) );
299
+
300
+ return $path[ count( $path ) - 1 ];
301
+ }
302
+
303
+ return false;
304
+ }
305
+
306
+ /**
307
+ * Get Vimeo video ID from URL
308
+ *
309
+ * @param string $url
310
+ *
311
+ * @return mixed Vimeo video ID or FALSE if not found
312
+ */
313
+ private function get_vimeo_id_from_url( $url ) {
314
+ $parts = parse_url( $url );
315
+ if ( isset( $parts['path'] ) ) {
316
+ $path = explode( '/', trim( $parts['path'], '/' ) );
317
+
318
+ return $path[ count( $path ) - 1 ];
319
+ }
320
+
321
+ return false;
322
+ }
323
+
324
+ /**
325
+ * @param $video_urls
326
+ *
327
+ * @return array
328
+ */
329
+ public function get_video_url( array $video_urls ) {
330
+ $_url = array();
331
+ foreach ( $video_urls as $video_url ) {
332
+ if ( ! filter_var( $video_url, FILTER_VALIDATE_URL ) ) {
333
+ continue;
334
+ }
335
+ $provider = '';
336
+ $video_id = '';
337
+ $thumbnail = '';
338
+ if ( false !== strpos( $video_url, 'youtube.com' ) ) {
339
+ $provider = 'youtube';
340
+ $video_id = $this->get_youtube_id_from_url( $video_url );
341
+ $thumbnail = array(
342
+ 'large' => 'https://img.youtube.com/vi/' . $video_id . '/hqdefault.jpg',
343
+ 'medium' => 'https://img.youtube.com/vi/' . $video_id . '/mqdefault.jpg',
344
+ 'small' => 'https://img.youtube.com/vi/' . $video_id . '/sddefault.jpg',
345
+ );
346
+
347
+ } elseif ( false !== strpos( $video_url, 'vimeo.com' ) ) {
348
+ $provider = 'vimeo';
349
+ $video_id = $this->get_vimeo_id_from_url( $video_url );
350
+ $response = wp_remote_get( "https://vimeo.com/api/v2/video/$video_id.json" );
351
+ $thumbnail = json_decode( wp_remote_retrieve_body( $response ), true );
352
+ $thumbnail = array(
353
+ 'large' => isset( $thumbnail[0]['thumbnail_large'] ) ? $thumbnail[0]['thumbnail_large'] : null,
354
+ 'medium' => isset( $thumbnail[0]['thumbnail_medium'] ) ? $thumbnail[0]['thumbnail_medium'] : null,
355
+ 'small' => isset( $thumbnail[0]['thumbnail_small'] ) ? $thumbnail[0]['thumbnail_small'] : null,
356
+ );
357
+ }
358
+
359
+ $_url[] = array(
360
+ 'provider' => $provider,
361
+ 'url' => $video_url,
362
+ 'video_id' => $video_id,
363
+ 'thumbnail' => $thumbnail,
364
+ );
365
+ }
366
+
367
+ return $_url;
368
+ }
369
  }
370
 
371
  endif;
templates/admin/hero-banner-slider.php CHANGED
@@ -14,12 +14,13 @@ if ( ! defined( 'WPINC' ) ) {
14
  <button class="button carousel-slider__add-slide" data-post-id="<?php echo $post->ID; ?>">Add Slide</button>
15
  <div id="carouselSliderContentInside">
16
  <?php
17
- $content_sliders = get_post_meta( $post->ID, '_content_slider', true );
18
- $content_settings = get_post_meta( $post->ID, '_content_slider_settings', true );
19
- $_slide_height = isset( $content_settings['slide_height'] ) ? $content_settings['slide_height'] : '400px';
20
- $_content_width = isset( $content_settings['content_width'] ) ? $content_settings['content_width'] : '850px';
21
- $_slide_animation = isset( $content_settings['slide_animation'] ) ? $content_settings['slide_animation'] : 'fadeOut';
22
- $_slide_padding = isset( $content_settings['slide_padding'] ) ? $content_settings['slide_padding'] : array();
 
23
 
24
 
25
  // Get WordPress media upload URL
@@ -237,6 +238,35 @@ if ( ! defined( 'WPINC' ) ) {
237
  <input type="text" name="content_settings[content_width]" id="_content_content_width"
238
  class="sp-input-text" value="<?php echo $_content_width; ?>">
239
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
240
  </div>
241
  <div class="sp-input-group" id="field-_content_slide_padding">
242
  <div class="sp-input-label">
14
  <button class="button carousel-slider__add-slide" data-post-id="<?php echo $post->ID; ?>">Add Slide</button>
15
  <div id="carouselSliderContentInside">
16
  <?php
17
+ $content_sliders = get_post_meta( $post->ID, '_content_slider', true );
18
+ $content_settings = get_post_meta( $post->ID, '_content_slider_settings', true );
19
+ $_slide_height = isset( $content_settings['slide_height'] ) ? $content_settings['slide_height'] : '400px';
20
+ $_content_width = isset( $content_settings['content_width'] ) ? $content_settings['content_width'] : '850px';
21
+ $_slide_animation = isset( $content_settings['slide_animation'] ) ? $content_settings['slide_animation'] : 'fadeOut';
22
+ $_slide_padding = isset( $content_settings['slide_padding'] ) ? $content_settings['slide_padding'] : array();
23
+ $_content_animation = isset( $content_settings['content_animation'] ) ? $content_settings['content_animation'] : '';
24
 
25
 
26
  // Get WordPress media upload URL
238
  <input type="text" name="content_settings[content_width]" id="_content_content_width"
239
  class="sp-input-text" value="<?php echo $_content_width; ?>">
240
  </div>
241
+ </div>
242
+ <?php
243
+ $animations = [
244
+ '' => esc_html__( 'None', 'carousel-slider' ),
245
+ 'fadeInDown' => esc_html__( 'Fade In Down', 'carousel-slider' ),
246
+ 'fadeInUp' => esc_html__( 'Fade In Up', 'carousel-slider' ),
247
+ 'fadeInRight' => esc_html__( 'Fade In Right', 'carousel-slider' ),
248
+ 'fadeInLeft' => esc_html__( 'Fade In Left', 'carousel-slider' ),
249
+ 'zoomIn' => esc_html__( 'Zoom In', 'carousel-slider' ),
250
+ ];
251
+ ?>
252
+ <div class="sp-input-group" id="field-_content_animation">
253
+ <div class="sp-input-label">
254
+ <label for="_content_animation"><?php esc_html_e( 'Content Animation',
255
+ 'carousel-slider' ); ?></label>
256
+ <p class="sp-input-desc"><?php esc_html_e( 'Select slide content animation.',
257
+ 'carousel-slider' ); ?></p>
258
+ </div>
259
+ <div class="sp-input-field">
260
+ <select name="content_settings[content_animation]" id="_content_animation"
261
+ class="sp-input-text">
262
+ <?php
263
+ foreach ( $animations as $animation_slug => $animation ) {
264
+ $__selected = selected( $_content_animation, $animation_slug, false );
265
+ echo '<option value="' . $animation_slug . '" ' . $__selected . '>' . $animation . '</option>';
266
+ }
267
+ ?>
268
+ </select>
269
+ </div>
270
  </div>
271
  <div class="sp-input-group" id="field-_content_slide_padding">
272
  <div class="sp-input-label">
templates/admin/video-carousel.php CHANGED
@@ -21,18 +21,6 @@ if ( ! defined( 'WPINC' ) ) {
21
  'https://www.youtube.com/watch?v=O4-EM32h7b4,https://www.youtube.com/watch?v=72IO4gzB8mU,https://vimeo.com/193773669,https://vimeo.com/193517656'
22
  ),
23
  ) );
24
- $this->form->number( array(
25
- 'id' => '_video_width',
26
- 'name' => esc_html__( 'Video Width', 'carousel-slider' ),
27
- 'std' => 560,
28
- 'desc' => esc_html__( 'Enter video width in numbers.', 'carousel-slider' ),
29
- ) );
30
- $this->form->number( array(
31
- 'id' => '_video_height',
32
- 'name' => esc_html__( 'Video Height', 'carousel-slider' ),
33
- 'std' => 315,
34
- 'desc' => esc_html__( 'Enter video height in numbers.', 'carousel-slider' ),
35
- ) );
36
  ?>
37
  </div>
38
  </div>
21
  'https://www.youtube.com/watch?v=O4-EM32h7b4,https://www.youtube.com/watch?v=72IO4gzB8mU,https://vimeo.com/193773669,https://vimeo.com/193517656'
22
  ),
23
  ) );
 
 
 
 
 
 
 
 
 
 
 
 
24
  ?>
25
  </div>
26
  </div>
templates/public/hero-banner-slider.php CHANGED
@@ -10,10 +10,16 @@ $_lazy_load_image = get_post_meta( $id, '_lazy_load_image', true );
10
  $_be_lazy = in_array( $_lazy_load_image, array( 'on', 'off' ) ) ? $_lazy_load_image : 'on';
11
  $slide_options = join( " ", $this->carousel_options( $id ) );
12
 
 
 
 
 
 
 
13
  ?>
14
  <div class="carousel-slider-outer carousel-slider-outer-contents carousel-slider-outer-<?php echo $id; ?>">
15
  <?php carousel_slider_inline_style( $id ); ?>
16
- <div <?php echo $slide_options; ?>>
17
  <?php
18
  foreach ( $content_sliders as $slide_id => $slide ):
19
 
@@ -23,7 +29,7 @@ $slide_options = join( " ", $this->carousel_options( $id ) );
23
  array( 'full', 'button' ) ) ? $slide['link_type'] : 'full';
24
  $_slide_link = ! empty( $slide['slide_link'] ) ? esc_url( $slide['slide_link'] ) : '';
25
  $_link_target = ! empty( $slide['link_target'] ) && in_array( $slide['link_target'],
26
- array( '_self', '_blank' ) ) ? esc_url( $slide['link_target'] ) : '_self';
27
 
28
  $_cell_style = '';
29
  $_cell_style .= isset( $settings['slide_height'] ) ? 'height: ' . $settings['slide_height'] . ';' : '';
10
  $_be_lazy = in_array( $_lazy_load_image, array( 'on', 'off' ) ) ? $_lazy_load_image : 'on';
11
  $slide_options = join( " ", $this->carousel_options( $id ) );
12
 
13
+ if ( empty( $settings['content_animation'] ) ) {
14
+ $content_animation = '';
15
+ } else {
16
+ $content_animation = esc_attr( $settings['content_animation'] );
17
+ }
18
+
19
  ?>
20
  <div class="carousel-slider-outer carousel-slider-outer-contents carousel-slider-outer-<?php echo $id; ?>">
21
  <?php carousel_slider_inline_style( $id ); ?>
22
+ <div <?php echo $slide_options; ?> data-animation="<?php echo $content_animation; ?>">
23
  <?php
24
  foreach ( $content_sliders as $slide_id => $slide ):
25
 
29
  array( 'full', 'button' ) ) ? $slide['link_type'] : 'full';
30
  $_slide_link = ! empty( $slide['slide_link'] ) ? esc_url( $slide['slide_link'] ) : '';
31
  $_link_target = ! empty( $slide['link_target'] ) && in_array( $slide['link_target'],
32
+ array( '_self', '_blank' ) ) ? esc_attr( $slide['link_target'] ) : '_self';
33
 
34
  $_cell_style = '';
35
  $_cell_style .= isset( $settings['slide_height'] ) ? 'height: ' . $settings['slide_height'] . ';' : '';
templates/public/video-carousel.php CHANGED
@@ -4,13 +4,7 @@ if ( ! defined( 'WPINC' ) ) {
4
  die;
5
  }
6
 
7
- $_nav_color = get_post_meta( $id, '_nav_color', true );
8
- $_nav_active_color = get_post_meta( $id, '_nav_active_color', true );
9
- $_video_width = $this->get_meta( $id, '_video_width' );
10
- $_video_height = $this->get_meta( $id, '_video_height' );
11
- $_video_urls = array_filter( explode( ',', $this->get_meta( $id, '_video_url' ) ) );
12
-
13
- if ( count( $_video_urls ) < 1 ) {
14
  return;
15
  }
16
  ?>
@@ -18,8 +12,18 @@ if ( count( $_video_urls ) < 1 ) {
18
  <?php carousel_slider_inline_style( $id ); ?>
19
  <div <?php echo join( " ", $this->carousel_options( $id ) ); ?>>
20
  <?php
21
- foreach ( $_video_urls as $url ) {
22
- echo $this->video_url( $url );
 
 
 
 
 
 
 
 
 
 
23
  }
24
  ?>
25
  </div>
4
  die;
5
  }
6
 
7
+ if ( count( $urls ) < 1 ) {
 
 
 
 
 
 
8
  return;
9
  }
10
  ?>
12
  <?php carousel_slider_inline_style( $id ); ?>
13
  <div <?php echo join( " ", $this->carousel_options( $id ) ); ?>>
14
  <?php
15
+ foreach ( $urls as $url ) {
16
+ ?>
17
+ <div class="carousel-slider-item-video">
18
+ <div class="carousel-slider-video-wrapper">
19
+ <a class="magnific-popup" href="<?php echo $url['url']; ?>">
20
+ <div class="carousel-slider-video-play-icon"></div>
21
+ <div class="carousel-slider-video-overlay"></div>
22
+ <img class="owl-lazy" data-src="<?php echo $url['thumbnail']['large']; ?>"/>
23
+ </a>
24
+ </div>
25
+ </div>
26
+ <?php
27
  }
28
  ?>
29
  </div>