/*
**************************************************************************
* ORBITAL ELEMENTS
*
* The primary orbital elements are :
*
*    N = longitude of the ascending node
*    i = inclination to the ecliptic (plane of the Earth's orbit)
*    w = argument of perihelion
*    a = semi-major axis, or mean distance from Sun
*    e = eccentricity (0=circle, 0-1=ellipse, 1=parabola)
*    M = mean anomaly (0 at perihelion; increases uniformly with time)
*
* Related orbital elements are: 
*
*    w1 = N + w   = longitude of perihelion
*    L  = M + w1  = mean longitude
*    q  = a*(1-e) = perihelion distance
*    Q  = a*(1+e) = aphelion distance
*    P  = a ^ 1.5 = orbital period (years if a is in AU, astronomical units)
*    T  = Epoch_of_M - (M(deg)/360_deg) / P  = time of perihelion
*    v  = true anomaly (angle between position and perihelion)
*    E  = eccentric anomaly
*
***************************************************************************/
/*******************************************************************
 *  Zemljopisna sirina i duzina                                    *
 *                                                                                           *
 * Zagreb    : 45°48'43''N (45.812 N) - 15°58'52''E  (15.981   E)  *
 * Otočac    : 44°52'12''N (44.87  N) - 15°14'29''E  (15.24139 E)  *
 * Karlovac  : 45°29'00''N (45.483 N) - 15°33'00''E  (15.55    E)   *
 * Stockholm : 59°21´00''N (59.35 N)  - 18°04'00''E  (18.067   E) * 
 * Sibenik: 43 44 13 N  - 15 53 35 E
 * Vis: 43 3 32 N  -  16 11 41 E
 * Lastovo: 42 27 36 N  -  16 33 E
 * Mljet: 42 47 24 N - 17 24 36  E 
 * Split: 43 30 29 N   -  16 26 40 E
 * Osijek: 45 33 44 N  -  18 42 E
 * Rijeka: 45 19 38 N  -  14 26 44 E
 * Pula: 44 51 49 N  -  13 50 44 E
 * Varazdin: 46 18 29 N  -  16 20 33 E
 * Zadar: 44 6 49 N  - 15 13 58 E
 * Dubrovnik: 42 39 3 N  -  18 6 49 E
 * Kvaternikova 154i, Mikulici, Zagreb : 45 50.123 N 15 55.628 E
 * Tukljace:  44 54 48 N -15 13 32 E
 *******************************************************************/
//alert("orbit_kalkulator");
/*************************************************************
 *                  CONSTANTS  & GLOBAL VARIABLES            *
 *************************************************************/
var AU=149.6E6; // km
var zagreb_lat    = 45.812; var zagreb_lon    = 15.981;
var otocac_lat    = 44.87;var otocac_lon    = 15.24139;
var stockholm_lat = 59.35; var stockholm_lon = 18.067;
var Sibenik_lat  = degMinSec2Deg(43,44,13); var Sibenik_lon  = degMinSec2Deg(15,53,35); 
var test_lat  = 60; var test_lon  = 15;
var Vis_lat = degMinSec2Deg(43,3,32); var Vis_lon  = degMinSec2Deg(16,11,41);
var Lastovo_lat = degMinSec2Deg(42,27,36); var Lastovo_lon  = degMinSec2Deg(16,33,0);
var Mljet_lat = degMinSec2Deg(42,47,24); var Mljet_lon  = degMinSec2Deg(17,24,36);
var Split_lat = degMinSec2Deg(43,30,29); var Split_lon  = degMinSec2Deg(16,26,40);
var Osijek_lat = degMinSec2Deg(45,33,44); var Osijek_lon  =degMinSec2Deg(18,42,0);
var Rijeka_lat = degMinSec2Deg(45,19,38); var Rijeka_lon  =degMinSec2Deg(14,26,44);
var Pula_lat = degMinSec2Deg(44,51,49); var Pula_lon  = degMinSec2Deg(13,50,44);
var Varazdin_lat = degMinSec2Deg(46,18,29); var Varazdin_lon  = degMinSec2Deg(16,20,33);
var Zadar_lat = degMinSec2Deg(44,6,49); var Zadar_lon  = degMinSec2Deg(15,13,58);
var Dubrovnik_lat = degMinSec2Deg(42,39,3); var Dubrovnik_lon  = degMinSec2Deg(18,6,49); 
var Karlovac_lat = degMinSec2Deg(45,29,0); var Karlovac_lon  = degMinSec2Deg(15,33,0); 
var Kvaternikova154i_lat = degMinSec2Deg(45,50,7); var Kvaternikova154i_lon  = degMinSec2Deg(15,55,38); 
var Tukljace_lat = degMinSec2Deg(44,54,48); var Tukljace_lon  = degMinSec2Deg(15,13,32); 
  
var h_center = 0;              // degrees: Center of Sun's disk touches a mathematical horizon
var h_upper = -0.25;           // degrees: Sun's upper limb touches a mathematical horizon
var h_atm_refr = -0.583;       // degrees: Center of Sun's disk touches the horizon; atmospheric refraction accounted for
var h_atm_refr_upper = -0.833; // degrees: Sun's supper limb touches the horizon; atmospheric refraction accounted for
var h_civil = -6;              // degrees: Civil twilight (one can no longer read outside without artificial illumination)
var h_nautical = -12;          // degrees: Nautical twilight (navigation using a sea horizon no longer possible)
var h_amateur_astro = -15;     // degrees: Amateur astronomical twilight (the sky is dark enough for most astronomical observations)
var h_astro = -18;             // degrees: Astronomical twilight (the sky is completely dark)
var x_lon=zagreb_lon, x_lat=zagreb_lat, h_x=h_atm_refr_upper;
var GMT=1;
var ljetnoF= false;
var SamplesCollected = false;
var sunce, mjesec1, merkur, venera,  mars,jupiter,  saturn, uran, neptun, ulParam;
var myDocumentElements;
var myBody;
var myBodyElements;
/*************************************************************
 *                  CONSTANTS  & GLOBAL VARIABLES            *
 *************************************************************/
