﻿// JScript 文件
//***************************************************************
var newTooltip;//事例化
var newDialog;//
var newTools;//

newTooltip = new myTooltip();//
newDialog = new myDialog();//
newTools = new myTools();//



//刘福顺添加的发送webqq消息的函数
//userId：消息接收者的id
//msg：发送的消息
function send800QMessage(userId,msg)
{
    var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
        xmlhttp.open("post","/800QNew/Handlers/800QHandler.ashx?funcname=SendMessage&receiver="+userId,false);
        xmlhttp.send(msg);
        xmlhttp = null;
}

//***************************************************************
//生成xmldocument对象
//strXml xml字符串
function msXmlDocument(strXml)
{				
	var oXmlDoc = new ActiveXObject("MSXML2.DOMDocument");
	oXmlDoc.loadXML(strXml);
	return oXmlDoc;
}

//***************************************************************
//同步xmlhttp请求
//method 方法
//url 地址
//var_body send参数
function XmlHttpOption(method,url,var_body)
{
	var xmlHttp = new ActiveXObject("MSXML2.XMLHTTP");
  	xmlHttp.open(method,url,false);	
	xmlHttp.send(var_body);		
	return xmlHttp.responseText;
}

//***************************************************************
//弹出操作窗口控制对象
function ToolTipControl()
{
    var currentObj;        //当前控键
    var isShow = false;    //是否已经有窗口弹出
    var timerToolTip;      //打开窗口定时器
    var timerClose;        //关闭窗口定时器
    var func;              //获取展示数据的函数名字符串
    var currentParamiter;  //参数字符串 
    var instance = "";     //被初始化的对象字符串
    var guardTime = 1500;  //警戒时间
    var showTime = 5000;   //无操作显示时间
    //------------------------------------------------------------------------
    //初始化参数
    //_func 获取展示数据的函数名字符串
    //_instance 被初始化的对象字符串
    //_guardTime 警戒时间 默认为1500毫秒
    //_showTime 无操作显示时间 默认为2000毫秒
    this.load = function(_func,_instance,_guardTime,_showTime)
    {
        func = _func;
        instance = _instance;
        if(_guardTime != null)
        {
            guardTime = _guardTime;
        }
        if(_showTime != null)
        {
            showTime = _showTime;
        }
    }
    
    //------------------------------------------------------------------------
    //开始警戒 用于onmouseover 事件
    //obj 当前控键对象
    //paraStr 参数字符串
    
    this.guard = function(obj,paraStr)
    {
       /* if(instance == "userToolTip" && paraStr == 100)return;//系统帐号不进行任何处理
        
        if(isShow && currentObj != obj)
        {
            isShow = false;
            dijit.hideTooltip(currentObj);               
        }
        
        currentObj = obj;
        currentParamiter = paraStr;
        timerToolTip = setTimeout(_show,guardTime)*/
    }
    
    //------------------------------------------------------------------------
    //显示
    var _show = function()
    {           
        newTooltip.closeTooltip();
        _focus();
        isShow = true;
        var _strHTML = eval(func + "(\""+currentParamiter+"\")");
        
        //_strHTML = "<div style=\"width:303px\" onmouseover=\"" +instance + ".focus()\" onmouseout=\"" +instance + ".onfocus()\">"+_strHTML+"</div>";
    
        newTooltip.showTooltip(currentObj,_strHTML);
        
        timerClose = setTimeout(_close,showTime);
    }
    
    //直接显示窗口 用于onclick 事件等
    //obj 当前控键对象
    //paraStr 参数字符串
    this.show = function(obj,paraStr)
    {
        if(instance == "userToolTip" && paraStr == 100)return;//系统帐号不进行任何处理
        if(isShow && currentObj == obj)return;
        
        if(isShow && currentObj != obj)
        {
            isShow = false;
            newTooltip.closeTooltip();               
        }  
        
        currentObj = obj;
        currentParamiter = paraStr;
        _show();
    }
    
    //------------------------------------------------------------------------
    //关闭显示窗口
    this.close = function()
    {
        _close();
    }
    
    var _close = function()
    {
        if(isShow)
        {
            newTooltip.closeTooltip();
            clearInterval(timerToolTip);
            isShow = false;
        }
    }
    
    //------------------------------------------------------------------------
    //关闭定时器 用于onmouseout 事件
    this.clear = function()
    {
       /* if(timerToolTip != null)
        {
            clearInterval(timerToolTip);
        }
        timerToolTip = null; */
    }
    
    var _focus = function()
    {
       if(timerClose != null)
       {
            clearInterval(timerClose);
            timerClose = null; 
       }
    }
    
    this.focus = function()
    {
        _focus();
    }
    
    this.onfocus = function()
    {
        timerClose = setTimeout(_close,showTime);
    }    
    
    //弹出发送消息的窗口
    this.openNewWindow = function(index,type)
    {  
        var str = ""; 
        switch(index)
        {
            case 1:            
                _openMessageWindow(type);
                break;
            case 2:
                _openBeFriendWindow(type);
                break; 
            case 3:
                _openGoToGroup(type);
                break;
        }
       
    }
    
    var _openGoToGroup = function(type)
    {
        var newAjax = new myAjax();//
         newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=getGroup",
                   load: _openGoToGroupSuc,     
                   content:{type:type}
                });
            newAjax = null;
    }
    
    var _openGoToGroupSuc = function(strXML)
    {
        var doc = msXmlDocument(strXML);
        var flag = doc.selectSingleNode("//friendGroup/flag").text;
        if(flag == "0")
        {
            alert("请您先登录！");
            return;
        }
        
        var type = doc.selectSingleNode("//friendGroup/type").text;
        type = parseInt(type);
        var groups = doc.selectNodes("//friendGroup/groups/group");
        
        var str = ""; 
        str += "<table style=\"text-align:left;width:200px\" width=\"200\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
        /*str += "<tr>";
        str += "  <td height=\"22\" valign=\"middle\">附加消息：</td>";
        str += "</tr>";
        str += "<tr>";
        str += "  <td><textarea id=\"txtMessageContent\" cols=\"17\" rows=\"3\"></textarea></td>";
        str += "</tr>";*/
        str += "<tr>";
        str += "  <td height=\"22\" valign=\"middle\">选择圈子：<select id=\"sltFriendGroup\">";
        for(var i=0;i<groups.length;i++)
        {
            var id = groups[i].selectSingleNode("id").text;
            var name = dCode(groups[i].selectSingleNode("name").text);           
           
            str += "<option value=\""+id+"\">"+name+"</option>";
           
        }
        str += "</select></td>";
        str += "</tr>";
        str += "<tr>";
        str += "  <td height=\"35\" valign=\"middle\"><input type=\"button\" onclick=\"goToGroup("+currentParamiter+","+type+",'',document.getElementById('sltFriendGroup').value);"+instance+".closeNewWindow();\" class=\"seabtn\" value=\"发送\"/>";
        str += "      &nbsp;&nbsp;<input type=\"button\" onclick=\""+instance+".closeNewWindow()\" class=\"seabtn\" value=\"取消\"/></td>";
        str += "</tr>";
        str += "</table>";
         _close();
        newTooltip.showTooltip(currentObj,str);
        
        doc = null;
        CollectGarbage();
    }
    
    var _openMessageWindow = function(type)
    {
    var newAjax = new myAjax();//
       newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=getUserIsOnline",
                   load: _openMessageWindowSuc,   
                   content:{type:type}
                });
                newAjax = null;
    }
    
    var _openMessageWindowSuc = function(strXML)
    {
        var doc = msXmlDocument(strXML);
        
        var type = doc.selectSingleNode("//friendGroup/type").text;
        type = parseInt(type);
        var flag = doc.selectSingleNode("//friendGroup/flag").text;
        
        if(flag != "0")
        {
            var str = ""; 
            str += "<table style=\"text-align:left;width:200px\" width=\"200\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
           /* str += "    <tr>";
            str += "      <td width=\"39\" height=\"33\">标题：</td>";
            str += "      <td width=\"161\"><input id=\"txtMessageTitle\" type=\"text\" class=\"textbox\" size=\"18\"/></td>";
            str += "    </tr>";*/
            str += "    <tr>";
            str += "      <td height=\"48\" valign=\"top\">内容：</td>";
            str += "      <td valign=\"top\"><textarea id=\"txtMessageContent\" cols=\"17\" rows=\"3\"></textarea></td>";
            str += "    </tr>";
            str += "    <tr>";
            str += "      <td height=\"30\">&nbsp;</td>";
            str += "      <td><input type=\"button\" class=\"seabtn\" onclick=\"sendMessage("+currentParamiter+","+type+",document.getElementById('txtMessageContent').value);"+instance+".closeNewWindow()\" value=\"发送\"/>";
            str += "           &nbsp;&nbsp;<input type=\"button\" onclick=\""+instance+".closeNewWindow()\" class=\"seabtn\" value=\"取消\"/></td>";
            str += "    </tr>";
            str += "  </table>";
             _close();
            newTooltip.showTooltip(currentObj,str);
        }
        else
        {
            alert("请您先登录！");
        }
        
        doc = null;
        CollectGarbage();
    }
    
    var _openBeFriendWindow = function(type)
    {
        var familyId = -1 ;
        if(parent.gFamilyId != null && parent.gFamilyId != undefined && parent.gFamilyId != "" )
        {
            familyId = parent.gFamilyId ;
        }
        
        var newAjax = new myAjax();//
        newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=getFriendGroup&familyId=" + familyId ,
                   load: _openBeFriendWindowSuc,   
                   content:{type:type}
                });
             newAjax = null;
             familyId = null ;
    }
    
    var _openBeFriendWindowSuc = function(strXML)
    {
        var doc = msXmlDocument(strXML);
        var flag = doc.selectSingleNode("//friendGroup/flag").text;
        if(flag == "0")
        {
            alert("请您先登录！");
            return;
        }
        
        var type = doc.selectSingleNode("//friendGroup/type").text;
        type = parseInt(type);
        var groups = doc.selectNodes("//friendGroup/groups/group");
        var str = ""; 
        str += "<table style=\"text-align:left;width:200px\" width=\"200\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
        str += "<tr>";
        str += "  <td height=\"22\" valign=\"middle\">附加消息：</td>";
        str += "</tr>";
        str += "<tr>";
        str += "  <td><textarea id=\"txtMessageContent\" cols=\"17\" rows=\"3\"></textarea></td>";
        str += "</tr>";
        str += "<tr style=\"display:none\">";
        str += "  <td height=\"22\" valign=\"middle\">选择分类：<select id=\"sltFriendGroup\">";
        for(var i=0;i<groups.length;i++)
        {
            var id = groups[i].selectSingleNode("id").text;
            var name = groups[i].selectSingleNode("name").text;
            if(i == 0)
            {
                str += "<option value=\""+id+"\" selected>"+htmlEncode(name)+"</option>";
            }
            else
            {
                str += "<option value=\""+id+"\">"+htmlEncode(name)+"</option>";
            }
        }
        str += "</select></td>";
        str += "</tr>";
        str += "<tr>";
        str += "  <td height=\"35\" valign=\"middle\"><input type=\"button\" onclick=\"beFriend("+currentParamiter+","+type+",document.getElementById('txtMessageContent').value,document.getElementById('sltFriendGroup').value);"+instance+".closeNewWindow();\" class=\"seabtn\" value=\"发送\"/>";
        str += "      &nbsp;&nbsp;<input type=\"button\" onclick=\""+instance+".closeNewWindow()\" class=\"seabtn\" value=\"取消\"/></td>";
        str += "</tr>";
        str += "</table>";
         _close();
        newTooltip.showTooltip(currentObj,str);
        
        doc = null;
        CollectGarbage(); 
    }
    
    
    //关闭发送消息的窗口
    this.closeNewWindow = function()
    {        
        newTooltip.closeTooltip(); 
        //_show();
    }   
    
    //发送消息
    //obj 指定弹出的对象
    //paraStr 个人或者家庭编号
    //type 1个人，2家庭
    this.sendMessage = function(obj,paraStr,type)
    {   
        currentObj = obj;
        currentParamiter = paraStr;
        _openMessageWindow(type);
    }
    
    //加为好友
    //obj 指定弹出的对象
    //paraStr 个人或者家庭编号
    //type 1个人，2家庭
    this.beFriend = function(obj,paraStr,type)
    {    
        currentObj = obj;
        currentParamiter = paraStr;
        _openBeFriendWindow(type);
    }
    
    //邀请加入圈子
    //obj 指定弹出的对象
    //paraStr 个人编号
    this.goToGroup = function(obj,paraStr)
    {
        currentObj = obj;
        currentParamiter = paraStr;
        _openGoToGroup(1);
    }
}  


