var stopper;

function updateOplage()
{
	var papierprijs = '';
	var class_name = $('class_name').value;
	var class_id = $('id').value;

	var t = new Date();
	var papierprijs = field.value;
	new Ajax('/Ajax/updateOplage.php', {
			method: 'post',
			data : 'class_name='+class_name+"&class_id="+class_id+"&papierprijs="+papierprijs+"&t="+t.toString(),
			onSuccess : setTimeout('successOplage("'+class_name+'","'+class_id+'")', 750 ),
			onFailure : fail
			}).request();
}

function successOplage(class_name,class_id)
{
	var t = new Date();
	new Ajax('/Ajax/updateCart.php', {
				method: 'post',
				data: 'id='+class_id+'&class_name='+class_name+"&update=true&t="+t.toString(),
				update: $('keeper'),
				onFailure : fail
				}).request();
}

function checkDWpapier()
{
	if ($('DMFormat').value!='')
	{
		updateDWpapier();
	}
}

function updateDWpapier()
{
	var t = new Date();
	var formaatId = $('DMFormat').value;
	var class_name = $('class_name').value;
	var class_id = $('id').value;
	stopper = 'stop';
	new Ajax('/Ajax/updateDWpapier.php', {
			method: 'post',
			data: 'class_name='+class_name+"&class_id="+class_id+"&formaatId="+formaatId+"&t="+t.toString(),
			update: $('papierHolder'),
			onSuccess : updatePapierPrijs,
			onFailure : fail
			}).request();
}


function updatePapierPrijs()
{	
	if (stopper!='stop')
	{
		stopper='';
		return updateOplage();
	}
	if ($('DWPapier'))
	{
		var t = new Date();
		var formaatId = $('DMFormat').value;
		var papierId = $('DWPapier').value;
		var class_name = $('class_name').value;
		var class_id = $('id').value;
		
		var pp = document.forms['editor']['PapierPrijs'];
		if (pp)
		{
			var papierprijsId = '';
			for(i=0;i<pp.length;i++)
			{
				if (pp[i].checked)
				{
					papierprijsId = pp[i].value;
				}
			}
		} else {
			var papierprijsId = '';
		}
	
		new Ajax('/Ajax/updatePapierPrijs.php', {
				method: 'post',
				data: 'class_name='+class_name+"&class_id="+class_id+"&formaatId="+formaatId+"&papierId="+papierId+"&papierprijsId="+papierprijsId+"&t="+t.toString(),
				update: $('papierprijsHolder'),
				onFailure : fail
				}).request();
	}
	return false;
}

function updatePapierPrijsUitingen(field,class_name,class_id)
{
	var t = new Date();
	new Ajax('/Ajax/updatePapierPrijsUitingen.php', {
			method: 'post',
			data: 'class_name='+class_name+"&class_id="+class_id+"&papierprijsId="+field.value+"&t="+t.toString(),
			update: $('prijs_'+class_id),
			onFailure : fail,
			onSuccess : showCart
			}).request();
}

function showCart()
{
	var t = new Date();
	new Ajax('/Ajax/showCart.php', {
				method: 'post',
				data: "t="+t.toString(),
				update: $('keeper'),
				onFailure : fail
				}).request();

}

function removeFromCart(field,basketcase)
{
	var list = field.className;
	var ids = field.id.split("_");
	var bcase = basketcase.id;
	var myField = $("cart_"+ids[1]);
	if (myField!=null)
	{		
		updateCart(myField,bcase);
	} else {
		var t = new Date();
		new Ajax('/Ajax/updateCart.php', {
				method: 'post',
				data: 'id='+ids[1]+'&class_name='+list+"&t="+t.toString(),
				update: $(bcase),
				onFailure : fail
				}).request();
		if ($("cart_button") && $("id").value==ids[1])
		{
			$("cart_button").className = "forward in";
			$("cart_button").innerHTML = '<span><span>In mandje plaatsen</span></span>';
		}
	}
}

