
/*
 **  Accenture
 **  v1.32 - 2010.03.09
 **  Mascheroni Roberto
 */

/*
 * Manage page class
 * Every page of the quotation, myaccount, schade dialog have an init class that add all the javascript action at the object in page
 */
//------ LOGIC FOR STATES ----------------------------------------------------


   try {
	   
	   aString.split(';');
   }
   catch (ex){
	   var aString="Aa en Hunze;Aalburg;Aalsmeer;Aalten;Abcoude;Achtkarspelen;Alblasserdam;Albrandswaard;Alkemade;Alkmaar;Almelo;Almere;Alphen aan den Rijn;Alphen-Chaam;Ameland ;Amersfoort;Amstelveen;Amsterdam ;Andijk;Anna Paulowna ;Apeldoorn ;Appingedam;Arcen en Velden ;Arnhem;Assen ;Asten ;Baarle-Nassau ;Baarn ;Barendrecht ;Barneveld ;Bedum ;Beek;Beemster;Beesel;Bellingwedde;Bennebroek;Bergambacht ;Bergeijk;Bergen;Bergen;Bergen op Zoom;Berkelland;Bernheze;Bernisse;Best;Beuningen ;Beverwijk ;het Bildt ;De Bilt ;Binnenmaas;Bladel;Blaricum;Bloemendaal ;Boarnsterhim;Bodegraven;Boekel;Ten Boer;Bolsward;Borger-Odoorn ;Borne ;Borsele ;Boskoop ;Boxmeer ;Boxtel;Breda ;Breukelen ;Brielle ;Bronckhorst ;Brummen;Brunssum;Bunnik;Bunschoten;Buren ;Bussum;Capelle aan den IJssel;Castricum ;Coevorden ;Cranendonck ;Cromstrijen ;Cuijk ;Culemborg ;Dalfsen ;Dantumadeel ;Delft ;Delfzijl;Deurne;Deventer;Diemen;Dinkelland;Dirksland ;Doesburg;Doetinchem;Dongen;Dongeradeel ;Dordrecht ;Drechterland;Drimmelen ;Dronten ;Druten;Duiven;Echt-Susteren ;Edam-Volendam ;Ede ;Eemnes;Eemsmond;Eersel;Eijsden ;Eindhoven ;Elburg;Emmen ;Enkhuizen ;Enschede;Epe ;Ermelo;Etten-Leur;Ferwerderadiel;Franekeradeel ;Gaasterl?Sleat;Geertruidenberg ;Geldermalsen;Geldrop-Mierlo;Gemert-Bakel;Gennep;Giessenlanden ;Gilze en Rijen;Goedereede;Goes;Goirle;Gorinchem ;Gouda ;Graafstroom ;Graft-De Rijp ;Grave ;Groesbeek ;Groningen ;Grootegast;Gulpen-Wittem ;Den Haag;Haaksbergen ;Haaren;Haarlem ;Haarlemmerliede en Spaarnwoude;Haarlemmermeer;Halderberge ;Hardenberg;Harderwijk;Hardinxveld-Giessendam;Haren ;Harenkarspel;Harlingen ;Hattem;Heemskerk ;Heemstede ;Heerde;Heerenveen;Heerhugowaard ;Heerlen ;Heeze-Leende;Heiloo;Helden;Den Helder;Hellendoorn ;Hellevoetsluis;Helmond ;Hendrik-Ido-Ambacht ;Hengelo ;'s-Hertogenbosch;Heumen;Heusden ;Hillegom;Hilvarenbeek;Hilversum ;Hof van Twente;Hoogeveen ;Hoogezand-Sappemeer ;Hoorn ;Horst aan de Maas ;Houten;Huizen;Hulst ;IJsselstein ;Jacobswoude ;Kampen;Kapelle ;Katwijk ;Kerkrade;Kessel;Koggenland;Kollumerland en Nieuwkruisland;Korendijk ;Krimpen aan den IJssel;Laarbeek;Landerd ;Landgraaf ;Landsmeer ;Langedijk ;Lansingerland ;Laren ;Leek;Leerdam ;Leeuwarden;Leeuwarderadeel ;Leiden;Leiderdorp;Leidschendam-Voorburg ;Lelystad;Lemsterland ;Leudal;Leusden ;Liesveld;Lingewaal ;Lingewaard;Lisse ;Lith;Littenseradiel;Lochem;Loenen;Loon op Zand;Lopik ;Loppersum ;Losser;Maarssen;Maasbree;Maasdonk;Maasdriel ;Maasgouw;Maassluis ;Maastricht;Margraten ;De Marne;Marum ;Medemblik ;Meerlo-Wanssum;Meerssen;Meijel;Menaldumadeel ;Menterwolde ;Meppel;Middelburg;Middelharnis;Midden-Delfland ;Midden-Drenthe;Mill en Sint Hubert ;Millingen aan de Rijn ;Moerdijk;Montferland ;Montfoort ;Mook en Middelaar ;Moordrecht;Muiden;Naarden ;Neder-Betuwe;Nederlek;Nederweert;Neerijnen ;Niedorp ;Nieuwegein;Nieuwerkerk aan den IJssel;Nieuwkoop ;Nieuw-Lekkerland;Nijefurd;Nijkerk ;Nijmegen;Noord-Beveland;Noordenveld ;Noordoostpolder ;Noordwijk ;Noordwijkerhout ;Nuenen; Gerwen en Nederwetten ;Nunspeet;Nuth;Oegstgeest;Oirschot;Oisterwijk;Oldebroek ;Oldenzaal ;Olst-Wijhe;Ommen ;Onderbanken ;Oosterhout;Oostflakkee ;Oost Gelre;Ooststellingwerf;Oostzaan;Opmeer;Opsterland;Oss ;Oud-Beijerland;Oude IJsselstreek ;Ouder-Amstel;Ouderkerk ;Oudewater ;Overbetuwe;Papendrecht ;Pekela;Pijnacker-Nootdorp;Purmerend ;Putten;Raalte;Reeuwijk;Reiderland;Reimerswaal ;Renkum;Renswoude ;Reusel-De Mierden ;Rheden;Rhenen;Ridderkerk;Rijnwaarden ;Rijnwoude ;Rijssen-Holten;Rijswijk;Roerdalen ;Roermond;De Ronde Venen;Roosendaal;Rotterdam ;Rozenburg ;Rozendaal ;Rucphen ;Schagen ;Scheemda;Schermer;Scherpenzeel;Schiedam;Schiermonnikoog ;Schijndel ;Schinnen;Schoonhoven ;Schouwen-Duiveland;Sevenum ;Simpelveld;Sint Anthonis ;Sint-Michielsgestel ;Sint-Oedenrode;Sittard-Geleen;Skarsterl?;Sliedrecht;Slochteren;Sluis ;Smallingerland;Sneek ;Soest ;Someren ;Son en Breugel;Spijkenisse ;Stadskanaal;Staphorst ;Stede Broec ;Steenbergen ;Steenwijkerland ;Stein ;Strijen ;Terneuzen ;Terschelling;Texel ;Teylingen ;Tholen;Tiel;Tilburg ;Tubbergen ;Twenterand;Tynaarlo;Tytsjerksteradiel ;Ubbergen;Uden;Uitgeest;Uithoorn;Urk ;Utrecht ;Utrechtse Heuvelrug ;Vaals ;Valkenburg aan de Geul;Valkenswaard;Veendam ;Veenendaal;Veere ;Veghel;Veldhoven ;Velsen;Venlo ;Venray;Vianen;Vlaardingen ;Vlagtwedde;Vlieland;Vlissingen;Vlist ;Voerendaal;Voorschoten ;Voorst;Vught ;Waalre;Waalwijk;Waddinxveen ;Wageningen;Wassenaar ;Waterland ;Weert ;Weesp ;Werkendam ;Wervershoof ;West Maas en Waal ;Westerveld;Westervoort ;Westland;Weststellingwerf;Westvoorne;Wierden ;Wieringen ;Wieringermeer ;Wijchen ;Wijdemeren;Wijk bij Duurstede;Winschoten;Winsum;Winterswijk ;Woensdrecht ;Woerden ;De Wolden ;Wormerland;Woudenberg;Woudrichem;W??radiel ;Wymbritseradiel ;Zaanstad;Zaltbommel;Zandvoort ;Zederik ;Zeevang ;Zeewolde;Zeist ;Zevenaar;Zevenhuizen-Moerkapelle ;Zijpe ;Zoetermeer;Zoeterwoude ;Zuidhorn;Zundert ;Zutphen ;Zwartewaterland ;Zwijndrecht;Zwolle";
	   var aSuggest=aString.split(';');

   }

  



	(function($){

		var self = {};
		$.extend( self, {

			form : undefined,

			fadein:function(element){
				element.removeClass("fadeout");
				element.addClass("fadein");
			},

			fadeout:function(element){
				element.addClass("fadeout");
				element.removeClass("fadein");
			},
			link:function(/*ev,*/element){
				var codeType="";
				element.parent('div').find('input[type=hidden]').each(
					function(index,el){
						codeType=$(el).attr('value');
					}
				);
				/*new Event(ev).stop();*/
				var url = AA.Utils.updateFormAction( self.form, 'forward' ,'&codeDamageType='+codeType, false) ;
				AA.Utils.resetFormAction  (self.form, url );
				self.form.submit();

			},

			linkCar:function(ev){
//				new Event(ev).stop();
				var url = AA.Utils.updateFormAction( self.form, 'forwardCarDialogue' ,null, false) ;
				AA.Utils.resetFormAction  (self.form, url );
				self.form.submit();
			},

			linkPremiumCalculator:function(ev){
//				new Event(ev).stop();
				var url = AA.Utils.updateFormAction( self.form, 'premiumCalculator' ,null, false) ;
				AA.Utils.resetFormAction  (self.form, url );
				self.form.submit();
			},


			init:function(){

				self.goCarDialogue=$('#goCarDialogue');
				self.goCalculatePremium=$('#goCalculatePremium');
				self.form = $('#processSMForm');

				if (!self.form.length) return;

				if (self.goCarDialogue.length)
					self.goCarDialogue.unbind('click').click(function(){self.linkCar(self)});

				if (self.goCalculatePremium.length)
					self.goCalculatePremium.unbind('click').click(function(){self.linkPremiumCalculator(self)});

				self.form.find('.faderowtable').each(function(index,el){
					$(el).unbind('mouseenter').mouseenter(function(){self.fadein($(el))});
					$(el).unbind('mouseleave').mouseleave(function(){self.fadeout($(el))});
					$(el).unbind('click').click(function(){self.link($(el))});
				});

			}

		});
		$.extend( AA.States , {schadetypedamage: self});

	})(jQuery);