//*******************************************************************************************
//-------------------------------------------------------------------------------------------
//给Array添加一个remove函数
Array.prototype.remove = function (obj) 
{
    return RemoveArray(this,obj);
}
// 找到 obj 在数组中的位置
// 如果未找到，返回 -1
Array.prototype.indexOf = function(obj) {
	var result = -1;
	for (var i=0; i < this.length; i++) {
		if (this[i] == obj) {
			result = i;
			break;
		}
	}
	return result;
}

function RemoveArray(array,attachId)
{
    for(var i=0,n=0;i<array.length;i++)
    {
        if(array[i]!=attachId)
        {
            array[n++]=array[i]
        }
    }
    array.length -= 1;
}

//*******************************************************************************************
//判断是否为数字

//结果 0 不是数字 1是数字

function chkNum(NUM) 
{ 
    var i,j,strTemp; 
    strTemp="0123456789"; 
    if ( NUM.length== 0) 
    return 0 
    for (i=0;i<NUM.length;i++) 
    { 
        j=strTemp.indexOf(NUM.charAt(i)); 
        if (j==-1) 
        { 
            //说明有字符不是数字 
            return 0; 
        } 
    } 
    //说明是数字 
    return 1; 
} 

//判断字符串是否是数字，包括小数
function chkFlowNum(num)
{
    var strArray = num.split(".");
    if(strArray.length > 2)return 0;
    
    for(var i=0;i<strArray.length;i++)
    {
        if(chkNum(strArray[i]) == 0)
        {
            return 0;
        }
    }
    
    return 1;
}

function chkNum2(NUM) 
{ 
    var i,j,strTemp; 
    strTemp="0123456789"; 
    if ( NUM.length== 0) 
    return 0;
    
    var firstChar = NUM.charAt(0);
    if(firstChar == "-")
    {
        NUM = NUM.substring(1,NUM.length);
    }
    
    for (i=0;i<NUM.length;i++) 
    { 
        j=strTemp.indexOf(NUM.charAt(i)); 
        if (j==-1) 
        { 
            //说明有字符不是数字 
            return 0; 
        } 
    } 
    //说明是数字 
    return 1; 
} 

//*******************************************************************************************
//checkbox全选

function checkAllForCheckBox(obj,_name) 
{ 
    var bo = obj.checked;
    var a = document.getElementsByTagName("input");
    for (var i=0; i<a.length; i++) 
    {
         if (a[i].type == "checkbox" && a[i].name == _name)
         {
              a[i].checked = bo;
         }
    }
}

//将特定名称的值选中或者不选中
function checkAllByBool(bo,_name)
{    
    var a = document.getElementsByTagName("input");
    for (var i=0; i<a.length; i++) 
    {
         if (a[i].type == "checkbox" && a[i].name == _name)
         {
              a[i].checked = bo;
         }
    }
}

//将特定名称的值选中或者不选中
function checkAllByValue(bo,_name,_value)
{    
    var a = document.getElementsByTagName("input");
    for (var i=0; i<a.length; i++) 
    {
         if (a[i].type == "checkbox" && a[i].name == _name && a[i].value == _value)
         {
              a[i].checked = bo;
         }
    }
}

//-----------------------------------------------------------------
//获取指定name选项中的value值列表

//name 指定的名称

function getCheckValues(name,doc)
{
    var ids = "";  
    
    if(doc == null)
    {
        doc = document;
    }  
    
    var a = doc.getElementsByTagName("input");
    for (var i=0; i<a.length; i++) 
    {
         if (a[i].type == "checkbox" && a[i].name == name && a[i].checked)
         {
               ids += a[i].value + ",";
         }
    }    
  
    if(ids.length > 0)
    {
        ids = ids.substring(0,ids.length - 1);
    }
    
    return ids;
}

//*******************************************************************************************
//Tooltip对象
function Tooltip()
{
    var button;
    var context;
    var timer;    
    var time = 3000;

    //_button 显示的对象
    //_context 显示的文本
    //_time 停留时间 默认为3000毫秒
    this.show = function(_button,_context,_time)
    {
        button = _button;
        context = "<div style=\"width:"+13*(_context.length)+"\">"+ _context + "</div>";
        if(_time != null)
        {
            time = _time;
        }
        newTooltip.showTooltip(button,context);
        timer = setTimeout(hide,time); 
    }
    
    var hide = function()
    {
        clearInterval(timer);
        newTooltip.closeTooltip();
    }                   
     
}

//*******************************************************************************************
//给用户或者家庭发送消息
//targets 对象编号字符串(如：1001,1002,1003)
//type 1个人，2家庭
function sendMessage(targets,type,content)
{   
    var reciveUsers = "";
    var reciveFamilys = "";
    
    if(type == 1)
    {
        reciveUsers = targets;
    }
    else
    {
        reciveFamilys = targets;
    }
    content = content.Trim();
    
    if(content == "")
    {
        alert("请输入内容！") ;
        return;        
    }
    
    if(reciveUsers != "")
    {
        send800QMessage(reciveUsers,content);
        alert("发送成功");
    }
    else
    {
        var newAjax = new myAjax();
        newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=sayHello",
                   load: sendMessageSuccess,               
                   content:{reciveUsers:reciveUsers,reciveFamilys:reciveFamilys,content:content}
                });
       newAjax = null;
   }
}

