var ebFr;

require( ebplatform.config.enableLoadBuilt ? ["built/dojo", "built/ebCommon", "built/iscrizione"] : [], function() { //.js.uncompressed
	require(["dojo/ready",
	 	"dojo/_base/lang",
	 	"dojo/_base/array",
		"dojo/dom",
		"dojo/dom-class",
		"dojo/dom-style",		
		"dojo/dom-attr",
		"dojo/dom-geometry",
		"dojo/dom-construct",
		"dojo/query",
		"dojo/request",
		"dojo/on",
		"dojo/topic",
		"dijit/registry",
		"put-selector/put",
        "dijit/Dialog"],
		function(ready,
			lang,
			arrayUtil,
			dom,
			domClass,
			domStyle,
			domAttr,
			geometry,
			domConstruct,
			query,
			request,
			on,
			topic,
			registry,
			put,
            Dialog) {
			ready(function() {
              
              
              
              	var ultimoAccompagnatore = query(".ultimoAccompagnatore")[0];
                if(ultimoAccompagnatore){
                  console.log("ULTIMO ACCOMPAGNATORE");
                  var mesaaggio1 = query("#boxAccompagnatori h5")[0];
                  var mesaaggio2 = query("#boxAccompagnatori p")[0];
                  if(mesaaggio1){
                      domStyle.set(mesaaggio1, "display", "none");
                  }
                  if(mesaaggio2){
                      domStyle.set(mesaaggio2, "display", "none");
                  }


                  

                }

				var campi = [];
				var numVisibili = 0;
			
				/*
				campi.push({idSorgente:'idCustomfield165163',idTarget:'idCustomfield165162',targetName:'valoreLista1.idValoreLista', idValoreYES:375318, idLista:66463});
				campi.push({idSorgente:'idCustomfield166217',idTarget:'idCustomfield166216',targetName:'valoreLista2.idValoreLista', idValoreYES:377268, idLista:66926});
				campi.push({idSorgente:'idCustomfield175949',idTarget:'idCustomfield175948',targetName:'valoreLista5.idValoreLista', idValoreYES:394051, idLista:70854});
				campi.push({idSorgente:'idCustomfield175951',idTarget:'idCustomfield175950',targetName:'valoreLista6.idValoreLista', idValoreYES:394053, idLista:70855});
				campi.push({idSorgente:'idCustomfield175953',idTarget:'idCustomfield175952',targetName:'valoreLista7.idValoreLista', idValoreYES:394055, idLista:70856});
				campi.push({idSorgente:'idCustomfield175955',idTarget:'idCustomfield175954',targetName:'valoreLista8.idValoreLista', idValoreYES:394057, idLista:70857});
				campi.push({idSorgente:'idCustomfield175957',idTarget:'idCustomfield175956',targetName:'valoreLista9.idValoreLista', idValoreYES:394059, idLista:70858});
				campi.push({idSorgente:'idCustomfield175959',idTarget:'idCustomfield175958',targetName:'valoreLista10.idValoreLista', idValoreYES:394061, idLista:70859});
				campi.push({idSorgente:'idCustomfield175961',idTarget:'idCustomfield175960',targetName:'valoreLista11.idValoreLista', idValoreYES:394063, idLista:70860});
				campi.push({idSorgente:'idCustomfield175963',idTarget:'idCustomfield175962',targetName:'valoreLista12.idValoreLista', idValoreYES:394065, idLista:70861});
				campi.push({idSorgente:'idCustomfield175965',idTarget:'idCustomfield175964',targetName:'valoreLista13.idValoreLista', idValoreYES:394067, idLista:70862});
				campi.push({idSorgente:'idCustomfield175967',idTarget:'idCustomfield175966',targetName:'valoreLista14.idValoreLista', idValoreYES:394069, idLista:70863});
				campi.push({idSorgente:'idCustomfield175969',idTarget:'idCustomfield175968',targetName:'valoreLista15.idValoreLista', idValoreYES:394071, idLista:70864});
				campi.push({idSorgente:'idCustomfield175971',idTarget:'idCustomfield175970',targetName:'valoreLista16.idValoreLista', idValoreYES:394073, idLista:70865});
				campi.push({idSorgente:'idCustomfield175973',idTarget:'idCustomfield175972',targetName:'valoreLista17.idValoreLista', idValoreYES:394075, idLista:70866});
				campi.push({idSorgente:'idCustomfield175975',idTarget:'idCustomfield175974',targetName:'valoreLista18.idValoreLista', idValoreYES:394077, idLista:70867});
				campi.push({idSorgente:'idCustomfield175977',idTarget:'idCustomfield175976',targetName:'valoreLista19.idValoreLista', idValoreYES:394079, idLista:70868});
				campi.push({idSorgente:'idCustomfield176012',idTarget:'idCustomfield176011',targetName:'valoreLista20.idValoreLista', idValoreYES:394150, idLista:70885});
				campi.push({idSorgente:'idCustomfield176014',idTarget:'idCustomfield176013',targetName:'valoreLista21.idValoreLista', idValoreYES:394152, idLista:70886});
				*/
              
              	/*
  
                
265265 => 446645 265266 => 446644 1 175803 897990  
265263 => 446647 265264 => 446646 2 175784 897952
265261 => 446683 265262 => 446682 5 175785 897954
265259 => 446677 265260 => 446684 6 175786 897956  
265257 => 446679 265258 => 446678 7 175801 897986 
265255 => 446681 265256 => 446680 8 175800 897984 
265279 => 446685 265254 => 446689 9 175799 897982 
265252 => 446687 265253 => 446686 10 175798 897980 
265250 => 446672 265251 => 446671 11 175797 897978 
265248 => 446674 265249 => 446673 12 175796 897976 
265246 => 446676 265247 => 446675 13 175795 897974 
265278 => 446669 265245 => 446668 14 175794 897972 
265276 => 446660 265277 => 446670 15 175793 897970 
265274 => 446662 265275 => 446661 16 175792 897968 
265243 => 446655 265244 => 446654 17 175791 897966 
265241 => 446657 265242 => 446656 18 175790 897964 
265239 => 446649 265240 => 446648 19 175789 897962 
265237 => 446651 265238 => 446650 20 175788 897960 
265235 => 446643 265236 => 446652 21 175787 897958 

                */
				
				/*campi.push({idSorgente:'idCustomfield265265',idTarget:'idCustomfield265266',targetName:'valoreLista1.idValoreLista', idValoreYES:584062, idLista:584061});
				campi.push({idSorgente:'idCustomfield265263',idTarget:'idCustomfield265264',targetName:'valoreLista2.idValoreLista', idValoreYES:584100, idLista:584099});
				campi.push({idSorgente:'idCustomfield265261',idTarget:'idCustomfield265262',targetName:'valoreLista5.idValoreLista', idValoreYES:584098, idLista:584097});
				campi.push({idSorgente:'idCustomfield265259',idTarget:'idCustomfield265260',targetName:'valoreLista6.idValoreLista', idValoreYES:584096, idLista:584095});
				campi.push({idSorgente:'idCustomfield265257',idTarget:'idCustomfield265258',targetName:'valoreLista7.idValoreLista', idValoreYES:584066, idLista:584065});
				campi.push({idSorgente:'idCustomfield265255',idTarget:'idCustomfield265256',targetName:'valoreLista8.idValoreLista', idValoreYES:584068, idLista:584067});
				campi.push({idSorgente:'idCustomfield265279',idTarget:'idCustomfield265254',targetName:'valoreLista9.idValoreLista', idValoreYES:584070, idLista:584069});
				campi.push({idSorgente:'idCustomfield265252',idTarget:'idCustomfield265253',targetName:'valoreLista10.idValoreLista', idValoreYES:584072, idLista:584071});
				campi.push({idSorgente:'idCustomfield265250',idTarget:'idCustomfield265251',targetName:'valoreLista11.idValoreLista', idValoreYES:584074, idLista:584073});
				campi.push({idSorgente:'idCustomfield265248',idTarget:'idCustomfield265249',targetName:'valoreLista12.idValoreLista', idValoreYES:584076, idLista:584075});
				campi.push({idSorgente:'idCustomfield265246',idTarget:'idCustomfield265247',targetName:'valoreLista13.idValoreLista', idValoreYES:584078, idLista:584077});
				campi.push({idSorgente:'idCustomfield265278',idTarget:'idCustomfield265245',targetName:'valoreLista14.idValoreLista', idValoreYES:584080, idLista:584079});
				campi.push({idSorgente:'idCustomfield265276',idTarget:'idCustomfield265277',targetName:'valoreLista15.idValoreLista', idValoreYES:584082, idLista:584081});
				campi.push({idSorgente:'idCustomfield265274',idTarget:'idCustomfield265275',targetName:'valoreLista16.idValoreLista', idValoreYES:584084, idLista:584083});
				campi.push({idSorgente:'idCustomfield265243',idTarget:'idCustomfield265244',targetName:'valoreLista17.idValoreLista', idValoreYES:584086, idLista:584085});
				campi.push({idSorgente:'idCustomfield265241',idTarget:'idCustomfield265242',targetName:'valoreLista18.idValoreLista', idValoreYES:584088, idLista:584087});
				campi.push({idSorgente:'idCustomfield265239',idTarget:'idCustomfield265240',targetName:'valoreLista19.idValoreLista', idValoreYES:584090, idLista:584089});
				campi.push({idSorgente:'idCustomfield265237',idTarget:'idCustomfield265238',targetName:'valoreLista20.idValoreLista', idValoreYES:584092, idLista:584091});
				campi.push({idSorgente:'idCustomfield265235',idTarget:'idCustomfield265236',targetName:'valoreLista21.idValoreLista', idValoreYES:584094, idLista:584093});*/
              
              
              	campi.push({idSorgente:'idCustomfield446645',idTarget:'idCustomfield446644',targetName:'valoreLista1.idValoreLista', idValoreYES:897990, idLista:175803});
                campi.push({idSorgente:'idCustomfield446647',idTarget:'idCustomfield446646',targetName:'valoreLista2.idValoreLista', idValoreYES:897952, idLista:175784});
                campi.push({idSorgente:'idCustomfield446683',idTarget:'idCustomfield446682',targetName:'valoreLista5.idValoreLista', idValoreYES:897954, idLista:175785});
                campi.push({idSorgente:'idCustomfield446677',idTarget:'idCustomfield446684',targetName:'valoreLista6.idValoreLista', idValoreYES:897956, idLista:175786});
                campi.push({idSorgente:'idCustomfield446679',idTarget:'idCustomfield446678',targetName:'valoreLista7.idValoreLista', idValoreYES:897986, idLista:175801});
                campi.push({idSorgente:'idCustomfield446681',idTarget:'idCustomfield446680',targetName:'valoreLista8.idValoreLista', idValoreYES:897984, idLista:175800});
                campi.push({idSorgente:'idCustomfield446685',idTarget:'idCustomfield446689',targetName:'valoreLista9.idValoreLista', idValoreYES:897982, idLista:175799});
                campi.push({idSorgente:'idCustomfield446687',idTarget:'idCustomfield446686',targetName:'valoreLista10.idValoreLista', idValoreYES:897980, idLista:175798});
                campi.push({idSorgente:'idCustomfield446672',idTarget:'idCustomfield446671',targetName:'valoreLista11.idValoreLista', idValoreYES:897978, idLista:175797});
                campi.push({idSorgente:'idCustomfield446674',idTarget:'idCustomfield446673',targetName:'valoreLista12.idValoreLista', idValoreYES:897976, idLista:175796});
                campi.push({idSorgente:'idCustomfield446676',idTarget:'idCustomfield446675',targetName:'valoreLista13.idValoreLista', idValoreYES:897974, idLista:175795});
                campi.push({idSorgente:'idCustomfield446669',idTarget:'idCustomfield446668',targetName:'valoreLista14.idValoreLista', idValoreYES:897972, idLista:175794});
                campi.push({idSorgente:'idCustomfield446660',idTarget:'idCustomfield446670',targetName:'valoreLista15.idValoreLista', idValoreYES:897970, idLista:175793});
                campi.push({idSorgente:'idCustomfield446662',idTarget:'idCustomfield446661',targetName:'valoreLista16.idValoreLista', idValoreYES:897968, idLista:175792});
                campi.push({idSorgente:'idCustomfield446655',idTarget:'idCustomfield446654',targetName:'valoreLista17.idValoreLista', idValoreYES:897966, idLista:175791});
                campi.push({idSorgente:'idCustomfield446657',idTarget:'idCustomfield446656',targetName:'valoreLista18.idValoreLista', idValoreYES:897964, idLista:175790});
                campi.push({idSorgente:'idCustomfield446649',idTarget:'idCustomfield446648',targetName:'valoreLista19.idValoreLista', idValoreYES:897962, idLista:175789});
                campi.push({idSorgente:'idCustomfield446651',idTarget:'idCustomfield446650',targetName:'valoreLista20.idValoreLista', idValoreYES:897960, idLista:175788});
                campi.push({idSorgente:'idCustomfield446643',idTarget:'idCustomfield446652',targetName:'valoreLista21.idValoreLista', idValoreYES:897958, idLista:175787});
              	campi.push({idSorgente:'idCustomfield449633',idTarget:'idCustomfield449632',targetName:'valoreLista25.idValoreLista', idValoreYES:903664, idLista:903665});



				function init(){
					try {

						console.log("... INIT ...");

						
						arrayUtil.forEach(campi,function(coppia,i){
							numVisibili += accoppia(coppia,i);
						});
						console.log("numVisibili:",numVisibili);
						console.log("contaYES:",contaYESNO());
						aggiornaOspiteAggiuntivo2();				

						if (numVisibili==0){
							var ospiteAggiuntivo = query(".itemForm.idCustomfield446641")[0];// 265273 => 446641
							if (!!ospiteAggiuntivo){
								domStyle.set(ospiteAggiuntivo,{position:'static',visibility:'visible'});
                              	ebPlatform.iscrizione.allineaAltezzaBoxSxDx();
							}							
						}

						
						var boxRegistrationButtons = query(".tundra.pagIscrizione .boxRegistrationButtons")[0];
						if(!!boxRegistrationButtons){
							domStyle.set(boxRegistrationButtons,'visibility','visible');
                          	ebPlatform.iscrizione.allineaAltezzaBoxSxDx();
						}
                      
                      	var consentRequest1 = query(".consentRequest1")[0];
						if(!!consentRequest1){
							var boxRadio = query(".boxRadio",consentRequest1)[0];
							if(!!boxRadio){
                            	console.log("Trovato boxRadioConsenso1");
                              
                              	/*domConstruct.place("<div id='textAfterHeaderImage'><a class='linkprivacy2' href='#'>Link privacy2</a></div>", boxRadio, 'before');
                              	var linkprivacy2 = query(".linkprivacy2")[0];
                              	on(linkprivacy2,'click',function(){
                                    console.log("DEBUG Click su consenso1");
                                  	
                                        myDialog = new Dialog({
                                          //title: "Details",
                                          title: "Attenzione",
                                          content: "Contenuto altra privacy",
                                          style: "width: 800px"
                                        });
                                        myDialog.show();
                                    
                                });*/  
                            }
						}
						
						// Aggiusto l'altezza
						aggiustaAltezza();

						// Aggiusto messaggi nella pagian di conferma
						var boxDxConfirmation = document.getElementById("boxDxConfirmation");
						if (!!boxDxConfirmation){
							var header = query("#header")[0];
							if (!!header){
								console.log("header",header);
								if (domClass.contains(boxDxConfirmation,"opIscrizione")){
									domClass.add(header,"opIscrizione");
								}
								if (domClass.contains(boxDxConfirmation,"opModificaIscrizione")){
									domClass.add(header,"opModificaIscrizione");

									var msg1 = query(".titoloMsg1 .msg1",boxDxConfirmation)[0];
									if (!!msg1){
										msg1.innerHTML = msg1.innerHTML.replace("Hi ","");
										msg1.innerHTML = msg1.innerHTML.replace(",","");
										msg1.innerHTML = msg1.innerHTML.replace("Your registration to  Blvd BASH 2022 has been updated.","<br/>Thanks for keeping <b>US</b> up to date on <b>YOUR</b> plans for Blvd BASH. Remember to join the Blvd BASH Group on SkyHub so we can keep <b>YOU</b> up to date on <b>OUR</b> plans!<br/><br/>As a reminder, these tickets are non transferable and attendees must match the names on the tickets.<br/><br/>See you there!");
									}

								}
								
								if (domClass.contains(boxDxConfirmation,"opCancellaIscrizione")){
									domClass.add(header,"opCancellaIscrizione");

									var msg1 = query(".titoloMsg1 .msg1",boxDxConfirmation)[0];
									if (!!msg1){
										msg1.innerHTML = msg1.innerHTML.replace("Hi ","Blvd BASH will not be the same without you ");
										msg1.innerHTML = msg1.innerHTML.replace(",","!");
										msg1.innerHTML = msg1.innerHTML.replace("your cancellation notice has been received and processed.","<br/>You can still enjoy the festivities and stream the show by following along in the Blvd BASH Group on SkyHub.<br/><br/>Hope to see you next year!");
									}

								}
							}
						}
						//aggiustaAltezza();
						ebPlatform.iscrizione.allineaAltezzaBoxSxDx();

					} catch (err) {
						console.log(err)
					}

					try {
						ebPlatform.iscrizione.allineaAltezzaBoxSxDx();
					} catch(err) {
						console.log(err);
					}

				}

				function aggiustaAltezza(){
                  	return;
					console.log("DEBUG AggiustaAltezza 555");
					//var divJs = query("div.js")[0];
                  	var divJs = query("#boxDxContent")[0];
					console.log("DEBUG AggiustaAltezza divJS:",divJs );
					if(!!divJs){
						var jsGeom = geometry.getMarginBox(divJs);
						console.log("DEBUG jsGeom",jsGeom);
						//var divContent = query("div#content")[0];
                      	var divContent = query("#boxDx")[0];
						//var divContent = query("#boxDxContent")[0];
                      	console.log("divContent:",divContent);
						if (!!divContent){
							console.log("DEBUG imposto min-height a "+(jsGeom.h + 150)+'px');
							domStyle.set(divContent,'min-height',(jsGeom.h + 150)+'px');
						}
					}
				}


				function accoppia(coppia,i){
					var ret = 0;
					var nome = query(".itemForm."+coppia.idSorgente+" input")[0];
					//console.log("... nome "+i+":",nome);
					if (!!nome){
						if (!!nome.value){
							var label = query(".itemForm."+coppia.idTarget+" > label")[0];
							//console.log("... label "+i+":",label);
							if (!!label){
								label.innerHTML = label.innerHTML.replace("Acc #"+(i+1),nome.value);//WILL ACC #1 BE ATTENDING? => WILL PINCO PALLINO BE ATTENDING?
							}
							/* ora visualizzo */
							var targetNode = query(".itemForm."+coppia.idTarget)[0];
							if (!!targetNode){
								//console.log("targetNode",targetNode);
								domStyle.set(targetNode,{position:'static',visibility:'visible'});

								var hiddenLista = query("input[type=hidden]",targetNode)[0];
								console.log("hiddenLista",hiddenLista);
								if (!!hiddenLista){
									console.log(coppia.targetName,hiddenLista.value,"customFieldSelect_"+coppia.idLista,"customFieldSelect_"+coppia.idSorgente.replace('idCustomfield',''));
									//on(hiddenLista,"change",function(e){console.log(e);})
									//var wdg = registry.byId("customFieldSelect_"+coppia.idLista);
									var wdg = registry.byId("customFieldSelect_"+coppia.idTarget.replace('idCustomfield',''));
									console.log("wdg",wdg);
									if (!!wdg){
										on(wdg,"change",function(e){aggiornaOspiteAggiuntivo2();})
									}
								} else {
									var selectLista = query("select",targetNode)[0];
									if (!!selectLista){
										//console.log(selectLista);
										on(selectLista,"change",function(e){aggiornaOspiteAggiuntivo2();})
									}
								}
							} else {
								console.log("problema con: .itemForm."+coppia.idTarget);
							}
							ret = 1;
						} else {
							//console.log("RIMUOVO obbligatorietï¿½: "+coppia.targetName);
							eventboostplatform_iscrizioneFormProfile.required = eliminaTutti([coppia.targetName], eventboostplatform_iscrizioneFormProfile.required);
						}						
					}					
					return ret;
				}

				function contaYESNO(){
					var numYes = 0;
					var numNo = 0;
					arrayUtil.forEach(campi,function(coppia,i){
						var targetNode = query(".itemForm."+coppia.idTarget)[0];
						if (!!targetNode){
							//console.log("targetNode",targetNode);
							var hiddenLista = query("input[type=hidden]",targetNode)[0];
							var valoreLista = null;
							if (!!hiddenLista){
								//console.log(coppia.targetName,hiddenLista.value);
								valoreLista = hiddenLista.value;
							} else {
								var selectLista = query("select",targetNode)[0];
								if (!!selectLista){
									//console.log(selectLista);
									valoreLista = selectLista[selectLista.selectedIndex].value;
								}
							}
							console.log("valoreLista: "+valoreLista,((valoreLista + '') == (coppia.idValoreYES + '')));
							if ( ((valoreLista + '') == (coppia.idValoreYES + '')) ){
								numYes++;
							}

							if ( !!valoreLista && ((valoreLista + '') != (coppia.idValoreYES + '')) ){
								numNo++;
							}
						} 
					});					
					return {numYes:numYes, numNo:numNo};
				}


				function aggiornaOspiteAggiuntivo2(){
					console.log("aggiornaOspiteAggiuntivo2...");
					var campoOspiteAggiuntivo2 = query(".itemForm.idCustomfield446642")[0];// 265268 => 446642
					console.log("campoOspiteAggiuntivo2:",campoOspiteAggiuntivo2);
					if (numVisibili > 0){
						//if (contaYESNO()==0){
						var yesno = contaYESNO();
						if ( yesno.numNo == numVisibili ){
							console.log("VISUALIZZO");
							domStyle.set(campoOspiteAggiuntivo2,{position:'static',visibility:'visible'});
						} else {
							console.log("NASCONDO");
							domStyle.set(campoOspiteAggiuntivo2,{position:'absolute',visibility:'hidden'});
							var inputOspiteAggiuntivo2 = query("input[type=text]",campoOspiteAggiuntivo2)[0];
							if (!!inputOspiteAggiuntivo2){
								inputOspiteAggiuntivo2.value='';
							}
						}

						aggiustaAltezza();

					} else {
                      	//aggiustaAltezza();
						console.log("numVisibili=0 --> NIENTE DA FARE");
					}
				}

				

				function eliminaTutti(cosa, dove) {
					var ret = [];
					arrayUtil.forEach(dove, function(item) {
						var trovato = false;
						arrayUtil.forEach(cosa, function(item2) {
							if (item == item2){ 
								trovato = true;
							}
						});
						if (!trovato) {
							ret.push(item);
						}
					});
					return ret;
				};

				if (lang.exists("ebPlatform.iscrizione.boxAnagraficaEndSetUp")) {
					if (!!ebPlatform.iscrizione.boxAnagraficaEndSetUp){
						init();
					}
				}
				topic.subscribe("BoxAnagrafica.EndSetUp", lang.hitch(this, function() {				
					init();
				}));

			});			
		});
}); // outer require
