// this function shows errors in a box with id error_element
function displayErrorsInBox(error_message,error_element) {
	$(error_element).innerHTML = error_message;
	$(error_element).setStyle({paddingTop:'15px'});
}

// this function updates the main body
function display_menu_click(retval) {
	// update the main body
	var newdiv = document.createElement("div");
	newdiv.innerHTML = retval.responseText;

	var container = document.getElementById("main_body");
	container.innerHTML="";
	container.appendChild(newdiv);

}

function clear_logged_in(val) {
	$('header_logged_in').innerHTML = val.responseText;

	return true;
}

// function to enable logout-div in header
function enable_script_login () {

	var ob = document.getElementById("header_logged_in").getElementsByTagName("script");
		for(var i=0; i<ob.length; i++){
			if ((ob[i].text!=null)) eval(ob[i].text);
		}
}

function enable_scripts_on_page() {
	var ob = $('main_body').getElementsByTagName('script');
	for(var i=0; i<ob.length; i++){
		if ((ob[i].text!=null)) {
			eval(ob[i].text);
		}
	}
}	
	
// function to show the login-box as a lightbox
function show_login() {
	if ($('login_general').hasClassName('login_general_hidden')==true) { 
		$('login_general').removeClassName('login_general_hidden');
		$('login_general').toggleClassName('login_general'); 
	} else {
		$('login_general').removeClassName('login_general');
		$('login_general').toggleClassName('login_general_hidden'); 
	}
}
	
function onBlurChange(val1,val2) {
	if ($(val1).value == '') { 
		$(val1).value=val2;
		$(val1).setStyle({'color':'#a0a0a0'});
	}
}
function onClickChange(val1,val2) {
	if ($(val1).value == val2) { 
		$(val1).value=''; 
		$(val1).setStyle({'color':'#000000'});
	}
}
function onFocusChange(val1,val2) {
	if ($(val1).value == val2) { 
		$(val1).value=''; 
		$(val1).setStyle({'color':'#000000'});
	}
}
function onClickChangeColor(val1) {
	if($(val1).value=='') {
		$(val1).setStyle({'color':'#a0a0a0'});
	} else {
		$(val1).setStyle({'color':'#000000'});
	}
}

function toggleVisibility(elementIdToChange,base_class_name) {

	if ($(elementIdToChange).hasClassName(base_class_name)) {
		changeClassOfElementById(elementIdToChange,base_class_name+'_hidden',base_class_name);
	} else {
		changeClassOfElementById(elementIdToChange,base_class_name,base_class_name+'_hidden')
	}
}

function changeClassOfElementById(elementId, requiredClassName, removeClassName) {
	$(elementId).removeClassName(removeClassName);
	$(elementId).toggleClassName(requiredClassName);
}	

// position a page-wide div to disable all links.
// remove it again after all ajax-calls have completed
function DisableEnableLinks(xHow){
//	if(xHow) {
//    	var blurDiv = document.createElement("div");
//    	blurDiv.id = "blurDiv";
//   		blurDiv.style.cssText = "position:absolute; top:0; right:0; width:" + screen.width + "px; height:" + screen.height + "px; background-color: #000000; opacity:0; filter:alpha(opacity=0)";
//    	document.getElementsByTagName("body")[0].appendChild(blurDiv);
//    } else {
//    	var blurDiv = document.getElementById("blurDiv");
//    	blurDiv.parentNode.removeChild(blurDiv);
//    }
	if ($('login_general').hasClassName('login_general')==true) { 
		$('login_general').removeClassName('login_general');
		$('login_general').toggleClassName('login_general_hidden'); 
	}
}

function DisableEnableLinks2(xHow){
	if(xHow) {
    	var blurDiv = document.createElement("div");
    	blurDiv.id = "blurDiv";
   		blurDiv.style.cssText = "position:absolute; top:0; right:0; width:" + screen.width + "px; height:" + screen.height + "px; background-color: #000000; opacity:0; filter:alpha(opacity=0)";
    	document.getElementsByTagName("body")[0].appendChild(blurDiv);
    } else {
    	var blurDiv = document.getElementById("blurDiv");
    	blurDiv.parentNode.removeChild(blurDiv);
    }
}



function toggle_advanced() {
	if ($('search_header_advanced_drop').hasClassName('search_header_advanced_drop_inv') == true ) {
		$('search_header_advanced_drop').removeClassName('search_header_advanced_drop_inv');
		$('search_header_advanced_drop').toggleClassName('search_header_advanced_drop_vis');
		$('advanced_button_drop').src="/img/img_js/advanced_search_up_btn.png";
	} else {
		$('search_header_advanced_drop').removeClassName('search_header_advanced_drop_vis');
		$('search_header_advanced_drop').toggleClassName('search_header_advanced_drop_inv');
		$('advanced_button_drop').src="/img/img_js/advanced_search_btn.png";
	}
}

function do_search(val1,val2) {
	page= $('jumper_select').value;
	query = val1 + '&page=' + page;
	url= val2 + '?q=' + query
	new Ajax.Request(
		url,
		{	method: 'get',
			onSuccess: function(response) {
				// update the page
				display_menu_click(response);
				enable_scripts_on_page();
			}
		}
	);
}

function display_menu_json(val1,val2) {
	// val1 holds json
	// val2 holds requestpage if success

	var errors;
	var d = val1.responseText;
	
	d=d.evalJSON();
	if (d.success=='false') {
		$('errors_box').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		new Ajax.Request(
			val2,
			{	method: 'get',
				onSuccess: function(response) {
					display_menu_click(response.responseText);
				}
			}
		);
	}
}

