diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/CreateModal.cshtml b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/CreateModal.cshtml index 5182923621..8bce5cf45e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/CreateModal.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/CreateModal.cshtml @@ -62,16 +62,8 @@
- + +
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/UpdateModal.cshtml b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/UpdateModal.cshtml index be1b4b1f86..48e37b6468 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/UpdateModal.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/UpdateModal.cshtml @@ -66,22 +66,27 @@
- @if(Model.ViewModel.RequiredPermissionName != null) { var selectedPermission = Model.Permissions.FirstOrDefault(p => p.Name == Model.ViewModel.RequiredPermissionName); - + if (selectedPermission != null) + { + + } + else + { + + } } +
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/createModal.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/createModal.js index 0c4103c6f8..3459328956 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/createModal.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/createModal.js @@ -8,6 +8,7 @@ $(function () { var $url = $('#ViewModel_Url'); var $displayName = $('#ViewModel_DisplayName'); var $menuItemForm = $('#menu-item-form'); + var $selectRequiredPermission = $('#requiredPermissionName'); $pageId.on('change', function (params) { $url.prop('disabled', $pageId.val()); @@ -20,6 +21,51 @@ $(function () { } }) + function initSelectRequiredPermission(){ + function formatDisplayName(item) { + if (!item.id) { + return item.text; + } + var $displayName = $(`${item.id}`); + $displayName.tooltip(); + return $displayName; + } + + $selectRequiredPermission.select2({ + ajax:{ + url: '/api/cms-kit-admin/menu-items/lookup/permissions', + delay: 250, + dataType: "json", + data: function (params) { + let query = {}; + query["filter"] = params.term; + return query; + }, + processResults: function (data) { + let retVal = []; + let items = data["items"]; + $('body').tooltip('dispose'); + items.forEach(function (item, index) { + retVal.push({ + id: item["name"], + text: item["name"], + displayName: item["displayName"] + }) + }); + return { + results: retVal + }; + } + }, + templateResult: formatDisplayName, + width: '100%', + dropdownParent: $('#menu-create-modal'), + language: abp.localization.currentCulture.cultureName + }); + } + + initSelectRequiredPermission(); + $menuItemForm.on('submit', function (e) { $('[href="#url"]').tab('show'); }); diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/updateModal.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/updateModal.js index 173c6459e5..eb15bf7733 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/updateModal.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Menus/MenuItems/updateModal.js @@ -8,6 +8,7 @@ $(function () { var $url = $('#ViewModel_Url'); var $displayName = $('#ViewModel_DisplayName'); var $menuItemForm = $('#menu-item-form'); + var $selectRequiredPermission = $('#requiredPermissionName'); $pageId.on('change', function (params) { $url.prop('disabled', $pageId.val()); @@ -21,6 +22,52 @@ $(function () { $pageId.trigger('change'); + function initSelectRequiredPermission(){ + function formatDisplayName(item) { + if (!item.id) { + return item.text; + } + var $displayName = $(`${item.id}`); + $displayName.tooltip(); + return $displayName; + } + + $selectRequiredPermission.select2({ + ajax:{ + url: '/api/cms-kit-admin/menu-items/lookup/permissions', + delay: 250, + dataType: "json", + data: function (params) { + let query = {}; + query["filter"] = params.term; + return query; + }, + processResults: function (data) { + let retVal = []; + let items = data["items"]; + $('body').tooltip('dispose'); + items.forEach(function (item, index) { + retVal.push({ + id: item["name"], + text: item["name"], + displayName: item["displayName"] + }) + }); + return { + results: retVal + }; + } + }, + templateResult: formatDisplayName, + width: '100%', + dropdownParent: $('#menu-update-modal'), + language: abp.localization.currentCulture.cultureName + }); + } + + initSelectRequiredPermission(); + $('[data-ts-toggle="tooltip"]').tooltip() + $menuItemForm.on('submit', function (e) { $('[href="#url"]').tab('show'); });