function sendMessageSuccess(strXML)
{
    var doc = msXmlDocument(strXML);
    var result = doc.selectSingleNode("//messageSend/result").text;
    if(result == "1")
    {      
        alert("发送成功");
    }
    else
    {
        alert("发送失败");        
    }
    
    doc = null;
    CollectGarbage();
}

//************************************************************************************************
//加为好友
function beFriend(targets,type,content,group)
{
    var newAjax = new myAjax();//
    newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=beFriend",
                   load: beFriendSuccess,                  
                   content:{type:type,targets:targets,content:content,group:group}
                });
   newAjax = null;             
}

function beFriendSuccess(data)
{   
    switch(data)
    {
        case "1":
            data = "已经向对方成功发出消息,等待对方确认！";
            break;
//        case "-1":
//            data = "好友已存在，不能重复添加！";
//            break;
        case "-2":
            data = "好友已存在，不能重复添加！";
            break;
        case "-3":
            data = "不能加自己为好友！";
            break;
    }
   
    alert(data);
}

//************************************************************************************************
//邀请加入圈子
function goToGroup(targets,type,content,group)
{
    var newAjax = new myAjax();//
    newAjax.xhrGet({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=insertGroupInterestMemberInvite",
                   load: goToGroupSuccess,  
                   content:{memberId:targets,groupId:group,content:content,role:3}
                });
    newAjax = null;
}

function goToGroupSuccess(data)
{
    switch(data)
    {
        case "1":
            alert("邀请已发出！");
            break;
        case "-2":
            alert("该用户已在圈子中！");
            break;
        default:
            alert("操作失败！");
            break;
    }
  
}

//************************************************************************************************
//编码转换
//编码函数
//str 编码字符串
function eCode(str)
{
    var s = "";
    for (num1=0; num1<str.length; num1++){
        s += "u" + str.charCodeAt(num1).toString(16);
    }
    return s;
}

//解码函数
//str 解码字符串
function dCode(str)
{
    var s = "";
    myArr = str.split('u');
    for (num1=0; num1<myArr.length; num1++){
        if (myArr[num1] != ""){
            s += String.fromCharCode(parseInt(myArr[num1],16));
        }
    }
    return s;
}

//***************************************************************
//获取对用户的操作窗口
function getUserHTML(userId)
{
    var url = "/Common/Handlers/CommonHandler.ashx?funcname=getUserHTML&userId="+userId+"&domain="+"&rd="+Math.random();
    return XmlHttpOption("get",url,"");
}

//*****************************************************************************************
//弹出家庭操作窗口
function getFamilyHTML(familyId)
{
    var url = "/Common/Handlers/CommonHandler.ashx?funcname=getFamilyHTML&familyId="+familyId+"&domain="+"&rd="+Math.random();
    return XmlHttpOption("get",url,"");
}


//*****************************************************************************************
//图片浏览窗口
//function Image()
//{
//    //图片地址
//    this.src = "";
//    //图片上的提示文字
//    this.alt = "";
//    //点击图片进入的链接
//    this.url = "";
//    
//    //加载方法
//    //_src 图片地址
//    //_alt 图片上的提示文字
//    //_url 点击图片进入的链接
//    this.load = function(_src,_alt,_url)
//    {
//        this.src = _src;
//        this.alt = _alt;
//        this.url = _url; 
//    }
//}


function ImagesControl()
{
    var array = new Array();//图片地址
    var imagearray = new Array();
    var image;//图片
    var divNumbers;//数字按钮的加载div
    var numWidth = 110;
    var numHeight = 20;
    var imageX;
    var imageY;
    var length = 0;
    var imageEntity;
    var currentIndex;
    var timer;    
    var time = 3000;
    var isAuto = false;
    var divImage;//加载图片的div；
    var width = 200;
    var height = 200;
    
    //图片初始化方法
    //_image 图片对象
    //_imageEntity 本对象实例名称
    //_time 图片切换间隔时间 默认为3000毫秒
    //_width 图片宽度 默认为当前图片的宽度
    //_height 图片高度 默认为当前图片的高度
    this.load = function(_divImage,_imageEntity,_time,_width,_height)
    {
        width = _width;
        height = _height;
        imageEntity = _imageEntity;
        divImage = _divImage;
        var rec = getOffSet(_divImage);
        if(_width != null)
        {
            imageX = parseInt(rec[0]) + parseInt(_width) - 20;
        }
        else
        {
            imageX = parseInt(rec[0]) + parseInt(_divImage.style.width) - 10;
        }   
        
        if(_height != null)
        {
            imageY = parseInt(rec[1]) + _height - 10;
        }  
        else
        {   
            imageY = parseInt(rec[1]) + parseInt(_divImage.style.height) - 10;
        }
        
        var top = imageY - numHeight;
        divNumbers = document.createElement("<div style=\"height:"+numHeight+"px; position: absolute; top:"+top+"px\"></div>");
        document.body.appendChild(divNumbers);
        
        if(_time != null)
        {
            time = _time;            
        }
    }
    
    //添加指定义图片对象
    //img 图片对象
    this.add = function(img)
    {
        array.push(img);
        
        /*var mImage = new Image();
        mImage.src = img.src;*/
        
        var mImage = document.createElement("<img style=\"display:none\" alt=\""+img.alt+"\" src=\""+img.src+"\" width=\""+width+"\" height=\""+height+"\" />");
        mImage.style.cursor = "hand";
        mImage.onclick = _open;
        mImage.onmouseover = timerStop;
        mImage.onmouseout = _continue;
        divImage.appendChild(mImage);
        
        imagearray.push(mImage);
        
        var span = document.createElement("<span onclick=\""+imageEntity+".open("+length+")\" onmouseout=\""+imageEntity+".auto()\" onmouseover=\""+imageEntity+".show("+length+")\" class=\"fBtn\" ></span>");
        divNumbers.appendChild(span);        
       
        length ++;
        span.innerText = length;
        
        numWidth = 22*length;
        divNumbers.style.width = numWidth;
        divNumbers.style.left = imageX - numWidth;        
    }
    
    //显示指定图片
    this.show = function(index)
	{	    
	    _show(index);
	    timerStop();
	}
	
	var _show = function(index)
	{
	    if(array.length == 0)return;
	    var span = divNumbers.childNodes[index];
	    
	    for(var i=0;i<length;i++)
	    {
	        if(i != index)
	        {
	            var temp = divNumbers.childNodes[i];
	           
	            temp.className = "fBtn";
	        }       
	    }	    
	  
	    span.className = "fBtnOn";
	    
	    /*ar obj = array[index];
	    
	    image.src = obj.src;
	    image.alt = obj.alt;	*/  
	        
        if(currentIndex != index)
        {
            var img;
            if(currentIndex != -1)
            {
                img = imagearray[currentIndex];
                img.style.display = "none";
            }
            img = imagearray[index];
            img.style.display = "";
        }	   
	    
	    currentIndex = index;
	}
	
	//开始显示
	this.start = function()
	{
	    isAuto = true;
	    currentIndex = -1;
	    _auto();
	}
	
	var _auto = function()
	{	 
	    if(isAuto)
	    {  
	        var index = currentIndex + 1;
	        if( index == length)
	        {
	            index = 0;
	        }
	        _show(index);
	        timerStart();
	    }
	}		
	
	var _continue = function()
	{
	    if(isAuto)
	    {
	         timerStart();
	    }
	}
	
    this.auto = function()
	{
	     _continue();
	}
	
	var timerStart = function()
	{
	    timer = setTimeout(_auto,time); 
	}
	
	var timerStop = function()
	{
	    clearInterval(timer);
	}
	
	var _open = function()
	{
	    var obj = array[currentIndex];
	    var url = obj.url;
	    window.open(url);
	}
	
	
	this.open = function(index)
	{
	    _show(index);
	    //_open();
	}
	
    
    var getOffSet = function(e) 
	{  
		var t=e.offsetTop;  
		var l=e.offsetLeft;  
		while(e=e.offsetParent) 
		{  
			t+=e.offsetTop;  
			l+=e.offsetLeft;  
		}  
		var rec = new Array(1); 
		rec[0] = l;
		rec[1]  = t; 		 
		return rec 
	} 
}

