Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/devcows/hugo-universal-theme.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorGuillermo Guerrero <wolf.fox1985@gmail.com>2016-10-12 20:45:05 +0300
committerAdrián Moreno <adrian@morenomartinez.com>2016-10-14 10:37:53 +0300
commit7b28f08fde49e5985e07046723219dc6f76e8792 (patch)
tree6d27b7a44dee301012cf313ed799cb58170c37c7 /static
parent1cc6c2cfdd41bd124e418ef0b657d58d7c7f25e2 (diff)
Added travis and javascript lint.
Ignore min files. First file fixed offenses. Ignoring jquery and owl files. Refactor second file. Fixed eslint Removed unused js. Renamed gmaps. Added lintignore gmaps library. Added hugo build. Install brew via npm Set sudo true. install ruby and curl. brew is already installed? Try ruby image. changed image to osx. Create symbolic link. Added code climate. Reverted no-shadow-restricted-names.
Diffstat (limited to 'static')
-rw-r--r--static/js/bootstrap-hover-dropdown.js189
-rw-r--r--static/js/front.js584
-rw-r--r--static/js/gmaps.init.js58
-rw-r--r--static/js/hpneo.gmaps.js (renamed from static/js/gmaps.js)0
-rw-r--r--static/js/owl.carousel.js1517
5 files changed, 403 insertions, 1945 deletions
diff --git a/static/js/bootstrap-hover-dropdown.js b/static/js/bootstrap-hover-dropdown.js
index 20815f0..58ce9a1 100644
--- a/static/js/bootstrap-hover-dropdown.js
+++ b/static/js/bootstrap-hover-dropdown.js
@@ -1,3 +1,5 @@
+/* eslint no-shadow-restricted-names: 0 */
+
/**
* Project: Bootstrap Hover Dropdown
* Author: Cameron Spear
@@ -11,100 +13,103 @@
*
* http://cameronspear.com/blog/bootstrap-dropdown-on-hover-plugin/
*/
-;
-(function($, window, undefined) {
-// outside the scope of the jQuery plugin to
-// keep track of all dropdowns
- var $allDropdowns = $();
- // if instantlyCloseOthers is true, then it will instantly
- // shut other nav items when a new one is hovered over
- $.fn.dropdownHover = function(options) {
- // don't do anything if touch is supported
- // (plugin causes some issues on mobile)
- if ('ontouchstart' in document)
- return this; // don't want to affect chaining
- // the element we really care about
- // is the dropdown-toggle's parent
- $allDropdowns = $allDropdowns.add(this.parent());
- return this.each(function() {
- var $this = $(this),
- $parent = $this.parent(),
- defaults = {
- delay: 500,
- instantlyCloseOthers: true
- },
- data = {
- delay: $(this).data('delay'),
- instantlyCloseOthers: $(this).data('close-others')
- },
- showEvent = 'show.bs.dropdown',
- hideEvent = 'hide.bs.dropdown',
- // shownEvent = 'shown.bs.dropdown',
- // hiddenEvent = 'hidden.bs.dropdown',
- settings = $.extend(true, {}, defaults, options, data),
- timeout;
- $parent.hover(function(event) {
- // so a neighbor can't open the dropdown
- if (!$parent.hasClass('open') && !$this.is(event.target)) {
- // stop this event, stop executing any code
- // in this callback but continue to propagate
- return true;
- }
+(function ($, window, undefined) {
+ // outside the scope of the jQuery plugin to
+ // keep track of all dropdowns
+ var $allDropdowns = $()
+ // if instantlyCloseOthers is true, then it will instantly
+ // shut other nav items when a new one is hovered over
+ $.fn.dropdownHover = function (options) {
+ // don't do anything if touch is supported
+ // (plugin causes some issues on mobile)
+ if ('ontouchstart' in document) {
+ return this // don't want to affect chaining
+ }
+
+ // the element we really care about
+ // is the dropdown-toggle's parent
+ $allDropdowns = $allDropdowns.add(this.parent())
+ return this.each(function () {
+ var $this = $(this)
+ var $parent = $this.parent()
+ var defaults = {
+ delay: 500,
+ instantlyCloseOthers: true
+ }
+
+ var data = {
+ delay: $(this).data('delay'),
+ instantlyCloseOthers: $(this).data('close-others')
+ }
+ var showEvent = 'show.bs.dropdown'
+ var hideEvent = 'hide.bs.dropdown'
+ // var shownEvent = 'shown.bs.dropdown'
+ // var hiddenEvent = 'hidden.bs.dropdown'
+ var settings = $.extend(true, {}, defaults, options, data)
+ var timeout
- openDropdown(event);
- }, function() {
- if ($(document).width() > 768) {
- timeout = window.setTimeout(function() {
+ $parent.hover(function (event) {
+ // so a neighbor can't open the dropdown
+ if (!$parent.hasClass('open') && !$this.is(event.target)) {
+ // stop this event, stop executing any code
+ // in this callback but continue to propagate
+ return true
+ }
- $parent.removeClass('open');
- $this.trigger(hideEvent);
- }, settings.delay);
- }
- });
- // this helps with button groups!
- $this.hover(function(event) {
- // this helps prevent a double event from firing.
- // see https://github.com/CWSpear/bootstrap-hover-dropdown/issues/55
- if (!$parent.hasClass('open') && !$parent.is(event.target)) {
- // stop this event, stop executing any code
- // in this callback but continue to propagate
- return true;
- }
+ openDropdown(event)
+ }, function () {
+ if ($(document).width() > 768) {
+ timeout = window.setTimeout(function () {
+ $parent.removeClass('open')
+ $this.trigger(hideEvent)
+ }, settings.delay)
+ }
+ })
- openDropdown(event);
- });
- // handle submenus
- $parent.find('.dropdown-submenu').each(function() {
- var $this = $(this);
- var subTimeout;
- $this.hover(function() {
- window.clearTimeout(subTimeout);
- $this.children('.dropdown-menu').show();
- // always close submenu siblings instantly
- $this.siblings().children('.dropdown-menu').hide();
- }, function() {
- var $submenu = $this.children('.dropdown-menu');
- subTimeout = window.setTimeout(function() {
- $submenu.hide();
- }, settings.delay);
- });
- });
- function openDropdown(event) {
- if ($(document).width() > 760) {
- $allDropdowns.find(':focus').blur();
- if (settings.instantlyCloseOthers === true)
- $allDropdowns.removeClass('open');
- window.clearTimeout(timeout);
- $parent.addClass('open');
- $this.trigger(showEvent);
- }
+ // this helps with button groups!
+ $this.hover(function (event) {
+ // this helps prevent a double event from firing.
+ // see https://github.com/CWSpear/bootstrap-hover-dropdown/issues/55
+ if (!$parent.hasClass('open') && !$parent.is(event.target)) {
+ // stop this event, stop executing any code
+ // in this callback but continue to propagate
+ return true
+ }
- }
- });
- };
- $(document).ready(function() {
- // apply dropdownHover to all elements with the data-hover="dropdown" attribute
- $('[data-hover="dropdown"]').dropdownHover();
- });
-})(jQuery, this);
+ openDropdown(event)
+ })
+ // handle submenus
+ $parent.find('.dropdown-submenu').each(function () {
+ var $this = $(this)
+ var subTimeout
+ $this.hover(function () {
+ window.clearTimeout(subTimeout)
+ $this.children('.dropdown-menu').show()
+ // always close submenu siblings instantly
+ $this.siblings().children('.dropdown-menu').hide()
+ }, function () {
+ var $submenu = $this.children('.dropdown-menu')
+ subTimeout = window.setTimeout(function () {
+ $submenu.hide()
+ }, settings.delay)
+ })
+ })
+ function openDropdown (event) {
+ if ($(document).width() > 760) {
+ $allDropdowns.find(':focus').blur()
+ if (settings.instantlyCloseOthers === true) {
+ $allDropdowns.removeClass('open')
+ }
+ window.clearTimeout(timeout)
+ $parent.addClass('open')
+ $this.trigger(showEvent)
+ }
+ }
+ })
+ }
+ $(document).ready(function () {
+ // apply dropdownHover to all elements with the data-hover="dropdown" attribute
+ $('[data-hover="dropdown"]').dropdownHover()
+ })
+})(jQuery, this)
diff --git a/static/js/front.js b/static/js/front.js
index 053302d..138fb2a 100644
--- a/static/js/front.js
+++ b/static/js/front.js
@@ -1,128 +1,115 @@
-if ($.cookie("theme_csspath")) {
- $('link#theme-stylesheet').attr("href", $.cookie("theme_csspath"));
+/* global $this: true */
+/* eslint no-unused-vars: ["error", { "varsIgnorePattern": "animationsSlider" }] */
+
+if ($.cookie('themeCSSpath')) {
+ $('link#theme-stylesheet').attr('href', $.cookie('themeCSSpath'))
}
-if ($.cookie("theme_layout")) {
- $('body').addClass($.cookie("theme_layout"));
+if ($.cookie('themeLayout')) {
+ $('body').addClass($.cookie('themeLayout'))
}
$(function () {
-
- sliderHomepage();
- sliders();
- fullScreenContainer();
- productDetailGallery(4000);
- menuSliding();
- productDetailSizes();
- utils();
- animations();
- counters();
- demo();
- contactForm();
-
-});
-
-//Ajax contact
-function contactForm() {
- var form = $('.contact-form');
+ sliderHomepage()
+ sliders()
+ fullScreenContainer()
+ productDetailGallery(4000)
+ menuSliding()
+ productDetailSizes()
+ utils()
+ animations()
+ counters()
+ demo()
+ contactForm()
+})
+
+// Ajax contact
+function contactForm () {
+ var form = $('.contact-form')
form.submit(function () {
- $this = $(this);
+ $this = $(this)
$.post($(this).attr('action'),
- $this.serialize(),
- function(data) {
- $this[0].reset(); // clear form
- $('#contact-message')
- .html('<div class="alert alert-success" role="alert"> \
- <button type="button" class="close" data-dismiss="alert"> \
- <span aria-hidden="true">×</span> \
- <span class="sr-only">Close</span> \
- </button> \
- Thank you for getting in touch. We will get back to you soon! \
- </div>')
- .fadeIn();
- }
- ,'json');
- return false;
- });
+ $this.serialize(),
+ function () {
+ $this[0].reset() // clear form
+
+ $('#contact-message')
+ .html('<div class="alert alert-success" role="alert"><button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>Thank you for getting in touch. We will get back to you soon!</div>')
+ .fadeIn()
+ }
+ , 'json')
+ return false
+ })
}
/* for demo purpose only - can be deleted */
-
-function demo() {
-
- if ($.cookie("theme_csspath")) {
- $('link#theme-stylesheet').attr("href", $.cookie("theme_csspath"));
- }
-
- $("#colour").change(function () {
-
- if ($(this).val() !== '') {
-
- var theme_csspath = 'css/style.' + $(this).val() + '.css';
-
- $('link#theme-stylesheet').attr("href", theme_csspath);
-
- $.cookie("theme_csspath", theme_csspath, {expires: 365, path: '/'});
+function demo () {
+ if ($.cookie('themeCSSpath')) {
+ $('link#theme-stylesheet').attr('href', $.cookie('themeCSSpath'))
}
- return false;
- });
+ $('#colour').change(function () {
+ if ($(this).val() !== '') {
+ var themeCSSpath = 'css/style.' + $(this).val() + '.css'
- $("#layout").change(function () {
+ $('link#theme-stylesheet').attr('href', themeCSSpath)
- if ($(this).val() !== '') {
+ $.cookie('themeCSSpath', themeCSSpath, {expires: 365, path: '/'})
+ }
- var theme_layout = $(this).val();
+ return false
+ })
- $('body').removeClass('wide');
- $('body').removeClass('boxed');
+ $('#layout').change(function () {
+ if ($(this).val() !== '') {
+ var themeLayout = $(this).val()
- $('body').addClass(theme_layout);
+ $('body').removeClass('wide')
+ $('body').removeClass('boxed')
- $.cookie("theme_layout", theme_layout, {expires: 365, path: '/'});
- }
+ $('body').addClass(themeLayout)
- return false;
- });
+ $.cookie('themeLayout', themeLayout, {expires: 365, path: '/'})
+ }
+
+ return false
+ })
}
/* slider homepage */
+function sliderHomepage () {
+ if ($('#slider').length) {
+ // var owl = $('#slider')
-function sliderHomepage() {
- if ($('#slider').length) {
- var owl = $("#slider");
-
- $("#slider").owlCarousel({
+ $('#slider').owlCarousel({
autoPlay: 3000,
items: 4,
itemsDesktopSmall: [900, 3],
itemsTablet: [600, 3],
itemsMobile: [500, 2]
- });
- }
-
+ })
+ }
}
-/* sliders */
-
-function sliders() {
- if ($('.owl-carousel').length) {
- $(".customers").owlCarousel({
+/* sliders */
+function sliders () {
+ if ($('.owl-carousel').length) {
+ $('.customers').owlCarousel({
items: 6,
itemsDesktopSmall: [990, 4],
itemsTablet: [768, 2],
itemsMobile: [480, 1]
- });
+ })
- $(".testimonials").owlCarousel({
+ $('.testimonials').owlCarousel({
items: 4,
itemsDesktopSmall: [990, 3],
itemsTablet: [768, 2],
itemsMobile: [480, 1]
- });
+ })
- $('.project').owlCarousel({
+ $('.project').owlCarousel({
navigation: true, // Show next and prev buttons
- navigationText: ["<i class='fa fa-angle-left'></i>", "<i class='fa fa-angle-right'></i>"],
+ navigationText: ['<i class="fa fa-angle-left"></i>', '<i class="fa fa-angle-right"></i>'],
slideSpeed: 300,
paginationSpeed: 400,
autoPlay: true,
@@ -130,11 +117,11 @@ function sliders() {
singleItem: true,
afterInit: '',
lazyLoad: true
- });
+ })
- $('.homepage').owlCarousel({
+ $('.homepage').owlCarousel({
navigation: false, // Show next and prev buttons
- navigationText: ["<i class='fa fa-angle-left'></i>", "<i class='fa fa-angle-right'></i>"],
+ navigationText: ['<i class="fa fa-angle-left"></i>', '<i class="fa fa-angle-right"></i>'],
slideSpeed: 2000,
paginationSpeed: 1000,
autoPlay: true,
@@ -143,294 +130,253 @@ function sliders() {
lazyLoad: false,
addClassActive: true,
afterInit: function () {
- //animationsSlider();
+ // animationsSlider()
},
afterMove: function () {
- //animationsSlider();
+ // animationsSlider()
}
- });
- }
-
+ })
+ }
}
-
-
/* menu sliding */
-
-function menuSliding() {
-
-
- $('.dropdown').on('show.bs.dropdown', function (e) {
-
- if ($(window).width() > 750) {
- $(this).find('.dropdown-menu').first().stop(true, true).slideDown();
-
- }
- else {
- $(this).find('.dropdown-menu').first().stop(true, true).show();
- }
+function menuSliding () {
+ $('.dropdown').on('show.bs.dropdown', function () {
+ if ($(window).width() > 750) {
+ $(this).find('.dropdown-menu').first().stop(true, true).slideDown()
+ } else {
+ $(this).find('.dropdown-menu').first().stop(true, true).show()
}
+ })
- );
- $('.dropdown').on('hide.bs.dropdown', function (e) {
- if ($(window).width() > 750) {
- $(this).find('.dropdown-menu').first().stop(true, true).slideUp();
- }
- else {
- $(this).find('.dropdown-menu').first().stop(true, true).hide();
- }
- });
-
+ $('.dropdown').on('hide.bs.dropdown', function () {
+ if ($(window).width() > 750) {
+ $(this).find('.dropdown-menu').first().stop(true, true).slideUp()
+ } else {
+ $(this).find('.dropdown-menu').first().stop(true, true).hide()
+ }
+ })
}
/* animations */
-
-function animations() {
- delayTime = 0;
- $('[data-animate]').css({opacity: '0'});
- $('[data-animate]').waypoint(function (direction) {
- delayTime += 150;
- $(this).delay(delayTime).queue(function (next) {
- $(this).toggleClass('animated');
- $(this).toggleClass($(this).data('animate'));
- delayTime = 0;
- next();
- //$(this).removeClass('animated');
- //$(this).toggleClass($(this).data('animate'));
- });
- },
- {
+function animations () {
+ var delayTime = 0
+ $('[data-animate]').css({opacity: '0'})
+ $('[data-animate]').waypoint(function () {
+ delayTime += 150
+ $(this).delay(delayTime).queue(function (next) {
+ $(this).toggleClass('animated')
+ $(this).toggleClass($(this).data('animate'))
+ delayTime = 0
+ next()
+ // $(this).removeClass('animated')
+ // $(this).toggleClass($(this).data('animate'))
+ })
+ }, {
offset: '90%',
triggerOnce: true
- });
-
- $('[data-animate-hover]').hover(function () {
- $(this).css({opacity: 1});
- $(this).addClass('animated');
- $(this).removeClass($(this).data('animate'));
- $(this).addClass($(this).data('animate-hover'));
- }, function () {
- $(this).removeClass('animated');
- $(this).removeClass($(this).data('animate-hover'));
- });
-
+ })
+
+ $('[data-animate-hover]').hover(function () {
+ $(this).css({opacity: 1})
+ $(this).addClass('animated')
+ $(this).removeClass($(this).data('animate'))
+ $(this).addClass($(this).data('animate-hover'))
+ }, function () {
+ $(this).removeClass('animated')
+ $(this).removeClass($(this).data('animate-hover'))
+ })
}
-function animationsSlider() {
-
- var delayTimeSlider = 400;
-
- $('.owl-item:not(.active) [data-animate-always]').each(function () {
-
- $(this).removeClass('animated');
- $(this).removeClass($(this).data('animate-always'));
- $(this).stop(true, true, true).css({opacity: 0});
+function animationsSlider () {
+ var delayTimeSlider = 400
- });
-
- $('.owl-item.active [data-animate-always]').each(function () {
- delayTimeSlider += 500;
-
- $(this).delay(delayTimeSlider).queue(function (next) {
- $(this).addClass('animated');
- $(this).addClass($(this).data('animate-always'));
-
- console.log($(this).data('animate-always'));
-
- });
- });
+ $('.owl-item:not(.active) [data-animate-always]').each(function () {
+ $(this).removeClass('animated')
+ $(this).removeClass($(this).data('animate-always'))
+ $(this).stop(true, true, true).css({opacity: 0})
+ })
+ $('.owl-item.active [data-animate-always]').each(function () {
+ delayTimeSlider += 500
+ $(this).delay(delayTimeSlider).queue(function () {
+ $(this).addClass('animated')
+ $(this).addClass($(this).data('animate-always'))
+ console.log($(this).data('animate-always'))
+ })
+ })
}
/* counters */
-
-function counters() {
-
- $('.counter').counterUp({
- delay: 10,
- time: 1000
- });
-
+function counters () {
+ $('.counter').counterUp({
+ delay: 10,
+ time: 1000
+ })
}
-
/* picture zoom */
-
-function pictureZoom() {
-
- $('.product .image, .post .image, .photostream div').each(function () {
- var imgHeight = $(this).find('img').height();
- $(this).height(imgHeight);
- });
+function pictureZoom () {
+ $('.product .image, .post .image, .photostream div').each(function () {
+ var imgHeight = $(this).find('img').height()
+ $(this).height(imgHeight)
+ })
}
/* full screen intro */
+function fullScreenContainer () {
+ var screenWidth = $(window).width() + 'px'
+ var screenHeight = '500px'
-function fullScreenContainer() {
-
- var screenWidth = $(window).width() + "px";
-
- if ($(window).height() > 500) {
- var screenHeight = $(window).height() + "px";
- }
- else {
- var screenHeight = "500px";
- }
-
+ if ($(window).height() > 500) {
+ screenHeight = $(window).height() + 'px'
+ }
- $("#intro, #intro .item").css({
- width: screenWidth,
- height: screenHeight
- });
+ $('#intro, #intro .item').css({
+ width: screenWidth,
+ height: screenHeight
+ })
}
-function utils() {
-
- /* tooltips */
-
- $('[data-toggle="tooltip"]').tooltip();
-
- /* click on the box activates the radio */
-
- $('#checkout').on('click', '.box.shipping-method, .box.payment-method', function (e) {
- var radio = $(this).find(':radio');
- radio.prop('checked', true);
- });
- /* click on the box activates the link in it */
-
- $('.box.clickable').on('click', function (e) {
-
- window.location = $(this).find('a').attr('href');
- });
- /* external links in new window*/
- $('.external').on('click', function (e) {
-
- e.preventDefault();
- window.open($(this).attr("href"));
- });
- /* animated scrolling */
+function utils () {
+ /* tooltips */
+ $('[data-toggle="tooltip"]').tooltip()
+
+ /* click on the box activates the radio */
+ $('#checkout').on('click', '.box.shipping-method, .box.payment-method', function () {
+ var radio = $(this).find(':radio')
+ radio.prop('checked', true)
+ })
+
+ /* click on the box activates the link in it */
+ $('.box.clickable').on('click', function () {
+ window.location = $(this).find('a').attr('href')
+ })
+
+ /* external links in new window */
+ $('.external').on('click', function (e) {
+ e.preventDefault()
+ window.open($(this).attr('href'))
+ })
+
+ /* animated scrolling */
+ $('.scroll-to, .scroll-to-top').click(function (event) {
+ var fullUrl = this.href
+ var parts = fullUrl.split('#')
+
+ if (parts.length > 1) {
+ scrollTo(fullUrl)
+ event.preventDefault()
+ }
+ })
- $('.scroll-to, .scroll-to-top').click(function (event) {
+ function scrollTo (fullUrl) {
+ var parts = fullUrl.split('#')
+ var trgt = parts[1]
+ var targetOffset = $('#' + trgt).offset()
+ var targetTop = targetOffset.top - 100
- var full_url = this.href;
- var parts = full_url.split("#");
- if (parts.length > 1) {
+ if (targetTop < 0) {
+ targetTop = 0
+ }
- scrollTo(full_url);
- event.preventDefault();
+ $('html, body').animate({
+ scrollTop: targetTop
+ }, 1000)
}
- });
- function scrollTo(full_url) {
- var parts = full_url.split("#");
- var trgt = parts[1];
- var target_offset = $("#" + trgt).offset();
- var target_top = target_offset.top - 100;
- if (target_top < 0) {
- target_top = 0;
- }
-
- $('html, body').animate({
- scrollTop: target_top
- }, 1000);
- }
}
/* product detail gallery */
-
-function productDetailGallery(confDetailSwitch) {
- $('.thumb:first').addClass('active');
- timer = setInterval(autoSwitch, confDetailSwitch);
- $(".thumb").click(function (e) {
-
- switchImage($(this));
- clearInterval(timer);
- timer = setInterval(autoSwitch, confDetailSwitch);
- e.preventDefault();
+function productDetailGallery (confDetailSwitch) {
+ $('.thumb:first').addClass('active')
+ var timer = setInterval(autoSwitch, confDetailSwitch)
+
+ $('.thumb').click(function (e) {
+ switchImage($(this))
+ clearInterval(timer)
+ timer = setInterval(autoSwitch, confDetailSwitch)
+ e.preventDefault()
+ })
+
+ $('#mainImage').hover(function () {
+ clearInterval(timer)
+ }, function () {
+ timer = setInterval(autoSwitch, confDetailSwitch)
+ })
+
+ function autoSwitch () {
+ var nextThumb = $('.thumb.active').closest('div').next('div').find('.thumb')
+ if (nextThumb.length === 0) {
+ nextThumb = $('.thumb:first')
}
- );
- $('#mainImage').hover(function () {
- clearInterval(timer);
- }, function () {
- timer = setInterval(autoSwitch, confDetailSwitch);
- });
- function autoSwitch() {
- var nextThumb = $('.thumb.active').closest('div').next('div').find('.thumb');
- if (nextThumb.length == 0) {
- nextThumb = $('.thumb:first');
+ switchImage(nextThumb)
}
- switchImage(nextThumb);
- }
- function switchImage(thumb) {
-
- $('.thumb').removeClass('active');
- var bigUrl = thumb.attr('href');
- thumb.addClass('active');
- $('#mainImage img').attr('src', bigUrl);
- }
+ function switchImage (thumb) {
+ $('.thumb').removeClass('active')
+ var bigUrl = thumb.attr('href')
+ thumb.addClass('active')
+ $('#mainImage img').attr('src', bigUrl)
+ }
}
/* product detail sizes */
-
-function productDetailSizes() {
- $('.sizes a').click(function (e) {
- e.preventDefault();
- $('.sizes a').removeClass('active');
- $('.size-input').prop('checked', false);
- $(this).addClass('active');
- $(this).next('input').prop('checked', true);
- });
+function productDetailSizes () {
+ $('.sizes a').click(function (e) {
+ e.preventDefault()
+ $('.sizes a').removeClass('active')
+ $('.size-input').prop('checked', false)
+ $(this).addClass('active')
+ $(this).next('input').prop('checked', true)
+ })
}
-
$.fn.alignElementsSameHeight = function () {
- $('.same-height-row').each(function () {
+ $('.same-height-row').each(function () {
+ var maxHeight = 0
+ var children = $(this).find('.same-height')
+ children.height('auto')
- var maxHeight = 0;
- var children = $(this).find('.same-height');
- children.height('auto');
- if ($(window).width() > 768) {
+ if ($(window).width() > 768) {
children.each(function () {
- if ($(this).innerHeight() > maxHeight) {
- maxHeight = $(this).innerHeight();
+ if ($(this).innerHeight() > maxHeight) {
+ maxHeight = $(this).innerHeight()
+ }
+ })
+ children.innerHeight(maxHeight)
}
- });
- children.innerHeight(maxHeight);
- }
- maxHeight = 0;
- children = $(this).find('.same-height-always');
- children.height('auto');
- children.each(function () {
+ maxHeight = 0
+ children = $(this).find('.same-height-always')
+ children.height('auto')
+ children.each(function () {
if ($(this).height() > maxHeight) {
- maxHeight = $(this).innerHeight();
+ maxHeight = $(this).innerHeight()
}
- });
- children.innerHeight(maxHeight);
-
- });
+ })
+ children.innerHeight(maxHeight)
+ })
}
+var windowWidth
$(window).load(function () {
+ windowWidth = $(window).width()
- windowWidth = $(window).width();
+ $(this).alignElementsSameHeight()
+ pictureZoom()
+})
- $(this).alignElementsSameHeight();
- pictureZoom();
-});
$(window).resize(function () {
-
- newWindowWidth = $(window).width();
-
- if (windowWidth !== newWindowWidth) {
- setTimeout(function () {
- $(this).alignElementsSameHeight();
- fullScreenContainer();
- pictureZoom();
- }, 205);
- windowWidth = newWindowWidth;
- }
-
-});
+ var newWindowWidth = $(window).width()
+
+ if (windowWidth !== newWindowWidth) {
+ setTimeout(function () {
+ $(this).alignElementsSameHeight()
+ fullScreenContainer()
+ pictureZoom()
+ }, 205)
+ windowWidth = newWindowWidth
+ }
+})
diff --git a/static/js/gmaps.init.js b/static/js/gmaps.init.js
index 2f62fbb..7bf4b49 100644
--- a/static/js/gmaps.init.js
+++ b/static/js/gmaps.init.js
@@ -1,15 +1,39 @@
-$( document ).ready(function() {
- map();
-});
+/* global GMaps: true */
-function map() {
- if( $('#map').length ) {
- var lat = $("#gmap-lat").val();
- var lng = $("#gmap-lng").val();
- var image = '/img/marker.png';
+$(document).ready(function () {
+ map()
+})
- var styles = [{"featureType": "landscape", "stylers": [{"saturation": -100}, {"lightness": 65}, {"visibility": "on"}]}, {"featureType": "poi", "stylers": [{"saturation": -100}, {"lightness": 51}, {"visibility": "simplified"}]}, {"featureType": "road.highway", "stylers": [{"saturation": -100}, {"visibility": "simplified"}]}, {"featureType": "road.arterial", "stylers": [{"saturation": -100}, {"lightness": 30}, {"visibility": "on"}]}, {"featureType": "road.local", "stylers": [{"saturation": -100}, {"lightness": 40}, {"visibility": "on"}]}, {"featureType": "transit", "stylers": [{"saturation": -100}, {"visibility": "simplified"}]}, {"featureType": "administrative.province", "stylers": [{"visibility": "off"}]}, {"featureType": "water", "elementType": "labels", "stylers": [{"visibility": "on"}, {"lightness": -25}, {"saturation": -100}]}, {"featureType": "water", "elementType": "geometry", "stylers": [{"hue": "#ffff00"}, {"lightness": -25}, {"saturation": -97}]}];
- map = new GMaps({
+function map () {
+ if ($('#map').length) {
+ var lat = $('#gmap-lat').val()
+ var lng = $('#gmap-lng').val()
+ var image = '/img/marker.png'
+
+ var styles =
+ [
+ {
+ 'featureType': 'landscape', 'stylers': [{'saturation': -100}, {'lightness': 65}, {'visibility': 'on'}]
+ }, {
+ 'featureType': 'poi', 'stylers': [{'saturation': -100}, {'lightness': 51}, {'visibility': 'simplified'}]
+ }, {
+ 'featureType': 'road.highway', 'stylers': [{'saturation': -100}, {'visibility': 'simplified'}]
+ }, {
+ 'featureType': 'road.arterial', 'stylers': [{'saturation': -100}, {'lightness': 30}, {'visibility': 'on'}]
+ }, {
+ 'featureType': 'road.local', 'stylers': [{'saturation': -100}, {'lightness': 40}, {'visibility': 'on'}]
+ }, {
+ 'featureType': 'transit', 'stylers': [{'saturation': -100}, {'visibility': 'simplified'}]
+ }, {
+ 'featureType': 'administrative.province', 'stylers': [{'visibility': 'off'}]
+ }, {
+ 'featureType': 'water', 'elementType': 'labels', 'stylers': [{'visibility': 'on'}, {'lightness': -25}, {'saturation': -100}]
+ }, {
+ 'featureType': 'water', 'elementType': 'geometry', 'stylers': [{'hue': '#ffff00'}, {'lightness': -25}, {'saturation': -97}]
+ }
+ ]
+
+ var map = new GMaps({
el: '#map',
lat: lat,
lng: lng,
@@ -25,16 +49,16 @@ function map() {
scrollwheel: false,
draggable: false,
styles: styles
- });
+ })
map.addMarker({
lat: lat,
lng: lng,
- icon: image/* ,
- title: '',
- infoWindow: {
- content: '<p>HTML Content</p>'
- }*/
- });
+ icon: image /* ,
+ title: '',
+ infoWindow: {
+ content: '<p>HTML Content</p>'
+ } */
+ })
}
}
diff --git a/static/js/gmaps.js b/static/js/hpneo.gmaps.js
index dd7b0ae..dd7b0ae 100644
--- a/static/js/gmaps.js
+++ b/static/js/hpneo.gmaps.js
diff --git a/static/js/owl.carousel.js b/static/js/owl.carousel.js
deleted file mode 100644
index 43442b5..0000000
--- a/static/js/owl.carousel.js
+++ /dev/null
@@ -1,1517 +0,0 @@
-/*
- * jQuery OwlCarousel v1.3.3
- *
- * Copyright (c) 2013 Bartosz Wojciechowski
- * http://www.owlgraphic.com/owlcarousel/
- *
- * Licensed under MIT
- *
- */
-
-/*JS Lint helpers: */
-/*global dragMove: false, dragEnd: false, $, jQuery, alert, window, document */
-/*jslint nomen: true, continue:true */
-
-if (typeof Object.create !== "function") {
- Object.create = function (obj) {
- function F() {}
- F.prototype = obj;
- return new F();
- };
-}
-(function ($, window, document) {
-
- var Carousel = {
- init : function (options, el) {
- var base = this;
-
- base.$elem = $(el);
- base.options = $.extend({}, $.fn.owlCarousel.options, base.$elem.data(), options);
-
- base.userOptions = options;
- base.loadContent();
- },
-
- loadContent : function () {
- var base = this, url;
-
- function getData(data) {
- var i, content = "";
- if (typeof base.options.jsonSuccess === "function") {
- base.options.jsonSuccess.apply(this, [data]);
- } else {
- for (i in data.owl) {
- if (data.owl.hasOwnProperty(i)) {
- content += data.owl[i].item;
- }
- }
- base.$elem.html(content);
- }
- base.logIn();
- }
-
- if (typeof base.options.beforeInit === "function") {
- base.options.beforeInit.apply(this, [base.$elem]);
- }
-
- if (typeof base.options.jsonPath === "string") {
- url = base.options.jsonPath;
- $.getJSON(url, getData);
- } else {
- base.logIn();
- }
- },
-
- logIn : function () {
- var base = this;
-
- base.$elem.data({
- "owl-originalStyles": base.$elem.attr("style"),
- "owl-originalClasses": base.$elem.attr("class")
- });
-
- base.$elem.css({opacity: 0});
- base.orignalItems = base.options.items;
- base.checkBrowser();
- base.wrapperWidth = 0;
- base.checkVisible = null;
- base.setVars();
- },
-
- setVars : function () {
- var base = this;
- if (base.$elem.children().length === 0) {return false; }
- base.baseClass();
- base.eventTypes();
- base.$userItems = base.$elem.children();
- base.itemsAmount = base.$userItems.length;
- base.wrapItems();
- base.$owlItems = base.$elem.find(".owl-item");
- base.$owlWrapper = base.$elem.find(".owl-wrapper");
- base.playDirection = "next";
- base.prevItem = 0;
- base.prevArr = [0];
- base.currentItem = 0;
- base.customEvents();
- base.onStartup();
- },
-
- onStartup : function () {
- var base = this;
- base.updateItems();
- base.calculateAll();
- base.buildControls();
- base.updateControls();
- base.response();
- base.moveEvents();
- base.stopOnHover();
- base.owlStatus();
-
- if (base.options.transitionStyle !== false) {
- base.transitionTypes(base.options.transitionStyle);
- }
- if (base.options.autoPlay === true) {
- base.options.autoPlay = 5000;
- }
- base.play();
-
- base.$elem.find(".owl-wrapper").css("display", "block");
-
- if (!base.$elem.is(":visible")) {
- base.watchVisibility();
- } else {
- base.$elem.css("opacity", 1);
- }
- base.onstartup = false;
- base.eachMoveUpdate();
- if (typeof base.options.afterInit === "function") {
- base.options.afterInit.apply(this, [base.$elem]);
- }
- },
-
- eachMoveUpdate : function () {
- var base = this;
-
- if (base.options.lazyLoad === true) {
- base.lazyLoad();
- }
- if (base.options.autoHeight === true) {
- base.autoHeight();
- }
- base.onVisibleItems();
-
- if (typeof base.options.afterAction === "function") {
- base.options.afterAction.apply(this, [base.$elem]);
- }
- },
-
- updateVars : function () {
- var base = this;
- if (typeof base.options.beforeUpdate === "function") {
- base.options.beforeUpdate.apply(this, [base.$elem]);
- }
- base.watchVisibility();
- base.updateItems();
- base.calculateAll();
- base.updatePosition();
- base.updateControls();
- base.eachMoveUpdate();
- if (typeof base.options.afterUpdate === "function") {
- base.options.afterUpdate.apply(this, [base.$elem]);
- }
- },
-
- reload : function () {
- var base = this;
- window.setTimeout(function () {
- base.updateVars();
- }, 0);
- },
-
- watchVisibility : function () {
- var base = this;
-
- if (base.$elem.is(":visible") === false) {
- base.$elem.css({opacity: 0});
- window.clearInterval(base.autoPlayInterval);
- window.clearInterval(base.checkVisible);
- } else {
- return false;
- }
- base.checkVisible = window.setInterval(function () {
- if (base.$elem.is(":visible")) {
- base.reload();
- base.$elem.animate({opacity: 1}, 200);
- window.clearInterval(base.checkVisible);
- }
- }, 500);
- },
-
- wrapItems : function () {
- var base = this;
- base.$userItems.wrapAll("<div class=\"owl-wrapper\">").wrap("<div class=\"owl-item\"></div>");
- base.$elem.find(".owl-wrapper").wrap("<div class=\"owl-wrapper-outer\">");
- base.wrapperOuter = base.$elem.find(".owl-wrapper-outer");
- base.$elem.css("display", "block");
- },
-
- baseClass : function () {
- var base = this,
- hasBaseClass = base.$elem.hasClass(base.options.baseClass),
- hasThemeClass = base.$elem.hasClass(base.options.theme);
-
- if (!hasBaseClass) {
- base.$elem.addClass(base.options.baseClass);
- }
-
- if (!hasThemeClass) {
- base.$elem.addClass(base.options.theme);
- }
- },
-
- updateItems : function () {
- var base = this, width, i;
-
- if (base.options.responsive === false) {
- return false;
- }
- if (base.options.singleItem === true) {
- base.options.items = base.orignalItems = 1;
- base.options.itemsCustom = false;
- base.options.itemsDesktop = false;
- base.options.itemsDesktopSmall = false;
- base.options.itemsTablet = false;
- base.options.itemsTabletSmall = false;
- base.options.itemsMobile = false;
- return false;
- }
-
- width = $(base.options.responsiveBaseWidth).width();
-
- if (width > (base.options.itemsDesktop[0] || base.orignalItems)) {
- base.options.items = base.orignalItems;
- }
- if (base.options.itemsCustom !== false) {
- //Reorder array by screen size
- base.options.itemsCustom.sort(function (a, b) {return a[0] - b[0]; });
-
- for (i = 0; i < base.options.itemsCustom.length; i += 1) {
- if (base.options.itemsCustom[i][0] <= width) {
- base.options.items = base.options.itemsCustom[i][1];
- }
- }
-
- } else {
-
- if (width <= base.options.itemsDesktop[0] && base.options.itemsDesktop !== false) {
- base.options.items = base.options.itemsDesktop[1];
- }
-
- if (width <= base.options.itemsDesktopSmall[0] && base.options.itemsDesktopSmall !== false) {
- base.options.items = base.options.itemsDesktopSmall[1];
- }
-
- if (width <= base.options.itemsTablet[0] && base.options.itemsTablet !== false) {
- base.options.items = base.options.itemsTablet[1];
- }
-
- if (width <= base.options.itemsTabletSmall[0] && base.options.itemsTabletSmall !== false) {
- base.options.items = base.options.itemsTabletSmall[1];
- }
-
- if (width <= base.options.itemsMobile[0] && base.options.itemsMobile !== false) {
- base.options.items = base.options.itemsMobile[1];
- }
- }
-
- //if number of items is less than declared
- if (base.options.items > base.itemsAmount && base.options.itemsScaleUp === true) {
- base.options.items = base.itemsAmount;
- }
- },
-
- response : function () {
- var base = this,
- smallDelay,
- lastWindowWidth;
-
- if (base.options.responsive !== true) {
- return false;
- }
- lastWindowWidth = $(window).width();
-
- base.resizer = function () {
- if ($(window).width() !== lastWindowWidth) {
- if (base.options.autoPlay !== false) {
- window.clearInterval(base.autoPlayInterval);
- }
- window.clearTimeout(smallDelay);
- smallDelay = window.setTimeout(function () {
- lastWindowWidth = $(window).width();
- base.updateVars();
- }, base.options.responsiveRefreshRate);
- }
- };
- $(window).resize(base.resizer);
- },
-
- updatePosition : function () {
- var base = this;
- base.jumpTo(base.currentItem);
- if (base.options.autoPlay !== false) {
- base.checkAp();
- }
- },
-
- appendItemsSizes : function () {
- var base = this,
- roundPages = 0,
- lastItem = base.itemsAmount - base.options.items;
-
- base.$owlItems.each(function (index) {
- var $this = $(this);
- $this
- .css({"width": base.itemWidth})
- .data("owl-item", Number(index));
-
- if (index % base.options.items === 0 || index === lastItem) {
- if (!(index > lastItem)) {
- roundPages += 1;
- }
- }
- $this.data("owl-roundPages", roundPages);
- });
- },
-
- appendWrapperSizes : function () {
- var base = this,
- width = base.$owlItems.length * base.itemWidth;
-
- base.$owlWrapper.css({
- "width": width * 2,
- "left": 0
- });
- base.appendItemsSizes();
- },
-
- calculateAll : function () {
- var base = this;
- base.calculateWidth();
- base.appendWrapperSizes();
- base.loops();
- base.max();
- },
-
- calculateWidth : function () {
- var base = this;
- base.itemWidth = Math.round(base.$elem.width() / base.options.items);
- },
-
- max : function () {
- var base = this,
- maximum = ((base.itemsAmount * base.itemWidth) - base.options.items * base.itemWidth) * -1;
- if (base.options.items > base.itemsAmount) {
- base.maximumItem = 0;
- maximum = 0;
- base.maximumPixels = 0;
- } else {
- base.maximumItem = base.itemsAmount - base.options.items;
- base.maximumPixels = maximum;
- }
- return maximum;
- },
-
- min : function () {
- return 0;
- },
-
- loops : function () {
- var base = this,
- prev = 0,
- elWidth = 0,
- i,
- item,
- roundPageNum;
-
- base.positionsInArray = [0];
- base.pagesInArray = [];
-
- for (i = 0; i < base.itemsAmount; i += 1) {
- elWidth += base.itemWidth;
- base.positionsInArray.push(-elWidth);
-
- if (base.options.scrollPerPage === true) {
- item = $(base.$owlItems[i]);
- roundPageNum = item.data("owl-roundPages");
- if (roundPageNum !== prev) {
- base.pagesInArray[prev] = base.positionsInArray[i];
- prev = roundPageNum;
- }
- }
- }
- },
-
- buildControls : function () {
- var base = this;
- if (base.options.navigation === true || base.options.pagination === true) {
- base.owlControls = $("<div class=\"owl-controls\"/>").toggleClass("clickable", !base.browser.isTouch).appendTo(base.$elem);
- }
- if (base.options.pagination === true) {
- base.buildPagination();
- }
- if (base.options.navigation === true) {
- base.buildButtons();
- }
- },
-
- buildButtons : function () {
- var base = this,
- buttonsWrapper = $("<div class=\"owl-buttons\"/>");
- base.owlControls.append(buttonsWrapper);
-
- base.buttonPrev = $("<div/>", {
- "class" : "owl-prev",
- "html" : base.options.navigationText[0] || ""
- });
-
- base.buttonNext = $("<div/>", {
- "class" : "owl-next",
- "html" : base.options.navigationText[1] || ""
- });
-
- buttonsWrapper
- .append(base.buttonPrev)
- .append(base.buttonNext);
-
- buttonsWrapper.on("touchstart.owlControls mousedown.owlControls", "div[class^=\"owl\"]", function (event) {
- event.preventDefault();
- });
-
- buttonsWrapper.on("touchend.owlControls mouseup.owlControls", "div[class^=\"owl\"]", function (event) {
- event.preventDefault();
- if ($(this).hasClass("owl-next")) {
- base.next();
- } else {
- base.prev();
- }
- });
- },
-
- buildPagination : function () {
- var base = this;
-
- base.paginationWrapper = $("<div class=\"owl-pagination\"/>");
- base.owlControls.append(base.paginationWrapper);
-
- base.paginationWrapper.on("touchend.owlControls mouseup.owlControls", ".owl-page", function (event) {
- event.preventDefault();
- if (Number($(this).data("owl-page")) !== base.currentItem) {
- base.goTo(Number($(this).data("owl-page")), true);
- }
- });
- },
-
- updatePagination : function () {
- var base = this,
- counter,
- lastPage,
- lastItem,
- i,
- paginationButton,
- paginationButtonInner;
-
- if (base.options.pagination === false) {
- return false;
- }
-
- base.paginationWrapper.html("");
-
- counter = 0;
- lastPage = base.itemsAmount - base.itemsAmount % base.options.items;
-
- for (i = 0; i < base.itemsAmount; i += 1) {
- if (i % base.options.items === 0) {
- counter += 1;
- if (lastPage === i) {
- lastItem = base.itemsAmount - base.options.items;
- }
- paginationButton = $("<div/>", {
- "class" : "owl-page"
- });
- paginationButtonInner = $("<span></span>", {
- "text": base.options.paginationNumbers === true ? counter : "",
- "class": base.options.paginationNumbers === true ? "owl-numbers" : ""
- });
- paginationButton.append(paginationButtonInner);
-
- paginationButton.data("owl-page", lastPage === i ? lastItem : i);
- paginationButton.data("owl-roundPages", counter);
-
- base.paginationWrapper.append(paginationButton);
- }
- }
- base.checkPagination();
- },
- checkPagination : function () {
- var base = this;
- if (base.options.pagination === false) {
- return false;
- }
- base.paginationWrapper.find(".owl-page").each(function () {
- if ($(this).data("owl-roundPages") === $(base.$owlItems[base.currentItem]).data("owl-roundPages")) {
- base.paginationWrapper
- .find(".owl-page")
- .removeClass("active");
- $(this).addClass("active");
- }
- });
- },
-
- checkNavigation : function () {
- var base = this;
-
- if (base.options.navigation === false) {
- return false;
- }
- if (base.options.rewindNav === false) {
- if (base.currentItem === 0 && base.maximumItem === 0) {
- base.buttonPrev.addClass("disabled");
- base.buttonNext.addClass("disabled");
- } else if (base.currentItem === 0 && base.maximumItem !== 0) {
- base.buttonPrev.addClass("disabled");
- base.buttonNext.removeClass("disabled");
- } else if (base.currentItem === base.maximumItem) {
- base.buttonPrev.removeClass("disabled");
- base.buttonNext.addClass("disabled");
- } else if (base.currentItem !== 0 && base.currentItem !== base.maximumItem) {
- base.buttonPrev.removeClass("disabled");
- base.buttonNext.removeClass("disabled");
- }
- }
- },
-
- updateControls : function () {
- var base = this;
- base.updatePagination();
- base.checkNavigation();
- if (base.owlControls) {
- if (base.options.items >= base.itemsAmount) {
- base.owlControls.hide();
- } else {
- base.owlControls.show();
- }
- }
- },
-
- destroyControls : function () {
- var base = this;
- if (base.owlControls) {
- base.owlControls.remove();
- }
- },
-
- next : function (speed) {
- var base = this;
-
- if (base.isTransition) {
- return false;
- }
-
- base.currentItem += base.options.scrollPerPage === true ? base.options.items : 1;
- if (base.currentItem > base.maximumItem + (base.options.scrollPerPage === true ? (base.options.items - 1) : 0)) {
- if (base.options.rewindNav === true) {
- base.currentItem = 0;
- speed = "rewind";
- } else {
- base.currentItem = base.maximumItem;
- return false;
- }
- }
- base.goTo(base.currentItem, speed);
- },
-
- prev : function (speed) {
- var base = this;
-
- if (base.isTransition) {
- return false;
- }
-
- if (base.options.scrollPerPage === true && base.currentItem > 0 && base.currentItem < base.options.items) {
- base.currentItem = 0;
- } else {
- base.currentItem -= base.options.scrollPerPage === true ? base.options.items : 1;
- }
- if (base.currentItem < 0) {
- if (base.options.rewindNav === true) {
- base.currentItem = base.maximumItem;
- speed = "rewind";
- } else {
- base.currentItem = 0;
- return false;
- }
- }
- base.goTo(base.currentItem, speed);
- },
-
- goTo : function (position, speed, drag) {
- var base = this,
- goToPixel;
-
- if (base.isTransition) {
- return false;
- }
- if (typeof base.options.beforeMove === "function") {
- base.options.beforeMove.apply(this, [base.$elem]);
- }
- if (position >= base.maximumItem) {
- position = base.maximumItem;
- } else if (position <= 0) {
- position = 0;
- }
-
- base.currentItem = base.owl.currentItem = position;
- if (base.options.transitionStyle !== false && drag !== "drag" && base.options.items === 1 && base.browser.support3d === true) {
- base.swapSpeed(0);
- if (base.browser.support3d === true) {
- base.transition3d(base.positionsInArray[position]);
- } else {
- base.css2slide(base.positionsInArray[position], 1);
- }
- base.afterGo();
- base.singleItemTransition();
- return false;
- }
- goToPixel = base.positionsInArray[position];
-
- if (base.browser.support3d === true) {
- base.isCss3Finish = false;
-
- if (speed === true) {
- base.swapSpeed("paginationSpeed");
- window.setTimeout(function () {
- base.isCss3Finish = true;
- }, base.options.paginationSpeed);
-
- } else if (speed === "rewind") {
- base.swapSpeed(base.options.rewindSpeed);
- window.setTimeout(function () {
- base.isCss3Finish = true;
- }, base.options.rewindSpeed);
-
- } else {
- base.swapSpeed("slideSpeed");
- window.setTimeout(function () {
- base.isCss3Finish = true;
- }, base.options.slideSpeed);
- }
- base.transition3d(goToPixel);
- } else {
- if (speed === true) {
- base.css2slide(goToPixel, base.options.paginationSpeed);
- } else if (speed === "rewind") {
- base.css2slide(goToPixel, base.options.rewindSpeed);
- } else {
- base.css2slide(goToPixel, base.options.slideSpeed);
- }
- }
- base.afterGo();
- },
-
- jumpTo : function (position) {
- var base = this;
- if (typeof base.options.beforeMove === "function") {
- base.options.beforeMove.apply(this, [base.$elem]);
- }
- if (position >= base.maximumItem || position === -1) {
- position = base.maximumItem;
- } else if (position <= 0) {
- position = 0;
- }
- base.swapSpeed(0);
- if (base.browser.support3d === true) {
- base.transition3d(base.positionsInArray[position]);
- } else {
- base.css2slide(base.positionsInArray[position], 1);
- }
- base.currentItem = base.owl.currentItem = position;
- base.afterGo();
- },
-
- afterGo : function () {
- var base = this;
-
- base.prevArr.push(base.currentItem);
- base.prevItem = base.owl.prevItem = base.prevArr[base.prevArr.length - 2];
- base.prevArr.shift(0);
-
- if (base.prevItem !== base.currentItem) {
- base.checkPagination();
- base.checkNavigation();
- base.eachMoveUpdate();
-
- if (base.options.autoPlay !== false) {
- base.checkAp();
- }
- }
- if (typeof base.options.afterMove === "function" && base.prevItem !== base.currentItem) {
- base.options.afterMove.apply(this, [base.$elem]);
- }
- },
-
- stop : function () {
- var base = this;
- base.apStatus = "stop";
- window.clearInterval(base.autoPlayInterval);
- },
-
- checkAp : function () {
- var base = this;
- if (base.apStatus !== "stop") {
- base.play();
- }
- },
-
- play : function () {
- var base = this;
- base.apStatus = "play";
- if (base.options.autoPlay === false) {
- return false;
- }
- window.clearInterval(base.autoPlayInterval);
- base.autoPlayInterval = window.setInterval(function () {
- base.next(true);
- }, base.options.autoPlay);
- },
-
- swapSpeed : function (action) {
- var base = this;
- if (action === "slideSpeed") {
- base.$owlWrapper.css(base.addCssSpeed(base.options.slideSpeed));
- } else if (action === "paginationSpeed") {
- base.$owlWrapper.css(base.addCssSpeed(base.options.paginationSpeed));
- } else if (typeof action !== "string") {
- base.$owlWrapper.css(base.addCssSpeed(action));
- }
- },
-
- addCssSpeed : function (speed) {
- return {
- "-webkit-transition": "all " + speed + "ms ease",
- "-moz-transition": "all " + speed + "ms ease",
- "-o-transition": "all " + speed + "ms ease",
- "transition": "all " + speed + "ms ease"
- };
- },
-
- removeTransition : function () {
- return {
- "-webkit-transition": "",
- "-moz-transition": "",
- "-o-transition": "",
- "transition": ""
- };
- },
-
- doTranslate : function (pixels) {
- return {
- "-webkit-transform": "translate3d(" + pixels + "px, 0px, 0px)",
- "-moz-transform": "translate3d(" + pixels + "px, 0px, 0px)",
- "-o-transform": "translate3d(" + pixels + "px, 0px, 0px)",
- "-ms-transform": "translate3d(" + pixels + "px, 0px, 0px)",
- "transform": "translate3d(" + pixels + "px, 0px,0px)"
- };
- },
-
- transition3d : function (value) {
- var base = this;
- base.$owlWrapper.css(base.doTranslate(value));
- },
-
- css2move : function (value) {
- var base = this;
- base.$owlWrapper.css({"left" : value});
- },
-
- css2slide : function (value, speed) {
- var base = this;
-
- base.isCssFinish = false;
- base.$owlWrapper.stop(true, true).animate({
- "left" : value
- }, {
- duration : speed || base.options.slideSpeed,
- complete : function () {
- base.isCssFinish = true;
- }
- });
- },
-
- checkBrowser : function () {
- var base = this,
- translate3D = "translate3d(0px, 0px, 0px)",
- tempElem = document.createElement("div"),
- regex,
- asSupport,
- support3d,
- isTouch;
-
- tempElem.style.cssText = " -moz-transform:" + translate3D +
- "; -ms-transform:" + translate3D +
- "; -o-transform:" + translate3D +
- "; -webkit-transform:" + translate3D +
- "; transform:" + translate3D;
- regex = /translate3d\(0px, 0px, 0px\)/g;
- asSupport = tempElem.style.cssText.match(regex);
- support3d = (asSupport !== null && asSupport.length === 1);
-
- isTouch = "ontouchstart" in window || window.navigator.msMaxTouchPoints;
-
- base.browser = {
- "support3d" : support3d,
- "isTouch" : isTouch
- };
- },
-
- moveEvents : function () {
- var base = this;
- if (base.options.mouseDrag !== false || base.options.touchDrag !== false) {
- base.gestures();
- base.disabledEvents();
- }
- },
-
- eventTypes : function () {
- var base = this,
- types = ["s", "e", "x"];
-
- base.ev_types = {};
-
- if (base.options.mouseDrag === true && base.options.touchDrag === true) {
- types = [
- "touchstart.owl mousedown.owl",
- "touchmove.owl mousemove.owl",
- "touchend.owl touchcancel.owl mouseup.owl"
- ];
- } else if (base.options.mouseDrag === false && base.options.touchDrag === true) {
- types = [
- "touchstart.owl",
- "touchmove.owl",
- "touchend.owl touchcancel.owl"
- ];
- } else if (base.options.mouseDrag === true && base.options.touchDrag === false) {
- types = [
- "mousedown.owl",
- "mousemove.owl",
- "mouseup.owl"
- ];
- }
-
- base.ev_types.start = types[0];
- base.ev_types.move = types[1];
- base.ev_types.end = types[2];
- },
-
- disabledEvents : function () {
- var base = this;
- base.$elem.on("dragstart.owl", function (event) { event.preventDefault(); });
- base.$elem.on("mousedown.disableTextSelect", function (e) {
- return $(e.target).is('input, textarea, select, option');
- });
- },
-
- gestures : function () {
- /*jslint unparam: true*/
- var base = this,
- locals = {
- offsetX : 0,
- offsetY : 0,
- baseElWidth : 0,
- relativePos : 0,
- position: null,
- minSwipe : null,
- maxSwipe: null,
- sliding : null,
- dargging: null,
- targetElement : null
- };
-
- base.isCssFinish = true;
-
- function getTouches(event) {
- if (event.touches !== undefined) {
- return {
- x : event.touches[0].pageX,
- y : event.touches[0].pageY
- };
- }
-
- if (event.touches === undefined) {
- if (event.pageX !== undefined) {
- return {
- x : event.pageX,
- y : event.pageY
- };
- }
- if (event.pageX === undefined) {
- return {
- x : event.clientX,
- y : event.clientY
- };
- }
- }
- }
-
- function swapEvents(type) {
- if (type === "on") {
- $(document).on(base.ev_types.move, dragMove);
- $(document).on(base.ev_types.end, dragEnd);
- } else if (type === "off") {
- $(document).off(base.ev_types.move);
- $(document).off(base.ev_types.end);
- }
- }
-
- function dragStart(event) {
- var ev = event.originalEvent || event || window.event,
- position;
-
- if (ev.which === 3) {
- return false;
- }
- if (base.itemsAmount <= base.options.items) {
- return;
- }
- if (base.isCssFinish === false && !base.options.dragBeforeAnimFinish) {
- return false;
- }
- if (base.isCss3Finish === false && !base.options.dragBeforeAnimFinish) {
- return false;
- }
-
- if (base.options.autoPlay !== false) {
- window.clearInterval(base.autoPlayInterval);
- }
-
- if (base.browser.isTouch !== true && !base.$owlWrapper.hasClass("grabbing")) {
- base.$owlWrapper.addClass("grabbing");
- }
-
- base.newPosX = 0;
- base.newRelativeX = 0;
-
- $(this).css(base.removeTransition());
-
- position = $(this).position();
- locals.relativePos = position.left;
-
- locals.offsetX = getTouches(ev).x - position.left;
- locals.offsetY = getTouches(ev).y - position.top;
-
- swapEvents("on");
-
- locals.sliding = false;
- locals.targetElement = ev.target || ev.srcElement;
- }
-
- function dragMove(event) {
- var ev = event.originalEvent || event || window.event,
- minSwipe,
- maxSwipe;
-
- base.newPosX = getTouches(ev).x - locals.offsetX;
- base.newPosY = getTouches(ev).y - locals.offsetY;
- base.newRelativeX = base.newPosX - locals.relativePos;
-
- if (typeof base.options.startDragging === "function" && locals.dragging !== true && base.newRelativeX !== 0) {
- locals.dragging = true;
- base.options.startDragging.apply(base, [base.$elem]);
- }
-
- if ((base.newRelativeX > 8 || base.newRelativeX < -8) && (base.browser.isTouch === true)) {
- if (ev.preventDefault !== undefined) {
- ev.preventDefault();
- } else {
- ev.returnValue = false;
- }
- locals.sliding = true;
- }
-
- if ((base.newPosY > 10 || base.newPosY < -10) && locals.sliding === false) {
- $(document).off("touchmove.owl");
- }
-
- minSwipe = function () {
- return base.newRelativeX / 5;
- };
-
- maxSwipe = function () {
- return base.maximumPixels + base.newRelativeX / 5;
- };
-
- base.newPosX = Math.max(Math.min(base.newPosX, minSwipe()), maxSwipe());
- if (base.browser.support3d === true) {
- base.transition3d(base.newPosX);
- } else {
- base.css2move(base.newPosX);
- }
- }
-
- function dragEnd(event) {
- var ev = event.originalEvent || event || window.event,
- newPosition,
- handlers,
- owlStopEvent;
-
- ev.target = ev.target || ev.srcElement;
-
- locals.dragging = false;
-
- if (base.browser.isTouch !== true) {
- base.$owlWrapper.removeClass("grabbing");
- }
-
- if (base.newRelativeX < 0) {
- base.dragDirection = base.owl.dragDirection = "left";
- } else {
- base.dragDirection = base.owl.dragDirection = "right";
- }
-
- if (base.newRelativeX !== 0) {
- newPosition = base.getNewPosition();
- base.goTo(newPosition, false, "drag");
- if (locals.targetElement === ev.target && base.browser.isTouch !== true) {
- $(ev.target).on("click.disable", function (ev) {
- ev.stopImmediatePropagation();
- ev.stopPropagation();
- ev.preventDefault();
- $(ev.target).off("click.disable");
- });
- handlers = $._data(ev.target, "events").click;
- owlStopEvent = handlers.pop();
- handlers.splice(0, 0, owlStopEvent);
- }
- }
- swapEvents("off");
- }
- base.$elem.on(base.ev_types.start, ".owl-wrapper", dragStart);
- },
-
- getNewPosition : function () {
- var base = this,
- newPosition = base.closestItem();
-
- if (newPosition > base.maximumItem) {
- base.currentItem = base.maximumItem;
- newPosition = base.maximumItem;
- } else if (base.newPosX >= 0) {
- newPosition = 0;
- base.currentItem = 0;
- }
- return newPosition;
- },
- closestItem : function () {
- var base = this,
- array = base.options.scrollPerPage === true ? base.pagesInArray : base.positionsInArray,
- goal = base.newPosX,
- closest = null;
-
- $.each(array, function (i, v) {
- if (goal - (base.itemWidth / 20) > array[i + 1] && goal - (base.itemWidth / 20) < v && base.moveDirection() === "left") {
- closest = v;
- if (base.options.scrollPerPage === true) {
- base.currentItem = $.inArray(closest, base.positionsInArray);
- } else {
- base.currentItem = i;
- }
- } else if (goal + (base.itemWidth / 20) < v && goal + (base.itemWidth / 20) > (array[i + 1] || array[i] - base.itemWidth) && base.moveDirection() === "right") {
- if (base.options.scrollPerPage === true) {
- closest = array[i + 1] || array[array.length - 1];
- base.currentItem = $.inArray(closest, base.positionsInArray);
- } else {
- closest = array[i + 1];
- base.currentItem = i + 1;
- }
- }
- });
- return base.currentItem;
- },
-
- moveDirection : function () {
- var base = this,
- direction;
- if (base.newRelativeX < 0) {
- direction = "right";
- base.playDirection = "next";
- } else {
- direction = "left";
- base.playDirection = "prev";
- }
- return direction;
- },
-
- customEvents : function () {
- /*jslint unparam: true*/
- var base = this;
- base.$elem.on("owl.next", function () {
- base.next();
- });
- base.$elem.on("owl.prev", function () {
- base.prev();
- });
- base.$elem.on("owl.play", function (event, speed) {
- base.options.autoPlay = speed;
- base.play();
- base.hoverStatus = "play";
- });
- base.$elem.on("owl.stop", function () {
- base.stop();
- base.hoverStatus = "stop";
- });
- base.$elem.on("owl.goTo", function (event, item) {
- base.goTo(item);
- });
- base.$elem.on("owl.jumpTo", function (event, item) {
- base.jumpTo(item);
- });
- },
-
- stopOnHover : function () {
- var base = this;
- if (base.options.stopOnHover === true && base.browser.isTouch !== true && base.options.autoPlay !== false) {
- base.$elem.on("mouseover", function () {
- base.stop();
- });
- base.$elem.on("mouseout", function () {
- if (base.hoverStatus !== "stop") {
- base.play();
- }
- });
- }
- },
-
- lazyLoad : function () {
- var base = this,
- i,
- $item,
- itemNumber,
- $lazyImg,
- follow;
-
- if (base.options.lazyLoad === false) {
- return false;
- }
- for (i = 0; i < base.itemsAmount; i += 1) {
- $item = $(base.$owlItems[i]);
-
- if ($item.data("owl-loaded") === "loaded") {
- continue;
- }
-
- itemNumber = $item.data("owl-item");
- $lazyImg = $item.find(".lazyOwl");
-
- if (typeof $lazyImg.data("src") !== "string") {
- $item.data("owl-loaded", "loaded");
- continue;
- }
- if ($item.data("owl-loaded") === undefined) {
- $lazyImg.hide();
- $item.addClass("loading").data("owl-loaded", "checked");
- }
- if (base.options.lazyFollow === true) {
- follow = itemNumber >= base.currentItem;
- } else {
- follow = true;
- }
- if (follow && itemNumber < base.currentItem + base.options.items && $lazyImg.length) {
- $lazyImg.each(function() {
- base.lazyPreload($item, $(this));
- });
- }
- }
- },
-
- lazyPreload : function ($item, $lazyImg) {
- var base = this,
- iterations = 0,
- isBackgroundImg;
-
- if ($lazyImg.prop("tagName") === "DIV") {
- $lazyImg.css("background-image", "url(" + $lazyImg.data("src") + ")");
- isBackgroundImg = true;
- } else {
- $lazyImg[0].src = $lazyImg.data("src");
- }
-
- function showImage() {
- $item.data("owl-loaded", "loaded").removeClass("loading");
- $lazyImg.removeAttr("data-src");
- if (base.options.lazyEffect === "fade") {
- $lazyImg.fadeIn(400);
- } else {
- $lazyImg.show();
- }
- if (typeof base.options.afterLazyLoad === "function") {
- base.options.afterLazyLoad.apply(this, [base.$elem]);
- }
- }
-
- function checkLazyImage() {
- iterations += 1;
- if (base.completeImg($lazyImg.get(0)) || isBackgroundImg === true) {
- showImage();
- } else if (iterations <= 100) {//if image loads in less than 10 seconds
- window.setTimeout(checkLazyImage, 100);
- } else {
- showImage();
- }
- }
-
- checkLazyImage();
- },
-
- autoHeight : function () {
- var base = this,
- $currentimg = $(base.$owlItems[base.currentItem]).find("img"),
- iterations;
-
- function addHeight() {
- var $currentItem = $(base.$owlItems[base.currentItem]).height();
- base.wrapperOuter.css("height", $currentItem + "px");
- if (!base.wrapperOuter.hasClass("autoHeight")) {
- window.setTimeout(function () {
- base.wrapperOuter.addClass("autoHeight");
- }, 0);
- }
- }
-
- function checkImage() {
- iterations += 1;
- if (base.completeImg($currentimg.get(0))) {
- addHeight();
- } else if (iterations <= 100) { //if image loads in less than 10 seconds
- window.setTimeout(checkImage, 100);
- } else {
- base.wrapperOuter.css("height", ""); //Else remove height attribute
- }
- }
-
- if ($currentimg.get(0) !== undefined) {
- iterations = 0;
- checkImage();
- } else {
- addHeight();
- }
- },
-
- completeImg : function (img) {
- var naturalWidthType;
-
- if (!img.complete) {
- return false;
- }
- naturalWidthType = typeof img.naturalWidth;
- if (naturalWidthType !== "undefined" && img.naturalWidth === 0) {
- return false;
- }
- return true;
- },
-
- onVisibleItems : function () {
- var base = this,
- i;
-
- if (base.options.addClassActive === true) {
- base.$owlItems.removeClass("active");
- }
- base.visibleItems = [];
- for (i = base.currentItem; i < base.currentItem + base.options.items; i += 1) {
- base.visibleItems.push(i);
-
- if (base.options.addClassActive === true) {
- $(base.$owlItems[i]).addClass("active");
- }
- }
- base.owl.visibleItems = base.visibleItems;
- },
-
- transitionTypes : function (className) {
- var base = this;
- //Currently available: "fade", "backSlide", "goDown", "fadeUp"
- base.outClass = "owl-" + className + "-out";
- base.inClass = "owl-" + className + "-in";
- },
-
- singleItemTransition : function () {
- var base = this,
- outClass = base.outClass,
- inClass = base.inClass,
- $currentItem = base.$owlItems.eq(base.currentItem),
- $prevItem = base.$owlItems.eq(base.prevItem),
- prevPos = Math.abs(base.positionsInArray[base.currentItem]) + base.positionsInArray[base.prevItem],
- origin = Math.abs(base.positionsInArray[base.currentItem]) + base.itemWidth / 2,
- animEnd = 'webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend';
-
- base.isTransition = true;
-
- base.$owlWrapper
- .addClass('owl-origin')
- .css({
- "-webkit-transform-origin" : origin + "px",
- "-moz-perspective-origin" : origin + "px",
- "perspective-origin" : origin + "px"
- });
- function transStyles(prevPos) {
- return {
- "position" : "relative",
- "left" : prevPos + "px"
- };
- }
-
- $prevItem
- .css(transStyles(prevPos, 10))
- .addClass(outClass)
- .on(animEnd, function () {
- base.endPrev = true;
- $prevItem.off(animEnd);
- base.clearTransStyle($prevItem, outClass);
- });
-
- $currentItem
- .addClass(inClass)
- .on(animEnd, function () {
- base.endCurrent = true;
- $currentItem.off(animEnd);
- base.clearTransStyle($currentItem, inClass);
- });
- },
-
- clearTransStyle : function (item, classToRemove) {
- var base = this;
- item.css({
- "position" : "",
- "left" : ""
- }).removeClass(classToRemove);
-
- if (base.endPrev && base.endCurrent) {
- base.$owlWrapper.removeClass('owl-origin');
- base.endPrev = false;
- base.endCurrent = false;
- base.isTransition = false;
- }
- },
-
- owlStatus : function () {
- var base = this;
- base.owl = {
- "userOptions" : base.userOptions,
- "baseElement" : base.$elem,
- "userItems" : base.$userItems,
- "owlItems" : base.$owlItems,
- "currentItem" : base.currentItem,
- "prevItem" : base.prevItem,
- "visibleItems" : base.visibleItems,
- "isTouch" : base.browser.isTouch,
- "browser" : base.browser,
- "dragDirection" : base.dragDirection
- };
- },
-
- clearEvents : function () {
- var base = this;
- base.$elem.off(".owl owl mousedown.disableTextSelect");
- $(document).off(".owl owl");
- $(window).off("resize", base.resizer);
- },
-
- unWrap : function () {
- var base = this;
- if (base.$elem.children().length !== 0) {
- base.$owlWrapper.unwrap();
- base.$userItems.unwrap().unwrap();
- if (base.owlControls) {
- base.owlControls.remove();
- }
- }
- base.clearEvents();
- base.$elem.attr({
- style: base.$elem.data("owl-originalStyles") || "",
- class: base.$elem.data("owl-originalClasses")
- });
- },
-
- destroy : function () {
- var base = this;
- base.stop();
- window.clearInterval(base.checkVisible);
- base.unWrap();
- base.$elem.removeData();
- },
-
- reinit : function (newOptions) {
- var base = this,
- options = $.extend({}, base.userOptions, newOptions);
- base.unWrap();
- base.init(options, base.$elem);
- },
-
- addItem : function (htmlString, targetPosition) {
- var base = this,
- position;
-
- if (!htmlString) {return false; }
-
- if (base.$elem.children().length === 0) {
- base.$elem.append(htmlString);
- base.setVars();
- return false;
- }
- base.unWrap();
- if (targetPosition === undefined || targetPosition === -1) {
- position = -1;
- } else {
- position = targetPosition;
- }
- if (position >= base.$userItems.length || position === -1) {
- base.$userItems.eq(-1).after(htmlString);
- } else {
- base.$userItems.eq(position).before(htmlString);
- }
-
- base.setVars();
- },
-
- removeItem : function (targetPosition) {
- var base = this,
- position;
-
- if (base.$elem.children().length === 0) {
- return false;
- }
- if (targetPosition === undefined || targetPosition === -1) {
- position = -1;
- } else {
- position = targetPosition;
- }
-
- base.unWrap();
- base.$userItems.eq(position).remove();
- base.setVars();
- }
-
- };
-
- $.fn.owlCarousel = function (options) {
- return this.each(function () {
- if ($(this).data("owl-init") === true) {
- return false;
- }
- $(this).data("owl-init", true);
- var carousel = Object.create(Carousel);
- carousel.init(options, this);
- $.data(this, "owlCarousel", carousel);
- });
- };
-
- $.fn.owlCarousel.options = {
-
- items : 5,
- itemsCustom : false,
- itemsDesktop : [1199, 4],
- itemsDesktopSmall : [979, 3],
- itemsTablet : [768, 2],
- itemsTabletSmall : false,
- itemsMobile : [479, 1],
- singleItem : false,
- itemsScaleUp : false,
-
- slideSpeed : 200,
- paginationSpeed : 800,
- rewindSpeed : 1000,
-
- autoPlay : false,
- stopOnHover : false,
-
- navigation : false,
- navigationText : ["prev", "next"],
- rewindNav : true,
- scrollPerPage : false,
-
- pagination : true,
- paginationNumbers : false,
-
- responsive : true,
- responsiveRefreshRate : 200,
- responsiveBaseWidth : window,
-
- baseClass : "owl-carousel",
- theme : "owl-theme",
-
- lazyLoad : false,
- lazyFollow : true,
- lazyEffect : "fade",
-
- autoHeight : false,
-
- jsonPath : false,
- jsonSuccess : false,
-
- dragBeforeAnimFinish : true,
- mouseDrag : true,
- touchDrag : true,
-
- addClassActive : false,
- transitionStyle : false,
-
- beforeUpdate : false,
- afterUpdate : false,
- beforeInit : false,
- afterInit : false,
- beforeMove : false,
- afterMove : false,
- afterAction : false,
- startDragging : false,
- afterLazyLoad: false
- };
-}(jQuery, window, document));