var cardImages = new Object();
cardImages['VI'] = new Image();
cardImages['VI'].src = "img/cards/visa.gif";

cardImages['CA'] = new Image();
cardImages['CA'].src = "img/cards/mc.gif";

cardImages['DC'] = new Image();
cardImages['DC'].src = "img/cards/dc.gif";

/*cardImages['AX'] = new Image();
cardImages['AX'].src = "img/cards/ax.gif";*/

cardImages['JC'] = new Image();
cardImages['JC'].src = "img/cards/jcb.gif";

cardImages['WM'] = new Image();
cardImages['WM'].src = "img/cards/wm.gif";

cardImages['KP'] = new Image();
cardImages['KP'].src = "img/cards/kp.gif";

cardImages['EP'] = new Image();
cardImages['EP'].src = "img/cards/eport.gif";

var companyCard = new Object();

companyCard['ЛЯ'] = ['VI','CA','AX'];
companyCard['ДТ'] = ['VI','CA','AX'];
companyCard['Е3'] = ['VI','CA','AX'];
companyCard['ТЛ'] = ['VI','CA','AX'];
companyCard['5Ж'] = ['VI','CA','AX'];
companyCard['БЕ'] = ['VI','CA','AX'];
companyCard['ЮХ'] = ['VI','CA','AX'];
companyCard['АЛ'] = ['VI','CA','AX'];
companyCard['ДЯ'] = ['VI','CA','AX'];
companyCard['БГ'] = ['VI','CA','AX'];
companyCard['П7'] = ['VI','CA','AX'];
companyCard['НИ'] = ['VI','CA','AX'];
companyCard['ЛЖ'] = ['VI','CA','AX'];
companyCard['БД'] = ['VI','CA','AX'];
companyCard['ЯП'] = ['VI','CA','AX'];
companyCard['УБ'] = ['VI','CA','AX'];
companyCard['ОШ'] = ['VI','CA','AX'];
companyCard['ПН'] = ['VI','CA','AX'];
companyCard['ДХ'] = ['VI','CA','AX'];
companyCard['ИН'] = ['VI','CA','AX'];
companyCard['ИЯ'] = ['VI','CA','AX'];
companyCard['ПО'] = ['VI','CA','AX'];
companyCard['Е5'] = ['VI','CA','AX'];
companyCard['ПФ'] = ['VI','CA','AX'];
companyCard['7Б'] = ['VI','CA','AX'];
companyCard['ЯК'] = ['VI','CA','AX'];
companyCard['ПМ'] = ['VI','CA','AX'];
companyCard['5Н'] = ['VI','CA','AX'];
companyCard['КД'] = ['VI','CA','AX'];
companyCard['ТЮ'] = ['VI','CA','AX'];
companyCard['5М'] = ['VI','CA','AX'];
companyCard['БЧ'] = ['VI','CA','AX'];
companyCard['1Ы'] = ['VI','JC','DC','CA','AX'];
companyCard['7К'] = ['VI','CA','AX'];
companyCard['ЖИ'] = ['VI','CA','AX'];
companyCard['ТЖ'] = ['VI','CA','AX'];
companyCard['T6'] = ['VI','CA','AX'];
companyCard['ЮР'] = ['VI','CA','AX'];
companyCard['5К'] = ['VI','CA','AX'];
companyCard['3Р'] = ['VI','CA','AX'];
companyCard['ST'] = ['VI','CA','AX'];
companyCard['УУ'] = ['VI','CA','AX'];
companyCard['БЦ'] = ['VI','CA','AX'];
companyCard['НН'] = ['VI','CA','AX'];
companyCard['ЯЛ'] = ['VI','CA','AX'];
companyCard['ЮТ'] = ['VI','CA','AX'];
companyCard['ХИ'] = ['VI','CA','AX'];
companyCard['РЯ'] = ['VI','CA','AX'];
companyCard['Ж4'] = ['VI','CA','AX'];
companyCard['ЦП'] = ['VI','CA','AX'];
companyCard['РД'] = ['VI','CA','AX'];
companyCard['К8'] = ['VI','CA','AX'];
companyCard['Г5'] = ['VI','CA','AX'];
companyCard['ЛС'] = ['VI','CA','AX'];
companyCard['ЮЕ'] = ['VI','CA','AX'];
companyCard['Ж5'] = ['VI','CA','JC','DC','AV','AX'];
companyCard['РГ'] = ['VI','CA','AX'];
companyCard['ЮК'] = ['VI','CA','AX'];
companyCard['ВГ'] = ['VI','CA','AX'];
companyCard['ЦР'] = ['VI','CA','AX'];
companyCard['ОЛ'] = ['VI','CA','AX'];
companyCard['ТФ'] = ['VI','CA','AX'];
companyCard['ГК'] = ['VI','CA','AX'];
companyCard['ДБ'] = ['VI','CA','AX'];
companyCard['ГЕ'] = ['VI','CA','AX'];
companyCard['НП'] = ['VI','CA','AX'];
companyCard['ЕГ'] = ['VI','CA','AX'];
companyCard['ЦЛ'] = ['VI','CA','AX'];
companyCard['Л6'] = ['VI','CA','AX'];
companyCard['ЮЖ'] = ['VI','CA','AX'];
companyCard['ЛП'] = ['VI','CA','AX'];
companyCard['ИП'] = ['VI','CA','AX'];
companyCard['БЮ'] = ['VI','CA','AX'];
companyCard['ВФ'] = ['VI','CA','AX'];
companyCard['Е6'] = ['VI','CA','AX'];
companyCard['ДУ'] = ['VI','CA','AX'];
companyCard['ГИ'] = ['VI','CA','AX'];
companyCard['ЮН'] = ['VI','CA','AX'];
companyCard['КУ'] = ['VI','CA','AX'];
companyCard['6В'] = ['VI','CA','AX'];
companyCard['РЛ'] = ['VI','CA','AX'];
companyCard['ЮА'] = ['VI','CA','AX'];
companyCard['4Л'] = ['VI','CA','AX'];
companyCard['9У'] = ['VI','CA','AX'];
companyCard['ГЮ'] = ['VI','CA','AX'];
companyCard['ЛУ'] = ['VI','CA','AX'];
companyCard['АГ'] = ['VI','CA','AX'];
companyCard['ХГ'] = ['VI','CA','AX'];
companyCard['ГЛ'] = ['VI','CA','AX'];
companyCard['ХД'] = ['VI','CA','AX'];
companyCard['С7'] = ['VI','CA','AX'];
companyCard['ИК'] = ['VI','CA','AX'];
companyCard['Ц3'] = ['VI','CA','AX'];
companyCard['ЮО'] = ['VI','CA','AX'];
companyCard['ФП'] = ['VI','CA','AX'];
companyCard['ИА'] = ['VI','CA','AX'];
companyCard['Ы1'] = ['VI','CA','AX'];
companyCard['ЮЛ'] = ['VI','CA','AX'];
companyCard['РБ'] = ['VI','CA','AX'];
companyCard['J2'] = ['VI','CA','AX'];
companyCard['К2'] = ['VI','CA','AX'];
companyCard['ФР'] = ['VI','CA','AX'];
companyCard['ДС'] = ['VI','CA'];
companyCard['РФ'] = ['VI','CA','AX'];
companyCard['5Д'] = ['VI','CA','AX'];
companyCard['КЮ'] = ['VI','CA','AX'];
companyCard['У8'] = ['VI','CA','AX'];
companyCard['ГФ'] = ['VI','CA','AX'];
companyCard['АД'] = ['VI','CA','AX'];
companyCard['ПД'] = ['VI','CA','AX'];
companyCard['ФЕ'] = ['VI','CA','AX'];
companyCard['ЛА'] = ['VI','CA','AX'];
companyCard['Р8'] = ['VI','CA','AX'];
companyCard['IV'] = ['VI','CA','AX'];
companyCard['6У'] = ['VI','CA','AX'];
companyCard['Ж2'] = ['VI','CA','AX'];
companyCard['ФМ'] = ['VI','CA','AX'];
companyCard['СЛ'] = ['VI','CA','AX'];
companyCard['У9'] = ['VI','CA','AX'];
companyCard['МЖ'] = ['VI','CA','AX'];
companyCard['АБ'] = ['VI','CA','AX'];
companyCard['9Я'] = ['VI','CA','AX'];
companyCard['Х3'] = ['VI','CA','AX'];
companyCard['ИЖ'] = ['VI','CA','AX'];
companyCard['У6'] = ['VI','CA','DC','JC'];
companyCard['ЛФ'] = ['VI','CA','AX'];
companyCard['2М'] = ['VI','CA','AX'];
companyCard['ЮЯ'] = ['VI','CA','AX'];
companyCard['БР'] = ['VI','CA','AX'];
companyCard['ОП'] = ['VI','CA','AX'];
companyCard['Х6'] = ['VI','CA','AX'];
companyCard['Р3'] = ['VI','CA','AX'];
companyCard['ЭВ'] = ['VI','CA','AX'];
companyCard['ЯЕ'] = ['VI','CA','AX'];
companyCard['М9'] = ['VI','CA','AX'];
companyCard['Н3'] = ['VI','CA','AX'];
companyCard['Д2'] = ['VI','CA','AX'];
companyCard['ФУ'] = ['VI','CA','AX'];
companyCard['БН'] = ['VI','CA','AX'];
companyCard['4Т'] = ['CA'];
companyCard['ДД'] = ['VI','CA','AX'];
companyCard['БТ'] = ['VI','CA','AX'];
companyCard['ЦА'] = ['VI','CA','AX'];
companyCard['СД'] = ['VI','CA','AX'];
companyCard['ГШ'] = ['VI','CA','AX'];
companyCard['ГН'] = ['VI','CA','AX'];
companyCard['ШГ'] = ['VI','CA','AX'];
companyCard['Ы4'] = ['VI','CA','AX'];
companyCard['ВД'] = ['VI','CA','AX'];
companyCard['ЯЖ'] = ['VI','CA','AX'];
companyCard['Х8'] = ['VI','CA','AX'];
companyCard['ОР'] = ['VI','CA','AX'];
companyCard['ЭР'] = ['VI','CA','AX'];
companyCard['ТГ'] = ['VI','CA','AX'];
companyCard['КБ'] = ['VI','CA','AX'];
companyCard['ЦК'] = ['VI','CA','AX'];
companyCard['ТД'] = ['VI','CA','AX'];
companyCard['ЛВ'] = ['VI','CA','AX'];
companyCard['АЦ'] = ['VI','CA','AX'];
companyCard['2Н'] = ['VI','CA','AX'];
companyCard['МЛ'] = ['VI','CA','AX'];
companyCard['ФВ'] = ['VI','CA','AX'];
companyCard['ХЛ'] = ['VI','CA','AX'];
companyCard['Д9'] = ['VI','CA','AX'];
companyCard['AB'] = ['VI','CA','AX'];
companyCard['БК'] = ['VI','CA','AX'];
companyCard['DV'] = ['VI','CA','AX'];
companyCard['В2'] = ['VI','CA','AX'];
companyCard['К7'] = ['VI','CA','AX'];
companyCard['Р2'] = ['VI','CA','AX'];
companyCard['УС'] = ['VI','CA','AX'];
companyCard['ЭТ'] = ['VI','CA','AX'];
companyCard['ПК'] = ['VI','CA','AX'];
companyCard['3Н'] = ['VI','CA','AX'];
companyCard['7Д'] = ['VI','CA','AX'];
companyCard['DI'] = ['VI','CA','AX'];
companyCard['З6'] = ['VI','CA','AX'];
companyCard['3Т'] = ['VI','CA','AX'];
companyCard['ЩВ'] = ['VI','CA','AX'];
companyCard['УХ'] = ['VI','CA','AX'];
companyCard['ЯЮ'] = ['VI','CA','AX'];
companyCard['ИЕ'] = ['VI','CA','AX'];
companyCard['УН'] = ['VI','CA','AX'];
companyCard['УФ'] = ['VI','CA'];
companyCard['ЖГ'] = ['VI','CA','AX'];
companyCard['9Д'] = ['VI','CA','AX'];
companyCard['ЖЛ'] = ['VI','CA','AX'];
companyCard['ПП'] = ['VI','CA','AX'];
companyCard['Р4'] = ['VI','CA','AX'];
companyCard['АЮ'] = ['VI','CA','AX'];
companyCard['UF'] = ['VI','CA','AX'];
companyCard['БУ'] = ['VI','CA','AX'];
companyCard['БВ'] = ['VI','CA','AX'];
companyCard['ГС'] = ['VI','CA','AX'];
companyCard['G9'] = ['VI','CA','AX'];
companyCard['ИЭ'] = ['VI','CA','AX'];
companyCard['ГА'] = ['VI','CA','AX'];
companyCard['ИБ'] = ['VI','CA','AX'];
companyCard['ТШ'] = ['VI','CA','AX'];
companyCard['ПЛ'] = ['VI','CA','AX'];
companyCard['МИ'] = ['VI','CA','AX'];
companyCard['СЭ'] = ['VI','CA','AX'];
companyCard['НГ'] = ['VI','CA','AX'];
companyCard['ИГ'] = ['VI','CA','AX'];
companyCard['ИИ'] = ['VI','CA','AX'];
companyCard['СУ'] = ['VI','CA','AX'];
companyCard['7М'] = ['VI','CA','AX'];
companyCard['Ж9'] = ['VI','CA','AX'];
companyCard['ЭК'] = ['VI','CA','AX'];
companyCard['ЯМ'] = ['VI','CA','AX'];
companyCard['КТ'] = ['VI','CA','AX'];
companyCard['АЭ'] = ['VI','CA','AX'];
companyCard['ИД'] = ['VI','CA','AX'];
companyCard['СП'] = ['VI','CA','AX'];
companyCard['ЙК'] = ['VI','CA','AX'];