//*****************************************************************************************
//简要提示窗口
//strHtml 提示文本
//title 提示标题
function sAlert(strHtml,title)
{
    if(title == null)
    {
       title = "温馨提示";
    }
    
    if(strHtml == null)
    {
       strHtml = "";
    }
    
    var width = 200;
    var hitht = 96;
    
    var doc = document;

    var str = "parent";
    while(eval(str + ".document") != null && eval(str + ".document") != doc)
    {
        doc = eval(str + ".document");
        str += ".parent";        
    }   
    
    var g_page_mask = doc.createElement("<div id=\"divAlertBg\" style=\"position:absolute;top:0;left:0;z-index:999999999,width:"+document.body.clientWidth+";height:"+document.body.clientHeight+"\"></div>");		
	g_page_mask.innerHTML = "<iframe style=\"FILTER:Alpha(opacity=0);width:100%;height:100%\" onclick=alert()></iframe>";		
	doc.body.appendChild(g_page_mask);		
	
	g_save_dialog = doc.createElement("<div id=\"tableAlertBody\" style='z-index:9999999999'>");
	g_save_dialog.style.position = "absolute";

    var scrollPos; 
    var scrollLeft;
    if (typeof window.pageYOffset != 'undefined') { 
       scrollPos = window.pageYOffset; 
       scrollLeft = window.pageXOffset; 
    } 
    else if (typeof doc.compatMode != 'undefined' && 
         doc.compatMode != 'BackCompat') { 
       scrollPos = doc.documentElement.scrollTop; 
       scrollLeft = doc.documentElement.scrollLeft;
    } 
    else if (typeof doc.body != 'undefined') { 
       scrollPos = doc.body.scrollTop; 
       scrollLeft = doc.body.scrollLeft;
    } 

	g_save_dialog.style.pixelTop = window.screen.availHeight/2 + scrollPos  - hitht/2 - 100;
	g_save_dialog.style.pixelLeft = window.screen.availWidth/2 + scrollLeft - width/2 - 30;
	g_save_dialog.style.pixelWidth = width;
	g_save_dialog.style.pixelHeight = hitht;

	var s = "";
    s += "<table width=\"200\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style='border:solid 1px #676767;background:#fff;font-size:12px;'>";
    s += "<tr>";
    s += "  <td><table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
    s += "    <tr>";
    s += "      <td width=\"8\" height=\"31\"  style='background:url(/Js/800linJSLib/images/dialog_bar_bg.jpg) left top repeat-x;'>&nbsp;&nbsp;</td>";
    s += "      <td width=\"309\" style='font-size:14px;background:url(/Js/800linJSLib/images/dialog_bar_bg.jpg) left top repeat-x;'><strong>"+title+"</strong></td>";
    s += "      <td width=\"18\" align=\"center\" style='background:url(/Js/800linJSLib/images/dialog_bar_bg.jpg) left top repeat-x;'>";
    s += "        <img style=\"cursor:hand;\" onclick=\"document.body.removeChild(document.getElementById('divAlertBg'));document.body.removeChild(document.getElementById('tableAlertBody'))\" src=\"/Js/800linJSLib/images/dialog_close.gif\" width=\"10\" height=\"10\">&nbsp;";
    s += "      </td>";
    s += "    </tr>";
    s += "    <tr>";
    s += "      <td height=\"25\" colspan=\"3\" align=\"center\" bgcolor=\"#FFFFFF\" style='font-size:14px;line-height:150%;'><span style=\"word_break:break-all\" >"+strHtml+"</span><br>";
    s += "          <label></label>";
    s += "          <label></label></td>";
    s += "    </tr>";
    s += "    <tr>";
    s += "      <td height=\"25\" colspan=\"3\" align=\"center\" bgcolor=\"#FFFFFF\"><input name=\"button3\" type=\"popButton\"  onclick=\"document.body.removeChild(document.getElementById('divAlertBg'));document.body.removeChild(document.getElementById('tableAlertBody'))\" style='background:url(/Js/800linJSLib/images/popBtnbg.gif) left bottom repeat-x #F7F7F7; border:1px solid #6DBAEE;color:#1873C6;font-size:12px;font-weight:bold;cursor:pointer;width:65px;padding-top:3px;text-align:center;height:17px;' value=\"关闭窗口\"></td>";
    s += "    </tr>";
    s += "    <tr>";
    s += "      <td colspan=\"3\" align=\"center\" bgcolor=\"#FFFFFF\">&nbsp;</td>";
    s += "    </tr>";
    s += "  </table></td>";
    s += "</tr>";
    s += "</table>";
    
//    s += "<div style=\"width: 230px;margin:10px 5px;border: 1px solid #E0E8EF;\">";
//    s += " <div style=\"font-size:12px;height:22px;line-height:22px;position: relative;background-image: url(/FamilyNew/Home/Images/module_top.jpg);background-repeat: repeat-x;color: #6F7E93;\"> <span style=\"margin: 0;padding-left: 34px;background-image: url(/FamilyNew/Home/Images/icon-pop.gif);background-repeat: no-repeat;background-position: left -4px;font-size: 12px; font-weight: bold;\">"+title+"</span>";
//    s += "      <div style=\"float:right;cursor:pointer;position: absolute;font-weight: normal;right: 6px;";
//	s += "    top: 3px;\"><img src=\"/FamilyNew/Home/Images/btn-close.gif\" alt=\"关闭\" style=\"cursor:hand;\" onclick=\"document.body.removeChild(document.getElementById('divAlertBg'));document.body.removeChild(document.getElementById('tableAlertBody'))\" width=\"15\" height=\"15\" border=\"0\" /></div>";
//    s += "    </div>";      
//    s += "  <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
//    s += "    <tr>";
//    s += "      <td height=\"30\" align=\"center\" valign=\"middle\" style=\"padding:8px;";
//	s += "    border-bottom:1px solid #E0E8EF;\"><strong>"+strHtml+"</strong></td>";
//    s += "    </tr>";
//    s += "    <tr>";
//    s += "      <td height=\"30\" align=\"center\"><input style=\"border:0; text-align:center; height: 20px; line-height: 18px; background: url(/FamilyNew/Home/Images/btn_pop.jpg) no-repeat left top scroll; color:#FFF; width: 40px; font-size: 12px;\" type=\"submit\"  onclick=\"document.body.removeChild(document.getElementById('divAlertBg'));document.body.removeChild(document.getElementById('tableAlertBody'))\" value=\"确定\" /></td>";
//    s += "    </tr>";
//    s += "        </table>";
//    s += "</div>";

	g_save_dialog.innerHTML = s;
	doc.body.appendChild(g_save_dialog);	
	
  }
  window._alert = window.alert;
  window.alert = sAlert;


//*****************************************************************************************
//事例化用户和家庭弹出对话框对象
var userToolTip = new ToolTipControl();
userToolTip.load("getUserHTML","userToolTip");

var familyToolTip = new ToolTipControl();
familyToolTip.load("getFamilyHTML","familyToolTip");

var sendMessageToolTip = new ToolTipControl();
sendMessageToolTip.load("","sendMessageToolTip");

var beFriendToolTip = new ToolTipControl();
beFriendToolTip.load("","beFriendToolTip");

var goToGroupToolTip = new ToolTipControl();
goToGroupToolTip.load("","goToGroupToolTip");

//*****************************************************************************************
//申请加入家庭
function applayInFamily(familyId)
{
    var url = "/FamilyNew/Member/Applayfor.htm";
    if(familyId != null)
    {
        url += "?familyId=" + familyId;
    }
    window.open(url);
}

function loadErr()
{}

//**********************************************************************************
//多浏览器xmlhttp对象
function XmlHttp() {}
XmlHttp.create = function () {
	try {
		// NS & MOZ
		if (window.XMLHttpRequest) {
			var req = new XMLHttpRequest();
			if (req.readyState == null) {
				req.readyState = 1;
				req.addEventListener("load", function () {
					req.readyState = 4;
					if (typeof req.onreadystatechange == "function")
						req.onreadystatechange();
				}, false);
			}
			
			return req;
		}
		// IE
		if (window.ActiveXObject) {
			return new ActiveXObject(getXmlHttpPrefix() + ".XmlHttp");
		}
	}
	catch (ex) {}
	// 失败
	throw new Error("您的浏览器不支持XmlHttp对象");
};
function getXmlHttpPrefix() {
	if (getXmlHttpPrefix.prefix)
		return getXmlHttpPrefix.prefix;
	
	var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"];
	var o;
	for (var i = 0; i < prefixes.length; i++) {
		try {
			o = new ActiveXObject(prefixes[i] + ".XmlHttp");
			return getXmlHttpPrefix.prefix = prefixes[i];
		}
		catch (ex) {};
	}
	
	throw new Error("无法找到可安装的XmlHttp对象");
}
//多浏览器生成xmlDocument
function ParseXML()
{
    var XmlDoc;
    var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"];
    try
    {
        //IE浏览器
        for (var i = 0; i < prefixes.length; i++)
        {
                XmlDoc = new ActiveXObject(prefixes[i] + ".DOMDOCUMENT");
                XmlDoc.async = false;
	            XmlDoc.resolveExternals = false;
                return XmlDoc;
        }
    }
    catch(e)
    {
        try
        {
            //Mozilla, Firefox, Opera, etc.浏览器
            XmlDoc = document.implementation.createDocument("","",null);
        }
        catch(e)
        {
            alert(e.message);
            return;
        }
    }
    XmlDoc.async = false;
	XmlDoc.resolveExternals = false;
	return XmlDoc;
}

