﻿var $URL="http://www.99114.com";
var $URL_M="http://Manager.99114.com";
var $URL_F="http://free.99114.com";

function isEmail(val)
{
  return val.match(/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/) ? true : false;
}
function isMobile(val)
{
return val.match(/^\d{11,12}$/) ? true : false;
}
function isTelphone(val)
{
return val.match(/^(\d{3}-|\d{4}-)?\d{7,8}$/) ? true : false;
}
function guestBook(name){

/**/
this.urlPara="";
this.sAction="";
this.sUrl = "";
this.nameMsg ="";
this.tempMsg ="留言";
this.errorName= "请输入您的姓名，其值不能为空，且长度在2-20个字符之间！";
/*根据msgtype自动处理*/

this.name=name;        //ID
this.divShowList=null; //展示留言的列表
this.divShowListCount=0;//展示留言的列表当前的数量
this.divShowInnerHTML= null;
this.temp="";
this.txtName=null;   //留言人名称
this.txtEmail=null;  //Email
this.txtTelphone=null; //电话
this.txtMsg=null;      //留言内容
this.txtCode=null;     //验证码输入框
this.btnCode=null;     //验证码刷新按钮
this.imgCode=null;

this.txtDefaultMsg= "您好！如果您对我们的产品感兴趣，请留言！";
this.autoFillDefault=true; //是否自动填充
this.validateUrl = "/ValidateCode.aspx";
this.btnSave=null;

this.memberIdTo=111;
this.memberIdFrom=111;
this.memberName="游客";
this.memberEmail="";
this.memberLinkTel="";
this.siteID = 0 ;


//msgType=0对公司留言  msgType=1对资讯评论 msgType=10对站点留言 
this.msgType=0;
obj = this;
}

guestBook.prototype.validate=function(){

this.urlPara="";
    if(this.memberIdTo==0)
    {
        alert("对象为空！！");
        return false;
    }

    if(this.memberIdTo == this.memberIdFrom)
    {
        alert("呵呵不好意思，您不能给自己留言！");
        return false;
    }
    
    this.temp = this.divShowInnerHTML;
    
    if(this.txtMsg)
    {   
        if( trim(this.txtMsg.value)=="" || this.txtMsg.value.length<5 || this.txtMsg.value.length >128 || trim(this.txtMsg.value)==this.txtDefaultMsg)
        {
            alert("请输入您要"+this.tempMsg+"的内容，其值不能为空，且长度在5-128个字符之间！");
            this.txtMsg.select();
            return false;
        }
        
        var reg =new RegExp("{" +this.txtMsg.id +"}","gi");

        this.setHTML(reg,this.txtMsg.value);
        
        this.urlPara += "&msg=" + encodeURI(this.txtMsg.value);
    }
    if(this.txtName)
    {
        if( trim(this.txtName.value)=="" || this.txtName.value.length<2 || this.txtName.value.length >20)
        {
            alert(this.errorName);
            this.txtName.select();
            return false;
        }
        var reg =new RegExp("{" +this.txtName.id +"}","gi");
        
        this.setHTML(reg,this.txtName.value);
        
        this.urlPara += "&name=" + encodeURI(this.txtName.value);
    }
    
    if(this.txtEmail)
    {
        if (trim(this.txtEmail.value)=="" || !isEmail(this.txtEmail.value))
        {
            alert("请输入您的Email，其格式不正确！");
            this.txtEmail.select();
            return false;
        }
        var reg =new RegExp("{" +this.txtEmail.id +"}","gi");
        this.setHTML(reg,this.txtEmail.value);
        
        this.urlPara += "&email=" + encodeURI(this.txtEmail.value);
    }
    
    if(this.txtTelphone)
    {
        if (trim(this.txtTelphone.value)=="" || !( isMobile(this.txtTelphone.value) || isTelphone(this.txtTelphone.value) ) )
        {
            alert("请输入您的联系电话，其格式不正确！");
            this.txtTelphone.select();
            return false;
        }
        
        var reg =new RegExp("{" +this.txtTelphone.id +"}","gi");
        this.setHTML(reg,this.txtTelphone.value);
        
        this.urlPara += "&tel=" + encodeURI(this.txtTelphone.value);
    }
    
    if(this.txtCode)
    {
        if (trim(this.txtCode.value)=="" || this.txtCode.value.length<4 || this.txtCode.value.length >10)
        {
            alert("请输入验证码，其内容不能为空，且长度在4-10位之间");
            this.txtCode.select();
            return false;
        }
        
        this.urlPara += "&code=" + encodeURI(this.txtCode.value);
    }
    
    

    this.urlPara += "&FromMemberID=" + this.memberIdFrom;
    this.urlPara += "&ToMemberID=" + this.memberIdTo;
    this.urlPara += "&SiteID=" + this.siteID;
    this.urlPara += "&msgType=" + this.msgType;
    var date = new Date();
    var reg =new RegExp("{now}","gi");
    this.setHTML(reg, date.toLocaleDateString().replace("年","-").replace("月","-").replace("日",""));

    this.save();
    return false;
}

