Browse Source

[4.3] MSPB-60: Disable skip_instructions if announce_only is checked (#198)

* MSPB-60: Disable skip_instructions if announce_only is checked

* Do not change the value of 'skip_instructions' on the voicemail object if announce_only is checked
4.3
Pilar Candia 6 years ago
committed by GitHub
parent
commit
337e2f1d3f
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 45 additions and 3 deletions
  1. +3
    -2
      submodules/vmboxes/views/edit.html
  2. +7
    -0
      submodules/vmboxes/vmboxes.css
  3. +35
    -1
      submodules/vmboxes/vmboxes.js

+ 3
- 2
submodules/vmboxes/views/edit.html View File

@ -139,13 +139,14 @@
</div>
<div class="control-group">
<label class="control-input checkbox">
<label class="control-input checkbox{{#if announcement_only}} disabled{{/if}}">
<div data-toggle="tooltip" data-placement="right" data-original-title="{{ i18n.vmboxes.popupSettings.options.skipInstructions.help }}">
{{#monsterCheckbox i18n.vmboxes.popupSettings.options.skipInstructions.label}}
<input type="checkbox" name="skip_instructions" id="skip_instructions" {{#if skip_instructions }}checked{{/if}} />
<input type="checkbox" name="skip_instructions" id="skip_instructions" {{#if skip_instructions }}checked{{/if}} {{#if announcement_only}}checked disabled{{/if}} />
{{/monsterCheckbox}}
</div>
</label>
<input id="skip_instructions_input" type="hidden" value="{{skip_instructions}}">
</div>
<div class="control-group">


+ 7
- 0
submodules/vmboxes/vmboxes.css View File

@ -227,6 +227,13 @@
.edit-vmbox .control-input.checkbox > div {
display: inline-block;
}
.edit-vmbox .control-input.checkbox.disabled {
color: #909099;
}
.edit-vmbox .control-input.checkbox.disabled input ~ i {
border: solid 1px #bcbcc2;
background: #909099;
}
.edit-vmbox .helper {
margin: 0 30px;


+ 35
- 1
submodules/vmboxes/vmboxes.js View File

@ -217,7 +217,14 @@ define(function(require) {
templateVMBox.find('.actions .save').on('click', function() {
if (monster.ui.valid(vmboxForm)) {
var dataToSave = self.vmboxesMergeData(data, templateVMBox, greetingControl, temporaryGreetingControl);
var dataToSave = self.vmboxesMergeData(data, templateVMBox, greetingControl, temporaryGreetingControl),
$skipInstructionsInput = templateVMBox.find('#skip_instructions_input').val();
if (dataToSave.announcement_only) {
dataToSave.skip_instructions = $skipInstructionsInput === 'true' ? true : false;
} else {
delete dataToSave.announcement_only;
}
self.vmboxesSaveVmbox(dataToSave, function(data) {
callbacks.afterSave && callbacks.afterSave(data);
@ -227,6 +234,33 @@ define(function(require) {
}
});
templateVMBox.find('#announcement_only').on('click', function() {
var $this = $(this),
isChecked = $this.prop('checked'),
$skipInstructions = templateVMBox.find('#skip_instructions'),
$parentDiv = $skipInstructions.parents('label.control-input'),
$skipInstructionsInput = templateVMBox.find('#skip_instructions_input').val(),
isSkipInstructions = $skipInstructionsInput === 'true' ? true : false,
isDisabled = false;
if (isChecked) {
isDisabled = true;
isSkipInstructions = true;
$parentDiv
.addClass('disabled');
} else {
$parentDiv
.removeClass('disabled');
}
$skipInstructions
.prop('checked', isSkipInstructions);
$skipInstructions
.prop('disabled', isDisabled);
});
templateVMBox.find('#delete_vmbox').on('click', function() {
var voicemailId = $(this).parents('.edit-vmbox').data('id');


Loading…
Cancel
Save