$(function(){
    //列表全选功能	
	$("#projectListSeletc").selectAll("projectListItem", ".projectListArae");
	
	//提示框显示隐藏
	$(".tipsPop").each(function () {
	    var $this = $(this);
	    $this.parent().css("position", "relative").hover(function () {
	        $this.toggle(true);
	    }, function () {
	        $this.toggle(false);
	    });
	});
	
	//下载word,打印,添加收藏等按钮样式
	$(".sltBtn07").hover(function () {
	    $("em", this).css({
	        "background": "#34549e",
	        "color": "#fff"
	    });
	}, function () {
	    $("em", this).css({
	        "background": "#E4F1FF",
	        "color": "#369"
	    });
	});	
	(function(){
		var b = $(".sltListBtn07");
		b.each(function(){
		    var c  = $(".actionList", this);
		    $(this).hover(function(){
				$(this).css("position", "relative");
			    c.toggle(true);
		    },function(){
				$(this).css("position", "");
			    c.toggle(false);
		    });
		    
		    $("li", c).hover(function(){
			    $(this).css("background", "#316ac5").children().css("color", "#fff");
		    },function(){
			    $(this).css("background", "#fff").children().css("color", "");
		    }).click(function(e){
			    if(!$(e.target).is("a")){
				    $(this).children().eq(0).trigger("click");
			    }
		    });
		});		
	})();
	
		//修改密码
	(function(){
		var b = $("#sltChangePws"), pop = $("#changePwsPop"), table = $("#changePwdTable");
		if (pop.length) {
			var n = $("#spanUserNo", pop),
				p1 = $("#tbUserPwdOld", pop),
				p2 = $("#tbUserPwdNew", pop),
				p3 = $("#tbUserPwdNew2", pop),
				s = $("#tdSubmitPwd", pop);
			
			b.click(function(){
				pop.popup(function(){p1.focus();});
				return false;
			});			
			bindChangePwd(s, n, p1, p2, p3, function(){pop.unmask();});			
		}
		if(table.length){
			var n = $("#p_spanUserNo", table),
				p1 = $("#p_tbUserPwdOld", table),
				p2 = $("#p_tbUserPwdNew", table),
				p3 = $("#p_tbUserPwdNew2", table),
				s = $("#p_tdSubmitPwd", table);
			bindChangePwd(s, n, p1, p2, p3);	
		}
		
		function bindChangePwd(s, n, p1, p2, p3, success){
			var v1, v2, v3, vn = $.trim(n.text()), 
				reg = new RegExp("^[a-zA-Z0-9~!@#\\$%\\^&*()_\\-+=\\\\\\{\\}\\[\\],\\.]+$",'i');
			p1.enter(function(){p2.focus();});
			p2.enter(function(){p3.focus();});
			p3.enter(function(){ s.triggerHandler("click"); });
			s.click(cpwd);			
			s.addAjax("changepassword", {
				success: function(data){
					if($.isFunction(success))
						success.call(this, data);
					alert(data.Msg);
					$.unlock(p1, p2, p3, s);
					p1.val("");
					p2.val("");
					p3.val("");
				},
				error: function(){
					alert("网络错误!");
					$.unlock(p1, p2, p3, s);
				}
			}, false);
			function cpwd(){				
				v1 = $.trim(p1.val());
				v2 = $.trim(p2.val());
				v3 = $.trim(p3.val());
				$.lock(p1, p2, p3, s);				
				if(!v1 || !v2){
					alert("新密码和原密码均不能为空!");
					$.unlock(p1, p2, p3, s);
				}else if(v1 == v2){
					alert("新密码和原密码一样!");
					$.unlock(p1, p2, p3, s);
				}else if(!reg.test(v2)){
					alert("密码格式不正确(只能包含数字,字母或普通符号)!");
					$.unlock(p1, p2, p3, s);
				}else if(v2 !== v3){
					alert("两次输入的密码不一致!");
					$.unlock(p1, p2, p3, s);
				}else{
					s.sendAjax("changepassword", {
						no: encodeURIComponent(vn),
						pwd: encodeURIComponent(v1),
						newpwd: encodeURIComponent(v2)
					});								
				}
			}
		}
	})();   
	
	$("#chIsBid").attr("checked", $_GET("ib") == 1 ? true : false).bind("click", function() {
		setSearch({ "ib" : $(this).attr("checked") ? 1 : 0, "p" : 1 });
	});
	$("#chIsUpdate").attr("checked", $_GET("iu") == 1 ? true : false).bind("click", function() {
		setSearch({ "iu" : $(this).attr("checked") ? 1 : 0, "p" : 1 });
	});
	$("#chIsFollow").attr("checked", $_GET("it") == 1 ? true : false).bind("click", function() {
		setSearch({ "it" : $(this).attr("checked") ? 1 : 0, "p" : 1 });
	});
	
	$(".ico-quality,.ico-new,.ico-invite,.ico-msg", ".projectListArae table").css("cursor", "pointer").click(function(){
		window.open("http://p.tgnet.cn/help2/freshman.shtml#freshman_03");
	});
	
	$("#btnDownAll").click(function(){
	    $("#bMessage").html("下载大量数据可能需要等待较长时间，下载完成后请关闭此提示...");
        $("#message").popup();
	});
});

