﻿// Code behind for the page "ShowcaseReview.htm".
// Weirdie, 2010
// Robin, 2011

var _scr =
{
  init: function ()
  {
    if (mSettings.sc.dateFromExt >= mSettings.sc.dateToExt) alert('Начальные даты для формы поиска заданы неверно (DateFrom >= DateTo).');
    $.ajax({ url: mSettings.modulePath + 'templates/Hot.htm', success: _scr.afterInit });
  },

  afterInit: function (data, status, request)
  {
    $('#ht_ShowcaseReview').html(_scr.setSrcInHtml(data));
    _scr.loadTours();
  },

  loadTours: function ()
  {
    $('#ht_result_body').html('<div class="ht_scr_loading">Загрузка данных...</div>');
    mAjax.getShowcaseReview(
      mSettings.sc.templateNameBest,
      function (data, status, request) { _scr.fillTours(data); },
      function (msg) { alert(msg); },
      function (request, text) { if (confirm("Не удалось загрузить данные. Попробовать еще раз?")) { _scr.loadTours(); return; } }
    );
  },

  fillTours: function (data)
  {
    var html = '';
    if (data.length > 0) for (var i = 0; i < data.length; i++) html += _scr.renderItem(data[i]);
    else html = '<div class="ht_scr_no_data">Нет данных.</div>';
    $('#ht_showcase_wrapper').html(html);
  },

  renderItem: function (item)
  { 	
    var html = '';
    html += '<div class="ht_scr_item" >';
    html += '<span style="font-size: 16px; color: #3399cc;">' + item.CountryName + '</span>';
    html += '<a style="color: #3399cc;" href="' + _scr.getQueryString(item) + '" rel="nofollow">';
    if (item.MinPrice) html += '<br>от <span style="font-size: 14px; "><b>' + item.MinPrice + '</b></span> за человека!';
    html += '</a><br /><br /><a href="' + _scr.getQueryString(item) + '" rel="nofollow"><img src="' + _scr.gerniCountry(item.CountryId) + '" alt="' + item.CountryName + '" /></a></div>';
    return html;
  },

  getQueryString: function (item)
  {

    var v1 = $.datepicker.parseDate('dd/mm/yy', item.MinPriceDate);
    var v2 = $.datepicker.parseDate('dd/mm/yy', item.Template.checkInTo);
    var v3 = new Date(v1.getFullYear(), v1.getMonth(), v1.getDate() + 44);
    if(v3>v2) v3 = v2;
    var v4 = $.datepicker.formatDate('dd/mm/yy', v3);

    var query ='http://prices.gerni.ru/?STA=1&currency=RUB';
    query += '&country=' + escape(item.CountryId);
    if(!item.Template) return query;
    if(item.Template.adults) query += '&adults=' + escape(item.Template.adults);
    query += '&kids=0';
    if(item.Template.checkInFrom) query += '&dateFrom=' + escape(item.MinPriceDate);
    if(item.Template.checkInTo) query += '&dateTo=' + escape(v4);
    if(item.Template.nightsMin) query += '&nightsMin=' + escape(item.Template.nightsMin);
    if(item.Template.nightsMax) query += '&nightsMax=' + escape(item.Template.nightsMax);
    if(item.Template.townFromId) query += '&city=' + escape(item.Template.townFromId);
    if(item.Template.stars) query += '&star=' + escape(item.Template.stars.join(','));
    if(item.Template.meals) query += '&meal=' + escape(item.Template.meals.join(','));
    if(item.Template.priceMin) query += '&priceFrom=' + escape(item.Template.priceMin);
    if(item.Template.priceMax) query += '&priceTo=' + escape(item.Template.priceMax);
    if(item.Template.hotelIsNotInStop) query += '&hotelIsNotInStop=' + escape(item.Template.hotelIsNotInStop);
    if(item.Template.ticketsIncluded) query += '&hasFlight=' + escape(item.Template.ticketsIncluded);
    if(item.Template.hasTickets) query += '&hasTickets=' + escape(item.Template.hasTickets);
    if(item.Template.townFromId) query += '&cityFrom=' + escape(item.Template.townFromId);
    query += '&dummy=0';
    return query;
  },

  DateFormat: function (curentdate, extdate)
  {
    date = new Date(curentdate.getFullYear(), curentdate.getMonth(), curentdate.getDate() + extdate);
    return $.datepicker.formatDate('dd/mm/yy', date);
  },

  setSrcInHtml: function (html)
  {
    return html.replace(/\$module_path\$/g, mSettings.modulePath.substr(0, mSettings.modulePath.length - 1));
  },
  
  gerniCountry: function(id)
  {
    return 'http://gerni.ru/mods/sletat/images/' + id + '.jpg';
  }
}
$(_scr.init);

