var emailEnter=false; function trimTxt(s) { while (s.substring(0,1) == ' ') { s = s.substring(1,s.length); } while (s.substring(s.length-1,s.length) == ' ') { s = s.substring(0,s.length-1); } return s; } function getCSRFCookie() { var name=cookiename+'_csrfchk'; var start = document.cookie.indexOf(name + "="); var len = start + name.length +1; if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) return ''; if ( start == -1 ) return ''; var end = document.cookie.indexOf( ";", len ); if ( end == -1 ) end = document.cookie.length; return unescape( document.cookie.substring( len, end ) ); } function emptyEmail(){ if(!emailEnter) { document.forms['regform'].elements['user_email'].value=''; emailEnter=true; } } function startProgress(disableBtn, btnName, formName, progressBlockName){ if(disableBtn){ document.forms[formName].elements[btnName].enabled=false; document.forms[formName].elements[btnName].style.display='none'; } document.getElementById(progressBlockName).style.display='block'; } function endProgress(enableBtn, btnName, formName, progressBlockName){ if(enableBtn){ document.forms[formName].elements[btnName].enabled=true; document.forms[formName].elements[btnName].style.display='block'; } document.getElementById(progressBlockName).style.display='none'; } function startRegister(){ document.getElementById('progressEnd').style.display='none'; document.getElementById('regBlock').style.display='block'; document.forms['regform'].elements['regBtn'].enabled=true; document.forms['regform'].elements['regBtn'].style.display='block'; document.getElementById('progressMsg').style.display='none'; } function registerValidate(){ /* var emailPattern = /^[a-zA-Z0-9._-]+[a-zA-Z0-9_-]@[a-zA-Z0-9.-]+[.][a-zA-Z]{2,4}$/; var chk=emailPattern.test(document.forms['regform'].elements['user_email'].value); if(!chk) { alert(l_registerAlert); document.forms['regform'].elements['user_email'].focus(); return false; } else{ */ startProgress(true, 'regBtn', 'regform', 'progressMsg'); document.forms['regform'].elements['csrfchk'].value=getCSRFCookie(); document.forms['regform'].submit(); /* } */ } function progressEndWrite(content){ parent.document.getElementById('progressEnd').style.display='block'; parent.document.getElementById('progressEnd').innerHTML=content; } function loginValidate(){ if(trimTxt(document.forms['loginform'].elements['username'].value)=='' || trimTxt(document.forms['loginform'].elements['user_password'].value)==''){ alert(l_enterLoginFields); document.forms['loginform'].elements['username'].focus(); return; } else{ document.forms['loginform'].elements['csrfchk'].value=getCSRFCookie(); startProgress(true, 'loginBtn', 'loginform', 'progressLoginMsg'); document.forms['loginform'].submit(); } } function submitForm(action){ document.forms['chooseForm'].elements['action'].value=action; document.forms['chooseForm'].submit(); } function confirmEmail(){ var ccode=trimTxt(document.forms['confirmform'].elements['confirm_code'].value); if(ccode=='') { alert(l_settingsConfirmAlert); return; } else{ document.forms['confirmform'].elements['csrfchk'].value=getCSRFCookie(); startProgress(true, 'saveBtn', 'confirmform', 'progressMsg'); document.forms['confirmform'].submit(); } } function checkdate (m, d, y) { // Returns true(1) if it is a valid date in gregorian calendar // // version: 1101.3117 // discuss at: http://phpjs.org/functions/checkdate // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: Pyerre // + improved by: Theriault // * example 1: checkdate(12, 31, 2000); // * returns 1: true // * example 2: checkdate(2, 29, 2001); // * returns 2: false // * example 3: checkdate(3, 31, 2008); // * returns 3: true // * example 4: checkdate(1, 390, 2000); // * returns 4: false return m > 0 && m < 13 && y > 999 && y < 32768 && d > 0 && d <= (new Date(y, m, 0)).getDate(); } function strictLength() { var fName='subject'; var fMax=maxSubjectLength; M = document.forms['addform'].elements[fName].value.length; MV = fMax - M; if(MV<0) { MV=0; } if (M > fMax) { document.forms['addform'].elements[fName].value = document.forms['addform'].elements[fName].value.substring(0, fMax); MV=fMax; } document.forms['addform'].elements['ictr'].value=MV; } function makeCisBold(cis_id){ var calframe = document.getElementById('calframe'); Array.from( calframe.contentWindow.document.querySelectorAll('[id^="cis_"]')) .forEach(function (x) { calframe.contentWindow.document.getElementById(x.id).style.fontWeight='normal'; } ); calframe.contentWindow.document.getElementById(cis_id).style.fontWeight='bold'; } function updateDate(day, month, year, id){ makeCisBold(id); document.getElementById('day').value=day; document.getElementById('month').value=month; document.getElementById('year').value=year; //document.getElementById('dia').value=day; //document.getElementById('mes').value=month; //document.getElementById('ano').value=year; //document.forms['addform'].elements['day'].value=day; //document.forms['addform'].elements['month'].value=month; //document.forms['addform'].elements['year'].value=year; //document.forms['calform'].elements['dia'].value=day; //document.forms['calform'].elements['mes'].value=month; //document.forms['calform'].elements['ano'].value=year; //document.getElementById('calform').submit(); } function help(helpText){ alert(helpText); return; } function updateCalendar(){ var ret=true; var day=parseInt(document.getElementById('day').value); var month=parseInt(document.getElementById('month').value); var year=trimTxt(document.getElementById('year').value); if(year=='') ret=false; else { year=parseInt(year); //alert(day + ' ' + month + ' ' + year); if(!checkdate(month, day, year) || year<1903) ret=false; } if(!ret){ alert(l_setDateError); document.getElementById('year').focus(); return; } else{ document.forms['calform'].elements['dia'].value=day; document.forms['calform'].elements['mes'].value=month; document.forms['calform'].elements['ano'].value=year; document.forms['calform'].submit(); //alert('ok'); } } function checkDateMonth(day, month){ if( (month==2 && (day > 29)) || ((month==4 || month==6 || month==9 || month==11) && day > 30) ) { return false; } else return true; } function addReminder(){ err=1; var day=document.forms['addform'].elements['day'].value; var month=document.forms['addform'].elements['month'].value; var year=document.forms['addform'].elements['year'].value; var subject=document.forms['addform'].elements['subject'].value; if(trimTxt(subject)=='' || subject.length>254) { alert(l_fillSubject); document.forms['addform'].elements['subject'].focus(); err=0; } if(err==1 && !checkDateMonth(day, month)){ alert(l_fillDate); document.forms['addform'].elements['day'].focus(); err=0; } if(err==1 && trimTxt(year)!='' && !checkdate(month, day, year)) { alert(l_fillDate); document.forms['addform'].elements['year'].focus(); err=0; } if(err==0) return; else{ startProgress(true, 'saveBtn', 'addform', 'progressMsg'); document.forms['addform'].elements['csrfchk'].value=getCSRFCookie(); document.forms['addform'].submit(); } } function saveSettings(uLngth, pwdLngth){ var err=1; var username=trimTxt(document.forms['settingsform'].elements['username'].value); var pass=trimTxt(document.forms['settingsform'].elements['user_password'].value); var email=trimTxt(document.forms['settingsform'].elements['user_email'].value); var smsmail=trimTxt(document.forms['settingsform'].elements['user_smsmail'].value); var emailPattern = /^[a-zA-Z0-9._-]+[a-zA-Z0-9_-]@[a-zA-Z0-9.-]+[.][a-zA-Z]{2,4}$/; var alphaPattern=/^[a-zA-Z0-9._@-]+$/; if(!emailPattern.test(email)){ alert(l_registerAlert); document.forms['settingsform'].elements['user_email'].focus(); return; } if(username!=email){ if(err==1 && (username=='' || !alphaPattern.test(username) || username.length < uLngth )) { err=0; alert(l_usernameError); document.forms['settingsform'].elements['username'].focus(); } } if(err==1 && (pass=='' || !alphaPattern.test(pass) || pass.length < pwdLngth)) { err=0; alert(l_passwordError); document.forms['settingsform'].elements['user_password'].focus(); } if(err==1 && smsmail!=''){ if(!emailPattern.test(smsmail)) { err=0; alert(l_smsmailError); document.forms['settingsform'].elements['user_smsmail'].focus(); } } if(err==0) return; else{ startProgress(true, 'saveBtn', 'settingsform', 'progressMsg'); document.forms['settingsform'].elements['csrfchk'].value=getCSRFCookie(); document.forms['settingsform'].submit(); } } function handleEnter(e, formName) { var keynum; // IE if(window.event) keynum=e.keyCode; // Netscape/Firefox/Opera else if(e.which) keynum = e.which; if(keynum==13) { if(formName=='loginform') loginValidate(); } return keynum; } function deleteEvent(event){ if(confirm(l_reallyDelete)){ //document['img'+event].src=site_url+'/img/progress.gif'; document.getElementById('img'+event).src=site_url+'/img/progress.gif'; document.forms['delform'].elements['event_id'].value=event; document.forms['delform'].elements['csrfchk'].value=getCSRFCookie(); document.forms['delform'].submit(); } else return; } function hideEvent(event){ document.getElementById('tb'+event).style.display='none'; document.getElementById('tbc'+event).style.display='none'; } function deleteAccount(){ if(confirm(l_deleteAccountWarning)){ top.location=site_url+'/index.php?action=selfdelete'; } else return; } function retrievePass(){ var ccode=document.forms['passform'].elements['email'].value; if(ccode=='') { alert(l_registerAlert); return; } else{ document.forms['passform'].elements['csrfchk'].value=getCSRFCookie(); startProgress(true, 'saveBtn', 'passform', 'progressMsg'); document.forms['passform'].submit(); } }