﻿function setRadioValue(formName,val,to) {
    document.forms[formName].elements[to].value = val.value;
}

function setRadioValueStudent(formName,val,to,Id,bool) {
    document.forms[formName].elements[to].value = val.value;
   


}

function setSelectValue(formName,val,to) {
    document.forms[formName].elements[to].value = val.options[val.selectedIndex].value;
}

function setCheckboxValue(formName,val,to) {
    var cbValue = val.checked ? "yes" : "no";
    document.forms[formName].elements[to].value = cbValue;
}

function setDDSelected(formName,theVar,theDropDown) {
    var vTheVar = document.forms[formName].elements[theVar].value;
    if(vTheVar && vTheVar != "undefined") {
        var dTheDropDown = document.forms[formName].elements[theDropDown];
        var ddLength = dTheDropDown.options.length;
        var curOption = "";
        dTheDropDown.selectedIndex = 0;
        for(i = 0; i <= ddLength; i ++) {
            curOption = dTheDropDown.options[i].value;
            if(curOption == vTheVar) {
                dTheDropDown.selectedIndex = i;
                break;
            }
        }
    }
}

function updateDateField(formName,destVar,datePrefix) {
    var curDay = document.forms[formName].elements[datePrefix + "_day"].value;
    var curMonth = document.forms[formName].elements[datePrefix + "_month"].value;
    var curYear = document.forms[formName].elements[datePrefix + "_year"].value;
    document.forms[formName].elements[destVar].value = curDay + "/" + curMonth + "/" + curYear;
}
    

function buildTildaList(formName,formObj,destVar) {
    var curOutput = document.forms[formName].elements[destVar].value;
    var outputSplit = curOutput.split("~");
    var dataArray = new Array();
    for(i = 0; i <= outputSplit.length - 2; i ++) {
        dataArray[outputSplit[i]] = "yes";
    }
    dataArray["other"] = outputSplit[outputSplit.length - 1];
    var varName = formObj.name;
    var objType = formObj.type;
    if(objType == "checkbox") {
        var isPresent = dataArray[varName] ? true : false;
        if(isPresent) {
            var curValue = dataArray[varName];
            var newValue = formObj.checked ? "yes" : "no";
            dataArray[varName] = newValue;
        } else {
            dataArray[varName] = "yes";
        }
    } else if(objType == "text") {
        dataArray["other"] = formObj.value;
    }
    var outputString = "";
    for(thing in dataArray) {
        if(thing != "other") {
            if(dataArray[thing] == "yes") {
                outputString += thing + "~";
            }
        }
    }
    outputString += dataArray["other"];
    document.forms[formName].elements[destVar].value = outputString;    
}

function textFieldValid(formName,fieldName,fieldType) {
    var curValue = document[formName].elements[fieldName].value;
    if(fieldType == "text") {
        if(curValue == "") {
            return false;
        } else {
            return true;
        }
    } else if (fieldType == "number") {
        if(curValue != (curValue * 1) || !curValue) {
            return false;
        } else {
            return true;
        }
    } else if (fieldType == "email") {
        if(curValue.indexOf("@") == -1 
            || curValue.indexOf("@") == 0
            || curValue.indexOf("@") == curValue.length - 1
            || curValue.indexOf(".") == -1
            || curValue.indexOf(".") == 0
            || curValue.lastIndexOf(".") == curValue.length - 1
            || curValue.lastIndexOf(".") < (curValue.indexOf("@") + 2)) {
            return false;
        } else {
            return true;
        }
    } else if(fieldType == "date") {
        if(curValue == "//") {
            return false;
        } else if(curValue.indexOf("/") == 0) {
            return false;
        } else if(curValue.lastIndexOf("/") == curValue.length - 1) {
            return false;
        } else if(curValue.lastIndexOf("/") < (curValue.indexOf("/") + 2)) {
            return false;
        } else {
            return true;
        }
    } else if(fieldType == "mobilephone") {
        if(curValue == "") {
            return false;
        } else if(curValue.indexOf(" ") != -1 || curValue.indexOf("+") != -1) {
            return false;
        } else {
            return true;
        }
   } else if(fieldType == "telephone") {
        if(curValue == "") {
            return false;
        } else if(curValue.indexOf(" ") != -1 || curValue.indexOf("+") != -1) {
            return false;
        } else {
            return true;
        }
   } else if(fieldType == "ref2_Telephone") {
        if(curValue != (curValue * 1) || !curValue) {
            return false;
        }  else if(curValue.indexOf(" ")!= -1) {
            return false;
        } else {
            return true;
        }
   } else if(fieldType == "permanentTelephone") {
        if(curValue.indexOf(" ") != -1) {
            return false;
        } else {
            return true;
        }
   }			
}