$(document).ready(function()
{  /*проверка заполения полей*/
   $("form.isValidation").validationEngine();

  /*вывод каталога товаров - фильтры*/
  $('div#select_mode div').click(on_filter_panel_change_display) ;
  $('div#filter_main :input').change(on_filter_change) ;
  $('div#show_status span img').click(on_filter_close) ;
  $('div#panel_filter_alert strong').click(on_all_filter_close) ;
  $('div#clean_filter').click(on_all_filter_close) ;
  $('input#filter_stock').change(on_filter_change) ;
  $('div#panel_sorter #data').click(function(){$('input#sort_type').val('data') ; $('span#brand').removeClass('sel');$('span#price').removeClass('sel'); $(this).addClass('sel') ; on_filter_change() ;}) ;
  $('div#panel_sorter #price').click(function(){$('input#sort_type').val('price') ; $('span#brand').removeClass('sel');$('span#data').removeClass('sel'); $(this).addClass('sel') ; on_filter_change() ;}) ;
  $('div#panel_sorter #brand').click(function(){$('input#sort_type').val('brand') ; $('span#price').removeClass('sel');$('span#data').removeClass('sel'); $(this).addClass('sel') ; on_filter_change() ;}) ;
  $('div#panel_sorter #order_asc').click(function(){$('input#sort_mode').val('asc') ; $('img#order_asc').attr('src','/images/img_ord_asc_sel.png'); $('img#order_desc').attr('src','/images/img_ord_desc.png'); on_filter_change() ;}) ;
  $('div#panel_sorter #order_desc').click(function(){$('input#sort_mode').val('desc') ; $('img#order_asc').attr('src','/images/img_ord_asc.png'); $('img#order_desc').attr('src','/images/img_ord_desc_sel.png'); on_filter_change() ;}) ;
  $('div#panel_list_size span').click(function()
                                        { $('input#page_size').val($(this).text()) ;
                                          $(this).parent().children('span').removeClass('sel') ;
                                          $(this).addClass('sel') ;
                                          on_filter_change() ;
                                        }
    );
  $('div#to_next_goods').click(goods_lenta_to_next) ;
  $('div#to_prev_goods').click(goods_lenta_to_prev) ;
  $('div#goods_lenta_buttons div.item').click(on_click_goods_lenta_buttons) ;

  /*вывод товара подробно*/
  $('div#goods_images div#small_images img').click(on_goods_small_img_click) ;
  $('div#goods_images div#big_image div#to_prev_img').click(on_goods_to_prev_img) ;
  $('div#goods_images div#big_image div#to_next_img').click(on_goods_to_next_img) ;
  $('div#go_back').click(function(){window.history.back(-1);});

  /*поиск*/
  $('div#panel_search img').click(function(){$('div#panel_search form').submit();});

 /*выбор валюты*/
  /*$('form#select_val a').click(function(){ $('form#select_val input').val($(this).attr('tag'));$('form#select_val').submit() ;return(false) ;});*/

  /*корзина*/
  $('div#to_checkout').click(function(){document.location='/orders/checkout.php';});
  $('div#to_checkout.top').click(function(){top.document.location='/orders/checkout.php';});

  // обработка события закрытия диалогового окна
  hs.Expander.prototype.onAfterClose = function(elem)
    { if (this.a.id=='') return ;
      var cmd=$('a#'+this.a.id).attr('after_close_event') ;
      if (cmd=='update_cart') // обновляем информацию корзине в шапке сайта
      { var reffer=$('a#'+this.a.id).attr('reffer') ;
        $.ajax({url:'/ajax.php',dataType:'text',cache:false,success:on_update_cart,data:{cmd:'get_cart',reffer:reffer}});
      }
    };

  /*highslide*/
  hs.graphicsDir = '/AddOns/highslide-4.1.12/graphics/';
  //hs.dimmingOpacity = 0.1; // степень затемнения фона
  //hs.captionOverlay.position = 'below';
  hs.transitions = ['expand', 'crossfade'];
  //hs.outlineType =  'glossy-dark' // 'rounded-white';
  hs.fadeInOut = true;
  hs.align = 'center';
  //hs.captionEval = 'this.a.title';
  hs.showCredits = false;
  //hs.outlineType = 'custom';
  hs.dimmingOpacity = 0.5;
  hs.allowMultipleInstances = false;
  hs.blockRightClick = true;

  // Russian language strings
  hs.lang = {
      cssDirection: 'ltr',
      loadingText: 'Загружается...',
      loadingTitle: 'Нажмите для отмены',
      focusTitle: 'Нажмите чтобы поместить на передний план',
      fullExpandTitle: 'Развернуть до оригинального размера',
      previousText: 'Предыдущее',
      nextText: 'Следующее',
      moveText: 'Переместить',
      closeText: 'Закрыть',
      closeTitle: 'Закрыть (esc)',
      resizeTitle: 'Изменить размер',
      playText: 'Слайдшоу',
      playTitle: 'Начать слайдшоу (пробел)',
      pauseText: 'Пауза',
      pauseTitle: 'Приостановить слайдшоу (пробел)',
      previousTitle: 'Предыдущее (стрелка влево)',
      nextTitle: 'Следующее (стрелка вправо)',
      moveTitle: 'Переместить',
      fullExpandText: 'Оригинальный размер',
      number: 'Изображение %1 из %2',
      restoreTitle: 'Нажмите чтобы закрыть изображение, нажмите и перетащите для изменения местоположения. Для просмотра изображений используйте стрелки.'
  };

}) ;


