/* -- Dutch Image JavaScript Library */



/*--------------------------------------------------------------------------------
methode om alle boxes in te schakelen (tonen)
--------------------------------------------------------------------------------*/
function DIshowBoxes(step, objID) {
	
	//vanuit welke stap gezien
	switch (step) {
		
		case '0':
		box = document.getElementById('OBJ' + objID + 'S0');
		box.style.display = '';
		box.selectedIndex = 0;
		break
		
		
		case '1':
		box = document.getElementById('OBJ' + objID + 'S1');
		box.style.display = '';
		break
	}
}


/*--------------------------------------------------------------------------------
methode om alle boxes te resetten (verbergen)
--------------------------------------------------------------------------------*/
function DIhideBoxes(step, objID) {
	
	//vanuit welke stap gezien
	switch (step) {
		
		/*--------------------------------------------------------------------------------
		specific usage all
		--------------------------------------------------------------------------------*/
		case 'all':
		DIhideBoxes('1', objID);
		DIhideBoxes('1b', objID);
		DIhideBoxes('2', objID);
		DIhideBoxes('2b', objID);
		DIhideBoxes('3', objID);
		DIhideBoxes('3b', objID);
		DIhideBoxes('4', objID);
		DIhideBoxes('4b', objID);
		DIhideBoxes('5', objID);
		DIshowBoxes('0', objID);
		break
		
		
		/*--------------------------------------------------------------------------------
		specific usage 0
		--------------------------------------------------------------------------------*/
		case '0':
		box = document.getElementById('OBJ' + objID + 'S0');
		box.style.display = 'none';
		break
		
		
		/*--------------------------------------------------------------------------------
		specific usage 1
		--------------------------------------------------------------------------------*/
		case '1':
		box = document.getElementById('OBJ' + objID + 'S1');
		box.style.display = 'none';
		break
		
		
		/*--------------------------------------------------------------------------------
		specific usage 1b
		--------------------------------------------------------------------------------*/
		case '1b':
		var boxArray = new Array('S1b_other');
		
		//elke box van stap 1b apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box1b = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box waarde resetten
			//document.getElementById('VAR' + objID + boxArray[openbox]).selectedIndex = 0;
			
			//box object verbergen
			box1b.style.display = 'none';
		}
		break
		
		
		/*--------------------------------------------------------------------------------
		specific usage 2
		--------------------------------------------------------------------------------*/
		case '2':
		var boxArray = new Array('S2_magaz','S2_smagaz','S2_newsp','S2_mark','S2_posale','S2_calend','S2_postc','S2_books','S2_web');
		
		//elke box van stap 2 apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box2 = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box waarde resetten
			//document.getElementById('VAR' + objID + boxArray[openbox]).selectedIndex = 0;
			
			//box object verbergen
			box2.style.display = 'none';
		}
		break
		
		
		/*--------------------------------------------------------------------------------
		specific usage 2b
		--------------------------------------------------------------------------------*/
		case '2b':
		var boxArray = new Array('S2b_folders','S2b_brochures','S2b_catalogues','S2b_reports','S2b_posale');
		
		//elke box van stap 2b apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box2b = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box waarde resetten
			//document.getElementById('VAR' + objID + boxArray[openbox]).selectedIndex = 0;
			
			//box object verbergen
			box2b.style.display = 'none';
		}
		break
		
		
		/*--------------------------------------------------------------------------------
		dimensions 3
		--------------------------------------------------------------------------------*/
		case '3':
		var boxArray = new Array('S3_print','S3_posale','S3_outdoor','S3_postc','S3_web');
		
		//elke box van stap 3 apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box3 = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box waarde resetten
			//document.getElementById('VAR' + objID + boxArray[openbox]).selectedIndex = 0;
			
			//box object verbergen
			box3.style.display = 'none';
		}
		
		break
		
		
		/*--------------------------------------------------------------------------------
		dimensions 3b
		--------------------------------------------------------------------------------*/
		case '3b':
		var boxArray = new Array('S3b_posale','S3b_outdoor');
		
		//elke box van stap 3b apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box3b = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box object verbergen
			box3b.style.display = 'none';
		}
		
		break
		
		
		/*--------------------------------------------------------------------------------
		quantity 4
		--------------------------------------------------------------------------------*/
		case '4':
		var boxArray = new Array('S4_other','S4_magaz','S4_newsp','S4_mark','S4_posale','S4_outdoor','S4_books','S4_calend','S4_postc','S4_web');
		
		//elke box van stap 4 apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box4 = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box waarde resetten
			//document.getElementById('VAR' + objID + boxArray[openbox]).selectedIndex = 0;
			
			//box object verbergen
			box4.style.display = 'none';
		}
		
		break
		
		
		/*--------------------------------------------------------------------------------
		quantity (more than ..) 4b
		--------------------------------------------------------------------------------*/
		case '4b':
		var varArray = new Array('S4b_more');
		
		//elke var van stap 4b apart verbergen
		for (openvar in varArray) {
			//var object selecteren
			var4b = document.getElementById('OBJ' + objID + varArray[openvar]);
			
			//var waarde resetten
			//document.getElementById('VAR' + objID + varArray[openvar]).value = '';
			
			//var object verbergen
			var4b.style.display = 'none';
		}
		
		break
		
		
		/*--------------------------------------------------------------------------------
		exclusivity 5
		--------------------------------------------------------------------------------*/
		case '5':
		
		var boxArray = new Array('S5_segmA','S5_segmB','S5_segmC','S5_segmD','S5_segmE');
		
		//elke box van stap 5 apart verbergen
		for (openbox in boxArray) {
			//box object selecteren
			box5 = document.getElementById('OBJ' + objID + boxArray[openbox]);
			
			//box object verbergen
			box5.style.display = 'none';
		}
		
		break
	}
}


/*--------------------------------------------------------------------------------
methode om van image usage te wisselen
--------------------------------------------------------------------------------*/
function DIsetSpecialUse(objBox,objID,step) {
	
	switch (step) {
		
		case 'use all images':
		DIresetUsage(objID);
		break
		
		
		default:
		objBox.selectedIndex = 1;
		objBox.className = 'oth';
		document.getElementById('PRC'+objID).className = 'price_blue';
		DIsetUsage('VAR' + objID + 'S1',objID,'0b');
	}
}


/*--------------------------------------------------------------------------------
methode om de prijs samen te stellen
--------------------------------------------------------------------------------*/
function DIsetUsage(objBox,objID,step) {
	
	//vanuit welke stap gezien
	switch (step) {
		
		case '0':
		document.getElementById('VAR' + objID + 'S1').selectedIndex = 0;
		
		break
		
		
		case '0b':
		document.getElementById('VAR' + objID + 'S1').selectedIndex = 2;
		DIhideBoxes('0', objID);
		DIshowBoxes('1', objID);
		
		//ga verder
		DIsetUsage(document.getElementById('VAR' + objID + 'S1'),objID,'1');
		
		break
		
		
		case '1':
		
		//de waarde van stap 1 ophalen
		var step1 = objBox.options[objBox.selectedIndex].value;
		
		//andere boxes (weer) verbergen
		DIhideBoxes('1b', objID);
		DIhideBoxes('2', objID);
		DIhideBoxes('2b', objID);
		DIhideBoxes('3', objID);
		DIhideBoxes('3b', objID);
		DIhideBoxes('4', objID);
		DIhideBoxes('4b', objID);
		DIhideBoxes('5', objID);
		
		
		//volgende stap tonen wanneer dat wordt gevraagd
		if (step1 != '') {
			
			//specific usage tonen
			if (step1 != 'outdoor' && step1 != 'other') {
				//volgende selecteren
				document.getElementById('OBJ' + objID + 'S2_' + step1).style.display = '';
				
			} else if (step1 == 'other') {
				//extra input veld tonen voor 'Other'
				document.getElementById('OBJ' + objID + 'S1b_other').style.display = '';
			}
			
			//dimensions keuze tonen
			if (step1 != 'web' && step1 != 'mark' && step1 != 'posale' && step1 != 'outdoor' && step1 != 'postc') {
				//op basis van print gebruik
				document.getElementById('OBJ' + objID + 'S3_print').style.display = '';
				
			} else if (step1 == 'posale') {
				//point of sale
				document.getElementById('OBJ' + objID + 'S3_posale').style.display = '';
			
			} else if (step1 == 'outdoor') {
				//outdoor advertisement
				document.getElementById('OBJ' + objID + 'S3_outdoor').style.display = '';
			
			} else if (step1 == 'postc') {
				//postcards
				document.getElementById('OBJ' + objID + 'S3_postc').style.display = '';
				
			} else if (step1 == 'web') {
				//op basis van web gebruik
				document.getElementById('OBJ' + objID + 'S3_web').style.display = '';
			}
			
			
			//quantity keuze tonen
			if (step1 != 'mark' && step1 != 'smagaz') {
				//op basis van print gebruik
				document.getElementById('OBJ' + objID + 'S4_' + step1).style.display = '';
				
			} else if (step1 == 'smagaz') {
				//op basis van web gebruik
				document.getElementById('OBJ' + objID + 'S4_magaz').style.display = '';
			}
			
			//gebruik van binnen branche keuze tonen
			if (step1 != 'mark') {
				
				//extra opties tonen
				document.getElementById('OBJ' + objID + 'S5_segmA').style.display = '';
				document.getElementById('OBJ' + objID + 'S5_segmB').style.display = '';
				document.getElementById('OBJ' + objID + 'S5_segmC').style.display = '';
				document.getElementById('OBJ' + objID + 'S5_segmD').style.display = '';
				document.getElementById('OBJ' + objID + 'S5_segmE').style.display = '';
			}
			
			//'exclusief' vinkje resetten
			objBox = document.getElementById('EXCL' + objID);
			objBox.checked = false;
			
			//info prompts wijzigen
			DIchangePrompt(step1,objID);
			
		}
		break
		
		
		case '2':
		
		//de waarde van stap 2 ophalen
		var step2 = objBox.options[objBox.selectedIndex].value;
		
		//andere boxes (weer) verbergen
		DIhideBoxes('2b', objID);
		DIhideBoxes('3', objID);
		DIhideBoxes('3b', objID);
		DIhideBoxes('4', objID);
		DIhideBoxes('4b', objID);
		DIhideBoxes('5', objID);
		
		
		//volgende stap tonen wanneer dat wordt gevraagd
		if (step2 != '') {
			
			//specific usage tonen
			if (step2 != 'pack' && step2 != 'advert' && step2 != 'pmatter') {
				//volgende selecteren
				document.getElementById('OBJ' + objID + 'S2b_' + step2).style.display = '';
			}
			
			//dimensions keuze tonen
			document.getElementById('OBJ' + objID + 'S3_print').style.display = '';
			
			//quantity keuze tonen
			document.getElementById('OBJ' + objID + 'S4_mark').style.display = '';
			
			//gebruik van binnen branche keuze tonen
			document.getElementById('OBJ' + objID + 'S5_segmA').style.display = '';
			document.getElementById('OBJ' + objID + 'S5_segmB').style.display = '';
			document.getElementById('OBJ' + objID + 'S5_segmC').style.display = '';
			document.getElementById('OBJ' + objID + 'S5_segmD').style.display = '';
			document.getElementById('OBJ' + objID + 'S5_segmE').style.display = '';
			
			//'exclusief' vinkje resetten
			objBox = document.getElementById('EXCL' + objID);
			objBox.checked = false;
		}
		break
	}
	
	
	//prijs samenstellen
	DIgetPrice(objID);
}


