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 @@ ...@@ -9,31 +9,65 @@
********************************************************************************/ ********************************************************************************/
-->*} -->*}
{strip} {strip}
<div class="modal-dialog modelContainer"> <div class="modal-dialog modelContainer">
{assign var=HEADER_TITLE value={vtranslate($RECORD_MODEL->get('name'), $QUALIFIED_MODULE)}} {assign var=HEADER_TITLE value={vtranslate($RECORD_MODEL->get('name'), $QUALIFIED_MODULE)}}
{include file="ModalHeader.tpl"|vtemplate_path:$MODULE TITLE=$HEADER_TITLE} {include file="ModalHeader.tpl"|vtemplate_path:$MODULE TITLE=$HEADER_TITLE}
<div class="modal-content"> <div class="modal-content">
<form class="form-horizontal" id="cronJobSaveAjax" method="post" action="index.php"> <form class="form-horizontal" id="cronJobSaveAjax" method="post" action="index.php">
<input type="hidden" name="module" value="{$MODULE}" /> <input type="hidden" name="module" value="{$MODULE}" />
<input type="hidden" name="parent" value="Settings" /> <input type="hidden" name="parent" value="Settings" />
<input type="hidden" name="action" value="SaveAjax" /> <input type="hidden" name="action" value="SaveAjax" />
<input type="hidden" name="record" value="{$RECORD}" /> <input type="hidden" name="record" value="{$RECORD}" />
<input type="hidden" name="cronjob" value="{$RECORD_MODEL->get('name')}" /> <input type="hidden" name="cronjob" value="{$RECORD_MODEL->get('name')}" />
<input type="hidden" name="oldstatus" value="{$RECORD_MODEL->get('status')}" /> <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="modal-body">
<div class="form-group"> <div class="form-group">
<label class="control-label fieldLabel col-sm-5">{vtranslate('LBL_STATUS',$QUALIFIED_MODULE)}</label> <label class="control-label fieldLabel col-xs-5">{vtranslate('LBL_STATUS',$QUALIFIED_MODULE)}</label>
<div class="controls fieldValue col-xs-6"> <div class="controls fieldValue col-xs-5">
<select class="select2" name="status"> <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 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> <option {if $RECORD_MODEL->get('status') eq 0} selected="" {/if} value="0">{vtranslate('LBL_INACTIVE',$QUALIFIED_MODULE)}</option>
</select> </select>
</div> </div>
</div> </div>
</div> <div class="form-group">
{include file='ModalFooter.tpl'|@vtemplate_path:$MODULE} <label class="control-label fieldLabel col-xs-5">{vtranslate('Frequency',$QUALIFIED_MODULE)}</label>
</form> {assign var=VALUES value=':'|explode:$RECORD_MODEL->getDisplayValue('frequency')}
</div> {if $VALUES[0] == '00' && $VALUES[1] == '00'}
</div> {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} {/strip}
...@@ -23,8 +23,32 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{ ...@@ -23,8 +23,32 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{
jQuery('#cronJobSaveAjax').on('submit',function(e){ jQuery('#cronJobSaveAjax').on('submit',function(e){
e.preventDefault(); e.preventDefault();
var form = jQuery(e.currentTarget); 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(); var params = form.serializeFormData();
app.request.post({"data":params}).then(function(err,data){ app.request.post({"data":params}).then(function(err,data){
...@@ -35,7 +59,7 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{ ...@@ -35,7 +59,7 @@ Settings_Vtiger_List_Js("Settings_CronTasks_List_Js",{
}else{ }else{
app.helper.showErrorNotification({'message':err.message}); app.helper.showErrorNotification({'message':err.message});
} }
}); });
e.preventDefault(); e.preventDefault();
}); });
}, },
......
No preview for this file type
...@@ -7,37 +7,37 @@ ...@@ -7,37 +7,37 @@
* All Rights Reserved. * All Rights Reserved.
************************************************************************************} ************************************************************************************}
{strip} {strip}
<div class="col-lg-6 col-sm-6 col-md-6 detailViewButtoncontainer pull-right" > <div class="col-lg-6 col-sm-6 col-md-6 detailViewButtoncontainer pull-right" >
<div class="btn-group pull-right"> <div class="btn-group pull-right">
{foreach item=DETAIL_VIEW_BASIC_LINK from=$DETAILVIEW_LINKS['DETAILVIEWBASIC']} {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())}" <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()} {if $DETAIL_VIEW_BASIC_LINK->isPageLoadLink()}
onclick="window.location.href = '{$DETAIL_VIEW_BASIC_LINK->getUrl()}'" onclick="window.location.href = '{$DETAIL_VIEW_BASIC_LINK->getUrl()}'"
{else} {else}
onclick="{$DETAIL_VIEW_BASIC_LINK->getUrl()}" onclick="{$DETAIL_VIEW_BASIC_LINK->getUrl()}"
{/if} {/if}
{if $MODULE_NAME eq 'Documents' && $DETAIL_VIEW_BASIC_LINK->getLabel() eq 'LBL_VIEW_FILE'} {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')}" data-filelocationtype="{$DETAIL_VIEW_BASIC_LINK->get('filelocationtype')}" data-filename="{$DETAIL_VIEW_BASIC_LINK->get('filename')}"
{/if}> {/if}>
<strong>{vtranslate($DETAIL_VIEW_BASIC_LINK->getLabel(), $MODULE_NAME)}</strong> {vtranslate($DETAIL_VIEW_BASIC_LINK->getLabel(), $MODULE_NAME)}
</button> </button>
{/foreach} {/foreach}
{if $DETAILVIEW_LINKS['DETAILVIEW']|@count gt 0} {if $DETAILVIEW_LINKS['DETAILVIEW']|@count gt 0}
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="javascript:void(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> {vtranslate('LBL_MORE', $MODULE_NAME)}&nbsp;&nbsp;<i class="caret"></i>
</button> </button>
<ul class="dropdown-menu pull-right"> <ul class="dropdown-menu pull-right">
{foreach item=DETAIL_VIEW_LINK from=$DETAILVIEW_LINKS['DETAILVIEW']} {foreach item=DETAIL_VIEW_LINK from=$DETAILVIEW_LINKS['DETAILVIEW']}
{if $DETAIL_VIEW_LINK->getLabel() eq ""} {if $DETAIL_VIEW_LINK->getLabel() eq ""}
<li class="divider"></li> <li class="divider"></li>
{else} {else}
<li id="{$MODULE_NAME}_detailView_moreAction_{Vtiger_Util_Helper::replaceSpaceWithUnderScores($DETAIL_VIEW_LINK->getLabel())}"> <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> <a href={$DETAIL_VIEW_LINK->getUrl()} >{vtranslate($DETAIL_VIEW_LINK->getLabel(), $MODULE_NAME)}</a>
</li> </li>
{/if} {/if}
{/foreach} {/foreach}
</ul> </ul>
{/if} {/if}
</div> </div>
</div> </div>
{strip} {/strip}
\ No newline at end of file \ 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