//---------------------------------------------------------------------------------------------------------------------------------
// функции фильтра в каталоге товара
//---------------------------------------------------------------------------------------------------------------------------------

function on_filter_panel_change_display()
 { $('div#filter_main').toggleClass('hidden');
   $(this).toggleClass('closed');
   if ($('div#filter_main').hasClass('hidden')) $(this).html('Показать фильтры <img src="/images/icon_to_open.png" width="5" height="3" alt="+">');
   else                                         $(this).html('Скрыть фильтры <img src="/images/icon_to_close.png" width="5" height="3" alt="-">');
 }

 function on_filter_close()
 { var id=$(this).attr('id') ;
   if (id=='filter_stock')   $('div#panel_stock input#filter_stock').attr('checked',false) ;
   else                      $('div#filter_main select#'+id).val(0) ; // сбрасываем необходмый select
   on_filter_change() ; // обновляем результат отбора по по фильтру - информация по статусу будет обновлена автоматически
 }

 function on_all_filter_close()
 { $('div#filter_main select#meh_type').val(0) ;
   $('div#filter_main select#sex').val(0) ;
   $('div#filter_main select#remen').val(0) ;
   $('div#filter_main select#gender').val(0) ;
   $('div#filter_main select#nazn').val(0) ;
   $('div#panel_stock input#filter_stock').attr('checked',false) ;
   on_filter_change() ; // обновляем результат отбора по по фильтру - информация по статусу будет обновлена автоматически
 }

 function on_filter_change()
 {   var params='type_answer=xml&cmd=get_goods' ;
     var status='' ;
     var cnt_filter=0 ;
     $('div#filter_main').find('select').each(function()
       { params+='&'+$(this).attr('name')+'='+$(this).val() ;
         if ($(this).val()!=0) status+='<span>'+$(this).children('option:selected').text()+'<img src="/images/close_filter.gif" id="'+$(this).attr('id')+'"></span>';
         if ($(this).val()!=0 && $(this).attr('id')!='filter_brand') cnt_filter++ ;
       }) ;

     $('div#filter_main').find('input').each(function()
      { if ($(this).attr('type')=='checkbox' && $(this).is(':checked')) params+='&'+$(this).attr('name')+'='+$(this).val() ;
        else if($(this).attr('type')=='hidden' || $(this).attr('type')=='text') params+='&'+$(this).attr('name')+'='+$(this).val() ;
      }) ;

     if ($('input#filter_stock').is(':checked')) { params+='&stock=1'; status+='<span>Только в наличии<img src="/images/close_filter.gif" id="filter_stock"></span>'; cnt_filter++ ;}
     else params+='&stock=0';

     params+='&sort_type='+$('input#sort_type').val();
     params+='&sort_mode='+$('input#sort_mode').val();
     params+='&page_size='+$('input#page_size').val();

     if (status!='') status='Вы выбрали: '+status ;
     if (cnt_filter>0) $('div#panel_filter_alert').removeClass('hidden') ; else $('div#panel_filter_alert').addClass('hidden') ;
     $('div#show_status').html(status) ;
     $('div#show_status span img').click(on_filter_close) ;

     $('div#goods_content').addClass('loading') ;
     $.ajax({url:'/ajax.php',dataType:'xml',cache:false,data:params,success:on_update_list_goods});
 }

 function on_update_list_goods(data,status,link)
 { if (status=='success')
   { //var text = link.responseText;
     //$('div#goods_content').html(text) ;
     //$('div.pages a').click(go_page) ;
     var xml = link.responseXML;
     if (xml==undefined) return ;
     var text = get_xml_tag_value(xml,'list_goods');
     $('div#goods_content').html(text) ;
     var text = get_xml_tag_value(xml,'list_brands');
     $('div#block_right').html(text) ;

   }
   $('div#goods_content').removeClass('loading') ;



 }

