From ac5648f58ec280a044d351bd5896fcfcf85b9a28 Mon Sep 17 00:00:00 2001 From: Madhu S R <madhu.sr@vtigersolutions.com> Date: Sat, 6 Apr 2024 07:37:53 +0530 Subject: [PATCH] #Fixes::158909513::madhusr::It is allowing to hide the mandatory fields in layout editor --- .gitignore | 1 + .../v7/modules/Settings/LayoutEditor/FieldCreate.tpl | 2 +- .../Settings/LayoutEditor/resources/LayoutEditor.js | 12 ++++++++---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 1b58a9326..585abce2b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ vendor/* !vendor/.htaccess +.vscode/* \ No newline at end of file diff --git a/layouts/v7/modules/Settings/LayoutEditor/FieldCreate.tpl b/layouts/v7/modules/Settings/LayoutEditor/FieldCreate.tpl index db9c43a4e..af3e377fa 100644 --- a/layouts/v7/modules/Settings/LayoutEditor/FieldCreate.tpl +++ b/layouts/v7/modules/Settings/LayoutEditor/FieldCreate.tpl @@ -141,7 +141,7 @@ <input type="hidden" name="presence" value="1"/> <label class="checkbox"> <input type="checkbox" class ='cursorPointer bootstrap-switch' id="fieldPresence" name="presence" {if $FIELD_MODEL->isViewable()} checked {/if} - {if $FIELD_MODEL->isActiveOptionDisabled()} readonly="readonly" {/if} {if $FIELD_MODEL->isMandatory()} readonly="readonly" {/if} + {if $FIELD_MODEL->isActiveOptionDisabled()} optionDisabled = "true" readonly="readonly" {/if} {if $FIELD_MODEL->isMandatory()} readonly="readonly" {/if} data-on-text="Yes" data-off-text="No" value="{$FIELD_MODEL->get('presence')}"/> </label> </div> diff --git a/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js b/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js index 603295ad4..b8c46da53 100644 --- a/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js +++ b/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js @@ -504,15 +504,19 @@ Vtiger.Class('Settings_LayoutEditor_Js', { data.find('input[name="quickcreate"]').prop('checked', true).attr('readonly', 'readonly'); data.find('input[name="quickcreate"]').removeClass('cursorPointer').addClass('cursorPointerNotAllowed'); } - data.find('input[name="presence"]').attr('checked', true).attr('readonly', 'readonly'); - data.find('#fieldPresence').bootstrapSwitch('toggleReadonly', true); + if(data.find('#fieldPresence').attr('optionDisabled') != 'true'){ + data.find('input[name="presence"]').attr('checked', true).attr('readonly', 'readonly'); + data.find('#fieldPresence').bootstrapSwitch('toggleReadonly', true); + } } else { if (data.find('input[name="isquickcreatesupported"]').val()) { data.find('input[name="quickcreate"]').removeAttr('readonly'); data.find('input[name="quickcreate"]').removeClass('cursorPointerNotAllowed').addClass('cursorPointer'); } - data.find('input[name="presence"]').removeAttr('readonly'); - data.find('#fieldPresence').bootstrapSwitch('toggleReadonly'); + if(data.find('#fieldPresence').attr('optionDisabled') != 'true'){ + data.find('input[name="presence"]').removeAttr('readonly'); + data.find('#fieldPresence').bootstrapSwitch('toggleReadonly'); + } } }) data.find('input[type="checkbox"]').on('click', function (e) { -- GitLab