diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml
index 4ed0012a89..314f69e71c 100644
--- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml
+++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml
@@ -119,7 +119,11 @@
-
+
+ @L["ResetToDefaults"]
+ @L["Cancel"]
+ @L["Save"]
+
}
else
{
diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/feature-management-modal.js b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/feature-management-modal.js
index f4b052a755..83ed37d010 100644
--- a/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/feature-management-modal.js
+++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/feature-management-modal.js
@@ -2,9 +2,24 @@ var abp = abp || {};
(function ($) {
abp.modals = abp.modals || {};
+ let l = abp.localization.getResource("FeatureManagement");
+
+
abp.modals.FeatureManagement = function () {
+ abp.ResourceLoader.loadScript('/client-proxies/featureManagement-proxy.js');
+ $('#ResetToDefaults').click(function (e) {
+ abp.message.confirm('Are you sure to reset to defaults?')
+ .then(function (confirmed) {
+ if (confirmed) {
+ volo.abp.featureManagement.features.resetToDefault().then(function () {
+ abp.notify.success(l('Reseted'));
+ });
+ }
+ });
+ });
+
function checkParents($tab, $element, className) {
- var parentName = $element
+ let parentName = $element
.closest(className)
.attr('data-parent-name');
@@ -16,14 +31,14 @@ var abp = abp || {};
.filter('[data-feature-name="' + parentName + '"]')
.find('input[type="checkbox"]')
.each(function () {
- var $parent = $(this);
+ let $parent = $(this);
$parent.prop('checked', true);
checkParents($tab, $parent, className);
});
}
function uncheckChildren($tab, $checkBox) {
- var featureName = $checkBox
+ let featureName = $checkBox
.closest('.custom-checkbox')
.attr('data-feature-name');
if (!featureName) {
@@ -34,7 +49,7 @@ var abp = abp || {};
.filter('[data-parent-name="' + featureName + '"]')
.find('input[type="checkbox"]')
.each(function () {
- var $child = $(this);
+ let $child = $(this);
$child.prop('checked', false);
uncheckChildren($tab, $child);
});
@@ -42,10 +57,10 @@ var abp = abp || {};
this.initDom = function ($el) {
$el.find('.tab-pane').each(function () {
- var $tab = $(this);
+ let $tab = $(this);
$tab.find('input[type="checkbox"]')
.each(function () {
- var $checkBox = $(this);
+ let $checkBox = $(this);
$checkBox.change(function () {
if ($checkBox.is(':checked')) {
checkParents($tab, $checkBox, '.custom-checkbox')
@@ -57,7 +72,7 @@ var abp = abp || {};
$tab.find('.form-control')
.each(function () {
- var $element = $(this);
+ let $element = $(this);
$element.change(function () {
checkParents($tab, $element, '.form-group')
});