/*--------------------------------------------------------------------------------
methode om de image usage (van alle afbeeldingen) te resetten
--------------------------------------------------------------------------------*/
function DIresetUsageAll(numBoxes) {
	
	//
	var numBoxes = document.getElementById('NumImgs').value;
	
	for (i=0; i < numBoxes; i++) {
		//object id defineren
		objID = i + 1;
		
		DIresetUsage(objID);
	}
	
	//dialog box
	jQuery.facebox("Image usage has been set to use the 'all images' option per image.");
}


/*--------------------------------------------------------------------------------
methode om de image usage te resetten
--------------------------------------------------------------------------------*/
function DIresetUsage(objID) {
	
	//box resetten
	objBox = document.getElementById('VAR' + objID + 'S0');
	objBox.selectedIndex = 0;
	
	//en kleur blauw verwijderen
	objBox.className = '';
	document.getElementById('PRC'+objID).className = 'price';
	
	
	//andere boxes (weer) verbergen
	DIhideBoxes('2', objID);
	DIhideBoxes('2b', objID);
	DIhideBoxes('3', objID);
	DIhideBoxes('3b', objID);
	DIhideBoxes('4', objID);
	DIhideBoxes('4b', objID);
	DIhideBoxes('5', objID);
	
	//'exclusief' vinkje resetten
	objBox = document.getElementById('EXCL' + objID);
	objBox.checked = false;
	
	
	//kwaliteitslabel ophalen voor het bepalen van de prijs
	QLTY = document.getElementById('qltymark' + objID).value;
	
	//prijs verwerking adhv het kwaliteitslabel
	document.getElementById('PRC' + objID).value = calcPrice(document.getElementById('PRC0').value, QLTY);
}