function addCart(field,basketcase,action)
{
	var list = field.className.split(" ");
	var t = new Date();
	class_id = $('id').value;
	class_name = $('class_name').value;
	
	if (action=='return')
	{
		// soms komt hier een onFailure. Ogenschijnlijk gaat e.e.a. wel goed. Nog eens oplossen.
		new Ajax('/Ajax/updateCart.php', {
				method: 'post',
				data: 'id='+class_id+'&class_name='+class_name+"&t="+t.toString(),
				onSuccess : setTimeout('successAddCart()', 750 )
				}).request();
	} else {
		if (list[1]=="in")
		{
			field.className = list[0] + " uit";
			field.innerHTML = '<span><span>Uit mandje verwijderen</span></span>';
		} else {
			field.className = list[0] + " in";
			field.innerHTML = '<span><span>In mandje plaatsen</span></span>';		
		}
		new Ajax('/Ajax/updateCart.php', {
				method: 'post',
				data: 'id='+class_id+'&class_name='+class_name+"&t="+t.toString(),
				update: $(basketcase),
				onFailure : fail
				}).request();
	}
}
function successAddCart()
{
	window.location.href = '/uitingen.php'
}
function failCart()
{
	alert("Winkelwagen bewaard.");
}

function updateCart(field,basketcase)
{
	var t = new Date();
	if (field)
	{
		var list = field.className.split(" ");
		var ids = field.id.split("_");
		var class_id = ids[1]; 
		class_name = list[0];
		boxID = 'box_'+class_id;
		new Ajax('/updateUiting.php', {
				method: 'post',
				data: 'id='+class_id+'&class_name='+class_name+"&t="+t.toString(),
				update: $(boxID),
				onFailure : fail
				}).request();
	}
	if ($('class_name') && $('id'))
	{
		class_id = $('id').value;
		class_name = $('class_name').value;
	}
	//alert(class_id+" :: "+class_name+" :: "+basketcase);
	new Ajax('/Ajax/updateCart.php', {
				method: 'post',
				data: 'id='+class_id+'&class_name='+class_name+"&t="+t.toString(),
				update: $(basketcase),
				onFailure : fail
				}).request();
}

function fail(resp)
{
	alert("fout: "+resp.responseText);
}

/** OPHALEN VAN GEDICHTRUBRIEKEN **/
function getGedichtRubrieken()
{
	new Ajax('/Ajax/gedichtRubrieken.php', {
							method: 'get',
							update: $('gedicht_rubriek'),
							onSuccess : successGedicht,
							onFailure : failGedicht
							}).request();
}
/*
function failTest()
{
	alert("failTest");
}
*/

function successGedicht(resp)
{
	// bijvoorbeeld laag tonen
}
function failGedicht(resp)
{
	alert("fout: "+resp.responseText);
}

/** OPHALEN VAN AANHEFRUBRIEKEN **/
function getAanhefRubrieken()
{
	new Ajax('/Ajax/aanhefRubrieken.php', {
							method: 'get',
							update: $('aanhef_rubriek'),
							onSuccess : successGedicht,
							onFailure : failGedicht
							}).request();
}

/** OPHALEN VAN INFOSLOTZINRUBRIEKEN **/
function getInfoSlotzinRubrieken()
{
	new Ajax('/Ajax/infoSlotzinRubrieken.php', {
							method: 'get',
							update: $('infoSlotzin_rubriek'),
							onSuccess : successGedicht,
							onFailure : failGedicht
							}).request();
}


/** OPHALEN VAN TEKSTEN UIT RUBRIEKEN **/
function getTeksten(id,field)
{
	var t = new Date();
	new Ajax('/Ajax/teksten.php', {
							method: 'get',
							data: 'id='+id+"&field="+field+"&t="+t.toString(),
							update: $(field+'_lijst'),
							onSuccess : successTekst,
							onFailure : failTekst
							}).request();
}
function successTekst(resp)
{
	// bijvoorbeeld laag tonen
}
function failTekst(resp)
{
	alert("fout: "+resp.responseText);
	//alert("Er is een fout opgetreden.");
}

function setTekst(o,field)
{	
	setEditorValue("cms_"+field, o.innerHTML);
}

function setEditorValue( instanceName, text )
{
    // Get the editor instance that we want to interact with.
    var oEditor = FCKeditorAPI.GetInstance( instanceName ) ;

    // Set the editor contents.
    oEditor.SetHTML( text );
}