var cardTypes = new Object();
cardTypes['CA'] = 'EUROCARD/MASTERCARD';
cardTypes['VI'] = 'VISA';
cardTypes['AX'] = 'AMERICAN EXPRESS';
cardTypes['DC'] = 'DINERS CLUB';
cardTypes['JC'] = 'JCB';


var companyHash = new Object();

function writeCardImage(code) {
  var image = cardImages[code];
  if(image) {
    document.write("<img src='"+image.src+"'/>");
  }
}

function active(prefix, companies) {
  companyHash[prefix] = companies;

// получение списка авиакомпаний, выбранных пользователем
  var companyList = new Array();
  var index = 0;
  for (var c in companyHash){
    for (var i = 0; i < companyHash[c].length; i++){
      companyList[index++] = companyHash[c][i];
    }
  }
// создание соответствия авиакомпаний и карт
  var conformityCard = new Object();
  for (var i = 0; i < companyList.length; i++) {
    conformityCard[companyList[i]] = companyCard[companyList[i]];
  }

//поиск пересечения: получение списка карт
  var cards = null;
  for (var c in conformityCard){
    cards = intersection(conformityCard[c], cards);
  }

  render(cards);

  var cashRadio = document.getElementById("cash");
  if(cashRadio) {
    cashRadio.disabled = false;
  }

  var cashlessRadio = document.getElementById("juridicalcash");
  if(cashlessRadio) {
    cashlessRadio.disabled = false;
  }

  var ecashRadio = document.getElementById("ecash");
  if(ecashRadio) {
    ecashRadio.disabled = false;
  }

  document.forms.flightsForm["tarification"].disabled = false;
}

