function makeTextBox(ID,enabled,type,mask,size,maxLength,style){ var output = validateFormat(arguments,false,"STRING",0,40,null,"plain"); for(var index=0; index < output.length; index++) arguments[index] = output[index]; if(typeof(field[ID])=="undefined") outString = ""; else if(arguments[1]) return (""); else return "
 " + field[ID] + " 
"; } function makeTextArea(ID,enabled,type,rows,cols,style){ var output = validateFormat(arguments,false,"LITERALSTRING",5,40,"plain"); for(var index=0; index < output.length; index++) arguments[index] = output[index]; if(typeof(field[ID])=="undefined") outString = ""; else if(arguments[1]) return (""); else return "
" + field[ID] + " 
"; } function makeNumberbox(ID,enabled,type,min,max,increment,multiple,size,style,formatString) { var output = validateFormat(arguments,false,"LONG",0,0,0,1,40,"plain",""); for(var index=0; index < output.length; index++) arguments[index] = output[index]; if(typeof(field[ID])=="undefined") outString = ""; else { if(typeof(field[ID]) != "object" || !field[ID].length) field[ID] = new Array(field[ID],-1); field[ID][1] = getNumberBoxIndex(ID,field[ID][0]); var format = parseFormatString(arguments[9]); var outString = ""; outString += "
":" id=\"" + arguments[8] + "\" width=\"100%\" nowrap> " + (format[0]?format[0]:"") + (getNumberBoxIndex(ID,field[ID][0])!=-1?envelopeWin.fieldStrings[ID][getNumberBoxIndex(ID,field[ID][0])][0]:Math.floor(field[ID][0]/arguments[6])) + (format[1]?format[1]:"")) + " "; if(arguments[5]) { outString += ""; outString += ""; outString += ""; } if(envelopeWin.fieldStrings[ID].length > 0) { outString += ""; outString += ""; outString += ""; } outString += "
"; outString += ""; outString += ""; outString += ""; outString += "
" + (arguments[1]?"\"Increase\"":"") + "
" + (arguments[1]?"\"Decrease\"":"") + "
"; outString += ""; outString += ""; outString += ""; outString += "
" + (arguments[1]?"0?"up.gif":"upgrey.gif") + "\" alt=\"Previous List Element\" vspace=\"1\" border=\"0\">":"") + "
" + (arguments[1]?"\"Next":"") + "
"; return outString; } } function validateNumberKeystroke(ID,source,event) { var keyCode = event.which; var key = String.fromCharCode(keyCode); if(keyCode==10 || keyCode==13) { validateNumber(ID,source); return false; } else return (key=='-' || (key>='0' && key<='9')); } function validateNumber(ID,source,min,max,mult) { var value = parseInt(source.value); if(isNaN(value)) { var index=0; for(;index < envelopeWin.fieldStrings[ID].length && source.value.toUpperCase() != envelopeWin.fieldStrings[ID][index][0].toUpperCase(); index++); if(index < envelopeWin.fieldStrings[ID].length) { field[ID] = new Array(parseInt(envelopeWin.fieldStrings[ID][index][1]),index); source.value = envelopeWin.fieldStrings[ID][index][0]; } else { field[ID][0] = min; source.value = Math.floor(min/mult); if((field[ID][1] = getNumberBoxIndex(ID,min)) != -1) source.value = envelopeWin.fieldStrings[ID][field[ID][1]][0]; } } else { value *= mult; if(min < max && value < min) value = min; else if(min < max && value > max) value = max; field[ID][0] = value; source.value = Math.floor(value/mult); if((field[ID][1] = getNumberBoxIndex(ID,value)) != -1) source.value = envelopeWin.fieldStrings[ID][field[ID][1]][0]; } resetNumberBoxButtons(ID,min,max); } function doNumberOffset(ID,offset,min,max,mult) { if(min max) field[ID][0] = max; else field[ID][0] += offset; field[ID][1] = getNumberBoxIndex(ID,field[ID][0]); srcwin.messageForm.elements["Input:" + ID].value = (field[ID][1]==-1?Math.floor(field[ID][0]/mult):envelopeWin.fieldStrings[ID][field[ID][1]][0]); resetNumberBoxButtons(ID,min,max); } function getNumberBoxIndex(ID,value) { var index=0; for(;index < envelopeWin.fieldStrings[ID].length && value != envelopeWin.fieldStrings[ID][index][1] && value != envelopeWin.fieldStrings[ID][index][0]; index++); return (index min && envelopeWin.document.images["Number:" + ID + "=MINUS"].src != "/Images/minus.gif") envelopeWin.document.images["Number:" + ID + "=MINUS"].src = "/Images/minus.gif"; } if(envelopeWin.fieldStrings[ID].length > 0) { if(field[ID][1] < 1 && envelopeWin.document.images["Number:" + ID + "=UP"].src != "/Images/upgrey.gif") envelopeWin.document.images["Number:" + ID + "=UP"].src = "/Images/upgrey.gif"; else if(field[ID][1] > 0 && envelopeWin.document.images["Number:" + ID + "=UP"].src != "/Images/up.gif") envelopeWin.document.images["Number:" + ID + "=UP"].src = "/Images/up.gif"; if(field[ID][1] >= (envelopeWin.fieldStrings[ID].length-1) && envelopeWin.document.images["Number:" + ID + "=DOWN"].src != "/Images/downgrey.gif") envelopeWin.document.images["Number:" + ID + "=DOWN"].src = "/Images/downgrey.gif"; else if(field[ID][1] < (envelopeWin.fieldStrings[ID].length-1) && envelopeWin.document.images["Number:" + ID + "=DOWN"].src != "/Images/down.gif") envelopeWin.document.images["Number:" + ID + "=DOWN"].src = "/Images/down.gif"; } } function numberListChange(ID,type,offset,min,max) { if(((field[ID][1] + offset) >= 0) && ((field[ID][1] + offset) < envelopeWin.fieldStrings[ID].length)) { field[ID][1] += offset; srcwin.messageForm.elements["Input:" + ID].value = envelopeWin.fieldStrings[ID][field[ID][1]][0]; srcwin.messageForm.elements["FieldID:" + ID + "=" + type].value = envelopeWin.fieldStrings[ID][field[ID][1]][1]; field[ID][0] = parseInt(envelopeWin.fieldStrings[ID][field[ID][1]][1]); resetNumberBoxButtons(ID,min,max); } } function parseFormatString(formatString) { var index=0; var format = new Array(""); var formatLength = 0; formatString = formatString.toUpperCase(); while((index=formatString.indexOf("%")) != -1) if(index==formatString.length-1) { format[formatLength] += formatString.substring(0,index); formatString = ""; } else if(formatString.charAt(index+1)=="%") { format[formatlength] += formatString.substring(0,index+2); formatString = formatString.substring(index+2,formatString.length); } else { var endIndex = index + 1; while((formatString.charAt(endIndex) < 'A' || formatString.charAt(endIndex) > 'Z') && endIndex < formatString.length) endIndex++; if(endIndex == formatString.length) { format[formatLength] += formatString.substring(0,index); formatString = ""; } else if(endIndex==formatString.length-1) { format[formatlength] += formatString.substring(0,index); formatString = ""; } else { format[formatLength++] += formatString.substring(0,index); formatString = formatString.substring(endIndex + 1,formatString.length); } } return format; } function makeMarquee(ID,enabled,type,size,direction,behaviour,delay) { var output = validateFormat(arguments,false,null,250,1,0,85); return ("" + field[ID] + ""); }