function countryChange()
{
   if (is_micropayment) updateTicket();
   putOperators(); showDetails(); setIframeCookie();
}

function operatorChange()
{
   showDetails(); setIframeCookie();
}

function countryAndOperatorChange()
{
   if (is_micropayment) updateTicket();
   putOperators(); showDetails(); setIframeCookie();
}

function updateTicket()
{
   var country_code = document.getElementById('country_code').value;
   if (global_updateTicket_country_code != country_code)
   {
      global_updateTicket_country_code = country_code;
      var ticket_id    = document.getElementById('ticket_id').value;
      var args         = '?id=' + ticket_id + '&cc=' + country_code;
      LoadURL('micropayment_ticket_update_ajax.php' + args,'updateTicket_listener');
   }
}
global_updateTicket_country_code = '';

function updateTicket_listener(ajax_result)
{
   if (ajax_result)
   {
      var rsp = ajax_result.split('|');

      if (rsp[0] == 'OK')
      {
         ivr_error = rsp[1] == '';
         if (!ivr_error)
         {
            nfo = rsp[1].split('-');
            document.getElementById('ivr_number').innerHTML = nfo[0];
            document.getElementById('ivr_cost').innerHTML   = nfo[1];
         }

         cc_error  = rsp[2] == '';
         if (!cc_error)
         {
            nfo = rsp[2].split('-');
            document.getElementById('cc_cost_0').innerHTML    = nfo[0];
            document.getElementById('cc_cost_1').innerHTML    = nfo[1];
         }

         if (document.getElementById('menu_ivr').className == 'item active')
            flip_panel('ivr');
         else if (document.getElementById('menu_cc').className == 'item active')
            flip_panel('cc');
      }
      else ivr_error = cc_error = false;
   }
}

function putOperators()
{
   var operators_select = document.getElementById('operator_code');
   operators_select.options.length = 0;

   var country_code = document.getElementById('country_code').value;
   var info         = getIframeCookie();
   var opsel        = false;

   if (country_code)
   {
      for (var operator_id in operators)
      {
         operator = operators[operator_id];
         if ( operator['country_code'] == country_code )
         {
            if (!opsel) opsel = info['operator_id'] == operator['operator_code'];
            operators_select.options[operators_select.options.length] = new Option(operator['operator_name'],operator['operator_code'],info['operator_id'] == operator['operator_code']);
         }
      }
   }
   if (opsel) setSelectValue(operators_select,info['operator_id']);
}

function showDetails()
{
   var operators_select = document.getElementById('operator_code');

   document.getElementById('details').className='';

   var operator_code = document.getElementById('operator_code').value
   var country_code  = document.getElementById('country_code').value
   var price         = prices[country_code+'-'+operator_code];

   document.getElementById('sms_price').innerHTML        = price['price'];
   document.getElementById('sms_phone_number').innerHTML = price['phone_number'];
   document.getElementById('sms_text').innerHTML         = price['sms_text'];
   if (getObject("sign_code")) signChange(getObject("sign_code"));
}

function setIframeCookie()
{
   var ctry = getSelectValue(getObject('country_code'));
   var oper = getSelectValue(getObject('operator_code'));

   var extras = '';
   if (getObject('sign_code')) extras = '|' + getSelectValue(getObject('sign_code'));

   var nombre = 'iframe_cookie';
   var contenido = ctry + '|' + oper + extras;
   setCookie(nombre,contenido,365,'/',COOKIE_DOMAIN);
}

function getIframeCookie()
{
   var nombre = 'iframe_cookie';
   if ((value = getCookie(nombre)) != null)
   {
      //alert('Cookie value: ' + value);

      var info = value.split('|');
      var ret = new Array();
      ret['country_code'] = info[0];
      ret['operator_id']  = info[1];
      return ret;
   }
   else return false;
}

function loadSelectValues()
{
   var info;
   if (info = getIframeCookie())
   {
      setSelectValue(getObject('country_code'),info['country_code']);
      //alert('country: ' + info['country_code']);
      if (info['operator_id'])
      {
         setSelectValue(getObject('operator_code'),info['operator_id']);
         //alert('operator: ' + info['operator_id']);
         countryAndOperatorChange();
      }
      else countryChange();
      //putOperators();
   }
}

function loadCookieListener()
{
   //alert('refreshing cookie');
   loadSelectValues();
   setTimeout('loadCookieListener()',5000);
}