//---------------------------------------------------------------------------------------------------------------------------------
// вывод товара подробно
//---------------------------------------------------------------------------------------------------------------------------------

function on_goods_to_prev_img()
{  var cur_img=$('div#goods_images div#big_image').attr('cur_img') ;
   var cnt_img=$('div#goods_images div#big_image').attr('cnt_img') ;
   cur_img-- ;
   if (cur_img<0) cur_img=cnt_img-1 ;
   var img_name=$('div#goods_images div#small_images img#goods_img'+cur_img).attr('img_name') ;
   $('div#goods_images div#big_image img').attr('src','/public/catalog/687/'+img_name) ;
   $('div#goods_images div#big_image').attr('cur_img',cur_img) ;
}

function on_goods_to_next_img()
{  var cur_img=$('div#goods_images div#big_image').attr('cur_img') ;
   var cnt_img=$('div#goods_images div#big_image').attr('cnt_img') ;
   cur_img++ ;
   if (cur_img==cnt_img) cur_img=0 ;
   var img_name=$('div#goods_images div#small_images img#goods_img'+cur_img).attr('img_name') ;
   $('div#goods_images div#big_image img').attr('src','/public/catalog/687/'+img_name) ;
   $('div#goods_images div#big_image').attr('cur_img',cur_img) ;
}

function on_goods_small_img_click()
{ var img_name=$(this).attr('img_name') ;
  //alert(img_name) ;
  $('div#goods_images div#big_image img').attr('src','/public/catalog/687/'+img_name) ;
}

//---------------------------------------------------------------------------------------------------------------------------------
//  корзина
//---------------------------------------------------------------------------------------------------------------------------------

function on_update_cart(data,status,link)
{ if (status=='success')
   { var text = link.responseText;
     $('div#panel_cart div#status').html(text) ;
   }
}

//---------------------------------------------------------------------------------------------------------------------------------
//  лента товаров
//---------------------------------------------------------------------------------------------------------------------------------

/*настройки ленты товаров*/
var step_x=219 ; // на какое растояние смещаем: 217 картинка + 1 border + 1 margin
var speed=500 ; // скорость сдвига
var cnt_visible=4 ; // число видимых изображений


function on_click_goods_lenta_buttons()
{ $(this).parent().children('div.item').removeClass('selected') ;
  $(this).addClass('selected') ;
  $.ajax({url:'/ajax.php',dataType:'text',cache:false,success:on_goods_lenta_change,data:{cmd:'get_goods_lenta',type:$(this).attr('id')}});
}

function on_goods_lenta_change(data,status,link)
{ if (status=='success')
  { var text = link.responseText;
    $('div#goods_presents div#inner').html(text) ;
  }
}

// смещаем ленту влево
function goods_lenta_to_next()
{ $('div.list_goods_images').stop() ;
  var obj=$('div.list_goods_images').position() ;
  var s=count_img*step_x+obj.left-(cnt_visible*step_x) ;
  if (s>step_x) s=step_x ; // s - смещение, на которое надо сдвинуть картинку
  if (s) $('div.list_goods_images').animate({left:"-="+s+"px"},speed) ;
}

// смещаем ленту вправо
function goods_lenta_to_prev()
{ $('div.list_goods_images').stop() ;
  var obj=$('div.list_goods_images').position() ;
  var s=obj.left+step_x ;
  //alert(s);
  if (s>0) s=step_x+obj.left ; else s=step_x ;
  if (obj.left<0) $('div.list_goods_images').animate({left:"+="+s+"px"},speed) ;
}


//---------------------------------------------------------------------------------------------------------------------------------
//
//---------------------------------------------------------------------------------------------------------------------------------

function get_xml_tag_value(xml,tag_name)
{   var elem = xml.getElementsByTagName(tag_name);
    if (elem.item(0).firstChild!=null) return(elem.item(0).firstChild.data);
    else return('');
}


// получаем атрибуеты XML TAG объекта
function get_xml_tag_attr(xml,tag_name)
{   var attr_XML=xml.getElementsByTagName(tag_name).item(0).attributes;
    var attr = new Object();
    for(var j=0; j<attr_XML.length; j++) attr[attr_XML[j].nodeName]=attr_XML[j].nodeValue ;
    return(attr);
}

// получаем атрибуеты XML OBJ объекта
function get_xml_obj_attr(obj)
{   var attr_XML=obj.attributes;
    var attr = new Object();
    for(var j=0; j<attr_XML.length; j++) attr[attr_XML[j].nodeName]=attr_XML[j].nodeValue ;
    return(attr);
}

