
var lang="ru";

var speed_show_ul_menu=1;
var prev_elem = 0;
var is_acting = 0;
var cur_page="";
var show_card="";
var cur_cat="";
var cur_card="";
var first_loaded=0;
var area51="0";
var first_card="";
var last_card="";
var need_scroll=1;
var prev_href="";
var prev_buffer="";

function load_next(p) {
   cards=$(".is_card");
   var found=0;
   var i;
   cardindex=-1;
   for (i=0; i<cards.length; i++) {
      if (cards[i].id=="card"+cur_card) {
         if (p>0) {
            if (i==cards.length-1) {
               //cardindex=0;
               window.location.href=last_card;
               return;
            }
            else cardindex=i+1;
         }
         else {
            if (i==0) {
               //cardindex=cards.length-1;
               window.location.href=first_card;
               return;
            }
            else cardindex=i-1;
         }
      }
   }
   if (cardindex<0) {
      load_card(prev_href);
      return;
   }
   //alert(cards[cardindex].href);
   load_card(cards[cardindex].href);
}

var   re=/\.(png|gif)$/i;
var   perf = function () {
      //return;
      if (!re.test($(this).attr('src'))) {
         e=$(this);
         //if (e.hasClass('with_shadow')) return;
         //e.addClass('with_shadow');
         $(this).removeShadow();
         if (this.complete) {
            $(this).dropShadow({
               left: 0,
               top: 0,
               blur: 1,
               opacity: 1
            });
         }
         else {
            e.unbind('load');
            e.load(function() {
               $(this).dropShadow({
                  left: 0,
                  top: 0,
                  blur: 1,
                  opacity: 1
               });
            });
         }
      }
   }
var   perf2 = function () {
      //return;
      if (!re.test($(this).attr('src'))) {
         e=$(this);
         //if (e.hasClass('with_shadow')) return;
         //e.addClass('with_shadow');
         $(this).removeShadow();
         if (this.complete) {
            $(this).dropShadow({
               left: 0,
               top: 0,
               blur: 1,
               opacity: 1
            });
         }
         else {
            e.unbind('load');
            e.load(function() {
               $(this).dropShadow({
                  left: 0,
                  top: 0,
                  blur: 1,
                  opacity: 1
               });
            });
         }
      }
   }
var rem_shadow = function () {
   if (re.test($(this).attr('src'))) return;
   $(this).removeShadow();
   $(this).removeClass('with_shadow');
   }

function update_events() {

   $(".img_icon").each(rem_shadow);   
   $(".img_icon").each(perf);
   $(".big_prew").each(perf2);
   
   e=$("#right_table").find(".nav").find("a");
   e.unbind('click');
   e.click(function () {
      var h=$(this).attr('href');
      var e=$(this).parent().parent();
      mod=e.attr('id').replace('more_', '');
      u="http://www.astracards.ua/"+lang+"/cards_ajax/"+cur_page+h+"&mod="+mod+"&ajax=1";
      //alert(u);
      loading("#"+e.attr('id'));
      $.ajax({
         url: u,
         type: "GET",
         data: "",
         success : function (v) {
            e.html(v);
            update_events();
            $(".big_prew").load(function() {
               $(".img_icon").each(rem_shadow);   
               $(".img_icon").each(perf);
            });
         }
      });
      return false;
   });
   
   e=$("#left_table").find(".img_icon").parent();
   e.unbind('click');
   e.click(function () {
      load_card($(this).attr('href'));
      return false;
   });
   
}

function hs_alert(msg) {
   id=new Date().getTime();
   $("body").append('<div class="highslide-html-content" id="s'+id+'" style="width: 400px; color: #000; height: 250px;">'+
'<div style="text-align: right;"><a href="javascript:void(0);" onclick="return hs.close(this)" style="color: #000;" id="c'+id+'">x</a></div>'+
'<div class="highslide-body" style="width: 400px; height: 100%;"><table width="100%" height="100%"><tr><td align="center" valign="middle">'+
''+
msg+
'</td></tr></table></div>'+
'</div>');
   if (!hs.htmlExpand) {
      alert(msg);
      return;
   }
   //alert($("#s"+id).html());
   //alert(msg);
   hs.htmlExpand(null, {
      contentId: "s"+id,
      transitions: ['fade']
   });
}

