$(document).ready(function(){    
    //刷新购买按钮状态
    refreshBuyBtn();
    
    //去除点击虚线
    $('a,input[type="button"],input[type="submit"]').bind('focus',function(){
        if(this.blur){ //如果支持 this.blur
            this.blur();
        };
    });
    
    //封面列表鼠标悬停出现书名
//    $('ul.book-cover li a').hover(
//        function(){$(this).find('h2').show();},
//        function(){$(this).find('h2').hide();}
//    );
    
    //小图鼠标悬停出现大图
    $('.module-book-cover ul.book-cover-big li img').click(function(){
        $('.module-book-cover img#pid_' + $(this).attr('rel')).show('fast');
    });
    
    //大图点击消失
    $('.module-book-cover').children('img').click(function(){
        $(this).hide('fast');
    });
    
    //购买按钮效果
    $('#wrapper .buy-btn').hover(
        function(){$(this).children('span').show();},
        function(){$(this).children('span').hide();}
    );
    
    //购物车增减数量按钮效果
    $('ul.bf-pay li:not(.sum) .s2, ul.bf-pay li:not(.sum) .s3')
    .live('mouseenter', function(){$(this).parent('li').children('.s2').addClass('s2-hover')})
    .live('mouseleave', function(){$(this).parent('li').children('.s2').removeClass('s2-hover')});
    
    //cookie记录书籍列表visited，跨页记录点击位置
    $('ul.book-list li a').click(function(){
        //读取cookie和book_id
        var cookie_str = $.cookie('bf_visited');
        var book_id = $(this).attr('id');
        
        if (cookie_str == null)
        {
            var cookie_str = book_id;
            var date = new Date();
            date.setTime(date.getTime() + (120 * 60 * 1000));
            $.cookie('bf_visited', cookie_str, {expires: date, path:'/'});
        }
        else
        {
            var cookie_arr = cookie_str.split('|');
            for (i=0; i<cookie_arr.length; i++) //已读id中已经存在，则终止
            {
                if (book_id == cookie_arr[i])
                {
                    var flag = 1;
                    break;
                }
            }
            if (flag != 1)
            {
                cookie_str = cookie_str + '|' + book_id;
                var date = new Date();
                date.setTime(date.getTime() + (120 * 60 * 1000));
                $.cookie('bf_visited', cookie_str, {expires: date, path:'/'});
            }
        }
    });
    
    //通过bf_visited的cookie设置数目列表的visited状态
    var visited_cookie = $.cookie('bf_visited');
    if (visited_cookie !== null)
    {
        var visited_arr = visited_cookie.split('|');
        for (i=0; i<visited_arr.length; i++)
        {
            $('ul.book-list li a#' + visited_arr[i]).addClass('visited');
        }
    }
    
    //买家信息输入点击
    $('textarea.jq-buyer-addr-textarea')
    .focus(function(){if ($(this).val()=='地址' || $(this).val()=='请填写地址'){$(this).attr('value','').removeClass('error')}})
    .blur(function(){if ($(this).val()==''){$(this).attr('value','地址')}});
    
    $('input.jq-buyer-name-input')
    .focus(function(){if ($(this).val()=='收件人' || $(this).val()=='请填写收件人'){$(this).attr('value','').removeClass('error')}})
    .blur(function(){if ($(this).val()==''){$(this).attr('value','收件人')}});
    
    $('input.jq-buyer-tel-input')
    .focus(function(){if ($(this).val()=='联系电话' || $(this).val()=='请填写联系电话'){$(this).attr('value','').removeClass('error')}})
    .blur(function(){if ($(this).val()==''){$(this).attr('value','联系电话')}});
    
    $('input.jq-buyer-email-input')
    .focus(function(){if ($(this).val()=='联系@信箱' || $(this).val()=='请填写联系@信箱'){$(this).attr('value','').removeClass('error')}})
    .blur(function(){if ($(this).val()==''){$(this).attr('value','联系@信箱')}});
    
    $('textarea.jq-buyer-remark-textarea')
    .focus(function(){if ($(this).val()=='备注'){$(this).attr('value','')}})
    .blur(function(){if ($(this).val()==''){$(this).attr('value','备注')}});
    
    //付款按钮
    $('.bf-pay-mode .tab span').hover(
        function(){$(this).addClass('hover')},
        function(){$(this).removeClass('hover')
    }).click(function(){
        $(this).siblings('span').removeClass('current');
        $(this).addClass('current');
    });
});

