Skip to content
Snippets Groups Projects
Commit c52d998a authored by Satish's avatar Satish
Browse files

Fixes #346 - Broken CronTasks UI

parent f8557557
No related branches found
No related tags found
No related merge requests found
......@@ -9,31 +9,65 @@
********************************************************************************/
-->*}
{strip}
<div class="modal-dialog modelContainer">
{assign var=HEADER_TITLE value={vtranslate($RECORD_MODEL->get('name'), $QUALIFIED_MODULE)}}
{include file="ModalHeader.tpl"|vtemplate_path:$MODULE TITLE=$HEADER_TITLE}
<div class="modal-content">
<form class="form-horizontal" id="cronJobSaveAjax" method="post" action="index.php">
<input type="hidden" name="module" value="{$MODULE}" />
<input type="hidden" name="parent" value="Settings" />
<input type="hidden" name="action" value="SaveAjax" />
<input type="hidden" name="record" value="{$RECORD}" />
<input type="hidden" name="cronjob" value="{$RECORD_MODEL->get('name')}" />
<input type="hidden" name="oldstatus" value="{$RECORD_MODEL->get('status')}" />
<div class="modal-dialog modelContainer">
{assign var=HEADER_TITLE value={vtranslate($RECORD_MODEL->get('name'), $QUALIFIED_MODULE)}}
{include file="ModalHeader.tpl"|vtemplate_path:$MODULE TITLE=$HEADER_TITLE}
<div class="modal-content">
<form class="form-horizontal" id="cronJobSaveAjax" method="post" action="index.php">
<input type="hidden" name="module" value="{$MODULE}" />
<input type="hidden" name="parent" value="Settings" />
<input type="hidden" name="action" value="SaveAjax" />
<input type="hidden" name="record" value="{$RECORD}" />
<input type="hidden" name="cronjob" value="{$RECORD_MODEL->get('name')}" />
<input type="hidden" name="oldstatus" value="{$RECORD_MODEL->get('status')}" />
<input type="hidden" id="minimumFrequency" value="{$RECORD_MODEL->getMinimumFrequency()}" />
<input type="hidden" name="frequency" id="frequency" value="" />
<div class="modal-body">
<div class="form-group">
<label class="control-label fieldLabel col-sm-5">{vtranslate('LBL_STATUS',$QUALIFIED_MODULE)}</label>
<div class="controls fieldValue col-xs-6">
<select class="select2" name="status">
<option {if $RECORD_MODEL->get('status') eq 1} selected="" {/if} value="1">{vtranslate('LBL_ACTIVE',$QUALIFIED_MODULE)}</option>
<option {if $RECORD_MODEL->get('status') eq 0} selected="" {/if} value="0">{vtranslate('LBL_INACTIVE',$QUALIFIED_MODULE)}</option>
</select>
</div>
</div>
</div>
{include file='ModalFooter.tpl'|@vtemplate_path:$MODULE}
</form>
</div>
</div>
<div class="modal-body">
<div class="form-group">
<label class="control-label fieldLabel col-xs-5">{vtranslate('LBL_STATUS',$QUALIFIED_MODULE)}</label>
<div class="controls fieldValue col-xs-5">
<select class="select2 inputElement" name="status">
<option {if $RECORD_MODEL->get('status') eq 1} selected="" {/if} value="1">{vtranslate('LBL_ACTIVE',$QUALIFIED_MODULE)}</option>
<option {if $RECORD_MODEL->get('status') eq 0} selected="" {/if} value="0">{vtranslate('LBL_INACTIVE',$QUALIFIED_MODULE)}</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label fieldLabel col-xs-5">{vtranslate('Frequency',$QUALIFIED_MODULE)}</label>
{assign var=VALUES value=':'|explode:$RECORD_MODEL->getDisplayValue('frequency')}
{if $VALUES[0] == '00' && $VALUES[1] == '00'}
{assign var=MINUTES value="true"}
{assign var=FIELD_VALUE value=$VALUES[1]}
{elseif $VALUES[0] == '00'}
{assign var=MINUTES value="true"}
{assign var=FIELD_VALUE value=$VALUES[1]}
{elseif $VALUES[1] == '00'}
{assign var=MINUTES value="false"}
{assign var=FIELD_VALUE value=($VALUES[0])}
{else}
{assign var=MINUTES value="true"}
{assign var=FIELD_VALUE value=($VALUES[0]*60)+$VALUES[1]}
{/if}
<div class="controls fieldValue col-xs-2">
<input type="text" class="inputElement" value="{$FIELD_VALUE}" {if $FIELD_INFO["mandatory"] eq true} data-rule-required="true" {/if} id="frequencyValue"/>&nbsp;
</div>
<div class="controls fieldValue col-xs-3" style="padding-left: 0px;">
<select class="select2 inputElement" id="time_format">
<option value="mins" {if $MINUTES eq 'true'} selected="" {/if}>{vtranslate('LBL_MINUTES',$QUALIFIED_MODULE)}</option>
<option value="hours" {if $MINUTES eq 'false'}selected="" {/if}>{vtranslate('LBL_HOURS',$QUALIFIED_MODULE)}</option>
</select>
</div>
</div>
<div class="form-group" style="text-align: center;">
<div class="col-xs-2"></div>
<div class="col-xs-8">
<div class="alert alert-info">{vtranslate($RECORD_MODEL->get('description'),$QUALIFIED_MODULE)}</div>
</div>
</div>
</div>
{include file='ModalFooter.tpl'|@vtemplate_path:$MODULE}
</form>
</div>
</div>
{/strip}
......@@ -23,8 +23,32 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{
jQuery('#cronJobSaveAjax').on('submit',function(e){
e.preventDefault();
var form = jQuery(e.currentTarget);
app.helper.showProgress();
app.helper.hideModal();
var timeFormat = jQuery('#time_format').val();
var frequencyElement = jQuery('#frequencyValue');
var frequencyValue = frequencyElement.val() * 60;
if (timeFormat == 'hours') {
frequencyValue = frequencyValue * 60;
}
var minimumFrequency = jQuery('#minimumFrequency').val();
if (frequencyValue < minimumFrequency) {
var message = app.vtranslate('JS_VALUE_SHOULD_NOT_BE_LESS_THAN');
var minutes = app.vtranslate('JS_MINUTES');
vtUtils.showValidationMessage(frequencyElement, message+' '+(minimumFrequency / 60)+' '+minutes, {
position: {
my: 'bottom left',
at: 'top left',
container: frequencyElement.closest('.form-group')
}
});
e.preventDefault();
return;
} else {
jQuery('#frequency').val(frequencyValue);
}
app.helper.showProgress();
app.helper.hideModal();
var params = form.serializeFormData();
app.request.post({"data":params}).then(function(err,data){
......@@ -35,7 +59,7 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{
}else{
app.helper.showErrorNotification({'message':err.message});
}
});
});
e.preventDefault();
});
},
......
No preview for this file type
......@@ -7,37 +7,37 @@
* All Rights Reserved.
************************************************************************************}
{strip}
<div class="col-lg-6 col-sm-6 col-md-6 detailViewButtoncontainer pull-right" >
<div class="btn-group pull-right">
{foreach item=DETAIL_VIEW_BASIC_LINK from=$DETAILVIEW_LINKS['DETAILVIEWBASIC']}
<button class="btn btn-default" id="{$MODULE_NAME}_detailView_basicAction_{Vtiger_Util_Helper::replaceSpaceWithUnderScores($DETAIL_VIEW_BASIC_LINK->getLabel())}"
{if $DETAIL_VIEW_BASIC_LINK->isPageLoadLink()}
onclick="window.location.href = '{$DETAIL_VIEW_BASIC_LINK->getUrl()}'"
{else}
onclick="{$DETAIL_VIEW_BASIC_LINK->getUrl()}"
{/if}
{if $MODULE_NAME eq 'Documents' && $DETAIL_VIEW_BASIC_LINK->getLabel() eq 'LBL_VIEW_FILE'}
data-filelocationtype="{$DETAIL_VIEW_BASIC_LINK->get('filelocationtype')}" data-filename="{$DETAIL_VIEW_BASIC_LINK->get('filename')}"
{/if}>
<strong>{vtranslate($DETAIL_VIEW_BASIC_LINK->getLabel(), $MODULE_NAME)}</strong>
</button>
{/foreach}
{if $DETAILVIEW_LINKS['DETAILVIEW']|@count gt 0}
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="javascript:void(0);">
<strong>{vtranslate('LBL_MORE', $MODULE_NAME)}</strong>&nbsp;&nbsp;<i class="caret"></i>
</button>
<ul class="dropdown-menu pull-right">
{foreach item=DETAIL_VIEW_LINK from=$DETAILVIEW_LINKS['DETAILVIEW']}
{if $DETAIL_VIEW_LINK->getLabel() eq ""}
<li class="divider"></li>
{else}
<li id="{$MODULE_NAME}_detailView_moreAction_{Vtiger_Util_Helper::replaceSpaceWithUnderScores($DETAIL_VIEW_LINK->getLabel())}">
<a href={$DETAIL_VIEW_LINK->getUrl()} >{vtranslate($DETAIL_VIEW_LINK->getLabel(), $MODULE_NAME)}</a>
</li>
{/if}
{/foreach}
</ul>
{/if}
</div>
</div>
{strip}
\ No newline at end of file
<div class="col-lg-6 col-sm-6 col-md-6 detailViewButtoncontainer pull-right" >
<div class="btn-group pull-right">
{foreach item=DETAIL_VIEW_BASIC_LINK from=$DETAILVIEW_LINKS['DETAILVIEWBASIC']}
<button class="btn btn-default" id="{$MODULE_NAME}_detailView_basicAction_{Vtiger_Util_Helper::replaceSpaceWithUnderScores($DETAIL_VIEW_BASIC_LINK->getLabel())}"
{if $DETAIL_VIEW_BASIC_LINK->isPageLoadLink()}
onclick="window.location.href = '{$DETAIL_VIEW_BASIC_LINK->getUrl()}'"
{else}
onclick="{$DETAIL_VIEW_BASIC_LINK->getUrl()}"
{/if}
{if $MODULE_NAME eq 'Documents' && $DETAIL_VIEW_BASIC_LINK->getLabel() eq 'LBL_VIEW_FILE'}
data-filelocationtype="{$DETAIL_VIEW_BASIC_LINK->get('filelocationtype')}" data-filename="{$DETAIL_VIEW_BASIC_LINK->get('filename')}"
{/if}>
{vtranslate($DETAIL_VIEW_BASIC_LINK->getLabel(), $MODULE_NAME)}
</button>
{/foreach}
{if $DETAILVIEW_LINKS['DETAILVIEW']|@count gt 0}
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="javascript:void(0);">
{vtranslate('LBL_MORE', $MODULE_NAME)}&nbsp;&nbsp;<i class="caret"></i>
</button>
<ul class="dropdown-menu pull-right">
{foreach item=DETAIL_VIEW_LINK from=$DETAILVIEW_LINKS['DETAILVIEW']}
{if $DETAIL_VIEW_LINK->getLabel() eq ""}
<li class="divider"></li>
{else}
<li id="{$MODULE_NAME}_detailView_moreAction_{Vtiger_Util_Helper::replaceSpaceWithUnderScores($DETAIL_VIEW_LINK->getLabel())}">
<a href={$DETAIL_VIEW_LINK->getUrl()} >{vtranslate($DETAIL_VIEW_LINK->getLabel(), $MODULE_NAME)}</a>
</li>
{/if}
{/foreach}
</ul>
{/if}
</div>
</div>
{/strip}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment