
// /////////////////////////////////////////////////////////////////////////////////////////////
//
//      SCRIPT NAME:	entertainment.js
//    SCRIPT AUTHOR:	Mark Vega
//      SCRIPT DATE:	June 2008
//  SCRIPT LOCATION:	helios://target1s3/Web2/htdocs/business/scripts/
//  SCRIPT FUNCTION:	Javascript for Entertainment Reimbursement form (entertainment.php).	
//     SCRIPT NOTES:	           
// OTHER FILES USED:	
//    LAST MODIFIED:	
//	                       
// /////////////////////////////////////////////////////////////////////////////////////////////
//
// ERROR CODES
//

// tr1 attribute values array
var tr1attvalues = new Array();
tr1attvalues[0] = "tr_frequency";
// tr1 attribute names array
var tr1attnames = new Array();
tr1attnames[0] = "id";
// td1a attribute values array
var td1aattvalues = new Array();
td1aattvalues[0] = "td_frequencya";
td1aattvalues[1] = "td_subheader";
// td1a attribute names array
var td1aattnames = new Array();
td1aattnames[0] = "id";
td1aattnames[1] = "class";
// td1b attribute values array
var td1battvalues = new Array();
td1battvalues[0] = "td_frequencyb";
td1battvalues[1] = "right";
// td1b attribute names array
var td1battnames = new Array();
td1battnames[0] = "id";
td1battnames[1] = "align";
// tr2 attribute values array
var tr2attvalues = new Array();
tr2attvalues[0] = "tr_other";
// tr2 attribute names array
var tr2attnames = new Array();
tr2attnames[0] = "id";
// td2a attribute values array
var td2aattvalues = new Array();
td2aattvalues[0] = "td_othera";
td2aattvalues[1] = "td_subheader";
// td2a attribute names array
var td2aattnames = new Array();
td2aattnames[0] = "id";
td2aattnames[1] = "class";
// td2b attribute values array
var td2battvalues = new Array();
td2battvalues[0] = "td_otherb";
td2battvalues[1] = "right";
// td2b attribute names array
var td2battnames = new Array();
td2battnames[0] = "id";
td2battnames[1] = "align";
// initialize empty tbody
var tbody;

//
// FUNCTION TO REMOVE EVENT DESCRIPTION TABLE ROW
//
function removeTR(thisobj) {
// get parent, child objects
var parentobj = document.getElementById("t_event").getElementsByTagName("tbody")[0];
var childobj = document.getElementById(thisobj);
// remove element
parentobj.removeChild(childobj);
return;
}

//
// FUNCTION TO FORMAT NUMBER STRING TO TWO DECIMAL PLACES
//
function numToCurrency(elem) {
// get current field value
var str = elem.value;
// if string is number
if (!isNaN(str)) {
// if string does not contain decimal point
if (!str.match(/[.]/)) {
// set default decimal value to two places
elem.value = elem.value + ".00";
// if string does contain decimal point
} else if (str.indexOf('.') == 0) {
// add leading zero to value
elem.value = "0" + elem.value;
}
// if string is not a number
} else {
// alert warning and set field value to default
alert("This field only accepts numeric values.");
elem.value = "0.00";
}
return;
}

//
// FUNCTION TO ROUND NUMBER TO TWO DECIMAL PLACES
//
function round(num) {
var b = Math.round(num * 100) / 100;
var s1 = new String(b);
var ex = 0;
var d = 0;
var e = 0;

while (ex == 0) {
if (e > 0 && d > e) {
s1 = s1.substr(0,e);
ex = 1;
}
if (s1.substr(d,1) == ".") {
e = d + 3;
}
if (d > s1.length) {
if (e == 0) {
s1 = s1 + ".00";
}
if (d == e) {
s1 = s1 + "0";
}
ex = 1;
}
d++;
}
return(s1);
}

//
// FUNCTION TO VALIDATE RADIO BUTTON SELECTION
//
function radioValidate(radioButtons) {
radioOption = false;
for (j = 0; j < radioButtons.length; j++) {
if (radioButtons[j].checked) {
radioOption = true;
}
}
if (radioOption == false) {
return "";
} else {
return radioOption;
}
}

//
// FUNCTION TO VALIDATE FORM BEFORE SUBMISSION
//
function formCheck() {
// initialize variables
var elem = '';
var validate = true;

// check each form field for values
if (!document.getElementById('f_EventDate').value) {
document.getElementById('f_EventDate');
elem = document.getElementById('f_EventDate');
message = "Please enter an event date and resubmit form.";
validate = false;
} else if (!document.getElementById('f_PayTo').value) {
elem = document.getElementById('f_PayTo');
message = "Please enter name of person or vendor to reimburse and resubmit form.";
validate = false;
} else if (!document.getElementById('f_AcctFund').value) {
elem = document.getElementById('f_AcctFund');
message = "Please enter account number to charge and resubmit form.";
validate = false;
} else if (!radioValidate(document.getElementsByName('EventType'))) {
elem = document.getElementsByName('EventType')[0];
message = "Please select an event type and resubmit form.";
validate = false;
} else if ((document.getElementsByName('EventType')[0].checked) && ((document.getElementById('f_Frequency').selectedIndex == 0) || (document.getElementById('f_Frequency').selectedIndex == 1) || (document.getElementById('f_Frequency').selectedIndex == 8))) {
elem = document.getElementById('f_Frequency');
message = "Please enter event frequency and resubmit form.";
validate = false;
} else if ((document.getElementsByName('EventType')[0].checked) && (document.getElementById('f_Frequency').selectedIndex == 7) && (!document.getElementById('f_Other').value)) {
elem = document.getElementById('f_Other');
message = "Please specify other event frequency and resubmit form.";
validate = false;
} else if (!document.getElementById('f_Purpose').value) {
elem = document.getElementById('f_Purpose');
message = "Please enter event business purpose and resubmit form.";
validate = false;
} else if (!document.getElementById('f_TotalReimbursement').value) {
elem = document.getElementById('f_TotalReimbursement');
message = "Please enter the total reimbursement requested and resubmit form.";
validate = false;
} else if (!document.getElementById('f_CorporateCard').value) {
elem = document.getElementById('f_CorporateCard');
message = "Please enter amount to reimburse to corporate card and resubmit form.";
validate = false;
} else if (!document.getElementById('f_PersonalFunds').value) {
elem = document.getElementById('f_PersonalFunds');
message = "Please enter amount to reimburse to personal funds and resubmit form.";
validate = false;
} else if (!document.getElementById('f_NumberAttendees').value) {
elem = document.getElementById('f_NumberAttendees');
message = "Please enter the number of attendees and resubmit form.";
validate = false;
} else if (!document.getElementById('f_TotalCost').value) {
elem = document.getElementById('f_TotalCost');
message = "Please enter the total cost and resubmit form.";
validate = false;
} else if (!document.getElementById('f_CostPerPerson').value) {
elem = document.getElementById('f_PersonalFunds');
message = "Please enter the cost per person and resubmit form.";
validate = false;
}
// if form does not validate
if (validate == false) {
// move cursor to invalid field, alert warning
elem.focus();
alert(message);
}
return validate;
}