//end schadetypedamage


	(function($){

		var self = {};
		$.extend( self, {

			init: function(){

			self.form = $('#processSMForm');
			self.smpassword=$('#smpassword');

			if (!self.form.length) return;

			self.smpassword.unbind('keydown').keydown(function(){AA.Utils.eventEnterKey( self, ['forward'] )});
			}

		});
		$.extend( AA.States , {schadelogin: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {

			init: function(){

			}

		});
		$.extend( AA.States , {schadelostpassword: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {


			getObject : function ( obj ){
				try{
					object = obj.attr('value');
				}catch (e){
					object = obj ;
				}
				return object;
			},

			openDivDataThirdPartie : function(elem){

				radio = elem;

				var st_Object = 'tr.anagThirdPartie_'+ (radio.attr("class")).split(" ")[1];
				self.form.find(st_Object).each(function(index,el){
					if (radio.attr('value')=="N"){
						$(el).addClass(AA.Config.classNames['hide']);
					}else{
						$(el).removeClass(AA.Config.classNames['hide']);
					}

				}
				);
			},
			openMessage: function (st_Id,st_Property,bo_Var){

				self.form.find('tr.messageError').each(function(index,el){
					$(el).addClass(AA.Config.classNames['hide']);
				});

				if (bo_Var){
					$(st_Id).addClass(AA.Config.classNames['hide']);
					self.managementMessage();
				}

				if(!bo_Var){
					var completed = function(response) {

						if(!response)return false;

						if (response.indexOf('###OK###') == 0){
							if(self.policyDateOK==true)
								$('#sm_validationerrors').addClass(AA.Config.classNames['hide']);
							self.policyMessageOK=true;
							self.checkPolicyDate();
						}else{
							$('#sm_validationerrors').html(response);
							$('#sm_validationerrors').removeClass(AA.Config.classNames['hide']);
							self.policyMessageOK=false;
						}
					};

					if ( st_Id != null ) {
						var url = AA.Utils.updateFormAction( '/do/processSchadeAjax' , 'checkGuarantyError' ,"&GuarantyMessage=" + st_Id, false );

						var options = {
								url : url,
								success : completed
						};

						$.ajax( options );
					}
				}
				self.managementButtonNext();

			},

			managementButtonNext: function() {

				var checkButton=false;
				var checkCasualtiesOwn=false;
				var checkPassenger=false;
				var checkGuaranty=false;
				var checkThirdParty=false;
				var checkPackage=false;
				var checkDate=false;
				var checkLocation=false;
				var checkGlass=false;

				$('#schadeNext').removeClass("noNextButton");
				$('#schadeNext').attr('disabled',false);

				self.form.find('input.classGuarantyCode').each ( function ( index , el ) {
					if($(el).attr("value")=="9")
						checkGuaranty=true;
				});

				if($('#idCodeTypeDamage').value=="01") {
					if( $('#idNumThirdPartie') && $('#idRadioThirdParties') ) {
						if ($('#idNumThirdPartie').attr('value')>3 && $('#idRadioThirdParties').attr('checked')==true)
							checkThirdParty=true;
					}

					if ( checkThirdParty ) {
						$('#schadeNext').addClass("noNextButton");
						$('#schadeNext').attr('disabled',true);
					}
				}

				if($('#idFlagLocation_N').length) {
					if($('#idFlagLocation_N').attr('checked')) {
						$('#schadeNext').addClass("noNextButton");
						$('#schadeNext').attr('disabled',true);
					}
				}
			},

			managementMessage: function() {
				var st_Message="";
				var checkPassenger=false;
				var checkGuaranty=false;
				var checkVictims=false;

				if ($('#idCodeTypeDamage').attr('value')=="01" && (($('#idRadioThirdParties1').length && $('#idRadioThirdParties1').attr('checked')) || ($('#idRadioThirdParties').length && $('#idRadioThirdParties').attr('checked')))) {

					self.form.find('input.classRadioControl').each(function(index,el){
						if($(el).attr('value')=="S")
							if($(el).attr('checked')==true && $('#idPackageCode').attr('value')!="0003"){
								st_Message="idMessage_7";
							}
					});

					self.form.find('input.classGuarantyCode').each(function(index,el) {
						if($(el).attr('value')=="9")
							checkGuaranty=true;
					});

					self.form.find('input.classRadioControlVictim,input.classRadioControlPassenger').each(function(index,el) {
						if($(el).attr('value')=="S")
							if($(el).attr('checked')==true)
								checkPassenger=true;
					});

					if(checkGuaranty) {
						self.form.find('input.classRadioControlVictim').each(function(index,el){
							if($(el).attr('value')=="S")
								if($(el).attr('checked')==true)
									checkVictims=true;
						});
					}

					if($('#idNumThirdPartie').length && $('#idRadioThirdParties').length){
						if ($('#idNumThirdPartie').attr('value')>3 && $('#idRadioThirdParties').attr('checked')==true)
							st_Message="idMessage_4";
					}
				}

				if($('#idCodeTypeDamage').attr('value')=="04" && $('#idRadioThirdParties1').length && $('#idRadioThirdParties1').attr('checked') ){
					if($('#idPackageCode') && $('#idPackageCode').value=="0001")
						st_Message="idMessage_6";
				}

				if((($('#idCodeTypeDamage').attr('value')=="02") || ($('#idCodeTypeDamage').attr('value')=="03") || ($('#idCodeTypeDamage').attr('value')=="05")) && ($('#idRadioThirdParties1').length && $('#idRadioThirdParties1').attr('checked') )){

					self.form.find('input.classGuarantyCode').each(function(index,el){
						if($(el).attr('value')=="9")
							checkGuaranty=true;
					});

					if($('#idPackageCode').length && $('#idPackageCode').attr('value')=="0001" && !checkGuaranty)
						st_Message="idMessage_6";

				}

				var completed = function(response) {

					if(!response)return false;

					if (response.indexOf('###OK###') == 0) {
						if(self.policyDateOK==true)
							$('#sm_validationerrors').addClass(AA.Config.classNames['hide']);
						self.policyMessageOK=true;
						self.checkPolicyDate();
					} else {
						$('#sm_validationerrors').html(response);
						$('#sm_validationerrors').removeClass(AA.Config.classNames['hide']);
						self.policyMessageOK=false;
					}

				}

				if ( st_Message != null ) {

					var url = AA.Utils.updateFormAction( contextPath_js+'/do/processSchadeAjax' , 'checkGuarantyError' ,"&GuarantyMessage=" + st_Message, false );

					var options = {
							url : url,
							success : completed
					};

					$.ajax( options );
				}

			},

			checkCasualtiesOwnCar:function ( obj ) {

				var radio = obj.attr('value');

				var contractChecked=false;

				self.form.find('input.edition_display').each( function ( index , el ) {
					if ($(el).attr('checked')==true)
						contractChecked=true;
				});

				if(!contractChecked) {
					self.showMessageError('errorSelectContract');
					return;
				}

				if(radio=="S" && $('#idPackageCode').attr('value')!="0003" && ($('#idRadioThirdParties1').length && $('#idRadioThirdParties1').attr('checked') ||($('#idRadioThirdParties').length && $('#idRadioThirdParties').attr('checked'))))
					self.openMessage('idMessage_7','',false);
				else
					self.openMessage('idMessage_7','',true);

			},

			checkOwnVictims:function ( obj ) {

				var radio = obj.attr('value');
				var contractChecked = false;

				self.form.find('input.edition_display').each(function(index,el){
					if ($(el).attr('checked')==true)contractChecked=true;
				});

				if ( !contractChecked ) {
					self.showMessageError('errorSelectContract');
					return;
				}

				var checkGuaranty=false;

				self.form.find('input.classGuarantyCode').each(function(index,el){
					if($(el).attr('value')=="9")
						checkGuaranty=true;
				});

				if(radio=="S" &&  !checkGuaranty && $('#idRadioThirdParties1').length && $('#idRadioThirdParties1').attr('checked') ){
					self.openMessage('idMessage_2','',false);
				}else
					self.openMessage('idMessage_2','',true);

			},

			openDivThirdParties: function ( object ) {

				self.form.find('tr.selectThirdPartie').each(function(index,el){
					$(el).remove();
				});


				/*var radio=(new Event(ev)).target.value;*/

				if ($('#idNumThirdPartie').attr('value')>3 && $('#idRadioThirdParties').attr('checked')==true){
					self.openMessage('idMessage_4','',false);
				}else{
					self.openMessage('idMessage_4','',true);
				}
				if ($('#idNumThirdPartie').attr('value')<1 || $('#idNumThirdPartie').attr('value')>3 || $('#idRadioThirdParties').attr('checked')==false){
					return;
				}

				var completed = function(response) {
					if(!response)return false;

					self.tmpDiv = $('<div></div>');
					self.tmpDiv.html(response);

					self.tmpDiv.find('tr.selectThirdPartie').each(function(index,el){
						$(el).insertBefore($('#idAfterRowThirdParties'));
					});

					self.form.find('input.flagAnag').each(function(index,el){
						$(el).click( function(){self.openDivDataThirdPartie($(el))} );
					});

					self.form.find('input.checkAddr').each(function(index,el){
						$(el).blur(function(){self.searchAddressData( self,$(el) )});
					});


				};

				var params = "?numThirdParties="+$('#idNumThirdPartie').attr('value');
				var url = AA.Utils.updateFormAction( contextPath_js + "/schade/include/thirdPartiesGeneral.jsp" , null , params , true );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			searchAddressData: function(ev,el){
				var id=($(el).attr("id")).split("_")[1];
				if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
					AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);
			},

			getCar: function ( obj ) {

				text = obj;
				var index=(text.attr('class')).split(" ")[1];
				var plate=text.attr('value');

				if( plate.trim() =='' ) return;


				var url = AA.Utils.updateFormAction( contextPath_js+'/do/processSchadeAjax' , 'reloadByPlateNumber' ,"&plateNumber=" + plate +"&index="+index, false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			getGuaranties: function ( ev , obj ) {

				object = obj;

				var completed = function(response) {

					try {
						try {
							if(response.indexOf("###OK###")!=-1)
								response = response.replace("###OK###","");

						} catch ( e ) { }

						var tmpDiv = $('<div></div>');
						tmpDiv.html(response);
						var actualPage = $( '#processSMForm' );
						tmpDiv.find('form').each(function(index,item) {
							if ($(item).attr('id') == 'processSMForm') {
								$(actualPage).html($(item).html());
								$(actualPage).attr('action', $(item).attr('action'));
							}
						});
						self.init();
					}catch(e){}
				};

			    var url = AA.Utils.updateFormAction( self.form , 'getGuaranties' , '&contractNumber='+object.attr('value') , false );
			    AA.Utils.resetFormAction  (self.form, url );
			 	AA.Utils.submitForm ( self.form,ev,completed );
			},

			openDivNumVictims: function ( obj ) {

				radio = obj;

				if ( radio.attr('value') == "S" ) {
					$('#idNumVictimsOwnVehicle').removeClass(AA.Config.classNames['hide']);
					if($('#idNumThirdPartie').attr('value') > 1)
						$('#idNumVictimsThirdParties').removeClass(AA.Config.classNames['hide']);
					$('#idRowVictims').removeClass(AA.Config.classNames['hide']);
				} else {
					$('#idNumVictimsOwnVehicle').addClass(AA.Config.classNames['hide']);
					$('#idNumVictimsThirdParties').addClass(AA.Config.classNames['hide']);
					$('#idRowVictims').addClass(AA.Config.classNames['hide']);
				}

			},

			openDivAnagDriver: function( obj ){

				radio = obj;

				self.form.find('tr.anagDriver').each(function(index,el){
					if (radio.attr('value')=="N")
						$(el).removeClass(AA.Config.classNames['hide']);
					else
						$(el).addClass(AA.Config.classNames['hide']);
				});

			},

			openDivEndTime: function(obj) {

				radio=obj;

				self.form.find('tr.divEndTime').each(function(index,el){

					if ( radio.attr('value') == "N" ) {
						$(el).removeClass(AA.Config.classNames['hide']);
					} else {
						$(el).addClass(AA.Config.classNames['hide']);
					}

				});

			},

			submitAndCheckPolicyDate: function() {

				if (!$('#idStartDateDay').length && !$('#idStartDateMonth').length && !$('#idStartDateYear').length && !$('#idStartTimeHourOfDay').length && !$('#idStartTimeMinute').length && !$('#idFlagExactTime_N').length && !$('#idEndDateDay').length && !$('#idEndDateMonth').length && !$('#idEndDateYear').length && !$('#idEndTimeHourOfDay').length && !$('#idEndTimeMinute').length ) return;

				if ($('#idStartDateDay').attr('value')=="" || $('#idStartDateMonth').attr('value')=="" || $('#idStartDateYear').attr('value')=="")return;

				if ($('#idFlagExactTime_N').attr('checked')==true && ($('#idEndDateDay').attr('value')=="" || $('#idEndDateMonth').attr('value')=="" || $('#idEndDateYear').attr('value')==""))return;

				var completed = function(response) {

					try {

						try {
							if(response.indexOf("###OK###")!=-1)
								response=response.replace("###OK###","");

						} catch ( e ) { }

						var tmpDiv = $('<div></div>');
						tmpDiv.html(response);

						var actualPage = $( '#processSMForm' );

						tmpDiv.find('form').each ( function ( index , item ) {
							if ($(item).attr('id') == 'processSMForm') {
								actualPage.html($(item).html());
								actualPage.attr('action', $(item).attr('action'));
							}
						});

						self.init();

					} catch ( e ) { }
				};

				var contractChecked=false;

				self.form.find('input.edition_display').each(function(index,el) {
					if ($(el).attr('checked')==true)
						contractChecked=true;
				});

				if ( !contractChecked ) {
					self.showMessageError('errorSelectContract');
					return;
				}

				var url = AA.Utils.updateFormAction( self.form , 'checkPolicyDate' , null , false );
			    AA.Utils.resetFormAction  (self.form, url );
			 	AA.Utils.submitForm(self.form,undefined,completed);

			},

			checkPolicyDate: function(){


				if (!$('#idStartDateDay').length && !$('#idStartDateMonth').length && !$('#idStartDateYear').length && !$('#idStartTimeHourOfDay').length && !$('#idStartTimeMinute').length && !$('#idFlagExactTime_N').length && !$('#idEndDateDay').length && !$('#idEndDateMonth').length && !$('#idEndDateYear').length && !$('#idEndTimeHourOfDay').length && !$('#idEndTimeMinute').length )return;


				if ($('#idStartDateDay').attr('value')=="" || $('#idStartDateMonth').attr('value')=="" || $('#idStartDateYear').attr('value')=="")return;


				var contractChecked=false;
				self.form.find('input.edition_display').each(function(index,el){
					if ($(el).attr('checked')==true)contractChecked=true;
				});

				if(!contractChecked){
					self.showMessageError('errorSelectContract');
					return;
				}

				var st_ExactTime="";
				if ($('#idFlagExactTime_N').attr('checked')==true && ($('#idEndDateDay').attr('value')=="" || $('#idEndDateMonth').attr('value')=="" || $('#idEndDateYear').attr('value')==""))
					st_ExactTime="S";

				if(st_ExactTime!="S"){
					if ($('#idFlagExactTime_S').attr('checked')==true)
						st_ExactTime="S";
					else
						st_ExactTime="N";
				}


				var completed = function(response) {

					if(!response)return false;
					if (response.indexOf('###OK###') != -1){
						$('#sm_validationerrors').addClass(AA.Config.classNames['hide']);
						$('#checkStartDate').attr('value','true');
						$('#checkEndDate').attr('value','true');
						$('#idStartDateDay').removeClass(AA.Config.classNames['errorField']);
						$('#idStartDateMonth').removeClass(AA.Config.classNames['errorField']);
						$('#idStartDateYear').removeClass(AA.Config.classNames['errorField']);
						$('#idStartTimeHourOfDay').removeClass(AA.Config.classNames['errorField']);
						$('#idStartTimeMinute').removeClass(AA.Config.classNames['errorField']);
						$('#idEndDateDay').removeClass(AA.Config.classNames['errorField']);
						$('#idEndDateMonth').removeClass(AA.Config.classNames['errorField']);
						$('#idEndDateYear').removeClass(AA.Config.classNames['errorField']);
						$('#idEndTimeHourOfDay').removeClass(AA.Config.classNames['errorField']);
						$('#idEndTimeMinute').removeClass(AA.Config.classNames['errorField']);
						self.policyDateOK=true;
					}
					else{
						self.tmpDivCol = $('<div></div>');
						self.tmpDivCol.html(response);

						var bool_colour_startDate = self.tmpDivCol.find('input[id=idColour_startDate]').attr('value');
						var bool_colour_endDate = self.tmpDivCol.find('input[id=idColour_endDate]').attr('value');

						if(bool_colour_startDate=="true"){
							$('#idStartDateDay').addClass(AA.Config.classNames['errorField']);
							$('#idStartDateMonth').addClass(AA.Config.classNames['errorField']);
							$('#idStartDateYear').addClass(AA.Config.classNames['errorField']);
							$('#idStartTimeHourOfDay').addClass(AA.Config.classNames['errorField']);
							$('#idStartTimeMinute').addClass(AA.Config.classNames['errorField']);
						}
						else{
							$('#idStartDateDay').removeClass(AA.Config.classNames['errorField']);
							$('#idStartDateMonth').removeClass(AA.Config.classNames['errorField']);
							$('#idStartDateYear').removeClass(AA.Config.classNames['errorField']);
							$('#idStartTimeHourOfDay').removeClass(AA.Config.classNames['errorField']);
							$('#idStartTimeMinute').removeClass(AA.Config.classNames['errorField']);
							$('#sm_validationerrors').addClass(AA.Config.classNames['hide']);
						}

						if(bool_colour_endDate=="true"){
							$('#idEndDateDay').addClass(AA.Config.classNames['errorField']);
							$('#idEndDateMonth').addClass(AA.Config.classNames['errorField']);
							$('#idEndDateYear').addClass(AA.Config.classNames['errorField']);
							$('#idEndTimeHourOfDay').addClass(AA.Config.classNames['errorField']);
							$('#idEndTimeMinute').addClass(AA.Config.classNames['errorField']);
						}
						else{
							$('#idEndDateDay').removeClass(AA.Config.classNames['errorField']);
							$('#idEndDateMonth').removeClass(AA.Config.classNames['errorField']);
							$('#idEndDateYear').removeClass(AA.Config.classNames['errorField']);
							$('#idEndTimeHourOfDay').removeClass(AA.Config.classNames['errorField']);
							$('#idEndTimeMinute').removeClass(AA.Config.classNames['errorField']);
						}
						$('#sm_validationerrors').html(response);
						if(self.policyMessageOK==true)
							$('#sm_validationerrors').removeClass(AA.Config.classNames['hide']);
						$('#checkStartDate').attr('value','false');
						$('#checkEndDate').attr('value','false');
						self.policyDateOK=false;
					}
					self.managementButtonNext();
				}


				var st_number="";
				self.form.find('input.edition_display').each(function(index,el){
					if ($(el).attr('checked')==true)
						st_number=$(el).attr('value');
				});


				var url = "&numContract="+st_number+"&flagExactTime="+st_ExactTime+
				"&startDateDay="+$('#idStartDateDay').attr('value')+"&startDateMonth="+$('#idStartDateMonth').attr('value')+"&startDateYear="+$('#idStartDateYear').attr('value')+
				"&startTimeHourOfDay="+$('#idStartTimeHourOfDay').attr('value')+"&startTimeMinute="+$('#idStartTimeMinute').attr('value')+"&endDateDay="+$('#idEndDateDay').attr('value')+"&endDateMonth="+$('#idEndDateMonth').attr('value')+
				"&endDateYear="+$('#idEndDateYear').attr('value')+"&endTimeHourOfDay="+$('#idEndTimeHourOfDay').attr('value')+"&endTimeMinute="+$('#idEndTimeMinute').attr('value');

				var url = AA.Utils.updateFormAction( contextPath_js+'/do/processSchadeAjax' , 'checkPolicyDate' ,url , false );

				var options = {
						url : url,
						success : completed
				};

				$.ajax( options );

			},
			showMessageError: function ( text ) {

				var completed = function(response) {

					if(!response)return false;

					$('#sm_validationerrors').html(response);
					$('#sm_validationerrors').removeClass(AA.Config.classNames['hide']);

					self.managementButtonNext();

				}

				var url = contextPath_js + "/schade/include/errorMessageSchade.jsp?msg="+text;

				var options = {
						url : url,
						success : completed
				};

				$.ajax( options );

			},
			checkLocation:  function(){

				if(!$('#idFlagLocation_S').length)return;

				if ($('#idFlagLocation_S').attr('checked')==true)
					$('#sm_validationerrors').addClass(AA.Config.classNames['hide']);
					self.managementButtonNext();
			},

			init: function(){
				self.form = $('#processSMForm');
				if (!self.form) return;

				if ($('#idNumThirdPartie').length)
					$('#idNumThirdPartie').unbind('change').change(function(){self.openDivThirdParties($('#idNumThirdPartie'))});

				if ($('#idFlagDriver_S').length)$('#idFlagDriver_S').unbind('click').click( function(){self.openDivAnagDriver($('#idFlagDriver_S'))} );
				if ($('#idFlagDriver_N').length)$('#idFlagDriver_N').unbind('click').click( function(){self.openDivAnagDriver($('#idFlagDriver_N'))} );
				if ($('#idFlagDriver_X').length)$('#idFlagDriver_X').unbind('click').click( function(){self.openDivAnagDriver($('#idFlagDriver_X'))} );

				if ($('#idFlagExactTime_S').length)$('#idFlagExactTime_S').unbind('click').click( function(){self.openDivEndTime($('#idFlagExactTime_S'))} );
				if ($('#idFlagExactTime_N').length)$('#idFlagExactTime_N').unbind('click').click( function(){self.openDivEndTime($('#idFlagExactTime_N'))} );

				if ($('#idStartDateDay').length)$('#idStartDateDay').unbind('blur').blur( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idStartDateMonth').length)$('#idStartDateMonth').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idStartDateYear').length)$('#idStartDateYear').unbind('blur').blur( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idStartTimeHourOfDay').length)$('#idStartTimeHourOfDay').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idStartTimeMinute').length)$('#idStartTimeMinute').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idEndDateDay').length)$('#idEndDateDay').unbind('blur').blur( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idEndDateMonth').length)$('#idEndDateMonth').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idEndDateYear').length)$('#idEndDateYear').unbind('blur').blur( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idEndTimeHourOfDay').length)$('#idEndTimeHourOfDay').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );
				if ($('#idEndTimeMinute').length)$('#idEndTimeMinute').unbind('change').change( function(){self.submitAndCheckPolicyDate()} );

				if ($('#idFlagLocation_S').length)$('#idFlagLocation_S').unbind('click').click( function(){self.checkLocation()} );
				if ($('#idFlagLocation_N').length)$('#idFlagLocation_N').unbind('click').click( function(){self.checkLocation()} );

				self.form.find('input.edition_display').each(function(index,el) {
					$(el).unbind('click').click( function(ev){self.getGuaranties(ev,$(el))} );
				});

				if($('#idCodeTypeDamage').attr('value')=="01"){

					self.form.find('input.classRadioControl').each(function(index,el){
						$(el).unbind('click').click( function(){self.checkCasualtiesOwnCar($(el))} );
					});
					self.form.find('input.radioThirdParties').each(function(index,el){
						 $(el).unbind('click').click( function(){self.openDivThirdParties($(el))} );
					});

					self.form.find('input.flagAnag').each(function(index,el){
						 $(el).click( function(){self.openDivDataThirdPartie($(el))} );
					});
				}

				self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,el)} );
				});

				if($('#sm_validationerrors').hasClass(AA.Config.classNames['hide'])==true)
				{
					self.checkPolicyDate();
					self.checkLocation();
					self.managementMessage();
				}

				self.managementButtonNext();

				//Suggerimenti
				if ($('#streetName').length){
					AA.Utils.textSuggest.initialize(
							{
								textObj: 'streetName',
								suggestList: aSuggest
							});
				}
				//new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});


			}

		});
		$.extend( AA.States , {schadedetailclaim: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {

			openDivWitnesses: function(){
				self.form.find('tr.selectWitnesse').each(function(index,el){
					$(el).remove();
					}
				);


				if ($('#idNumWitnesse').attr('value')<1 || $('#idNumWitnesse').attr('value')>4 || $('#idRadioWitnesses').attr('checked')==false) return;

				var completed = function(response) {
					if(!response)return false;

					self.tmpDiv = $('<div></div>');
					self.tmpDiv.html(response);

					self.tmpDiv.find('tr.selectWitnesse').each(function(index,el){
						$(el).insertBefore($('#idAfterRowWitnesse'));
					});

					self.form.find('input.checkAddr').each(function(index,el){
						$(el).blur( function(){self.searchAddressData(self,el)} );
					});
				};

				var params = "?numWitnesse="+$('#idNumWitnesse').attr('value');
				var url = AA.Utils.updateFormAction( contextPath_js+'/schade/include/witnesseGeneral.jsp' , null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			searchAddressData: function(ev,el){
				var id=($(el).attr('id')).split("_")[1];
				if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
					AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);
			},
			init:function(){

				self.form = $('#processSMForm');
				if (!self.form) return;

				$('#idNumWitnesse').unbind('change').change( function(){self.openDivWitnesses()} );

				self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,el)} );
				});

				self.form.find('input.radioWitnesses').each(function(index,el){
					$(el).unbind('click').click( function(){self.openDivWitnesses()} );
				});

//				new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

			 }

		});
		$.extend( AA.States , {schadedescsituation: self});

	})(jQuery);




	(function($){

	var self = {};
	$.extend( self, {

		openDivAnagDriver: function ( object ) {				/* open a personData section */

			radio = object;

			self.form.find('tr.anagDriver2').each(function(index,el){
				if (radio.attr('value')=="S"){
					$(el).addClass(AA.Config.classNames['hide']);
				}else{
					$(el).removeClass(AA.Config.classNames['hide']);
				}
			});
			self.form.find('tr.nameDriver').each(function(index,el){
				if (radio.attr('value')=="S"){
					$(el).removeClass(AA.Config.classNames['hide']);
					$(el).addClass(AA.Config.classNames['show']);
				}else{
					$(el).addClass(AA.Config.classNames['hide']);
					$(el).removeClass(AA.Config.classNames['show']);
				}
			});
			self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,el)} );
			});

		},

		searchAddressData: function(ev,el) {

			var id=($(el).attr('id')).split("_")[1];
			   if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
				   AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);

		},

		init:function() {

			self.form = $('#processSMForm');
			if (!self.form.length) return;

//			new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

	        $('#idflagInjuredPersonAsDriver_S').unbind('click').click( function(){self.openDivAnagDriver($('#idflagInjuredPersonAsDriver_S'))} );
			$('#idflagInjuredPersonAsDriver_N').unbind('click').click( function(){self.openDivAnagDriver($('#idflagInjuredPersonAsDriver_N'))} );

			self.form.find('input.checkAddr').each(function(index,el){
				$(el).blur( function(){self.searchAddressData(self,el)} );
			});
		}

	});
	$.extend( AA.States , {schadebodilyinjuryown: self});

})(jQuery);

	(function($){

		var self = {};
		$.extend( self, {

			manageCheckBox : function ( checkBox ) {

				var object = checkBox;

				if ( ($(object).attr('class')) != 'CheckBox' )
					object = object.find('input.CheckBox')[0];

				var tmpChildNodes = ($(object).parent()).children();

				if ( ($(object).attr('checked') ) == true ) {
					for(var i = 0; i < tmpChildNodes.length; i++) {
						if (tmpChildNodes[i].type=="hidden"){
							tmpChildNodes[i].value="S";
							if (tmpChildNodes[i].className!=""){
								$(object.parent()).addClass('selectionCheckbox');
								self.openDetailsDamage(tmpChildNodes[i].className);
							}
						}
					}
				} else {
					for(var i = 0; i < tmpChildNodes.length; i++) {
						if (tmpChildNodes[i].type=="hidden"){
							tmpChildNodes[i].value="N";
							if (tmpChildNodes[i].className!=""){
								$(object.parent()).removeClass('selectionCheckbox');
								self.closeDetailsDamage(tmpChildNodes[i].className);
							}
						}
					}
				}

			},

			openDetailsDamage:function(codDamage){

				var completed = function(response) {

					if(!response)return false;

					self.tmpDiv = $('<div></div>');
					self.tmpDiv.html(response);

					if (self.form.find('div[class=labelList]')){
						self.tmpDiv.find('div.labelList').each(function(index,el){
								$(el).remove();
							}
						);
					}
					var st_class='tr.codDamage'+codDamage;

					self.tmpDiv.find(st_class).each(function(index,el){
						$(el).insertBefore($('#idAfterRowListDetailsDamage'));
						$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
						}
					);

				};
				var params = "?codDamage="+codDamage;
				var url = AA.Utils.updateFormAction( contextPath_js + "/schade/include/listDetailDamage.jsp" , null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			closeDetailsDamage:function(codDamage){

				var isLabel=false;
				var tmpDiv=null;
				self.form.find('tr.codDamage'+codDamage).each(function(index,el){
						$(el).remove();
						if ($(el).find('div[class=labelList]')){
							isLabel=true;
							tmpDiv =$(el).find('div[class=labelList]').clone(true,true);
						}
					}
				);

				if(isLabel){
					if( self.form.find( 'td.collLabel' ) )
						$(tmpDiv).appendTo( self.form.find( 'td.collLabel' ) );
				}

			},
			openImageDamage:function ( obj ) {

				var object = obj;

				var completed = function(response) {

						if(!response)return false;

						$('#Image').html(response);

						self.form.find('tr.detailsDamage').each(function(index,el){
								$(el).remove();
						});

						self.form.find('div.claimsCheckbox').each(function(index,el){
								$(el).removeClass('selectionCheckbox');
						});

						self.form.find('input.CheckBox').each(function(index,el){
							$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
						});

						self.form.find('input.CheckBox').each(function(index,el){
							$(el).attr('checked',false)
						});

				};


				var params = "?page=owner";
				var url = AA.Utils.updateFormAction( contextPath_js + "/schade/include/detailsDamage"+object.attr('value')+".jsp" , null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},
			openImageDamageOnLoad:function ( obj ) {

				var completed = function(response) {

					if(!response)return false;

					$('#Image').html(response);

					self.form.find('input.CheckBox').each(function(index,el){
						$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
					});

				};

				var params = "?page=owner";
				var url = AA.Utils.updateFormAction( contextPath_js + "/schade/include/detailsDamage"+obj.attr('value')+".jsp" , null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},
			init:function() {

				self.form = $('#processSMForm');

				if (!self.form.length) return;

				self.codTypeVehicle=$('#idCodTypeVehicle');

				if ( self.codTypeVehicle.length )
					self.openImageDamageOnLoad(self.codTypeVehicle);

//				new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

		  	 }
		});
		$.extend( AA.States , {schadedescdamageowner: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {

			openDivAnagDriver: function ( object ) {		/* open a personData section */

				radio = object ;

				self.form.find('tr.anagDriver2').each(function(index,el){
					if (radio.attr('value')=="S"){
						$(el).addClass(AA.Config.classNames['hide']);
					}else{
						$(el).removeClass(AA.Config.classNames['hide']);
					}
				});
				self.form.find('tr.nameDriver').each(function(index,el){
					if (radio.attr('value')=="S"){
						$(el).removeClass(AA.Config.classNames['hide']);
						$(el).addClass(AA.Config.classNames['show']);
					}else{
						$(el).addClass(AA.Config.classNames['hide']);
						$(el).removeClass(AA.Config.classNames['show']);
					}
				});

				self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,$(el))} );
				});

			},

			searchAddressData: function(ev,el){
				var id=($(el).attr("id")).split("_")[1];
				if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
					AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);
			},

			init:function() {

				self.form = $('#processSMForm');

				if (!self.form.length) return;

//				new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

				$('#idflagPerson1AsDriver_S').unbind('click').click( function(){self.openDivAnagDriver($('#idflagPerson1AsDriver_S'))} );
				$('#idflagPerson1AsDriver_N').unbind('click').click( function(){self.openDivAnagDriver($('#idflagPerson1AsDriver_N'))} );

				self.form.find('input.checkAddr').each ( function(index,el) {
					$(el).blur( function(){self.searchAddressData(self,el)} );
				});

			}

		});
		$.extend( AA.States , {schadebodilyinjuryownpassengers: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {


			manageCheckBox:function ( checkBox ) {

				var object = checkBox;

				if ( ($(object).attr('class')) != 'CheckBox' )
					object = object.find('input.CheckBox')[0];

				var tmpChildNodes = ($(object).parent()).children();

				if ( ($(object).attr('checked') ) == true ) {

					for(var i = 0; i < tmpChildNodes.length; i++) {
						if (tmpChildNodes[i].type=="hidden"){
							tmpChildNodes[i].value="S";
							if (tmpChildNodes[i].className!=""){
								$(object.parent()).addClass('selectionCheckbox');
								self.openDetailsDamage(tmpChildNodes[i].className);
							}
						}
					}

				} else {

					for(var i = 0; i < tmpChildNodes.length; i++) {
						if (tmpChildNodes[i].type=="hidden"){
							tmpChildNodes[i].value="N";
							if (tmpChildNodes[i].className!=""){
								$(object.parent()).removeClass('selectionCheckbox');
								self.closeDetailsDamage(tmpChildNodes[i].className);
							}
						}
					}

				}
			},

			openDetailsDamage:function ( codDamage ) {

				var completed = function ( response ) {
					if ( !response ) return false;

					self.tmpDiv = $('<div></div>')
					self.tmpDiv.html(response);

					if (self.form.find('div[class=labelList]')){
						self.tmpDiv.find('div.labelList').each(function(index,el){
								$(el).remove();
							}
						);
					}

					var st_class='tr.codDamage'+codDamage;
					self.tmpDiv.find(st_class).each(function(index,el){
						$(el).insertBefore($('#idAfterRowListDetailsDamage'));
						$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
					});

				};

				var params = "?codDamage="+codDamage;
				var url = AA.Utils.updateFormAction( contextPath_js + "/schade/include/listDetailDamage.jsp", null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			closeDetailsDamage:function(codDamage){

				var isLabel=false;
				var tmpDiv=null;
				self.form.find('tr.codDamage'+codDamage).each(function(index,el){
					$(el).remove();
					if ($(el).find('div[class=labelList]')){
						isLabel=true;
						tmpDiv =$(el).find('div[class=labelList]').clone(true,true);
					}
				});

				if(isLabel){
					if( self.form.find( 'td.collLabel' ) )
						tmpDiv.appendTo( self.form.find( 'td.collLabel' ) );
				}

			},

			openImageDamage:function ( obj ) {

				var object = obj;

				if ( object.attr('value') == '2299' ) {			/* if 'others' vehicle is selected an empty image is visualized */

					$('#Image').html('');

					self.form.find('tr.detailsDamage').each(function(index,el){
							$(el).remove();
					});

					$('#descDamageImage').attr('height','220px');
					$('#descDamageImage').attr('width','180px');

				   	return;

				}

				var completed = function(response) {			/* insert image in the div and attach all events on the checkbox */

						if(!response)return false;

						$('#Image').html(response);
						self.form.find('tr.detailsDamage').each(function(index,el){
							$(el).remove();
						});
						self.form.find('div.claimsCheckbox').each(function(index,el){
							$(el).removeClass('selectionCheckbox');
						});
						self.form.find('input.CheckBox').each(function(index,el){
							$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
						});
						self.form.find('input.CheckBox').each(function(index,el){
							$(el).attr('checked',false);
						});

					};

				var params = "?page=thirdPartie";
				var url = AA.Utils.updateFormAction(  contextPath_js + "/schade/include/detailsDamage"+object.attr('value').substring(2)+".jsp", null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},
			openImageDamageOnLoad:function ( obj ) {		/* insert the image at the entering on the page */

				if ( obj.attr('value') == '2299' ) {

					$('#Image').html('');

					self.form.find('tr.detailsDamage').each(function(index,el){
							$(el).remove();
					});

					$('#descDamageImage').attr('height','220px');
					$('#descDamageImage').attr('width','180px');

			   	    return;
				}

				var completed = function(response) {
					if(!response)return false;

					$('#Image').html(response);

					self.form.find('input.CheckBox').each(function(index,el){
						$(el).unbind('click').click( function(){self.manageCheckBox($(el))} );
					});
				};

				var params = "?page=thirdPartie";
				var url = AA.Utils.updateFormAction(  contextPath_js + "/schade/include/detailsDamage"+obj.attr('value').substring(2)+".jsp", null , params , false );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			init:function() {

				self.form = $('#processSMForm');
				self.codTypeVehicle=$('#idCodTypeVehicle');

				if (!self.form.length) return;

				if (self.codTypeVehicle.length){
					self.codTypeVehicle.unbind('change').change( function(){self.openImageDamage(self.codTypeVehicle)});
					self.openImageDamageOnLoad(self.codTypeVehicle);
				}
//				new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

		  	 }
		});
		$.extend( AA.States , {schadedescdamagethirdpart: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {

			openDivAnagDriver: function ( object ) {				/* open a personData section */

				radio = object;

				self.form.find('tr.anagDriver2').each(function(index,el){
					if (radio.attr('value')=="S")
						$(el).addClass(AA.Config.classNames['hide']);
					else
						$(el).removeClass(AA.Config.classNames['hide']);
				});

				self.form.find('tr.nameDriver').each(function(index,el){
					if (radio.attr('value')=="S"){
					    $(el).removeClass(AA.Config.classNames['hide']);
						$(el).addClass(AA.Config.classNames['show']);
					} else {
					    $(el).addClass(AA.Config.classNames['hide']);
						$(el).removeClass(AA.Config.classNames['show']);
					}
				});
				self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,$(el))} );
				});

			},

		   	searchAddressData: function(ev,el){				/* postcode management */
				var id = ($(el).attr('id')).split("_")[1];
				if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
					AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);
			},

			init:function(){
				self.form = $('#processSMForm');
				if (!self.form.length) return;

//		        new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

		        $('#idflagInjuredPersonAsDriverTP_S').unbind('click').click( function(){self.openDivAnagDriver($('#idflagInjuredPersonAsDriverTP_S'))} );
				$('#idflagInjuredPersonAsDriverTP_N').unbind('click').click( function(){self.openDivAnagDriver($('#idflagInjuredPersonAsDriverTP_N'))} );

				self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,$(el) )} );
				});
		  	 }
		});
		$.extend( AA.States , {schadebodilyinjurythirdpart: self});

	})(jQuery);

	(function($){

		var self = {};
		$.extend( self, {

			openDivAnagDriver: function(object){
			radio=object;

			self.form.find('tr.anagDriver2').each(function(index,el){
				if (radio.attr('value')=="S")
					$(el).addClass(AA.Config.classNames['hide']);
				else
					$(el).removeClass(AA.Config.classNames['hide']);
			});

			self.form.find('tr.nameDriver').each(function(index,el){
				if (radio.attr('value')=="S"){
				    $(el).removeClass(AA.Config.classNames['hide']);
					$(el).addClass(AA.Config.classNames['show']);
				} else {
				    $(el).addClass(AA.Config.classNames['hide']);
					$(el).removeClass(AA.Config.classNames['show']);
				}
			});

			self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,el)} );
			});

		},

			searchAddressData: function(ev,el){
				var id=($(el).attr("id")).split("_")[1];
				if($('#postCodeField_'+id).attr('value')!="" &&  $('#streetNumberField_'+id).attr('value')!="")
				AA.Utils.ajaxSearchAddress('#postCodeField_'+id,'#streetNumberField_'+id,'#streetNameField_'+id,'#suburbField_'+id);
			},

			init:function() {

				self.form = $('#processSMForm');

				if (!self.form.length) return;

//		        new window.textAreaControl({'allTextArea':true,'conteiner':self.form,'maxLenght':'255'});

		        $('#idflagPerson1AsDriverTP_S').unbind('click').click( function(){self.openDivAnagDriver($('#idflagPerson1AsDriverTP_S'))} );
		        $('#idflagPerson1AsDriverTP_N').unbind('click').click( function(){self.openDivAnagDriver($('#idflagPerson1AsDriverTP_N'))} );

		        self.form.find('input.checkAddr').each(function(index,el){
					$(el).blur( function(){self.searchAddressData(self,el)} );
				});
			}

		});
		$.extend( AA.States , {schadebodilyinjurythirdpartpassengers: self});

	})(jQuery);


