﻿/// <reference path="../jquery191.3/jquery-1.3.2-vsdoc.js" />

String.prototype.format = function() {
    var args = arguments;
    return this.replace(/{(\d{1})}/g, function() {
        return args[arguments[1]];
    });
};

function setPageInfo(totalRocords, totalPage, pageIndex) {
    $("#pageInfo").attr("allRecord", totalRocords).attr("totalPage", totalPage);
    item.buildingSearch.pageInfo();
    if (pageIndex) {
        $("a[name=pageInfo]").removeClass("current");
        $("a[name=pageInfo][value=" + pageIndex + "]").addClass("current");
    }
}

///送餐楼宇
var StoreBuiding = {};

StoreBuiding.GetOpenArea = function(upperId) {

    $.ajax({
        url: "/PageHandler.ashx?className=OpenArea&methodName=GetAreaAndAllChildAreas&parameter=" + upperId,
        dataType: 'json',
        clearForm: true,
        success: function(data) {

            var text = "";
            if (StoreBuiding._Config.Type == "li") {

                $(data).each(function(i, n) {
                    text = text + "<li href=\"javaScript:void(0)\" name=" + n.Id + ">" + n.AreaName + "</li>";
                });
                $("#buidingList").find("#ul_area").empty().append(text);
                $("#buidingList").find("#ul_area").find("li").bind("click", StoreBuiding.AreaClick);
                $("#buidingList").find("#ul_area").find("li:eq(0)").addClass("current").html("全部");
            }
            else {

                var optionText = "";
                $(data).each(function(i, n) {
                    text = text + "<li><a onfocus=\"this.blur();\" href=\"javaScript:void(0)\" name=" + n.Id + ">" + n.AreaName + "</a></li>";
                    if (i != 0)
                        optionText = optionText + "<option value='" + n.Id + "' >" + n.AreaName + "</option>";

                });
                $("#buidingList").find("#ul_area").empty().append(text);
                $("#buidingList").find("#ul_area").find("a").bind("click", StoreBuiding.AreaClick);
                $("#buidingList").find("#ul_area").find("li:eq(0)").addClass("current").find("a").html("全部");

                optionText = "<option value='0'>-请选择-</option>" + optionText;
                $("select[name='select_area_']").empty().append(optionText);
            }
        },
        error: function(data) {

            //
            //  alert("获取本市地区失败");
        }
    });
};
StoreBuiding._SearchArg = { keyWord: "", pageIndex: 1, pageSize: 16, areaId: 0, firstWord: "" };
StoreBuiding._Config = { ItemsCssClass: 'current', Type: "li", _Init: false };
StoreBuiding.FillItemsList = function() {
    var data = StoreBuiding._SearchArg;
    $("#table_list").html("<img src=\"../Person/css/images/loading.gif\" />");
    $("#div_page").empty();
    //var data={keyWord:"", pageIndex:1, pageSize:10, areaId:370200, firstWord:""};
    $.ajax({
        url: "/PageHandler.ashx",
        data: "className=BildingInfo&methodName=GetBuildingsByKeyWord&parameter=" + data.keyWord + "," + data.pageIndex + "," + data.pageSize + "," + data.areaId + "," + data.firstWord,
        dataType: 'json',
        cache: false,
        success: StoreBuiding.OnGetItemsSuccess,
        error: function(data) {
            $("#table_list").html("");
            //alert(data.responseText);
            StoreBuiding._SearchArg.firstWord = "";
        }
    });
};
//StoreBuiding.ItemsClick = function() {
//    var buidingName = $(this).html();
//    alert("a");
//    //var areName=$(this).attr("value");
//};
StoreBuiding.OnGetItemsSuccess = function(data) {
    var text = "";
    $("#div_page").html("");
    if (StoreBuiding._Config.Type == "li") {
        $(data[0]).each(function(i, n) {            
            text = text + "<li areaname=\"" + n.AreaName + "\" areaid=\"" + n.AreaId + "\" title=\"" + n.BuildingName + "\" name=\"" + n.StoriedBuildingId + "\">" + n.BuildingName + "</li>";
        });
        if (text == "")
            text = text + "<div class=\"c_zwly\">您选择的楼宇还没有被我们收录，您可以<a name='a_NearBuilding' href=\"javascript:void(0)\">选择附近参照物</a>，参照物要求是附近50米内，请在联系信息备注好您的送餐地址。<br/>您还可以<a name='a_CommendBuilding' href=\"javascript:void(0)\">点此推荐</a>，把您所在的楼宇推荐到爱外卖，这样也方便您以后使用。</div>";
        $("#table_list").empty().append(text);
        $("#table_list").find("li").bind("click", StoreBuiding.ItemsClick);
    }
    else {
        $(data[0]).each(function(i, n) {
            text = text + "<li><a areaname=\"" + n.AreaName + "\" title=\"" + n.BuildingName + "\" href='javascript:void(0);' name=\"" + n.StoriedBuildingId + "\">" + n.BuildingName + "</a></li>";
        });

        if (text == "") {
            $("#div_data_empty").show();
            $("#span_data_empty").show();
            $("#table_list").hide();
            $('#div_louyu_tj').hide();
        }
        else {
            $("#table_list").empty().append(text).show();
            $("#div_data_empty").hide();
            $("#span_data_empty").hide();
            $('#div_louyu_tj').hide();
        }

        $("#table_list").find("li > a").click(StoreBuiding.ItemsClick);
    }

    StoreBuiding._SearchArg.firstWord = "";
    var _pageIndex = StoreBuiding._SearchArg.pageIndex;
    var _pageSize = StoreBuiding._SearchArg.pageSize;

    var opr = { pageSize: _pageSize, totalRecord: data[1].TotalRecord, currentIndex: _pageIndex, currentIndexCss: "current", showPageCount: 5 };
    var p = new PageNavigation(opr);
    $("#div_page").html(p.getPageNagition());
    $("#div_page").find("a").click(StoreBuiding.PageClick);

    //选择附近参照物
    $("#table_list").find("a[name='a_NearBuilding']").click(function() {
        StoreBuiding.GetNearBuilding();
    });
    ///点此推荐
    $("#table_list").find("a[name='a_CommendBuilding']").click(StoreBuiding.TransferCommendBuilding);
};
///点此推荐
StoreBuiding.TransferCommendBuilding = function() {
    //alert("覆盖此方法 跳转至后台推荐楼宇");    
    window.location.href = "/Person/RecommendBuilding.aspx";
    return false;
};
//选择附近参照物
StoreBuiding.GetNearBuilding = function() {
    StoreBuiding._SearchArg.firstWord = "";
    StoreBuiding._SearchArg.keyWord = "";
    StoreBuiding.FillItemsList();
};



