Number.prototype.toFixed = function( d )
{
    return Math.round( this * Math.pow(10, d ) )/ Math.pow(10, d );  
}
function IsEMail(content, required)
{   
    //var match_reg = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/i;
    var match_reg = /^[^@]+@[^@]+\.[^@]+$/i; 
    if (content == "" && required == false) return true;
    
    return match_reg.test(content);
}

function IsInteger(content, required)
{
    var reg = /^\d+$/i;
    
    if (content == "" && required == false) return true;

    return reg.test(content);
}

function IsFloat(content, required)
{
    var reg = /^\d+[.]\d+$/i;
    
    if (content == "" && required == false) return true;
    
    return reg.test(content);
}

function Required(content)
{
    return content.replace(/\s*/i, "") != "";
}

function IsPhone3(content, required)
{
    content = content.replace(/\s*/i, "");
    var reg1 = /^\d{3}-\d{3}-\d{4}$/i;
    var reg2 = /^\d{10}$/i;
    
    if (content == "" && required == false) return true;
    
    return reg1.test(content) || reg2.test(content);  
}

function IsPhone2(content, required)
{
    if (content.replace(/\s*/i, "") == "" && required == false) return true;
    
    content = content.replace(/\s*/i, "");
    if (IsInteger(content, true) && content.length == 10) return true;
   
    return false;   
}

function IsPhone(part1, part2, part3, required)
{    
    var result =    IsInteger(part1, true) && 
                    IsInteger(part2, true) && 
                    IsInteger(part3, true) && 
                    part1.length == 3 && 
                    part2.length == 3 && 
                    part3.length == 4;

    if (result) return true;

    if (!required)
    {
        result =
            !result &&
            !Required(part1) && 
            !Required(part2) && 
            !Required(part3);
    }
    
    return result;
}
