=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_REPEAT_EVERY'), 'change', function() {
hours = getField('SCH_REPEAT_EVERY').value;
answer = hours;
var parties = answer.split('.');
if(parties[0]>23){
msgBox(G_STRINGS.ID_SCHEDULER_CANT_PUT_TIME, 'alert');
getField('SCH_REPEAT_EVERY').value='';
getField('SAVE').focus();
}
if(parties[1]>99){
msgBox('The minutes can not be greater than 99', 'alert');
getField('SCH_REPEAT_EVERY').value='';
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) {
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+"&PRO_UID="+$_GET('PRO_UID')
});
oRPC.callback = function(rpc){
sresponse = rpc.xmlhttp.responseText.parseJSON();
if (sresponse.status_code != 0) {
msgBox(sresponse.message, "alert");
getField('BTNCANCEL').focus();
return false;
}
getField('SCH_USER_UID').value = sresponse.message;
user_uid = sresponse.message;
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(oForm) {
var schedulerTitle = document.getElementById('form[SCH_NAME]').value;
schedulerTitle = schedulerTitle.replace(/^\s*|\s*$/g,"");
if (schedulerTitle == '') {
document.getElementById('form[SCH_NAME]').focus();
msgBox("@G::LoadTranslation(ID_REQUIRED_NAME_CASE_SCHEDULER)", 'alert');
return false;
}
var listNames = document.getElementById('form[SCH_LIST]').value;
listNames = listNames.split("^");
for (var i= 1; iendDate) {
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 (document.getElementById('form[SCH_OPTION]').value != 5) {
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;
}
} else {
if (document.getElementById('form[SCH_REPEAT_EVERY]').value=='') {
requiredFields = requiredFields + 'Every,';
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;
//run every
case '5':
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 {
oForm.submit();
}
}
}
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_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];
}
]]>