/* ======================================================================
DESC: calcolo dell'ICI in EURO

PLATFORMS: Win
====================================================================== */

/* ===================================================================
programma ideato da Luciano Bragalone <l.bragalone@libero.it>
per StudioEliana :all rights reserved!
======================================================================*/


/* Begin */

/* STEP 1: inizio a raccogliere i dati dal modulo */ 

function accontoesaldo (form) {
    valorecatastale=eval(form.valorecatastale.value)
    aliquota=eval(form.aliquota.value)
    detrazione=eval(form.detrazionecomplessiva.value)
    proprietariresidenti=eval(form.proprietariresidenti.value)
    mesi=eval(form.mesi.value)
    percentuale=eval(form.percentuale.value)
    

/* STEP 2: calcolo la rendita rivalutata */
    rivalutazione=105

/* STEP 3: calcolo la quota di detrazione in base ai residenti */
    detrazioneinbaseresidenti=(detrazione/proprietariresidenti)

/* STEP 4: calcolo la detrazione spettante in funzione dei mesi di utilizzo */
    detrazionemesi=(detrazioneinbaseresidenti/12*mesi)

/* STEP 5 controllo che tutti i campi siano completi */

if(form.valorecatastale.value=="") {
window.alert("ATTENZIONE: inserire un valore catastale") 
           form.valorecatastale.focus()               
           form.valorecatastale.select() 
           return             
}
                             
if(form.aliquota.value==""||form.aliquota.value<4||form.aliquota.value>7) {
window.alert("ATTENZIONE: inserire un valore coerente per l'aliquota") 
           form.aliquota.focus()            
           form.aliquota.select() 
           return
}
                     
if(form.detrazionecomplessiva.value=="") {
window.alert("ATTENZIONE: inserire la detrazione; se non si ha diritto alla detrazione indicare 0") 
           form.detrazionecomplessiva.focus()            
           form.detrazionecomplessiva.select()
           return 
}


if(form.percentuale.value==""||form.percentuale.value<1||form.percentuale.value>100){
window.alert("ATTENZIONE: valore errato in quota di possesso! Inserire la percentuale corretta") 
           form.percentuale.focus()            
           form.percentuale.select() 
           return
}



if(form.percentuale.value==100&&form.proprietariresidenti.value>1){
window.alert("ATTENZIONE: la quota di possesso è incongruente con il numero dei prorietari residenti")
           form.percentuale.focus()            
           form.percentuale.select()
           return
}

/* STEP 6: calcolo l' ICI da versare ed eseguo l'approx ai centesimi */

icidov=(valorecatastale*rivalutazione*aliquota/1000*mesi/12*percentuale/100-detrazionemesi)

icidovuta=Math.round(icidov*100)/100

/* STEP 7: evito che vengano mostrati valori negativi */
if(icidovuta<=0)
form.icidovuta.value=0

/* STEP 8: nel caso non ci sia nulla da pagare suggerisco di ricontrollare i dati */
if(icidovuta<=0)
window.alert("ATTENZIONE: non c'è nulla da versare, Vi suggeriamo comunque di ricontrollare tutti i dati inseriti ")

if(icidovuta>0)
form.icidovuta.value = icidovuta


/* =====================================================
questi step non sono necessari, li ho lasciati comunque! 
========================================================*/

/* STEP 9: evito che vengano mostrati valori incoerenti */

if(icidovuta>0&&form.aliquota.value<4||form.aliquota.value>7)
form.icidovuta.value=""
form.giugno.value=""

if(icidovuta>0&&form.percentuale.value==100&&form.proprietariresidenti.value>1)
form.icidovuta.value=""
form.giugno.value=""

if(icidovuta>0&&form.percentuale.value==""||form.percentuale.value<1||form.percentuale.value>100)
form.icidovuta.value=""
form.giugno.value=""

}


/* STEP ONE: inizio a raccogliere i dati dal modulo per calcolare le rate */

function acconto (form) {
giugno=eval(form.icidovuta.value)
mesi=eval(form.mesi.value)

/* STEP TWO: verifico che il calcolo della rata sia possibile */
if(mesi!=12)
window.alert
("ATTENZIONE: non è possibile calcolare le rate se non si è considerato l'intero anno!")


/* STEP THREE: calcolo le rate ed eseguo l'approx ai centesimi */
if(mesi=12)
icigiu=(giugno/2)
icigiugno=Math.round(icigiu*100)/100
form.giugno.value=icigiugno

/* STEP FOUR: evito che vengano mostrati valori incoerenti */

if(icigiugno>0&&form.mesi.value!=12)
form.giugno.value=""

}
/* Script End */