StoreBuiding.AreaClick = function() {
    if (StoreBuiding._Config.Type == "li") {
        $(this).parent().find("li").removeClass();
        $(this).addClass("current");
    }
    else {

        $(this).parent().parent().find("li").removeClass();
        $(this).parent().addClass("current");
        //关键字输入框隐藏
        $("#buidingListdiv_so").show();
    }
    StoreBuiding._SearchArg.pageIndex = 1;

    StoreBuiding._SearchArg.areaId = $(this).attr("name");
    $("#div_pinyin>a").removeClass("current");
    StoreBuiding.FillItemsList();
};
StoreBuiding.LetterClick = function() {

    $("#div_pinyin").find("a[value!=" + $(this).val() + "]").removeClass("current");
    $("#SearchKey").attr("value", "");
    $(this).toggleClass("current");

    var keyWord = $("#div_pinyin").find("a.current").attr("value");
    StoreBuiding._SearchArg.firstWord = keyWord == undefined ? "" : keyWord;
    StoreBuiding._SearchArg.pageIndex = 1;
    StoreBuiding._SearchArg.keyWord = "";
    StoreBuiding.FillItemsList();
};
StoreBuiding.PageClick = function() {

    subPageIndex = $(this).attr("name");
    if (subPageIndex == StoreBuiding._SearchArg.pageIndex) {
        return;
    }

    var keyWord = $("#div_pinyin").find("a.current").attr("value");
    StoreBuiding._SearchArg.firstWord = keyWord == undefined ? "" : keyWord;
    StoreBuiding._SearchArg.pageIndex = subPageIndex;
    StoreBuiding.FillItemsList();
};

StoreBuiding.KeyWordChange = function(event) {
    var keyCode = parseInt(event.keyCode);
    if ((keyCode > 79 && keyCode < 90) || (keyCode < 57 && keyCode > 49) || (keyCode == 32) || (keyCode == 13) || (keyCode == 8) || (keyCode == 46) || (keyCode > 64 && keyCode < 91) || (keyCode > 96 && keyCode < 123)) {

        $("#div_pinyin").find("a").removeClass("current");
        StoreBuiding._SearchArg.keyWord = encodeURI($("#SearchKey").val());
        StoreBuiding._SearchArg.pageIndex = 1;
        StoreBuiding.FillItemsList();
    }
};


