Ext.QuickTips.init();

Ext.override(Ext.form.Checkbox, {
	validateme: function(){
		var myElements = Ext.select('input[name='+ this.name +']').elements;
	
		for(var i=0;i<myElements.length;i++){
			if(Ext.getCmp(myElements[i].id).checked){
				return true;
			}
		}
		
		return false;
	}
});

Ext.override(Ext.form.Radio, {
	validateme: function(){
		var myElements = Ext.select('input[name='+ this.name +']').elements;
		
		for(var i=0;i<myElements.length;i++){
			if(Ext.getCmp(myElements[i].id).checked){
				return true;
			}
		}
		
		
		return false;
	}
});

/*
function writeHiddenFieldAvatar(p){
	console.log(p);
	//Ext.getCmp("avatarfilename").setValue(Ext.getCmp("avatarimg").getValue());
	return true;
}
*/

var raffleForm;
var win;
var sCls;
sCls = '';
function doRaffleDetail(pId,pCid, showinlayer){

	var nAttempts = 1;
	
	if(win){
		win.destroy();		
	}

	if(showinlayer == undefined) showinlayer = 1;

	//checkVtypes();
	
	if(showinlayer) {
		win = new Ext.Window({
			renderTo	: Ext.getBody(),
			resizable	: false,
			draggable	: true,
			title 		: '<a class="closebutton" style="cursor:pointer" onclick="getWebtrekkCodingForRaffles(' + pId + ','+ pCid +',\'abb\');win.destroy();"><span class="flr">'+getLanguageText('teasers.popup.windowclose')+'</span></a>',
			width       : 810,				
			closable	: false,
	        //height      : 480,
	        closeAction : 'hide',
	        plain       : true,
	        modal		: true,
	        border		: false,
	        //bodyStyle	: 'padding:10px;',
	        cls			: 'rafflepopup ' + sCls,
	        items: [
	        {                	
	        	xtype: 'panel',
	 			border: false,
	 			cls: 'mt10',
	 			html:'<div id="raffle_div"><!--leer--></div>'
	 			, listeners: {
	 				render: function(){
	 			
	 				}
	 			} 
	 					
	        }
	 		/*
	 		,{
	 			xtype: 'panel',
	 			border: false,
	 			cls: 'mt10',
	 			html: '<div class="form-buttons" style="padding-left:202px;"><div class="btn-3 fll" style="margin-right:10px;"><a href="javascript:void(0);" onclick="win.close();"><span>'+getLanguageText('defaults.cancel')+'</span></a></div>'
	 				+ '<div class="btn-3 fll"><a href="javascript:void(0);" onclick=""><span>'+getLanguageText('defaults.save')+'</span></a></div></div>'
	 		}
	 		*/
	 		]
	    });
		win.center();
		var tmpPos = win.getPosition();
		win.setPosition(tmpPos[0],tmpPos[1]-200);
		win.show();
		
	}


	rafflestore = new Ext.data.JsonStore({
		 url: '/index.cfm?event=ajax.raffles.getdetail&pk='+pId,
		 autoLoad: true,
		 root: 'DATA',
		 fields: ['DATA'],
		 listeners: {
		 	load: function(pThisStore, pRecords){

		 			template = new Ext.XTemplate(		 				
		 				'<div style="float:left;clear:both;">'+
		 				'<div class="doc_abstract">{ABSTRACT}</div>'+		 				
		 				'<div class="doc_content" style="padding:0px 0px 0px 0px;">{DOCUMENTCONTENT}</div>'+
		 				'<div id="raffle_questions"><!--ext--></div>'+
		 				'<div id="raffle_form"><div class="raffleimg"></div><div class="rafflebanner">{BANNERCODE}</div><!--ext--></div>'+
		 				'</div>'
					);

		 			template.overwrite('raffle_div',pThisStore.reader.jsonData.DATA[0]);
		 			
					cData = pThisStore.reader.jsonData.DATA[0];
							
					
					raffleForm = new Ext.FormPanel({
						renderTo: 'raffle_form',
						frame: true,
						autoWidth: true,
						labelWidth: 168,
						/*id: 'draffleForm',*/
						formId: 'raffleForm',
						url: '/index.cfm?event=ajax.raffles.save',
						fileUpload: true,						
						items: [						
						{
							xtype: 'hidden',
							name: 'raffleid',
							id: 'raffleid',
							value: pId 
						}						
						],
					
						
						key: {
							key: [10, 13],
							fn: function(){
								raffleForm.doSubmit();
							}
						},
						// Submit:
						doSubmit: function(){
							if (raffleForm.validate()) {
								
								if(document.getElementById('phone')) {
									document.getElementById('phone').value = document.getElementById('phone1').value;									
								}
									
									
								raffleForm.getForm().submit({
									success: function(pForm, pAction){										
										showSuccess(pId, pCid, showinlayer);

									},
									failure: function(pForm, pAction){
										nAttempts++;
										getWebtrekkCodingForRaffles(pId,pCid,'form',nAttempts);
										
										if(pAction.result){
											if(pAction.result.successnumber == 1){
												Ext.MessageBox.alert(getLanguageText('defaults.error'),getLanguageText('defaults.save.error')+'<br>'+getLanguageText('pages.contact.error.captcha'));
											}
											
											if(pAction.result.successnumber == 2){
												Ext.MessageBox.alert(getLanguageText('defaults.error'),getLanguageText('defaults.save.error')+'<br>'+getLanguageText('pages.contact.error.sendmail'));
											}
										}else{
											Ext.MessageBox.alert(getLanguageText('defaults.error'),getLanguageText('defaults.save.error')+'<br>'+getLanguageText('pages.error.requiredfields'));
										}
										//Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('defaults.save.error'));
									}
								});
							}
							else{
								nAttempts++;
								getWebtrekkCodingForRaffles(pId,pCid,'form',nAttempts);
							}
						}
						,
						doAbort: function(){
							getWebtrekkCodingForRaffles(pId,pCid,'abb');
							win.destroy();
						}
						,
						// Validierung:
						validate: function(){
							
							if(Ext.getCmp('agreementterms1')){
								if (Ext.getCmp('agreementterms1').allowBlank == 0 && !Ext.getCmp('agreementterms1').getValue()) {
									Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.raffles.error.agreementterms'));
									return false;
								}
							}
							
							if(Ext.getCmp('agreementterms2')){								
								if (Ext.getCmp('agreementterms2').allowBlank == 0 && !Ext.getCmp('agreementterms2').getValue()) {
									Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.raffles.error.agreementterms'));
									return false;
								}
							}
							
							if(Ext.getCmp('agreementterms3')){
								if (Ext.getCmp('agreementterms3').allowBlank == 0 && !Ext.getCmp('agreementterms3').getValue()) {
									Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.raffles.error.agreementterms'));
									return false;
								}
							}						
							
							var aRadios = Ext.get('raffle_div').select('input[type=radio]').elements;
							for(i=0;i<aRadios.length;i++){
							    if(! Ext.getCmp(aRadios[i].id).validateme()){
							    	Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.raffles.error.checkminimum_error'));
							    	return false;
							    }
							}
							
							var aCheckboxes = Ext.get('raffle_div').select('input[type=checkbox]').elements;
							for(i=0;i<aCheckboxes.length;i++){
							    if(aCheckboxes[i].id != 'agreementterms1' && aCheckboxes[i].id != 'agreementterms2' && aCheckboxes[i].id != 'agreementterms3' && ! Ext.getCmp(aCheckboxes[i].id).validateme()){
							    	Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.raffles.error.checkminimum_error'));
							    	return false;
							    }
							}
							
							var aTextfields = Ext.get('raffle_div').select('input[type=text]').elements;
							for(i=0;i<aTextfields.length;i++){							    
							    if(! Ext.getCmp(aTextfields[i].id).isValid()){
							    	Ext.MessageBox.alert(getLanguageText('defaults.error'), getLanguageText('pages.error.requiredfields'));
							    	return false;
							    }
							}
				
							
							return true;
						},						
						showError: function(fieldName, Msg){
							Ext.MessageBox.alert(getLanguageText('defaults.error'), Msg, function(){
								repeaterForm.getForm().findField(fieldName).focus();
							});
						}
						
					});
					
					
					dmy = new Ext.Panel({						
						html: '<div class="question_topline clearfix"><h2 class="headline">'+ cData.TOPLINE +	'</h2></div>'							
					});
					raffleForm.add(dmy);
					
					var qfields = new Array();
					
					var aQFields = cData.QUESTIONS;
					
					for(i=0;i<aQFields.length;i++){
						cQField = aQFields[i];
						
						dmy = new Ext.Panel({						
							html: '<div class="headline clearfix"> <h1>'+ cQField.TOPLINE +	'</h1>'+
								'<h3>' + cQField.IDENTIFIER + '</h3> </div>'								
						});
						
						dmy.addClass('question');
						raffleForm.add(dmy);
												
						var afields = new Array();
						
						var aAFields = cQField.ANSWERS;					
											
						
						if(cQField.TYPE == 5 || cQField.TYPE == 6){
						
							var FieldClass = (cQField.TYPE==5)?Ext.form.Radio:(cQField.TYPE==6)?Ext.form.Checkbox:Ext.emptyFn;
							var fields = new Array();
							var fieldsitems = new Array();
							
							var abc = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
							
							
							
							/* alle antworten mit bild anzeigen? */
							var bAllAnswerImages = true;
							for (var x = 0; x < aAFields.length; x++) {
								if(!(aAFields[x].SHOWIMAGE && aAFields[x].IMGPATH)) {
									bAllAnswerImages = false;
								}
							}
							for (var x = 0; x < aAFields.length; x++) {
															
								var tmpField = new FieldClass({
									boxLabel: '<img class="img" src="' + aAFields[x].IMGPATH + '" alt="' + aAFields[x].IDENTIFIER + '" title="' + aAFields[x].IDENTIFIER + '" />' + aAFields[x].IDENTIFIER +
									((aAFields[x].SHOWIMAGE && aAFields[x].IMGPATH) ? '<strong>' + abc.substr(x, 1) + ')</strong>&nbsp;' : ''),
									name: 'question_'+ cQField.PK,
									id: 'question_' + x + '_'+ cQField.PK,
									ctCls: 'img_box',
									inputValue: aAFields[x].PK,
									listeners: {
										render: function(){
											var sId = 'intro_answer_' + this.name.split('_')[1] + '_' + this.inputValue;
											
											if(Ext.get(sId) && Ext.get(sId).dom.checked){
												this.setValue(true);
											}
										}
									}
								});
								
								
								fieldsitems.push({
												xtype: 'panel',
												columnWidth: .20,
												border: false,
												items: tmpField
											})
								
								
								
								
							}
							fields.push({
								xtype: 'panel',
								layout: 'column',
								border: false,								
								items: fieldsitems
							})
							
							
							var dmy = new Ext.Panel({
								//renderTo: this.renderTo,
								id: 'questionform_' + cQField.PK,
								border: false,
								cls: 'img_questionlist', 
								items: fields,
								defaults: {
									hideLabel: true
								}
							});
							
							
							
							//dmy.addClass('answer');
							raffleForm.add(dmy);
							//raffleForm.render();
							
						}						
						else{
							for(j=0;j<aAFields.length;j++){
								cAField = aAFields[j];
								
								switch(cQField.TYPE){
									case 1:										
										afields[cAField.PK] = new Ext.form.Radio({
											fieldLabel: '',
											labelSeparator: '',
											boxLabel: cAField.IDENTIFIER,
											name: 'question_'+ cQField.PK,
											id: 'question_' + j + '_'+ cQField.PK,
											labelStyle: '',
											inputValue: ''+ cAField.PK,
											tabIndex: 15,	
											itemCls: 'answer',
											hideLabel: true,
											listeners: {
												render: function(){
													var sId = 'intro_answer_' + this.name.split('_')[1] + '_' + this.inputValue;
													
													if(Ext.get(sId) && Ext.get(sId).dom.checked){
														this.setValue(true);
													}
												}
											} 
										});		
										//dmy.addClass('answer');
										raffleForm.add(afields[cAField.PK]);
																				
										break;
									case 2:
										afields[cAField.PK] = new Ext.form.Checkbox({
											fieldLabel: '',
											labelSeparator: '',
											boxLabel: cAField.IDENTIFIER,
											name: 'question_'+ cQField.PK,
											id: 'question_' + j + '_'+ cQField.PK,
											labelStyle: '',
											inputValue: ''+ cAField.PK,
											itemCls: 'answer',
											tabIndex: 15,			
											hideLabel: true,
											listeners: {
												render: function(){
													var sId = 'intro_answer_' + this.name.split('_')[1] + '_' + this.inputValue;
													
													if(Ext.get(sId) && Ext.get(sId).dom.checked){
														this.setValue(true);
													}
												}
											}
										});		
										//dmy.addClass('answer');
										raffleForm.add(afields[cAField.PK]);
										break;
									case 3:
										
										afields[cAField.PK] = new Ext.form.TextField({						
											fieldLabel: getLanguageText('pages.raffles.labels.inputtext'),
											labelSeparator: '',
											name: 'input_question_'+ cQField.PK,
											id: 'input_question_'+ cQField.PK,
											width: '294px',
											height: '18px',
											itemCls: 'answer',
											style: 'display:block;',
											labelStyle: '',		
											ctCls: 'textfield',
											msgTarget: 'under',
											blankText: getLanguageText('defaults.requiredfield') + ' ' + getLanguageText('pages.raffles.error.inputtext'),
											allowBlank: false
										});
										//dmy.addClass('answer');
										raffleForm.add(afields[cAField.PK]);
										j=aAFields.length;
										break;
									case 4:
										
										var UploadItemHidden = new Ext.form.Hidden({
											name: 'filename_question_'+ cQField.PK,
											id: 'filename_question_'+ cQField.PK
										});
										
										var UploadItem = new Ext.form.TextField({
											name: 'upload_question_'+ cQField.PK,
											id: 'upload_question_'+ cQField.PK,
											allowBlank: true,
											itemCls: 'answer',
											inputType: 'file',
											hideLabel: true,
											value: '',
											//validator: writeHiddenFieldAvatar,
											validator: function(){
												var pk = this.id.split("_")[2];
												
												Ext.getCmp('filename_question_'+ pk).setValue(Ext.getCmp('upload_question_'+ pk).getValue());
												return true;
											},
											style: 'font-size:13px; text-align:right;',
											
											blankText: getLanguageText('defaults.requiredfield') + ' ' + getLanguageText('pages.raffles.error.filefield'),
											allowBlank: false,
											listeners: {
									    		render: function() {													
													var pk = this.id.split("_")[2];
													Ext.getCmp('upload_question_'+ pk).getEl().dom.setAttribute('size', 57);								
													Ext.getCmp('upload_question_'+ pk).defaultAutoCreate.size = 57;				
													}
											}	
										});
										//dmy.addClass('answer');

										raffleForm.add(UploadItemHidden);
										raffleForm.add(UploadItem);		
																	
										break;
									case 7:
										
										afields[cAField.PK] = new Ext.form.TextArea({						
											fieldLabel: getLanguageText('pages.raffles.labels.inputtext'),
											labelSeparator: '',
											name: 'input_question_'+ cQField.PK,
											id: 'input_question_'+ cQField.PK,
											width: '294px',
											height: '80px',
											style: 'display:block;',
											itemCls: 'answer',
											labelStyle: '',		
											ctCls: 'textfield',
											msgTarget: 'under',
											blankText: getLanguageText('defaults.requiredfield') + ' ' + getLanguageText('pages.raffles.error.inputtext'),
											allowBlank: false
										});
										//dmy.addClass('answer');
										raffleForm.add(afields[cAField.PK]);
										j=aAFields.length;
										break;
								}
								/* rendern, sonst Fehler beim uploadfield-listener*/
								//raffleForm.render();
							}
						}							
						
						dmy = new Ext.Panel({						
							html: '<div class="line clearfix"><!--- leer ---></div>'								
						});						
						raffleForm.add(dmy);				
					
					}
								
					dmy = new Ext.Panel({						
						html: '<div><!--- leer ---></div>'								
					});
					dmy.addClass('delimiter');
					raffleForm.add(dmy);	
					
					var fields = new Array();
					
					var aFields = cData.FIELDS;
					
					for(i=0;i<aFields.length;i++){
						cField = aFields[i];
						
						if(cField.REQUIRED){
							
							if(cField.NAME == "zipcode" || cField.NAME == "city" || cField.NAME == "street" || cField.NAME == "streetnumber"){
								if(cField.NAME == "zipcode"){
									
									var citydefault = '';
									
									/* get city default*/
									for(var y=0;y<aFields.length;y++){
										if(aFields[y].NAME == 'city'){
											citydefault = aFields[y].DEFAULT;
										}
									}
									
									if(cField.OPTIONAL == 0)
										sMand = '*';
									else
										sMand = '';
									
									dmy = new Ext.Panel({
										layout: 'column',
										border: false,										
										items: [{
											width:173,																						
											border: false,
											cls:'label-zip',	
											html: '<div class="x-form-item"><label style="text-align:right;" class="x-form-item-label">'+ sMand + getLanguageText('pages.raffles.labels.'+cField.NAME) + '</label></div>'
										},
										        
										{							
											width: 70,
											layout: 'form',
											border: false,
											items: [{
												xtype: 'textfield',
												width: 70,
												//height: 21,		
												allowBlank: cField.OPTIONAL,
												id: 'zipcode',
												validateOnBlur: true,
												msgTarget: 'qtip',
												hideLabel: true,
												labelStyle: 'text-align:right; padding-right:10px;'
											}]
										}, {
											width: 5,
											border: false,
											html: '&nbsp;'
										}, {
											width: 250,
											layout: 'form',
											border: false,
											items: [{
												xtype: 'textfield',
												width:226,
												//height: 21,		
												allowBlank: cField.OPTIONAL,
												id: 'city',
												validateOnBlur: true,
												msgTarget: 'qtip',
												hideLabel: true,												
												maxLength: 50
											}]
										}]
									});
									raffleForm.add(dmy);
									
									cField.DEFAULT = cField.DEFAULT + '';
									citydefault = citydefault + '';
									if(cField.DEFAULT.length)
										Ext.getCmp('zipcode').setValue(cField.DEFAULT);
									if(citydefault.length)
										Ext.getCmp('city').setValue(citydefault);
								}
								if(cField.NAME == "street"){
									
									var streetnumberdefault = '';
									
									/* get streetnumber default*/
									for(var y=0;y<aFields.length;y++){
										if(aFields[y].NAME == 'streetnumber'){
											streetnumberdefault = aFields[y].DEFAULT;
										}
									}
									
									if(cField.OPTIONAL == 0)
										sMand = '*';
									else
										sMand = '';
									
									dmy = new Ext.Panel({
										layout: 'column',
										border: false,
										items: [{
											width:173,
											border: false,
											cls:'label-street',	
											html: '<div class="x-form-item"><label style="text-align:right;" class="x-form-item-label">'+ sMand + getLanguageText('pages.raffles.labels.'+cField.NAME) + '</label>'
										},{							
											width: 231,
											layout: 'form',
											border: false,
											items: [{
												xtype: 'textfield',
												width: 226,
												//height: 21,		
												allowBlank: cField.OPTIONAL,
												id: 'street',
												validateOnBlur: true,
												msgTarget: 'qtip',
												hideLabel: true,												
												maxLength: 200
												
											}]
										}, {
											width: 5,
											border: false,
											html: '&nbsp;'
										}, {
											width: 70,
											layout: 'form',
											border: false,
											items: [{
												xtype: 'textfield',
												width:64,
												//height: 21,		
												allowBlank: cField.OPTIONAL,
												id: 'streetnumber',
												validateOnBlur: true,
												msgTarget: 'qtip',
												hideLabel: true,
												//cls: 'ml5',	
												bodyStyle:'margin-left: 5px',
												/*value:'spepsearch',*/
												maxLength: 50
											}]
										}]
									});
									raffleForm.add(dmy);
									
									cField.DEFAULT = cField.DEFAULT + '';
									streetnumberdefault = streetnumberdefault + '';
									if(cField.DEFAULT.length)
										Ext.getCmp('street').setValue(cField.DEFAULT);
									if(streetnumberdefault.length)
										Ext.getCmp('streetnumber').setValue(streetnumberdefault);
									
								}
								
								
							}else{
								if(cField.NAME == "fkcountries"){
									/*save country in global var*/
									var gl_default_country = 45;
									if(cField.DEFAULT > 0){
										gl_default_country = cField.DEFAULT;
									}
									
									registerCountriesStore = new Ext.data.JsonStore({
										url: '/index.cfm?event=ajax.getCountriesStore',
									    root: 'DATA',
									    totalProperty: 'TOTALCOUNT',
										autoLoad: true,
									    fields: ['PKCOUNTRIES', 'COUNTRY'],
										listeners: {
								    		load: function() {Ext.getCmp('country').setValue(gl_default_country);}
										}

									});
							
									if(cField.OPTIONAL == 0)
										sMand = '*';
									else
										sMand = '';
									
									dmy = new Ext.form.ComboBox({
										name: 'country',
										id: 'country',
										cls:'country_input',
										listClass:'country_list', 
							 			emptyText: getLanguageText('pages.raffles.labels.countrydd'),
										allowBlank: cField.OPTIONAL,
							 			msgTarget: 'under',
							 			blankText: getLanguageText('defaults.requiredfield')+' '+getLanguageText('pages.raffles.error.country'),
										displayField:'COUNTRY',
										valueField: 'PKCOUNTRIES' ,
										store: registerCountriesStore,
										mode: 'local',
										hiddenName: cField.NAME,
										minChars: 0,
										typeAhead: true,
										forceSelection: true,										
										triggerAction: 'all',
							  			fieldLabel:sMand+getLanguageText('pages.raffles.labels.country'),
							 			labelSeparator: '',
							 			width: 303,
							 			labelStyle: 'text-align:right',
										listClass : 'cboitemlist2 lottery-country',
										//vtype: 'country',
										validationEvent: 'change'	
							 		});
									
									raffleForm.add(dmy);
									
									
								}else{
									if(cField.NAME == "fkcstkettekoop"){
										
										registerKetteKoopStore = new Ext.data.JsonStore({
											url: '/index.cfm?event=ajax.getKetteKoopStore',
										    root: 'DATA',
										    totalProperty: 'TOTALCOUNT',
											autoLoad: true,
											fields: ['PKKETTE_KOOP', 'TITLE']
										});
										
										if(cField.OPTIONAL == 0)
											sMand = '*';
										else
											sMand = '';
										
										dmy = new Ext.form.ComboBox({
											name: 'kettekoop',
											id: 'kettekoop',
											cls:'country_input',
											listClass:'country_list', 
								 			emptyText: getLanguageText('pages.raffles.labels.kettekoopdd'),
											allowBlank: cField.OPTIONAL,
								 			msgTarget: 'under',
								 			blankText: getLanguageText('defaults.requiredfield')+' '+getLanguageText('pages.raffles.error.kettekoop'),
											displayField:'TITLE',
											valueField: 'PKKETTE_KOOP' ,
											store: registerKetteKoopStore,
											mode: 'local',
											hiddenName: cField.NAME,
											minChars: 0,
											typeAhead: true,
											forceSelection: true,										
											triggerAction: 'all',
								  			fieldLabel: sMand +getLanguageText('pages.raffles.labels.kettekoop'),
								 			labelSeparator: '',
								 			width: 303,
								 			labelStyle: 'text-align:right',
											listClass : 'cboitemlist2 lottery-cooperation',											
											validationEvent: 'change'	
								 		});
									
										raffleForm.add(dmy);
										
									} else {
										if(cField.NAME == "salutation"){
											/*save country in global var*/
											var gl_default_salutation = 'f';
											if(cField.DEFAULT != ''){
												gl_default_salutation = cField.DEFAULT;
											}
											
											
											// DataStore fuer Anrede-Feld
											registerSalutationStore = new Ext.data.JsonStore({
												url: '/index.cfm?event=ajax.getSalutationsStore',
											    root: 'DATA',
											    totalProperty: 'TOTALCOUNT',
												autoLoad: true,
											    fields: ['PKSALUTATIONS', 'TITLE'],
												listeners: {
										    		load: function() {Ext.getCmp('salutation_display').setValue(gl_default_salutation);}
												}
											});
											
											if(cField.OPTIONAL == 0)
												sMand = '*';
											else
												sMand = '';
											
											dmy = new Ext.form.ComboBox({
										 			fieldLabel: sMand+getLanguageText('pages.raffles.labels.salutation'),
										 			labelSeparator: '',
										 			emptyText: getLanguageText('pages.raffles.labels.salutationdd'),
										 			name: 'salutation_display',
										 			id: 'salutation_display', 			
													cls: 'coop_input',
													width: 303,			
													labelStyle: 'text-align:right',
										 			allowBlank: cField.OPTIONAL,
										 			msgTarget: 'under',
										 			blankText: getLanguageText('defaults.requiredfield')+' '+getLanguageText('pages.raffles.error.salutation'),
										 			displayField:'TITLE',
													valueField: 'PKSALUTATIONS',
													store: registerSalutationStore,
													mode: 'local',
													hiddenName: cField.NAME,
													hiddenId: cField.NAME + '_id',
													minChars: 0,
													typeAhead: true,
													forceSelection: true,
													triggerAction: 'all',
													labelWidth: 298,
													listClass : 'cboitemlist2 lottery-title',
													editable: false										
											});
											
											raffleForm.add(dmy);
										
										}else{
											if(cField.NAME == "phone"){
												dmy = new Ext.form.Hidden({
													id: 'phone',
													name: 'phone'
												});
												raffleForm.add(dmy);
												
												if(cField.OPTIONAL == 0)
													sMand = '*';
												else
													sMand = '';
																								
												if(cData.FKCSTRAFFLETYPES == 1){
													
													dmy = new Ext.Panel({
														layout: 'column',
														border: false,												
														items: [{
															width:173,																						
															border: false,
															cls:'label-phone',														
															html: '<div class="x-form-item"><label style="text-align:right;" class="x-form-item-label">'+ sMand + getLanguageText('pages.raffles.labels.'+cField.NAME) + '</label></div>'
														},
														        
														{							
															width: 302,
															layout: 'form',
															border: false,														
															items: [{
																xtype: 'textfield',
																width: 302,
																allowBlank: cField.OPTIONAL,
																id: 'phone1',
																validateOnBlur: true,
																msgTarget: 'qtip',
																hideLabel: true
																
															}]
														}, {
															width: 0,
															layout: 'form',
															border: false,
															items: [{
																xtype: 'hidden',
																width:0,																
																id: 'phone2',
																hideLabel: true
															}]
														}, {
															width: 0,
															layout: 'form',
															border: false,
															items: [{
																xtype: 'hidden',
																width:0,																
																id: 'phone3',
																hideLabel: true
															}]
														}]
													});
													
												}else{
												
													dmy = new Ext.Panel({
														layout: 'column',
														border: false,												
														items: [{
															width:173,																						
															border: false,
															cls:'label-phone',														
															html: '<div class="x-form-item"><label style="text-align:right;" class="x-form-item-label">'+ sMand + getLanguageText('pages.raffles.labels.'+cField.NAME) + '</label></div>'
														},
														 
														{							
															width: 302,
															layout: 'form',
															border: false,														
															items: [{
																xtype: 'textfield',
																width: 302,
																allowBlank: cField.OPTIONAL,
																id: 'phone1',
																validateOnBlur: true,
																msgTarget: 'qtip',
																hideLabel: true
																
															}]
														}, {
															width: 0,
															layout: 'form',
															border: false,
															items: [{
																xtype: 'hidden',
																width:0,																
																id: 'phone2',
																hideLabel: true
															}]
														}, {
															width: 0,
															layout: 'form',
															border: false,
															items: [{
																xtype: 'hidden',
																width:0,																
																id: 'phone3',
																hideLabel: true
															}]
														}]
													});
													
												}
												raffleForm.add(dmy);
											} else {												
												if(cField.TYPE == "check"){
													
													if(cField.OPTIONAL == 0)
														sMand = '*';
													else
														sMand = '';
													
													dmy = new Ext.form.Checkbox({
														fieldLabel: '',
														labelSeparator: '',
														boxLabel: sMand + cField.LABEL + ' <a href="javascript:void(0);" onclick="ContentTextAlert(\''+ cField.CONTENT.replace(/\r\n/g, '<br />') +'\')">' + getLanguageText('pages.raffles.labels.read') + '</a>',
														name: ''+cField.NAME,
														ctCls: 'gerneralterms',
														id: ''+cField.NAME,
														allowBlank: cField.OPTIONAL,
														labelStyle: 'text-align:right',
														inputValue: '1',													
														hideLabel: true,
														checked: cField.DEFAULT
													});									
													raffleForm.add(dmy);
													
													
												
												}else{
													var myVtype = null;
													if(cField.NAME == 'email'){
														myVtype = 'email';
													}
													
													if(cField.OPTIONAL == 0)
														sMand = '*';
													else
														sMand = '';
													
													/*if(cField.REQUIRED){*/
													fields[cField.NAME] = new Ext.form.TextField({						
															fieldLabel: sMand + getLanguageText('pages.raffles.labels.'+cField.NAME),
															labelSeparator: '',
															name: ''+cField.NAME,
															id: ''+cField.NAME,
															width: '294px',
															height: '18px',
															style: 'display:block;',
															labelStyle: 'text-align:right',
															ctCls: 'plbi',
															allowBlank: cField.OPTIONAL,
															msgTarget: 'under',
															blankText: getLanguageText('defaults.requiredfield') + ' ' + getLanguageText('pages.raffles.error.'+cField.NAME),
															//value: cField.DEFAULT
															vtype: myVtype
														});
													/*}*/
													if(cField.DEFAULT.length){
														fields[cField.NAME].setValue(cField.DEFAULT);
													}
													
													raffleForm.add(fields[cField.NAME]);
													
												}									
											}
										}									
									}
								}		
							
							
							}
						}
					}
										
					if(cData.showcaptcha){
						dmy = new Ext.form.Hidden({
							id: 'captchacheckstring',
							value: ''	
						});
						raffleForm.add(dmy);
						
						dmy = new Ext.Panel({
							layout:'column',
						    border:false,
						    items:[{
						        layout: 'form',
						        border:false,
								ctCls: 'captchacontainer',
								cls: 'captchalabel',
						        html: '*'+getLanguageText('pages.contact.labels.verificode'),
						        style: 'font-size: 11px;margin-right: 10px;color:#003b77'
						    },{
						    	xtype: 'panel',
						    	border: false,
						    	listeners: {
						    		render: function(pThis){
						    			Ext.Ajax.request({
						    				url: '/index.cfm?event=ajax.getContactFormCaptcha&random=' + Math.random(),
						    				success: function(pR,pO){
						    					var cData = Ext.decode(pR.responseText);
						    					var cTpl = new Ext.XTemplate(
						    						'<img src="/captchaimages/{img}" width="302" height="50" border="0" alt="Captcha" style="margin-bottom:14px;" />'
						    					);
						    					cTpl.overwrite(pThis.body,cData);
						    					Ext.getCmp('captchacheckstring').setValue(cData.captchacheckstring);
						    				}
						    			})
						    		}
						    	}
						    }]
						});
						raffleForm.add(dmy);
						
						dmy = new Ext.form.TextField({
							xtype: 'textfield',
							style: 'margin-top:14px;',
							fieldLabel: '*'+getLanguageText('pages.contact.labels.verificoderepeat'),
							labelSeparator: '',
							id: 'verificoderepeat',
							width: 302,
							ctCls: 'captcha_label',
							labelStyle: 'width:170px;',
							allowBlank: false,
							msgTarget: 'under',
							blankText: getLanguageText('defaults.requiredfield')+' '+getLanguageText('pages.contact.error.verificoderepeat')
						});
						raffleForm.add(dmy);
						
					}
					
					fButtons = new Ext.Panel({						
						html: '<div class="bottomline">&nbsp;</div>'
					});
					raffleForm.add(fButtons);
					//console.dir(cData);
					fButtons = new Ext.Panel({						
						html: '<div class="mandatoryfields">* Pflichtfelder</div>'+
								'<div class="repeaterline"></div><div class="ma-buttonbox clearfix">'+		
								
								'<div class="btn_right clearfix">'+
								'	<a style="background-color:#'+ cData.BUTTONCOLOR +' !important;" class="ma-button v1" href="javascript:void(0);" onclick="raffleForm.doSubmit();">'+
								'		<span style="background-color:#'+ cData.BUTTONCOLOR +' !important;" class="size">' +
											cData.BUTTONTEXT +
								'		</span>'+
								'	</a>'+
								'</div>'+
								
								'<div class="btn_left clearfix">'+
								'	<a style="background-color:#'+ cData.BUTTONCOLORABORT +' !important;" class="ma-button v1" href="javascript:void(0);" onclick="raffleForm.doAbort();">'+
								'		<span style="background-color:#'+ cData.BUTTONCOLORABORT +' !important;" class="size">' +
											cData.BUTTONTEXTABORT +
								'		</span>'+
								'	</a>'+
								'</div>'+								
							  '</div>'
					});
					raffleForm.add(fButtons);
				

					/* render new fields*/
					raffleForm.render();
					
					getWebtrekkCodingForRaffles(pId,pCid,'form',nAttempts);
		 		}
		 }
	});

}