guestBook.prototype.init=function(){
    this.setMsgType();
    this.fillDefaultMsg();
    this.refreshValidateCode();
    this.initEvent();
    if(!this.isLinkjQuery())
        document.write("<script src=\""+$URL_M+"/js/jQuery/jQuery.js\"></script>");
}

guestBook.prototype.isLinkjQuery=function(){
    var bResult = false;
    var scripts = document.getElementsByTagName("script");
    for(var i=0 ; i < scripts.length ; i++)
    {
		    if(scripts[i] && scripts[i].src.toLowerCase().indexOf("jquery")>=0)
		    {
                bResult =true;
			    break;
		    }
    }
    return bResult;
}

guestBook.prototype.setMsgType=function(){
    switch(this.msgType)
    {
        case 1:
            this.tempMsg = "评论";
            this.sAction="SaveMsg";
            this.sUrl = "/Ajax/GuestBook.ashx";
            this.errorName= "请输入您的昵称，其值不能为空，且长度在2-20个字符之间！";
           
            break;
        default:
            this.tempMsg = "留言";
            this.sAction = "SaveMsg";
            this.sUrl = "/Ajax/GuestBook.ashx";
            this.errorName= "请输入您的姓名，其值不能为空，且长度在2-20个字符之间！";
            break;
    }   
}


guestBook.prototype.initEvent=function(){
    if(this.imgCode)
        this.imgCode.onclick = function(){obj.refreshValidateCode();}
    if(this.btnCode)
        this.btnCode.onclick = function(){obj.refreshValidateCode();}
    if(this.btnSave)
    this.btnSave.onclick = function(){return obj.validate();}
        if(this.btnSave)
    this.btnSave.onclick = function(){return obj.validate();}
    if(this.txtMsg)
    {
        this.txtMsg.onfocus = function(){
            this.value =  this.value.replace(obj.txtDefaultMsg,"");
            this.select();
        }
        this.txtMsg.onblur = function(){
            if( trim(this.value)=="")
            {
               this.value =  obj.txtDefaultMsg;
            }
        }
    }
    
}

guestBook.prototype.fillDefaultMsg=function(){
    //先填充默认内容
    if(this.txtMsg && this.autoFillDefault)
    {
            if( this.txtMsg.value)
                this.txtMsg.value=this.txtDefaultMsg;
            if( this.txtMsg.innerHTML)
                this.txtMsg.innerHTML=this.txtDefaultMsg;
    }
    
    if(this.txtName)
        this.txtName.value= this.memberName;
    
    if(this.txtEmail)
        this.txtEmail.value= this.memberEmail;
    
    if(this.txtTelphone)
        this.txtTelphone.value=this.memberLinkTel;
}

guestBook.prototype.refreshValidateCode=function(){

    if(this.txtCode && this.imgCode)
    {
        this.imgCode.src=this.validateUrl + "?time="+Math.random();
    }
}

guestBook.prototype.save=function(){

        jQuery.ajax({
            url:obj.sUrl,
            type: 'get',
            data: "action="+ obj.sAction + obj.urlPara +"&time="+parseInt(Math.random() * 1000),
            timeout: 5000,
            error: function(){
               obj.urlPara="";
            },
            beforeSend:function(){
         
            },
           success: function(result){
              obj.urlPara="";
                
                      if(parseInt(result)==-1)
                      {
                        alert("验证码错误，请重新输入！");
                        obj.refreshValidateCode();
                        obj.resetCode();
                      }
                      else if(parseInt(result)>=1)
                      {
                        alert( obj.tempMsg +"成功谢谢您的合作！");
                        obj.refreshValidateCode();
                        obj.resetCode();
                        obj.resetMsg();
                        obj.addNewItem();
                      }
                      else
                      {
                      
                      alert("未知异常，请联系管理员！");
                       obj.resetCode();
                      }

                 }
                });
}

guestBook.prototype.saveSucceed=function(){
    if(this.callback)
        eval(this.callback);
    this.addNewItem();
}

guestBook.prototype.addNewItem=function(){
    if(this.divShowList && this.divShowInnerHTML)
    {
        if( msg.divShowListCount==0)
            this.divShowList.innerHTML = this.temp ;
        else
            this.divShowList.innerHTML = this.temp + this.divShowList.innerHTML;
        this.divShowListCount++;
    }
}

guestBook.prototype.setHTML=function(regexp,value){

    if(this.divShowList && this.divShowInnerHTML)
    {
        this.temp =  this.temp.replace(regexp,value);
    }
    
}

guestBook.prototype.resetCode=function(){

    if(this.txtCode)
    {
        this.txtCode.value="";
        this.txtCode.select();
    }

}


guestBook.prototype.resetMsg=function()
{
    if(this.txtMsg)
    {   
        this.txtMsg.value="";
        this.txtMsg.select();
    }
}

