jQuery(document).ready(function() {
    emadm = 'primshina'+'@m'+'ail.'+'ru';
    $('#emadm')
        .attr({"href":"mailto:"+emadm})
        .text(emadm);

    // подставляем размер из примера
    $('#filtreFields .filtr-field .descript a').click(function() {
        $(this).parent('.descript').parent('.filtr-field').children('input[type=text]').val($(this).text());
    });

    changeTiresCat();
    
    // всплывающее окошко
    $('.win').click(function() {
        wsize = screenSize();
        var wleft = wsize[0] / 2 - 500 / 2;
        var wtop = wsize[1] / 2 - 500 / 2 + (document.body.scrollTop || document.documentElement.scrollTop);
        var id = $(this).parent().attr('id').substr(4);
        var type = $(this).attr('href').substr(1);

        jQuery('#new-element').remove();

        jQuery("<div/>", {
            "id": "new-element",
            "css": {
                "top": wtop + "px",
                "left": wleft + "px"
            },
            "html": '<a class="close" href="#"></a><div class="text">'
                +'<img style="margin-left:49%" src="/resource/template/img/preload-white.gif" alt="" />'
                +'</div>'
        }).appendTo('body');

        $('#new-element').drag();
        $('#new-element .close').click(function() {
            jQuery('#new-element').remove();
            return false;
        });

        $.ajax({
          url: "/ajax/?go=listHTML&exec=getTovDescript",
          type : "post",
          data: {"id" : id, "type" : type},
          success: function(result){
            $('#new-element .text').html(result);
          }
        });
        return false;
    });

    // в корзину
    $('.lnk-cart').click(function() {

        var parent = $(this).parent();
        id = $(this).attr('id').substr(5);
        isAdd = $(this).hasClass('in-cart') ? 1 : 0;
        
        $(this).fadeTo(70, 0.33);

        if (isAdd == 1) {
            $('#dcart-'+id)
                .removeClass("in-cart")
                .addClass("del-cart")
                .text('удалить');
        } else {
            $('#dcart-'+id)
                .removeClass("del-cart")
                .addClass("in-cart")
                .text('в корзину');
        }
        addInCart(id, isAdd, $(this).attr('href').substr(1), this, parent);
    });

    // удаление из списка заказов
    $('.cart-del').click(function() {
        var obj = this;
        id = $(this).attr('href').substr(1);
        type = $(this).attr('rel');

        $.ajax({
          url: "/ajax/?go=cart&exec=deleteFromCart",
          type : "post",
          data: {"id" : id, "type":type},
          dataType : "json",
          success: function(result){
              if (result.error == true) {
                  alert(result.message);
              } else {
                  $('#cart-count').html(result.message);
                  $(obj).parent('td').parent('tr').remove();
                  reSumm();
              }
          }
        });
        return false;
    });

    $('.count').change(function() {
        reSumm();
    });
});


// в подробном описании добавление в корзину
function dInCart(obj){
    id = $(obj).attr('id').substr(6);
    isAdd = $(obj).hasClass('in-cart') ? 1 : 0;
    type = $(obj).attr('href').substr(1);
    parent = $(obj).parent('td').parent('tr').parent('table').parent('#tov-descript');
    $(obj).fadeTo(70, 0.33);

    if (isAdd == 1) {
        $('#cart-'+id)
            .removeClass("in-cart")
            .addClass("del-cart")
            .text('удалить');
    } else {
        $('#cart-'+id)
            .removeClass("del-cart")
            .addClass("in-cart")
            .text('в корзину');
    }
    addInCart(id, isAdd, type, obj, parent);
}

function addInCart(id, isAdd, type, obj, parent) {
    $.ajax({
      url: "/ajax/?go=cart&exec=addInCart",
      type : "post",
      data: {"id" : id, "isAdd" : isAdd, "type" : type},
      dataType : "json",
      success: function(result){

        if (isAdd == 1) {
            $(obj).removeClass("in-cart")
               .addClass("del-cart")
               .text('удалить');
        } else {
            $(obj).removeClass("del-cart")
               .addClass("in-cart")
               .text('в корзину');
        }

        $(obj).fadeTo(70, 1);
        $('#cart-count').html(result.message);
      }
    });

}

// пересчет суммы в корзине при удалении или изменении количества
function reSumm() {
    var summ = 0;
    $('.count').each(function(i, p) {
        str = $(p).attr('name').substr(6);
        id = str.substr(0, str.length - 1);

        count = parseInt($(p).val());
        
        if (isNaN(count) || count < 0) {
            $(p).css({'color':'#ee0000'});
        } else {
            $(p).css({'color':'#000000'});
            summ += (parseInt($('#price-' + id).text()) * count);
            
        }
    });

    if (summ <= 0) {
        $('.btn-cart').attr({"disabled":"disabled"});
    } else {
        $('.btn-cart').removeAttr("disabled");
    }

    $('#summ').html(summ);
}

// изменяем адрес страницы, категория в фильтре
function changeTiresCat() {
    $('#id_cat').change(function() {
        $('#filterForm').attr({"action" : $('option:selected', this).val()});
        return false;
    });
};
    
function screenSize() {
	var wwSize = new Array();
    if (window.innerHeight !== undefined) {
        wwSize= [window.innerWidth,window.innerHeight]
    } else {
        wwSizeIE = (document.body.clientWidth) ? document.body : document.documentElement;
        wwSize= [wwSizeIE.clientWidth, wwSizeIE.clientHeight - 300];
    }
    return wwSize;
}



// перетаскивание
(function($){
    $.fn.drag = function(o){
        var o = $.extend({
            start:function(){},
            stop:function(){}
        }, o);
        return $(this).each(function(){
            var d = $(this);
            d.mousedown(function(e){
                d.css('position','absolute');
                $(document).unbind('mouseup');
                o.start(d);
                var f = d.offset(),
                x = e.pageX - f.left,
                y = e.pageY - f.top;

                $(document).mousemove(function(a){
                    d.css({'top' : a.pageY - y + 'px','left' : a.pageX - x + 'px'});
                });
                $(document).mouseup(function(){
                    $(document).unbind('mousemove');
                    o.stop(d);
                });
                return false;
            });
        });
    }
})(jQuery);
