Team:Nevada/app-on.js
From 2014.igem.org
/*global $, jQuery, document, window*/ /* ========================================================================== Document Ready Function ========================================================================== */ jQuery(document).ready(function () {
'use strict';
var slider, slider2, readyHeight, windowWidth, formInput, sformInput;
/* ========================================================================== ScrollTo ========================================================================== */ $('a.scrollto').click(function (event) { $('html, body').scrollTo(this.hash, this.hash, {gap: {y: 2}, animation: {easing: 'easeInOutCubic', duration: 800}}); event.preventDefault();
});
/* ========================================================================== Feature Tabs ========================================================================== */ slider = $("div#WorksTabs").sliderTabs({ autoplay: 10000, panelArrows: true, position: 'top', tabArrows: false, defaultTab: 2 });
/* ========================================================================== Member Tabs ========================================================================== */ slider2 = $("div#TeamTabs").sliderTabs({ autoplay: 10000, panelArrows: false, tabArrows: false, position: 'top', indicators: true });
/* ========================================================================== Portfolio ========================================================================== */ $(".owl-portfolio").owlCarousel({ items : 4, itemsDesktop : [1000, 2], itemsDesktopSmall : [768, 1], itemsTablet: [568, 1], lazyLoad: true, autoPlay: true, pagination : true, stopOnHover: true, navigation : false });
/* ========================================================================== Fancy Box ========================================================================== */ $(".fancybox").fancybox({ helpers : { overlay : { speedOut : 0, locked: false } } });
/* ========================================================================== Magnify ========================================================================== */ $("#magnify-image").mlens({
imgSrc: $("#magnify-image").attr("data-big"), lensShape: "circle", lensSize: 180, borderSize: 4, borderColor: "#000000", borderRadius: 0 });
/* ========================================================================== Feature Image Height ========================================================================== */ windowWidth = $(window).width(); if (windowWidth >= 991) { $('#ready-section .feature-image').css({minHeight: '480px'}); readyHeight = $('.col-md-6.readyHeights').height() + 40; $('#ready-section .feature-image').css({height: readyHeight}); } else { $('#ready-section .feature-image').css({height: '480px'}); }
/* ========================================================================== FAQ Tabs ========================================================================== */ $(function () { $('.faq-tabs > ul li:first-child a').addClass('active'); $('#faq1Containt').siblings().hide(); $('.faq-tabs > ul li a').click(function (event) { var faq = this.hash; $('.faq-tabs > ul li a').removeClass('active'); $(this).addClass('active'); $(faq + 'Containt').siblings().slideUp(0); $(faq + 'Containt').slideDown(0); event.preventDefault(); }); });
/* ========================================================================== Clients ========================================================================== */ $(".owl-clients").owlCarousel({ items : 1, itemsDesktop : [1000, 1], itemsDesktopSmall : [768, 1], itemsTablet: [568, 1], lazyLoad: true, autoPlay: true, pagination : false, stopOnHover: true, navigation : false });
$("a.clients-next").click(function () { $(".owl-clients").trigger("owl.next"); }); $("a.clients-prev").click(function () { $(".owl-clients").trigger("owl.prev"); });
/* ========================================================================== FORM Validation ========================================================================== */ $('form#form').submit(function () { $('form#form .error').remove(); $('form#form .success').remove(); var hasError = false; $('.requiredField').each(function () { if (jQuery.trim($(this).val()) === ) { hasError = true; } else if ($(this).hasClass('email')) { var emailReg = /^([\w-\.]+@([\w]+\.)+[\w]{2,4})?$/; if (!emailReg.test(jQuery.trim($(this).val()))) { hasError = true; } } }); if (hasError === true) {$('form#form').append('
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
Oops. You missed some required fields.
} if (!hasError) { formInput = $(this).serialize(); $.post($(this).attr('action'), formInput, function (data) {$('form#form').append('
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
Thanks! Your email was successfully sent. We will contact you asap.
}); $('.requiredField').val(); } return false; }); $('form#form input').focus(function () { $('form#form .error').remove(); $('form#form .success').remove(); }); $('form#form textarea').focus(function () { $('form#form .error').remove(); $('form#form .success').remove(); });
/* ========================================================================== Subscribe ========================================================================== */ $('form#sform').submit(function () { $('form#sform .serror').remove(); $('form#sform .success').remove(); var shasError = false; $('.srequiredField').each(function () { if (jQuery.trim($(this).val()) === ) { shasError = true; } else if ($(this).hasClass('email')) { var emailReg = /^([\w-\.]+@([\w]+\.)+[\w]{2,4})?$/; if (!emailReg.test(jQuery.trim($(this).val()))) { shasError = true; } } }); if (shasError === true) {$('form#sform').append('
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
Please enter a valid email address.
} if (!shasError) { sformInput = $(this).serialize(); $.post($(this).attr('action'), sformInput, function (data) {$('form#sform').append('
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
You have successfully subscribed to our newsletter.
}); $('.srequiredField').val(); } return false; }); $('form#sform input').focus(function () { $('form#sform .serror').remove(); $('form#sform .success').remove(); });
/* ========================================================================== MoreApps Slider ========================================================================== */ $('#owl-apps').owlCarousel({ items : 6, itemsDesktop : [1000, 5], itemsDesktopSmall : [768, 2], itemsTablet: [520, 2], itemsMobile: [320, 1], lazyLoad : true, pagination: true, autoPlay: 5000 });
/* ========================================================================== SideBar Menu ========================================================================== */ $('a.sidebar-btn').on('click', function (e) { e.preventDefault(); $('#sidebar-wrapper').toggleClass('openclose'); $('#sidebar-overlayer').toggleClass('openclose'); }); $('#sidebar-overlayer').on('click', function (e) { e.preventDefault(); $('#sidebar-wrapper').removeClass('openclose'); $('#sidebar-overlayer').toggleClass('openclose'); });
$('#sidebar-container a.scrollto').click(function (event) { $('html, body').scrollTo(this.hash, this.hash, {gap: {y: 2}, animation: {easing: 'easeInOutCubic', duration: 800}}); event.preventDefault(); $('#sidebar-wrapper').removeClass('openclose'); $('#sidebar-overlayer').removeClass('openclose');
});
$('#works-section .ui-slider-tab-content').css({width: $('#works-section .col-md-12').width()}); $('.ui-slider-tabs-content-container').css({height: $('.ui-slider-tab-content.selected').height()});
/* ========================================================================== FitVids ========================================================================== */ $('.videos').fitVids();
/* ========================================================================== Flickr Feed ========================================================================== */ $('#flickr-feed').jflickrfeed({ limit: 6, qstrings: { id: '25461271@N07' },itemTemplate: '