var $j = jQuery.noConflict();

$j.cookie = function(name, value, options) { //Cookies plugin
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = $j.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

function setJobCookie(){
	if ( $j('#jobVars').length > 0){
		//addTrans variabelen
		var PageId = 'PAGE_' + $j('#currentJobId').text();
		var affiliation = $j('.ConsultantCompanyBranch .value').text();
		var total = '10'; //vereist totaalprijs
		var city = $j('.companycity .value').text();
		
		//addItem variabelen
		var jobId = $j('#currentJobId').text(); //zogenaam SKU is ook vereist
		var vacName = $j('#vac_title h1').text().slice(10);
		var vacCategory = $j('.companysector .value').text();
		var price = '10'; //verplicht voor e-commerce
		var quantity = '1'; //verplicht voor e-commerce
		
		$j.cookie('job_cookie', null);	
		$j.cookie('job_cookie', PageId + '=' + affiliation + '=' + total + '=' + city + '=' + jobId + '=' + vacName + '=' + vacCategory + '=' + price + '=' + quantity , { expires: 150, path: '/'});	
	}
}

function getJobCookie(){
	var cookieInhoud = $j.cookie('job_cookie').split('=');
		
	var PageId = cookieInhoud[0];
	var affiliation = cookieInhoud[1];
	var total = cookieInhoud[2]; //vereist totaalprijs
	var city = cookieInhoud[3];
	
	//addItem variabelen
	var jobId = cookieInhoud[4];
	var vacName = cookieInhoud[5];
	var vacCategory = cookieInhoud[6];
	var price = cookieInhoud[7];
	var quantity = cookieInhoud[8];

}

 
function moveButtoncontainer()
{
	$j('.addreactionblock .formholder, .mailafriendblock .formholder').each(
		function()
		{
			var t = this;
			var buttonContainer = $j('.button-container', t);
			$j(t).after(buttonContainer);
		}
	);
}

function makeButton()
{
	$j('.jobreactionblock a, .button-container input, .button-container a, .buttons input, .quickorder input, .button-container ul li a, .categorybutton, .mailafriendblock a, .basketaddblock a, .objectbasketblock .remove a, .button-container .button, .rssbuttonholder a, .gallerygoback a, .route div input:button, .previous, .next, .showdetails, .htmlblock .back').not($j('#vac_right .mailafriendblock a, #c_top .mailafriendblock a, #logo .searchblock .button-container input, .preview a, .surveycontainer input[type="image"], #c_facet .mailafriendblock a')).each(function()
	{
		var button = this;
		if(button.type != 'hidden') 
		{
		    $j(button).wrap('<span class="candywrapper"></span>').css('color', '#FFFFFF');
		} else {
			$j(button).css('display','none');
		}
	});
}

function mouseOver()
{
	$j('.candywrapper a, .candywrapper input, .displayjob .jobreactionblock .candywrapper a').mouseover(function()
	{
		var disabled = this.getAttribute('disabled');
		if(!disabled)
		{
			$j(this).addClass('linkhover')
		}
	}).mouseout(function()
	{
		$j(this).removeClass('linkhover')
	});
	$j('.candywrapper, .displayjob .jobreactionblock .candywrapper').mouseover(function()
	{
		var disabled = this.firstChild != null ? this.firstChild.getAttribute('disabled') : false;
		if(!disabled)
		{
			$j(this).addClass('hover')
		}
	}).mouseout(function()
	{
		$j(this).removeClass('hover')
	});
}

function placeLocation(){
	if($j('.displayjob, .jobreactionblock').size() > 0){
		
		var newDiv = $j('<div class="wrap"></div>');
		var city = $j('.companycity span.value').clone();
		var title = $j('.displayjob h1');
	
		$j('#vac_title').append(newDiv);
	
		title.append('&nbsp;in&nbsp;');
		title.append(city);
	
		newDiv.prepend(title);
	}
}

function stripDetail(){
	if($j('.results #c_line').size() > 0){
		$j('#c_left .searchresultsblock').each(function(){
			var t = $j(this);
			var detail = $j('.detail', t).text().split(" ");
			
			$j('h2', t).append(' (' + detail[5] + ')');
		});
	}
}


function changeForm()
{
	$j('.surveycontainer .q_multipleresponse').each(
		function() 
		{
			var t = this;
			var newDiv = $j('<div class="checkboxes">');
			var spanText = $j('.question-text',t);
			var getTables = $j('table',t);
			var getSelect = $j('select',t);
			var breakIt  = $j('br',t);             
			var element = new Array;
			var type = new Array;
			var aantalChilds;
			if ((getTables.length+getSelect.length)==0)
			{
				breakIt.remove();
				aantalChilds = t.childNodes.length;
				for (var x = 0; x<aantalChilds;x++)
				{
					if (t.childNodes[x].tagName=='INPUT')
					{    
						element[x] = t.childNodes[x];
						type[x] = t.childNodes[x].tagName;
					}
					if (t.childNodes[x].tagName=="LABEL")
					{
						element[x] = t.childNodes[x];
						type[x] = t.childNodes[x].tagName;
					}
				}
				for (var x = 0; x<aantalChilds;x++)
				{
					if(element[x] =='object');                        
					{
						newDiv.append(element[x]);
					}
					if(type[x] == 'LABEL')
					{
						newDiv.append($j('<br>'));
					}
				}
				spanText.after(newDiv);
			}
		}
	);
}

function removeEmptyParagraph() 
{
    $j('.displayjob p').each( function() 
	{
        var t=this;
        if(t.innerHTML =="" || t.innerHTML=="&nbsp;") 
		{
            $j(t).css('display','none');
        }
    });
}

function addWrapper()
 {
    $j('#cr_banner .block-output, #c_banner .block-output').not($j('#contentright .linkblock, #contentright .block-output .block-output, #c_banner .block-output .block-output')).each(function() {
		var wrapper = $j('<div class="right_wrap"></div>');
		var t = $j(this);
		t.wrap(wrapper);
    });
}

function searchHover(){
	$j('.searchresultsblock li, .joblistblock li').mouseover(function(){
			$j(this).addClass('blockHover')
		})
		.mouseout(function(){
			$j(this).removeClass('blockHover')
		}
	);
}

function insertLabel(){
	var s = $j('#innersearch .CompanySector select option:eq(0), .CompanySector select option:eq(0)');
	s.text('Selecteer vakgebied');
	
	var t = $j('#innersearch .straal select option:eq(0), .distanceselect option:eq(0)');
	t.text('Selecteer afstand');
}

function linkBlock(){
	$j('#c_left').not($j('#c_left.fullwidth')).each(function()
	{
		var t = this;
		var agent = $j('.mailagentblock:eq(0) a', t);
		var detail = $j('.searchresultsblock .detail', t);
		detail.append(agent);
	});
}

function showBlocks() {
    if($j('.mm_wysiwyg_container').length>0) {
        $j('#navhelper').css('display','block');
    }
}

function onSubmit(){
	var test = $j('.searchblock .input-button');
	locfield = $j('.searchblock .textsearch input');

	locfield.onkeydown = function(e){
		var evn = (e) ? e : window.event;
		evn.cancelBubble=true;
		if((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)){
			test.click();
		}
	}
}

function OddEven(){
    $j('#bottom .ui-tabs-container, #provinces').not($j('.plain-text, .switchRight #provinces')).each(function() {
        var block = this;
        var counter = 0;
        $j('li',block).each(function() {
            var listItem = $j(this);
            counter++;
            if(counter%2==0) {
                listItem.addClass('odd');
            }
        });
    });
}

function OnKeyDown(){
	$j('.zipsearchblock input').keydown(function(event){
		
		var t = this;
	
		if(event.keyCode == 13){
			event.cancelBubble = true; 
			event.returnValue = false; 
			$j('.zipsearchblock .button-container input').click();
			return false;
		}
	});

	$j('.searchblock input').keydown(function(event){
		
		var t = this;
	
		if(event.keyCode == 13){
			event.cancelBubble = true; 
			event.returnValue = false; 
			$j('.searchblock .button-container input').click();
			return false;
		}
	});	 
}

function hideBlocks(){
    if($j('.mm_wysiwyg_container').length == 0) {
		$j('.switchRight #postal, .switchRight #provinces, #provinces, #postal, #left, #right, #bottom_werk, #c_facet').each(function() {
			var t=this;
			
			var aantal = $j('.block-output', t).length;
			if(aantal==0) {
				$j(t).hide();
			}
		});
	} 
}

function locationBlock(){
	if($j('#bottom .locationdetailsblock').size() > 0){
		$j('#bottom .locationdetailsblock').each(function(){
			var t = $j(this);
			
			var header = $j('h2', t);
			var info = $j('.info', t);
			
			info.before(header);
		});
	}
}

function changeArticleLink(){
	$j('.article #inner.big .articlelistblock ul li').each(function(){
		var t = $j(this);
		var header = $j('h3 a');
		var source = $j('.readmore a').attr('href');
		
		header.attr('href', source);
	});
}

function replaceHolder(){
	$j('.large .searchresultsblock').each(function(){
		if($j('.googlemapholder', this).size() > 0){
			$j('.googlemapholder').appendTo('#c_right');
		}
	});
}

function moveLocationDiv(){
	$j('.right_locationDetail').appendTo($j('.replaceRight_LocationDetail .inner')).show();
}

function fixGmapMarkers(){
	var i = document.getElementsByTagName('img');
	var j = i.length;
	while(j--){
		var el = i[j];
		if(el.src.indexOf('marker') > -1){
			el.parentNode.className = 'markerdiv';
			window.clearInterval(GmapFixTimer);
		}
	}
}

$j(function()
{
	stripDetail();
	replaceHolder()
	
	if($j('.googlemapholder').size() > 0){
		window.GmapFixTimer = setInterval(function(){
			fixGmapMarkers();
		}, 250);
	}
		
	changeArticleLink();
	makeButton();
	locationBlock();
	hideBlocks();
	OnKeyDown();
	showBlocks();
	linkBlock();
	addWrapper();
	searchHover();
	removeEmptyParagraph();
	moveButtoncontainer();
	changeForm();
	mouseOver();
	insertLabel();
	moveLocationDiv();
	placeLocation();
	
	$j('.jobsearhoption').not($j('#contentright .jobsearhoption, #provinces .jobsearhoption, #innersearch .jobsearhoption')).each(function()
	{
		var t = this;
		var label = $j('label:eq(0)', t);
		label.addClass('green');
	});
	
	$j("#innersearch label, #postal label, #cr_jobs label, #header label, #provinces label").not($j('.input-text[type="file"]')).inFieldLabels({fadeOpacity: 0.1});	
	$j('.surveycontainer div:eq(1)').addClass('firstDiv');
	$j('.jobnavigationblock h3:first').addClass('firsth3');
	$j('.searchresultsblock ul li:last').addClass('lc');
	$j('#contentright .jobboardmodule .dropdown:eq(1)').addClass('straal');
	$j('.inschrijfform .button-container input:eq(1), .aanvraagform .button-container input:eq(1), .surveycontainer .button-container input:eq(1)').addClass('submit');
	$j('.big .subpage .block-output:eq(0)').addClass('firstBlock');
	$j('.mailafriendblock .eventbutton:eq(0)').hide();
	
	$j('.ui-tabs-nav li.fc').each(function(){
		var t = $j(this);

        if(t.hasClass('ui-tabs-selected')){
			$j('.ui-tabs-nav li.fc').addClass('fcselected');
		}
	});
	
	$j('.ui-tabs-nav li.lc').each(function(){
		var t = $j(this);

        if(t.hasClass('ui-tabs-selected')){
			$j('.ui-tabs-nav li.lc').addClass('lcselected');
		}
	});
	
	$j('#jobsearch .linkblock:eq(1)').addClass('second');
	$j('.surveycontainer input[type="image"]').show();
	$j('.article #inner.big .articlelistblock ul li h3 a').attr('target', '_blank');
	
	if($j('.extra .mailagentblock:eq(1)').size() > 0){
		$j('.extra .mailagentblock:eq(1)').addClass('mailAgent')	
	}
	
	setJobCookie();

});