/*** afbeeldingen ***/
function getImageLibrary(obj,lib,className,pag,holder,listId)
{
	//var old = document.getElementById("search_bar");
	//var me = document.getElementById("image_search");
	//me.appendChild(old);
	//alert(document.getElementsByTagName('input')[0].value);
	var query = "";
	var id_value = "";
	id_value = $("id").value;

	
	query += "&id=" + id_value;

	if (pag!='')
	{
		query += "&pag=" + pag;
	} else {
		query += "&pag=" + 0;
	
	}
	
	if(obj) query += "&cat=" + obj.parentNode.parentNode.getElementsByTagName('select')[0].value;
	
	new Ajax('/Ajax/'+lib+'.php', {
							method: 'get',
							data: "className="+className+"&list="+holder+"&listId="+listId+"&library="+lib+query,
							update: $(holder),
							onSuccess : function() {
								if (holder=='pictlistHolder') {
									initPict(maxPict);
								} else if (holder=='bglistHolder') {
									initBack(maxBg);
								} else if (holder=='facadelistHolder') {
									initFacade();
								} else if (holder=='fontlistHolder') {
									initFont();
								}
							}
							
						}).request();	
}

function successImageLibrary()
{
	return true;
}

function removeUpload(uploadId,class_name,listId)
{
	if (confirm("Weet u zeker dat u deze afbeelding wilt verwijderen?")) {
		var t = new Date();
		var uiting_class = $('class_name').value;
		new Ajax('/Ajax/removeUpload.php', {
							method: 'get',
							data: 'id='+uploadId+"&class_name="+class_name+"&t="+t.toString(),
							update: $(listId),
							onSuccess : function() {
								if (listId=='pictlist') {
									//alert('@Guus Lijst afbeelding moet worden ververst');
									getImageLibrary(false,'searchImageLibrary',$('class_name').value,'','pictlistHolder',listId);
								} else if (listId=='bglist') {
									//alert('@Guus Lijst achtergronden moet worden ververst');
									getImageLibrary(false,'searchBackgroundLibrary',$('class_name').value,'','bglistHolder',listId);
								}
							}
							}).request();

    }
	return false;
}


function str_replace (search, replace, subject)
{
	var result = '';
	var oldi = 0;
	for (i = subject.indexOf (search); i > -1; i = subject.indexOf (search, i))
	{
		result += subject.substring (oldi, i);
		result += replace;
		i += search.length;
		oldi = i;
	}
	return result + subject.substring (oldi, subject.length);
}
/** WIJZIGEN VAN DE ACTIEVE TR **/
/** id = id van het item in de tr **/
/** input_id = id van de hidden input waar de gekozen waarde aan toegekend moet worden **/
/** deze functie vereist de js functie str_replace **/
function hiSwitcher(id,input_id)
{
	var old_id = document.getElementById('voorbeeld_id').value;
	if (old_id!='')
	{
		old_id = 'id_'+old_id;
		if (document.getElementById(old_id)!=null) // testen of het huidige element wel zichtbaar is.
		{
			old_cname = str_replace(' hi', '', document.getElementById(old_id).className);
			document.getElementById(old_id).className=old_cname;
		}
	}
	document.getElementById('id_'+id).className+=' hi';
	document.getElementById(input_id).value=id;
}

/*** make preview voor alle soorten drukwerk ***/
function makePreview(classname,id,render,page)
{
	var previewClass = classname;
	var previewId = id;
	page = (page==null) ? 0 : page;
	
	if ($('preview')) {
		// veranderen van de previewLink voor multipage uitingen
		var x = $('preview').parentNode.getElementsByTagName('a');
		for(var i=0; i<x.length;i++)
		{
			if (x[i].getAttribute('class')=='build')
			{			
				x[i].setAttribute('onClick',"makePreview('"+previewClass+"','"+previewId+"','1','"+page+"');return false;");
			}
		}

		var data = '';
		// opslaan van de gegevens uit het formulier
		if (render==1)
		{
			var theForm = document.getElementsByTagName('form')[1];
			var theInputs = document.getElementsByTagName('input');
			
			for(i=0;i<theInputs.length;i++)
			{
				if (theInputs[i].name.indexOf('CustomConfigurationsPath')==-1 && theInputs[i].name!='') {
					if (theInputs[i].type == 'radio') {
						if (theInputs[i].checked) data += "&"+theInputs[i].name+"="+theInputs[i].value;
					} else if (theInputs[i].name.indexOf('cms_')!=-1) {
						str = theInputs[i].name.replace('cms_','');
						data += "&"+str+"="+escape(FCKeditorAPI.GetInstance(theInputs[i].name).EditorWindow.parent.FCK.GetHTML());
					} else {
						data += "&"+theInputs[i].name+"="+ theInputs[i].value;
					}
				}
			}
			
			
			var theInputs = document.getElementsByTagName('textarea');
			for(i=0;i<theInputs.length;i++)
			{
				if (theInputs[i].name.indexOf('CustomConfigurationsPath')==-1 && theInputs[i].name!='') {
					if (theInputs[i].name.indexOf('cms_')!=-1) {
						str = theInputs[i].name.replace('cms_','');
						data += "&"+str+"="+escape(FCKeditorAPI.GetInstance(theInputs[i].id).EditorWindow.parent.FCK.GetHTML());
					} else {
						data += "&"+theInputs[i].name+"="+ theInputs[i].value;
					}
				}
			}
			
			var theInputs = document.getElementsByTagName('select');
			for(i=0;i<theInputs.length;i++)
			{
				//alert(theInputs[i].type);
				if (theInputs[i].type == 'select-one') {
					data += "&"+theInputs[i].name+"="+theInputs[i][theInputs[i].selectedIndex].value;
				}
			}
			$('preview').innerHTML = "<div style='width:220px;height:134px;background-color:#fff;padding:70px 0 0 0;text-align:center;float:left;margin:0 0 6px 0;'><img src='/media/loader.gif' width='32' height='32' class='loader' alt='even geduld aub' align='center' /></div>"; // eventueel zandloper toevoegen o.i.d.
		
		}
		
		var t = new Date();
				
		new Ajax('/Ajax/makePreview.php', {
								method: 'post',
								data: 'classname='+classname+"&id="+id+"&render="+render+"&page="+page+"&t="+t.getTime()+data,
								update: $('preview'),
								onSuccess : updateDetails
								}).request();
	}
	
}

