var
TextUtil
=
new
Object;
TextUtil.isNotMax = function (oTextArea) {
return oTextArea.value.length != oTextArea.getAttribute( " maxlength " );
};
TextUtil.blockChars = function (oTextbox, oEvent, bBlockPaste) {
oEvent = EventUtil.formatEvent(oEvent);
var sInvalidChars = oTextbox.getAttribute( " invalidchars " );
var sChar = String.fromCharCode(oEvent.charCode);
var bIsValidChar = sInvalidChars.indexOf(sChar) == - 1 ;
if (bBlockPaste) {
return bIsValidChar && ! (oEvent.ctrlKey && sChar == " v " );
} else {
return bIsValidChar || oEvent.ctrlKey;
}
};
TextUtil.allowChars = function (oTextbox, oEvent, bBlockPaste) {
oEvent = EventUtil.formatEvent(oEvent);
var sValidChars = oTextbox.getAttribute( " validchars " );
var sChar = String.fromCharCode(oEvent.charCode);
var bIsValidChar = sValidChars.indexOf(sChar) > - 1 ;
if (bBlockPaste) {
return bIsValidChar && ! (oEvent.ctrlKey && sChar == " v " );
} else {
return bIsValidChar || oEvent.ctrlKey;
}
};
TextUtil.blurBlock = function (oTextbox) {
// get the invalid characters
var sInvalidChars = oTextbox.getAttribute( " invalidchars " );
// split the invalid characters into a character array
var arrInvalidChars = sInvalidChars.split( "" );
// iterate through the characters
for ( var i = 0 ; i < arrInvalidChars.length; i ++ ){
if (oTextbox.value.indexOf(arrInvalidChars[i]) > - 1 ) {
alert( " Character ' " + arrInvalidChars[i] + " ' not allowed. " );
oTextbox.focus();
oTextbox.select();
return ;
}
}
};
TextUtil.blurAllow = function (oTextbox) {
// get the valid characters
var sValidChars = oTextbox.getAttribute( " validchars " );
// split the textbox value string into a character array
var arrTextChars = oTextbox.value.split( "" );
// iterate through the characters
for ( var i = 0 ; i < arrTextChars.length; i ++ ){
if (sValidChars.indexOf(arrTextChars[i]) == - 1 ) {
alert( " Character ' " + arrTextChars[i] + " ' not allowed. " );
oTextbox.focus();
oTextbox.select();
return ;
}
}
};
TextUtil.numericScroll = function (oTextbox, oEvent) {
oEvent = EventUtil.formatEvent(oEvent);
var iValue = oTextbox.value.length == 0 ? 0 :parseInt(oTextbox.value);
var iMax = oTextbox.getAttribute( " max " );
var iMin = oTextbox.getAttribute( " min " );
if (oEvent.keyCode == 38 ) {
if (iMax == null || iValue < iMax) {
oTextbox.value = (iValue + 1 );
}
} else if (oEvent.keyCode == 40 ){
if (iMin == null || iValue > iMin) {
oTextbox.value = (iValue - 1 );
}
}
};
TextUtil.autosuggestMatch = function (sText, arrValues) {
var arrResult = new Array;
if (sText != "" ) {
for ( var i = 0 ; i < arrValues.length; i ++ ) {
if (arrValues[i].indexOf(sText) == 0 ) {
arrResult.push(arrValues[i]);
}
}
}
return arrResult;
};
TextUtil.autosuggest = function (oTextbox, arrValues, sListboxId) {
var oListbox = document.getElementById(sListboxId);
var arrMatches = TextUtil.autosuggestMatch(oTextbox.value, arrValues);
ListUtil.clear(oListbox);
for ( var i = 0 ; i < arrMatches.length; i ++ ) {
ListUtil.add(oListbox, arrMatches[i]);
}
};
TextUtil.isNotMax = function (oTextArea) {
return oTextArea.value.length != oTextArea.getAttribute( " maxlength " );
};
TextUtil.blockChars = function (oTextbox, oEvent, bBlockPaste) {
oEvent = EventUtil.formatEvent(oEvent);
var sInvalidChars = oTextbox.getAttribute( " invalidchars " );
var sChar = String.fromCharCode(oEvent.charCode);
var bIsValidChar = sInvalidChars.indexOf(sChar) == - 1 ;
if (bBlockPaste) {
return bIsValidChar && ! (oEvent.ctrlKey && sChar == " v " );
} else {
return bIsValidChar || oEvent.ctrlKey;
}
};
TextUtil.allowChars = function (oTextbox, oEvent, bBlockPaste) {
oEvent = EventUtil.formatEvent(oEvent);
var sValidChars = oTextbox.getAttribute( " validchars " );
var sChar = String.fromCharCode(oEvent.charCode);
var bIsValidChar = sValidChars.indexOf(sChar) > - 1 ;
if (bBlockPaste) {
return bIsValidChar && ! (oEvent.ctrlKey && sChar == " v " );
} else {
return bIsValidChar || oEvent.ctrlKey;
}
};
TextUtil.blurBlock = function (oTextbox) {
// get the invalid characters
var sInvalidChars = oTextbox.getAttribute( " invalidchars " );
// split the invalid characters into a character array
var arrInvalidChars = sInvalidChars.split( "" );
// iterate through the characters
for ( var i = 0 ; i < arrInvalidChars.length; i ++ ){
if (oTextbox.value.indexOf(arrInvalidChars[i]) > - 1 ) {
alert( " Character ' " + arrInvalidChars[i] + " ' not allowed. " );
oTextbox.focus();
oTextbox.select();
return ;
}
}
};
TextUtil.blurAllow = function (oTextbox) {
// get the valid characters
var sValidChars = oTextbox.getAttribute( " validchars " );
// split the textbox value string into a character array
var arrTextChars = oTextbox.value.split( "" );
// iterate through the characters
for ( var i = 0 ; i < arrTextChars.length; i ++ ){
if (sValidChars.indexOf(arrTextChars[i]) == - 1 ) {
alert( " Character ' " + arrTextChars[i] + " ' not allowed. " );
oTextbox.focus();
oTextbox.select();
return ;
}
}
};
TextUtil.numericScroll = function (oTextbox, oEvent) {
oEvent = EventUtil.formatEvent(oEvent);
var iValue = oTextbox.value.length == 0 ? 0 :parseInt(oTextbox.value);
var iMax = oTextbox.getAttribute( " max " );
var iMin = oTextbox.getAttribute( " min " );
if (oEvent.keyCode == 38 ) {
if (iMax == null || iValue < iMax) {
oTextbox.value = (iValue + 1 );
}
} else if (oEvent.keyCode == 40 ){
if (iMin == null || iValue > iMin) {
oTextbox.value = (iValue - 1 );
}
}
};
TextUtil.autosuggestMatch = function (sText, arrValues) {
var arrResult = new Array;
if (sText != "" ) {
for ( var i = 0 ; i < arrValues.length; i ++ ) {
if (arrValues[i].indexOf(sText) == 0 ) {
arrResult.push(arrValues[i]);
}
}
}
return arrResult;
};
TextUtil.autosuggest = function (oTextbox, arrValues, sListboxId) {
var oListbox = document.getElementById(sListboxId);
var arrMatches = TextUtil.autosuggestMatch(oTextbox.value, arrValues);
ListUtil.clear(oListbox);
for ( var i = 0 ; i < arrMatches.length; i ++ ) {
ListUtil.add(oListbox, arrMatches[i]);
}
};