//登录
function _userLogin(){
    this.bind = function(userNameID,userPwdID,btnSubmitID,callback){
  		var u = $(userNameID),
            p = $(userPwdID),
            s = $(btnSubmitID);
        u.enter(function () { p.focus(); });
        p.enter(function(){ s.triggerHandler("click"); });
        s.click(login);
		s.addAjax("login", {
			dataType: "text",
			success: function (data) {
                var sResult = data.toString().substring(0, 1), msg = "";
                switch (sResult) {
					case "1" :
					case "4" :
					case "5" : 
                        if($.isFunction(callback)){
                            callback(sResult);							
                			$.unlock(u, p, s);
                        }
                        else {
                            window.location.reload();
                        }
						return false;
                    	break;
                    case "0": showError("不存在该用户！"); clear(true); break;
                    case "2": showError("密码错误"); clear(); break;
                    case "3": showError("用户已经被停用,如有疑问请联系管理员！"); break;
                    default: showError("不存在该用户或密码输入有误！"); clear();break;
                }
            },
			error: function () {
                showError("网络错误,请稍候再试!");
            }
		});
		function login() {
            var username = $.trim(u.val()),
                password = $.trim(p.val());
            if (!username || !password) {
                showError("请填写用户名和密码,再登录!");
                return false;
            }
            $.lock(u, p, s);
			s.sendAjax("login", {
                no: encodeURIComponent(username),
                pwd: encodeURIComponent(password)
            }, false);
        }

        function clear(b) {
            p.val("");
			if (b) {
				u.val("").focus();
			}else{				
			 	p.focus();
			}
        }
		
		function showError(msg){
			alert(msg);
			$.unlock(u, p, s);
		}
    }
}
var _user = new _userLogin();


//获取允许下载项目总数
function projDownRemaindCount(){
	return parseInt($("#hfProjDownRemaindCount").val());
}
//获取允许查看项目总数
function projViewRemaindCount(){
	return parseInt($("#hfProjViewRemaindCount").val());
}
//获取总的选择个数
function GetSelectedCount(check) {
    var iSelectedCount = $("input[name=projectListItem]:checked").length;
    if (check && iSelectedCount == 0) {
        $("#bMessage").html("喔哟！请先勾选一些项目吧！");
        $("#message").popup();
    }
    return iSelectedCount;
}

//获取总的个数
function GetAllCount() {
    var iSelectedCount = $("input[name=projectListItem]").length;
    return iSelectedCount;
}

function GetSelectedJson() {
    var json = [];
    $("input[name=projectListItem]").each(function(){
        var $this = $(this);
        var $name = $this.next(), $id = $name.next();
        json.push({
            "ProjName": $name.val(),
            "ProjID": $id.val(),
            "CanDown": $this.val(),
            "Checked": $this.attr("checked")
        });
    });
    return json;
}

function CheckDownSelected(json,isAll) {
    var value = "";
    var iIndex = 0;
    for (var i = 0; i < json.length; i++) {
        if (isAll || json[i].Checked) {
            if (json[i].CanDown == 0) {
                iIndex++;
                if(iIndex <= 10)
                {
                    value += json[i].ProjName + "<br />";
                }
                if(iIndex == 11)
                {
                    value += "...<br/>";
                }
            }
        }
    }
    $("#spanCannotDownProjCount").html(iIndex);
    return value;
}

function GetProjID(json, isDown, isAll) {
    var value = [];
    for (var i = 0; i < json.length; i++) {
        if (isAll || json[i].Checked) {
            if (isDown) {
                if (json[i].CanDown == 1) {
                    value.push(json[i].ProjID);
                }
            } else {
                value.push(json[i].ProjID);
            }
        }
    }
    return value.join(",");
}

function ClearSelected() {
    $("input[name=projectListItem]:checked").add("#projectListSeletc").attr("checked", false);
}	