/*****************************************************************************/
//标签分割
//str--输入标签,num--最大允许的标签数,len--单个标签的字数长度,btnId--显示提示消息的控件id,返回结果是一个数组
function TagSplit(str,num,len,btnId)
{
   var tip = new Tooltip(); 
   var tag = [];
   tag = str.split(" ");
   var count = 0;
   for(var i=0;i<tag.length;i++)
   {
        if(tag[i].Trim()!="")
        {
            count++;
        }
   }
   if(count>num)
   {
        //tip.show(dojo.byId(btnId),"对不起,您输入的标签过多", 1000);
        alert("对不起,您输入的标签过多");
        return;
   }
   var tags = [];
   for(var i=0,j=0;i<tag.length;i++)
   {  
        if(tag[i].Trim()!="")
        {
            tags[j] = tag[i];
            j++;
        }
   } 
   for(var i=0;i<tags.length;i++)
   {
        if(tags[i].length>len)
        {
            //tip.show(dojo.byId(btnId),"对不起,您输入的标签字数过长", 1000);
            alert("对不起,您输入的标签字数过长");
            return;
        }
        var num = 0;
        for(var j=0;j<tags.length;j++)
        {
            if(tags[i] == tags[j])
            {
                num++;
            }
        }
        if(num>1)
        {
            //tip.show(dojo.byId(btnId),"对不起,不允许出现相同标签", 1000);
            alert("对不起,不允许出现相同标签");
            return;
        }
   }
   
   return tags;   
}
//获取ValidationTextBox的验证结果(dojo)
//function checkAll(){ 
//    var isOk=true; 
//    dijit.registry.filter(function(widget)
//     {
//        return widget.declaredClass=="dijit.form.ValidationTextBox"?true:false;
//     }).forEach(function(widget)
//     { 
//        if(!widget.isValid()){ 
//            alert(widget.invalidMessage); 
//            isOk=false; 
//            return; 
//            } 
//     }); 
//     return isOk; 
//} 

//提示框
function showPrompt(obj,content,width,time)
{
    if(width)
    {
        newTooltip.showTooltip(obj,"<p>"+content+"</p>",width);
    } 
    else
    {
        newTooltip.showTooltip(obj,"<p>"+content+"</p>",content.length*10+50);
    }  
    if(time)
    {
        setTimeout("newTooltip.closeTooltip()",time); 
    }  
    else
    {
        setTimeout("newTooltip.closeTooltip()",1000); 
    } 
}

/*****************************************************************************/
//资源添加收藏接口
//rId--需要收藏的资源id,如果没有资源id请传"0"
//Module--资源所属的模块的枚举名  ResourceTypeEnum
//url--需要收藏的资源url
//publisher -- 资源发布者的id
//publishtime -- 资源发布时间
//objId -- 对象

var  AddFavourity = function()
{   
//    var mfamilyId = "";
    var mResourceId = "";
    var mModule = "";
    var mUrl = "";
    var mpublisher = "";
    var mpublishtime =  "";
    var mobjId =  "";
    var mentity = "";
    //liufushun修改于20080422 11:40，外围可以传入收藏标题文字

    var mTitle = "";
    var _callFunc = null;
   
    //回调
    this.callBackFunc = function(funcName)
    {
        _callFunc = funcName;
    }    
    
    this.load = function(rId,Module,url,publisher,publishtime,objId,title)
    {
        mResourceId = rId,
        mModule =  Module,
        mUrl = url; 
        mpublisher = publisher;
        mpublishtime =  publishtime;
        mobjId =  objId;
        mentity = "addFavoutiry"; 
        
        //liufushun添加，如果调用这传递了标题则将此标题保存起来

        if(title)
            mTitle = title;
        
        
        
        //获取当前登录用户加入的所有家庭，并创建收藏弹出窗口

//        mentity = encodeURI(mentity); 
        var newAjax = new myAjax();//
        newAjax.xhrPost({
               url: "/Common/Handlers/CommonHandler.ashx?funcname=CreateDiv",
               load: CreateDivSuc,              
               content:{mentity:mentity,mTitle:mTitle}
            }); 
       newAjax = null;     
            
    }
    function CreateDivSuc(response)
    {
        if(response == "-1")
        {
            alert("您还没有创建家庭，请先创建一个家庭吧!");
            return; 
        } 
       if(response == "0")
       {
            alert("您还没有登录，请先登录吧!");
            return; 
       } 
       else
       {
            newTooltip.closeTooltip(); 
            newTooltip.showTooltip(mobjId,response);   
       } 
    }
    this.CancelInter = function()
    {
        newTooltip.closeTooltip();
    }  

    this.AddInter = function(id)
    {
        var mTitle = document.getElementById("textInterTitle").value;// dojo.byId().value;
        if(mTitle.Trim() == "")
        {
            alert('请输入标题');
            return;
        }  
//        mTitle = encodeURI(dojo.string.trim(mTitle));
//        mUrl = encodeURI(mUrl);
//        mModule = encodeURI(mModule);
        mTitle = mTitle.Trim();
        var select = document.getElementsByName("sltInterUrlGroup"); 
       var mGroupId = document.getElementById("sltInterUrlGroup_"+id).options[document.getElementById("sltInterUrlGroup_"+id).selectedIndex].value;
//       mGroupId =  encodeURI(mGroupId);
        var newAjax = new myAjax();//
        newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=SaveFavourityByInterface",    //&rid="+mResourceId+"&module="+mModule+"&title="+mTitle+"&groupId="+mGroupId+"&publisher="+mpublisher+"&publishTime="+mpublishtime+"&favourtiesUrl="+mUrl+"&type=1
                   load: SaveInterFavouritySuc,                   
                  content:{rid:mResourceId,module:mModule,title:mTitle,groupId:mGroupId,publisher:mpublisher,publishTime:mpublishtime,favourtiesUrl:mUrl,type:1} 
                }); 
        newAjax = null;

   } 
   function SaveInterFavouritySuc(response)
   {
        var re = response;
       // alert(re);
        if(re > 0)
        {
            alert("添加成功");
            newTooltip.closeTooltip();
            if(_callFunc!=null)
            {
                eval(_callFunc);
            }
        } 
       else if(re == -2)
       {
            alert("对不起,您的积分不够,不能收藏!");
            newTooltip.closeTooltip();
       }
       else
       {
            alert("添加失败");
//            this.CancelInter();
       }  
   }
}
var addFavoutiry = new AddFavourity();
//******************************************资源举报接口*********************************


//举报接口
//url 资源url
//obj对象
//title举报标题
//resource_id资源id
//module所属模块
//suspecter被举报人
var  AddComplaint = function()
{   

    var mUrl = "";
    var mObj =  "";
    var mEntity = "";
    var mTitle = "";
    var mResourceId = 0;
    var mModule = "";
    var mSuspecter = 0;
    var mTip = "";
    this.load = function(url,obj,title,resouce_id,module,suspecter,tip)
    {
        mUrl = url; 
        mObj =  obj;
        mTitle = title;
        mResourceId = resouce_id;
        mModule = module;
        mSuspecter = suspecter;
        mEntity = "addComplaint"; 
        
        if(tip != null)//韩威添加
        {
            mTip = tip;
        }
        
        //获取当前登录用户加入的所有家庭，并创建收藏弹出窗口

        mEntity = encodeURI(mEntity); 
        var url1 = "/Common/Handlers/CommonHandler.ashx?funcname=initComplaintInterfaceDivPage";
        var newAjax = new myAjax();
        newAjax.xhrGet({
               url: url1,
               load: CreateDivSuc,               
               content:{resouceUrl:mUrl,entity:mEntity}
            }); 
       newAjax = null;
    }
    function CreateDivSuc(response)
    {
        if(response == "-1")
        {
            alert("您还没有创建家庭，请先创建一个家庭吧!");
            return; 
        } 
       if(response == "0")
       {
            alert("您还没有登录，请先登录吧!");
            return; 
       } 
       else
       {
            newTooltip.closeTooltip();  //先关闭上一个窗口 增加 yijingxuan 2008/5/26
            newTooltip.showTooltip(mObj,response);  
            document.getElementById("txtComplaintReson").value = mTip; 
       } 
    }
    this.CancelInter = function()
    {
        newTooltip.closeTooltip();
    }  

    this.saveComplaint = function()
    {
        var mContent =  document.getElementById("txtComplaintReson").value;
        if(mContent.Trim() == "")
        {
            alert("请填写举报内容!");
            return;
        }  
        if(mContent.length>=200)
        {
            alert("内容过长!");
            return;
        }
        
        mContent = encodeURI(mContent.Trim());
        var url = encodeURI(document.getElementById("txtComplaintUrl").value);
        
        var mGetUrl = "/Common/Handlers/CommonHandler.ashx?funcname=saveComplaint&resouceUrl="+url+"&reason="+mContent+
            "&resouceId="+encodeURI(mResourceId) + "&module="+mModule+
            "&title="+encodeURI(mTitle)+"&suspecter="+mSuspecter+"&rd="+Math.random();
        
        var newAjax = new myAjax();//
        newAjax.xhrGet({
                   url: mGetUrl,
                   load: SaveInterComplatintSuc                
                }); 
       newAjax = null;
   } 
   function SaveInterComplatintSuc(response)
   {
        var re = response;
        if(re == "1")
        {
            alert("举报成功!");
            //this.CancelInter(); 韩威修改
             newTooltip.closeTooltip();
        } 
       else
       {
            alert("举报失败!");
       }  
   }
}
var addComplaint = new AddComplaint();


