mirror of
https://github.com/zulip/zulip.git
synced 2026-06-24 21:08:25 +08:00
settings: Extend settings_checkbox for dependent checkboxes.
This deduplicate code for the checkboxes which are dependent on other parameters and it makes no sense changing them when that parameter is false. For example, changing `message_content_in_email_notifications` makes sense only when `enable_offline_email_notifications` is true.
This commit is contained in:
parent
d1c62369b7
commit
3e0b420423
@ -47,20 +47,12 @@
|
||||
"is_checked" page_params.enable_desktop_notifications
|
||||
"label" settings_label.enable_desktop_notifications}}
|
||||
|
||||
<div class="input-group disableable {{#unless page_params.enable_desktop_notifications}}control-label-disabled{{/unless}}">
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" name="pm_content_in_desktop_notifications"
|
||||
id="pm_content_in_desktop_notifications"
|
||||
{{#unless page_params.enable_desktop_notifications}}disabled="disabled"{{/unless}}
|
||||
{{#if page_params.pm_content_in_desktop_notifications}}
|
||||
checked="checked"
|
||||
{{/if}} />
|
||||
<span></span>
|
||||
</label>
|
||||
<label for="pm_content_in_desktop_notifications" id="pm_content_in_desktop_notifications_label" class="inline-block">
|
||||
{{settings_label.pm_content_in_desktop_notifications}}
|
||||
</label>
|
||||
</div>
|
||||
{{partial "settings_checkbox"
|
||||
"setting_name" "pm_content_in_desktop_notifications"
|
||||
"is_checked" page_params.pm_content_in_desktop_notifications
|
||||
"is_parent_setting_enabled" page_params.enable_desktop_notifications
|
||||
"is_nested" true
|
||||
"label" settings_label.pm_content_in_desktop_notifications}}
|
||||
|
||||
{{partial "settings_checkbox"
|
||||
"setting_name" "enable_sounds"
|
||||
@ -77,19 +69,12 @@
|
||||
"is_checked" page_params.enable_offline_push_notifications
|
||||
"label" settings_label.enable_offline_push_notifications}}
|
||||
|
||||
<div class="input-group disableable {{#unless page_params.enable_offline_push_notifications}}control-label-disabled{{/unless}}">
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" name="enable_online_push_notifications" id="enable_online_push_notifications"
|
||||
{{#unless page_params.enable_offline_push_notifications}}disabled="disabled"{{/unless}}
|
||||
{{#if page_params.enable_online_push_notifications}}
|
||||
checked="checked"
|
||||
{{/if}} />
|
||||
<span></span>
|
||||
</label>
|
||||
<label for="enable_online_push_notifications" id="enable_online_push_notifications_label" class="inline-block">
|
||||
{{settings_label.enable_online_push_notifications}}
|
||||
</label>
|
||||
</div>
|
||||
{{partial "settings_checkbox"
|
||||
"setting_name" "enable_online_push_notifications"
|
||||
"is_checked" page_params.enable_online_push_notifications
|
||||
"is_parent_setting_enabled" page_params.enable_offline_push_notifications
|
||||
"is_nested" true
|
||||
"label" settings_label.enable_online_push_notifications}}
|
||||
</div>
|
||||
|
||||
<div id="other_notifications">
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
<div class="input-group">
|
||||
<div class="input-group {{#if is_nested}}disableable{{/if}} {{#is_false is_parent_setting_enabled}}control-label-disabled{{/is_false}}">
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" class="inline-block" name="{{setting_name}}"
|
||||
id="{{prefix}}{{setting_name}}"
|
||||
{{#is_false is_parent_setting_enabled}}disabled="disabled"{{/is_false}}
|
||||
{{#if is_checked}}
|
||||
checked="checked"
|
||||
{{/if}} />
|
||||
|
||||
Loading…
Reference in New Issue
Block a user