var targetElementName;
var loading = 0;
var loadingAlrt = 'Ladevorgang nicht abgeschlossen. Bitte haben Sie ein wenig Geduld';
var loadingMsg  = "<h2>Bitte noch einen Moment Geduld</h2>";

function openBewerben(id) {
	loadUrl('Bewerben?id='+id,'Bewerben'+id,'get');
	cancelEmpfehlen(id);
}
function openEmpfehlen(id) {
	loadUrl('Empfehlen?id='+id,'Empfehlen'+id,'get');
	cancelBewerben(id);
}
function cancelBewerben(id) {
	url = 'div_Bewerben?inner=1&jobid='+id;
	loadUrl(url,'Bewerben'+id,'get');
}
function cancelEmpfehlen(id) {
	url = 'div_Empfehlen?noDiv=1&jobid='+id;
	loadUrl(url,'Empfehlen'+id,'get');
}

function loadUrl(url,target,method) {
	//if (loading) { alert(loadingAlrt); return false; } loading = 1;
	if (!method) { method='post' };
    //targetElementName = target;
    //$(targetElementName).innerHTML = loadingMsg;
    //var myAjax = new Ajax.Request(url, {method: method, onComplete:loadUrlResponse});
    $(target).innerHTML = loadingMsg;
    var myAjax = new Ajax.Request(url, {method: method, onComplete:function(response){ loadConcreteResponse(response, target) }});
}

function loadConcreteResponse(response, target) {
	//$(target).style.display = 'none';
	//new Effect.BlindDown(target, {duration:1.0, queue:'end'});
    $(target).innerHTML = response.responseText;
    window.scroll(0,500);
    //new Effect.ScrollTo(target); 
}
function loadUrlResponse(response) {
	$(targetElementName).style.display = 'none';
    $(targetElementName).innerHTML = response.responseText;
	new Effect.BlindDown(targetElementName, {duration:1.0, queue:'end'});
	targetElementName = ''; loading = 0;
}

function submitForm(jobid, target) {
	if (loading) { alert(loadingAlrt); return false; } loading = 1;
	f = $('form'+jobid);
	var serialized = Form.serialize(f);
    targetElementName = 'Bewerben'+jobid;
	$(targetElementName).className = 'divBewerben loading';
	$('submit'+jobid).firstChild.innerHTML = 'Laden...';
    var myAjax = new Ajax.Updater(targetElementName, '/doBewerben', {	method:'post', 
										postBody:serialized, 
										onComplete:submitFormResponse, 
										evalScripts:true });
}
function submitFormResponse() {
	$(targetElementName).className = 'divBewerben';
	targetElementName = ''; loading = 0;
}

function submitFormEmpfehlen(jobid) {
	if (loading) { alert(loadingAlrt); return false; } loading = 1;
	f = $('form_empf'+jobid);
	var serialized = Form.serialize(f);
    targetElementName = 'Empfehlen'+jobid;
	$(targetElementName).className = 'divBewerben divEmfehlen loading';
	$('submitEmpfehlen'+jobid).firstChild.innerHTML = 'Laden...';
    var myAjax = new Ajax.Updater(targetElementName, '/doEmpfehlen', {	method:'post', 
										postBody:serialized, 
										onComplete:submitFormEmpfehlenResponse, 
										evalScripts:true });
}

function submitFormEmpfehlenResponse() {
	$(targetElementName).className = 'divBewerben divEmpfehlen';
	targetElementName = ''; loading = 0;
}

function fadeSide(frm,side) {
  leftSide = ['username','password'];
  rightSide = ['name','prefix','telephone','email'];
  tags = ['input','select'];
  for (i=0;i<tags.length;i++) {
	elements = frm.getElementsByTagName(tags[i]);
	for (j=0;j<elements.length;j++) {
		if (side=='left') {
			for (k=0;k<leftSide.length;k++) {
				if (elements[j].name==leftSide[k]) {
					doGray(elements[j]);
					emptyInput(elements[j]);
				}
			}
			for (k=0;k<rightSide.length;k++) {
				if (elements[j].name==rightSide[k]) {
					unGray(elements[j]);
				}
			}
		} else if (side=='right') {
			for (k=0;k<rightSide.length;k++) {
				if (elements[j].name==rightSide[k]) {
					doGray(elements[j]);
					emptyInput(elements[j]);
				}
			}
			for (k=0;k<leftSide.length;k++) {
				if (elements[j].name==leftSide[k]) {
					unGray(elements[j]);
				}
			}
		}
	}
  }
}


function doGray(el) {
	el.className = el.className.replace('gray','');
	el.className = el.className + ' gray';
}

function unGray(el) {
	el.className = el.className.replace('gray','');
}

function emptyInput(el) {
	if (el.tagName == 'INPUT') {
		el.value = '';
	} else if (el.tagName == 'SELECT') {
		el.selectedIndex = 0;
	}
}
