﻿Prototype.Register = Class.create();
Prototype.Register.prototype = {
  initialize: function(input,defaultTips,info,vFun) {
    this.input   = $(input);
    this.defaultTips = defaultTips;
    this.info    = $(info);                    
	this.validate = vFun.bind(this);					
	
	this.info.innerHTML = this.defaultTips;
  	this.info.className = "regMouseOut";
	
    this.input.onfocus = this.getFocus.bind(this);
  	this.input.onblur =  this.lostFocus.bind(this);       
  },
  
  getFocus: function(event){
  	this.info.innerHTML = this.defaultTips;
	this.info.className = "regMouseOver";
  },        
  
  lostFocus: function(event){
  	if(fTrim($F(this.input)).length==0){  		
  		this.info.innerHTML = this.defaultTips;
  		this.info.className = "regMouseOut";
	}else {this.doCheck();}
  },  

  doCheck: function(){
		return this.validate($F(this.input),this.info);	
  }        
}  
   
Prototype.PwdRegister = Class.create();
Prototype.PwdRegister.prototype = {
  initialize: function(usrname,pwd,repwd,defaultTips,info,vFun) {    
    this.usrname   = $(usrname);
    this.pwd = $(pwd);
    this.repwd = $(repwd);
    this.defaultTips = defaultTips;
    this.info     = $(info);                        
	this.validate = vFun.bind(this);	
	
	this.info.innerHTML = this.defaultTips;
	this.info.className = "regMouseOut";
						
    this.pwd.onfocus = this.getFocus.bind(this);
  	this.pwd.onblur =  this.lostFocus.bind(this);
  	this.repwd.onfocus = this.getFocus.bind(this);      		     
  	this.repwd.onblur = this.lostFocus.bind(this);
  },
  
  getFocus: function(event){
  	this.info.innerHTML = this.defaultTips;
	this.info.className = "regMouseOver";
  },        
  
  lostFocus: function(event){
  	if(fTrim($F(this.pwd)).length==0&&fTrim($F(this.repwd)).length==0){  		
  		this.info.innerHTML = this.defaultTips;
  		this.info.className = "regMouseOut";
	}else{
	   if(this.doCheck()==true){	   
	   	this.info.className= "regOK"
	   }else{	    
	   	this.info.className= "regNoOK";
	   }
	}  
  },
  doCheck: function(){
	return this.validate($F(this.usrname),$F(this.pwd),$F(this.repwd),this.info);	
  }        
}

Prototype.PhoneRegister = Class.create();
Prototype.PhoneRegister.prototype = {
  initialize: function(n1,n2,n3,defaultTips,info,vFun) {    
    this.n1 = $(n1);
    this.n2 = $(n2);
    this.n3 = $(n3);
    this.defaultTips = defaultTips;
    this.info     = $(info);                        
	this.validate = vFun.bind(this);	
	
	this.info.innerHTML = this.defaultTips;
	this.info.className = "regMouseOut";
						
    this.n1.onfocus = this.getFocus.bind(this);
  	this.n1.onblur =  this.lostFocus.bind(this);
    this.n2.onfocus = this.getFocus.bind(this);
  	this.n2.onblur =  this.lostFocus.bind(this);
    this.n3.onfocus = this.getFocus.bind(this);
  	this.n3.onblur =  this.lostFocus.bind(this);
  	
  	this.n1.style.cssText ="color:#000";
  	this.n2.style.cssText ="color:#000";
  	this.n3.style.cssText ="color:#000";
  },
  
  getFocus: function(event){
  	this.info.innerHTML = this.defaultTips;
	this.info.className = "regMouseOver";
  },        
  
  lostFocus: function(event){
  	if(fTrim($F(this.n1)).length==0&&fTrim($F(this.n2)).length==0&&fTrim($F(this.n3)).length==0){  		
  		this.info.innerHTML = this.defaultTips;
  		this.info.className = "regMouseOut";
	}else{
	   if(this.doCheck()==true){	   
	   	this.info.className= "regOK"
	   }else{	    
	   	this.info.className= "regNoOK";
	   }
	}  
  },
  doCheck: function(){
	return this.validate($F(this.n1),$F(this.n2),$F(this.n3),this.info);	
  }        
}

function fTrim(str)
 {
	 str=str.replace(/(^\s*)|(\s*$)/g, ""); 
	 return str;
 }
 function Check_In_Str(sV,sR)
 {
  
		var sTmp;
		if(sV.length==0)
		{ return (false);}
		
		for (var i=0; i < sV.length; i++){
			sTmp= sV.substring (i, i+1);
			if (sR.indexOf(sTmp, 0)>-1) {return (true);}
		}
		
		return (false);
 }  
  function fIsNumber (sV,sR)
 {
		var sTmp;
		if(sV.length==0)
		{ return (false);}
		
		for (var i=0; i < sV.length; i++){
			sTmp= sV.substring (i, i+1);
			if (sR.indexOf (sTmp, 0)==-1) {return (false);}
		}
		
		return (true);
 }        