function buyBook(book_id, type)
{
    //显示列表
    $('.jq-module-s4-empty').hide();
    $('.jq-module-s4-buy').show();
    
    //读取cookie
    var bf_buy = $.cookie('bf_buy');

    //生成cookie
    if (bf_buy == null || bf_buy == '')
    {
        bf_buy == null;
        if (type == 1)
        {
            var bf_buy_cookie = book_id + '-1';
        }
        else
        {
            var bf_buy_cookie = '';
        }
    }
    else
    {
        var flag = 0;
        var bf_buy_arr = bf_buy.split('|');
        for (i=0; i<bf_buy_arr.length; i++)
        {
            var temp_arr = bf_buy_arr[i].split('-');
            if (book_id == temp_arr[0]) //该书已经在cookie中
            {
                flag = 1;
                if (type == 1)
                {
                    bf_buy_arr[i] = book_id + '-' + (parseInt(temp_arr[1]) + 1);
                }
                else
                {
                    if (temp_arr[1] == 1)
                    {
                        bf_buy_arr.splice(i,1);
                    }
                    else
                    {
                        bf_buy_arr[i] = book_id + '-' + (parseInt(temp_arr[1]) - 1);
                    }
                }
                break;
            }
        }
        if (flag == 1) //该书在cookie中
        {
            var bf_buy_cookie = bf_buy_arr.join('|');
        }
        else
        {
            var bf_buy_cookie = bf_buy + '|' + book_id + '-1';
        }
    }

    //没有要买的了，还原到最初状态并切换购物篮小鱼状态
    if (bf_buy_cookie == '')
    {
        $('.jq-module-s4-empty').show();
        $('.jq-module-s4-buy').hide();
        $('.t-info-basket-fish').addClass('t-info-basket').removeClass('t-info-basket-fish');
    }
    else
    {
        $('.t-info-basket').addClass('t-info-basket-fish').removeClass('t-info-basket');
    }
    
    //写入cookie
    $.cookie('bf_buy', bf_buy_cookie, {expires:1, path:'/'});
    
    //根据最新购买列表，生成清单，防止多窗口不同步问题
    if (bf_buy_cookie !== '')
    {
        refreshBuyList();
        refreshBuyBtn();
    }
    refreshBookInfoBuyBtn();
}

function payConfirm(type)
{
    if (checkOrder())
    {
        refreshBuyList();
        refreshBuyBtn();
        refreshBookInfoBuyBtn();
        
        //在图书总价基础上，增加邮费金额
        refreshSumAndPostage();
    
        $('.jq-module-s4-buy .bf-go2pay').hide();
        $('.jq-module-s4-buy .bf-go2pay-' + type).show();
        
        if (type == 2)
        {
            $('span.jq-bf-go2pay-name').html($(".bf-buyer-info input[name='buyer_name']").val());
        }
        
        $('.jq-module-s4-buy .inner').scrollTop(99999);
    }
}

//刷新购买列表
function refreshBuyList()
{
    var bf_buy_cookie = $.cookie('bf_buy');
    $('ul.jq-bf-pay-ul li:not(.sum)').remove();
    var bf_buy_arr = bf_buy_cookie.split('|');
    var li_code = '';
    var sum = 0;
    for (i=0; i<bf_buy_arr.length; i++)
    {
        //生成一条购买记录
        $temp_arr = bf_buy_arr[i].split('-');
        var li_html = $('.jq-bf-pay-li-html').html();
        var li_html = li_html.replace(/book_id/g, $temp_arr[0]);
        var li_html = li_html.replace('book_name', bf_bookinfo[$temp_arr[0]][1]);
        var li_html = li_html.replace('book_num', $temp_arr[1]);
        var li_html = li_html.replace('book_price', bf_bookinfo[$temp_arr[0]][2]);
        
        //累加li_code
        li_code = li_code + li_html;
        
        //累加总价
        sum = parseInt(sum) + parseInt($temp_arr[1]) * parseInt(bf_bookinfo[$temp_arr[0]][2]);
    }
    
    $('ul.jq-bf-pay-ul').find('li.sum').before(li_code);
    $('ul.jq-bf-pay-ul li.sum .s3').empty().append(sum);
    $('.jq-bf-go2pay-sum').html(sum);
}

//刷新购买列表中加减号
function refreshBuyBtn()
{
    $('ul.jq-bf-pay-ul li:not(.sum)').each(function(){
        if ($(this).attr('id') !== null)
        {
            //通过li的id分割出book_id
            var temp_arr = $(this).attr('id').split('-');
            var book_id  = temp_arr[3];
            if (bf_bookinfo[book_id][3] <= $(this).find('div.s2 span').html())
            {
                $(this).find('div.s2 img.img-plus').remove();
                $('.jq-t-info-outer-' + book_id).html($('.jq-t-info-html').html());
            }
            else
            {
                $('.jq-t-info-outer-' + book_id).html($('.jq-t-info-y-html').html());
            }
        }
    });
}

//刷新图书信息中的购买按钮状态
function refreshBookInfoBuyBtn()
{
    var bf_buy_cookie = $.cookie('bf_buy');
    if (bf_buy_cookie == '' || bf_buy_cookie == null)
    {
        var this_book_current_num = 0;
    }
    else
    {
        var this_book_current_num = 0;
        var bf_buy_arr = bf_buy_cookie.split('|');
        for (i=0; i<bf_buy_arr.length; i++)
        {
            $temp_arr = bf_buy_arr[i].split('-');
            if ($temp_arr[0] == current_book_id)
            {
                this_book_current_num = $temp_arr[1];
            }
        }
    }

    if (!$('.jq-bf-buy-btn').hasClass('bf-buy-btn-out-of-stock') && !$('.jq-bf-buy-btn').hasClass('bf-buy-btn-sold-out'))
    {
        if (this_book_current_num < bf_bookinfo[current_book_id][3])
        {
            $('.jq-bf-buy-btn').show();
            $('.bf-buy-btn-limit').hide();
        }
        else
        {
            $('.jq-bf-buy-btn').hide();
            $('.bf-buy-btn-limit').show();
        }
    }
}