function ContentTextAlert(pText) {
		//Ext.Msg.alert('Hinweis', '<span class="small">' + pText + '</span>');
		
		fpGSDataForm = new Ext.FormPanel({
	        labelWidth: 150,					
	        layoutConfig: {labelSeparator: ''},
	    	bodyStyle:'background-color:transparent;border:0px none; padding:10px;',
	    	style: 'margin-top: 10px;',				       
	        items: [{
				html: '<p class="small">' + pText + '</p>',
				border: false
			},{
				border: false,
				html: '<div class="buttonbox">'
	 				+ '<div class="submitbtn center"><a href="javascript:void(0);" onclick="fpGSDataFormPopup.close();">'+getLanguageText('defaults.ok')+'</a></div></div>'
			}]
	    });
		
		
		fpGSDataFormPopup = new Ext.Window({
	    	id:'fpGSDataFormPopup',
	    	resizable:false,
	    	closable:false,
	        closeAction:'hide',
	        plain:false,
	        floating:true,
	        modal:true,
	        cls: 'popupraffles',
	    	width:530,
	        title: getLanguageText('pages.raffles.popup.title'),
	        items: [ fpGSDataForm ],
	        shadow:true
	        });
		
		fpGSDataFormPopup.show();
}



function showSuccess(pId, pCid, showinlayer){
	if(win){
		win.destroy();		
	}
	
	if(showinlayer == undefined) showinlayer = 1;

	location.href = '#';
	
	if(showinlayer) {
		win = new Ext.Window({       
			title 		: '<a class="closebutton" style="cursor:pointer" onclick="win.destroy()"><span class="flr" style="font-size:12px !important;padding-right:5px">'+getLanguageText('teasers.popup.windowclose')+'</span></a>',
			width       : 810,				
			closable	: false,
	        //height      : 480,
	        closeAction : 'hide',
	        plain       : true,
	        modal		: true,
	        border		: false,
	        //bodyStyle	: 'padding:10px;',
	        cls			: 'rafflepopup',
	        items: [
	        {                	
	        	xtype: 'panel',
	 			border: false,
	 			cls: 'mt10',
	 			html:'<div id="raffle_div"><!--leer--></div>'					
	        }
	        
	        
	 		]
	    });
		win.setPosition(200,100);
		win.show();
	}
	
	
	dmy = new Ext.data.JsonStore({
  		 url: '/index.cfm?event=ajax.raffles.getsuccess&pk='+pId,
  		 autoLoad: true,
  		 root: 'DATA',
  		 fields: ['DATA'],
  		 listeners: {
  		 	load: function(pThisStore, pRecords){

  		 			template = new Ext.XTemplate(
  		 				'<div style="float:left;clear:both;">'+ 		 			
  		 				
  		 				'<div class="doc_topline" style="padding:0px 0px 15px 15px;font-weight:bold;">{TOPLINE}</div>'+
  		 				'<div class="doc_title" style="padding:0px 0px 15px 15px;font-weight:bold;">{TITLE}</div>'+		 				
		 				
  		 				'<div class="doc_content" style="padding:0px 0px 15px 15px;">{DOCUMENTCONTENT}</div>'+

  		 				'</div>'
  					);
  					template.overwrite('raffle_div',pThisStore.reader.jsonData.DATA);
  					
  					cData = pThisStore.reader.jsonData.DATA;

  					fButtons = new Ext.Panel({						
						html: '<div class="repeaterline"></div><div class="form-buttons">'+		
								
								'<div class="btn-3 flr"><a href="javascript:void(0);" onclick="win.destroy();">' +
									cData.BUTTONTEXT +
								'</a></div>'+
							'</div>'
					});
  					
  					getWebtrekkCodingForRaffles(pId,pCid,'erf');
  					
  					if(showinlayer) {
  						win.add(fButtons);
  						win.render();
  					}

			}
		}		
	});
	
}




