//MESSAGES
function showMsg(msg, type) {

    if(type==1) type = 'ok';
    if(type==0) type = 'err';

    $('#mesBox').remove();
    $('#msgWrap').prepend('<div id="mesBox" class="mesBox '+type+'">'+msg+'</div>');
    $('#mesBox').show("slow").dblclick(function(){
        $(this).slideUp();
    });
    return false;
}

$(document).ready(function(){
        $('#mesBox').show("slow");
});

//CART
function add2cart(id,obj)
{
    if(obj.hasClass('btn_blue_fixed')) return false;
    $.ajax({
        type: "POST",
        url: "/ajax",
        data: "cart=add&id="+id,
        async: false,
        success: function(msg){
               if(msg.substr(0,1)=='1')
               {
                    //showMsg('Продукт добавлен в корзину',1);
                    //alert(msg.substr(1));
                    var count = parseInt($('#cart_count').html());
                    $('#cart_count').html(count+1);
                    var summ = msg.substr(2);
                    $('#cart_summ').html(summ);

                    $(obj).attr('class','btn_blue_fixed').attr('title','товар был отправлен в корзину').html('Добавлен');
                    //setTimeout(moveScroll,500);
               }
               else showMsg(msg,0);
         }
     });
     return false;
}

function moveScroll()
{
    var s = $(document).scrollTop();
    if (s<=0) return false;
    $(document).scrollTop(s-15);
    setTimeout(moveScroll,1);
}

function recalculate(obj,id)
{
    var count = parseInt($(obj).val());
    if(count<1||count>1000||isNaN(count)) return false;
    //alert(parseInt(count));
    var price = $('#product_price_'+id).html();
    var summ  = $('#product_summ_'+id).html();
    $('#product_summ_'+id).html(number_format(count*price,2,'.',''));
    var all_summ = $('#summ').html();
    $('#summ').html(number_format(all_summ-summ+count*price,2,'.',''));

    var price_discount = $('#product_price_discount_'+id).html();
    var summ_discount  = $('#product_summ_discount_'+id).html();
    if(parseInt(price_discount)<1) price_discount = price;
    $('#product_summ_discount_'+id).html(number_format(count*price_discount,2,'.',''));
    var all_summ_discount = $('#summ_discount').html();
    $('#summ_discount').html(number_format(all_summ_discount-summ_discount+count*price_discount,2,'.',''));

}

//FANCYBOX
$(document).ready(function(){
     $("a.fancybox").fancybox();
     $("a.infobox").fancybox({
        titleShow : false,
        overlayShow : false
     });
});


function number_format( number, decimals, dec_point, thousands_sep ) {
    // Formats a number with grouped thousands
    //
    // version: 902.1517
    // discuss at: http://phpjs.org/functions/number_format
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://getsprink.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // +    revised by: Luke Smith (http://lucassmith.name)
    // +     bugfix by: Diogo Resende
    // +     bugfix by: Rival
    // %        note 1: For 1000.55 result with precision 1 in FF/Opera is 1,000.5, but in IE is 1,000.6
    // *     example 1: number_format(1234.56);
    // *     returns 1: '1,235'
    // *     example 2: number_format(1234.56, 2, ',', ' ');
    // *     returns 2: '1 234,56'
    // *     example 3: number_format(1234.5678, 2, '.', '');
    // *     returns 3: '1234.57'
    // *     example 4: number_format(67, 2, ',', '.');
    // *     returns 4: '67,00'
    // *     example 5: number_format(1000);
    // *     returns 5: '1,000'
    // *     example 6: number_format(67.311, 2);
    // *     returns 6: '67.31'
    var n = number, prec = decimals;
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);
    var sep = (typeof thousands_sep == "undefined") ? ',' : thousands_sep;
    var dec = (typeof dec_point == "undefined") ? '.' : dec_point;

    var s = (prec > 0) ? n.toFixed(prec) : Math.round(n).toFixed(prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;

    var abs = Math.abs(n).toFixed(prec);
    var _, i;

    if (abs >= 1000) {
        _ = abs.split(/\D/);
        i = _[0].length % 3 || 3;

        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');

        s = _.join(dec);
    } else {
        s = s.replace('.', dec);
    }

    return s;
}
