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
Description
Task
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
Monthly
Of the month(s)
Advanced Options
End Date
End Date
Repeat Task
Every
Start a case based on following registered Plugin.
Update
=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() {
weeks = getField('SCH_EVERY_DAYS').value;
if(!(weeks>=1 && weeks<=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';
}
});
// for advanced
leimnud.event.add(getField('SCH_END_DATE_CHK'), 'click', function() {
if(getField('SCH_END_DATE_CHK').checked){
enable(getField('SCH_END_DATE'));
}
else {
document.getElementById('form[SCH_END_DATE]').value = '';
document.getElementById('form[SCH_END_DATE][div]').innerHTML = '';
disable(getField('SCH_END_DATE'));
}
});
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'));
}
});
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('UPDATE').focus();
}
if(parties[1]>59){
msgBox(G_STRINGS.ID_SCHEDULER_CANT_PUT_MINUTES, 'alert');
getField('SCH_START_TIME').value='';
//getField('SCH_REPEAT_UNTIL').value='';
//getField('SCH_REPEAT_UNTIL').focus();
getField('UPDATE').focus();
}
});
leimnud.event.add(getField('SCH_REPEAT_UNTIL'), 'change', function() {
hours = getField('SCH_REPEAT_UNTIL').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('UPDATE').focus();
}
if(parties[1]>59){
msgBox(G_STRINGS.ID_SCHEDULER_CANT_PUT_MINUTES, 'alert');
//getField('SCH_REPEAT_UNTIL').value='';
//getField('SCH_REPEAT_UNTIL').focus();
getField('UPDATE').focus();
}
});
/*
* @function case_userSchedulerValidate
* @author gustavo cruz gustavo[at]colsoa[dot]com
* @desc This function makes an Ajax call in order to validate if a user is registered in the system.
* @return void
*/
function case_userSchedulerValidate(username, password) {
//G.alert(username);
//G.alert(password);
var user_uid;
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");
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
});
oRPCProcess.callback = function(rpc){
if (getField('PRO_UID')!=null){
var process_uid = getField('PRO_UID').value;
loadTasksDropdown(process_uid,user_uid);
document.getElementById('form[UPDATE]').disabled=false;
showProperties();
} else {
msgBox("The User login data seems to be invalid.","alert");
}
}.extend(this);
oRPCProcess.make();
/* if(rpc.xmlhttp.responseText>=1){
//getField('SEARCH').disabled = false;
msgBox("User successfully logged","alert");
getField('SCH_USR_UID').value = rpc.xmlhttp.responseText;
} else {
//getField('SEARCH').disabled = true;
msgBox(rpc.xmlhttp.responseText,"alert");
}
*/
}.extend(this);
oRPC.make();
}
function resetForm(){
document.getElementById('form[UPDATE]').disabled=true;
document.getElementById('form[SCH_USER_NAME]').readOnly=false;
document.getElementById('form[SCH_USER_PASSWORD]').readOnly=false;
document.getElementById('form[SCH_USER_PASSWORD]').value='';
document.getElementById('form[TEST_CONNECTION]').style.display='';
document.getElementById('form[EDIT_USER]').style.display='none';
//hideAll();
//hideProperties();
}
/**
* @desc Load Tasks Dropdown
* @author gustavo cruz gustavo[at]colosa[dot]com
* @desc This function loads the Task Dropdown filtered by process.
* @return void
*/
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;
}.extend(this);
oRPCTasks.make();
}
/*
* @function collapseAdvancedOption
* @author gustavo cruz gustavo[at]colsoa[dot]com
* @desc This function collapses the Advanced Options Fields.
* @return void
*/
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_CHK]').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 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;
}
}
if (document.getElementById('form[SCH_START_TIME]').value==''){
requiredFields = requiredFields + 'Start Time,';
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;
}
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;
}
}
}
]]>