getWebtrekkCodingForRaffles = function(id,cid,identifier,attempts){		
	
	if(typeof cid == "undefined"){
		cid = 0;
	}
	
	if(typeof attempts == "undefined"){
		attempts = 0;
	}
	
	Ext.Ajax.request({
		url: '/index.cfm?event=ajax.getWebtrekkCoding',
		params: {			
			sourceofrequest : 'raffles',
			pkcstraffles 	: id,			
			action			: identifier,
			attempts		: attempts,
			cid				: cid,
			datatransfer	: 'ajax'
		},
		success: function(pResponse, pOptions) {
							
			var cresponse=Ext.decode(pResponse.responseText);
			
			if(cresponse.success){				
				try{						
					//// content group(s)
					//webtrekk.contentGroup = new Array();
					
					// Webseite
					//webtrekk.contentGroup[1] = cresponse.contentgroup1;
					
					// Navigationsebene 1
					//webtrekk.contentGroup[2] = cresponse.contentgroup2;
					
					// Navigationsebene 2
					//webtrekk.contentGroup[3] = cresponse.contentgroup3;
					
					// Objektart
					//webtrekk.contentGroup[9] = cresponse.contentgroup9;

					// Seitenname
					//webtrekk.contentGroup[10] = cresponse.contentgroup10;
					
					wt_sendinfo(cresponse.webtrekk);
				}catch(e){						
				}					
			}else{
				/// Exception occured
			}
			
			
			
		},
		scope: this
	});		
}