/*--------------------------------------------------------------------------------
methode om extra velden te tonen
--------------------------------------------------------------------------------*/
function DImore(objID,step) {
	
	
	//extra boxes tonen of verbergen
	switch (step) {
	
	
	/*--------------------------------------------------------------------------------
	Point Of Sale
	--------------------------------------------------------------------------------*/
	case 'posale':
		
		//kijken of 'duration' de laatse waarde is (more than ...)
		duration = document.getElementById('VAR' + objID + 'S2_' + step);
		q_index  = duration.selectedIndex + 1;
		q_length = duration.options.length;
		
		//more than input tonen?
		if (q_index == q_length) {
			document.getElementById('OBJ' + objID + 'S2b_posale').style.display = '';
			
		
		//more than input verbergen?	
		} else {
			DIhideBoxes('2b', objID);
		}
		
		
		//kijken of 'dimensions' de laatse waarde is (larger than ...)
		dimensions = document.getElementById('VAR' + objID + 'S3_' + step);
		q_value    = dimensions.options[dimensions.selectedIndex].value;
		
		//larger than input tonen?
		if (q_value == 'larger') {
			document.getElementById('OBJ' + objID + 'S3b_posale').style.display = '';
		
		//larger than input verbergen?	
		} else {
			DIhideBoxes('3b', objID);
		}
		break
		
		
	/*--------------------------------------------------------------------------------
	Outdoor advertising
	--------------------------------------------------------------------------------*/
	case 'outdoor':
		
		//kijken of 'dimensions' de laatse waarde is (larger than ...)
		dimensions = document.getElementById('VAR' + objID + 'S3_' + step);
		q_value    = dimensions.options[dimensions.selectedIndex].value;
		
		//larger than input tonen?
		if (q_value == 'larger') {
			document.getElementById('OBJ' + objID + 'S3b_outdoor').style.display = '';
		
		//larger than input verbergen?	
		} else {
			DIhideBoxes('3b', objID);
		}
		break
	}
	
	
	//kijken of 'quantity' de laatse waarde is (more than ...)
	quantity = document.getElementById('VAR' + objID + 'S4_' + step);
	q_index  = quantity.selectedIndex + 1;
	q_length = quantity.options.length;
	
	//more than input tonen?
	if (q_index == q_length) {
		document.getElementById('OBJ' + objID + 'S4b_more').style.display = '';
		
	//more than input verbergen?	
	} else {
		DIhideBoxes('4b', objID);
	}
}