/*****************************************************************************/
//检测是否含有特殊字符
function CheckSpecialCode(str)
{	
	var message="";
	var sletters="&<>\"\'";
	var charlength=str.length;
	for (i=0;i<charlength;i++)
	{
		var tempChar=str.charAt(i);
		if(sletters.indexOf(tempChar)!=-1)
		{
		    return false;
		}
	}
	return true;
}

//******************************************************************************
// 截取固定长度子字符串（字节长度，可加后缀)  
function cutString(sSource, iLen, addin)
{   
    if(getStrLen(sSource) <= iLen)
    {   
      return sSource;   
    }   
    addin = addin || "";   

    var str = "";   
    var l = 0;   
    var schar;   
    for(var i=0; schar = sSource.charAt(i); i++)
    {   
      str += schar;   
      l += (schar.match(/[^\x00-\xff]/)   !=   null   ?   2   :   1);   
      if(l >= iLen - addin.length)
      {
          break;
      }
    }
    str += addin;   
    return str;
}
// 截取固定长度子字符串（字节长度，后缀"...") 
function subString(sSource, iLen)
{
    return cutString(sSource, iLen, "...");
}
//*****************************************************************
//得到字符串的真实长度（双字节换算为两个单字节）
function getStrLen(sChars)
{   
   return sChars.replace(/[^\x00-\xff]/g,"xx").length;   
}
function GetQueryValue(sorStr,panStr) 
{ 
	var vStr=""; 
	if (sorStr==null || sorStr=="" || panStr==null || panStr=="") return vStr; 
	//sorStr = sorStr.toLowerCase();
	panStr += "="; 
	var itmp=sorStr.indexOf(panStr); 
	if (itmp<0){return vStr;} 
	sorStr = sorStr.substr(itmp + panStr.length); 
	itmp=sorStr.indexOf("&"); 
	if (itmp<0)
	{
		return sorStr; 
	} 
	else 
    {
		sorStr=sorStr.substr(0,itmp);
		 
		return sorStr;
	} 
	
}

//**********************************************************************************

document.write("<link href='/Js/Css/Login.css' rel='stylesheet' type='text/css' />");
//登录弹出窗口
function loginWindow()
{
    var name = getRemberLastUser();
    var matchs = document.cookie.match("(?:^|;)\\s*autoLogin=([^;]*)");
    var autoLogin = matchs ? matchs[1] : false;
    var str = "";
    str += "<div class=\"popLogin\"  onkeydown=\"if(event.keyCode==13&&userLoginTool)userLoginTool();\">";
    str += "	<table width=\"229\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
    str += "      <tr>";
    str += "        <td colspan=\"2\"><font color=\"#3366CC\">您还未登录，请先登录！</font></td>";
    str += "      </tr>";
    str += "      <tr>";
    str += "        <td width=\"49\" align=\"right\">用户名：</td>";
    str += "        <td width=\"180\" align=\"left\"><input id=\"txtUserLoginName\" type=\"text\"  tabIndex='21' class=\"box\" style=\"width:90px;\" value='" + name + "'/>" ;
    str += "            <input type='checkbox' id='chk_remember' " + (autoLogin ? "checked" : "") + " /><label for='chk_remember'>自动登录</label></td>";
    str += "      </tr>";
    str += "      <tr>";
    str += "        <td align=\"right\">密　码：</td>";
    str += "        <td align=\"left\"><input id=\"txtUserLoginPwd\" type=\"password\" tabIndex='22'  class=\"box\" style=\"width:155px;\"/></td>";
    str += "      </tr>";
    str += "      <tr>";
    str += "        <td align=\"right\">验证码：</td>";
    str += "        <td align=\"left\"><input id=\"txtUserLoginVCode\" type=\"text\" tabIndex='23' class=\"box\" style=\"width:55px;\"/> <img id=\"imgVCode\" src=\"/UserControl/Images/vcode.gif\" height=\"20\" width=\"50\" align=\"absmiddle\"/> <a href=\"javascript:\" onclick=\"getVCode()\">看不清楚</a></td>";
    str += "      </tr>";
    str += "      <tr>";
    str += "        <td>&nbsp;</td>";
    str += "        <td><input type=\"button\" onclick=\"userLoginTool()\" class=\"button\" tabIndex='24' value=\"登录\"/>&nbsp;<input type=\"button\" onclick=\"window.location.href='http://www.800lin.com/HomePage/Register/Registe.aspx'\" class=\"button\" value=\"我要注册\"/></td>";
    str += "      </tr>";
    str += "    </table>";
    str += "</div>";
    
    
    newDialog.showMaskDialog("用户登录",str,340); 
    getVCode();
}

function getVCode()
{
    var newAjax = new myAjax();
    newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=getVCode",
                   load: getVCodeReturn
                });
    newAjax = null;   
}

var gVCode;
function getVCodeReturn(vCode)
{
    document.all.imgVCode.src = "/CommonPages/ShowValidationCodePic.aspx?rid=" + vCode;
    gVCode = vCode;
}

//********************************************************************************************
//登录入口
var _userLogin_dst_url;
var _userLogin_dst_window;
function callBackLoginWindow(/*String?*/ url, /*window Object?*/ window)
{
     if (url)
     {
        _userLogin_dst_url = url;
     }
     if (window)
     {
        _userLogin_dst_window = window;
     }
     if (document.readyState=="complete")
     {  
         loginWindow();
     }
     else 
     {  
        document.onreadystatechange=function()
        {  
            if(document.readyState=="complete")
            {
               loginWindow();
            }
         }
     }  
}


//*******************************************************
//登录
function userLoginTool()
{ 
    var userLoginName = document.getElementById("txtUserLoginName").value.Trim();
    var userLoginPwd  = document.getElementById("txtUserLoginPwd").value.Trim();
    var userLoginVCode  = document.getElementById("txtUserLoginVCode").value.Trim();      
    
    if (userLoginName == "")
    {
        alert("请输入用户名");
        return;
    }
    if (userLoginPwd == "")
    {
        alert("请输入密码");
        return;
    }
    if (userLoginVCode == "")
    {
        alert("请输入验证码");
        return;
    }
    
    if (userLoginVCode != gVCode)
    {
        alert("您输入的验证码不正确，请重新输入");
        getVCode();
        return;
    }
    
    var newAjax = new myAjax();
    newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=userLogin",
                   load: userLoginSuc,                 
                   content:{
                                name:           userLoginName,
                                password:       userLoginPwd,
                                autoLogin:      document.getElementById("chk_remember").checked ? 1 : 0,
                                type:           0
                           }
                });
    newAjax = null;          
}

function userLoginSuc(data)
{
    if (data != "")
    {
        if( data == "-3")
        {
            if(confirm("您的账号还没有被激活，是否现在去激活？"))
            {
                window.location.href="http://www.800lin.com/active_2.aspx?userInfo=" + document.getElementById("txtUserLoginName").value.Trim()  ;
            }
        }
        else
        {
            RemberLastUser(document.getElementById("txtUserLoginName").value.Trim()); // 记住用户名
            var wnd = window;
            if (_userLogin_dst_window)
            {
                wnd = _userLogin_dst_window;
            }
            if (_userLogin_dst_url)
            {
                wnd.location.replace(_userLogin_dst_url);
            }
            else
            {           
                wnd.location.reload();            
            }
        }
    }
    else
    {
        alert("用户名或密码不正确");
    }   
}
//**************************************************
//多选加为友好家庭 ,友好个人
// ids 家庭好友id,用逗号隔开
// content 发消息的内容
// type 110:家庭好友 111 友好个人 
// currentId 当前家庭或则个人id 
// 段建伟 2008-7-16 
function beFriends(ids,content,type,currentId)
{
    var newAjax = new myAjax();
    newAjax.xhrPost({
                   url: "/Common/Handlers/CommonHandler.ashx?funcname=beFriends",
                   load: beFriendsSuc,                 
                   content:{
                                ids             :  ids,
                                content         :  content,
                                type            :  type,
                                currentId       :  currentId 
                           }
                });
      newAjax = null;          
}

