user_groups: Fix showing tooltip for disabled settings.

Preivously, the tooltip was shown only for first element
since initialize_disable_btn_hint_popover only added the
tooltip to first element. And then after d9f25d01a1, there
was an error shown as initialize_disable_btn_hint_popover
asserted that only single element list was passed.

This commit fixes it by calling initialize_disable_btn_hint_popover
for each setting element. Similarly the code to destroy the
tooltip on enabling the setting elements is called for each
element.
This commit is contained in:
Sahil Batra
2024-08-21 16:30:44 +05:30
committed by Tim Abbott
parent be9d879682
commit 688def19ab

View File

@@ -117,16 +117,21 @@ function update_general_settings_elements(group) {
if (settings_data.can_edit_user_group(group.id)) {
$permission_dropdown_elements.prop("disabled", false);
$permission_dropdown_elements
.closest(".dropdown_widget_with_label_wrapper")
._tippy?.destroy();
$permission_dropdown_elements.each(function () {
const $dropdown_wrapper = $(this).closest(".dropdown_widget_with_label_wrapper");
$dropdown_wrapper[0]._tippy?.destroy();
});
} else {
$permission_dropdown_elements.prop("disabled", true);
settings_components.initialize_disable_btn_hint_popover(
$permission_dropdown_elements.closest(".dropdown_widget_with_label_wrapper"),
$t({defaultMessage: "You do not have permission to edit this setting."}),
);
$permission_dropdown_elements.each(function () {
const $dropdown_wrapper = $(this).closest(".dropdown_widget_with_label_wrapper");
settings_components.initialize_disable_btn_hint_popover(
$dropdown_wrapper,
$t({defaultMessage: "You do not have permission to edit this setting."}),
);
});
}
}