/*elenco store*/
	function cambiaPaese(xmlpath,idform){
		var selectPaese = '<option value="0">'+stampaMessaggi('form','paese')+'</option>';
		$.ajax({
			type: "GET",
			url: xmlpath+"?entity=Nazione&forcereset=True",
			dataType: 'xml',
			success: function(msg){
				var risposta = $(msg);
				risposta.find("Item").each(function(){
					var id = $(this).attr('id');//memorizzo id del paese
					var label = $("Nazione", this).text();
					selectPaese += '<option value="' + id + '" >' + label + '</option>';
				});
				$(idform+' > select.paese').empty().append(selectPaese).sSelect({ddMaxHeight: '150px'});
				//console.log('eccomi in paese');

				$(idform+' > select.paese').change(function(){
					//console.log('regione '+$(this).val());//senza stylish select
					$(this).next().nextAll().not('div.submit').remove();//resetto le successive select, casomai utente cambiasse prima select dopo aver gia popolato le successive
					$(idform+' div.submit > img').fadeIn();
					$(idform).parent().next('div.risultato').empty();//resetto risultati
					var selezionato = $(this).getSetSSValue();
					//console.log('paese '+selezionato);
					cambiaRegione( selezionato,xmlpath,idform );
					//return false;
				});
			},
			error: function(){
				console.log('orrore in paese');
			},
			complete: function(){
				//console.log('lavoro terminato in paese');
			}
		});
	}

	function cambiaRegione(id,xmlpath,idform){
		var selectRegione = '<select name="regione" class="regione">';
		selectRegione += '<option value="0">'+stampaMessaggi('form','regione')+'</option>';
		$.ajax({
			type: "GET",
			url: xmlpath+'?entity=Region&condition=Nazione:' + id,
			dataType: 'xml',
			success: function(msg){
				var risposta = $(msg);
				if (id == 2) {//utente ha selezionato estero
					risposta.find("Item").each(function(){//salto direttamente alle citta estere
						var id = $(this).attr('id');
						cambiaCitta(id,xmlpath,idform,true);//true indica che sono all'estero
					});
				} else {//altrimenti stampo le regioni italiane
					risposta.find("Item").each(function(){
						var id = $(this).attr('id');
						var label = $("Regione", this).text();
						selectRegione += '<option value="' + id + '" >' + label + '</option>';
					});
					selectRegione += '</select>'
					$(idform+' div.submit > img').hide();
					$(idform+' div.submit').before(selectRegione);//stampo select prima del bottone di invio
					$(idform+' select.regione').sSelect({ddMaxHeight: '150px'});
					//console.log('eccomi in regione');
				}

				$(idform+' select.regione').change(function(){
					$(idform+' div.submit > img').fadeIn();
					$(this).next().nextAll().not('div.submit').remove();//resetto le successive select, casomai utente cambiasse questa select dopo aver gia popolato le successive
					$(idform).parent().next('div.risultato').empty();//resetto risultati
					var selezionato = $(this).getSetSSValue();
					//console.log('regione '+selezionato);
					cambiaCitta( selezionato,xmlpath,idform, false );//false indica che non sono all'estero
					//return false;
				});
			},
			error: function(){
				console.log('orrore in regione');
			},
			complete: function(){
				//console.log('lavoro terminato in regione');
			}
		});
	}

	function cambiaCitta(id,xmlpath,idform,estero) {
		var selectcitta = '<select name="citta" class="citta">';
		if (estero) {
			selectcitta += '<option value="0">'+stampaMessaggi('form','specifica')+'</option>';
		} else {
			selectcitta += '<option value="0">'+stampaMessaggi('form','citta')+'</option>';
		}
		var selectpaese = '<select name="to" id="paese">';
		$.ajax({
			type: "GET",
			url: xmlpath+'?entity=City&condition=Region:' + id,
			dataType: 'xml',
			success: function(msg){
				var risposta = $(msg);
				risposta.find("Item").each(function(){
					var id = $(this).attr('id');//id della citta
					var label = $("Nome", this).text();//nome della citta
					var mail = $("Mail", this).text();//email per l'assistenza
					selectcitta += '<option value="' + id + '" >' + label + '</option>';
					selectpaese += '<option value="' + mail + '" >' + label + '</option>';
				});
				selectcitta += '</select>'
				selectpaese += '</select>'
				if ( idform.indexOf('#form_assistenza')==0 && estero ) {//sono in assistenza all'estero
						//console.log('inietto formtomail');//inietto formtomail
						$(idform).parent().fadeOut('slow', function() {
							$(this).parent().load(percorso+'other/form_assistenza_mail_'+lingua+'.html', function() {
								$('#form_assistenza_mail').find('label[for="paese"]').after(selectpaese);
								//popolo select paese con le mail di assistenza
								controllaForm('assistenza_mail');
								$('#form_assistenza_mail').fadeIn('slow');
							});
						});
				} else {//sono in rivenditori oppure in assistenza ma non all'estero
					$(idform+' div.submit > img').hide();
					$(idform+' .submit').before(selectcitta);//stampo select prima del bottone di invio
					//$(idform+' .newListSelected').eq(1).remove();//tolgo altrimenti ne mette due, una vuota e una valorizzata dalla select delle regioni
					$(idform+' select.citta').sSelect({ddMaxHeight: '150px'});
					//console.log('eccomi in citta');
					$(idform+' select.citta').change(function(){
						$(idform+' div.submit > img').fadeIn();
						var selezionato = $(this).getSetSSValue();
						//console.log('citta '+selezionato);
						//$(idform+' .cityvalue').val( $(this).val() );
						resultStore(selezionato,idform,xmlpath);
					});
				}
			},
			error: function(){
				console.log('orrore in citta');
			},
			complete: function(){
				//console.log('lavoro terminato in citta');
			}
		});
	}

	function resultStore(id,idform,xmlpath) {
		var idres = $(idform).parent().next('div.risultato');//memorizzo div per stampare risultato
		idres.empty();//pulisco div risultati
		//idres.html('<div class="loading"><img src="'+percorso+'img/loading.gif" alt="loading..." /></div>');
		//$(idform+' div.submit > img').fadeIn();
		var liststorehtml = '';
		$.ajax({
			type: "GET",
			url: xmlpath+"?entity=Store&condition=City:" + id,
			dataType: 'xml',
			success: function(msg){
				$(msg).find("Item").each(function(){
					var id = $(this).attr('id');
					var denominazione = $("Denominazione", this).text();
					var via = $("Indirizzo", this).text();
					var citta = $("Citta", this).text();
					var cap = $("Cap", this).text();
					var info = $("Info", this).text();
					liststorehtml += '<div class="articolo">	<div class="corpo"><h3>'+denominazione+'</h3><div class="data"> '+via+' '+cap+' '+citta+'</div>';
					liststorehtml += '<p>'+info+'</p></div></div>';
				})
				$(idform+' div.submit > img').hide();
				idres.html(liststorehtml);//stampo risultati
			},
			error: function(){
				console.log('orrore in negozio');
			},
			complete: function(){
				//console.log('lavoro terminato in negozio');
			}
		});
	}


	function gestisciFormtomail(parametro) {
		var modulo;
		switch (parametro) {
			case "contatti" :
				//console.log('sto nel case contatti andato a buon fine');
				modulo = $('#form_contatti');
				break;
			case "assistenzaMail" :
				//console.log('sto nel case contatti andato a buon fine');
				modulo = $('#form_assistenza_mail');
				break;
			default :
				//console.log('sto nel case default andato a buon fine');
		}
		var strhost=""+window.location;//recupero il dominio corrente
		if(strhost.indexOf("#")>0){ strhost=strhost.substring(0,strhost.indexOf("#")); }//pulisco l'url dall'eventuale # finale
		if(strhost.indexOf("?")>0){ strhost=strhost.substring(0,strhost.indexOf("?")); }//pulisco l'url dagli eventuali parametri
		strhost=strhost.replace("http://","");
		strhost=strhost.substring(0,strhost.indexOf("/"));//ottengo dominio pulito
		modulo.find('input[name=forward]').val("http://"+strhost+percorso+"other/success.html");
		modulo.find('input[name=error]').val("http://"+strhost+percorso+"other/error.html");

		var campi=modulo.children('form').serialize();
		//console.log(campi);
		$.ajax({
			type: "POST",
			url: "/sendMail/sendMail.do",
			data:campi,
			success: function(risposta){
				if(risposta.indexOf("ok")>=0){//mail inviata
					//console.log('ok');
					modulo.find('form').fadeOut(function(){
						modulo.find('.messaggi').html('<p>'+ stampaMessaggi('form','mailOK') +'</p>').fadeIn();
					});//nascondo form dopo invio riuscito
				} else {//mail non inviata
					//console.log('ko');//stampo messaggio d'errore, riprova
					modulo.find('.messaggi').html('<p>'+ stampaMessaggi('form','mailKO') +'</p>').fadeIn();
				}
			}
		});
	}