function startUpload(){
      //DisableEnableLinks2(true);
      return true;
}
function endUpload(){
      //DisableEnableLinks2(false);
      return true;
}
function endUpload2(val){
    //DisableEnableLinks2(false);
    var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box_update').innerHTML = String(d.errors).split(',').join('<br>');
	} else {
		window.location = '/register/thankyou';
	}
	     return true;
}
function endUpload3(val1,val2){
    //DisableEnableLinks2(false);
    var errors;
	var d = String(val1);
	d=d.evalJSON();

	if (d.success=='false') {
		$(val2).innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		$(val2).innerHTML = 'Update was successfull';
	}
	window.location='/myprofile/welcome';
}
function endUpload4(val){

    var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		new Ajax.Request(
			'/myprofile/forgotpwd_response',
			{	method: 'get',
				onSuccess: function(response) {
					display_menu_click(response);
				}
			}
		);
	}
	     return true;
}
function endUpload5(val1,val2){

    //DisableEnableLinks2(false);

    var errors;
	var d = String(val1);
	d=d.evalJSON();

	if (d.success=='false') {
		$(val2).innerHTML = String(d.errors).split(',').join('<br>');
	} else {
		$(val2).innerHTML = 'Update was successfull';
	}
	window.location='/myprofile/welcome';
}

function endUpload6(val1,val2){

    //DisableEnableLinks2(false);

    var errors;
	var d = String(val1);
	d=d.evalJSON();

	if (d.success=='false') {
		$(val2).innerHTML = String(d.errors).split(',').join('<br>');
	} else {
		$(val2).innerHTML = 'Update was successfull';
	}
	window.location='/myprofile/editprofile';
}

function changePassword(val) {
	var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		new Ajax.Request(
			'/myprofile/changepwd_response',
			{	method: 'get',
				onSuccess: function(response) {
					display_menu_click(response);
				}
			}
		);
	}
	return true;
}

function changePassword2(val) {
	var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		window.location = '/myprofile/changepwd_response';

	}
	return true;
}

function login_error(val) {
	var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		window.location = '/myprofile/welcome';
	}
	return true;
}
function login_error2(val) {
	var errors;
	var d = String(val);

	d=d.evalJSON();

	if (d.success=='false') {
		$('errors_box2').innerHTML = String(d.errors).split(',').join('<br>');
		
	} else {
		window.location = '/myprofile/welcome';
	}
	return true;
}
function changeResults(val1,val2) {
window.location='/search/results?' +val1 + '&page=' + val2;
}
function togglehelpbox(val) {
	if ($('help_'+val).hasClassName('help_box_inv_'+val) == true ) {
		$('help_'+val).removeClassName('help_box_inv_'+val);
		$('help_'+val).toggleClassName('help_box_'+val);
	} else {
		$('help_'+val).removeClassName('help_box_'+val);
		$('help_'+val).toggleClassName('help_box_inv_'+val);
	}
}

function toggle_checkbox_by_id( element_id ) {
    if($( element_id ).checked) {
        $( element_id ).checked = false;
        $( element_id ).value = 'off';
        $( element_id + '_img' ).src="/img/img_js/checkbox.png";

    } else {
        $( element_id ).value = 'on';
        $( element_id ).checked = true;
        $( element_id + '_img' ).src="/img/img_js/checkbox_checkt.png";
    }
}

function toggle_checkbox(val1) {
	inputs = document.getElementsByTagName('input');
	if(inputs[val1].checked) {
		inputs[val1].checked = '';
		$(val1+'_img').src="/img/img_js/checkbox.png";
		
	} else {
		$(val1+'_img').src="/img/img_js/checkbox_checkt.png";
		inputs[val1].checked = 'checked';
	}
}
function toggle_checkboxUsecv(val1,val2,val3) {
	// val1 is 'useCV'
	// val2 is 0,1 (IncludeJobsites off or on in profile)
	// val3 is 0,1 (IncludeRecruiters off or on in profile)

	inputs = document.getElementsByTagName('input');
	if(inputs[val1].checked) {
		restore_checkbox('IncludeJobsites');
		restore_checkbox('IncludeRecruiters');
		inputs[val1].checked = '';
		$(val1+'_img').src="/img/img_js/checkbox.png";
	} else {
		remember_checkbox('IncludeJobsites');
		remember_checkbox('IncludeRecruiters');
		if(val2==1) {
			turnon_checkbox('IncludeJobsites');
		} else {
			turnoff_checkbox('IncludeJobsites');
		}
		if(val3==1) {
			turnon_checkbox('IncludeRecruiters');
		} else {
			turnoff_checkbox('IncludeRecruiters');
		}
		$(val1+'_img').src="/img/img_js/checkbox_checkt.png";
		inputs[val1].checked = 'checked';
	}
}

function remember_checkbox(val1) {
	inputs = document.getElementsByTagName('input');

	if(inputs[val1].checked) {
		inputs[val1+'Remember'].value = 'on';
	} else {
		inputs[val1+'Remember'].value = 'off';
	}
}
function restore_checkbox(val1) {
	inputs = document.getElementsByTagName('input');
	if(inputs[val1+'Remember'].value=="on") {
		inputs[val1].checked = 'checked';
		$(val1+'_img').src="/img/img_js/checkbox_checkt.png";
	} else {
		inputs[val1].checked = '';
		$(val1+'_img').src="/img/img_js/checkbox.png";
	}
}
function turnon_checkbox(val1) {
	inputs = document.getElementsByTagName('input');
	$(val1+'_img').src="/img/img_js/checkbox_checkt.png";
	inputs[val1].checked = 'checked';
}
function turnoff_checkbox(val1) {
	inputs = document.getElementsByTagName('input');
	inputs[val1].checked = '';
	$(val1+'_img').src="/img/img_js/checkbox.png";
}