//поиск пересечения двух списков карт. возвращает массив
function intersection(cardsOne, cardsTwo){
  if(cardsOne == null) return new Array();
  if(cardsTwo == null) return cardsOne;


  var intersectionCards = new Object();

  for (var i = 0; i < cardsOne.length; i++){
    for (var j = 0; j < cardsTwo.length; j++){
      if (cardsOne[i] == cardsTwo[j]){
        intersectionCards[cardsOne[i]] = cardsOne[i];
      }
    }
  }

  var cards = new Array();
  for(var c in intersectionCards)
    cards[cards.length] = c;

  return cards;
}

function createCardLine(code, name) {
  var table = document.getElementById("cardtable");
  var first = table.rows.length == 0;

  var inputElement = document.getElementById("cardinput").cloneNode(true);
  inputElement.style.display = "block";
  inputElement.value = code;
  if(first) inputElement.checked = true;

  var row = table.insertRow(table.rows.length);

  var cell0 = row.insertCell(0);
  if(cardImages[code]) {
    cell0.appendChild(cardImages[code]);
  }

  var cell1 = row.insertCell(1);
  cell1.style.width = 10;

  var cell2 = row.insertCell(2);
  cell2.className = "s08";


  cell1.appendChild(inputElement);
  cell2.appendChild(document.createTextNode(name));
}

