/*
Datei: formularCheck_kontakt.js
Autor: jsc
Datum: 02.04.2001

Zweck der Datei:
- Checken eines Formulars auf ausgefüllte Pflichtfelder, sowie ggfls. Checken einer eingegebenen E-Mail Adresse

Aufruf der Datei:
- onSubmit="return checkFormular(Name_des_div_tags, Name_des_Formulars, Sprache, 		EMailCheck, 	Feld1, 		Feld2, 		usw. ...);"
						('contentTextWOBracket','contactform','<?php print $lang; ?>' ,'message','contactName','contactStreet','contactPostcodeCity','contactMail');
- es müssen mind. 3 Parameter mitgegeben werden:
	1. Name des div-Tags
	2. Name des Formulars
	3. Sprache, in der die Fehlermeldungen ausgegeben werden sollen ('de' für deutsch oder 'en' für englisch)

- anschliessend alle Felder auflisten, die geprüft werden sollen
- FALLS EINE EMAIL PRÜFUNG GEMACHT WERDEN SOLL, MUSS DIESES FELD ALS ERSTES ÜBERGEBEN WERDEN !!!
*/
/*     			'contentTextWOBracket','contactform','<?php print $lang; ?>' ,  'message','contactName','contactStreet','contactPostcodeCity','contactMail' */	
	function checkFormular(nameGruppe, nameForm, sprache, contactParameterArray)
	{		
		//alert("hallo" + contactEmail);
		//alert("hallo" + eval(nameGruppe).doc.forms[nameForm].elements[contactEmail].value );
		var fehler_feld_nicht_gefuellt;
		
		if(sprache == 'de')
		{
			fehler_feld_nicht_gefuellt = "Bitte füllen Sie alle Pflichtfelder aus.";
			fehler_adresse = "Geben Sie entweder Ihre Email-Adresse oder Ihre vollständige Postadresse an.";
		}
		else
		{
			fehler_feld_nicht_gefuellt = "Please fill in all the required fields.";
			fehler_adresse = "Please enter your postal address or your email address.";
		}
		
		/* Fehler-Flag */
		var fehler = 0;
		
		/* bei Fehler wird der Fokus auf dieses Feld gesetzt */
		var nameFeld;
        var formID = document.getElementById(nameForm);
        //alert("formId: " + formID);	
      	
   		for (var i = 0; i < contactParameterArray.length; i++) {
   		   var contactObj = formID.elements[contactParameterArray[i]];
   		   //alert ("Feld: " + contactParameterArray[i] + " Value: " + contactObj.value);
   		   if (contactObj.value <= '') {
   		       nameFeld = contactParameterArray[i];
   		       fehler = 1;
   		       break;
   		    }
   		   //eval(formID.elements[contactParameterArray[i]].value == '';
   		}

//					/* Email überprüfen */
//					if(emailCheck(nameGruppe,nameForm,contactEmail,sprache) != true)
//					{
//						fehler = 2;
//						nameFeld = "contactMail";
//					}
//	
		
		if(fehler == 1) /* bei leerem Pflichtfeld Fokus auf dieses setzen */
		{
			alert(fehler_feld_nicht_gefuellt);
			formID.elements[nameFeld].focus();
			return false;	
		}
		
		if(fehler == 2)
		{
			formID.elements[nameFeld].focus();
			return false;			
		}
		
		if(fehler == 0)
		{
			return true;
		}				
	}
/* Die Funktion checkBoxMore(Sprache) 
	ist nur für einen bestimmten Fall vorgesehen
	Die Vorgaben sind für die Produktionsumgebung
   Meta-Fled		title			=	"Bestellservice" 
	Meta-Feld		search_category = 	"investor"
   wird aufgerufen von Flex-Modul contactform_text
	für das Beschriftungsfeld "Name" in deutsch, "First Name" in englisch 
	mailColumn[12_8_3_0] ist die deutsche Version der Checkbox mit der Beschriftung "Geschäftsbericht"
	mailColumn[22_1_3_0] ist die englische Version der Checkbox mit der Beschriftung "Annual Report"
	
	mailColumn[12_21_3_0]  ist die deutsche Version  der Checkbox mit der Beschriftung "privater Anleger"
	mailColumn[12_22_3_0]  ist die deutsche Version  der Checkbox mit der Beschriftung "Institutioneller Anleger"
	mailColumn[12_23_3_0]  ist die deutsche Version  der Checkbox mit der Beschriftung "Analyst"
	mailColumn[12_24_3_0]  ist die deutsche Version  der Checkbox mit der Beschriftung "Finanz-/Wirtschaftsjournalist"
	
	mailColumn[22_13_3_0] ist die englische Version der Checkbox mit der Beschriftung "Individual Investor"
	mailColumn[22_14_3_0] ist die englische Version der Checkbox mit der Beschriftung "Institutional Investor/Portfolio Manager "
	mailColumn[22_15_3_0] ist die englische Version der Checkbox mit der Beschriftung "Analyst"
	mailColumn[22_16_3_0] ist die englische Version der Checkbox mit der Beschriftung "Journalist"
	Die fieldNames sind unterschiedlich in jeder Umgebung (bitte anpassen, wenn notwendig)
*/ 	
	function checkBoxMore(language)													
	{	                                                        					
		var f 				= document.contactform;	
		var cnt				= 0;														//-- gesamt checkbox gewählt	
		var restCounter		= 0;														//-- rest checkbox(nicht Geschäftsbericht, nicht Art des Anlegers  
		var checkBoxCounter	= 0;	                           						
		var existReport		= 0;                           						
		var targetUrl		= new Array(
										"https://secure.wilink.com/asp/P078_search_GER.asp?target=EU008237",
										"https://secure.wilink.com/asp/P018_search_ENG.asp?target=EU008237"
										);
		var fieldNames 		= new Array(											
										"mailColumn[12_8_3_0]",						
										"mailColumn[22_1_3_0]"																			
										); 
		var checkboxNames 	= new Array(																	//-- 22.10.07 kastei					
										"mailColumn[12_8_3_0]",
										"mailColumn[12_21_3_0]",	
										"mailColumn[12_22_3_0]",
										"mailColumn[12_23_3_0]",
										"mailColumn[12_24_3_0]",	
										"mailColumn[22_1_3_0]",
										"mailColumn[22_13_3_0]",
										"mailColumn[22_14_3_0]",					
										"mailColumn[22_15_3_0]",
										"mailColumn[22_16_3_0]"																		
										); 	
		var url;																																	
		var fieldElement;                                     						
		var columnName;																
		if (language == "de")														
		{			  																
			columnName 	= fieldNames[0];		
			url 		= targetUrl[0];																		//-- 10.07.09 htgros										
		}		            	                                    				
		else																		
		{			  																
			columnName 	= fieldNames[1];				
			url 		= targetUrl[1];																		//-- 10.07.09 htgros													
		}		            	                                    				
		for (var j=0; j<f.elements.length; j++)						          		
		{                                               							
			fieldElement = f.elements[j];                     						
			if (fieldElement.type == "checkbox" )             						
			{                                            							
				if (fieldElement.checked)	
				{
					cnt ++;
					for (var k=0; k<checkboxNames.length; k++)						          		
					{  
						if (fieldElement.name == checkboxNames[k])
						{																	
							checkBoxCounter ++;                        						
						}
					}
					restCounter = cnt - checkBoxCounter;
				}
			}			
			if (fieldElement.name == columnName)            				
			{  																
				existReport = 1;											
			}  																
		}		            	                                    				
		if (restCounter == 0 && existReport == 1)								
		{                                                							
			document.location.href = url;		             						
		}																			
	}																				