StoreBuiding.Init = function() {

    if (!StoreBuiding._Config._Init) {
        StoreBuiding.GetOpenArea(0);
        $("#div_pinyin").find("a").click(StoreBuiding.LetterClick).attr("href", "javascript:void(0)"); ;
        $("#SearchKey").keyup(StoreBuiding.KeyWordChange);
        StoreBuiding.FillItemsList();
        StoreBuiding._Config._Init = true;
    }

};

///推荐楼宇---------

///楼宇推荐显示
StoreBuiding.CommBuildingDivShow = function() {
    $('#div_louyu_tj').show();
    $('#div_data_empty').hide();
    $("#buidingListdiv_so").hide();
    $("input[name='commBuildingName']").val(decodeURIComponent(StoreBuiding._SearchArg.keyWord));

    ///楼宇推荐div 中楼宇所在地区
    var areaid = $("ul[name='ul_area']").find("li[class='current']").find("a").attr("name");
    $("select[name='select_area_']").val(areaid);

};

///楼宇推荐
StoreBuiding.CommBuildingDivShow_Comm = function(_this) {

    $('#div_louyu_tj').show();
    $('#div_data_empty').hide();
    var btn_name = $(_this).attr("name");
    var name = $("input[name='commBuildingName']").val();
    var address = $("input[name='commBuildingAddress']").val();
    var areaId = $("select[name='select_area_']").val();

    if (areaId == 0) {
        alert("请选择地区");
        return;
    }
    if (name.Trim() == "") {
        alert("推荐楼宇名称不能为空！");
        return;
    }
    if (address.Trim() == "") {
        alert("推荐楼宇地址不能为空！");
        return;
    }

    name = name.replace(/,/g, "，");
    address = address.replace(/,/g, "，");

    $.ajax({
        url: "/PageHandler.ashx",
        data: "className=PersonalUser&methodName=AddCommStoriedBuilding&parameter=" + areaId + "," + encodeURIComponent(name) + "," + encodeURIComponent(address),
        dataType: 'json',
        cache: false,
        success: function(data) {

            $("input[name='buildingId']").val(data.ItemId);
            $("input[name='buidingName']").val(name);
            $("#buidingList").hide();

            alert("您推荐的楼宇还需审核，审核通过后您才可以选择推荐的楼宇进行订餐，感谢您的支持！");
        },
        error: function(data) {
            alert("推荐失败 Server Error");
        }
    });
};
StoreBuiding.CommBuildingDivShow_Comm_Back = function() {

    $('#div_louyu_tj').hide();
    $('#div_data_empty').show();
    $("#buidingListdiv_so").show();
};






//
//<div class="zw_ly" style="display: none" id="div_data_empty">您搜索的楼宇可能还没有被我们收录，您可以点击后面的<span style='color: #C30;'>【推荐楼宇】</span>按钮将楼宇推荐给我们，或者尝试搜索您所在位置附近50米范围的其它参照物。
//<span style='color: #F60;'>谢谢您对我们工作的支持，推荐楼宇审核通过后会有积分奖励哟！</span>
//</div>