/*gestione galleria e slideshow*/
var galleria_xml, galleria_interna_xml, galleria_prodotto_xml;//variabili per memorizzare risposte ajax
	function galleriaAjax(){//slideshow in hp
		$.ajax({
			type: "GET",
			url: galleria_url,
			dataType: "xml",
			success: function(risposta){
				//console.log('successo');
				galleria_xml = $(risposta);
			},
			error: function(){
				console.log('orrore in galleria');
			},
			complete: function(){
				//console.log('lavoro terminato');
				gestisciGalleria();
			}
		});
	}

	/* function galleriaInternaAjax(){//slideshow in pagine interne
		$.ajax({
			type: "GET",
			url: galleria_interna_url,
			dataType: "xml",
			success: function(risposta){
				//console.log('successo');
				galleria_interna_xml = $(risposta);
			},
			error: function(){
				console.log('orrore');
			},
			complete: function(){
				//console.log('lavoro terminato');
				gestisciGalleriaInterna();
			}
		});
	} */

	/* function galleriaProdottoAjax(){//galleria prodotto
		$.ajax({
			type: "GET",
			url: galleria_prodotto_url,
			dataType: "xml",
			success: function(risposta){
				galleria_prodotto_xml = $(risposta);
			},
			error: function(){
				console.log('orrore');
			},
			complete: function(){
				//console.log('lavoro terminato');
				gestisciGalleriaProdotto();
			}
		});
	} */