//点击下载到Word，isExcel是否下载到Excel，iOp为0：下载勾选的，1：下载当页的
function DownProj(obj,iOp,isExcel) {
    $("#btnDownCanDownProj").unbind("click.DownProj");
    var iSelectedCount = 0;
    if(iOp == 0)
    {
        iSelectedCount = GetSelectedCount(true);
    }
    else
    {
        iSelectedCount = GetAllCount();
    }
    
    if (iSelectedCount == 0)
        return false;
        
    var iProjDownRemaindCount = projDownRemaindCount();    
    if (iProjDownRemaindCount == 0) {
        $("#examineOver").popup();
        return false;
    }
    
    if (iProjDownRemaindCount < iSelectedCount) {
        $("#spanProjDownSelectedCount").html(iSelectedCount);
        $("#downloadOver2").popup();
        return false;
    }
    var value = GetSelectedJson();
    var result = CheckDownSelected(value,iOp == 1);
    
	var ids = GetProjID(value, true,iOp == 1);
	var url = "";
	if(ids.length > 0)
	{
	    if(isExcel)
	    {
	        url = "/Project/ProjDown.aspx?op=xls&projIDList=" + ids;
	    }
	    else
	    {
	        url = "/Project/ProjDown.aspx?projIDList=" + ids;
	    }
    	
	    $("#btnDownCanDownProj").attr("href", url);
	}
	else
	{
	    $("#btnDownCanDownProj").bind("click.DownProj", function() {
		    $("#bMessage").html("喔哟！您想下载的项目都下载不了哦，请再找找其他项目去下载吧！");
            $("#message").popup();
            return false;
	    });
	}
	
	if (result.length > 0) {
        $("#spanCannotDownProjNameList").html(result);
        $("#notLot").popup();
        return false;
    }
    
	obj.href = url;
	return true;
}

function DownAllProj(obj,isExcel,iOp)
{
    if (projDownRemaindCount() == 0) {
        $("#examineOver").popup();
        return false;
    }
    
    var strUrl = location.href;
    var strParam = "";
    var reg = /\/(\w+?)\.aspx(\?(.+))?/g;
    var arr = reg.exec(strUrl);
    iOp = iOp ? iOp : 0;
    
    if(arr.length >= 2)
    {
        strParam = "downtype=" + arr[1];
        if(arr.length >= 4)
        {
            strParam += "&" + arr[3];
        }
    }
    if(isExcel)
	{
	    strUrl = "/Project/ProjDown.aspx?op=xls&datatype=" + iOp + "&" + strParam;
	}
	else
	{
	    strUrl = "/Project/ProjDown.aspx?datatype=" + iOp + "&" + strParam;
	}
	$("#btnDownAll").attr("href", strUrl);
	
	if(iOp == 0) {
	    if (projDownRemaindCount() < parseInt($("#hfProjCount").val())) {
            $("#downloadOver").popup();
            return false;
        }
    }
    
    obj.href = strUrl;
    if(iOp == 0) {
        $("#bMessage").html("您要下载的工程量比较大，可能需要比较长的时间，请耐心等待...");
        $("#message").popup();
    }
}

//点击打印预览
function PrintProj(obj) {
    var iSelectedCount = GetSelectedCount(true);
    if (iSelectedCount == 0)
        return false;
        
    var value = GetSelectedJson();
    obj.href = "/Project/ProjectPrint.aspx?projIDList=" + GetProjID(value, false,false);
    return true;
}

//点击添加收藏
function FavProj(iType) {
    var iSelectedCount = GetSelectedCount(true);
    if (iSelectedCount == 0)
        return;	
    iType = iType == 1 ? 1 : 0;
    var value = GetSelectedJson();	    
    $.getJSON("/System/AjaxService.aspx?op=setuserfav&type=" + iType + "&projid=" + GetProjID(value, false,false), function(data) {
        if (data.State > 0) {
            ClearSelected();
        }
        $("#bMessage").html(data.Msg);
        $("#message").popup();
    });
}


$(document).ready(function(){
    //点击搜索所有信息
    $(".getMoreProjInfo").click(function(){
        var strHref = window.location.href;
        var reg = /\?.*/g;
        var arr = reg.exec(strHref);
        window.location.href="/CompanyService/ProjList.aspx"+arr;
    });
});

function hidText(objID,value){
    var obj = $("#" + objID);
	var value = value || "";
    if(obj.length == 0) return;
	obj.css("color","#666");
    if(obj.val() == ""){
        obj.val(value);
    }   
    obj.bind("focus",function(){
        if(this.value == value){
            this.value = "";
            obj.css("color","#000");
        }
    });
    obj.bind("blur",function(){
        if(this.value == ""){
            this.value = value;
            obj.css("color","#666");
        }
    });
    
}