function flip_panel(code)
{
   switch(code)
   {
      case 'sms'  : /* alert('activate sms'); */
         if (document.getElementById('panel_country')) document.getElementById('panel_country').className = '';
         if (document.getElementById('panel_sms'))     document.getElementById('panel_sms').className     = '';
         if (document.getElementById('panel_ivr'))     document.getElementById('panel_ivr').className     = 'hidden';
         if (document.getElementById('panel_cc'))      document.getElementById('panel_cc').className      = 'hidden';
         if (document.getElementById('panel_hlp'))     document.getElementById('panel_hlp').className     = 'hidden';

         if (document.getElementById('menu_sms'))      document.getElementById('menu_sms').className      = 'item active';
         if (document.getElementById('menu_ivr'))      document.getElementById('menu_ivr').className      = 'item';
         if (document.getElementById('menu_cc'))       document.getElementById('menu_cc').className       = 'item';
         if (document.getElementById('menu_hlp'))      document.getElementById('menu_hlp').className      = 'item';

         if (document.getElementById('panel_error'))   document.getElementById('panel_error').className   = 'hidden';
      break;

      case 'ivr'  : /* alert('activate ivr'); */
         if (document.getElementById('panel_country')) document.getElementById('panel_country').className = '';
         if (document.getElementById('panel_sms'))     document.getElementById('panel_sms').className     = 'hidden';
         if (document.getElementById('panel_cc'))      document.getElementById('panel_cc').className      = 'hidden';
         if (document.getElementById('panel_hlp'))     document.getElementById('panel_hlp').className     = 'hidden';

         if (document.getElementById('menu_sms'))      document.getElementById('menu_sms').className      = 'item';
         if (document.getElementById('menu_ivr'))      document.getElementById('menu_ivr').className      = 'item active';
         if (document.getElementById('menu_cc'))       document.getElementById('menu_cc').className       = 'item';
         if (document.getElementById('menu_hlp'))      document.getElementById('menu_hlp').className      = 'item';

         if (document.getElementById('panel_ivr'))     document.getElementById('panel_ivr').className     = ivr_error ? 'hidden' : '';
         if (document.getElementById('panel_error'))   document.getElementById('panel_error').className   = ivr_error ? '' : 'hidden';
      break;

      case 'cc'  : /* alert('activate cc'); */
         if (document.getElementById('panel_country')) document.getElementById('panel_country').className = '';
         if (document.getElementById('panel_sms'))     document.getElementById('panel_sms').className     = 'hidden';
         if (document.getElementById('panel_ivr'))     document.getElementById('panel_ivr').className     = 'hidden';
         if (document.getElementById('panel_hlp'))     document.getElementById('panel_hlp').className     = 'hidden';

         if (document.getElementById('menu_sms'))      document.getElementById('menu_sms').className      = 'item';
         if (document.getElementById('menu_ivr'))      document.getElementById('menu_ivr').className      = 'item';
         if (document.getElementById('menu_cc'))       document.getElementById('menu_cc').className       = 'item active';
         if (document.getElementById('menu_hlp'))      document.getElementById('menu_hlp').className      = 'item';

         if (document.getElementById('panel_cc'))      document.getElementById('panel_cc').className      = cc_error ? 'hidden' : '';
         if (document.getElementById('panel_error'))   document.getElementById('panel_error').className   = cc_error ? '' : 'hidden';
      break;

      case 'hlp' : /* alert('activate help'); */
         if (document.getElementById('panel_country')) document.getElementById('panel_country').className = 'hidden';
         if (document.getElementById('panel_sms'))     document.getElementById('panel_sms').className     = 'hidden';
         if (document.getElementById('panel_ivr'))     document.getElementById('panel_ivr').className     = 'hidden';
         if (document.getElementById('panel_cc'))      document.getElementById('panel_cc').className      = 'hidden';
         if (document.getElementById('panel_hlp'))     document.getElementById('panel_hlp').className     = '';

         if (document.getElementById('menu_sms'))      document.getElementById('menu_sms').className      = 'item';
         if (document.getElementById('menu_ivr'))      document.getElementById('menu_ivr').className      = 'item';
         if (document.getElementById('menu_cc'))       document.getElementById('menu_cc').className       = 'item';
         if (document.getElementById('menu_hlp'))      document.getElementById('menu_hlp').className      = 'item active';

         if (document.getElementById('panel_error'))   document.getElementById('panel_error').className   = 'hidden';
      break;
   }
}
var ivr_error = false;
var cc_error  = false;

