if (!Tian) {
    var Tian = {}
}
Tian.Common = {
    init: function() {
        //Tian.Common.init_hook_click();
        //Tian.Common.iwant();
        Tian.Common.subscribe();
        //Tian.Common.sendenquiry();
        Tian.Order.init();
        Tian.Order.caculate_amount();
        //Tian.Order.pay();
        //Tian.Order.cancel();
        //Tian.Order.order_confirmation();
        Tian.Order.redraw_crosssale()
    },
    subscribe: function() {//邮件订阅
        $("#header-subscribe-form").submit(function() {
            $.ajax({
                type: $(this).attr("method"),
                url: $(this).attr("action"),
                dataType: "json",
                data: $(this).serialize(),
                success: function(a) {
                    if (a.error == 1) {//订购信息失败
                       alert(a.data)
                    } else {//订阅成功！以后天天团购的团购信息会发送到您的邮箱。
                        alert("\u8ba2\u9605\u6210\u529f\uff01\u4ee5\u540e\u5929\u5929\u56e2\u8d2d\u7684\u56e2\u8d2d\u4fe1\u606f\u4f1a\u53d1\u9001\u5230\u60a8\u7684\u90ae\u7bb1\u3002")
                    }
                }
            });
            return false
        });
        $("#tip-deal-subscribe-form").submit(function() {
            $.ajax({
                type: $(this).attr("method"),
                url: $(this).attr("action"),
                dataType: "json",
                data: $(this).serialize(),
                success: function(a) {
                    if (a.status == 0) {
                        alert(a.msg)
                    } else {
                        $("#tip-deal-subscribe-body").html("\u60a8\u5df2\u7ecf\u6210\u529f\u8ba2\u9605\uff01")
                    }
                }
            });
            return false
        });
        $("#header-subscribe-form input[name=email]").click(function() {
            if ($("#header-subscribe-form input[name=email]").attr("alt") == $("#header-subscribe-form input[name=email]").attr("value")) {
                $("#header-subscribe-form input[name=email]").val("")
            }
            $("#header-subscribe-form input[name=email]").css("color", "#333")
        })
    },
    iwant: function() {
        $("#form_i_want").submit(function() {
            $.ajax({
                type: $(this).attr("method"),
                url: $(this).attr("action"),
                dataType: "json",
                data: $(this).serialize(),
                success: function(a) {
                    if (a.status == 0) {
                        alert(a.msg)
                    } else {
                        alert("\u63d0\u4ea4\u6210\u529f")
                    }
                }
            });
            return false
        })
    },
    sendenquiry: function() {
        $("#consult-add-form").submit(function() {
            $.ajax({
                type: $(this).attr("method"),
                url: $(this).attr("action"),
                dataType: "json",
                data: $(this).serialize(),
                success: function(a) {
                    if (a.status == 0) {
                        alert(a.msg)
                    } else {
                        $("#consult-add-form").css("display", "none");
                        $("#consult-add-succ").css("display", "block")
                    }
                }
            });
            return false
        });
        $("#consult-add-more").click(function() {
            $("#consult-add-form").css("display", "block");
            $("#consult-add-succ").css("display", "none")
        })
    },
    giftcard: function() {
        $("#form_giftcard").submit(function() {
            $("#giftcard_processing").css("display", "block");
            $("#form_giftcard").css("display", "none");
            $.ajax({
                type: $(this).attr("method"),
                url: $(this).attr("action"),
                dataType: "json",
                data: $(this).serialize(),
                success: function(a) {
                    if (a.status == 0) {
                        alert(a.msg);
                        $("#giftcard_processing").css("display", "none");
                        $("#form_giftcard").css("display", "block");
                        $("input[name=cardno]").val("")
                    } else {
                        alert(a.msg);
                        location.reload()
                    }
                }
            });
            return false
        })
    },
    init_hook_click:function(){
    	$('#sysmsg-guide-close').click(function() {
      $('#sysmsg-guide').remove();
       $.ajax({
       	type:"GET",
       	url:"ajax/newbie.php",
       	dataType:"json",
       	success:function(a){
       	}
      });
        return false;
    });
    $('#sysmsg-error span.close').click(function() {
        return ! $('#sysmsg-error').remove()
    });
    $('#sysmsg-success span.close').click(function() {
        return ! $('#sysmsg-success').remove()
    })
    }
};
Tian.Lib = {};
Tian.Lib.Lightbox = {
    popBox: '<div id="lightbox"><iframe id="lightbox_pal"></iframe></div>',
    init: function(a) {
        $(Tian.Lib.Lightbox.popBox).appendTo("body");
        if (a.obj) {
            a.obj.appendTo($("#lightbox"));
            Tian.Lib.Lightbox.fx(a)
        } else {
            if (a.url) {
                a.url = a.url + "&nocache" + Math.random();
                $("#lightbox").load(a.url, 
                function() {
                    Tian.Lib.Lightbox.fx(a);
                    a.callback ? a.callback() : function() {
                        return true
                    }
                })
            } else {
                $(Tian.Lib.Lightbox[a.type](a.msg, a.state)).appendTo($("#lightbox"));
                Tian.Lib.Lightbox.fx(a)
            }
        }
        return false
    },
    fx: function(b) {
        if (b.shadow && !$("#lightbox_shadow")[0]) {
            $("body").append('<div id="lightbox_shadow"><iframe frameborder="0"></iframe></div>')
        }
        if ($("#lightbox_shadow")[0]) {
            $("#lightbox_shadow").height($("body").outerHeight() > $(window).height() ? $("body").outerHeight() : $(window).height()).find("iframe").height($("#lightbox_shadow").height())
        }
        var a = $("#lightbox");
        a.css({
            left: "50%",
            margin: "-" + a.height() / 2 + "px 0 0 -" + a.width() / 2 + "px"
        });
        if (b.sTop) {
            a.css({
                top: b.sTop + "px",
                marginTop: "0px"
            })
        }
        if (!window.XMLHttpRequest) { (function(c) {
                $(window).scroll(function() {
                    c.css({
                        marginTop: 0,
                        top: (b.sTop ? b.sTop: (($(window).height() - c.height()) / 2 - 0)) - 0 + $(window).scrollTop() + "px"
                    })
                })
            })(a);
            $(window).scroll()
        }
        $("#lightbox_pal").css({
            height: a.height(),
            width: a.width()
        });
        window.onresize = (function(c) {
            return function() {
                Tian.Lib.Lightbox.fx(c)
            }
        })(b);
        a = null
    },
    quit: function() {
        var a = arguments;
        window.onresize = null;
        $("#lightbox").fadeOut("fast", 
        function() {
            $("#lightbox").remove();
            if (a.length == 0 || (typeof(a[0]) == "function" && !a[1]) || a.length == 0) {
                $("#lightbox_shadow").remove()
            }
            if (typeof(a[0]) == "function") {
                a[0]()
            }
            a = null
        });
        return false
    }
};
Tian.Lib.Tool = {
    jsonToString: function(g) {
        var e = this;
        switch (typeof(g)) {
        case "string":
            return '"' + g.replace(/(["\\])/g, "\\$1") + '"';
        case "array":
            return "[" + g.map(e.jsonToString).join(",") + "]";
        case "object":
            if (g instanceof Array) {
                var d = [];
                var a = g.length;
                for (var c = 0; c < a; c++) {
                    d.push(e.jsonToString(g[c]))
                }
                return "[" + d.join(",") + "]"
            } else {
                if (g == null) {
                    return "null"
                } else {
                    var b = [];
                    for (var f in g) {
                        b.push(e.jsonToString(f) + ":" + e.jsonToString(g[f]))
                    }
                    return "{" + b.join(",") + "}"
                }
            }
        case "number":
            return g;
        case false:
            return g
        }
    }
};
if (!Tian) {
    var Tian = {}
}
Tian.Deal = {
    init:function(){
        Tian.Deal.countdown();
        Tian.Deal.toggle_invitation();
        Tian.Deal.enableBackToTop()
    },
    countdown: function() {
        var d = parseInt($("#time_left").val() * 1000);
        var c = (new Date()).getTime();
        var f = function() {
            var h = (new Date()).getTime();
            var b = d + c - h;
            if (b > 0) {
            	  var h = parseInt(b/86400000);
            	  if(h >0){
            	  	b= b % 86400000;
            	  }
                var a = parseInt(b / 3600000).toString();
                a = a.length > 1 ? a: "0" + a;
                b = b % 3600000;
                var g = parseInt(b / 60000).toString();
                g = g.length > 1 ? g: "0" + g;
                lms = parseInt((b % 60000) / 100);
                b = parseInt(lms / 10);
                ms = lms - b * 10;
                b = b.toString().length > 1 ? b: "0" + b;
                var e;
                if(h>0){
                	e = h+ "<em>\u5929</em>" +a + "<em>\u65f6</em>" + g + "<em>\u5206</em>"
                }else{
                	 e = a + "<em>\u65f6</em>" + g + "<em>\u5206</em>" + b + "." + ms + "<em>\u79d2</em>";
                }
                $("div#timer").html(e)
            } else {
                $("div#timer").stopTime("timer");
                $("div#timer").html("\u5df2\u7ed3\u675f")
            }
        };
        $("div#timer").everyTime(100, "timer", f)
    },
    enableBackToTop: function() {
		var $content = $("<a style='display:none; position:absolute; z-index:99' href='#'><div class='deal-backtotop'></div></a>");

		$('body').append($content);

		$(window).bind('scroll.backtotop', function(event) {

		  	if ($content.css('display')=='block') {
				$content.css('display', 'none');
			}

			$content.stopTime();
			$content.oneTime(300,function() {
				var offset = calculatePosition();
				if (offset!=null) {
					$content.css('top',offset.top).css('left', offset.left);
					if ($content.css('display')=='none') {
						$content.css('display', 'block');
					};
				}
			});

		});
            function calculatePosition () {
                    var $dealContent = $('#content');
                    var $sideContent = $('#sidebar');

                    var left = $dealContent.offset().left + $dealContent.innerWidth() + 3;
                    var top = $(window).scrollTop() + $(window).height()-150;
                    top = Math.min(top, $dealContent.offset().top + $dealContent.innerHeight() - 114);
                    if ($(window).scrollTop() + $(window).height() - 150  > $sideContent.offset().top + $sideContent.innerHeight() ) {
                            return {top:top, left:left};
                    } else {
                            return null;
                    };

            }

	},
    toggle_invitation: function() {
        $("#deal-share-im").toggle(function() {
            $("#deal-share-im-c").show("fast")
        },
        function() {
            $("#deal-share-im-c").hide("fast")
        });
        
        $("#share-copy-text").click(function() {
            this.select()
        });
    }
};
if (!Tian) {
    var Tian = {}
}
Tian.Order = {
		init:function(){
			Tian.Order.redraw_crosssale()
		},
    caculate_amount_func: function() {//计算数量的函数
        var e = 0;//产品总的数量
        var a = 0;
        var d = false;//是否是活动
        $(".deal-buy-quantity-input").each(function() {//购物车中每行产品数量输入框事件
            if ($(this).val() <= 0 || $(this).val() >= 99 || isNaN($(this).val())) {//产品限制在1~99之间
                $(this).val("1")
            }
            e += parseInt($(this).val());//加入到总的数量中去
            var g = $(this).attr("alt");//获取产品别名信息
            var f = $(this).val() * $("#deal-buy-price-" + g).html();//数量*单价
            a += parseFloat(f);//总价
            if ($(this).attr("category") == "lottery") {//获取类别
                d = true
            }
            $("#deal-buy-total-" + g).html(f.toFixed(2))//每行产品的总价
        });
        var b = $("input[name=logistic_id]:checked").attr("alt");//获取快递费用
        if (b == null) {//没有被选择的对象
            b = 0//快递费用为0
        }
        if (d) {
            $("#deal-buy-delivery-fee").html(0);
            $("#logistic_selection").css("display", "none")
        } else {
            if (e >= 2) {
                if (b <= 10) {
                    $("#deal-buy-delivery-fee").html(0)//非EMS
                } else {
                    $("#deal-buy-delivery-fee").html(b - 5)//EMS
                }
            } else {
                $("#deal-buy-delivery-fee").html(b)//购买一件产品的费用
            }
        }
        var c = a + parseFloat($("#deal-buy-delivery-fee").html());//应付的总价
        $("#deal-buy-total-t").html(c.toFixed(2))
		//快递类型啊
		var expressId = $("input[name=logistic_id]:checked").attr("title");
		$('#express_id').val(expressId);
		//alert(expressId);
    },
    caculate_amount: function() {//触发相关的事件
        $(".deal-buy-quantity-input").keyup(function() {//修改产品数量keyup事件
            Tian.Order.caculate_amount_func();
            Tian.Order.update_cart($(this).attr("alt"), $(this).val())//Cookie更新购物车内的信息
        });
        //$(".deal-buy-update").click(Tian.Order.caculate_amount_func);
        $("input[name=logistic_id]").change(Tian.Order.caculate_amount_func);
        $(".deal-buy-delete").click(function() {//删除信息
            var a = confirm("\u786e\u5b9a\u8981\u4e0d\u8d2d\u4e70\u6b64\u5546\u54c1\uff1f");
            if (a) {
                $("#" + $(this).attr("alt")).remove();
                Tian.Order.update_cart($(this).attr("alt"), 0);
                Tian.Order.caculate_amount_func();
                Tian.Order.redraw_crosssale()
            }
        });
        $("#deal-buy-form").submit(function() {
            var a = $("input[name=logistic_id]:checked").attr("alt");
            if (a == null) {
                alert("\u8bf7\u9009\u62e9\u5feb\u9012\u65b9\u5f0f");
                return false
            }
        })
    },
    update_quantity:function(deal_hash_id,op){
        var obj=$("input[name=quantity-"+deal_hash_id+"]");
        var n = obj.val();
        if(op=='plus'){
            n++;
        }else if(op=='decrease'){
            n--;
        }
        obj.val(n);
        Tian.Order.caculate_amount_func();
        Tian.Order.update_cart(deal_hash_id, obj.val())
    },
    update_cart: function(deal_hash_id, quantity) {//跟新购物车内产品购买信息
    	
        var raw_cart = $.base64Decode($.cookie("booinfo_cart"));//从cookie中获取购物车对象
        var cart = $.parseJSON(raw_cart);//解析购物车对象为JSON
        if (quantity <= 0) {//产品数量小于等于0删除该条产品信息
            eval("delete cart." + deal_hash_id)
        } else {
            eval("cart." + deal_hash_id + ".quantity = " + quantity)
        }
        var new_cart_cookie = $.base64Encode(Tian.Lib.Tool.jsonToString(cart));
        $.cookie("booinfo_cart", new_cart_cookie, {
            path: "/"
        })
    },
    redraw_crosssale: function() {
        var a = new Array();
        if ($(".selected_deal").length > 0) {
            $(".selected_deal").each(function() {
                a.push($(this).attr("id"))
            })
        }
        $(".cross_sale_deal").each(function() {
            var b = $.inArray($(this).attr("alt"), a);
            if (b != "-1") {
                $(this).css("display", "none")
            } else {
                $(this).css("display", "block")
            }
        })
    },
    order_confirmation: function() {
        var a = "";
        if ($.browser.msie) {
            a = "inline"
        } else {
            a = "table-row"
        }
        $("input[name='address_id']").click(function() {
            Tian.Order.load_shipping($(this).val())
        });
        $("input[name='shipping_option']").click(function() {
            $("#merge_shipping_list").css("display", "none");
            $("#shipping_input_delay").css("display", "none");
            if ($(this).val() == "merge") {
                $("#delivery_fee").html("0");
                $("#merge_shipping_list").css("display", a)
            } else {
                if ($(this).val() == "delay") {
                    $("#delivery_fee").html($("input[name='delivery_fee']").val());
                    $("#shipping_input_delay").css("display", a)
                } else {
                    $("#delivery_fee").html($("input[name='delivery_fee']").val())
                }
            }
            var b = parseFloat($("#delivery_fee").html());
            if (isNaN(b)) {
                b = 0
            }
            $("#total_amount").html(b + parseFloat($("input[name='cart_total']").val()))
        });
        $("input[name='target_shipping_date']").mousedown(function() {
            $(this).datepicker();
            $(this).datepicker("option", {
                dateFormat: "yy-mm-dd",
                showAnim: "",
                minDate: +1,
                maxDate: +10
            })
        })
    },
    load_shipping: function(c) {
        var a = false;
        var b = "";
        if ($.browser.msie) {
            b = "inline"
        } else {
            b = "table-row"
        }
        $(".shipping_no").each(function() {
            var d = $("input[name='logistic_id']").val() + "_" + c;
            var e = false;
            if ($(this).attr("alt") != d) {
                $(this).css("display", "none")
            } else {
                e = true;
                $(this).css("display", "block")
            }
            a = a || e;
            if (!a) {
                $("#merge_shipping_title").css("display", "none");
                $("#merge_shipping_list").css("display", "none");
                if ($("input[name='shipping_option']:checked").val() == "merge") {
                    $("#delivery_fee").html($("input[name='delivery_fee']").val());
                    $("#total_amount").html(parseFloat($("#delivery_fee").html()) + parseFloat($("input[name='cart_total']").val()));
                    $("input[name='shipping_option'][value='instant']").attr("checked", true)
                }
            } else {
                $("#merge_shipping_title").css("display", b);
                if ($("input[name='shipping_option']:checked").val() == "merge") {
                    $("#merge_shipping_list").css("display", b)
                }
            }
        })
    },
    pay: function() {//redirect pay page and a wait page
        $("#order-pay-form").submit(function() {
            Tian.Lib.Lightbox.init({
                url: "/payment_confirm.html?cache=0",
                callback: function() {},
                shadow: true,
                sTop: 150
            });
            return true
        })
    },
    cancel: function() {//订单取消
        $(".order-cancel").click(function() {
            var b = confirm("\u786e\u5b9a\u8981\u53d6\u6d88\u8fd9\u4e2a\u8ba2\u5355\u5417\uff1f");
            var a = $(this);
            if (b) {
                $.get($(this).attr("href"), "", 
                function() {
                    a.parent().html("\u5df2\u7ecf\u6210\u529f\u53d6\u6d88")//成功取消订单
                })
            } else {}
            return false
        })
    }
};
jQuery.fn.hasAttr = function(a) {
    var b = jQuery(null).not(document);
    this.each(function() {
        if ($(this).attr(a)) {
            b = b.add($(this))
        }
    });
    return b
};