function beFriendsSuc(data)
{
    if(data == "1")
    { 
        window.location.reload();
    }
    else
    {
        alert("添加失败");
    }   
}

//****************************添加咨询与建议**********************************//
function CreateAdviceDiv() //add yjx 2008/5/10
{
    var str = "";
    str += "<div id=\"AdviceDivContent\" style=\"width:auto\">";
    str += "<iframe frameborder=\"0\" scrolling=\"no\" id=\"frmAdvice\" src=\"/BackManage/CommunityAdvice/AdviceSet.aspx?\"></iframe>";
    str += "    </div> ";
    
    newDialog.showMaskDialog("咨询与建议",str);    
}

function CloseDiv()
{
    newDialog.closeDialog();
}
//***************************社区二级域名处理*****************//
function getDomain(id)
{     
    var mAjax = new myAjax();

    var re = mAjax.xhrPost
      (
            {
                url:"/Common/Handlers/CommonHandler.ashx?funcname=getDomain",
                content:{id:id},
                sync:true
            }
      );
      mAjax = null;  
      return re;
 }

function getIdByDomain(domain)
{
    var mAjax = new myAjax();

    var re = mAjax.xhrPost
      (
            {
                url:"/Common/Handlers/CommonHandler.ashx?funcname=getIdByDomain",
                content:{key:domain},
                sync:true
            }
      );
      mAjax = null;  
      return re;
} 

//*****模拟ArrayList对象，yijingxuan  begin**********//

//添加对象 ---------------------------------------------------- add(obj);
//移除索引(从0开始)为index的对象 ------------ remove(index);
//过滤掉重复的对象 -----------------------------------  filter();
//返回某一对象的索引(从0开始)  ---------------- getIndex(obj);
//返回该对象的长度 -----------------------------------  getLength();
//转换为字符串输出 -----------------------------------  getString(); 

function ArrayList()
{   
    this._list = new Array(); 
}  

ArrayList.prototype.add = function(obj)
{
    this._list.push(obj);
}  

ArrayList.prototype.remove = function(index)
{
    try
    {
        if((index<0)||(index>this._list.length))
        {
            return;
        }      
        else
        {
            for(var i=0,n=0;i<this._list.length;i++)
            {
                if(this._list[i]!=this._list[index])
                {
                    this._list[n++]=this._list[i]
                }
            }
            this._list.length-=1
        }
    }   
    catch(e)
    {
        alert("remove error!")
    } 
}  

ArrayList.prototype.filter=function()
{
    try
    {
        if(this._list.length<2) 
        {
            return;   
        }
        var arr=new Array();
        for(var i=0;i<this._list.length;i++)
        {
            arr.push(this._list.splice(i--,1));
            for(var j=0;j<this._list.length;j++)
            {
                if(this._list[j]==arr[arr.length-1])
                {
                    this._list.splice(j--,1);
                }
            }
        }
        this._list.length = 0;
        for(var i=0;i<arr.length;i++)
        {
            this._list[i] = arr[i];
        }
    }   
    catch(e)
    {
        alert("filter error!")
    } 
}

ArrayList.prototype.getIndex = function(obj)
{
    for(var i=0;i<this._list.length;i++)
    {
        if(this._list[i] == obj)
        {
            return i;
        }
    }
}  

ArrayList.prototype.getLength = function()
{
    return this._list.length;
}   

ArrayList.prototype.getString = function()
{
    return this._list.join("");
} 
 //*****模拟ArrayList对象，end**********//

//************为标签绑定onclick事件 yijingxuan  begin****************//

function clickEvent()
{
    this.objList = new Array();
    this.funcList = new Array(); 
}

clickEvent.prototype.Check = function()
{
    if (this.objList.length != this.funcList.length)
    {
        alert("Attach出现错误");
        return false;
    } 

    return true;
}
//objId ----- 需要绑定的标签ID
//func ------ 要绑定的事件，不带引号和括号
clickEvent.prototype.Attach = function(objId, func)
{
    this.objList.push(objId);
    this.funcList.push(func); 
}

clickEvent.prototype.Load = function()
{
    if(this.Check())
    {
        for(var i=0;i<this.objList.length;i++)
        {
            document.getElementById(this.objList[i]).onclick = this.funcList[i];
        }
    } 
}

//************为标签元素绑定onclick事件 end****************// 

//***************客户端，图片上传验证对象 yijingxuan   begin *********//

//obj -------- file控件对象
//imgCheck.checkFileType(obj)              检测上传文件类型
//imgCheck.begin(obj)                           检测上传图片高宽
//imgCheck.getSize(obj)                        检测上传文件的大小，如果返回得到的值为-1，请与yijingxuan联系
//没有详细测试，有问题请反馈

var imgCheck = {
        img : null,
        checkFileType : function(obj)
        {
            var str = obj.value;
            var last  = str.substring(str.lastIndexOf("."),str.length);
            if (last.toLowerCase()!=".jpg" && last.toLowerCase()!=".gif")
            {
                 alert("您上传的文件类型为"+last+"，图片必须为.jpg,.gif类型");
                 obj.focus();
                 return false; 
            }
            return true;
        },
        begin : function(obj,gFunc)
        {
            if(this.img)
            {
                this.img.removeNode(true);
            } 
            this.img = document.createElement("img");
            this.img.style.position="absolute";
            this.img.style.visibility="hidden";
            document.body.insertAdjacentElement("beforeend", this.img);
            this.img.src=obj.value;
            eval(gFunc + "("+this.img.offsetHeight+","+this.img.offsetWidth+")");
            //return  this.img.offsetHeight+","+this.img.offsetWidth;
        },
        exception : function()
        {
            alert("image load error");
        },
        getSize : function(obj,gFunc)
        {
            var img = new Image();
            var fileSize;
            img.src   =  obj.value;  
            img.onload   =   function()   
            {   
                 fileSize = this.fileSize;
                 eval(gFunc+"("+fileSize+")");
                 //alert("图片文件大小为："+img.fileSize+"字节");
                 //return img.fileSize;
            }   
        }
   }
   //***************客户端，图片上传验证对象 end *********//
  
function G(obj)
{
	return typeof(obj)=='object'?obj:document.getElementById(obj);
} 

//获取元素位置
function getElementPos(elementId)
 {
    var ua = navigator.userAgent.toLowerCase();
    var isOpera = (ua.indexOf('opera') != -1);
    var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera spoof
    var el;
    if(typeof(elementId) == "object")
    {
        el = elementId;
    } 
    else
    {
        el = document.getElementById(elementId);
    }
    if(el.parentNode === null || el.style.display == 'none') {
       return false;
    }      
    var parent = null;
    var pos = [];     
    var box;     
    if(el.getBoundingClientRect)    //IE
    {         
       box = el.getBoundingClientRect();
       var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
       var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
       return {x:box.left + scrollLeft, y:box.top + scrollTop};
    }else if(document.getBoxObjectFor)    // gecko    
    {
       box = document.getBoxObjectFor(el); 
       var borderLeft = (el.style.borderLeftWidth)?parseInt(el.style.borderLeftWidth):0; 
       var borderTop = (el.style.borderTopWidth)?parseInt(el.style.borderTopWidth):0; 
       pos = [box.x - borderLeft, box.y - borderTop];
    } else    // safari & opera    
    {
       pos = [el.offsetLeft, el.offsetTop]; 
       parent = el.offsetParent;     
       if (parent != el) { 
        while (parent) { 
       pos[0] += parent.offsetLeft; 
       pos[1] += parent.offsetTop; 
       parent = parent.offsetParent;
        } 
       }   
       if (ua.indexOf('opera') != -1 || ( ua.indexOf('safari') != -1 && el.style.position == 'absolute' )) { 
        pos[0] -= document.body.offsetLeft;
        pos[1] -= document.body.offsetTop;         
       }    
    }              
    if (el.parentNode) { 
       parent = el.parentNode;
        } else {
       parent = null;
        }
    while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML') { // account for any scrolled ancestors
       pos[0] -= parent.scrollLeft;
       pos[1] -= parent.scrollTop;
       if (parent.parentNode) {
        parent = parent.parentNode;
       } else {
        parent = null;
       }
    }
    return {x:pos[0], y:pos[1]};
}
function callBackLoginWindowCard(/*String?*/ url, /*window Object?*/ window)
{
     if (url)
     {
        _userLogin_dst_url = url;
     }
     if (window)
     {
        _userLogin_dst_window = window;
     }
     if (document.readyState=="complete")
     {  
         loginWindowCard();
     }
     else 
     {  
        document.onreadystatechange=function()
        {  
            if(document.readyState=="complete")
            {
               loginWindowCard();
            }
         }
     }  
}


//记住用户名
function RemberLastUser(nameStr)
{
    var mAjax = new myAjax();
    var re = mAjax.xhrPost
      (
            {
                url:"/HomePage/Handlers/MasterHandler.ashx?funcName=RemberLastUser",
                content:{name:nameStr.Trim()},
                sync:true
            }
      );
      mAjax = null;  
}

