﻿/*

Field validation for html controls

*/

//Utility
function isStringEmpty(_str)
{
    return ((_str == "") ? true : false);
}


//Validators

function singlevalue_submit(_value)
{
    return _value;        
}


function twovalues_submit(_value1, _value2)
{

    return (_value1 && _value2);        
}

function signup_submit(_firstname, _lastname, _city, _province, _pass, _repass, _email)
{  
    if(_firstname && _lastname && _city && _province && _pass && _repass && _email)
        return true;
    else 
        return false;    
}



function albumcreation_submit(_albumname)
{
    if(_albumname)
        return true;
    else
        return false;
}

function HasString(_strValue)
{
    if (YAHOO.lang.isValue(_strValue) && !isStringEmpty(_strValue))
        return true;   
    else        
        return false;  
}

function isValueEqual(_vL, _vR)
{
    return ((_vL == _vR)? true : false);    
}

function emailValidator(_ctrlId, _divId, _errMsg)
{
    if(YAHOO.lang.isValue(YAHOO.util.Dom.get(_ctrlId)))
    {
        var emailAddress = YAHOO.util.Dom.get(_ctrlId).value;
        
        if(echeck(YAHOO.lang.trim(emailAddress)))
        {
            clientMessage(_divId, "hidden", "&nbsp;");    
            return true;  
        }
        else
        {
            clientMessage(_divId, "visible", _errMsg);
            return false;
        }                   
    }
    else
    {
        clientMessage(_divId, "visible", _errMsg);
        return false;
    }
}


function emailValidatorD(_ctrlId, _divId, _errMsg)
{
    if(YAHOO.lang.isValue(YAHOO.util.Dom.get(_ctrlId)))
    {
        var emailAddress = YAHOO.util.Dom.get(_ctrlId).value;
        
        if(echeck(YAHOO.lang.trim(emailAddress)))
        {
            clientMessageD(_divId, "none", "");    
            
            return true;  
        }
        else
        {
            clientMessageD(_divId, "block", _errMsg);
            return false;
        }                   
    }
    else
    {
        clientMessageD(_divId, "block", _errMsg);
        return false;
    }
}



function isPasswordMatch(_passId, _retypeId, _divId, _errMsg)
{
    if( YAHOO.lang.isValue(YAHOO.util.Dom.get(_passId)) &&
        YAHOO.lang.isValue(YAHOO.util.Dom.get(_retypeId)))
        {
            if(YAHOO.util.Dom.get(_passId).value == YAHOO.util.Dom.get(_retypeId).value)
            {
                clientMessage(_divId, "hidden", "&nbsp;");    
                return true;
            }
            else
            {
                clientMessage(_divId, "visible", _errMsg);
                return false;
            }
        }
        else
        {
            clientMessage(_divId, "visible", _errMsg);
            return false;
        }
}


function textBoxValidatorA(_ctrlId, _divId, _errMsg)
{    
    var reslt = false;     
    
    reslt = HasString(YAHOO.lang.trim(YAHOO.util.Dom.get(_ctrlId).value));     
    
    if(reslt)              
      clientMessage(_divId, "hidden", "&nbsp;");           
    else
      clientMessage(_divId, "visible", _errMsg);
          
    return reslt;
}


function textBoxValidatorD(_ctrlId, _divId, _errMsg)
{    
    var reslt = false;     
    
    reslt = HasString(YAHOO.lang.trim(YAHOO.util.Dom.get(_ctrlId).value));     
    
    if(reslt)              
      clientMessageD(_divId, "none", "");           
    else
      clientMessageD(_divId, "block", _errMsg);
          
    return reslt;
}

function albumcreation_validator(_parentctrl, _ctrlId, _divId, _errMsg)
{    
    if(YAHOO.util.Dom.get(_parentctrl).checked)    
        return textBoxValidatorA(_ctrlId,_divId, _errMsg);    
    else
        return true;
}


function clientMessage(_divId, _visiblity, _errMsg)
{
    if(YAHOO.lang.isValue(YAHOO.util.Dom.get(_divId)))
        {           
           YAHOO.util.Dom.get(_divId).style.visibility = _visiblity;  
           YAHOO.util.Dom.get(_divId).innerHTML = _errMsg;       
        } 
}


function clientMessageD(_divId, _display, _errMsg)
{
    if(YAHOO.lang.isValue(YAHOO.util.Dom.get(_divId)))
        {
           YAHOO.util.Dom.get(_divId).innerHTML = _errMsg;
           YAHOO.util.Dom.get(_divId).style.display = _display;   
                         
        } 
        
    return;
}



function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		  // alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		  // alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		 //   alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		  //  alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		  //  alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		  //  alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		   // alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}
