//validate function for string
function isString(str){   
        
        if (str == "")     
           return false;      
          
        // Return false if characters are not a-z, A-Z, or a space.   
        for (var i = 0; i < str.length; i++){      
                var ch = str.substring(i, i + 1);      
                if (((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) && (ch != ' ')&& (ch !="-")&&(ch !="."))
                   return false;         
                      
        }   
        return true;   
}
//validate function for AlphaNumeric.
function isAlphaNumeric(str){   
        
        if (str == "")     
           return false;      
          
        // Return false if characters are not a-z, A-Z, or a space.   
        for (var i = 0; i < str.length; i++){      
                var ch = str.substring(i, i + 1);      
                if (((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) && (ch < "0" || "9" < ch) && (ch != ' ')&& (ch !="-")&&(ch !=".")&&(ch != ")")&&(ch != "(")&&(ch != "_"))
                   return false;         
                      
        }   
        return true;   
}

//validate function for number
function isNumber(str){   
                  
        // Return false if characters are not digits '0-9'.   
        for (var i = 0; i < str.length; i++){      
                var ch = str.substring(i, i + 1);      
                if ((ch < "0" || "9" < ch)&&(ch !="-")&&(ch !=".")&&(ch !=" "))
                    return false;         
        }  
        
        return true;      

}
//validate function for email
function isEmail(str){   
           
        // Return false if e-mail field does not contain a '@' and '.' and if it is blank.   
        if (str.indexOf ('@',0) == -1 || str.indexOf ('.',0) == -1)
           return false;      
        else if((str.indexOf ('@',0) > str.indexOf ('.',0)) || (str.indexOf ('.',0) == (str.indexOf ('@',0) + 1)) || str.indexOf ('@',0) == 0 ||str.indexOf ('.',0)==0)
		{
			return false
		}   
        else { 
               return true;      
        }   
}







//This function removes left & right blank spaces.
function Trim(strSource){
       var strTrimmed="";
       
       for(var i=0; i<strSource.length; i++)
         {
            
           if (strSource.substring(i,i+1) != " ")
             
              strTrimmed +=strSource.substring(i,i+1);
     
          }
          return strTrimmed;
}          
//Checks for empty data.
function IsEmpty(s)
  {
    for(var i=0; i<s.length; i++)
     {
       if (s[i] != " ")
          return 0
      }
     return 1 
   } 

function validate(obj)
{
		
       if (obj.name=="Phone"){
			if  (isNumber(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";
		}		
	   else if (obj.name=="HomePhone"){
			if  (isNumber(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";
		}		
		else if (obj.name=="FirstName"){
			if  (isString(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";
		}
		else if (obj.name=="LastName"){
			if  (isString(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";
		}		
		else if (obj.name=="EmailAddress"){
			if( isEmail(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";	
		}
		else if (obj.name=="Designation"){
			if(isAlphaNumeric(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";	
		}			
				
		else if (obj.name=="Client Name"){
			if(isString(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";	
		}			
		else if (obj.name=="Address"){
			 if (obj.value.length > 250)
				return "Please enter maximum 250 characters for address" + "\n";	
		}
		else if (obj.name=="SkillSet"){
			 if (obj.value.length > 200)
				return "Please enter maximum 300 characters." + "\n";	
		}
		
			else if (obj.name=="ClientReference"){
			if(isAlphaNumeric(obj.value) == false)
				return obj.name.toUpperCase().replace("_", " ") + "\n";	
		}	
		return "" 
		
}	
  
function create_newline()
{
	var temp;
	//alert("function");
	temp = document.formjobsadd.Job_Description.value;
	document.formjobsadd.Job_Description.value = "";
	document.formjobsadd.Job_Description.value = temp + "<li></li>";
}
function create_break()
{
	var temp;
	//alert("function");
	temp = document.formjobsadd.Job_Description.value;
	document.formjobsadd.Job_Description.value = "";
	document.formjobsadd.Job_Description.value = temp + "<p>";
}

 function bold(textarea_obj)
 {
	//alert(textarea_obj.value)
	var txt = get_selection();
	//alert(txt)
	var existing_txt = get_textarea(textarea_obj);
	var string_count = count_strings(existing_txt,txt);
	
	if (txt == "" || string_count > 1) {
		append_textarea(textarea_obj,"<b></b>");
	} else if (txt != null) {
		//var new_txt = existing_txt.replace(txt,"<b>"+txt+"</b>");
		var new_txt = replace(existing_txt,txt,"<b>"+txt+"</b>");
		set_textarea(textarea_obj,new_txt);
	}
}

function get_selection()
{
	//alert(" in get_selection section")
	if (document.getSelection)
	{
		var txt = document.getSelection();
	}
	else if (document.selection && document.selection.createRange)
	{
		var range = document.selection.createRange();
		var txt = range.text;
	} else
	{
		var txt = "Sorry, this is not supported with your browser.";
	}
	return(txt);
}

function get_textarea(textarea_obj)
 {
	//alert("get_textarea")
	return(textarea_obj.value);
}

function count_strings(string, word)
{
	//alert("count_strings")
	var substrings = string.split(word);
	return substrings.length - 1;
}

function append_textarea(textarea_obj,txt)
{
	//alert("append_textarea")
	textarea_obj.value += txt;
}

function set_textarea(textarea_obj,txt)
{
	//alert("set_textarea")
	textarea_obj.value = txt;
}

function replace(string,text,by) {
    
    var strLength = string.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return string;

    var i = string.indexOf(text);
    if ((!i) && (text != string.substring(0,txtLength))) return string;
    if (i == -1) return string;

    var newstr = string.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(string.substring(i+txtLength,strLength),text,by);

    return newstr;
}