﻿// this file contains functions for handling default input values
function trim(inputString) {
   // Removes leading and trailing spaces from the passed string. Also removes
   // consecutive spaces and replaces it with one space. If something besides
   // a string is passed in (null, custom object, etc.) then return the input.
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   return retValue; // Return the trimmed string back to the user
} // Ends the "trim" function

function resetInput(elementObj,initialText) {
    // This clears and resets styling for text input boxes
	
    // get the field value
    var elementText = trim(elementObj.value);
	
    // if it's blank, reset the styling to grey
    // and set the default text value
    if (elementText == "") {
	    // set the font colour to grey
	    elementObj.style.color = "#BBBBBB";
		
	    // set the value
	    elementObj.value = initialText;
    }
};

function prepareInput(elementObj,initialText) {
    // This clears and prepares styling for text input boxes
    // ready for user input
	
    // get the field value
    var elementText = trim(elementObj.value);
	
    // if it's set to the given default, reset the styling
    // and clear the value for user input
    if (elementText == initialText) {
	    // set the font colour to black
	    elementObj.style.color = "#000000";
		
	    // clear the value
	    elementObj.value = "";
    }
};