function checkForm(form1,extra){ var stype=''; var slength=''; var svalue=''; var sname=''; var nme=''; var ctype=''; var smand='2'; var disctype=''; var salphnum=''; var snospaces=''; var sdischar=''; var sisemail=''; if (form1.joinTBS) { if (form1.joinTBS.value!=""){ var tjs=eval('form1.'+form1.joinTBS.value); for(var count = 0; count < tjs.options.length; count++) { tjs.options[count].selected = true; } } } for (var i=0; i < form1.length; i++){ stype = form1[i].type; sname = form1[i].name; svalue = form1[i].value; ctype = form1[i].getAttribute('ctype'); slength=form1[i].getAttribute('length'); smand=form1[i].getAttribute('mand'); salphnum=form1[i].getAttribute('alphnum'); snospaces=form1[i].getAttribute('nospaces'); sdischar=''; sdischar=form1[i].getAttribute('dischar'); sisemail=''; sisemail=form1[i].getAttribute('isemail'); nme=form1[i].getAttribute('nme'); if (nme==''){nme='-1';} if (ctype=='num'){disctype='Number'}else if (ctype=='date'){disctype='Date'}else {disctype='Text'} if ((form1[i].value.length > 0 ) && (ctype=='num') && (! isNumeric(svalue))){ alert('You cannot insert Text into this field'); form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } else if ((form1[i].value.length > 0 ) && (ctype=='date') && (! isValidDate(svalue))){ alert('The Date is not valid!'); form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } else if ((stype.toLowerCase()=='radio')||(stype.toLowerCase()=='checkbox')) { if ((smand=='1')&&(isVisible(form1[i]))){ var tsR=eval('form1.'+form1[i].name) var chkF=false; for (var ch=0; ch < tsR.length; ch++){ if (tsR[ch].checked){ chkF=true; break; } } if (! chkF) { alert('Please, you must click a choice!'); form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } } else if ((stype.toLowerCase()=='select-one')||(stype.toLowerCase()=='select-multiple')) { if ((smand=='1')&&(isVisible(form1[i]))){ var chkF=false; if (form1[i].selectedIndex > -1){chkF=true;} if (! chkF) { alert('Please, you must select a choice!'); form1[i].focus(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } } else if ((stype.toLowerCase()=='text')||(stype.toLowerCase()=='textarea')) { if ((smand=='1')&&(isVisible(form1[i]))){ if (svalue.length < 1) { alert('Please, insert '+disctype+' into the selected field'); form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } if (salphnum=='1'){ if ((isAlphaNumeric(form1[i].value)) && (ctype=='text') && (form1[i].value.length > 0)) { var snans=confirm("Please, use only alphanumeric characters!\n\nDo you want to remove the non AlphaNumeric characters automatically?"); if (snans){form1[i].value=form1[i].value.replace(/[#$%^&*()-+\\'"΄¨,%@!|\]\[:;=]/g, "");} form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } if (snospaces=='1'){ if (form1[i].value.match(/\s/g)) { var snans=confirm("Please, do not use [spaces] into this field!\n\nDo you want to remove the [spaces] automatically?"); if (snans){form1[i].value=form1[i].value.replace(/\s*/g, "");} form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } if ((sdischar!='')&&(sdischar!=null)){ if ((disableChar(form1[i].value,sdischar)) && (ctype=='text') && (form1[i].value.length > 0)) { var snans=confirm("Character [ "+sdischar+" ] is now allowed into this field!\n\nDo you want to remove the character [ "+sdischar+" ] automatically?"); if (snans){form1[i].value=eval('form1[i].value.replace(/['+sdischar+']/g, "");')} form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } if (sisemail=='1'){ if (! echeck(form1[i].value)) { alert('The email is wrong!'); form1[i].focus(); form1[i].select(); return false; } } if (svalue.length > parseInt(slength) ) { alert('You cannot insert more than '+slength+' characters!'); form1[i].focus(); form1[i].select(); if (extra==1){ var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='fterror';} } return false; } } var tid=eval('document.getElementById("'+nme+'")'); if (tid) {tid.className='ftdright';} } return true; } function isVisible(fid){ try { fid.focus(); } catch (error) { return false; } return true; } function isAlphaNumeric(pStr){ pattern = /[#$%^&*()-+\\'"΄¨,%@!|\]\[:;=]/; return pattern.exec(pStr); } function disableChar(pStr,char){ var pattern=eval('/['+char+']/'); return pattern.exec(pStr); } function isNumeric(pTest) { if (pTest == (pTest-0)) { return true;} return false; } function isValidDate(dateStr) { var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; var datePat2 = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})\s+(\d{1,2})(\:|-)(\d{1,2})(\:|-)(\d{1,2})$/; var datePat3 = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})\s+(\d{1,2})(\:|-)(\d{1,2})$/; var matchArray = dateStr.match(datePat); var matchArray2 = dateStr.match(datePat2); var matchArray3 = dateStr.match(datePat3); if ((matchArray == null) && (matchArray2 == null)&& (matchArray3 == null)) { return false; } if (matchArray != null){ month = matchArray[3]; day = matchArray[1]; year = matchArray[4]; }else if (matchArray2 != null){ month = matchArray2[3]; day = matchArray2[1]; year = matchArray2[4]; }else if (matchArray3 != null){ month = matchArray3[3]; day = matchArray3[1]; year = matchArray3[4]; } if (month < 1 || month > 12) { return false; } if (day < 1 || day > 31) { return false; } if ((month==4 || month==6 || month==9 || month==11) && day==31) { return false; } if (month == 2) { var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); if (day>29 || (day==29 && !isleap)) { return false; } } if (matchArray2 != null) { var hour = matchArray2[5]; var mins = matchArray2[7]; var secs = matchArray2[9]; if ((! isNumeric(hour)) || (hour <0 ) || (hour >24 )){ return false; }else if ((! isNumeric(mins)) || (mins <0 ) || (mins >59 )){ return false; }else if ((! isNumeric(secs)) || (secs <0 ) || (secs >59 )){ return false; } }else if (matchArray3 != null) { var hour = matchArray3[5]; var mins = matchArray3[7]; if ((! isNumeric(hour)) || (hour <0 ) || (hour >24 )){ return false; }else if ((! isNumeric(mins)) || (mins <0 ) || (mins >59 )){ return false; } } return true; } function echeck(str) { var at="@" var dot="." var lat=str.indexOf(at) var lstr=str.length var ldot=str.indexOf(dot) if (str.indexOf(at)==-1){ return false } if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){ return false } if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){ return false } if (str.indexOf(at,(lat+1))!=-1){ return false } if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){ return false } if (str.indexOf(dot,(lat+2))==-1){ return false } if (str.indexOf(" ")!=-1){ return false } return true } function getConfirm(url){ var ans=confirm('Are you sure?'); if (ans){ document.location.href=url; }else{ return ; } } function LTrim(str) { var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(0)) != -1) { var j=0, i = s.length; while (j < i && whitespace.indexOf(s.charAt(j)) != -1) j++; s = s.substring(j, i); } return s; } function RTrim(str) { var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(s.length-1)) != -1) { var i = s.length - 1; while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1) i--; s = s.substring(0, i+1); } return s; } function Trim(str) { return RTrim(LTrim(str)); } // Add the selected items in the parent by calling method of parent function addSelectedItemsToParent(destListS) { var destList = eval('document.BForm1.'+destListS); addToParentList(document.BForm1.destList); //window.close(); } // Fill the selcted item list with the items already present in parent. function fillInitialDestList(destListS) { if (document.BForm1){ //var destList = document.BForm1.destList; var destList = eval('document.BForm1.'+destListS); } //for (var count = destList.options.length- 1; count >= destList.options.length; count--) { //destList.options[count] = null; //} } // Add the selected items from the source to destination list function addSrcToDestList(destListS) { var destList = eval('document.BForm1.'+destListS); //destList = document.BForm1.destList; srcList = document.BForm1.srcList; var len = destList.length; //for(var i = 0; i < srcList.length; i++) { for(var i = (srcList.length-1); i >= 0; i--) { if ((srcList.options[i] != null) && (srcList.options[i].selected)) { //Check if this value already exist in the destList or not //if not then add it otherwise do not add it. var found = false; for(var count = 0; count < len; count++) { if (destList.options[count] != null) { if (srcList.options[i].text == destList.options[count].text) { found = true; break; } } } if (found != true) { destList.options[len] = new Option(srcList.options[i].text); destList.options[len].value = srcList.options[i].value; srcList.options[i] = null; len++; } } } } function addAllSrcToDestList(destListS){ var destList = eval('document.BForm1.'+destListS); //destList = document.BForm1.destList; srcList = document.BForm1.srcList; var len = destList.length; //for(var i = 0; i < srcList.length; i++) { for(var i = (srcList.length-1); i >= 0; i--) { //if ((srcList.options[i] != null) && (srcList.options[i].selected)) { //Check if this value already exist in the destList or not //if not then add it otherwise do not add it. //var found = false; //for(var count = 0; count < len; count++) { // if (destList.options[count] != null) { // if (srcList.options[i].text == destList.options[count].text) { // found = true; //break; // } // } //} destList.options[len] = new Option(srcList.options[i].text); destList.options[len].value = srcList.options[i].value; srcList.options[i] = null; len++; // } } } function deleteAllFromDestList(destListS){ var destList = eval('document.BForm1.'+destListS); //var destList = document.BForm1.destList; var srcList = document.BForm1.srcList; var len = destList.options.length; //for(var i = 0; i < srcList.length; i++) { for(var i = (len-1); i >= 0; i--) { //if ((srcList.options[i] != null) && (srcList.options[i].selected)) { //Check if this value already exist in the destList or not //if not then add it otherwise do not add it. //var found = false; //for(var count = 0; count < len; count++) { // if (destList.options[count] != null) { // if (srcList.options[i].text == destList.options[count].text) { // found = true; //break; // } // } //} if (destList.options[i] != null) { srcList.options[srcList.options.length] = new Option(destList.options[i].text); srcList.options[srcList.options.length-1].value = destList.options[i].value; destList.options[i] = null; len++; } } } // Deletes from the destination list. function deleteFromDestList(destListS) { var destList = eval('document.BForm1.'+destListS); var srcList = document.BForm1.srcList; var len = destList.options.length; for(var i = (len-1); i >= 0; i--) { var found = false; for(var count = 0; count < len; count++) { if (srcList.options[count] != null) { if (destList.options[i].text == srcList.options[count].text) { found = true; break; } } } //if (found == true) { //srcList.options[len] =new Option(destList.options[i].text); //srcList.options[i] = null; //len++; // } if ((destList.options[i] != null) && (destList.options[i].selected == true)) { if (found != true) { srcList.options[srcList.options.length] = new Option(destList.options[i].text); srcList.options[srcList.options.length-1].value = destList.options[i].value; destList.options[i] = null; } else{destList.options[i] = null;} } } //if (destList.options.length == 0) { //alert('Please, choose a role!'); //} } var timeoutDelay = 2000; // milliseconds, change this if you like, set to 0 for the calendar to never auto disappear // preload images var imgUp = new Image(8,12); imgUp.src = '/img/up.gif'; var imgDown = new Image(8,12); imgDown.src = '/img/down.gif'; // used by timeout auto hide functions var timeoutId = false; // the now standard browser sniffer class function Browser(){ this.dom = document.getElementById?1:0; this.ie4 = (document.all && !this.dom)?1:0; this.ns4 = (document.layers && !this.dom)?1:0; this.ns6 = (this.dom && !document.all)?1:0; this.ie5 = (this.dom && document.all)?1:0; this.ok = this.dom || this.ie4 || this.ns4; this.platform = navigator.platform; } var browser = new Browser(); // dom browsers require this written to the HEAD section if (browser.dom || browser.ie4){ document.writeln('') document.write('
'); } var g_Calendar; // global to hold the calendar reference, set by constructor function calendarTimeout(){ if (browser.ie4 || browser.ie5){ if (window.event.srcElement && window.event.srcElement.name!='month') timeoutId=setTimeout('g_Calendar.hide();',timeoutDelay); } if (browser.ns6 || browser.ns4){ timeoutId=setTimeout('g_Calendar.hide();',timeoutDelay); } } // constructor for calendar class function Calendar(){ g_Calendar = this; // some constants needed throughout the program this.daysOfWeek = new Array("Κ","Δ","Τ","Τ","Πε","Πα","Σ"); this.months = new Array("Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"); this.daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); if (browser.ns4){ var tmpLayer = new Layer(124); if (timeoutDelay){ tmpLayer.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT); tmpLayer.onmouseover = function(event) { if (timeoutId) clearTimeout(timeoutId); }; tmpLayer.onmouseout = function(event) { timeoutId=setTimeout('g_Calendar.hide()',timeoutDelay);}; } tmpLayer.x = 100; tmpLayer.y = 100; tmpLayer.bgColor = "#ffffff"; } if (browser.dom || browser.ie4){ var tmpLayer = browser.dom?document.getElementById('container'):document.all.container; } this.containerLayer = tmpLayer; /*if (browser.ns4) { this.containerLayer.clip.height=127; this.containerLayer.clip.width=126; }*/ } Calendar.prototype.getFirstDOM = function() { var thedate = new Date(); thedate.setDate(1); thedate.setMonth(this.month); thedate.setFullYear(this.year); return thedate.getDay(); } Calendar.prototype.getDaysInMonth = function (){ if (this.month!=1) { return this.daysInMonth[this.month] } else { // is it a leap year if (this.isLeapYear(this.year)) { return 29; } else { return 28; } } } Calendar.prototype.isLeapYear = function() { if (this.year%4==0 && ((this.year%100!=0) || (this.year%400==0))) return true; else return false; } Calendar.prototype.buildString = function(){ var tmpStr = '' return tmpStr; } Calendar.prototype.selectChange = function(){ this.month = browser.ns6?this.containerLayer.ownerDocument.forms[0].month.selectedIndex:this.containerLayer.document.forms[0].month.selectedIndex; this.writeString(this.buildString()); } Calendar.prototype.inputChange = function(){ var tmp = browser.ns6?this.containerLayer.ownerDocument.forms[0].year:this.containerLayer.document.forms[0].year; if (tmp.value >=1900 || tmp.value <=2100){ this.year = tmp.value; this.writeString(this.buildString()); } else { tmp.value = this.year; } } Calendar.prototype.changeYear = function(incr){ (incr==1)?this.year++:this.year--; this.writeString(this.buildString()); } Calendar.prototype.changeMonth = function(incr){ if (this.month==11 && incr==1){ this.month = 0; this.year++; } else { if (this.month==0 && incr==-1){ this.month = 11; this.year--; } else { (incr==1)?this.month++:this.month--; } } this.writeString(this.buildString()); } Calendar.prototype.clickDay = function(day){ var tmp = eval('document.' + this.target); if (this.dateFormat=='dd-mmm-yyyy') tmp.value = day + this.dateDelim + this.months[this.month].substr(0,3) + this.dateDelim + this.year; if (this.dateFormat=='dd/mm/yyyy') tmp.value = day + this.dateDelim + (this.month+1) + this.dateDelim + this.year; if (this.dateFormat=='mm/dd/yyyy') tmp.value = (this.month+1) + this.dateDelim + day + this.dateDelim + this.year; if (browser.ns4) this.containerLayer.hidden=true; if (browser.dom || browser.ie4){ this.containerLayer.style.visibility='hidden' } } Calendar.prototype.writeString = function(str){ if (browser.ns4){ this.containerLayer.document.open(); this.containerLayer.document.write(str); this.containerLayer.document.close(); } if (browser.dom || browser.ie4){ this.containerLayer.innerHTML = str; } } Calendar.prototype.show = function(event, target, bHasDropDown, dateFormat, dateFrom, dateTo){ // calendar can restrict choices between 2 dates, if however no restrictions // are made, let them choose any date between 1900 and 3000 if (dateFrom) this.dateFrom = dateFrom; else this.dateFrom = new Date(1900,0,1); this.dateFromDay = padZero(this.dateFrom.getDate()); this.dateFromMonth = padZero(this.dateFrom.getMonth()); this.dateFromYear = this.dateFrom.getFullYear(); if (dateTo) this.dateTo = dateTo; else this.dateTo = new Date(3000,0,1); this.dateToDay = padZero(this.dateTo.getDate()); this.dateToMonth = padZero(this.dateTo.getMonth()); this.dateToYear = this.dateTo.getFullYear(); this.hasDropDown = bHasDropDown; if (dateFormat) this.dateFormat = dateFormat; else this.dateFormat = 'dd-mmm-yyyy'; switch (this.dateFormat){ case 'dd-mmm-yyyy': this.dateDelim = '-'; break; case 'dd/mm/yyyy': case 'mm/dd/yyyy': this.dateDelim = '/'; break; } if (browser.ns4) { if (!this.containerLayer.hidden) { this.containerLayer.hidden=true; return; } } if (browser.dom || browser.ie4){ if (this.containerLayer.style.visibility=='visible') { this.containerLayer.style.visibility='hidden'; return; } } if (browser.ie5 || browser.ie4){ var event = window.event; } if (browser.ns4){ this.containerLayer.x = event.x+10; this.containerLayer.y = event.y-5; } if (browser.ie5 || browser.ie4){ var obj = event.srcElement; x = 0; while (obj.offsetParent != null) { x += obj.offsetLeft; obj = obj.offsetParent; } x += obj.offsetLeft; y = 0; var obj = event.srcElement; while (obj.offsetParent != null) { y += obj.offsetTop; obj = obj.offsetParent; } y += obj.offsetTop; this.containerLayer.style.left = x+35; if (event.y>0)this.containerLayer.style.top = y; } if (browser.ns6){ this.containerLayer.style.left = event.pageX+10; this.containerLayer.style.top = event.pageY-5; } this.target = target; var tmp = eval('document.' + this.target); if (tmp && tmp.value && tmp.value.split(this.dateDelim).length==3){ var atmp = tmp.value.split(this.dateDelim) this.day = this.oDay = this.dateFormat.substr(0,2)=='dd'?parseInt(atmp[0],0):parseInt(atmp[1],0); if (this.dateFormat=='dd-mmm-yyyy'){ for (var i=0;i