/* WEEBO : CONTENT MADE EASY                                                                          */                                                                        
/* -------------------------------------------------------------------------------------------------- */
/* Original development began in 2001, where a need came about to develop a content management system */
/* that catered for business and not only graphic designers. Weebo has come a long way and this new   */
/* content management system was derived to cater for the small, medium and large enterprise websites */
/* This code is the intellectual property of Gilbert Martin II, anyone attempting to copy, alter or   */
/* modify this code is committing patent fraud. Beyond this you are a miserable human being if you    */
/* are trying to copy somebody else/*s work, because you are not good enough to do your own.          */
/* -------------------------------------------------------------------------------------------------- */
/* Copyright (C) 2000 - 2020 . Gilbert Martin II (www.gilbertmartin.co.za) . All Rights Reserved      */
/* Visit www.gilbertmartin.co.za or www.weebo.co.za for more information regarding this development   */
/* -------------------------------------------------------------------------------------------------- */

/* MASK INPUTS */
var dFilterStep
function dFilterStrip (dFilterTemp, dFilterMask)
{
dFilterMask = replace(dFilterMask,'#','');
for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
{
dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
return dFilterTemp;
}
function dFilterMax (dFilterMask)
{
dFilterTemp = dFilterMask;
for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
}
}
return dFilterTemp.length;
}
function dFilter (key, textbox, dFilterMask)
{
dFilterNum = dFilterStrip(textbox.value, dFilterMask);
if (key==9)
{
return true;
}
else if (key==8&&dFilterNum.length!=0)
{
dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
}
else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
{
if(key>95&&key<106){key-=48;}
dFilterNum=dFilterNum+String.fromCharCode(key);
}
var dFilterFinal='';
for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)=='#')
{
if (dFilterNum.length!=0)
{
dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
dFilterNum = dFilterNum.substring(1,dFilterNum.length);
}
else
{
dFilterFinal = dFilterFinal + "";
}
}
else if (dFilterMask.charAt(dFilterStep)!='#')
{
if (dFilterNum.length!=0){
dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
}
}
}
textbox.value = dFilterFinal;
return false;
}
function replace(fullString,text,by) {
var strLength = fullString.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return fullString;
var i = fullString.indexOf(text);
if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
if (i == -1) return fullString;
var newstr = fullString.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
return newstr;
}
function numeralsOnly(evt,field) {
evt = (evt) ? evt : event;
var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : 
((evt.which) ? evt.which : 0));
if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46) {
return false;
}
if (charCode == 46) 
{
var str = field.value;
if (str.indexOf(".") == -1) {return true;}
else {return false;}
}
else {return true;}
}
