var initial = new Array(9);
var buttons = new Array(9);
var fixed = false;

var BASE   = 0;
var SPORT  = 1;
var KINO   = 2;
var VIP_KINO  = 3;
var NIGHT  = 4;
var SUPER_BASE  = 5;
var VIP_SPORT = 10;
//only for calculator page
var SINGLE = 6;
var TWIN   = 7;
var ANT60  = 8;
var ANT90  = 9;

function hashCode( inText)
{
   inText=inText.toLowerCase();
   var hash=0;
   for (i=0; i<inText.length; i++) {   
       symbol = inText.charAt(i);
       Ucode = symbol.charCodeAt(0);
       hash += Ucode*i;
   }
   return hash;
}

function checkSubscriptionForm( form) 
{
    if( !checka( form, ''))
        return false;
    if( form.agreement) {
        if( !form.agreement.checked) {
            alert( 'Необходимо Ваше согласие со снятием полной стоимости добавленных пакетов');
            return false;
        }
    }
    for( i =0; i < buttons.length; i++) {
        if( initial[i]!=buttons[i]) {
            if( hashCode( form.lastname.value) != form.name_hash.value) {
                alert( "Внимание!!!\nВведённая фамилия не соответствует фамилии, на которую зарегистрирован данный абонентский договор");
                return false;
            }
            return true;
        }
    }
    if( form.resume_date)
        return true;
    alert( "Выбранный вариант подписки совпадает с уже имеющимся");
    return false;
}

function checkSuspendSubscriptionForm( form)
{
    if( !checka( form, ''))
        return false;
    if( hashCode( form.lastname.value) != form.name_hash.value) 
    {
        alert( "Внимание!!!\nВведённая фамилия не соответствует фамилии, на которую зарегистрирован данный абонентский договор");
        return false;
    }
    return true;
}
function fixSubscription()
{
    for( i=0; i < buttons.length; i++) {
       initial[i] = buttons[i];
       //alert( "#"+i+" = "+buttons[i]);
    }    
    fixed = true;
}

function reloadSubscription( a)
{
    if( a[0].selected) {
        bb = location.href;
        if( bb.indexOf( '?')!=-1)
            bb+='&current=1';
        else
            bb+='?current=1';
        location.href=bb;
    }
    if( a[1].selected) {
        bb = location.href;
        if( bb.indexOf( 'current=1')!=-1) {
            bb = bb.substring( 0, bb.indexOf( 'current=1')-1) + bb.substring( bb.indexOf( 'current=1')+9);
        }
        location.href=bb;
    }
}

function switchImage(adres, imgNum)
{
    if( fixed && increaseOnly) {        
      if( (initial[VIP_KINO] && imgNum == KINO) || (initial[SUPER_BASE] && imgNum == BASE) || (initial[VIP_SPORT] && imgNum == SPORT)) {
          alert( 'Изменение состава услуг в выбранном периоде возможно только в сторону увеличения');
          return false;
      }
      //спортивный бордак..надо переделывать//
      if( initial[KINO] && ( imgNum == VIP_KINO || imgNum == KINO) && buttons[KINO]== false && buttons[VIP_KINO] == true) {
          toggle( adres, KINO);
          toggle( adres, VIP_KINO);
          return;
      }
      //спортивный бордак..надо переделывать//
      if( initial[SPORT] && ( imgNum == VIP_SPORT || imgNum == SPORT) && buttons[SPORT]== false && buttons[VIP_SPORT] == true) {
          toggle( adres, SPORT);
          toggle( adres, VIP_SPORT);
          return;
      }
      if( imgNum !=0) {              
          if( initial[imgNum]) {
                  alert( 'Изменение состава услуг в выбранном периоде возможно только в сторону увеличения');
                  return false;      
          }
        }  
  }
  if (imgNum == KINO && buttons[VIP_KINO] == true) {
    toggle(adres, VIP_KINO);
  }
  if (imgNum == VIP_KINO && buttons[KINO] == true) {
    toggle(adres, KINO);
  }
  //sport and vip_sport
  if (imgNum == SPORT && buttons[VIP_SPORT] == true) {
    toggle(adres, VIP_SPORT);
  }
  if (imgNum == VIP_SPORT && buttons[SPORT] == true) {
    toggle(adres, SPORT);
  }
  //base - superbase
  if (imgNum == BASE) {
      if( !buttons[BASE])
          toggle(adres, SUPER_BASE);
      else
          return;
    }
  if (imgNum == SUPER_BASE) {
      if( !buttons[SUPER_BASE])
          toggle(adres, BASE);
      else
          return;
    }
  toggle(adres, imgNum);  
}

function toggle(adres, imgNum)
{
  if (buttons[imgNum]) {
      buttons[imgNum] = false;
      adres.elements['point_' + imgNum].value = 0;
      document.images['toggle_' + imgNum].src = "toggle_Off.gif";
  } else {
    buttons[imgNum] = true;
    adres.elements['point_' + imgNum].value = 1;
    document.images['toggle_' + imgNum].src = "toggle_On.gif";
  }
  cost_in_rubles();
}

function cost_in_rubles()
{
  //всего выбрали пакетов
  var sum = ( buttons[SPORT] ? 1 : 0) + 
            ( buttons[VIP_SPORT] ? 1 : 0) +
            ( buttons[KINO] ? 1 : 0) +
            ( buttons[VIP_KINO] ? 1 : 0) +              
            ( buttons[NIGHT] ? 1 : 0);            
  
  //сморим сколько випов
  var vipAmmount = buttons[VIP_KINO] + buttons[VIP_SPORT]; 
  //    
  var costAll = 0;
  if( !vipAmmount)
      costAll = Number(cost[sum]);
  else if( vipAmmount == 1)
      costAll = (buttons[VIP_KINO] == 1) ? Number(cost[sum+3]):Number(cost[sum])+300;
  else  
      costAll = Number( cost[sum+3])+300;
         
  // base ^ super_base
  var superBaseAdd = Number(cost[7]-cost[0]);
  var costOut = buttons[SUPER_BASE]?( costAll+superBaseAdd):costAll; 
  //отседа вывот )
  amount.innerHTML = costOut; 
}

  
