General Information Enter the username and password for the user who will be assigned to the initial task in the case(s). User Name Password Test User Edit User Properties Task Description Perform this task Select the date and time for case(s) to be initiated. Execution time Select date Start date Daily Weekly Every Select the day(s) of the week below Monthly Of the month(s) End Date Repeat Task Every Start a case based on following registered Plugin. Save Cancel =1 && days<=365)){ msgBox('Days must be between 1 and 365', 'alert'); // confirm, info getField('SCH_DAYS_PERFORM_TASK_OPT_3').value = '1'; } }); leimnud.event.add(getField('SCH_EVERY_DAYS'), 'change', function() { days = getField('SCH_EVERY_DAYS').value; if(!(days>=1 && days<=52) ) { msgBox('Weeks must be between 1 and 52', 'alert'); getField('SCH_EVERY_DAYS').value = ''; } }); leimnud.event.add(getField('SCH_START_DAY_OPT_1'), 'change', function() { days = getField('SCH_START_DAY_OPT_1').value; if(!(days>=1 && days<=31) ) { msgBox('The days must be between 1 and 31', 'alert'); getField('SCH_START_DAY_OPT_1').value = '1'; } }); leimnud.event.add(getField('SCH_START_TIME'), 'keyup', function() { if (getField('SCH_START_TIME').value.charAt(0)) { if (isNaN(getField('SCH_START_TIME').value.charAt(0)) == true) { getField('SCH_START_TIME').value = getField('SCH_START_TIME').value.slice(0, -1); } } if (getField('SCH_START_TIME').value.charAt(1)) { if (isNaN(getField('SCH_START_TIME').value.charAt(1)) == true) { getField('SCH_START_TIME').value = getField('SCH_START_TIME').value.slice(0, -1); } } var oVar = getField('SCH_START_TIME').value.charAt(2); if (isNaN(oVar) == true) { if (! getField('SCH_START_TIME').value.charAt(3)) { getField('SCH_START_TIME').value = getField('SCH_START_TIME').value.slice(0, -1); } if (getField('SCH_START_TIME').value.charAt(4)) { if (isNaN(getField('SCH_START_TIME').value.charAt(4)) == true) { getField('SCH_START_TIME').value = getField('SCH_START_TIME').value.slice(0, -1); } } } }); leimnud.event.add(getField('SCH_START_TIME'), 'change', function() { hours = getField('SCH_START_TIME').value; answer = hours; var parties = answer.split(':'); if(parties[0]>23){ msgBox(G_STRINGS.ID_SCHEDULER_CANT_PUT_TIME, 'alert'); getField('SCH_START_TIME').value=''; //getField('SCH_REPEAT_UNTIL').value=''; //getField('SCH_REPEAT_UNTIL').focus(); getField('SAVE').focus(); } if(parties[1]>59){ msgBox('The minutes can not be greater than 59', 'alert'); getField('SCH_START_TIME').value=''; //getField('SCH_REPEAT_UNTIL').value=''; //getField('SCH_REPEAT_UNTIL').focus(); getField('SAVE').focus(); } }); /* leimnud.event.add(getField('SCH_OPTION][1'), 'change', function() { showSelection('1'); }); leimnud.event.add(getField('SCH_OPTION][2'), 'change', function() { showSelection('2'); }); leimnud.event.add(getField('SCH_OPTION][3'), 'change', function() { showSelection('3'); }); leimnud.event.add(getField('SCH_OPTION][4'), 'change', function() { showSelection('4'); }); */ function case_userSchedulerValidate(username, password) { //G.alert(username); //G.alert(password); var user_uid; if(username=='' || password==''){ msgBox(G_STRINGS.ID_CASE_SCHEDULER_VALIDATE_ALERT, "alert"); return false; } var oRPC = new leimnud.module.rpc.xmlhttp({ url : '../cases/cases_SchedulerValidateUser', async : true, method: 'POST', args : "USERNAME="+username+"&PASSWORD="+password }); oRPC.callback = function(rpc){ //msgBox(rpc.xmlhttp.responseText,"alert"); sresponse = rpc.xmlhttp.responseText; switch(sresponse){ case "User does not have access to the system": case "Wrong password": case "User inactive!": msgBox(rpc.xmlhttp.responseText,"alert"); getField('BTNCANCEL').focus(); return false; break } getField('SCH_USER_UID').value = rpc.xmlhttp.responseText; user_uid = rpc.xmlhttp.responseText; //alert(user_uid); var oRPCProcess = new leimnud.module.rpc.xmlhttp({ url : '../cases/cases_SchedulerGetProcesses', async : true, method: 'POST', args : "USR_UID="+user_uid+"&PRO_UID="+$_GET('PRO_UID') }); oRPCProcess.callback = function(rpc){ if (getField('PRO_UID')!=null){ var process_uid = getField('PRO_UID').value; } else { var process_uid = gup('PRO_UID'); } loadTasksDropdown(process_uid,user_uid); }.extend(this); oRPCProcess.make(); }.extend(this); oRPC.make(); } /* * @function validateSchedulerFields * @author gustavo cruz gustavo[at]colsoa[dot]com * @desc This function validates the special cases for the scheduler data fields. * @return true/false boolean */ function validateSchedulerFields(){ var validFields = true; var requiredFields = ''; var badFormatFields = ''; var startDate = document.getElementById('form[SCH_START_DATE]').value; var endDate = document.getElementById('form[SCH_END_DATE]').value; startDate = startDate.split("-"); endDate = endDate.split("-"); startDate = new Date(startDate[0],startDate[1],startDate[2]); endDate = new Date(endDate[0],endDate[1],endDate[2]); if (document.getElementById('form[SCH_START_DATE]').value==''){ requiredFields = requiredFields + 'Start Date,'; validFields = false; } else { if (document.getElementById('form[SCH_END_DATE]').value!='') if (startDate>endDate){ badFormatFields = badFormatFields + 'Start Date can\'t be greater than End Date'; validFields = false; } } // check if the field time is compliant with the regular expression // for time format hh:mm var regExpString = "([0-1]\\d|2[0-3]):([0-5]\\d)"; var timeRegexp = new RegExp(regExpString); if (!timeRegexp.test(document.getElementById('form[SCH_START_TIME]').value)){ msgBox('The time format is invalid','alert'); return false; } if (document.getElementById('form[SCH_START_TIME]').value==''){ requiredFields = requiredFields + 'Execution Time,'; validFields = false; } switch(document.getElementById('form[SCH_OPTION]').value){ // daily case '1': //if(document.getElementById('form[SCH_DAYS_PERFORM_TASK][1]').checked==true||document.getElementById('form[SCH_DAYS_PERFORM_TASK][2]').checked==true||document.getElementById('form[SCH_DAYS_PERFORM_TASK][3]').checked==true){ if(document.getElementById('form[SCH_DAYS_PERFORM_TASK]').value!=''){ validFields = true; } else { requiredFields = requiredFields + 'Weekdays,'; validFields = false; } break; // weekly case '2': if (document.getElementById('form[SCH_EVERY_DAYS]').value==''){ requiredFields = requiredFields + 'Number of Weeks,'; validFields = false; } else { for (week=1;week<=4;week++){ weekIdOne = 'form[SCH_WEEK_DAYS]['+week+']'; if (document.getElementById(weekIdOne).checked==true){ validFields = true; break; } else { validFields = false; } } if (!validFields){ for (week=1;week<=3;week++){ weekIdTwo = 'form[SCH_WEEK_DAYS_2]['+(week+4)+']'; if (document.getElementById(weekIdTwo).checked==true){ validFields = true; break; } else { validFields = false; } } } if (!validFields){ requiredFields = requiredFields + 'Weeks,'; validFields = false; } } break; //monthly case '3': if (document.getElementById('form[SCH_START_DAY][1]').checked==true||document.getElementById('form[SCH_START_DAY][2]').checked==true){ for (month=1;month<=4;month++){ monthIdOne = 'form[SCH_MONTHS]['+month+']'; monthIdTwo = 'form[SCH_MONTHS_2]['+(month+4)+']'; monthIdThree = 'form[SCH_MONTHS_3]['+(month+8)+']'; if (document.getElementById(monthIdOne).checked==true||document.getElementById(monthIdTwo).checked==true||document.getElementById(monthIdThree).checked==true){ validFields = true; break; } else { validFields = false; } } if (!validFields){ requiredFields = requiredFields + 'Months,'; validFields = false; } } else { requiredFields = requiredFields + 'Start Day,'; validFields = false; } break; //run once case '4': validFields = true; break; default: validFields = false; break; } if (requiredFields!='') { var message = "The fields "+requiredFields+" can\'t be empty"; msgBox(message, 'alert'); return false; } else { if (badFormatFields!=''){ var message = badFormatFields; msgBox(message, 'alert'); return false; } else { return true; } } } function resetForm(){ document.getElementById('form[SCH_USER_NAME]').readOnly=false; document.getElementById('form[SCH_USER_PASSWORD]').readOnly=false; document.getElementById('form[TEST_CONNECTION]').style.display=''; hideAll(); hideProperties(); } function loadTasksDropdown(process,user_uid){ //alert(process); var oRPCTasks = new leimnud.module.rpc.xmlhttp({ url : '../cases/cases_SchedulerGetTasks', async : true, method: 'POST', args : "USR_UID="+user_uid+"&PRO_UID="+process }); oRPCTasks.callback = function(rpc){ document.getElementById("taskListDropdown").innerHTML = rpc.xmlhttp.responseText; // if the user is assigned to the task the default task value will be diferent than char if (getField('TAS_UID').value!='char'){ showProperties(); } else { msgBox("The User login data seems to be invalid.","alert"); } }.extend(this); oRPCTasks.make(); } leimnud.event.add(getField('SCH_REPEAT_TASK_CHK'), 'click', function() { if(getField('SCH_REPEAT_TASK_CHK').checked){ enable(getField('SCH_REPEAT_EVERY')); enable(getField('SCH_REPEAT_EVERY_OPT')); // enable(getField('SCH_REPEAT_UNTIL')); // enable(getField('SCH_REPEAT_STOP_IF_RUNNING')); } else { disable(getField('SCH_REPEAT_EVERY')); disable(getField('SCH_REPEAT_EVERY_OPT')); // disable(getField('SCH_REPEAT_UNTIL')); // disable(getField('SCH_REPEAT_STOP_IF_RUNNING')); } }); function collapseAdvancedOptions(){ var flag = document.getElementById('EditLogAdvancedOptions').innerHTML; if (flag=='visible'){ //contractSubtitle('ADVANCED_4'); document.getElementById('EditLogAdvancedOptions').innerHTML = 'hidden'; document.getElementById('checkAdvanced').checked = false; //document.getElementById('form[SCH_END_DATE]').value = ''; document.getElementById('form[SCH_END_DATE][div]').innerHTML = ''; document.getElementById('form[SCH_REPEAT_TASK_CHK]').checked = false; } else { //expandSubtitle('ADVANCED_4'); document.getElementById('checkAdvanced').checked = true; document.getElementById('EditLogAdvancedOptions').innerHTML = 'visible'; } } function gup( name ) { name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regexS = "[\\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec( window.location.href ); if( results == null ) return ""; else return results[1]; } ]]>