var MSGTIMER = 5; var MSGSPEED = 20; var MSGOFFSET = 0; var MSGHIDE = 1; // build out the divs, set attributes and call the fade function // function inlineMsg(target,string,autohide,setfocusOn,setfocus) { var msg; var msgcontent; var bodyObj = document.getElementById('jsControl'); setfocus = (setfocus) ? setfocus : '1'; if(!document.getElementById('msg')){ msg = document.createElement('DIV'); msg.id = 'msg'; msgcontent = document.createElement('DIV'); msgcontent.id = 'msgcontent'; bodyObj.appendChild(msg); msg.appendChild(msgcontent); msg.style.filter = 'alpha(opacity=0)'; msg.style.opacity = 0; msg.alpha = 0; }else{ msg = document.getElementById('msg'); msgcontent = document.getElementById('msgcontent'); } msgcontent.innerHTML = string; msg.style.display = 'block'; var msgheight = msg.offsetHeight; var targetdiv = document.getElementById(target); if (document.getElementById(setfocusOn)) { var setfocusOnObj = document.getElementById(setfocusOn); if(setfocus == 1){ setfocusOnObj.focus(); } } var targetheight = targetdiv.offsetHeight; var targetwidth = targetdiv.offsetWidth; var topposition = topPosition(targetdiv) - ((msgheight - targetheight) / 2); var leftposition = leftPosition(targetdiv) + targetwidth + MSGOFFSET; msg.style.top = topposition + 'px'; msg.style.left = leftposition + 'px'; clearInterval(msg.timer); msg.timer = setInterval("fadeMsg(1)", MSGTIMER); if(!autohide){ autohide = MSGHIDE; } // The following line has been commented so that the message doesnt hide after a few secs setTimeout("hideMsg()", (autohide * 1000)); } // hide the form alert // function hideMsg(msg){ var msg = document.getElementById('msg'); if(!msg.timer){ msg.timer = setInterval("fadeMsg(0)", MSGTIMER); } } // face the message box // function fadeMsg(flag){ if(flag == null){ flag = 1; } var msg = document.getElementById('msg'); var value; if(flag == 1){ value = msg.alpha + MSGSPEED; }else{ value = msg.alpha - MSGSPEED; } msg.alpha = value; msg.style.opacity = (value / 100); msg.style.filter = 'alpha(opacity=' + value + ')'; if(value >= 99) { clearInterval(msg.timer); msg.timer = null; }else if(value <= 1){ msg.style.display = "none"; clearInterval(msg.timer); } } // calculate the position of the element in relation to the left of the browser // function leftPosition(target){ var left = 0; if(target.offsetParent){ while(1){ left += target.offsetLeft; if(!target.offsetParent) { break; } target = target.offsetParent; } }else if(target.x){ left += target.x; } return left; } // calculate the position of the element in relation to the top of the browser window // function topPosition(target){ var top = 0; if(target.offsetParent){ while(1) { top += target.offsetTop; if(!target.offsetParent){ break; } target = target.offsetParent; } }else if(target.y){ top += target.y; } return top; } arrow = new Image(); arrow.src = "images/msg_arrow.gif"; function getObjVars(){ this.fieldN = new Array(); // Field name this.fieldI = new Array(); // Field Id this.fieldT = new Array(); // Field type (text, editor, checkbox, radio, select, mselect, date) this.fieldV = new Array(); // Error message to be dispayed this.fieldCF = new Array(); // Check for equal field this.fieldCV = new Array(); // To check if field value is equal to a specific value. Give error if field value <> specified value this.fieldCVE = new Array(); // To check if field value is equal to a specific value. Give error if field value == specified value this.fieldCM = new Array(); // Error message to be displayed after comparing two fields this.fieldFocus = new Array(); // Set focus to this field, always give the ID of the field this.setFocus = new Array(); // whether to set focus to this field, if not specified it takes as 'yes' this.fieldValidate = new Array(); // this is specially used if you want to validate the field this.fieldValidateMsg = new Array(); // message this.fieldSC = new Array(); //check for special character this.fieldSV = new Array(); //message for special character } function validateForm(formN, objvar){ var err = ""; var frmObj = eval("document." + formN); for(var i=0; i= 0) || (objvar.fieldN[i].indexOf("email") >= 0)) { if(!checkEmail(frmElm.value)) { inlineMsg(objvar.fieldI[i],'Please enter valid email address',3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; }else if (objvar.fieldValidate[i]){ inlineMsg(objvar.fieldI[i],objvar.fieldValidateMsg[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } }else if(objvar.fieldSC[i]){ var frmElm = eval("frmObj." + objvar.fieldN[i]); var Val = frmElm.value.length; var DataVal = frmElm.value; var result = true; var iChars = "*|,\":<>[]{}`\';()&$#%"; for (var p = 0; p < Val; p++) { if(iChars.indexOf(DataVal.charAt(p)) != -1){ result = false; } } if (result == false){ inlineMsg(objvar.fieldI[i],objvar.fieldSV[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } }else if(objvar.fieldCV[i]){ if(frmElm.value != objvar.fieldCV[i]){ inlineMsg(objvar.fieldI[i],objvar.fieldCM[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } }else if(objvar.fieldCVE[i]){ if (frmElm.value == objvar.fieldCVE[i]){ var dis_msg = (objvar.fieldCM[i]) ? objvar.fieldCM[i] : objvar.fieldV[i]; inlineMsg(objvar.fieldI[i],dis_msg,3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } }else if (objvar.fieldValidateMsg[i] == 1){ alert('here'); var dis_msg = (objvar.fieldValidateMsg[i]) ? objvar.fieldValidateMsg[i] : objvar.fieldV[i]; inlineMsg(objvar.fieldI[i],dis_msg,3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } } if(objvar.fieldT[i] == "radio"){ var frmElm = eval("frmObj." + objvar.fieldN[i]); var checkedI = false; var tol_options = frmElm.length; for(var j=0; j< frmElm.length; j++) { if(frmElm[j].checked == true) { checkedI = true; } } if(checkedI === false) { inlineMsg(objvar.fieldI[i],objvar.fieldV[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } } if(objvar.fieldT[i] == "checkbox"){ var frmElm = eval("frmObj." + objvar.fieldN[i]); if(frmElm.checked == false) { inlineMsg(objvar.fieldI[i],objvar.fieldV[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } } if(objvar.fieldT[i] == "validate"){ var frmElm = eval("frmObj." + objvar.fieldN[i]); inlineMsg(objvar.fieldI[i],objvar.fieldV[i],3,objvar.fieldFocus[i],objvar.setFocus[i]); return false; } } return true; } function checkEmail(fieldValue){ var chkAt = fieldValue.indexOf("@"); var chkDot= fieldValue.indexOf("."); var chkHack= fieldValue.indexOf("@."); var chkHackA= fieldValue.indexOf(".@"); if((chkAt >= 0) && (chkDot >= 0) && (chkHack == -1) && (chkHackA == -1) ) { return true; } return false; } function check_login(frmName){ var objVar = new getObjVars(); var frmObj = document.login; objVar.fieldI[0] = 'email'; objVar.fieldN[0] = 'email'; objVar.fieldV[0] = "Email field cannot be left empty"; objVar.fieldT[0] = "text"; objVar.fieldI[1] = 'username'; objVar.fieldN[1] = 'username'; objVar.fieldV[1] = "Username field cannot be left empty"; objVar.fieldT[1] = "text"; objVar.fieldSC[1] = "1"; objVar.fieldSV[1] = "No special characters are allowed"; if(validateForm('login',objVar)){ authenticate(frmName); } return false; } function check_register(frmName){ var objVar = new getObjVars(); var frmObj = document.register; objVar.fieldI[0] = 'reg_firstname'; objVar.fieldN[0] = 'reg_firstname'; objVar.fieldV[0] = "First name field cannot be left empty"; objVar.fieldT[0] = "text"; objVar.fieldI[1] = 'reg_lastname'; objVar.fieldN[1] = 'reg_lastname'; objVar.fieldV[1] = "Last name field cannot be left empty"; objVar.fieldT[1] = "text"; objVar.fieldI[2] = 'reg_email'; objVar.fieldN[2] = 'reg_email'; objVar.fieldV[2] = "Email field cannot be left empty"; objVar.fieldT[2] = "text"; objVar.fieldI[3] = 'reg_email_confirm'; objVar.fieldN[3] = 'reg_email_confirm'; objVar.fieldV[3] = "Re-Email field cannot be left empty"; objVar.fieldT[3] = "text"; objVar.fieldCF[3] = 'reg_email'; objVar.fieldCM[3] = 'Emails do not match'; objVar.fieldI[4] = 'reg_username'; objVar.fieldN[4] = 'reg_username'; objVar.fieldV[4] = "Username field cannot be left empty"; objVar.fieldT[4] = "text"; objVar.fieldSC[4] = "1"; objVar.fieldSV[4] = "No special characters are allowed"; objVar.fieldI[5] = 'reg_mem_no'; objVar.fieldN[5] = 'reg_mem_no'; objVar.fieldV[5] = "Mem. No. field cannot be left empty"; objVar.fieldT[5] = "text"; if(validateForm('register',objVar)){ register(frmName); } return false; } function check_adminlogin(frmName){ var objVarad = new getObjVars(); var frmObj = document.admin; objVarad.fieldI[0] = 'admin_password'; objVarad.fieldN[0] = 'admin_password'; objVarad.fieldV[0] = "Email field cannot be left empty"; objVarad.fieldT[0] = "text"; objVarad.fieldI[1] = 'admin_username'; objVarad.fieldN[1] = 'admin_username'; objVarad.fieldV[1] = "Username field cannot be left empty"; objVarad.fieldT[1] = "text"; objVarad.fieldSC[1] = "1"; objVarad.fieldSV[1] = "No special characters are allowed"; if(validateForm('admin',objVarad)){ adminAuthenticate(frmName); } return false; }