function gotoPay(type)
{    
    //切换到等待按钮
    $('span.jq-gotopay-btn-' + type).hide();
    $('span.jq-gotopay-btn-waiting-' + type).show();
    
    //刷新到最新列表
    var bf_buy_cookie = $.cookie('bf_buy');
    refreshBuyList();
    refreshBuyBtn();
    refreshBookInfoBuyBtn();
    refreshSumAndPostage();
    
    //获取邮费
    var postage = parseInt($("input[name='postage']:checked").val());
    
    //ajax获取订单架构
    if (type == 1)
    {
        var load_url = '/index.php?action=site.alipayto&postage=' + postage;
    }
    else if (type == 2)
    {
        var load_url = '/index.php?action=site.bankTrans&postage=' + postage;
    }
    
    $('.jq-go2pay-zfb').load(load_url, function(responseText, textStatus, XMLHttpRequest){
        if (textStatus == 'success')
        {
            //获取订单参数
            var out_trade_no = $("input[name='out_trade_no']").val();
            var total_fee    = $("input[name='total_fee']").val();
            var buyer_addr   = $(".bf-buyer-info textarea[name='buyer_addr']").val();
            var buyer_name   = $(".bf-buyer-info input[name='buyer_name']").val();
            var buyer_tel    = $(".bf-buyer-info input[name='buyer_tel']").val();
            var buyer_email  = $(".bf-buyer-info input[name='buyer_email']").val();
            var buyer_remark = $(".bf-buyer-info textarea[name='buyer_remark']").val();
            if (buyer_remark == '备注') {buyer_remark = ''}
            
            //提交订单并获取返回值
            $.post('/index.php?action=site.recordOrder&postage=' + postage, {
                out_trade_no: out_trade_no,
                total_fee   : total_fee,
                buyer_addr  : buyer_addr,
                buyer_name  : buyer_name,
                buyer_tel   : buyer_tel,
                buyer_email : buyer_email,
                buyer_remark : buyer_remark,
                status      : type
            }, function(data, textStatus){
                if (data == 1)
                {
                    if (type == 1)
                    {
                        $('.jq-gotopay-btn-waiting-1').text('即将前往支付宝...');
                        $("form[name='alipaysubmit']").submit();
                    }
                    else if (type == 2)
                    {
                        $('.jq-module-s4-empty').hide();
                        $('.jq-module-s4-buy').hide();
                        $('.jq-module-s4-bank-trans-confirm').show();
                        $.cookie('bf_buy', null, {path:'/'});
                    }
                }
                else if (data == 4) //库存校验失败
                {
                    alert('库存校验失败！');
                    return false;
                };
            });
        }
    });
}

function checkOrder()
{
    var buyer_addr   = $(".bf-buyer-info textarea[name='buyer_addr']").val();
    var buyer_name   = $(".bf-buyer-info input[name='buyer_name']").val();
    var buyer_tel    = $(".bf-buyer-info input[name='buyer_tel']").val();
    var buyer_email  = $(".bf-buyer-info input[name='buyer_email']").val();
    
    var flag = 0;
    
    if (buyer_addr=='' || buyer_addr=='地址' || buyer_addr=='请填写地址')
    {
        $('textarea.jq-buyer-addr-textarea').attr('value','请填写地址').addClass('error');
        flag = 1;
    }
    
    if (buyer_name=='' || buyer_name=='收件人' || buyer_name=='请填写收件人')
    {
        $('input.jq-buyer-name-input').attr('value','请填写收件人').addClass('error');
        flag = 1;
    }
    
    if (buyer_tel=='' || buyer_tel=='联系电话' || buyer_tel=='请填写联系电话')
    {
        $('input.jq-buyer-tel-input').attr('value','请填写联系电话').addClass('error');
        flag = 1;
    }
    
    if (buyer_email=='' || buyer_email=='联系@信箱' || buyer_email=='请填写联系@信箱')
    {
        $('input.jq-buyer-email-input').attr('value','请填写联系@信箱').addClass('error');
        flag = 1;
    }
    
    if (flag == 1)
    {
        return false;
    }
    else
    {
        return true;
    }
}

//刷新最后付款，加邮费的
function refreshSumAndPostage()
{
    var sum_and_postage = parseInt($('ul.jq-bf-pay-ul li.sum .s3').html()) + parseInt($("input[name='postage']:checked").val());
    $('.jq-bf-go2pay-sum').html(sum_and_postage);
}