/*--------------------------------------------------------------------------------
methode om alle waardes op te halen voor het bepalen van de prijs
--------------------------------------------------------------------------------*/
function DIgetPrice(objID) {
	
	//waarde van stap 1 ophalen
	S1 = document.getElementById('VAR' + objID + 'S1');
	V1 = S1.options[S1.selectedIndex].value;
	
	
	//wanneer stap 2 aanwezig is (specific usage)
	if (V1 != 'outdoor' && V1 != '' && V1 != 'other') {
		//waarde van stap 2 ophalen
		S2 = document.getElementById('VAR' + objID + 'S2_' + V1);
		V2 = S2.options[S2.selectedIndex].value;
		
	} else {
		
		//V2 moet gedefineerd zijn
		V2 = '';
	}
	
	//extra velden tonen bij oplage
	if (V1 != 'mark' && V1 != '' && V1 != 'smagaz') {
		DImore(objID,V1);
		
	} else if (V1 == 'smagaz') {
		DImore(objID,'magaz');
		
	} else if (V1 == 'mark' && V2 != '') {
		DImore(objID,V1);
	}
	
	//extra waarde stap 2b ophalen
	if (V2 == 'folders' || V2 == 'brochures' || V2 == 'catalogues' || V2 == 'reports') {
		
		//waarde van stap 2b ophalen
		S2b = document.getElementById('VAR' + objID + 'S2b_' + V2);
		V2b = S2b.options[S2b.selectedIndex].value;
		
	} else {
		
		//V2b moet gedefineerd zijn
		V2b = '';
	}
	
	
	//formaat ophalen
	if (V1 == 'web') {
		
		//formaat op basis van web
		S3 = document.getElementById('VAR' + objID + 'S3_web');
		SZ = S3.options[S3.selectedIndex].value;
		SZcopy = S3.options[S3.selectedIndex].text;
		
	} else if (V1 == 'posale') {
		
		//formaat op basis van point of sale
		S3 = document.getElementById('VAR' + objID + 'S3_posale');
		SZ = S3.options[S3.selectedIndex].value;
		SZcopy = S3.options[S3.selectedIndex].text;
		
	} else if (V1 == 'outdoor') {
		
		//formaat op basis van postcards
		S3 = document.getElementById('VAR' + objID + 'S3_outdoor');
		SZ = S3.options[S3.selectedIndex].value;
		SZcopy = S3.options[S3.selectedIndex].text;
		
	} else if (V1 == 'postc') {
		
		//formaat op basis van postcards
		S3 = document.getElementById('VAR' + objID + 'S3_postc');
		SZ = S3.options[S3.selectedIndex].value;
		SZcopy = S3.options[S3.selectedIndex].text;
		
	} else if (V1 != '') {
		
		//formaat op basis van print
		S3 = document.getElementById('VAR' + objID + 'S3_print');
		SZ = S3.options[S3.selectedIndex].value;
		SZcopy = S3.options[S3.selectedIndex].text;
		
	} else {
	
		//formaat moet gedefineerd zijn
		SZ = '';
		SZcopy = '';
	}
	
	//kopie aanmaken van waarde voor order
	document.getElementById('VAR' + objID + 'S3_cp').value = SZcopy;
	
	
	//oplage ophalen
	if (V1 == 'smagaz') {
		
		//oplage op basis van magaz
		S4 = document.getElementById('VAR' + objID + 'S4_magaz');
		QT = S4.options[S4.selectedIndex].value;
		
		//gaat het om de laatste waarde? dus meer dan ..
		if (S4.selectedIndex == S4.options.length - 1)
		QTcopy = 'more';
		else
		QTcopy = S4.options[S4.selectedIndex].text;
		
	} else if (V1 != '' && V1 != 'other') {
		
		//oplage
		S4 = document.getElementById('VAR' + objID + 'S4_' + V1);
		QT = S4.options[S4.selectedIndex].value;
		
		//gaat het om de laatste waarde? dus meer dan ..
		if (S4.selectedIndex == S4.options.length - 1)
		QTcopy = 'more';
		else
		QTcopy = S4.options[S4.selectedIndex].text;
		
	} else {
	
		//oplage moet gedefineerd zijn
		QT = '';
		QTcopy = '';
	}
	
	
	//kopie aanmaken van waarde voor order
	document.getElementById('VAR' + objID + 'S4_cp').value = QTcopy;
	
	
	//exclusiviteit voor branche?
	EXCL = document.getElementById('EXCL' + objID).checked;
	
	//kwaliteitslabel ophalen
	QLTY = document.getElementById('qltymark' + objID).value;
	
	//wanneer elke variabele een waarde heeft
	DIcheckPrice(V1, V2, V2b, QT, SZ, EXCL, QLTY, objID);
}


/*--------------------------------------------------------------------------------
methode om de prompt info te wijzigen
--------------------------------------------------------------------------------*/
function DIchangePrompt(step,objID) {
	
	//vanuit welke stap gezien
	switch (step) {
	
		case 'magaz':
		var prompt = 'A publication in the format of a Magazine with editorial content.';
		break
		
		case 'smagaz':
		var prompt = 'A corporate-sponsored publication in the format of a Magazine with editorial content.';
		break
		
		case 'newsp':
		var prompt = 'Inside of a Newspaper (no advertising, promotion or commercial use of any kind)';
		break
		
		case 'mark':
		var prompt = 'Annual Report or Financial Report, Brochure or Direct Mail, Electronic Only Brochur, External Newsletter/Corporate Magazine, External Presentation or Report Non-Retail Calendar, Non-Retail Card, Sales Give-Aways.';
		break
		
		case 'posale':
		var prompt = 'In-Store Display or Poster, Table Tent or Counter Trade Show Panel or Presentation.';
		break
		
		case 'outdoor':
		var prompt = 'Outdoor Poster or Transit Ad Billboard.';
		break
		
		case 'books':
		var prompt = 'books';
		break
		
		case 'calend':
		var prompt = 'Calendar for retail or wholesale distribution.';
		break
		
		case 'postc':
		var prompt = 'Non-promotional printed Postcard for retail or wholesale distribution.';
		break
		
		case 'web':
		var prompt = 'Web or electronic editorial use (no advertising, promotion or commercial use of any kind).';
		break
		
		case 'other':
		var prompt = 'Any other way of publishing which is not mentioned at this site will be in request. Please sent an  email to DutchImage.';
		break
	}
	
	//waarde plaatsen in prompt input veld
	document.getElementById('PROMPT' + objID).value = prompt;
}