﻿//
// Work Availabilities
//

var linkReference;
var dayPartChanged;
var weekDayChanged;

function ChangeEmployeeAvailability(link, dayPart, weekDay) {        
	linkReference = link;    
	$.ajax(
	{
		type: "POST",
		url: "/ZZPWebUtils/ChangeEmployeeAvailability",
		data: "dayPart=" + dayPart + "&weekDay=" + weekDay,
		
		success: function (result) {            
			if (result.success) {                
				linkReference.className = result.css;
			}

		},
		error: function (req, status, error) {
			alert("Service Error: " + error);
		}
	});
}

//
// Video Presentation
//

function videoBox_load(divID, videoUrl) {
	var flashvars = {
		file: videoUrl,
		image: '/images/vidPreview.jpg',
		autostart: 'false',
		controlbar: 'over',
		fullscreen: 'true',
		allowfullscreen: 'true',
		stretching: 'fill',
		controlbar: 'over',
		skin: '/swf/dangdang.swf'
	};
	var params = {
		wmode: 'transparent',
		allowfullscreen: 'true'
	};
	var attributes = {};

	swfobject.embedSWF('/swf/player.swf', divID, '320', '240', '9', '', flashvars, params, attributes);
}

//
// Profile edit
//
function editProfile(sectionName) {

	var profileEditHelperLink = $('#profileEditHelperLink');
	profileEditHelperLink.fancybox({
		'padding': 0,
		'autoScale': false,
		'transitionIn': 'none',
		'transitionOut': 'none',
		'title': this.title,
		'centerOnScroll': true,
		'hideOnOverlayClick': false,
		'hideOnContentClick':false,
		'titleShow' : false,
		'showCloseButton':false
	});

	$("#profileEdit").tabs();

	profileEditHelperLink.click();
}

function fancyConfirm(msg, callback) {
	var ret;
	jQuery.fancybox({
		'padding': 0,
		'autoScale': false,
		'transitionIn': 'none',
		'transitionOut': 'none',
		'title': this.title,
		'centerOnScroll': true,
		'hideOnOverlayClick': false,
		'hideOnContentClick':false,
		'titleShow' : false,
		'showCloseButton':false,
		'content': 
				 "<div id=\"pnlConfirmation\" class=\"popupdiv2\">" +
				 "<table width=\"100%\" cellspacing=\"2\">" +
				  "<tr>" +
				  "<td class=\"popupHeader\" valign=\"middle\">" +
				  "&nbsp;Bevestiging" +
				  "</td></tr><tr><td>&nbsp;</td> </tr>" +
				  "<tr><td>" +
				  "<div align=\"center\" style='padding:10px 10px 10px 10px;'>" +
				  msg +
				  "</div></td></tr>" +
				  "<tr><td align=\"center\">" +
				  "<input id=\"fancyConfirm_ok\" type=\"button\" value=\"Bevestig\" class=\"submitButton\"> <input id=\"fancyConfirm_cancel\" type=\"button\" value=\"Annuleren\" class=\"submitButton\">" +
				  "<br /><br /></td></tr></table></div>",
		
		'onComplete': function () {
			jQuery("#fancyConfirm_cancel").click(function () {
				ret = false;
				jQuery.fancybox.close();
			})
			jQuery("#fancyConfirm_ok").click(function () {
				ret = true;
				jQuery.fancybox.close();
			})
		},
		'onClosed': function () {
			callback.call(this, ret);
		}
	});
}

function confirmDelete(anchor) {
	fancyConfirm("Bent u er zeker?", function (ret) {
		if (ret) {
			window.location = $(anchor).attr('href');
		};
	});
}

function fancyPopup(triggerID, href)
{
	$('#' + triggerID).fancybox({
		'titlePosition': 'inside',
		'transitionIn': 'none',
		'transitionOut': 'none',
		'titleShow': false,
		'scrolling' : 'no',
		'showCloseButton': true,
		'hideOnOverlayClick': false,
		'hideOnContentClick': false,
		'href' : href
	});
}

function resetForm(referenceForm)
{
	$(':input', referenceForm)
	.not(':button, :submit, :reset, :hidden, .notClear')
	.val('')
	.removeAttr('checked')
	.removeAttr('selected');
}

//
// Document ready
//
$(document).ready(function () {

    $('a#addReference,a#registrationLink,a#registrationLinkExtended').fancybox({
        'titlePosition': 'inside',
        'transitionIn': 'none',
        'transitionOut': 'none',
        'scrolling': 'no',
        'titleShow': false,
        'showCloseButton': true,
        'hideOnOverlayClick': false,
        'hideOnContentClick': false
    });

    $('form .closePopupButton').live('click',function () {
        $.fancybox.close();
    });

    //CheckWhetherToDisplayRegisterOptions();
});

function CheckWhetherToDisplayRegisterOptions() {    
	$.query = $.query.load(location.href);
	if ($.query.get('register') == 'true') {
		ShowRegistrationOptions();
	}
}

function ShowRegistrationOptions() {
	// triggers fancybox open 
	$('#registrationLink').click();
	return false;
}

function AddValidationFlagsToForm(container) {
	container.find("span.requiredFlag")
		.not(".flagVisited")
		.addClass('flagVisited')
		.before("<span class='flag'><img alt='required' src='/images/mandatoryIcon.png' /></span>");
}

// Mutualy exclusive checkboxes
//toggle all checkboxes in toggleContainer div
function MutuallyExclusiveCheckboxes(checkboxesExpression)  {
	$(checkboxesExpression).click(function () {
		var jThis = $(this);
		var thisClass = jThis.attr('class');
		if (jThis.attr('checked')) {
			var expression = checkboxesExpression + '.' + thisClass.replace(' ', '.') + ":not(#" + this.id + ")";
			$(expression).removeAttr('checked');

		}
		else {
			if (!jThis.hasClass('notRequired'))
				jThis.attr('checked', 'checked');
		}
	});
 }

//
// display loading while async jquery posts to the server
//
; (function ($) {

	var loadingTimer, loadingFrame = 1;

	var loading2;

	$.loading = function () {

	};

	$.loading.showActivity = function () {
		clearInterval(loadingTimer);

		loading2.show();
		loadingTimer = setInterval(loading2_animate_loading, 66);
	};

	$.loading.hideActivity = function () {
		loading2.hide();
	};

	function loading2_animate_loading() {
		if (!loading2.is(':visible')) {
			clearInterval(loadingTimer);
			return;
		}

		$('div', loading2).css('top', (loadingFrame * -40) + 'px');

		loadingFrame = (loadingFrame + 1) % 12;
	};

	$(document).ready(function () {
		$('body').append(
					loading2 = $('<div id="loading2"><div></div></div>')
			);
	});

})(jQuery);


// jQuery plugins
jQuery.fn.outerHtml = function (s) {
    return (s)
? this.before(s).remove()
: jQuery("&lt;p&gt;").append(this.eq(0).clone()).html();
};