// --- SCHADE REPAIR SHOP  -----------------------------------------------------------------

	(function($){

		var self = {};
		$.extend( self, {

			searchListRepairShop: function() {			/* search of the repair shop that correspond to the inserted address */

//			if(ev)(new Event(ev)).stop();

				if ( (self.newPostCode.attr('value'))=="" || (self.newPostCode.attr('value').toLowerCase() == self.oldPostCode.toLowerCase())) return;

				self.oldPostCode = self.newPostCode.attr('value');

				self.form.find('tr.selectRepairShop').each(function(index,el){
					$(el).remove();
				});

				var completed = function(response) {

					if(!response)return false;

					try {
						if (response.code.trim()!=''){
							if (response.code="invalidPostcode"){
								self.newPostCode.addClass(AA.Config.classNames['errorField']);
							}
						}
					} catch(e) {
						self.newPostCode.removeClass(AA.Config.classNames['errorField']);
						self.tmpDiv = $('<div></div>');
						self.tmpDiv.html(response);

						self.tmpDiv.find('tr.selectRepairShop').each(function(index,el){
							$(el).insertBefore($('#idAfterRowListRepairShop'));
							}
						);
				    }
				};


				var params = "&postCode="+$('#idPostCode').attr('value');
				var url = AA.Utils.updateFormAction(  contextPath_action +"/processSchade", 'searchListRepairSchop' , params , true );

				var options = {
						url : url,
						success : completed,
						type : 'post',
						error : AA.Utils.onFailureAjax
					};

				$.ajax( options );

			},

			repairShopManagement : function ( obj ) {	/* management of three radio buttons where you can choose the repair shop */

				radio = obj;

				self.form.find("tr.partRepairShop,table.partRepairShop").each(
					function(index,el){
						if (radio.attr('value')!="00"){
							$(el).addClass(AA.Config.classNames['hide']);
						}else{
							$(el).removeClass(AA.Config.classNames['hide']);
						}
					}
				);

				self.form.find("tr.otherRapair,table.otherRapair").each(
					function(index,el){
						if (radio.attr('value')!="01"){
							$(el).addClass(AA.Config.classNames['hide']);
						}else{
							$(el).removeClass(AA.Config.classNames['hide']);
						}

					}
				);
			},

			searchAddressData: function(){
				if($('#postCodeField').attr('value')!="" &&  $('#civicNumberField').attr('value')!="")
					AA.Utils.ajaxSearchAddress('#postCodeField','#civicNumberField','#addressField','#localityDescField');
			},

			init: function() {

				self.oldPostCode = '';
				self.form = $('#processSMForm');

				if (!self.form.length) return;

				self.newPostCode  = $('#idPostCode');

				self.form.find("input.idCodTypeRepair").each(function(index,el) {

					$(el).unbind('click').click( function(){self.repairShopManagement($(el))} );

					if ($(el).attr('checked')==true && $(el).attr('value')=="00"){
						if ( self.newPostCode.length && self.newPostCode.attr('value')!="" )
							self.searchListRepairShop();
					}

				});

				$('#postCodeField').unbind('blur').blur( function() { self.searchAddressData() } );
				$('#civicNumberField').unbind('blur').blur( function() { self.searchAddressData() } );
				$('#zoekenSubmit').unbind('click').click( function() { self.searchListRepairShop() } );

			}
		});
		$.extend( AA.States , {schaderepairshop: self});

	})(jQuery);

	(function($){

		var self = {};
		$.extend( self, {

			getGuaranties: function ( obj ){

				object = obj ;

				var completed = function(response) {

					try {
						try {
							if(response.indexOf("###OK###")!=-1)
								response=response.replace("###OK###","");

						} catch ( e ) { }

						var tmpDiv = $('<div></div>');
						tmpDiv.html(response);

						var actualPage = $( '#processSMForm' );

						tmpDiv.find('form').each(function(index,item) {
							if ($(item).attr('id') == 'processSMForm') {
								$(actualPage).html($(item).html());
								$(actualPage).attr('action', $(item).attr('action'));
							}
						});

						self.init();

					} catch ( e ) { }

				};


				var contractNumber = '';
				if(object.target) {
					contractNumber = object.target.value;
				} else {
					contractNumber = object[0].value;
				}


			    var url = AA.Utils.updateFormAction( self.form , 'getGuaranties' , '&contractNumber='+ contractNumber, false );

			    AA.Utils.resetFormAction  (self.form, url );
			 	AA.Utils.submitForm(self.form, object, completed);

			},
			closediv: function (el){
				el.addClass(AA.Config.classNames['hide']);
			},
			opendiv: function (el){
				el.removeClass(AA.Config.classNames['hide']);
			},

			init:function(){

				self.form = $('#processSMForm');
				if (!self.form.length) return;

				self.form.find('input.edition_display').each(function(index,el){
						$(el).unbind('click').click( function(){self.getGuaranties($(el))} );
				});

				$("#closerMsgPC1").unbind('click').click(function(){self.closediv($("#divMsg1"))});
				$("#closerMsgPC2").unbind('click').click(function(){self.closediv($("#divMsg2"))});
				$("#openMsg1").unbind('click').click(function(){self.opendiv($("#divMsg1"))});
				$("#openMsg2").unbind('click').click(function(){self.opendiv($("#divMsg2"))});

	      	 }
		});
		$.extend( AA.States , {schadecurrentannualpremium: self});

	})(jQuery);

