Thursday, February 28, 2008

Javascripts for daily use

/**************************************************************

Mask: Returns a Boolean if the specified Expression match

the specified Mask.

Parameters:

Expression = String to validate

Mask = String that can contain the following

options:

9 = only numbers (0..9)

X = only letters (a..z or A..Z)

* = Anything...

Example: alert(Mask("(954) 572-4419", "(999) 999-9999")); => TRUE

alert(Mask("33351-820", "99999-9999")); => FALSE

alert(Mask("This is a test", "XXXXXX")); => FALSE

alert(Mask("This 34 a test", "**************")); => TRUE

Returns: Boolean

***************************************************************/

function Mask(Expression, Mask)

{

Mask = Mask.toUpperCase();

LenStr = Expression.length;

LenMsk = Mask.length;

if ((LenStr == 0) || (LenMsk == 0))

return (false);

if (LenStr != LenMsk)

return (false);

TempString = '';

for (Count = 0; Count <= Expression.length; Count++)

{

StrChar = Expression.substring(Count, Count + 1);

MskChar = Mask.substring(Count, Count + 1);

if (MskChar == '9')

{

if(!IsNumber(StrChar))

return (false);

}

else if (MskChar == 'X')

{

if(!IsChar(StrChar))

return (false);

}

else if (MskChar == '*')

{

if(!IsAlphanumeric(StrChar))

return (false);

}

else

{

if (MskChar != StrChar)

return (false);

}

}

return (true);

}

/**************************************************************

Replace: Returns a string in which a specified substring has

been replaced with another substring a specified

number of times.

Parameters:

Expression = String expression containing substring to

replace

Find = Substring being searched for.

Replace = Replacement substring.

Returns: String

***************************************************************/

function Replace(Expression, Find, Replace)

{

var temp = Expression;

var a = 0;

for (var i = 0; i <>

{

a = temp.indexOf(Find);

if (a == -1)

break

else

temp = temp.substring(0, a) + Replace + temp.substring((a + Find.length));

}

return temp;

}

function formatCurrency(num)

{

num = num.toString().replace(/\$|\,/g,'');

if(isNaN(num))

num = "0";

sign=(num == (num = Math.abs(num)));

num = Math.floor(num*100+0.50000000001);

cents = num%100;

num = Math.floor(num/100).toString();

if(cents<10)

cents = "0" + cents;

for (var i = 0; i <>

num = num.substring(0,num.length-(4*i+3))+','+

num.substring(num.length-(4*i+3));

return (((sign)?'':'-') + '$' + num + '.' + cents);

}

function IsNumber(Expression)

{

Expression = Expression.toLowerCase();

RefString = "0123456789.-";

if (Expression.length <>

return (false);

for (var i = 0; i <>

{

var ch = Expression.substr(i, 1)

var a = RefString.indexOf(ch, 0)

if (a == -1)

return (false);

}

return(true);

}

/**************************************************************

InStr: Returns a Long specifying the position of the first

occurrence of one string within another. Is String1

or String2 are null, false is returned.

Parameters:

String1 = String expression being searched.

String2 = String expression sought

Returns: Integer

***************************************************************/

function InStr(String1, String2)

{

var a = 0;

if (String1 == null || String2 == null)

return (false);

String1 = String1.toLowerCase();

String2 = String2.toLowerCase();

a = String2.indexOf(String1);

if (a == -1)

return 0;

else

return a + 1;

}

function ConvertBytesToMegaBytes(bytes)

{

return Math.round(bytes/1048576*100000)/100000;

}

function trim(s)

{

var l=0; var r=s.length -1;

while(l < style="color:maroon;">' ')

{ l++; }

while(r > l && s[r] == ' ')

{ r-=1; }

return s.substring(l, r+1);

}

No comments: