// ---------------------- obsolete ----------------------
function calc()
{
   l_type = document.details.proptype.value;
   l_start = document.details.year.value;
   l_paid = document.details.paid.value;

   i=0;

   while(g_arr_chg[i])
   {
      l_arr = (g_arr_chg[i]).split(',');
      l_tp = l_arr[0]
      l_yr = l_arr[1];
      l_pc = l_arr[2];

      if ((l_tp == l_type)&& (l_yr > l_start))
         l_paid = l_paid * (1+l_pc/100);
      i++;
   }
   l_paid_str = new String(parseInt(l_paid));

  // --- format price ---
   var l_pos = (l_paid_str.length)%3;
   if (l_pos == 0)
      l_pos=3;
   var l_formatted = l_paid_str.substring(0,l_pos);

   i=0;
   while(l_pos<l_paid_str.length)
   {
      l_formatted += "'";
      l_formatted += l_paid_str.substring(l_pos,l_pos+3);
      l_pos += 3;
   }
      

   document.details.worth.value = l_formatted + ' CHF';
}

// ---------------------- format worth and profit ----------------------
function calc2()
{
   l_worth = new String(parseInt(document.details.result.value));

   document.details.worth.value = chf_format(l_worth);

  // --- calculate profit ---
   l_profit = new String(parseInt(document.details.result.value) - 
                         parseInt(document.details.paid.value)); 

   document.details.profit.value = chf_format(l_profit);
}

// ---------------------- format money for CHF ----------------------
function chf_format(l_str_num)
{
  // --- format price ---
   var l_pos = (l_str_num.length)%3;
   if (l_pos == 0)
      l_pos=3;

   var l_formatted = l_str_num.substring(0,l_pos);

   i=0;
   while(l_pos<l_str_num.length)
   {
      l_formatted += "'";
      l_formatted += l_str_num.substring(l_pos,l_pos+3);
      l_pos += 3;
   }
   return l_formatted + ' CHF';
}
      
function CalcResult()
{
   l_amt = document.mortgage.l_purch_price.value;
   l_int = document.mortgage.l_int_rate.value;

   // --- period ---
   for (var i=0; i < document.mortgage.l_period.length; i++)
   {
      if (document.mortgage.l_period[i].checked)
      {
         var l_period = parseInt(document.mortgage.l_period[i].value);
      }
   } 

   l_stamp      = parseInt(l_amt * 0.033);
   l_notaire    = parseInt(l_amt * 0.008);
   l_total_cost = parseInt(parseFloat(l_amt) + parseFloat(l_stamp) + parseFloat(l_notaire));

   l_rang1      = parseInt(l_total_cost * 0.65);
   l_rang2      = parseInt(l_total_cost * 0.15);
   l_total_cash = parseInt(l_total_cost * 0.2);
   l_annual_int = parseInt(parseInt(l_rang1 * parseFloat(l_int)/100) + 
                           parseInt(l_rang2 * parseFloat(l_int+1)/100));

   if (l_period != 0)
   {
      l_annual_repay = parseInt(l_total_cost/l_period); 
   }
   else
   {
      l_annual_repay = parseInt(0);
   }

   l_annual_total  = parseInt(l_annual_repay + l_annual_int);
   l_monthly_total = parseInt(l_annual_total/12);

   document.mortgage.l_stamp.value        = chf_format(l_stamp.toString());
   document.mortgage.l_notaire.value      = chf_format(l_notaire.toString());
   document.mortgage.l_total_cost.value   = chf_format(l_total_cost.toString());
   document.mortgage.l_rang1.value        = chf_format(l_rang1.toString());
   document.mortgage.l_rang2.value        = chf_format(l_rang2.toString());
   document.mortgage.l_total_cash.value   = chf_format(l_total_cash.toString());
   document.mortgage.l_annual_int.value   = chf_format(l_annual_int.toString());
   document.mortgage.l_annual_repay.value = chf_format(l_annual_repay.toString());
   document.mortgage.l_annual_total.value = chf_format(l_annual_total.toString());
   document.mortgage.l_monthly_total.value = chf_format(l_monthly_total.toString());
}