/*gestione news*/
	/*box news HP*/
	function ottieniArchivioHP(pathData,listpage,obj,pathEnter,maxNewsPage){//url xml, url della lista news, div contenitore la lista news, url della pagina di dettaglio, numero elementi per pagina
    var page = GetUrlParam('page');
		if (page.length == 0) {page = 1;}//se il parametro page non viene specificato, vai alla prima pagina
    page = page * 1;
    var maxNews = page * maxNewsPage;
    var minNews = maxNews - maxNewsPage;
    var html = '';
		var taglia = 200;//a quanti caratteri tagliare l'anteprima della news
    var i = 0;
    $.ajax({
             type: "GET",
             url: pathData,
             dataType: 'xml',
             success: function(msg){
             	   	var News=$(msg).find("Item").get(0);
                   
                      
											
													var titolo = $("Titolo", News).text().replace(/(<([^>]+)>)/ig,"");
													var thumbnail = $("Thumbnail", News).text().replace(/\s+/ig,'');//replace toglie spazi bianchi
													var testobreve = $("Testo", News).text().replace(/(<([^>]+)>)/ig,"");//replace toglie tag
													if (testobreve.length>taglia){
														testobreve = handleCutTxt(testobreve, taglia);//taglio il testo a n caratteri per renderlo breve
													}
													var isimage=thumbnail==blankImage?false:true;//la variabile isimage assume V se l'utente ha inserito una thumb, F se non l'ha inserita (e Contentino ha inserito l'immagine vuota predefinita)
													var id = $(News).attr('uid');
													var data = $("Data", News).text().split("-");//spezzo data in array contenente giorno, mese, anno
													if(data.length==3){
														var mese = parseInt(data[1],10);//parseInt necessita come secondo parametro la base esplicita (10) perche se la stringa comincia con 0 viene letto come ottale
														mese--;//i mesi partono da 1, l'array da 0
														//data = arrDT[0]+' '+month[mese]+' '+arrDT[2];//sostuituisco mese in cifre con mese in lettere
														data = data[0]+' '+stampaMessaggi('news','mesi')[mese]+' '+data[2];//sostuituisco mese in cifre con mese in lettere
													}
													html+='<div class="ne_hp_wrap">';
													html+=	'<div class="ne_hp">';
													if(isimage){//se c'e' la miniatura allora la stampo
														html+='<div class="ne_hp_corredo">';
														html+=	'<img src="'+thumbnail+'" alt="" />';
														html+='</div>';
													}
													html+=		'<div class="ne_hp_corpo">';
													html+=			'<div class="titolo"><a href="'+pathEnter+'?DETTAGLIO='+id+'&page='+page+'">'+titolo+'</a></div>';
													html+=			'<div class="data">'+data+'</div>';
													html+=			'<p>'+testobreve+'</p>';
													html+=		'</div>';
													html+=	'</div>';
													html+='</div>';
                        
									
                    $(obj).html(html);
                 }
           });
	}

	/*lista news*/
	function ottieniArchivio(pathData,listpage,obj,pathEnter,maxNewsPage){//url xml, url della lista news, div contenitore la lista news, url della pagina di dettaglio, numero elementi per pagina
    var page = GetUrlParam('page');
		if (page.length == 0) {page = 1;}//se il parametro page non viene specificato, vai alla prima pagina
    page = page * 1;
    var maxNews = page * maxNewsPage;
    var minNews = maxNews - maxNewsPage;
    var html = '';
    var paging = '';
		var taglia = 500;//a quanti caratteri tagliare l'anteprima della news
    var i = 0;
    $.ajax({
             type: "GET",
             url: pathData,
             dataType: 'xml',
             success: function(msg){
                    $(msg).find("Item").each(function(){
                        i++;
												if ((i<=maxNews) && (i>minNews)) {//lista news
                        	//alert("i"+i+" -maxNews"+maxNews+" -minNews"+minNews)
													var titolo = $("Titolo", this).text().replace(/(<([^>]+)>)/ig,"");
													var thumbnail = $("Thumbnail", this).text().replace(/\s+/ig,'');//replace toglie spazi bianchi
													var testobreve = $("Testo", this).text().replace(/(<([^>]+)>)/ig,"");
													if (testobreve.length>taglia){
														testobreve = handleCutTxt(testobreve, taglia);//taglio il testo a n caratteri per renderlo breve
													}
													var isimage=thumbnail==blankImage?false:true;//la variabile isimage assume V se l'utente ha inserito una thumb, F se non l'ha inserita (e Contentino ha inserito l'immagine vuota predefinita)
													//var didascalia = $("Didascalia", this).text().replace(/(<([^>]+)>)/ig,"");//replace toglie i tag html
													//didascalia = didascalia.replace("&#160;","");//toglie gli spazi bianchi
													var id = $(this).attr('uid');
													var data = $("Data", this).text().split("-");//spezzo data in array contenente giorno, mese, anno
													//var dataString;
													//console.log(arrDT.length);
													if(data.length==3){
														var mese = parseInt(data[1],10);//parseInt necessita come secondo parametro la base esplicita (10) perche se la stringa comincia con 0 viene letto come ottale
														mese--;//i mesi partono da 1, l'array da 0
														//data = arrDT[0]+' '+month[mese]+' '+arrDT[2];//sostuituisco mese in cifre con mese in lettere
														data = data[0]+' '+stampaMessaggi('news','mesi')[mese]+' '+data[2];//sostuituisco mese in cifre con mese in lettere
													}
													html+='<div class="articolo">';
													if(isimage){//se c'e' la miniatura allora la stampo
														html+='<div class="corredo">';
														html+=	'<img src="'+thumbnail+'" alt="" />';
														//if (didascalia.length>0) {//se c'e' la didascalia allora la stampo
														//html+='<div class="didascalia">';
														//html+=	'<div class="didascalia_testo">'+didascalia+'</div>';
														//html+='</div>';
														//}
														html+='</div>';
													}
													html+=	'<div class="corpo">';
													html+=		'<h3>'+titolo+'</h3>';
													html+=		'<div class="data">'+data+'</div>';
													html+=		'<div>'+testobreve+'</div>';
													html+=		'<div class="btn_esp"><a href="'+pathEnter+'?DETTAGLIO='+id+'&page='+page+'"><span>'+stampaMessaggi('news','ancora')+'</span></a></div>';
													html+=	'</div>';
													html+='</div>';
                        }
										});

										if (i>maxNewsPage) {//paginazione
											var numPages = Math.ceil(i / maxNewsPage);//ceil arrotonda al numero piu alto
											var j;
											var range = 3;//quante pagine prima e dopo l'attuale mostrare nella paginazione
											rangeMin = page - range;

											paging+= '<div id="paginazione"><ul>';
											if (page>range+1) {//se non sono alla prima pagina, allora mi servono anche i tasti precedente e primo
												if (page==range+2) {//se non si vede solo la prima pagina, allora non sto a stampare il link prev ma solo il link alla prima
													paging+= '<li class="first"><a href="' + listpage + '?page=1">&lt;&lt;</a></li>';
												} else {
													paging+= '<li class="first"><a href="' + listpage + '?page=1">&lt;&lt;</a></li>';
													paging+= '<li class="prev"><a href="' + listpage + '?page=' + (page - 1) + '">&lt;</a></li>';
												}
											}/* else {//sono alla prima pagina, quindi non stampo nulla
											} */

											if (rangeMin<=1) rangeMin=1;//per non sbordare dalla prima pagina
											rangeMax = page + range;
											if (rangeMax>=numPages) rangeMax=numPages;//per non sbordare dall'ultima pagina

											for (j=rangeMin; j<=rangeMax; j++) {
												if ((j) == (page)) {//sono alla pagina attuale
													paging+= '<li class="on"><a href="' + listpage + '?page=' + j +'">' + j + '</a></li>';
												} else {//sono in una pagina normale
													paging+= '<li><a href="' + listpage + '?page=' + j +'">' + j + '</a></li>';
												}
											}

											if (page<numPages-range) {//se non sono all'ultima pagina, allora mi servono anche i tasti successivo e ultimo
												if (page==numPages-range-1) {//se solo l'ultima pagina non si vede, allora mostro solo il tasto ultimo (e non successivo)
													paging+= '<li class="last"><a href="' + listpage + '?page=' + numPages + '">&gt;&gt;</a></li>';
												} else {
													paging+= '<li class="next"><a href="' + listpage + '?page=' + (page + 1) +'">&gt;</a></li>';
													paging+= '<li class="last"><a href="' + listpage + '?page=' + numPages + '">&gt;&gt;</a></li>';
												}
											}/*  else {//sono all'ultima pagina
												paging = paging + '<li class="btn_next"></li>';
											} */
											paging+='</ul></div>';
										}
										//$(".pager_result_news_top").html(paging);//paginazione sia in cima che in fondo
                    //$(".pager_result_news_btm").html(paging);
                     $(obj).html(html+paging);//paginazione solo in fondo
                 }/* ,
                 complete: function(){
                	 //goRoundPagerNews();//funzione per centrare via js la paginazione
                 } */
           });
	}

	/*dettaglio news*/
	function ottieniDettaglio(pathxml,iddiv,listpage){//url xml, div contenitore il dettaglio news, url della lista news
		var html = '';
		var uid = GetUrlParam('DETTAGLIO');
		var page = GetUrlParam('page');
			$.ajax({
					 type: "GET",
					 url: pathxml,
					 dataType: 'xml',
					 success: function(msg){
								var news;
								//if (uid!='') { news = $(msg).find("Item").filter("[uid="+uid+"]")	}
								if (uid!='') {   news = $(msg).find("Item[uid="+uid+"]");	}
								else { news=$(msg).get(0); }
								var titolo = $("Titolo", news).text().replace(/(<([^>]+)>)/ig,"");
								var image = $("Image", news).text().replace(/\s+/ig,'');//replace toglie spazi bianchi
								var isimage=image==blankImage?false:true;//la variabile isimage assume V se l'utente ha inserito un'immagine, F se non l'ha inserita (e Contentino ha inserito l'immagine vuota predefinita)
								var didascalia = $("Didascalia", news).text().replace(/(<([^>]+)>)/ig,"");//replace toglie i tag html
								var data = $("Data", news).text().split("-");
								if(data.length==3){
									var mese = parseInt(data[1],10);
									mese--;//i mesi partono da 1, l'array da 0
									data = data[0]+' '+stampaMessaggi('news','mesi')[mese]+' '+data[2];//sostituisco mese in cifra con mese in lettere
								}
								//var testo = $("Testo", news).text().replace(/(<([^>]+)>)/ig,"");
								var testo = $("Testo", news).text();//nel dettaglio non tolgo i tag html, altrimenti perdo formattazione tipo link e a capo
								html+='<h2>'+titolo+'</h2>';
								html+='<div class="btn_esp"><a href="'+listpage+'?page='+page+'"><span>'+stampaMessaggi('news','indietro')+'</span></a></div>';
								html+='<div class="articolo">';
								if(isimage){//se c'e' la miniatura allora la stampo
									html+='<div class="corredo">';
									html+=	'<img src="'+image+'" alt="" />';
									//if (didascalia.length>0) {//se c'e' la didascalia allora la stampo
									html+='<div class="didascalia">';
									html+=	'<div class="didascalia_testo">'+didascalia+'</div>';
									html+='</div>';
									//}
									html+='</div>';
								}
								html+=	'<div class="corpo">';
								html+=		'<div class="data">'+data+'</div>';
								html+=		'<div>'+testo+'</div>';
								html+=	'</div>';
								html+='</div>';

								$(iddiv).html(html);
						}

		});
	}

