File: /var/www/vhosts/creativefellows.nl/geomil.creativefellows.nl/js/app.js
$(document).foundation().ready(function(){
$(".toggle-search, .toggle-navigation").toggleSearchNavigation();
$("#header").fixednav();
$('#acceptCookie').on("click",function(event)
{
event.preventDefault();
var cookies = $(this).closest(".cookies");
$.ajax({
type: 'POST',
url: "accept-cookies",
success: function (response) {
$("#cookies").slideUp("fast");
}
});
});
$(window).scroll(function(){
$(".image-showcase.text-only .cell").css("opacity", 1 - $(window).scrollTop() / 250);
});
// open external links in new window
$(document.links).filter(function() {
return this.hostname != window.location.hostname;
}).attr('target', '_blank');
$('.image-showcase').slick({
infinite: true,
autoplay: true,
autoplaySpeed: 7500,
slidesToShow: 1,
arrows:true,
speed: 1000,
useTransform: true,
});
// check form response
$(".form-response").checkIsSent();
});
$.fn.checkIsSent = function()
{
return this.each(function(){
var form = $(this);
form.init = function()
{
var s = form.getUrlParameter("s");
var id = form.getUrlParameter("id");
var h = form.getUrlParameter("h");
if(s)
{
$('html, body').animate({
scrollTop: form.offset().top -200
}, 1000);
}
}
form.getUrlParameter = function(sParam){
var sPageURL = decodeURIComponent(window.location.search.substring(1)),
sURLVariables = sPageURL.split('&'),
sParameterName,
i;
for (i = 0; i < sURLVariables.length; i++) {
sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] === sParam) {
return sParameterName[1] === undefined ? true : sParameterName[1];
}
}
};
// init the plugin
form.init();
});
}
/*
* Fullscreen an item
*/
$.fn.fullScreen = function(options){
var plugin = this;
var defaults = {
minHeight:600,
sectionHeight: plugin.attr("data-height")
}
plugin.init = function() {
plugin.settings = $.extend({}, defaults, options);
// resize to fit screen
plugin.resizeWindow();
// on resize
plugin.onResizeWindow();
}
plugin.onResizeWindow = function()
{
$( window ).resize(function() {
plugin.resizeWindow();
});
}
plugin.resizeWindow = function()
{
var wdh = $(window).height();// - $(".copy").height();
if(plugin.settings.sectionHeight)
{
if(wdh < plugin.settings.minHeight){
// plugin.addClass("fixed");
//
// plugin.height( plugin.settings.minHeight ).css({padding:0});
// return;
}
else{
//console.log("auto");
// plugin.removeClass("fixed");
if(plugin.settings.sectionHeight == "auto") plugin.css({height: "auto"});
else plugin.css({height: 0, paddingBottom: plugin.settings.sectionHeight });
}
}
else{
plugin.height( wdh > plugin.settings.minHeight ? wdh : plugin.settings.minHeight );//.fadeIn();
}
}
plugin.init();
return plugin;
}
/*
* fixed navigation
*/
$.fn.fixednav = function(){
var shrinkHeader = $('#header').height();
var lastScrollTop = 0;
$(window).scroll(function() {
var scrollYpos = getCurrentScroll();
if(scrollYpos >= shrinkHeader) $('#header').addClass('has-scrolled');
else $('#header').removeClass('has-scrolled');
// scrolling up
//if (scrollYpos < lastScrollTop) $('#header').removeClass('has-scrolled');
// set scroll pos
lastScrollTop = scrollYpos;
});
function getCurrentScroll()
{
return window.pageYOffset;
}
function checkScrollPosition()
{
var scroll = getCurrentScroll();
if(scroll >= shrinkHeader) $('#header').addClass('has-scrolled');
}
checkScrollPosition();
}
/*
* toggle navigation
*/
$.fn.toggleSearchNavigation = function()
{
var shadeout = null;
var fadeDelay = 250;
var menu_el = new Foundation.ResponsiveToggle('.toggle-menu');
var toggle_nav = $(this);
var navtype = null;
var close_search = $('.close-search');
var search = $('#search-site');
var search_field = $('input[name="q"]');
$(this).on("click",function(event)
{
// set type
navtype = search;
// toggle open class
$(this).toggleClass('open');
$("#header").toggleClass('open');
// create mask element if not exists
if( $(".shade-out").length == 0 ) createShadeOut();
// toggle search
if( search.hasClass("hidden") ) showSearch();
else hideSearch();
});
var showSearch = function()
{
if(navtype == search)
{
// hide search
search.removeClass("hidden").addClass("is-open").hide();
// slide down search
search.delay(fadeDelay).slideToggle("fast",function(){
search_field.focus();
});
}
// show shade-out
shadeout.addClass("is-open").hide().fadeIn(fadeDelay*2);
}
var hideSearch = function()
{
if(navtype == search)
{
// hide search
search.removeClass("is-open").slideToggle("fast",function(){
$(this).addClass("hidden");
});
}
else if(navtype == navigation)
{
navigation.removeClass("is-open");
navigation.addClass("hide-on-mobile");
// hide shade-out
shadeout.removeClass("is-open").delay(fadeDelay).fadeOut("fast");
$('.toggle-navigation').removeClass('open');
}
// hide shade-out
shadeout.removeClass("is-open").delay(fadeDelay).fadeOut("fast");
}
var createShadeOut = function()
{
shadeout = $('<div class="shade-out"></div>').hide();
shadeout.insertAfter("#header");
shadeout.on("click",function(event)
{
hideSearch();
});
}
}