$.fn.equalHeights = function (childSelector) {
var maxHeight = 0;
$(this).children(childSelector).each(function () {
maxHeight = ($(this).height() > maxHeight) ? $(this).height() : maxHeight;
});
$(this).children(childSelector).height(maxHeight);
};
(function (doc) {
var addEvent = 'addEventListener',
type = 'gesturestart',
qsa = 'querySelectorAll',
scales = [1, 1],
meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : [];
function fix() {
meta.content = 'width=device-width,minimum-scale=' + scales[0] + ',maximum-scale=' + scales[1];
doc.removeEventListener(type, fix, true);
}
if ((meta = meta[meta.length - 1]) && addEvent in doc) {
fix();
scales = [.25, 1.6];
doc[addEvent](type, fix, true);
}
}(document));
(function ($, undefined) {
$(function () {
if (!Modernizr.csscalc) {
var mainAreaEl = $('.layout-two-columns-left .area-1');
mainAreaEl.css('width', '100%');
var mainAreaElWidth = mainAreaEl.width() - 375;
mainAreaEl.css('width', mainAreaElWidth)
}
$('#nav').not($('#nav li.active ul').closest('#nav')).height(38);
$('ul.clickable').removeClass('clickable').children('li').addClass('clickable');
$('section:not(.not-clickable) article').addClass('clickable');
$('.clickable')
.click(function () {
var a = $(this).find('a');
if (a.size() > 0) {
if (a[0].target == '_blank')
window.open(a[0].href, '_blank');
else
window.location = a[0].href;
}
return false;
});
$('.clickable a').click(function (e) { e.stopPropagation(); });
$('.hoverable li, .clickable')
.hover(
function () { $(this).addClass('hover'); },
function () { $(this).removeClass('hover'); }
);
$('.clickable footer a')
.hover(
function () { $(this).parents('.clickable').removeClass('hover'); },
function () { $(this).parents('.clickable').addClass('hover'); }
);
$('ul[data-item-limit] li').map(function () {
var list = $(this).parent();
var itemLimit = list.data('item-limit');
var itemCount = parseInt(list.attr('item-count'));
if (isNaN(itemCount)) itemCount = 0;
if (itemCount >= itemLimit) $(this).addClass('initial-hide').hide();
itemCount++;
list.attr('item-count', itemCount);
});
$('ul[data-item-limit]').map(function () {
if ($(this).children('li.initial-hide').length == 0)
return;
var openLabel = $(this).data('toggler-open-label') || 'Meer';
var closeLabel = $(this).data('toggler-close-label') || 'Minder';
$('<a class="toggler closed" href="javascript:void(0)">' + openLabel + '</a>')
.appendTo($(this).parent())
.click(function () {
if ($(this).hasClass('closed')) {
$(this).removeClass('closed').addClass('open');
$(this).prev('ul').children('li.initial-hide').slideDown('fast');
$(this).html(closeLabel);
return;
}
$(this).removeClass('open').addClass('closed');
$(this).prev('ul').children('li.initial-hide').slideUp('fast');
$(this).html(openLabel);
});
});
$('.toggleable').each(function () {
var toggleableElement = $(this);
var togglerLabel = toggleableElement.data('toggler-label');
if (togglerLabel) {
$('<a class="toggler toggle-next closed" href="javascript:void(0)">' + togglerLabel + '</a>')
.click(function () {
$(this).toggleClass('closed open').next().toggle();
})
.insertBefore(toggleableElement);
toggleableElement.hide();
} else {
var toggler = $('a.toggler[href=#' + toggleableElement.attr('id') + ']')
toggler.click(function () {
var el = $(this);
var label = el.html();
el.html(el.data('toggler-close-label'))
.data('toggler-close-label', label)
.toggleClass('closed open');
toggleableElement.stop(false, true)
.slideToggle();
return false;
});
if (!toggler.is('.open, .closed'))
toggler.addClass('closed');
toggleableElement.hide();
if (toggler.is('.open'))
toggler.toggleClass('closed open').click();
}
});
$('span.printwidget').wrapInner('<a href="#"></a>');
$('span.printwidget > a').click(
function () {
window.print();
return false;
});
var forms = $('form.autosubmit');
forms.find('input[type=submit]').hide();
forms.find('input,select').change(function () {
$(this).closest('form').submit();
});
$('.toggler-target:not(.visible)').hide();
$('.toggler').click(function () {
var toggler = $(this);
var togglerTarget = toggler.parents('.block').find('.toggler-target');
togglerTarget.slideToggle('fast', function () {
if (togglerTarget.is(':visible')) { toggler.addClass('active'); }
else { toggler.removeClass('active'); }
});
return false;
});
$('.number-of-views').each(function () {
var self = $(this);
$.getJSON(
$(this).attr('data-infoserviceurl'),
function (data) {
self.attr('title', data.viewCount + ' keer gelezen').html(data.viewCount);
}
);
});
window.lastFancyboxGroupId = 0;
$('.popup a, a.popup')
.bind('bind-fancybox', function () {
$(this).fancybox(
{
titlePosition: 'inside',
titleFormat: function (title, currentArray, currentIndex, currentOpts) {
var titleHtml = '<span id="fancybox-title-inside">';
titleHtml += (title.length ? title + '<br>' : '');
titleHtml += '<em>Foto ' + (currentIndex + 1) + ' van ' + currentArray.length + '</em>';
titleHtml += '</span>';
return titleHtml;
}
});
})
.each(function () {
if ($(this).closest('li').length == 0)
return $(this).trigger('bind-fancybox');
window.lastFancyboxGroupId++;
var ul = $(this).closest('ul');
ul.find(ul.hasClass('popup') ? 'a' : '.popup a, a.popup')
.attr('rel', 'group' + window.lastFancyboxGroupId)
.trigger('bind-fancybox');
});
$('.block .carousel').each(function () {
if ($(this).children('li').length == 1)
$(this).closest("li.carousel-block").show();
if ($(this).children('li').length < 2)
return;
if ($(this).attr('data-carousel') == 'off')
return;
var carousel = {
interval: null,
limit: $(this).attr('data-limit') || 5,
random: $(this).data('random') || false,
speed: $(this).attr('data-interval') || 1000,
container: $(this),
onChange: null,
AdjustHeight: function() {
if (this.limit < 0) return;
var children = this.container.children();
var border = parseInt(children.css('border-bottom-width').replace(/px/, '')) || 0;
this.container.height(children.outerHeight() * this.limit - border);
},
OnChange: function(callback) {
this.onChange = callback;
},
Stop: function() {
clearInterval(this.interval);
},
Start: function() {
var carousel = this;
if (carousel.random === true) 
carousel.Shuffle();
carousel.AdjustHeight();
this.interval = setInterval(function() {
carousel.Rotate();
}, this.speed);
},
Shuffle: function() {
function shuffleItems (arr) {
for (var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
return arr;
}
var items = carousel.container.children('li').clone(true);
return (items.length) ? carousel.container.html(shuffleItems(items)) : carousel.container.html(items);
},
Rotate: function () {
var carousel = this;
var firstItem = carousel.container.children(':last');
var speed = Math.min(carousel.speed / 3, 500);
firstItem.fadeOut(
speed,
function () {
var item = $(this);
item.remove();
carousel.container.prepend(item);
item.slideDown(speed, function () {
if (!carousel.onChange)
return;
carousel.onChange();
});
}
);
}
};
carousel.container.hover(
function () {
carousel.Stop();
},
function () {
carousel.Start();
}
);
carousel.Start();
$(this).closest("li.carousel-block").show();
$(this).data('carousel', carousel);
});
var twitterWidgets = $('.block.twitter-widget > div');
if (twitterWidgets.length) {
$.getScript('//widgets.twimg.com/j/2/widget.js', function () {
twitterWidgets.each(function () {
var $el = $(this),
id = $el.attr('id'),
search = $el.data('search'),
title = $el.data('title'),
caption = $el.data('caption'),
height = $el.data('height');
new TWTR.Widget({
id: id,
version: 2,
type: 'search',
search: search,
interval: 30000,
title: title,
subject: caption,
width: 'auto',
height: height,
theme: {
shell: {
background: '#8ec1da',
color: '#ffffff'
},
tweets: {
background: '#ffffff',
color: '#444444',
links: '#1985b5'
}
},
features: {
scrollbar: false,
loop: true,
live: true,
behavior: 'default'
}
}).render().start();
});
});
}
var linkedInWidgets = $('.block.linkedin-widget');
if (linkedInWidgets.length) {
$.getScript('//platform.linkedin.com/in.js?async=true', function () {
IN.init();
});
}
var feedBlocks = $('.block.feed');
if (feedBlocks.length) {
var baseUrl = $('base').attr('href');
$.getScript(baseUrl + 'FrontOffice/Scripts/Feeds.js');
var photoFeeds = feedBlocks.filter('.photo-feed');
if (photoFeeds.length)
$.getScript(baseUrl + 'FrontOffice/Fancybox/jquery.fancybox.pack.js', function () {
$('.block.photo-feed').delegate('.content a', 'click', function () {
var el = $(this),
images = el.closest('.block.photo-feed').find('.content a'),
index = $.inArray(this, images),
gallery = images.map(function () {
var el = $(this),
html = $('<div>').append(el.clone()).html();
return {
content: html,
title: el.attr('title')
};
});
$.fancybox(
gallery, {
index: index,
helpers: {
title: {
type: 'over'
}
}
}
);
return false;
});
});
}
});
$.ajax({
url: '//graph.facebook.com/binnenlandsbestuurpagina',
dataType: 'jsonp',
success: function (data) {
$('.socialFacebook .socialCounter .content').html(data.likes);
}
});
$(".socialCounterBox").each(
function (index, elem) {
$(elem).click(function () {
window.open($(this).attr("href"), "_blank", "");
return false;
});
}
);
(function () {
if (!window.ga)
return;
var baseHref = $('base').attr('href').toLowerCase();
var baseHrefWithoutProtocol = baseHref.substring(baseHref.indexOf('://'));
function endsWith(haystack, needle) {
if (!haystack || !needle || haystack.length < needle.length)
return false;
return (haystack.indexOf(needle, haystack.length - needle.length ) == haystack.length - needle.length);
}
function getEventCategory(el, href) {
var category = el.data('ga-eventcategory');
if (category) {
return category;
}
if (!href) {
return 'DISABLED';
}
href = href.toLowerCase();
var i;
var excludePrefixes = ['#', 'mailto:', 'javascript:'];
for (i in excludePrefixes) {
if (href.indexOf(excludePrefixes[i]) == 0) {
return 'DISABLED';
}
}
var hrefQueryStringPos = href.indexOf('?');
var hrefWithoutQuerystring = (hrefQueryStringPos > 0) ? href.substring(0, hrefQueryStringPos) : href;
var downloadExtensions = ['.doc', '.docx', '.pdf', '.ppt', '.pptx', '.xls', '.xlsx'];
for (i in downloadExtensions) {
if (endsWith(hrefWithoutQuerystring, downloadExtensions[i])) {
return downloadExtensions[i].substring(1) + ' download';
}
}
var hrefWithoutProtocol = (href.indexOf('://')) ? href.substring(href.indexOf('://')) : href;
var relativeHref = hrefWithoutProtocol.replace(baseHrefWithoutProtocol, '');
if (relativeHref.indexOf('://') == 0) {
return 'outbound link';
}
return 'inbound link';
}
function getEventAction(el) {
var action = el.data('ga-eventaction');
if (!action)
action = 'click-from:' + location.href;
return action;
}
function getEventLabel(el, href) {
var label = el.data('ga-eventlabel');
if (!label)
label = href;
return label;
}
var jobTrackingEl = $('.job-primary .ga-eventtracking');
jobTrackingEl.find('a[href]').each(function () {
var tEl = $(this);
var href = tEl.attr('href');
tEl
.attr('data-ga-eventcategory', 'Vacature click-out')
.attr('data-ga-eventaction', 'Click-out')
.attr('data-ga-eventlabel', jobTrackingEl.data('ga-eventlabel'));
var category = getEventCategory(tEl, href);
if (category == 'DISABLED')
return;
if (href.indexOf(':') < 0) {
if (href.indexOf('/') == 0)
href = href.substring(1);
href = baseHref + href;
tEl.attr('href', href);
}
tEl.click(function () {
href = tEl.attr('href'); 
var action = getEventAction(tEl);
var label = getEventLabel(tEl, href);
window.ga("send", "event", category, action, label, {
hitCallback: function () {
if (tEl.attr("target") == "_blank")
return; 
document.location = href;
}
}, { nonInteraction: 1 });
if (tEl.attr("target") != "_blank") {
window.setTimeout(function () {
document.location = href;
}, 2000);
return false;
}
window.open(href, "_blank");
window.focus();
return false;
});
});
})();
})(this.jQuery);
function addListener(element, type, callback) {
if (element.addEventListener) element.addEventListener(type, callback);
else if (element.attachEvent) element.attachEvent('on' + type, callback);
}
window.log = function () {
log.history = log.history || [];
log.history.push(arguments);
if (this.console) {
console.log(Array.prototype.slice.call(arguments));
}
};
(function (doc) {
var write = doc.write;
doc.write = function (q) {
if (/docwriteregexwhitelist/.test(q)) write.apply(doc, arguments);
};
})(document);