function updateDetails()
{
			var previewClass = $("class_name").value;
			var previewId = $("id").value;
			var t = new Date();
			new Ajax('/Ajax/updateDetails.php', {
						method: 'post',
						data: 'classname='+previewClass+"&id="+previewId+"&t="+t.getTime(),
						update: $('previewDetails')//,
						//onSuccess : successPreview
						}).request();

}

function successPreview()
{
	alert(resp);
}
/*** make preview voor alle soorten drukwerk ***/
function downloadPreview(classname,id)
{
	var t = new Date();
	new Ajax('/Ajax/downloadPreview.php', {
							method: 'get',
							data: 'classname='+classname+"&id="+id+"&t="+t.getTime(),
							update: $('preview'),
							onSuccess : successDownload,
							onError : errorDownload
							}).request();	
}
function successDownload(resp)
{
	alert('Downloaden is klaar.');
}
function errorDownload(resp)
{
	alert(resp.responseText);
}




function getRegion(who) {
	// alert("who"+who);
	var t = new Date();
	$("magazineLoader").style.display = 'block';
	$("papers").style.display 		= 'none';
	new Ajax('/Ajax/getDagbladen.php', {
		method: 'post',
		data: 	'region='+who+"&t="+t.getTime(),
		onSuccess : successPapers,
		onFailure : failPapers
	}).request();
	// alert("get "+who);
}

function successPapers(resp) {
	$("magazineLoader").style.display = 'none';
	$("papers").style.display 		= 'block';
	$("paperSearch").style.display 	= 'block';
	// alert(resp);
	var arr = resp.split("#!#");
	if($("landelijk_count")) $("landelijk_count").innerHTML	= arr[0];
	if($("landelijk")) $("landelijk").innerHTML 			= arr[1];
	if($("regionaal_count")) $("regionaal_count").innerHTML	= arr[2];
	if($("regionaal")) $("regionaal").innerHTML 			= arr[3];
	if($("weekblad_count")) $("weekblad_count").innerHTML	= arr[4];
	if($("weekblad")) $("weekblad").innerHTML 				= arr[5];
	initPapers();
}
function failPapers(resp) {
	alert(resp);
	$("magazineLoader").style.display = 'none';
	$("paperSearch").style.display 	= 'block';
	$("papers").style.display 		= 'block';
	var arr = resp.split("#!#");
	if($("landelijk_count")) $("landelijk_count").innerHTML	= arr[0];
	if($("landelijk")) $("landelijk").innerHTML 			= arr[1];
	if($("regionaal_count")) $("regionaal_count").innerHTML	= arr[2];
	if($("regionaal")) $("regionaal").innerHTML 			= arr[3];
	if($("weekblad_count")) $("weekblad_count").innerHTML	= arr[4];
	if($("weekblad")) $("weekblad").innerHTML 				= arr[5];
	// alert("Geen dagbladen gevonden in deze regio.");
}

