function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var isWebKit = navigator.userAgent.indexOf('AppleWebKit/') > -1;
  if (strTag =='*' && typeof(objContElm.getElementsByClassName) == 'function' && !isWebKit) // WebKit used to have bugged getElementsByClassName 
      return objContElm.getElementsByClassName(strClass);
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
    var arrObjClass = objColl[i].className.split(' ');
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
          arr.push(objColl[i]);
          break comparisonLoop;
        }
      }
    }
  }
  return arr;
}

function setInputFieldType(field, type, setFocus) {
    var isIE = !!(window.attachEvent && !window.opera);
    
    if (isIE) {
        var newField = document.createElement('INPUT');
        var properties = ['id', 'name', 'value', 'className', 'tabIndex', 'onclick', 'onmousedown', 'onmouseup', 'onmousemove',
                          'onkeydown', 'onkeyup', 'onkeypress', 'onblur'];
        newField.type = type;
        for (var i in properties) {
            newField[properties[i]] = field[properties[i]];
        }
        
        field.parentNode.replaceChild(newField, field);
        
        if (setFocus) {
            setTimeout(function() {newField.focus(); newField.onfocus = field.onfocus;}, 50);
        } else {
            newField.onfocus = field.onfocus;
        }
        return newField;
    } else {
        field.type = type;
        return field;
    }
}
	
function textToPass(defaultValue, defaultValue_1, defaultValue_2, defaultValue_3, defaultValue_4)
{	
    var elems = getElementsByClassName('text-to-pass');
    for (var i = 0; i < elems.length; i++) {	
        if ((elems[i].value == defaultValue) || (elems[i].value == defaultValue_1) || (elems[i].value == defaultValue_2) || (elems[i].value == defaultValue_3) || (elems[i].value == defaultValue_4)) {
            setInputFieldType(elems[i], 'text');
        }
    }
}

function fieldRemoveDefault(field, defaultValue)
{	
    if (field.value == defaultValue) 
	{
        field.value = "";
        if (field.className.match(/\btext-to-pass\b/)) {
            setInputFieldType(field, 'password', true);
        }
    } 
}

function fieldSetDefault(field, defaultValue)
{	
    if (field.value == "") 
	{
        field.value = defaultValue;
        if (field.className.match(/\btext-to-pass\b/)) {
            setInputFieldType(field, 'text');
        }
    }
}