function render(cards){
  var tableElement = document.getElementById("cardtable");
  if(tableElement == null) return;

  while (tableElement.firstChild) {
    tableElement.removeChild(tableElement.firstChild);
  }

  if(cards.length) {
    var cashlessElement = document.getElementById("cashless");
    if(cashlessElement!=null) {
      if(cashlessElement.disabled) cashlessElement.disabled = false;
    }

    for (var i = 0; i < cards.length; i++){
      var cardCode = cards[i];
      var cardName = cardTypes[cardCode]?cardTypes[cardCode]:cardCode;
      createCardLine(cardCode, cardName);
    }

  } else {
    var cashElement = document.getElementById("cash");
    var cashlessElement = document.getElementById("cashless");

    if(cashlessElement!=null) {
      if(cashlessElement.checked) {
        cashElement.checked = true;
      }
      cashlessElement.disabled = true;
    }
  }
}

function hidecards() {
  var tableElement = document.getElementById("cardtable");
  if(tableElement) {
    tableElement.style.display = "none";
  }
}

function showcards() {
  var tableElement = document.getElementById("cardtable");
  if(tableElement) {
    tableElement.style.display = "block";
  }
}

function hideecash() {
  var tableElement = document.getElementById("ecashtable");
  if(tableElement) {
    tableElement.style.display = "none";
  }
}

function showecash() {
  var tableElement = document.getElementById("ecashtable");
  if(tableElement) {
    tableElement.style.display = "block";
  }
}

function renderLine(type, count) {
  var lineElement = document.getElementById(type+"_line");
  if(count <= 0) {
    lineElement.style.display = "none";
  } else {
    if(navigator.userAgent.indexOf("MSIE") != -1)
      lineElement.style.display = "block";
    else
      lineElement.style.display = "table-row";

    for(var i = 1; i < 9; i++) {
      var select = document.getElementById(type+"_age_"+i);
      if(i <= count) select.style.visibility = "visible";
      else select.style.visibility = "hidden";
    }
  }
}

function setDate(direction, date) {
  var input = document.getElementById(direction+"-date");
  input.value = date;
}