
// FUNZIONI SPECIFICHE alle singole voci di ADMIN

function cor_partiture_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.in_maestro.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>In Maestro</b> è obbligatorio.";
			return;
		}
		if (document.myForm.in_coristi.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>In Coristi</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.titolo1.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo1</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/cor_partiture/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function cor_albo_doit(opt,ok) {

	if (trim(document.myForm.testo.value).length>4000) {
		document.getElementById("adm_workM_id").innerHTML =
			"Il campo <b>Testo</b> può contenere al massimo 4000 caratteri.";
		return;
	}

	if (trim(document.myForm.testo.value).length==0)
		document.myForm.testo.value = "Albo vuoto!";
		
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}		

function guestbook_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (trim(document.myForm.indir_ip.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Indir.IP</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.data.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.nome.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Nome</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.mesg.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Messaggio</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.mesg.value).length>1000) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Messaggio</b> può contenere al massimo 1000 caratteri.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.data.value).length > 0) {
			ok = unadataora(trim(document.myForm.data.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Data</b> deve essere una data+ora GG.MM.AAAA HH:MI";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/guestbook/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function cor_forum_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.id_membro.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Nome</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.data.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.indir_ip.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Indir.IP</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.testo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Testo</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.testo.value).length>1000) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Testo</b> può contenere al massimo 1000 caratteri.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.data.value).length > 0) {
			ok = unadataora(trim(document.myForm.data.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Data</b> deve essere una data+ora GG.MM.AAAA HH:MI";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/cor_forum/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function repertorio_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (trim(document.myForm.titolo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.aut_arr.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Aut./Arr.</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/repertorio/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function gall_doc_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.id_gall.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Galleria</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.testo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Testo</b> è obbligatorio.";
			return;
		}
		if (document.myForm.doc_file.value.length==0 &&
			  document.myForm.doc_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Documento</b> è obbligatorio.";
			return;
		}
		// verifica formati particolari
		if (trim(document.myForm.oby.value).length>0) {
			ok = unnum(trim(document.myForm.oby.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Ordine</b> deve essere un numero.";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/gall_doc/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function gall_img_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.id_gall.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Galleria</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (document.myForm.img_file.value.length==0 &&
			  document.myForm.img_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Immagine</b> è obbligatorio.";
			return;
		}
		// verifica formati particolari
		if (trim(document.myForm.oby.value).length>0) {
			ok = unnum(trim(document.myForm.oby.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Ordine</b> deve essere un numero.";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/gall_img/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function gall_video_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.id_gall.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Galleria</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.oby.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ordine</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.testo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Testo</b> è obbligatorio.";
			return;
		}
		if (document.myForm.video_file.value.length==0 &&
			  document.myForm.video_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Video</b> è obbligatorio.";
			return;
		}
		// verifica formati particolari
		if (trim(document.myForm.oby.value).length>0) {
			ok = unnum(trim(document.myForm.oby.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Ordine</b> deve essere un numero.";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/gall_video/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	

	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
	
	if (opt=='upd' || opt=='ins')
		setTimeout("upload_progress('admin/gall_video/progress.php')", 5000); // 5 secondi
}

function upload_progress(page) {
	done = ajaxR_progress();
	if (done > 0 && done < 100) {
		ajaxpage(page + "?done=" + done, "adm_workM_id");
		setTimeout("upload_progress('" + page + "')", 1000);
	}
}

function gall_rassegna_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.id_gall.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Galleria</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.oby.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ordine</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.testo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Testo</b> è obbligatorio.";
			return;
		}
		if (document.myForm.img_file.value.length==0 &&
			  document.myForm.img_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Immagine</b> è obbligatorio.";
			return;
		}
		// verifica formati particolari
		if (trim(document.myForm.oby.value).length>0) {
			ok = unnum(trim(document.myForm.oby.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Ordine</b> deve essere un numero.";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/gall_rassegna/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function gallerie_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.tipo.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Tipo</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (document.myForm.pubbl.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Pubblica</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.titolo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.data.value).length != 10) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio (GG.MM.AAAA).";
			return;
		}
		ok = unadata(trim(document.myForm.data.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> deve essere nel formato GG.MM.AAAA";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/gallerie/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function occupazione_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (trim(document.myForm.evento_dal.value).length != 10) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio (GG.MM.AAAA)";
			return;
		}
		if (trim(document.myForm.contatto.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Contatto</b> è obbligatorio.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.evento_dal.value).length > 0) {
			ok = unadata(trim(document.myForm.evento_dal.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Data</b> deve essere una data GG.MM.AAAA";
				return;
			}
		}
		if (trim(document.myForm.importo.value).length>0) {
			ok = unnum(trim(document.myForm.importo.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Importo</b> deve essere un numero.";
				return;
			}
		}
		if (trim(document.myForm.pagato.value).length > 0) {
			ok = unadata(trim(document.myForm.pagato.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Pagato il</b> deve essere una data GG.MM.AAAA";
				return;
			}
		}
		if (trim(document.myForm.note.value).length>2000) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Note</b> può contenere al massimo 2000 caratteri.";
			return;
		}
	}
		
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/occupazione/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function calendario_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (trim(document.myForm.evento_dal.value).length != 16) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Evento dal</b> è obbligatorio (GG.MM.AAAA HH:MI)";
			return;
		}
		if (trim(document.myForm.luogo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Luogo</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.titolo1.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo1</b> è obbligatorio.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.visib_dal.value).length > 0) {
			ok = unadata(trim(document.myForm.visib_dal.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Visibile dal</b> deve essere una data GG.MM.AAAA";
				return;
			}
		}
		if (trim(document.myForm.visib_al.value).length > 0) {
			ok = unadata(trim(document.myForm.visib_al.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Visibile al</b> deve essere una data GG.MM.AAAA";
				return;
			}
		}
		if (trim(document.myForm.evento_dal.value).length > 0) {
			ok = unadataora(trim(document.myForm.evento_dal.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Evento dal</b> deve essere una data+ora GG.MM.AAAA HH:MI";
				return;
			}
		}
		if (trim(document.myForm.evento_al.value).length > 0) {
			ok = unadataora(trim(document.myForm.evento_al.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Evento al</b> deve essere una data+ora GG.MM.AAAA HH:MI";
				return;
			}
		}
		
		if (trim(document.myForm.descr.value).length>2000) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Descrizione</b> può contenere al massimo 2000 caratteri.";
			return;
		}
		
		// decimali (coordinate)
		if (trim(document.myForm.coord_lat.value).length>0) {
			ok = unfloat(trim(document.myForm.coord_lat.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Latitudine</b> deve contenere un decimale.";
				return;
			}
			if (parseInt(trim(document.myForm.coord_lat.value),'10') > 90 ||
			    parseInt(trim(document.myForm.coord_lat.value),'10') < -90) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Latitudine</b> deve contenere un decimale tra -90 e 90.";
				return;
			}
		}
		if (trim(document.myForm.coord_lng.value).length>0) {
			ok = unfloat(trim(document.myForm.coord_lng.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Longitudine</b> deve contenere un decimale.";
				return;
			}
			if (parseInt(trim(document.myForm.coord_lng.value),'10') > 180 ||
			    parseInt(trim(document.myForm.coord_lng.value),'10') < -180) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Longitudine</b> deve contenere un decimale tra -180 e 180.";
				return;
			}
		}
		if ((trim(document.myForm.coord_lat.value).length>0 &&
		     trim(document.myForm.coord_lng.value).length==0) ||
				(trim(document.myForm.coord_lat.value).length==0 &&
				 trim(document.myForm.coord_lng.value).length>0)) {
			document.getElementById("adm_workM_id").innerHTML =
				"Latitudine e longitudine devono essere entrambi vuoti o presenti.";
			return;
		}

		// valori di default
		if (document.myForm.in_agenda==0) document.myForm.in_agenda=2; // =no
		if (document.myForm.in_home==0)   document.myForm.in_home=2;   // =no
	}
		
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/calendario/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function organico_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.cognome.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Cognome</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.nome.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Nome</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.paswd.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Password</b> è obbligatorio.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.cap.value).length>0) {
			ok = unnum(trim(document.myForm.cap.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>CAP</b> deve essere un numero.";
				return;
			}
		}
		if (trim(document.myForm.nascita.value).length>0) {
			ok = unadata(trim(document.myForm.nascita.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Nascita</b> deve essere nel formato GG.MM.AAAA";
				return;
			}
		}
	}
		
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/organico/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function collegamenti_doit(opt,ok) {
	//alert(opt);
	linke_hide();
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.nome.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Nome</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.link.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Link</b> è obbligatorio.";
			return;
		}
		
		// verifica formati particolari
		if (trim(document.myForm.ordine.value).length>0) {
			ok = unnum(trim(document.myForm.ordine.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Ordine</b> deve essere un numero.";
				return;
			}
		}
	}
		
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/collegamenti/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function albodoro_doit(opt,ok) {
	//alert(opt);
	linke_hide();
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.evento.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Evento</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.data.value).length != 10) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio (GG.MM.AAAA).";
			return;
		}
		ok = unadata(trim(document.myForm.data.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> deve essere nel formato GG.MM.AAAA";
			return;
		}
		if (trim(document.myForm.ospite.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ospite</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/albodoro/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function ricorrenza_doit(opt,ok) {
	//alert(opt);
	linke_hide();
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (trim(document.myForm.data.value).length != 10) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> è obbligatorio (GG.MM.AAAA).";
			return;
		}
		ok = unadata(trim(document.myForm.data.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Data</b> deve essere nel formato GG.MM.AAAA";
			return;
		}
		if (trim(document.myForm.testo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ricorrenza</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/ricorrenza/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function disco_brani_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
		
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori 
		if (document.myForm.id_disco.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Disco</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.oby.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ordine</b> è obbligatorio (numero).";
			return;
		}
		if (trim(document.myForm.titolo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo</b> è obbligatorio.";
			return;
		}
	
		// verifico formati speciali
		ok = unnum(trim(document.myForm.oby.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Ordine</b> deve contenere un numero.";
			return;
		}
		if (trim(document.myForm.durata.value).length != 0) {
			ok = untempo(trim(document.myForm.durata.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Durata</b> deve contenere minuti e secondi (M:SS o MM:SS).";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/disco_brani/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
	
	if (opt=='upd' || opt=='ins')
		setTimeout("upload_progress('admin/disco_brani/progress.php')", 5000); // 5 secondi
}

function discografia_doit(opt,ok) {
	//alert(opt);
	linke_hide();
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	 
	if (opt=='upd' || opt=='ins') {
		// verifica campi obbligatori
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.anno.value).length != 4) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Anno</b> è obbligatorio (4 cifre).";
			return;
		}
		ok = unnum(trim(document.myForm.anno.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Anno</b> deve contenere un numero.";
			return;
		}
		if (trim(document.myForm.titolo1.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Titolo1</b> è obbligatorio.";
			return;
		}
		if (document.myForm.img_file.value.length==0 &&
			  document.myForm.img_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Copertina</b> è obbligatorio.";
			return;
		}
		if (document.myForm.media.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Supporto</b> è obbligatorio.";
			return;
		}
		if (trim(document.myForm.dispo.value).length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Disponibile</b> è obbligatorio.";
			return;
		}
		
		// verifico formati speciali
		ok = unnum(trim(document.myForm.dispo.value));
		if (ok==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Disponibile</b> deve contenere un numero.";
			return;
		}
		if (trim(document.myForm.prezzo.value).length > 0) {
			ok = unnum(trim(document.myForm.prezzo.value));
			if (ok==0) {
				document.getElementById("adm_workM_id").innerHTML =
					"Il campo <b>Prezzo</b> deve contenere un numero.";
				return;
			}
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/discografia/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function img_home_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (document.myForm.img_file.value.length==0 &&
			  document.myForm.img_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Immagine</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/img_home/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

function img_sfondo_doit(opt,ok) {
	//alert(opt);
	document.myForm.opt.value = opt;
	
	// verifica dato selezionato
	if (opt=='upd' || opt=='del') {
		if (document.myForm.id.value=="") {
			document.getElementById("adm_workM_id").innerHTML =
				"Occorre prima scegliere un dato dalla lista dei dati trovati.";
			return;
		}
	}
	// verifica campi obbligatori 
	if (opt=='upd' || opt=='ins') {
		if (document.myForm.mese.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Mese</b> è obbligatorio.";
			return;
		}
		if (document.myForm.visib.value==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Visibile</b> è obbligatorio.";
			return;
		}
		if (document.myForm.img_file.value.length==0 &&
			  document.myForm.img_prev.value.length==0) {
			document.getElementById("adm_workM_id").innerHTML =
				"Il campo <b>Immagine</b> è obbligatorio.";
			return;
		}
	}
	
	if (opt=='del' && ok=='no') {
		// richiesta della conferma per il del
		ajaxpage("admin/img_sfondo/delete.php","adm_workM_id");
		// non serve mettere "visible", 
		// e inoltre rischia di non essere ancora disponibile e dare errore!
		//document.getElementById("adm_workY_id").style.visibility="visible";
		return;
	}
	
	ajaxpage("admin/wait.php","adm_workM_id");
	// attendo mezzo secondo per lasciar visualizzare il wait
	setTimeout("dosub()", 500); // mezzo secondo
}

// utlilities

// as suggested in
// blog.stevenlevithan.com/archives/faster-trim-javascript
//
function trim(value) {
	return value.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

function untesto(value) {
	var ok=0;
	for (i=0;i<value.length;i++)
		if (value.charAt(i) != ' ')
			ok=1;
	return ok;
}

function unora(value) {
	var ora=/(^\d\d:\d\d$)/;
	if (!ora.test(value)) 
		return 0;
	// ev. verifica ora valida
	return 1;
}

function untempo(value) {
	var tempo1=/(^\d:\d\d$)/;
	var tempo2=/(^\d\d:\d\d$)/;
	if (!tempo1.test(value) && !tempo2.test(value))
		return 0;
	// ev. verifica min:sec validi
	return 1;
}

function unadata(value) {
	var data=/(^\d\d.\d\d.\d\d\d\d$)/;
	if (!data.test(value)) 
		return 0;
	// ev. verifica data valida
	return 1;
}
function unadataora(value) {
	var dataora=/(^\d\d.\d\d.\d\d\d\d \d\d:\d\d$)/;
	if (!dataora.test(value)) 
		return 0;
	// ev. verifica data e ora valida
	return 1;
}

function unmese(value) {
	var mese=/(^\d\d.\d\d\d\d$)/;
	if (!mese.test(value)) 
		return 0;
	// ev. verifica mese valido
	return 1;
}

function unnum(value) {
	var num=/(^\d+$)/;
	if (!num.test(value)) 
		return 0;
	return 1;
}

function unfloat(value) {
	var float=/(^-?\d+.?\d+$)/;
	if (!float.test(value)) 
		return 0;
	return 1;
}