function make_order(id) {
   q=$("#quantity"+id).val();
   $.ajax({
      url: "http://www.astracards.ua/"+lang+"/catalogue/",
      type: "GET",
      data: "action=add_to_cart&id="+id+"&quantity="+q+"&ajax=1",
      dataType: "json",
      error : function () {
         //alert("Ошибка. Проверьте соединение с интернетом.");
      },
      success : function (v) {
         //alert(v);
         $("#cart_container").css({
            display: 'block'
         });
         $("#cart_count").html(v.cart_count+" "+v.cart_tovarov);
         $("#total_price").html(v.total_price);
         hs_alert(v.msg);
      }
   });
   return false;
}

function load_first_card() {
   var h=$(".img_icon").parent().attr('href');
   if (!h) return;
   load_card(h);
}

function loading(opt) {
   if (!opt) opt="#right_table";
   $(opt).html('<img src="http://www.astracards.ua/usr/system/loading.gif" style="vertical-align: middle;" />&nbsp;'+(lang=="ru" ? "Загрузка" : "Завантаження")+'...');
}

function load_card(href, cat) {
   if (!href) return;
   buffer=href;
   href=href.replace(/.*data\//, "");
   cur_page="data/"+href;
   //alert("cur="+cur_cat+"; cat="+cat);
   refr=0;
   if (cur_cat!=cat && cat) {
      //href="http://www.astracards.ua/"+lang+"/"+cat+"?card="+href.replace(/\//, '')+"&refr=1";
      href="http://www.astracards.ua/"+lang+"/cards_ajax/data/"+href.replace(/\//, '')+"?ajax=1";
      /*window.location.href=href;*/
      refr=1;
   }
   if (refr) {
      $(".img_icon").each(rem_shadow);
      loading("#content_card");
      $(".img_icon").each(perf);
   }
   else {
      loading();
   }
   if (first_loaded) {
      if (area51=="0") {
         if (need_scroll) {
            $("html:not(:animated)"+( ! $.browser.opera ? ",body:not(:animated)" : "")).animate({scrollTop: $("#right_table").offset().top}, 500);
            setTimeout('need_scroll=0;', 500);
         }
      }
      else {
         if (need_scroll) {
            $("html:not(:animated)"+( ! $.browser.opera ? ",body:not(:animated)" : "")).animate({scrollTop: $("#right_table").offset().top}, 1);
            setTimeout('need_scroll=0;', 500);
         }
      }
   }
   if (!refr) {
      cur_card=href.replace(/\//, '');
      //alert("NO reload");
      href="http://www.astracards.ua/"+lang+"/cards_ajax/"+cur_page+"?ajax=1";
      //alert(href);
   }
   //alert(href);
   $.ajax({
      url: href+"&ajax=1",
      type: "GET",
      data: "",
      success : function (v) {
         $(".img_icon").each(rem_shadow);
         if (refr) {
            $("#content_card").html(v);
         }
         else {
            $("#right_table").html(v);
         }
         update_events();
         //$(".img_icon").each(perf);
         first_loaded=1;
         prev_href=(prev_buffer ? prev_buffer : buffer);
         prev_buffer=buffer;
      },
      error : function (e, e2) {
         //alert("Ошибка при подключении к серверу");
      }
   });
}

function show_hide_menu(id) {
   //alert(id);
   if (is_acting) return;
   is_acting=1;
   var elem=id;
   if (prev_elem) elem=prev_elem;
   ul=$("#"+elem).parent().find("ul:first");
   //alert(ul.html());
   if (ul.is(":visible")) {
      //is_child=$("#"+elem).parent().find("#"+prev_elem).length;
      is_child=$("#"+prev_elem).parent().find("#"+id).length;
      //alert(is_child);
      if (!is_child) {
         // hide elem!!
         /*while (1) {
            parent_ul = ul.parent().parent();
            if (parent_ul.length) {
               //alert(parent_ul[0].tagName);
               if (parent_ul.find("#"+id).length && !parent_ul.hasClass('lm')) {
                  //alert("2");
                  break;
               }
               if (parent_ul[0].tagName.toLowerCase()=="ul" && !parent_ul.hasClass('lm')) {
                  if (parent_ul.find("#"+prev_elem).length) {
                     ul=parent_ul;
                     //alert("1");
                     break;
                  }
                  ul=parent_ul;
                  continue;
               }
            }
            break;
         }*/
         //alert(ul.html());
         ul.slideUp(speed_show_ul_menu, function () {
            if (prev_elem) {
               if (prev_elem==ul.parent().attr('id')) {
                  alert("ok");
               }
               if (prev_elem!=id) {
                  prev_elem=0;
                  is_acting=0;
                  show_hide_menu(id);
               }
            }
            is_acting=0;
         });
      }
      else {
         prev_elem=0;
         is_acting=0;
         //alert("ok!");
         show_hide_menu(id);
      }
   }
   else {
      parent_ul=ul.parent().parent();
      arr=parent_ul.find("ul:visible:first");
      if (arr.length) {
         prev_elem=arr.parent().find("a:first").attr('id');
         is_acting=0;
         show_hide_menu(id);
         return;
      }
      ul.slideDown(speed_show_ul_menu, function () {
         prev_elem=elem;
         is_acting=0;
      });
   }
}

$(document).ready(function() {

   $(".expanding").click(function () {
      id=$(this).attr('id');
      show_hide_menu(id);
   });
   
   $(window).scroll(function () {
      need_scroll=1;
   });
   
   cur_cat=cur_cat.replace(/data\/(.*)/, '');
   
   /*if ($.tooltip || 1) {
      $(".img_icon").tooltip({
         bodyHandler: function() {
            e=$(this).parent().parent().find(".img_icon_descr");
            //alert(e.html()); 
            return e.html(); 
         }, 
         showURL: false 
      });
   }*/
   
   if (!show_card) {
      load_first_card();
   }
   else {
      if (show_card=="last") {
         e=$(".is_card:last");
      }
      else {
         e=$("#card"+show_card);
      }
      //alert(e.length + " " + show_card);
      if (e.length) {
         load_card(e.attr('href'));
      }
   }
   
   update_events();
   
});

// contacts

function sendMsg(win){
window.open('',''+win+'','width=500,height=350,left='+(screen.availWidth/2-350)+',top='+(screen.availHeight/2-250)+',resizable=0,scrollbars=0,status=0');
}
function Process(form) {
   msgs = new Array();
   
   msgs["comment"] = new Array();
   msgs["comment"]["ru"]="Оставьте Ваше сообщение.";
   msgs["comment"]["ua"]="Залиште Ваше повiдомлення.";
   msgs["comment"]["en"]="Please leave your message.";
   
   msgs["name"] = new Array();
   msgs["name"]["ru"]="Укажите Ваше имя.";
   msgs["name"]["ua"]="Вкажiть Ваше iм'я.";
   msgs["name"]["en"]="Please type your name.";

   msgs["email"] = new Array();
   msgs["email"]["ru"]="Укажите Ваш e-mail.";
   msgs["email"]["ua"]="Вкажiть Ваш e-mail.";
   msgs["email"]["en"]="Please type your e-mail.";

   msgs["phone"] = new Array();
   msgs["phone"]["ru"]="Укажите Ваш телефон.";
   msgs["phone"]["ua"]="Вкажiть Ваш телефон.";
   msgs["phone"]["en"]="Please type your telephone number.";

   msgs["phone_or_email"] = new Array();
   msgs["phone_or_email"]["ru"]="Укажите Ваш телефон или e-mail.";
   msgs["phone_or_email"]["ua"]="Вкажiть Ваш телефон або e-mail.";
   msgs["phone_or_email"]["en"]="Please type your telephone number or e-mail.";
   
   e1="email";
   e2="phone";
   if ($('#'+e1).length && $('#'+e2).length) {
   if(!$('#'+e1).val() && !$('#'+e2).val()){
      alert(msgs["phone_or_email"][lang]);
      $('#'+e1).focus();
      window.event.returnValue=false;
      return false;
   }
   }

   elem_name="comment";
   if(!$('#'+elem_name).val()){
      alert(msgs[elem_name][lang]);
      $('#'+elem_name).focus();
      window.event.returnValue=false;
      return false;
   }

   sendMsg('newwin');
   $("#order_form").submit();
   setTimeout("document.forms['order_form'].reset();", 1000);
}
$(document).ready(function () {
   $("a.highslide").click(function() {
      return hs.expand(this);
   });
});