//New Annual Premium

	(function($){

		var self = {};
		$.extend( self, {

			closediv: function ( el ) {
				el.msg.addClass(AA.Config.classNames['hide']);
				el.close.addClass(AA.Config.classNames['hide']);
			},
			opendiv: function ( el ) {
				el.msg.removeClass(AA.Config.classNames['hide']);
				el.close.removeClass(AA.Config.classNames['hide']);
			},

			init:function() {


				self.form = $('#processSMForm');

				if (!self.form.length) return;

				$("#closeMsg2").unbind('click').click( function(){self.closediv({msg:$("#divMsg2"),close:$('closeMsg2')}) });
				$("#closeMsg3").unbind('click').click( function(){self.closediv({msg:$("#divMsg3"),close:$('closeMsg3')}) });
				$("#openMsg2").unbind('click').click( function(){self.opendiv({msg:$("#divMsg2"),close:$('closeMsg2')}) });
				$("#openMsg3").unbind('click').click( function(){self.opendiv({msg:$("#divMsg3"),close:$('closeMsg3')}) });

	      	 }
		});
		$.extend( AA.States , {schadenewannualpremium: self});

	})(jQuery);


	(function($){

		var self = {};
		$.extend( self, {

			link:function(ev){
//				new Event(ev).stop();
				var url = AA.Utils.updateFormAction( self.form, 'forwardMijnAccount' ,null , false) ;
				AA.Utils.resetFormAction  (self.form, url );
				self.form.submit();
			},

			init:function(){
			    self.form = $('#processSMForm');
			    self.goMyAccountDialogue=$('#goMyAccountDialogue');

		        if(!self.goMyAccountDialogue.length)return;
		        self.goMyAccountDialogue.unbind('click').click( function(){self.link(self.goMyAccountDialogue)});
		  	 }
		});
		$.extend( AA.States , {schadecompleted: self});

	})(jQuery);