function pokupiVriDat(form)
{
  var result= new Date();
  
  result.setDate(parseInt(form.danForm.value));
  result.setMonth(parseInt(form.mjesecForm.value-1));
  result.setFullYear(parseInt(form.godinaForm.value));
  result.setHours(parseInt(form.satForm.value));
  result.setMinutes(parseInt(form.minForm.value));
  result.setSeconds(parseInt(form.secForm.value));	
  //alert(result.toLocaleString());
  return result;
}
function zimsko_select(form)
{
  form.zimsko.checked = true;
  form.ljetno.checked = false;
  ljetnoF = false;
}
function ljetno_select(form)
{
  form.zimsko.checked = false;
  form.ljetno.checked = true;
  ljetnoF = true;
}
function izborLokacijeUnos_f(form)
{
  form.izborLokacijeUnos.checked = true;
  form.izborLokacijeLista.checked = false;
  if (my_ie)
    {	
      document.all["izborLokacijeLista_div"].style.visibility = fHide;	
      document.all["izborLokacijeUnos_div"].style.visibility = fShow;
      
    }
  else if (moz || moznu)    
    {
      document.getElementById("izborLokacijeLista_div").style.visibility = fHide;
      document.getElementById("izborLokacijeUnos_div").style.visibility = fShow;
    }
  else if (n4)
    {	
      document.layers["izborLokacijeLista_div"].style.visibility = fHide;	
      document.layers["izborLokacijeUnos_div"].style.visibility = fShow;
    }
}
function izborLokacijeLista_f(form)
{
  form.izborLokacijeUnos.checked = false;
  form.izborLokacijeLista.checked = true;
  
  if (my_ie)
    {	
      document.all["izborLokacijeLista_div"].style.visibility = fShow;	
      document.all["izborLokacijeUnos_div"].style.visibility = fHide;
      
    }
  else if (moz || moznu)    
    {
      document.getElementById("izborLokacijeLista_div").style.visibility = fShow;
      document.getElementById("izborLokacijeUnos_div").style.visibility = fHide;
    }
  else if (n4)
    {	
      document.layers["izborLokacijeLista_div"].style.visibility = fShow;	
      document.layers["izborLokacijeUnos_div"].style.visibility = fHide;
      
    }
}
function uzmiSysTime(form)
{
  var tmp= new Date();
  alert("zadnja nedjelja u ozujku i listopadu koristene u proracunu\n kao datumi promjene za ljetno/zimsko racunanje vremena");
  PostaviFormDatVr(tmp, form);
} 
function PostaviFormDatVr(kada, form)
{
  var DSTvalue =0;
  form.danForm.value=kada.getDate();
  form.mjesecForm.value=kada.getMonth()+1;
  form.godinaForm.value=kada.getFullYear();
  form.satForm.value=kada.getHours();
  form.minForm.value=kada.getMinutes();
  form.secForm.value=kada.getSeconds();
  
  if (kada.getTimezoneOffset()<=0) DSTvalue=1;
  else 		 DSTvalue=-1;
  
  if (DaLiJeLjetnoVrijeme (kada) == false)
    {
      // ZIMSKO VRIJEME
      form.vremenskaZona.value=parseInt(-1*kada.getTimezoneOffset()/60);
      form.ljetno.checked=false;
      form.zimsko.checked=true;	
      ljetnoF = false;
    }
  else 
    {
      // LJETNO VRIJEME
      form.vremenskaZona.value=parseInt(-1*kada.getTimezoneOffset()/60-DSTvalue);
      form.ljetno.checked=true;
      form.zimsko	.checked=false;
      ljetnoF = true;
    }	
} 
function grad(form) 
{ 
  switch (form.IzaberiGrad.value)
    {
    case "Zagreb": x_lon=zagreb_lon; x_lat=zagreb_lat; break;
    case "Otocac": x_lon=otocac_lon; x_lat=otocac_lat; break;
    case "Stockholm": x_lon=stockholm_lon; x_lat=stockholm_lat; break;
    case "Karlovac": x_lon=Karlovac_lon; x_lat=Karlovac_lat; break;
    case "Sibenik": x_lon=Sibenik_lon; x_lat=Sibenik_lat; break;
    case "Vis": x_lon=Vis_lon; x_lat=Vis_lat; break;
    case "Lastovo": x_lon=Lastovo_lon; x_lat=Lastovo_lat; break;
    case "Mljet": x_lon=Mljet_lon; x_lat=Mljet_lat; break;
    case "Split": x_lon=Split_lon; x_lat=Split_lat; break;
    case "Osijek": x_lon=Osijek_lon; x_lat=Osijek_lat; break;
    case "Rijeka": x_lon=Rijeka_lon; x_lat=Rijeka_lat; break;
    case "Pula": x_lon=Pula_lon; x_lat=Pula_lat; break;
    case "Varazdin": x_lon=Varazdin_lon; x_lat=Varazdin_lat; break;
    case "Zadar": x_lon=Zadar_lon; x_lat=Zadar_lat; break;
    case "Dubrovnik": x_lon=Dubrovnik_lon; x_lat=Dubrovnik_lat; break;
	case "Mikulici": x_lon=Kvaternikova154i_lon; x_lat=Kvaternikova154i_lat; break;
	case "Tukljace": x_lon=Tukljace_lon; x_lat=Tukljace_lat; break;
    case "Test": x_lon=test_lon; x_lat=test_lat; break;
    default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
    }
  
}
function odaberiVremZonu(form)
{
  
  switch (form.vremenskaZona.value)
    {
    case "-12": GMT=-12; break;
    case "-11": GMT=-11; break;
    case "-10": GMT=-10; break;	
    case "-9":  GMT=-9; break;
    case "-8":  GMT=-8; break;
    case "-7":  GMT=-7; break;
    case "-6":  GMT=-6; break;
    case "-5":  GMT=-5; break;
    case "-4":  GMT=-4; break;
    case "-35": GMT=-3.5; break;
    case "-3":  GMT=-3; break;
    case "-2":  GMT=-2; break;
    case "-1":  GMT=-1; break;
    case "0":   GMT=0; break;
    case "1":   GMT=1; break;
    case "2":   GMT=2; break;
    case "3":   GMT=3; break;
    case "35":  GMT=3.5; break;
    case "4":   GMT=4; break;
    case "45":  GMT=4.5; break;
    case "5":   GMT=5; break;
    case "55":  GMT=5.5; break;
    case "6":   GMT=6; break;
    case "7":   GMT=7; break;
    case "8":   GMT=8; break;
    case "9":   GMT=9; break;
    case "10":  GMT=10; break;
    case "11":  GMT=11; break;
    case "12":  GMT=12; break;
    default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
    }
  
}
function odabrani_h(form)
{
  switch (form.Izaberi_h.value)
    {
    case "0": h_x= h_center; break;
    case "1": h_x= h_upper; break;
    case "2": h_x= h_atm_refr; break;
    case "3": h_x= h_atm_refr_upper; break;
    case "4": h_x= h_civil; break;
    case "5": h_x= h_nautical; break;
    case "6": h_x= h_amateur_astro; break;
    case "7": h_x= h_astro; break;
    default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
    }
  
}
function pokupiLat(form) 
{
  var result=0.0;
  
  result+=parseInt(form.latDeg.value);
  result+=parseInt(form.latMin.value)/60;
  result+=parseInt(form.latSec.value)/3600;
  
  return result;
}
function pokupiLon(form) 
{
  var result=0.0;
  
  result+=parseInt(form.lonDeg.value);
  result+=parseInt(form.lonMin.value)/60;
  result+=parseInt(form.lonSec.value)/3600;
  
  return result;
}
function racunaj_zaForm(form)
{
  //alert("ENTER::racunaj_zaForm");
  var kada= new Date();
  var sunce   = new Array;
  var merkur  = new Array;
  var venera  = new Array;
  var mjesec  = new Array;
  var mars    = new Array;
  var jupiter = new Array;
  var saturn  = new Array;
  var uran    = new Array;
  var neptun  = new Array;
  var mjesec_smjerFaze=0;
  
  window.status = "racunam...";
  
  kada=pokupiVriDat(form);
  form.InfoPanel.value = " ";
  
  if (form.izborLokacijeUnos.checked == true)
    {
      x_lat= pokupiLat(form);
      x_lon= pokupiLon(form);
      
      switch (form.latNS.value)
	{
	case "N": x_lat= Math.abs(x_lat); break;
	case "S": x_lat= -1*Math.abs(x_lat); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
      
      switch (form.lonEW.value)
	{
	case "E": x_lon= Math.abs(x_lon); break;
	case "W": x_lon= -1*Math.abs(x_lon); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
    }
  //alert("kada="+kada.toLocaleString());
  if (x_lat>=0)
    form.InfoPanel.value += deg2degSec(x_lat)+" N ";
  else
    form.InfoPanel.value += deg2degSec(Math.abs(x_lat))+" S ";
  
  if (x_lon>=0)
    form.InfoPanel.value +=deg2degSec(x_lon)+" E ";
  else	
    form.InfoPanel.value +=deg2degSec(Math.abs(x_lon))+" W ";
  
  form.InfoPanel.value += ispisiDate(kada);
  
  sunce   = sunce_kalkulator   (kada, h_x, x_lon, x_lat); 
  mjesec  = mjesec_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  merkur  = merkur_kalkulator  (kada, h_x, x_lon, x_lat, sunce); 
  venera  = venera_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  mars    = mars_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
  jupiter = jupiter_kalkulator (kada, h_x, x_lon, x_lat, sunce);
  saturn  = saturn_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  uran    = uran_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
  neptun  = neptun_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  
  window.status = "Done...";
  
  
  //*************************
  //***  S U N C E        ***
	//*************************    
	  
	 form.sunce_Azimuth.value 		  = deg2degSec(sunce["azimuth"]);
  //form.sunce_Magnituda.value	  = zaokruzi(sunce["magnitude"],2);
  form.sunce_Altitude.value		  = deg2degSec(sunce["altitude"]);
  form.sunce_PrividniPromjer.value  = sec2MinSec(sunce["d"]);
  form.sunce_Rz.value			  	  = zaokruzi(sunce["r"],2);
  form.sunce_RA.value			      = deg2hour(sunce["RA"]);
  //form.sunce_Elongacija.value	  = deg2degSec(sunce["elong"]);
  //form.sunce_Rs.value			  = zaokruzi(sunce["r"],2);
  form.sunce_Dec.value			  = deg2degSec(sunce["Dec"]);
  //form.sunce_Faza.value			  = (zaokruzi(sunce["faza"],2)*100).toString()+"%";
  if (sunce["cosLHA"] >= 1.0)
    {
      form.sunce_IzlazakUT.value 	  = "nikada";		
      form.sunce_IzlazakLT.value 	  = "nikada";		
      form.sunce_ZalazakUT.value	  = "uvijek";
      form.sunce_ZalazakLT.value	  = "uvijek";
    }
  else if (sunce["cosLHA"] <= -1.0)
    {
      form.sunce_IzlazakUT.value 	  = "uvijek";		
      form.sunce_IzlazakLT.value 	  = "uvijek";		
      form.sunce_ZalazakUT.value	  = "nikada";
      form.sunce_ZalazakLT.value	  = "nikada";
    }	
  else
    {	
      form.sunce_IzlazakUT.value 	  = (zaokruzi(sunce["izlazak UT"],2)).toString()+"h";		
      form.sunce_IzlazakLT.value 	  = UT2LT(sunce["izlazak local time"],0);		
      form.sunce_ZalazakUT.value	  = (zaokruzi(sunce["zalazak UT"],2)).toString()+"h";
      form.sunce_ZalazakLT.value	  = UT2LT(sunce["zalazak local time"],0 );
    } 
	//*************************
	//***  M J E S E C      ***
	//*************************                                                
	form.mjesec_Azimuth.value 		  = deg2degSec(mjesec["azimuth"]);
  form.mjesec_Magnituda.value		  = zaokruzi(mjesec["magnitude"],2);
  form.mjesec_Altitude.value		  = deg2degSec(mjesec["altitude"]);
  form.mjesec_PrividniPromjer.value = sec2MinSec(mjesec["d"]);
  form.mjesec_Rz.value			  = zaokruzi(mjesec["rg"],2);
  form.mjesec_RA.value			  = deg2hour(mjesec["RA"]);
  form.mjesec_Elongacija.value	  = deg2degSec(mjesec["elong"]);
  form.mjesec_Rs.value			  = zaokruzi(sunce["r"],2);
  form.mjesec_Dec.value			  = deg2degSec(mjesec["Dec"]);
  form.mjesec_Faza.value			  = (zaokruzi(mjesec["faza"],2)).toString()+"%";
  if (mjesec["cosLHA"] >= 1.0)
    {
      form.mjesec_IzlazakUT.value 	  = "nikada";		
      form.mjesec_IzlazakLT.value 	  = "nikada";		
      form.mjesec_ZalazakUT.value		  = "uvijek";
      form.mjesec_ZalazakLT.value		  = "uvijek";
    }
  else if (mjesec["cosLHA"] <= -1.0)
    {
      form.mjesec_IzlazakUT.value 	  = "uvijek";		
      form.mjesec_IzlazakLT.value 	  = "uvijek";		
      form.mjesec_ZalazakUT.value		  = "nikada";
      form.mjesec_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.mjesec_IzlazakUT.value 	  = (zaokruzi(mjesec["izlazak UT"],2)).toString()+"h";		
      form.mjesec_IzlazakLT.value 	  = UT2LT(mjesec["izlazak local time"],0);		
      form.mjesec_ZalazakUT.value		  = (zaokruzi(mjesec["zalazak UT"],2)).toString()+"h";
      form.mjesec_ZalazakLT.value		  = UT2LT(mjesec["zalazak local time"],0);
    } 
  
  
  mjesec_smjerFaze=norm360(mjesec["lonecl"]-sunce["lon"]);
  
  //alert("ilu= "+mjesec["faza"]+" ime1= "+(Math.floor(mjesec["faza"]/8)*8).toString()+" ime2= "+(Math.ceil(mjesec["faza"]/8)*8).toString());
  if (mjesec["faza"]<0.5)  document.images["MjesecevaFaza_slika"].src="pics/mjesec_faze/mjesec0.jpg";
  else if (mjesec["faza"]>99.5) document.images["MjesecevaFaza_slika"].src="pics/mjesec_faze/mjesec100.jpg";
  else
    {
      if ( mjesec_smjerFaze<=180 )
      	document.images["MjesecevaFaza_slika"].src='pics/mjesec_faze/mjesec'+(Math.floor(mjesec["faza"]/8)*8).toString()+"-"+(Math.ceil(mjesec["faza"]/8)*8).toString()+".jpg"; 
      else
      	document.images["MjesecevaFaza_slika"].src='pics/mjesec_faze/mjesec'+(Math.ceil(mjesec["faza"]/8)*8).toString()+"-"+(Math.floor(mjesec["faza"]/8)*8).toString()+".jpg"; 
    }
  
  //*************************
  //***  M E R K U R      ***
  //*************************                                                
	  
	  form.merkur_Azimuth.value 		  = deg2degSec(merkur["azimuth"]); 
  form.merkur_Magnituda.value		  = zaokruzi(merkur["magnitude"],2);
  form.merkur_Altitude.value		  = deg2degSec(merkur["altitude"]);
  form.merkur_PrividniPromjer.value = sec2MinSec(merkur["d"]);
  form.merkur_Rz.value			  = zaokruzi(merkur["rg"],2);
  form.merkur_RA.value			  = deg2hour(merkur["RA"]);
  form.merkur_Elongacija.value	  = deg2degSec(merkur["elong"]);
  form.merkur_Rs.value			  = zaokruzi(merkur["a"],2);
  form.merkur_Dec.value			  = deg2degSec(merkur["Dec"]);
  form.merkur_Faza.value			  = (zaokruzi(merkur["faza"],2)).toString()+"%";
  if (merkur["cosLHA"] >= 1.0)
    {
      form.merkur_IzlazakUT.value 	  = "nikada";		
      form.merkur_IzlazakLT.value 	  = "nikada";		
      form.merkur_ZalazakUT.value		  = "uvijek";
      form.merkur_ZalazakLT.value		  = "uvijek";
    }
  else if (merkur["cosLHA"] <= -1.0)
    {
      form.merkur_IzlazakUT.value 	  = "uvijek";		
      form.merkur_IzlazakLT.value 	  = "uvijek";		
      form.merkur_ZalazakUT.value		  = "nikada";
      form.merkur_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.merkur_IzlazakUT.value 	  = (zaokruzi(merkur["izlazak UT"],2)).toString()+"h";		
      form.merkur_IzlazakLT.value 	  = UT2LT(merkur["izlazak local time"],0 );		
      form.merkur_ZalazakUT.value		  = (zaokruzi(merkur["zalazak UT"],2)).toString()+"h";
      form.merkur_ZalazakLT.value		  = UT2LT(merkur["zalazak local time"],0 );
    } 
  
  //*************************
      //***  V E N E R A      ***
	  //*************************           
	  
	  form.venera_Azimuth.value 		  = deg2degSec(venera["azimuth"]);
  form.venera_Magnituda.value		  = zaokruzi(venera["magnitude"],2);
  form.venera_Altitude.value		  = deg2degSec(venera["altitude"]);
  form.venera_PrividniPromjer.value = sec2MinSec(venera["d"]);
  form.venera_Rz.value			  = zaokruzi(venera["rg"],2);
  form.venera_RA.value			  = deg2hour(venera["RA"]);
  form.venera_Elongacija.value	  = deg2degSec(venera["elong"]);
  form.venera_Rs.value			  = zaokruzi(venera["a"],2);
  form.venera_Dec.value			  = deg2degSec(venera["Dec"]);
  form.venera_Faza.value			  = (zaokruzi(venera["faza"],2)).toString()+"%";
  if (venera["cosLHA"] >= 1.0)
    {
      form.venera_IzlazakUT.value 	  = "nikada";		
      form.venera_IzlazakLT.value 	  = "nikada";		
      form.venera_ZalazakUT.value		  = "uvijek";
      form.venera_ZalazakLT.value		  = "uvijek";
    }
  else if (venera["cosLHA"] <= -1.0)
    {
      form.venera_IzlazakUT.value 	  = "uvijek";		
      form.venera_IzlazakLT.value 	  = "uvijek";		
      form.venera_ZalazakUT.value		  = "nikada";
      form.venera_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.venera_IzlazakUT.value 	  = (zaokruzi(venera["izlazak UT"],2)).toString()+"h";		
      form.venera_IzlazakLT.value 	  = UT2LT(venera["izlazak local time"],0);		
      form.venera_ZalazakUT.value		  = (zaokruzi(venera["zalazak UT"],2)).toString()+"h";
      form.venera_ZalazakLT.value		  = UT2LT(venera["zalazak local time"],0);
    } 
  
  //*************************
      //***     M A R S       ***
	  //*************************                                                
	  
	  form.mars_Azimuth.value 		  = deg2degSec(mars["azimuth"]);
  form.mars_Magnituda.value		  = zaokruzi(mars["magnitude"],2);
  form.mars_Altitude.value		  = deg2degSec(mars["altitude"]);
  form.mars_PrividniPromjer.value = sec2MinSec(mars["d"]);
  form.mars_Rz.value			  = zaokruzi(mars["rg"],2);
  form.mars_RA.value			  = deg2hour(mars["RA"]);
  form.mars_Elongacija.value	  = deg2degSec(mars["elong"]);
  form.mars_Rs.value			  = zaokruzi(mars["a"],2);
  form.mars_Dec.value			  = deg2degSec(mars["Dec"]);
  form.mars_Faza.value			  = (zaokruzi(mars["faza"],2)).toString()+"%";
  if (mars["cosLHA"] >= 1.0)
    {
      form.mars_IzlazakUT.value 	  = "nikada";		
      form.mars_IzlazakLT.value 	  = "nikada";		
      form.mars_ZalazakUT.value		  = "uvijek";
      form.mars_ZalazakLT.value		  = "uvijek";
    }
  else if (mars["cosLHA"] <= -1.0)
    {
      form.mars_IzlazakUT.value 	  = "uvijek";		
      form.mars_IzlazakLT.value 	  = "uvijek";		
      form.mars_ZalazakUT.value		  = "nikada";
      form.mars_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.mars_IzlazakUT.value 	  = (zaokruzi(mars["izlazak UT"],2)).toString()+"h";		
      form.mars_IzlazakLT.value 	  = UT2LT(mars["izlazak local time"],0);		
      form.mars_ZalazakUT.value	  = (zaokruzi(mars["zalazak UT"],2)).toString()+"h";
      form.mars_ZalazakLT.value	  = UT2LT(mars["zalazak local time"],0 );
    } 
  
  //*************************
      //***  J U P I T E R    ***
	  //*************************                                                
	  
	  form.jupiter_Azimuth.value 		  = deg2degSec(jupiter["azimuth"]);
  form.jupiter_Magnituda.value		  = zaokruzi(jupiter["magnitude"],2);
  form.jupiter_Altitude.value		  = deg2degSec(jupiter["altitude"]);
  form.jupiter_PrividniPromjer.value = sec2MinSec(jupiter["d"]);
  form.jupiter_Rz.value			  = zaokruzi(jupiter["rg"],2);
  form.jupiter_RA.value			  = deg2hour(jupiter["RA"]);
  form.jupiter_Elongacija.value	  = deg2degSec(jupiter["elong"]);
  form.jupiter_Rs.value			  = zaokruzi(jupiter["a"],2);
  form.jupiter_Dec.value			  = deg2degSec(jupiter["Dec"]);
  form.jupiter_Faza.value			  = (zaokruzi(jupiter["faza"],2)).toString()+"%";
  if (jupiter["cosLHA"] >= 1.0)
    {
      form.jupiter_IzlazakUT.value 	  = "nikada";		
      form.jupiter_IzlazakLT.value 	  = "nikada";		
      form.jupiter_ZalazakUT.value		  = "uvijek";
      form.jupiter_ZalazakLT.value		  = "uvijek";
    }
  else if (jupiter["cosLHA"] <= -1.0)
    {
      form.jupiter_IzlazakUT.value 	  = "uvijek";		
      form.jupiter_IzlazakLT.value 	  = "uvijek";		
      form.jupiter_ZalazakUT.value		  = "nikada";
      form.jupiter_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.jupiter_IzlazakUT.value 	  = (zaokruzi(jupiter["izlazak UT"],2)).toString()+"h";		
      form.jupiter_IzlazakLT.value 	  = UT2LT(jupiter["izlazak local time"],0);		
      form.jupiter_ZalazakUT.value		  = (zaokruzi(jupiter["zalazak UT"],2)).toString()+"h";
      form.jupiter_ZalazakLT.value		  = UT2LT(jupiter["zalazak local time"],0 );
    } 
  
  
  //*************************
      //***  S A T U R N      ***
	  //*************************                                                
	  
	  
	  form.saturn_Azimuth.value 		  = deg2degSec(saturn["azimuth"]);
  form.saturn_Magnituda.value		  = zaokruzi(saturn["magnitude"],2);
  form.saturn_Altitude.value		  = deg2degSec(saturn["altitude"]);
  form.saturn_PrividniPromjer.value = sec2MinSec(saturn["d"]);
  form.saturn_Rz.value			  = zaokruzi(saturn["rg"],2);
  form.saturn_RA.value			  = deg2hour(saturn["RA"]);
  form.saturn_Elongacija.value	  = deg2degSec(saturn["elong"]);
  form.saturn_Rs.value			  = zaokruzi(saturn["a"],2);
  form.saturn_Dec.value			  = deg2degSec(saturn["Dec"]);
  form.saturn_Faza.value			  = (zaokruzi(saturn["faza"],2)).toString()+"%";
  form.saturn_NagibPrstenova.value  = deg2degSec(saturn["nagib prstenova"]);
  
  if (saturn["cosLHA"] >= 1.0)
    {
      form.saturn_IzlazakUT.value 	  = "nikada";		
      form.saturn_IzlazakLT.value 	  = "nikada";		
      form.saturn_ZalazakUT.value		  = "uvijek";
      form.saturn_ZalazakLT.value		  = "uvijek";
    }
  else if (saturn["cosLHA"] <= -1.0)
    {
      form.saturn_IzlazakUT.value 	  = "uvijek";		
      form.saturn_IzlazakLT.value 	  = "uvijek";		
      form.saturn_ZalazakUT.value		  = "nikada";
      form.saturn_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.saturn_IzlazakUT.value 	  = (zaokruzi(saturn["izlazak UT"],2)).toString()+"h";		
      form.saturn_IzlazakLT.value 	  = UT2LT(saturn["izlazak local time"],0 );		
      form.saturn_ZalazakUT.value		  = (zaokruzi(saturn["zalazak UT"],2)).toString()+"h";
      form.saturn_ZalazakLT.value		  = UT2LT(saturn["zalazak local time"],0 );
    } 
  
  
  //*************************
      //***  U R A N          ***
	  //*************************                                                
	  form.uran_Azimuth.value 		= deg2degSec(uran["azimuth"]);
  form.uran_Magnituda.value		= zaokruzi(uran["magnitude"],2);
  form.uran_Altitude.value		= deg2degSec(uran["altitude"]);
  form.uran_PrividniPromjer.value = sec2MinSec(uran["d"]);
  form.uran_Rz.value			  	= zaokruzi(uran["rg"],2);
  form.uran_RA.value			  	= deg2hour(uran["RA"]);
  form.uran_Elongacija.value	  	= deg2degSec(uran["elong"]);
  form.uran_Rs.value			  	= zaokruzi(uran["a"],2);
  form.uran_Dec.value			  	= deg2degSec(uran["Dec"]);
  form.uran_Faza.value			= (zaokruzi(uran["faza"],2)).toString()+"%";
  if (uran["cosLHA"] >= 1.0)
    {
      form.uran_IzlazakUT.value 	  = "nikada";		
      form.uran_IzlazakLT.value 	  = "nikada";		
      form.uran_ZalazakUT.value		  = "uvijek";
      form.uran_ZalazakLT.value		  = "uvijek";
    }
  else if (uran["cosLHA"] <= -1.0)
    {
      form.uran_IzlazakUT.value 	  = "uvijek";		
      form.uran_IzlazakLT.value 	  = "uvijek";		
      form.uran_ZalazakUT.value		  = "nikada";
      form.uran_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.uran_IzlazakUT.value 	  = (zaokruzi(uran["izlazak UT"],2)).toString()+"h";		
      form.uran_IzlazakLT.value 	  = UT2LT(uran["izlazak local time"],0 );		
      form.uran_ZalazakUT.value	  = (zaokruzi(uran["zalazak UT"],2)).toString()+"h";
      form.uran_ZalazakLT.value	  = UT2LT(uran["zalazak local time"],0 );
    } 
  
  //*************************
      //***  N E P T U N      ***
	  //*************************        
	  
	  form.neptun_Azimuth.value 		  = deg2degSec(neptun["azimuth"]);
  form.neptun_Magnituda.value		  = zaokruzi(neptun["magnitude"],2);
  form.neptun_Altitude.value		  = deg2degSec(neptun["altitude"]);
  form.neptun_PrividniPromjer.value = sec2MinSec(neptun["d"]);
  form.neptun_Rz.value			  = zaokruzi(neptun["rg"],2);
  form.neptun_RA.value			  = deg2hour(neptun["RA"]);
  form.neptun_Elongacija.value	  = deg2degSec(neptun["elong"]);
  form.neptun_Rs.value			  = zaokruzi(neptun["a"],2);
  form.neptun_Dec.value			  = deg2degSec(neptun["Dec"]);
  form.neptun_Faza.value			  = (zaokruzi(neptun["faza"],2)).toString()+"%";
  if (neptun["cosLHA"] >= 1.0)
    {
      form.neptun_IzlazakUT.value 	  = "nikada";		
      form.neptun_IzlazakLT.value 	  = "nikada";		
      form.neptun_ZalazakUT.value		  = "uvijek";
      form.neptun_ZalazakLT.value		  = "uvijek";
    }
  else if (neptun["cosLHA"] <= -1.0)
    {
      form.neptun_IzlazakUT.value 	  = "uvijek";		
      form.neptun_IzlazakLT.value 	  = "uvijek";		
      form.neptun_ZalazakUT.value		  = "nikada";
      form.neptun_ZalazakLT.value		  = "nikada";
    }	
  else
    {	
      form.neptun_IzlazakUT.value 	  = (zaokruzi(neptun["izlazak UT"],2)).toString()+"h";		
      form.neptun_IzlazakLT.value 	  = UT2LT(neptun["izlazak local time"],0 );		
      form.neptun_ZalazakUT.value		  = (zaokruzi(neptun["zalazak UT"],2)).toString()+"h";
      form.neptun_ZalazakLT.value		  = UT2LT(neptun["zalazak local time"],0 );
    } 
  
}
function racunaj_print(form)
{
  //alert("ENTER: racunaj");
  window.status = "printing..";
  
  var kada= new Date();
  var sunce   = new Array;
  var merkur  = new Array;
  var venera  = new Array;
  var mjesec  = new Array;
  var mars    = new Array;
  var jupiter = new Array;
  var saturn  = new Array;
  var uran    = new Array;
  var neptun  = new Array;
  var tmpStr= "";
  var HTMLStr= "";
  
  
  kada=pokupiVriDat(form);
  //sad=pokupiVriDat(form);
  
  if (form.izborLokacijeUnos.checked == true)
    {
      x_lat= pokupiLat(form);
      x_lon= pokupiLon(form);
      
      switch (form.latNS.value)
	{
	case "N": x_lat= Math.abs(x_lat); break;
	case "S": x_lat= -1*Math.abs(x_lat); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
      
      switch (form.lonEW.value)
	{
	case "E": x_lon= Math.abs(x_lon); break;
	case "W": x_lon= -1*Math.abs(x_lon); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
    }
  //alert("kada="+kada.toLocaleString());
  if (x_lat>=0)
    tmpStr += deg2degSec(x_lat)+" N ";
  else
    tmpStr += deg2degSec(Math.abs(x_lat))+" S ";
  
  if (x_lon>=0)
    tmpStr +=deg2degSec(x_lon)+" E ";
  else	
    tmpStr +=deg2degSec(Math.abs(x_lon))+" W ";
  
  tmpStr += ispisiDate(kada);
  
  sunce   = sunce_kalkulator   (kada, h_x, x_lon, x_lat);
  mjesec  = mjesec_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  merkur  = merkur_kalkulator  (kada, h_x, x_lon, x_lat, sunce); 
  venera  = venera_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  mars    = mars_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
  jupiter = jupiter_kalkulator (kada, h_x, x_lon, x_lat, sunce);
  saturn  = saturn_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  uran    = uran_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
  neptun  = neptun_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
  
  HTMLStr =  '<html><head><title>Izlasci/Zalasci Sunca,Mjeseca,planeta </title></head><body>\n';
  HTMLStr += "<br>"+	tmpStr+"<br>";
  
  //*************************
  //***  S U N C E        ***
	//*************************
   
	  HTMLStr += "<br> S U N C E <br>"+"N[longitude of the ascending node]="+deg2degSec(sunce["N"]);
  HTMLStr += "<br>i[inclination to the ecliptic]="+deg2degSec(sunce["i"]);
  HTMLStr +=	"<br>w[argument of perihelion]="+sunce["w"];
  HTMLStr += 	"<br>a[semi-major axis or mean distance from Sun]="+sunce["a"]+ " au";
  HTMLStr += 	"<br>e[eccentricity]="+sunce["e"];
  HTMLStr += 	"<br>M[mean anomaly]="+sunce["M"];
  HTMLStr += 	"<br>v[true anomaly]="+sunce["v"];
  HTMLStr += 	"<br>r[heliocentric distance]="+sunce["r"];
  HTMLStr += 	"<br>lonecl="+sunce["lon"];
  HTMLStr += 	"<br> RA="+deg2hour(sunce["RA"]);
  HTMLStr += 	"<br> Decl="+deg2degSec(sunce["Dec"]);
  HTMLStr += 	"<br>azimuth="+deg2degSec(sunce["azimuth"]);
  HTMLStr += 	"<br>altitude="+deg2degSec(sunce["altitude"]);
  HTMLStr += 	"<br>Sun's altitude above the horizon = "+zaokruzi(sunce["altitude above the horizon"],2)+" deg. <br>";
  
  
  if (sunce["cosLHA"] >= 1.0)			HTMLStr +="Sunce nikada ne izlazi !! Polarna noc !! <br>";
  else if (sunce["cosLHA"] <= -1.0)		HTMLStr +="Sunce nikada ne zalazi !! Polarni dan !! <br>";
  else
    {	
      HTMLStr +="Sunce na jugu: "+sunce["UT_Sun_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+sunce["izlazak UT"]+" h UT "+UT2LT(sunce["izlazak local time"],0 )+" local time <br>";
      HTMLStr +="zalazak "+sunce["zalazak UT"]+" h UT "+UT2LT(sunce["zalazak local time"],0 )+" local time <br>";
    }
  
     //*************************
     //***  M J E S E C      ***
	   //************************* 
	  
	  HTMLStr +="<br>M J E S E C <br>"+
	  "N[longitude of the ascending node]="+deg2degSec(mjesec["N"])+
	  "<br>i [inclination to the ecliptic]="+deg2degSec(mjesec["i"])+
	  "<br>w[argument of perihelion]="+mjesec["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+mjesec["a"]+
	  "<br>e[eccentricity]="+mjesec["e"]+
	  "<br>M[mean anomaly]="+mjesec["M"]+
	  "<br>v[true anomaly]="+mjesec["v"]+
	  //"<br>r[heliocentric distance]="+mjesec["r"]+
	  "<br>lonecl="+mjesec["lonecl"]+
	  "<br>latecl="	+mjesec["latecl"]+
	  "<br>RA="+deg2hour(mjesec["RA"])+
	  "<br>Decl="+deg2degSec(mjesec["Dec"])+
	  "<br>azimuth="+deg2degSec(mjesec["azimuth"])+
	  "<br>altitude="+deg2degSec(mjesec["altitude"])+
	  "<br>geocentric distance="+mjesec["rg"]+" zemljinih radijusa"+
	  "<br>elongation="+deg2degSec(mjesec["elong"])+
	  "<br>faza="+mjesec["faza"]+
	  "<br>magnituda="+mjesec["magnitude"]+
	  "<br>prividni promjer="+mjesec["d"]+
	  "<br>mjesec altitude above the horizon = "+zaokruzi(mjesec["altitude above the horizon"],2)+" deg. <br>";
  if (mjesec["cosLHA"] >= 1.0)			HTMLStr +="mjesec nikada ne izlazi !!  <br>";
  else if (mjesec["cosLHA"] <= -1.0)		HTMLStr +="mjesec nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="mjesec na jugu: "+mjesec["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+mjesec["izlazak UT"]+" h UT "+UT2LT(mjesec["izlazak local time"],0 )+" local time <br>";
      HTMLStr +="zalazak "+mjesec["zalazak UT"]+" h UT "+mjesec["zalazak local time"].toLocaleString()+" local time <br>";
    } 
   
  //*************************
  //***  M E R K U R      ***
	//************************* 
	  
	  HTMLStr +="<br>M E R K U R<br>"+
	  "N[longitude of the ascending node]="+deg2degSec(merkur["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(merkur["i"])+
	  "<br>w[argument of perihelion]="+merkur["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+merkur["a"]+" au"+
	  "<br>e[eccentricity]="+merkur["e"]+
	  "<br>M[mean anomaly]="+merkur["M"]+
	  "<br>v[true anomaly]="+merkur["v"]+
	  "<br>r[heliocentric distance]="+merkur["r"]+
	  "<br>lonecl="+merkur["lonecl"]+
	  "<br>latecl="+merkur["latecl"]+
	  "<br>RA="+deg2hour(merkur["RA"])+
	  "<br>Decl="+deg2degSec(merkur["Dec"])+
	  "<br>azimuth="+deg2degSec(merkur["azimuth"])+
	  "<br>altitude="+deg2degSec(merkur["altitude"])+
	  "<br>geocentric distance="+merkur["rg"] +" au"+
	  "<br>elongation="+deg2degSec(merkur["elong"])+
	  "<br>faza="+merkur["faza"]+
	  "<br>magnituda="+merkur["magnitude"]+
	  "<br>prividni promjer="+merkur["d"]+
	  "<br> merkur altitude above the horizon="+deg2degSec(merkur["altitude above the horizon"])+"<br>";
  if (merkur["cosLHA"] >= 1.0)			HTMLStr +="merkur nikada ne izlazi !!  <br>";
  else if (merkur["cosLHA"] <= -1.0)		HTMLStr +="merkur nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="merkur na jugu: "+merkur["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+merkur["izlazak UT"]+" h UT "+merkur["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+merkur["zalazak UT"]+" h UT "+merkur["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  
  //*************************
  //***  V E N E R A      ***
	//************************* 
	  
	  
	  HTMLStr +="<br>V E N E R A<br>"+
	  "N[longitude of the ascending node]="+deg2degSec(venera["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(venera["i"])+
	  "<br>w[argument of perihelion]="+venera["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+venera["a"]+" au"+
	  "<br>e[eccentricity]="+venera["e"]+
	  "<br>M[mean anomaly]="+venera["M"]+
	  "<br>v[true anomaly]="+venera["v"]+
	  "<br>r[heliocentric distance]="+venera["r"]+
	  "<br>lonecl="+venera["lonecl"]+
	  "<br>latecl="+venera["latecl"]+
	  "<br>RA="+deg2hour(venera["RA"])+
	  "<br>Decl="+deg2degSec(venera["Dec"])+
	  "<br>azimuth="+deg2degSec(venera["azimuth"])+
	  "<br>altitude="+deg2degSec(venera["altitude"])+
	  "<br>geocentric distance="+venera["rg"] +" au"+
	  "<br>elongation="+deg2degSec(venera["elong"])+
	  "<br>faza="+venera["faza"]+
	  "<br>magnituda="+venera["magnitude"]+
	  "<br>prividni promjer="+venera["d"]+
	  "<br>venera altitude above the horizon = "+deg2degSec(venera["altitude above the horizon"])+"<br>";
  if (venera["cosLHA"] >= 1.0)			HTMLStr +="venera nikada ne izlazi !!  <br>";
  else if (venera["cosLHA"] <= -1.0)		HTMLStr +="venera nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="venera na jugu: "+venera["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+venera["izlazak UT"]+" h UT "+venera["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+venera["zalazak UT"]+" h UT "+venera["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
    //*************************
    //***  M A R S          ***
	  //************************* 	
	  
	  
	  HTMLStr +="<br>M A R S<br>"+ 
	  "N[longitude of the ascending node]="+deg2degSec(mars["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(mars["i"])+
	  "<br>w[argument of perihelion]="+mars["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+mars["a"]+" au"+
	  "<br>e[eccentricity]="+mars["e"]+
	  "<br>M[mean anomaly]="+mars["M"]+
	  "<br>v[true anomaly]="+mars["v"]+
	  "<br>r[heliocentric distance]="+mars["r"]+
	  "<br>lonecl="+mars["lonecl"]+
	  "<br>latecl="+mars["latecl"]+
	  "<br>RA="+deg2hour(mars["RA"])+
	  "<br>Decl="+deg2degSec(mars["Dec"])+
	  "<br>azimuth="+deg2degSec(mars["azimuth"])+
	  "<br>altitude="+deg2degSec(mars["altitude"])+
	  "<br>geocentric distance="+mars["rg"]+" au"+
	  "<br>elongation="+deg2degSec(mars["elong"])+
	  "<br>faza="+mars["faza"]+
	  "<br>magnituda="+mars["magnitude"]+
	  "<br>prividni promjer="+mars["d"]+
	  "<br>mars altitude above the horizon = "+deg2degSec(mars["altitude above the horizon"])+"<br>";
  if (mars["cosLHA"] >= 1.0)			HTMLStr +="mars nikada ne izlazi !!  <br>";
  else if (mars["cosLHA"] <= -1.0)		HTMLStr +="mars nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="mars na jugu: "+mars["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+mars["izlazak UT"]+" h UT "+mars["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+mars["zalazak UT"]+" h UT "+mars["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  //*************************
      //***  J U P I T E R    ***
	  //************************* 
	  
	  HTMLStr +="<br>J U P I T E R<br>"+ 
	  "N[longitude of the ascending node]="+deg2degSec(jupiter["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(jupiter["i"])+
	  "<br>w[argument of perihelion]="+jupiter["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+jupiter["a"]+" au"+
	  "<br>e[eccentricity]="+jupiter["e"]+
	  "<br>M[mean anomaly]="+jupiter["M"]+
	  "<br>v[true anomaly]="+jupiter["v"]+
	  "<br>r[heliocentric distance]="+jupiter["r"]+
	  "<br>lonecl="+jupiter["lonecl"]+
	  "<br>latecl="+jupiter["latecl"]+
	  "<br>RA="+deg2hour(jupiter["RA"])+
	  "<br>Decl="+deg2degSec(jupiter["Dec"])+
	  "<br>azimuth="+deg2degSec(jupiter["azimuth"])+
	  "<br>altitude="+deg2degSec(jupiter["altitude"])+
	  "<br>geocentric distance="+jupiter["rg"] +" au"+
	  "<br>elongation="+deg2degSec(jupiter["elong"])+
	  "<br>faza="+jupiter["faza"]+
	  "<br>magnituda="+jupiter["magnitude"]+
	  "<br>prividni promjer="+jupiter["d"]+
	  "<br>jupiter altitude above the horizon = "+deg2degSec(jupiter["altitude above the horizon"])+"<br>";
  if (jupiter["cosLHA"] >= 1.0)			HTMLStr +="jupiter nikada ne izlazi !!  <br>";
  else if (jupiter["cosLHA"] <= -1.0)		HTMLStr +="jupiter nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="jupiter na jugu: "+jupiter["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+jupiter["izlazak UT"]+" h UT "+jupiter["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+jupiter["zalazak UT"]+" h UT "+jupiter["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  //*************************
      //***  S A T U R N      ***
	  //************************* 
	  
	  HTMLStr +="<br>S A T U R N<br>"+ 
	  "N[longitude of the ascending node]="+deg2degSec(saturn["N"])+
	  "<br>i [inclination to the ecliptic]="+deg2degSec(saturn["i"])+
	  "<br>w[argument of perihelion]="+saturn["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+saturn["a"]+" au"+
	  "<br>e[eccentricity]="+saturn["e"]+
	  "<br>M[mean anomaly]="+saturn["M"]+
	  "<br>v[true anomaly]="+saturn["v"]+
	  "<br>r[heliocentric distance]="+saturn["r"]+
	  "<br>lonecl="+saturn["lonecl"]+
	  "<br>latecl="+saturn["latecl"]+
	  "<br>RA="+deg2hour(saturn["RA"])+
	  "<br>Decl="+deg2degSec(saturn["Dec"])+
	  "<br>azimuth="+deg2degSec(saturn["azimuth"])+
	  "<br>altitude="+deg2degSec(saturn["altitude"])+
	  "<br>geocentric distance="+saturn["rg"] +" au"+
	  "<br>elongation="+deg2degSec(saturn["elong"])+
	  "<br>faza="+saturn["faza"]+
	  "<br>magnituda="+saturn["magnitude"]+
	  "<br>nagib prstenova="+saturn["nagib prstenova"]+
	  "<br>prividni promjer="+saturn["d"]+
	  "<br>saturn altitude above the horizon = "+deg2degSec(saturn["altitude above the horizon"])+"<br>";
  if (saturn["cosLHA"] >= 1.0)			HTMLStr +="saturn nikada ne izlazi !!  <br>";
  else if (saturn["cosLHA"] <= -1.0)		HTMLStr +="saturn nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="saturn na jugu: "+saturn["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+saturn["izlazak UT"]+" h UT "+saturn["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+saturn["zalazak UT"]+" h UT "+saturn["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  //*************************
      //***  U R A N          ***
	  //************************* 
	  
	  
	  HTMLStr +="<br>U R A N<br>"+ 
	  "N[longitude of the ascending node]="+deg2degSec(uran["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(uran["i"])+
	  "<br>w[argument of perihelion]="+uran["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+uran["a"]+ " au"+
	  "<br>e[eccentricity]="+uran["e"]+
	  "<br>M[mean anomaly]="+uran["M"]+
	  "<br>v[true anomaly]="+uran["v"]+
	  "<br>r[heliocentric distance]="+uran["r"]+
	  "<br>lonecl="+uran["lonecl"]+
	  "<br>latecl="+uran["latecl"]+
	  "<br>RA="+deg2hour(uran["RA"])+
	  "<br>Decl="+deg2degSec(uran["Dec"])+
	  "<br>azimuth="+deg2degSec(uran["azimuth"])+
	  "<br>altitude="+deg2degSec(uran["altitude"])+
	  "<br>geocentric distance="+uran["rg"] +" au"+
	  "<br>elongation="+deg2degSec(uran["elong"])+
	  "<br>faza="+uran["faza"]+
	  "<br>magnituda="+uran["magnitude"]+
	  "<br>prividni promjer="+uran["d"]+
	  "<br>uran altitude above the horizon = "+deg2degSec(uran["altitude above the horizon"])+"<br>";
  
  if (uran["cosLHA"] >= 1.0)			HTMLStr +="uran nikada ne izlazi !!  <br>";
  else if (uran["cosLHA"] <= -1.0)		HTMLStr +="uran nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="uran na jugu: "+uran["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+uran["izlazak UT"]+" h UT "+uran["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+uran["zalazak UT"]+" h UT "+uran["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  //*************************
      //***  N E P T U N      ***
	  //************************* 
	  
	  HTMLStr +="<br>N E P T U N<br>"+ 
	  "N[longitude of the ascending node]="+deg2degSec(neptun["N"])+
	  "<br>i[inclination to the ecliptic]="+deg2degSec(neptun["i"])+
	  "<br>w[argument of perihelion]="+neptun["w"]+
	  "<br>a[semi-major axis or mean distance from Sun]="+neptun["a"]+" au"+
	  "<br>e[eccentricity]="+neptun["e"]+
	  "<br>M[mean anomaly]="+neptun["M"]+
	  "<br>v[true anomaly]="+neptun["v"]+
	  "<br>r[heliocentric distance]="+neptun["r"]+
	  "<br>lonecl="+neptun["lonecl"]+
	  "<br>latecl="+neptun["latecl"]+
	  "<br>RA="+deg2hour(neptun["RA"])+
	  "<br>Decl="+deg2degSec(neptun["Dec"])+
	  "<br>azimuth="+deg2degSec(neptun["azimuth"])+
	  "<br>altitude="+deg2degSec(neptun["altitude"])+
	  "<br>geocentric distance="+neptun["rg"] +" au"+
	  "<br>elongation="+deg2degSec(neptun["elong"])+
	  "<br>faza="+neptun["faza"]+
	  "<br>magnituda="+neptun["magnitude"]+
	  "<br>prividni promjer="+neptun["d"]+
	  "<br>neptun altitude above the horizon = "+deg2degSec(neptun["altitude above the horizon"])+"<br>";
  if (neptun["cosLHA"] >= 1.0)			HTMLStr +="neptun nikada ne izlazi !!  <br>";
  else if (neptun["cosLHA"] <= -1.0)		HTMLStr +="neptun nikada ne zalazi !!  <br>";
  else
    {	
      HTMLStr +="neptun na jugu: "+neptun["UT_in_south"]+" h UT<br>";
      HTMLStr +="izlazak "+neptun["izlazak UT"]+" h UT "+neptun["izlazak local time"].toLocaleString()+" local time <br>";
      HTMLStr +="zalazak "+neptun["zalazak UT"]+" h UT "+neptun["zalazak local time"].toLocaleString()+" local time <br>";
    }
  
  
  HTMLStr +="</b>";
  HTMLStr += '</body></html>\n';
  
  myWin = open("", "Izlasci_i_Zalasci_print","scrollbars=yes,resizable=yes,status=no,toolbar=no,menubar=yes");

  // open document for further output
  myWin.document.open();
  
  // create document
  myWin.document.write(HTMLStr);
  
  // close the document - (not the window!)
  myWin.document.close();  
  
  //document.write(HTMLStr);
  return;
  
}
function racunaj_zaPeriod(form)
{
  //alert("ENTER: racunaj_zaPeriod";
  
  var kada= new Date();
  var period,i;
  var sunce   = new Array;
  var merkur  = new Array;
  var venera  = new Array;
  var mjesec  = new Array;
  var mars    = new Array;
  var jupiter = new Array;
  var saturn  = new Array;
  var uran    = new Array;
  var neptun  = new Array;
  var tmpStr= "";
  var HTMLStr= '';
  
  kada=pokupiVriDat(form);
  //sad=pokupiVriDat(form);
  
  period=parseInt(form.period.value);
  //alert("period="+period);
  
  
  if (form.izborLokacijeUnos.checked == true)
    {
      x_lat= pokupiLat(form);
      x_lon= pokupiLon(form);
      
      switch (form.latNS.value)
	{
	case "N": x_lat= Math.abs(x_lat); break;
	case "S": x_lat= -1*Math.abs(x_lat); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
      
      switch (form.lonEW.value)
	{
	case "E": x_lon= Math.abs(x_lon); break;
	case "W": x_lon= -1*Math.abs(x_lon); break;
	default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
	}
    }
  //alert("kada="+kada.toLocaleString());
  if (x_lat>=0)
    tmpStr += deg2degSec(x_lat)+" N ";
  else
    tmpStr += deg2degSec(Math.abs(x_lat))+" S ";
  
  if (x_lon>=0)
    tmpStr +=deg2degSec(x_lon)+" E ";
  else	
    tmpStr +=deg2degSec(Math.abs(x_lon))+" W ";
  
  tmpStr += ispisiDate(kada);
  HTMLStr = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\n';
  HTMLStr += '<html><head><LINK REL=StyleSheet HREF="my_style.css" TYPE="text/css" MEDIA=screen>\n';
  HTMLStr += '<title>Izlasci/Zalasci Sunca,Mjeseca,planeta </title></head><body>\n';
  
  //HTMLStr += '<script language="JavaScript" src="browser_detect.js"></script>\n ';
  //HTMLStr += '<SCRIPT language=JavaScript src="menu.js"></SCRIPT>  \n';
  //HTMLStr += '<SCRIPT language=JavaScript src="menucontext.js"></SCRIPT>\n';
  //HTMLStr += '<script language="JavaScript" src="RedrawMenu.js"></script>\n';
  
  HTMLStr += "<hr><center><h3>Izlasci i zalasci sunca, mjeseca i planeta<br></h3><i>ulazni parametri: "+tmpStr+"</i></center><hr>";
  HTMLStr += '<br><table border="1" cellpadding="2" cellspacing="1"  class="myTable">\n';
  HTMLStr += '<tr><td nowrap align="center"><img alt="zemlja" border="0" src="pics/earth2.gif" width="56" height="60"></td>';
  HTMLStr += '<td nowrap align="center" colspan=2>SUNCE<br><img alt="sunce" border="0" src="pics/Sun.jpg" width="100" height="100"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=3>MJESEC<br><img alt="mjesec" border=0 width="100" height="100"  src="pics/mjesec_faze/mjesec100.jpg"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>MERKUR<br><img alt="merkur" border="0" src="pics/merkur.jpg" width="103" height="100"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>VENERA<br><img alt="venera" border="0" src="pics/venera.jpg" width="101" height="100"></td> \n';
  HTMLStr += '<td nowrap align="center" colspan=2>MARS<br><img alt="mars" border="0" src="pics/mars.jpg" width="100" height="100"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>JUPITER<br><img alt="jupiter" border="0" src="pics/jupiter.jpg" width="100" height="100"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>SATURN<br><img alt="saturn" border="0" src="pics/saturn.jpg" width="100" height="129"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>URAN<br><img alt="uran" border="0" src="pics/uranus.jpg" width="100" height="100"></td>\n';
  HTMLStr += '<td nowrap align="center" colspan=2>NEPTUN <br><img alt="neptun" border="0" src="pics/neptun.jpg" width="100" height="100"></td>\n';
  HTMLStr += '</tr>\n';
  HTMLStr += '<tr><td nowrap align="center">DATUM</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td><td nowrap align="center">iluminacija</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '<td nowrap align="center">izlazak</td><td nowrap align="center">zalazak</td>';
  HTMLStr += '</tr>\n';
  
  //za pocetni datum
  
  i=0;
  while (i<=period) 
    {
      window.status = "racunam za dan:"+i;
      
      sunce   = sunce_kalkulator   (kada, h_x, x_lon, x_lat);
      mjesec  = mjesec_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
      merkur  = merkur_kalkulator  (kada, h_x, x_lon, x_lat, sunce); 
      venera  = venera_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
      mars    = mars_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
      jupiter = jupiter_kalkulator (kada, h_x, x_lon, x_lat, sunce);
      saturn  = saturn_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
      uran    = uran_kalkulator    (kada, h_x, x_lon, x_lat, sunce);
      neptun  = neptun_kalkulator  (kada, h_x, x_lon, x_lat, sunce);
      
      HTMLStr += '<tr><td nowrap >'+ispisiSamoDatum(kada)+'</td>\n';
      //HTMLStr += '<tr><td nowrap >izlazak:<br>zalazak:</td>\n';
      
      //SUNCE
      if      (sunce["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>Polarna noć</td>';
      else if (sunce["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>Polarni dan</td>';
      else	HTMLStr += '<td nowrap >'+UT2LT(sunce["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(sunce["zalazak local time"],1)+'</td>';
      
      //MJESEC
      if      (mjesec["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=3>neizlazi</td>';
      else if (mjesec["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=3>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(mjesec["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(mjesec["zalazak local time"],1)+'</td>';
      
      HTMLStr += '<td nowrap align="center">'+zaokruzi(mjesec["faza"],2).toString()+'%'+'</td>';
      
  
      
      //MERKUR
      if      (merkur["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (merkur["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(merkur["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(merkur["zalazak local time"],1)+'</td>';
      
      
      //VENERA
      if      (venera["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (venera["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nnezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(venera["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(venera["zalazak local time"],1)+'</td>';
      
      
      //MARS
      if      (mars["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (mars["cosLHA"] <= -1.0)	HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(mars["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(mars["zalazak local time"],1)+'</td>';
      
      //JUPITER
      if      (jupiter["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (jupiter["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(jupiter["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(jupiter["zalazak local time"],1)+'</td>';
      
      //SATURN
      if      (saturn["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (saturn["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(saturn["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(saturn["zalazak local time"],1)+'</td>';
      
      //URAN
      if      (uran["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (uran["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(uran["izlazak local time"],1)+'</td><td nowrap align="center">'+UT2LT(uran["zalazak local time"],1)+'</td>';
      
      //NEPTUN
      if      (neptun["cosLHA"] >= 1.0)		HTMLStr += '<td nowrap align="center" colspan=2>neizlazi</td>';
      else if (neptun["cosLHA"] <= -1.0)		HTMLStr += '<td nowrap align="center" colspan=2>nezalazi</td>';
      else	HTMLStr += '<td nowrap align="center">'+UT2LT(neptun["izlazak local time"],1)+'</td><td nowrap align="center"	>'+UT2LT(neptun["zalazak local time"],1)+'</td>';
      
      
      HTMLStr += '</tr>';
      kada.setDate(parseInt(kada.getDate()+1));                
      i++;
      //alert("counter="+i+"datum="+ispisiDate(kada));
      
    } //end while
  
  HTMLStr += '</table></body></html>\n';
  
  
  myWin = open("", "Izlasci_i_Zalasci","scrollbars=yes,resizable=yes,status=no,toolbar=no,menubar=no");

  // open document for further output
  myWin.document.open();
  
  // create document
  myWin.document.write(HTMLStr);
  
  // close the document - (not the window!)
  myWin.document.close();  
  
  //document.writeln(HTMLStr);
  //window.status = "done..";
  //alert("done");
  return true;
}
function izracunaj(form) 
{
  //alert("ENTER:: izracunaj()");
  var counter=0;
  if (SamplesCollected == false )
  {
  	//alert("collecting samples()");
  	myDocumentElements=document.getElementsByTagName("body");
  	myBody=myDocumentElements.item(0);
  	myBodyElements=myBody.getElementsByTagName("samp");
    
    ulParam = myBodyElements.item(counter);counter++;
    
  	sunce = new Planet(myBodyElements,counter);counter+=12;
  	mjesec1 = new Planet(myBodyElements,counter);counter+=12;
  	merkur = new Planet(myBodyElements,counter);counter+=12;
  	venera = new Planet(myBodyElements,counter);counter+=12;
  	mars = new Planet(myBodyElements,counter);counter+=12;
  	jupiter = new Planet(myBodyElements,counter);counter+=12;
  	saturn = new Planet(myBodyElements,counter);counter+=12;
  	//alert("1");
  	saturn.setItemText("nagibPrstenova", myBodyElements.item(counter), " ");counter++;
  	uran = new Planet(myBodyElements,counter);counter+=12;
  	neptun = new Planet(myBodyElements,counter);counter+=12;
  	//  pluton = new Planet(myBodyElements,counter);counter+=12;
  	SamplesCollected = true;
  	//alert("2");
  }
  
  var kada= new Date();
  kada=pokupiVriDat(form);
  if ( ulParam.hasChildNodes())
  	do {
  		  ulParam.removeChild(ulParam.lastChild);
  	} while  (ulParam.childNodes.length > 0 );
  	
  ulParam.appendChild(document.createTextNode(" "));
  ulParam.appendChild(document.createTextNode("lokacija: "));
	
  
  if (form.izborLokacijeUnos.checked == true)
    {
      x_lat= pokupiLat(form);
      x_lon= pokupiLon(form);
      
      switch (form.latNS.value)
			{
				case "N": x_lat= Math.abs(x_lat); break;
				case "S": x_lat= -1*Math.abs(x_lat); break;
				default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
			}
      
      switch (form.lonEW.value)
			{
				case "E": x_lon= Math.abs(x_lon); break;
				case "W": x_lon= -1*Math.abs(x_lon); break;
				default: alert("This value is Unexpected: Contact Fox Mulder for details !"); break;
			}
    }
  
  //alert("kada="+kada.toLocaleString());
  
  if (x_lat>=0)		ulParam.appendChild(document.createTextNode(deg2degSec(x_lat)+" N "));
  else						ulParam.appendChild(document.createTextNode(deg2degSec(Math.abs(x_lat))+" S "));
  if (x_lon>=0)		ulParam.appendChild(document.createTextNode(deg2degSec(x_lon)+" E "));
  else	    			ulParam.appendChild(document.createTextNode(deg2degSec(Math.abs(x_lon))+" W "));
  
  
	ulParam.appendChild(document.createTextNode(" datum: "+ispisiDate(kada)+" GMT"+form.vremenskaZona.value));
  var RefSunce = new Array;
  var tmpMjesec = new Array;
  RefSunce = sunce_kalkulator(kada, h_x, x_lon, x_lat);  
  tmpMjesec = mjesec_kalkulator(kada, h_x, x_lon, x_lat, RefSunce);
  var mjesec_smjerFaze=norm360(tmpMjesec["lonecl"]-RefSunce["lon"]);
    
  //alert("ilu= "+tmpMjesec["faza"]+" ime1= "+(Math.floor(tmpMjesec["faza"]/8)*8).toString()+" ime2= "+(Math.ceil(tmpMjesec["faza"]/8)*8).toString());
  //alert("smjer faze="+mjesec_smjerFaze);
 
  if (tmpMjesec["faza"]<0.5)  document.images["MjesecevaFaza_slika"].src="pics/mjesec_faze/mjesec0.jpg";
  else if (tmpMjesec["faza"]>99.5) document.images["MjesecevaFaza_slika"].src="pics/mjesec_faze/mjesec100.jpg";
  else
    {
      if ( mjesec_smjerFaze<=180 )
      	document.images["MjesecevaFaza_slika"].src='pics/mjesec_faze/mjesec'+(Math.floor(tmpMjesec["faza"]/8)*8).toString()+"-"+(Math.ceil(tmpMjesec["faza"]/8)*8).toString()+".jpg"; 
      else
      	document.images["MjesecevaFaza_slika"].src='pics/mjesec_faze/mjesec'+(Math.ceil(tmpMjesec["faza"]/8)*8).toString()+"-"+(Math.floor(tmpMjesec["faza"]/8)*8).toString()+".jpg"; 
    }
 	// radijus zemlje 6378.14 km
 	tmpMjesec["rg"] = zaokruzi(tmpMjesec["rg"]*6378.14,1);
	tmpMjesec["a"] = zaokruzi(RefSunce["r"],2);
  mjesec1.set(tmpMjesec);
  
  merkur.set(merkur_kalkulator(kada, h_x, x_lon, x_lat, RefSunce)); 
  venera.set(venera_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  mars.set(mars_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  jupiter.set(jupiter_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  saturn.set(saturn_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  uran.set(uran_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  neptun.set(neptun_kalkulator(kada, h_x, x_lon, x_lat, RefSunce));
  	
  	RefSunce["a"] = 0;
  	sunce.set(RefSunce);
 
  //alert("RETURN::izracunaj");
} // end izracunaj()
function Planet (BodyElements, index)
{
  //alert("ENTER::Planet ()");
  
  var initValue = " ";
  
  //methods
  this.setItemText = setItemText;
  this.set = set;
  this.remove = remove;
  
  //members
  this.izlazak = BodyElements.item(index);index++;
  this.azimut = BodyElements.item(index);index++;
  this.magnituda = BodyElements.item(index);index++;
  this.zalazak = BodyElements.item(index);index++;
  this.altitude = BodyElements.item(index);index++;
  this.prividniPromjer = BodyElements.item(index);index++;
  this.udaljenostOdZemlje = BodyElements.item(index);index++;
  this.RA = BodyElements.item(index);index++;
  this.elongacija = BodyElements.item(index);index++;
  this.udaljenostOdSunca = BodyElements.item(index);index++;
  this.Decl = BodyElements.item(index);index++;
  this.iluminacija = BodyElements.item(index);index++;
  this.ostalo = new Array;
  
	//alert("calling remove");
 	this.remove();
  this.izlazak.appendChild(document.createTextNode(initValue));
  this.azimut.appendChild(document.createTextNode(initValue));
  this.magnituda.appendChild(document.createTextNode(initValue));
  this.zalazak.appendChild(document.createTextNode(initValue));
  this.altitude.appendChild(document.createTextNode(initValue));
  this.prividniPromjer.appendChild(document.createTextNode(initValue));
  this.udaljenostOdZemlje.appendChild(document.createTextNode(initValue));
  this.RA.appendChild(document.createTextNode(initValue));
  this.elongacija.appendChild(document.createTextNode(initValue));
  this.udaljenostOdSunca.appendChild(document.createTextNode(initValue));
  this.Decl.appendChild(document.createTextNode(initValue));
  this.iluminacija.appendChild(document.createTextNode(initValue)); 
  
  //alert("RETURN::Planet ()");
  return;
}
function set(values)
{	
  //alert("ENTER::Planet.set()");
  //alert(this.izlazak.childNodes.item(0));
  //this.remove();
 	//alert(this.izlazak.childNodes.length);
 	
	if (values["cosLHA"] >= 1.0)    {
      this.izlazak.replaceChild(document.createTextNode("neizlazi"), this.izlazak.lastChild);		
      this.zalazak.replaceChild(document.createTextNode("neizlazi"), this.zalazak.lastChild);
    }
  else if (values["cosLHA"] <= -1.0)    {
      this.izlazak.replaceChild(document.createTextNode("nezalazi"), this.izlazak.lastChild);		
      this.zalazak.replaceChild(document.createTextNode("nezalazi"), this.zalazak.lastChild);
    }	
  else {	
      this.izlazak.replaceChild(document.createTextNode(UT2LT(values["izlazak local time"],0)), this.izlazak.lastChild);		
      this.zalazak.replaceChild(document.createTextNode(UT2LT(values["zalazak local time"],0)), this.zalazak.lastChild);
    } 
     
  this.azimut.replaceChild(document.createTextNode(deg2degSec(values["azimuth"])), this.azimut.lastChild);
  this.magnituda.replaceChild(document.createTextNode(zaokruzi(values["magnitude"],2)), this.magnituda.lastChild);
  this.altitude.replaceChild(document.createTextNode(deg2degSec(values["altitude"])), this.altitude.lastChild);
  this.prividniPromjer.replaceChild(document.createTextNode(sec2MinSec(values["d"])), this.prividniPromjer.lastChild);
  if (values["rg"])  this.udaljenostOdZemlje.replaceChild(document.createTextNode(zaokruzi(values["rg"],2)), this.udaljenostOdZemlje.lastChild);
  else this.udaljenostOdZemlje.replaceChild(document.createTextNode(zaokruzi(values["r"],2)), this.udaljenostOdZemlje.lastChild);   //sunce 
  this.RA.replaceChild(document.createTextNode(deg2hour(values["RA"])), this.RA.lastChild);
  this.elongacija.replaceChild(document.createTextNode(deg2degSec(values["elong"])), this.elongacija.lastChild);
  this.udaljenostOdSunca.replaceChild(document.createTextNode(zaokruzi(values["a"],2)), this.udaljenostOdSunca.lastChild);
  this.Decl.replaceChild(document.createTextNode(deg2degSec(values["Dec"])), this.Decl.lastChild);
  this.iluminacija.replaceChild(document.createTextNode((zaokruzi(values["faza"],2)).toString()+"%"), this.iluminacija.lastChild);
  
  if (this.ostalo["nagibPrstenova"] != null )
  		this.ostalo["nagibPrstenova"].replaceChild(document.createTextNode(deg2degSec(values["nagib prstenova"])), this.ostalo["nagibPrstenova"].lastChild); 
  
  //alert("RETURN::Planet.set()");
}
function setItemText(name,item,text)
{	
  //alert("ENTER::Planet.setItemText()");
  
  this.ostalo[name]	 = item;
  if (this.ostalo[name].hasChildNodes() == true && this.ostalo[name].childNodes.length > 0) 
  	this.ostalo[name].removeChild(this.ostalo[name].lastChild);
  this.ostalo[name].appendChild(document.createTextNode(text));
  
  //alert("RETURN::Planet.setItemText()");
}
function remove()
{
	//alert("ENTER::remove::Planet.noOfNodes="+this.izlazak.childNodes.length);
	if ( this.izlazak.hasChildNodes() )
		if (this.izlazak.childNodes.length > 0 )
		{
	  this.izlazak.replaceChild(document.createTextNode(" "), this.izlazak.lastChild);
  	this.azimut.replaceChild(document.createTextNode(" "),  this.azimut.lastChild);
  	this.magnituda.replaceChild(document.createTextNode(" "),  this.magnituda.lastChild);
  	this.zalazak.replaceChild(document.createTextNode(" "),  this.zalazak.lastChild);
  	this.altitude.replaceChild(document.createTextNode(" "),  this.altitude.lastChild);
  	this.prividniPromjer.replaceChild(document.createTextNode(" "),  this.prividniPromjer.lastChild);
		this.udaljenostOdZemlje.replaceChild(document.createTextNode(" "),  this.udaljenostOdZemlje.lastChild);
  	this.RA.replaceChild(document.createTextNode(" "),  this.RA.lastChild);
  	this.elongacija.replaceChild(document.createTextNode(" "),  this.elongacija.lastChild);
  	this.udaljenostOdSunca.replaceChild(document.createTextNode(" "),  this.udaljenostOdSunca.lastChild);
  	this.Decl.replaceChild(document.createTextNode(" "),  this.Decl.lastChild);
  	this.iluminacija.replaceChild(document.createTextNode(" "),  this.iluminacija.lastChild);
  	if (this.ostalo["nagibPrstenova"] != null)
  	{
  		if (this.ostalo["nagibPrstenova"].hasChildNodes() )
	  		if (  this.ostalo["nagibPrstenova"].childNodes.length > 0 ) 
  		{
 				this.ostalo["nagibPrstenova"].replaceChild(document.createTextNode(" "),  this.ostalo["nagibPrstenova"].lastChild);
 			}
 		}
 	} 
 //alert("RETURN::remove::Planet.noOfNodes="+this.izlazak.childNodes.length);
}
function obrisi()
{
	sunce.remove();
	mjesec1.remove();
  merkur.remove(); 
  venera.remove();
 	mars.remove();
  jupiter.remove();
  saturn.remove();
  uran.remove();
  neptun.remove();
	if ( ulParam.hasChildNodes())
  	do {
  		  ulParam.removeChild(ulParam.lastChild);
  	} while  (ulParam.childNodes.length > 0 );
  //alert("remove");
}
//alert("orbit_kalkulator loaded");