//取消记住用户名，当check取消选中时,textControll 填写用户名的控件ID
function clearLastUser(obj, textControll)
{
    if(!obj.checked)
    {
        var mAjax = new myAjax();
        var re = mAjax.xhrPost
          (
                {
                    url:"/HomePage/Handlers/MasterHandler.ashx?funcName=clearLastUser",
                    sync:true
                }
          );
          mAjax = null;  
         if(textControll) 
            G(textControll).value = "";
    }
}

//获取记住的用户名
function getRemberLastUser()
{
    var mAjax = new myAjax();
    var re = mAjax.xhrPost
      (
            {
                url:"/HomePage/Handlers/MasterHandler.ashx?funcName=getRemberLastUser",
                sync:true
            }
      );
      mAjax = null;
     return re; 
}
/*html元素属性操作*/
/*element 元素对象或ID*/
/*
    ShowE( element, "none" )隐藏元素
    ShowE( element, "" )显示元素
*/
function ShowE( element, isVisible )
{
	if ( typeof( element ) == 'string' )
		element = document.getElementById( element ) ;
	element.style.display = isVisible ;
}
//设置属性
/*attName属性名,attValue属性值*/
function SetAttribute( element, attName, attValue )
{
    if ( typeof( element ) == 'string' )
		element = document.getElementById( element ) ;
	if ( attValue == null || attValue.length == 0 )
		element.removeAttribute( attName, 0 ) ;			
	else
		element.setAttribute( attName, attValue, 0 ) ;	
}
//获取属性值
function GetAttribute( element, attName )
{
    if ( typeof( element ) == 'string' )
		element = document.getElementById( element ) ;

	return element.attributes[attName].value ;
}

/*字符串操作*/
//判断对象是否存在于字符串中，返回布尔
String.prototype.Contains = function( textToCheck )
{
	return ( this.indexOf( textToCheck ) > -1 ) ;
}
/*从字符串中移除某一长度的字符(从0开始)，返回结果*/
String.prototype.Remove = function( start, length )
{
	var s = '' ;

	if ( start > 0 )
		s = this.substring( 0, start ) ;

	if ( start + length < this.length )
		s += this.substring( start + length , this.length ) ;

	return s ;
}

function logOut()
{
    var ajax = new myAjax();
    var objResponse = ajax.xhrGet({
                                       url:     "/HomePage/Handlers/MasterHandler.ashx?funcName=LogOut",
                                       sync:    true
                                 });
    if(objResponse == "1")
    {
        window.location.replace("http://www.800lin.com");
    } 
    objResponse = null;
    ajax = null;
}

/*==数据格式定义==
ImageInfo = {}
    // src:         Url      图片地址
    // href:        Url      可空，链接地址
    // title:       String   可空，标题
    // summary:     Html     可空，摘要
=====*/
/// 图片框
// imgNode          img 节点或它的 id
// imageInfoList    包含图片信息的数组，每项的数据格式见 ImageInfo
// period           可选，图片自动切换的周期，单位为毫秒，默认为 0，即不自动切换
// onChange         可选，切换图片后的事件处理方法
window.ImageFrame = function(/*String|DomNode*/ imgNode, /*ImageInfo[]*/ imageInfoList, /*int?*/ period, /*int?*/ transition, /*Function?*/ onChange)
{
    if (!$(imgNode) || !imageInfoList || !imageInfoList.length)
    {
        __apiError("创建 ImageFrame 对象时具有无效参数!");
        return;
    }
    this._init(imgNode, imageInfoList, period, transition, onChange);
};
window.ImageFrame.prototype = 
{
    imgNode:        null,       // 只读，图片框节点
    imageInfoList:  null,       // 只读，包含图片信息的数组，每项的数据格式见 ImageInfo
    count:          null,       // 只读，图片数
    index:          0,          // 只读，当前显示的图片在 this.imageInfoList 的位置
    period:         0,          // 只读，图片自动切换的周期，单位为毫秒，不自动切换时为 0
    transition:     -1,         // 读写，图片切换效果，-1: 淡入淡出，12: 雪花，23：随机，默认为 -1
    
    _autoChangeHandler: null,   // 自动切换的 handler
    /*==数据格式定义==
    ImageInfo = {}
        // src:         Url      图片地址
        // href:        Url      可空，链接地址
        // title:       String   可空，标题
        // summary:     Html     可空，摘要
    =====*/
    // 初始化
    // imgNode          img 节点或它的 id
    // imageInfoList    包含图片信息的数组，每项的数据格式见 ImageInfo
    // period           可选，图片自动切换的周期，单位为毫秒，默认为 0，即不自动切换
    // transition       可选，图片切换效果，-1: 淡入淡出，12: 雪花，23：随机，默认为 -1
    // onChange         可选，切换图片后的事件处理方法
    _init: function(/*String|DomNode*/ imgNode, /*ImageInfo[]*/ imageInfoList, /*int?*/ period, /*int?*/ transition, /*Function?*/ onChange)
    {
        this.imgNode        = $(imgNode);
        this.imageInfoList  = imageInfoList;
        this.count          = this.imageInfoList.length;
        this.transition     = transition || -1;
        this.imgNode.style.filter = this.transition == -1 ? 
                                        "progid:DXImageTransform.Microsoft.Fade(Overlap=1.00);"
                                            : ("RevealTrans(duration=1,transition=" + this.transition + ")");
        if (onChange)
        {
            this.onChange = onChange;
        }
        // 初始化时将 this.index 置空
        this.index = null;
        if (!imgNode.src) // 如果 img 节点没有初始化
        {
            this.change(0); // 显示第一张图片
        }
        // 开始自动切换
        this.changeToNext = this.changeToNext.hitch(this);
        this.continueAutoChange = this.continueAutoChange.hitch(this);
        this.pauseAutoChange = this.pauseAutoChange.hitch(this);
        this.startAutoChange(period);
    },
    /// 显示指定位置的图片
    // index    图片在 this.imageInfoList 的位置
    change: function(/*int*/ index)
    {
        if (index == this.index
            || index === undefined
            || index < 0
            || index > this.count - 1)
        {
            return;
        }
        this.index = index;
        var imageInfo = this.getImageInfo();
        this.imgNode.src = imageInfo.src;
        this.imgNode.alt = imageInfo.title;
        var parentNode = this.imgNode.parentNode;
        if (parentNode
            && parentNode.tagName
            && parentNode.tagName.toLowerCase() == "a") // 如果父节点是 A 标签
        {
            parentNode.href = imageInfo.href;
            parentNode.title = imageInfo.title;
        }
        // 实现雪花效果
        if (document.all) // 如果浏览器是 IE
        {
            this.imgNode.style.visibility = "hidden";
            this.imgNode.filters[0].Apply();
            this.imgNode.style.visibility = this.imgNode.style.visibility == "visible" ? "hidden" : "visible";
            if (this.transition > 0)
            {
                this.imgNode.filters.revealTrans.transition = this.transition;
            }
            this.imgNode.filters[0].Play();
        }
        // 触发 onChange 事件
        this.onChange(imageInfo);
    },
    /*==数据格式定义==
    ImageInfo = {}
        // src:         Url      图片地址
        // href:        Url      可空，链接地址
        // title:       String   可空，标题
        // summary:     Html     可空，摘要
    =====*/
    /// 获得当前显示的图片信息
    getImageInfo: function()
    {
        return this.imageInfoList[this.index];
    },
    /// 切换到下一张图片
    changeToNext: function()
    {
        var index = this.index + 1;
        this.change(index > (this.count - 1) ? 0 : index);
    },
    /// 开始自动切换图片
    // period       图片自动切换的周期，单位为毫秒
    startAutoChange: function(/*int*/ period)
    {
        if (period && period > 0)
        {
            this.period = period;
            this.continueAutoChange();
            this.imgNode.onmouseover = this.pauseAutoChange;
            this.imgNode.onmouseout = this.continueAutoChange;
        }
    },
    /// 继续自动切换图片
    continueAutoChange: function()
    {
        this._autoChangeHandler = window.setInterval(this.changeToNext, this.period);
    },
    /// 暂停自动切换图片
    pauseAutoChange: function()
    {
        window.clearInterval(this._autoChangeHandler);
    },
    /// 停止自动切换图片
    stopAutoChange: function()
    {
        this.pauseAutoChange();
        this.imgNode.onmouseover = null;
        this.imgNode.onmouseout = null;
    },
    /*==数据格式定义==
    ImageInfo = {}
        // src:         Url      图片地址
        // href:        Url      可空，链接地址
        // title:       String   可空，标题
        // summary:     Html     可空，摘要
    =====*/
    /// 事件，切换图片后触发
    // imageInfo    当前显示的图片信息，数据格式见 ImageInfo
    onChange: function(/*ImageInfo*/ imageInfo) {}
}