(function($) {

    var _jsonOpenArea;
    var _config = { cache: true, onItemClick: {}, onCloseClick: {} };
    var _SEFT;
    var _SearchArg = { keyWord: "", pageIndex: 1, pageSize: 16, areaId: 0, firstWord: "" };

    $.fn.SelectBuildings = function(data) {
        var id = $(this).attr("id");
        if (data && data.onItemClick) {
            _config.onItemClick[id] = data.onItemClick;
        }
        if (data && data.onCloseClick) {
            _config.onCloseClick[id] = data.onCloseClick;
        }

        $(this).click(_Init);
        return this;
    };
    _Init = function() {
        if (_SEFT) {
            _OnDivClose();
        }
        _SEFT = this; //
        _SearchArg = { keyWord: "", pageIndex: 1, pageSize: 16, areaId: 0, firstWord: "" };

        var text1 = "";
        text1 += "<div class='louyu_tj' style='display:none; margin-top: 5px;' id='div_louyu_tj'>";
        text1 += "<p style='margin-bottom: 5px;'>选择区域：<select name='select_area_'><option>-请选择-</option></select></p>";
        text1 += "<p style='margin-bottom: 5px;'>楼宇名称：<input class='text_5 text_s1' name='commBuildingName' type='text' maxlength='20' />&nbsp;(必填)</p>";
        text1 += "<p style='margin-bottom: 5px;'>详细地址：<input class='text_ico text_3' style='width:300px;' name='commBuildingAddress' type='text' maxlength='50' />&nbsp;(必填)</p>";
        text1 += "<p style='padding-left: 5em;'>";
        text1 += "<input class='but_10_1'  name='CommBuildingDivShow_CommAndUse_btn' type='button' onclick='javascript:StoreBuiding.CommBuildingDivShow_Comm(this)' value='推荐并使用此楼宇' />&nbsp;";
        text1 += "<input onclick='javascript:StoreBuiding.CommBuildingDivShow_Comm_Back(this)'  class='but_10_1' name='' type='button' value='返回' /></p>";
        text1 += "</div>";
        text1 += "<div class='zw_ly' style='display: none' id='div_data_empty'>您搜索的楼宇可能还没有被我们收录，您可以点击后面的<em style='color:#C30; font-style:normal;'>【推荐楼宇】</em>按钮将楼宇推荐给我们，或者尝试搜索您所在位置附近50米范围的其它参照物。<em style='color:#C30; font-style:normal;'>谢谢您对我们工作的支持，推荐楼宇审核通过后会有积分奖励哟！</em></div>";


        var text = "";
        text += "<div class='c_louyu' name='buidingList' style = 'display: none;' >";
        text += "<!--[if lte IE 6]><iframe scrolling=\"no\" frameborder=\"0\" style=\"top:-1px; bottom:0px; left:0px; right:0px; z-index: -1; position:absolute; opacity: 0; filter: Alpha(Opacity=0); display:block; height: 200px; width: 430px;\"></iframe><![endif]-->";
        text += "<div class='c_dh'><ul class='c_nav' name='ul_area'></ul><p><a title='关闭' class='close' name='a_close_div' href='javascript:void(0)'></a></p></div>";
        text += "<div class='c_so' id='buidingListdiv_so'>楼宇/小区搜索：<input class='text_ico text_3' type='text' name='SearchKey' maxlength='25' />&nbsp;<span id='span_data_empty' style='display: none'><input type='button' value='推荐楼宇' onclick='javascript:StoreBuiding.CommBuildingDivShow();' class='but_10_1'/></span></div>";
        text += "<div class='c_so_ly'><ul name='table_list'><li><img alt='' src='css/images/loading.gif' /></li></ul>" + text1 + "</div>";
        text += "<div class='ym' name='div_page'></div>";
        text += "</div>";

        $(_SEFT).after(text);
        if ($(_SEFT).attr("name") == "louyu") {
            $("div[name='buidingList']").attr("style", "left:auto;top:auto;");
        }
        $("div[name='buidingList']").show();
        _GetOpenArea();
        $("a[name='a_close_div']").click(_OnDivClose);
        $("input[name='SearchKey']").keyup(_KeyWordChange);
        _FillItemsList();

    }
    _GetOpenArea = function() {
        //市区缓存
        if (_jsonOpenArea) {
            _FillOpenAreaUL(_jsonOpenArea);
            return;
        }
        $.ajax({
            url: "/PageHandler.ashx?className=OpenArea&methodName=GetAreaAndAllChildAreas&parameter=0",
            dataType: 'json',
            cache: true,
            success: _FillOpenAreaUL,
            error: function(data) {
                //
                //  alert("获取本市地区失败");
            }
        });
    }
    _FillOpenAreaUL = function(data) {
        var text = "";
        var optionText = "";
        $(data).each(function(i, n) {
            text = text + "<li><a onfocus=\"this.blur();\" href=\"javaScript:void(0)\" name=" + n.Id + ">" + n.AreaName + "</a></li>";
            if (i != 0)
                optionText = optionText + "<option value='" + n.Id + "' >" + n.AreaName + "</option>";
        });
        _jsonOpenArea = data;

        $("div[name='buidingList']").find("ul[name='ul_area']").empty().append(text);
        $("div[name='buidingList']").find("ul[name='ul_area']").find("a").bind("click", _AreaClick);
        $("div[name='buidingList']").find("ul[name='ul_area']").find("li:eq(0)").addClass("current").find("a").html("全部");

        optionText = "<option value='0'>-请选择-</option>" + optionText;
        $("select[name='select_area_']").empty().append(optionText);
    }
    _FillItemsList = function() {
        var data = _SearchArg;

        $("ul[name='table_list']").html("<img src=\"../Person/css/images/loading.gif\" />");
        $("div[name='div_page']").empty();
        //var data={keyWord:"", pageIndex:1, pageSize:10, areaId:370200, firstWord:""};
        $.ajax({
            url: "/PageHandler.ashx",
            data: "className=BildingInfo&methodName=GetBuildingsByKeyWord&parameter=" + data.keyWord + "," + data.pageIndex + "," + data.pageSize + "," + data.areaId + "," + data.firstWord,
            dataType: 'json',
            cache: false,
            success: _OnGetItemsSuccess,
            error: function(data) {
                $("ul[name='table_list']").html("");
                //alert(data.responseText);
                _SearchArg.firstWord = "";
            }
        });
    }
    _OnGetItemsSuccess = function(data) {
        var text = "";
        $("div[name='div_page']").html("");

        $(data[0]).each(function(i, n) {
            text = text + "<li><span  title=\"" + n.BuildingName + "\" name=\"" + n.StoriedBuildingId + "\">" + n.BuildingName + "</span></li>";
        });
        if (text == "") {
            $("#div_data_empty").show();
            $("#span_data_empty").show();
            $("ul[name='table_list']").hide();
            $('#div_louyu_tj').hide();
        }
        else {
            $("ul[name='table_list']").empty().append(text).show();
            $("#div_data_empty").hide();
            $("#span_data_empty").hide();
            $('#div_louyu_tj').hide();
        }

        $("ul[name='table_list']").find("li > span").click(_ItemsClick);


        _SearchArg.firstWord = "";
        var _pageIndex = _SearchArg.pageIndex;
        var _pageSize = _SearchArg.pageSize;

        var opr = { pageSize: _pageSize, totalRecord: data[1].TotalRecord, currentIndex: _pageIndex, currentIndexCss: "current", showPageCount: 5 };
        var p = new PageNavigation(opr);
        $("div[name='div_page']").html(p.getPageNagition());
        $("div[name='div_page']").find("a").click(_PageClick);

        //                     //选择附近参照物
        //                     $("ul[name='table_list']").find("a[name='a_NearBuilding']").click(function() {
        //                         StoreBuiding.GetNearBuilding();
        //                     });
        //                     ///点此推荐
        //                     $("ul[name='table_list']").find("a[name='a_CommendBuilding']").click(StoreBuiding.TransferCommendBuilding);
    }

    _LetterClick = function() { }
    _AreaClick = function() {

        $(this).parent().parent().find("li").removeClass();
        $(this).parent().addClass("current");
        //关键字输入框隐藏
        $("#buidingListdiv_so").show();
        $("#div_data_empty").hide();
        $("#span_data_empty").hide();
        $('#div_louyu_tj').hide();

        _SearchArg.pageIndex = 1;
        _SearchArg.areaId = $(this).attr("name");
        //   $("#div_pinyin>a").removeClass("current");
        _FillItemsList();
    }
    _PageClick = function() {
        var subPageIndex = $(this).attr("name");
        if (subPageIndex == _SearchArg.pageIndex) {
            return;
        }
        var keyWord = $("#div_pinyin").find("a.current").attr("value");
        _SearchArg.firstWord = keyWord == undefined ? "" : keyWord;
        _SearchArg.pageIndex = subPageIndex;
        _FillItemsList();
    }
    _KeyWordChange = function(event) {

        var keyCode = parseInt(event.keyCode);

        if ((keyCode > 79 && keyCode < 90) || (keyCode < 57 && keyCode > 49) || (keyCode == 32) || (keyCode == 13) ||
(keyCode == 8) || (keyCode == 46) || (keyCode > 64 && keyCode < 91) || (keyCode > 96 && keyCode < 123)) {

            $("#div_pinyin").find("a").removeClass("current");
            _SearchArg.keyWord = encodeURI($("input[name='SearchKey']").val());
            _SearchArg.pageIndex = 1;
            _FillItemsList();
        }
    }
    //
    _ItemsClick = function() {
        if (_config.onItemClick[$(_SEFT).attr('id')]) {
            _config.onItemClick[$(_SEFT).attr('id')](this);
        }
        _OnDivClose();
    }

    _OnDivClose = function() {
        $("div[name='buidingList']").remove();
        if (_config.onCloseClick[$(_SEFT).attr('id')]) {
            _config.onCloseClick[$(_SEFT).attr('id')](this);
        }
    }

})(jQuery);

