mirror of
				https://github.com/zulip/zulip.git
				synced 2025-10-31 12:03:46 +00:00 
			
		
		
		
	stream_settings: Reorganize settings in subsections.
This commit reorganizes channel settings in the "Advanced configurations" section into four subsections. Fixes #34837.
This commit is contained in:
		| @@ -1784,8 +1784,7 @@ export function create_stream_group_setting_widget({ | ||||
|  | ||||
|     if (sub !== undefined) { | ||||
|         set_group_setting_widget_value(pill_widget, sub[setting_name]); | ||||
|         const $edit_container = stream_settings_containers.get_edit_container(sub); | ||||
|         const $subsection = $edit_container.find(".advanced-configurations-container"); | ||||
|         const $subsection = $pill_container.closest(".settings-subsection-parent"); | ||||
|  | ||||
|         pill_widget.onTextInputHook(() => { | ||||
|             save_discard_stream_settings_widget_status_handler($subsection, sub); | ||||
|   | ||||
| @@ -82,89 +82,120 @@ | ||||
|     <div class="advance-config-title-container {{#if is_stream_edit}}subsection-header{{/if}}"> | ||||
|         <div class="advance-config-toggle-area"> | ||||
|             <i class="fa fa-sm fa-caret-right toggle-advanced-configurations-icon" aria-hidden="true"></i> | ||||
|             <h4 class="stream_setting_subsection_title"><span>{{t 'Advanced configuration' }}</span></h4> | ||||
|             <h3 class="stream_setting_subsection_title"><span>{{t 'Advanced configuration' }}</span></h3> | ||||
|         </div> | ||||
|         {{#if is_stream_edit}} | ||||
|             {{> ../settings/settings_save_discard_widget section_name="stream-permissions" }} | ||||
|         {{/if}} | ||||
|     </div> | ||||
|     <div class="advanced-configurations-collapase-view hide"> | ||||
|         <div class="admin-permissions-tip"> | ||||
|             {{t 'Organization administrators can automatically administer all channels.'}} | ||||
|         <div id="channel-subscription-permissions" class="settings-subsection-parent"> | ||||
|             <div class="channel-subscription-permissions-title-container {{#if is_stream_edit}}subsection-header{{/if}}"> | ||||
|                 <h4 class="stream_setting_subsection_title">{{t "Subscription permissions"}}</h4> | ||||
|                 {{#if is_stream_edit}} | ||||
|                     {{> ../settings/settings_save_discard_widget section_name="subscription-permissions"}} | ||||
|                 {{/if}} | ||||
|             </div> | ||||
|  | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_subscribe_group" | ||||
|               label=group_setting_labels.can_subscribe_group | ||||
|               prefix=prefix }} | ||||
|  | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_add_subscribers_group" | ||||
|               label=group_setting_labels.can_add_subscribers_group | ||||
|               prefix=prefix }} | ||||
|  | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_remove_subscribers_group" | ||||
|               label=group_setting_labels.can_remove_subscribers_group | ||||
|               prefix=prefix }} | ||||
|         </div> | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_subscribe_group" | ||||
|           label=group_setting_labels.can_subscribe_group | ||||
|           prefix=prefix }} | ||||
|         <div id="channel-messaging-permissions" class="settings-subsection-parent"> | ||||
|             <div class="channel-messaging-permissions-title-container {{#if is_stream_edit}}subsection-header{{/if}}"> | ||||
|                 <h4 class="stream_setting_subsection_title">{{t "Messaging permissions"}}</h4> | ||||
|                 {{#if is_stream_edit}} | ||||
|                     {{> ../settings/settings_save_discard_widget section_name="messaging-permissions"}} | ||||
|                 {{/if}} | ||||
|             </div> | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_add_subscribers_group" | ||||
|           label=group_setting_labels.can_add_subscribers_group | ||||
|           prefix=prefix }} | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_send_message_group" | ||||
|               label=group_setting_labels.can_send_message_group | ||||
|               prefix=prefix | ||||
|               help_link="/help/stream-sending-policy" }} | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_remove_subscribers_group" | ||||
|           label=group_setting_labels.can_remove_subscribers_group | ||||
|           prefix=prefix }} | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_send_message_group" | ||||
|           label=group_setting_labels.can_send_message_group | ||||
|           prefix=prefix | ||||
|           help_link="/help/stream-sending-policy" }} | ||||
|  | ||||
|         <div class="input-group"> | ||||
|             <label for="{{prefix}}topics_policy" class="settings-field-label">{{> stream_topics_policy_label .}}</label> | ||||
|             <select name="stream-topics-policy-setting" id="{{prefix}}topics_policy" class="prop-element settings_select bootstrap-focus-style" data-setting-widget-type="string"> | ||||
|                 {{> ../settings/dropdown_options_widget option_values=stream_topics_policy_values}} | ||||
|             </select> | ||||
|             <div class="input-group"> | ||||
|                 <label for="{{prefix}}topics_policy" class="settings-field-label">{{> stream_topics_policy_label .}}</label> | ||||
|                 <select name="stream-topics-policy-setting" id="{{prefix}}topics_policy" class="prop-element settings_select bootstrap-focus-style" data-setting-widget-type="string"> | ||||
|                     {{> ../settings/dropdown_options_widget option_values=stream_topics_policy_values}} | ||||
|                 </select> | ||||
|             </div> | ||||
|         </div> | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_move_messages_within_channel_group" | ||||
|           label=group_setting_labels.can_move_messages_within_channel_group | ||||
|           prefix=prefix }} | ||||
|         <div id="channel-moderation-permissions" class="settings-subsection-parent"> | ||||
|             <div class="channel-moderation-permissions-title-container {{#if is_stream_edit}}subsection-header{{/if}}"> | ||||
|                 <h4 class="stream_setting_subsection_title">{{t "Moderation permissions"}}</h4> | ||||
|                 {{#if is_stream_edit}} | ||||
|                     {{> ../settings/settings_save_discard_widget section_name="moderation-permissions"}} | ||||
|                 {{/if}} | ||||
|             </div> | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_move_messages_out_of_channel_group" | ||||
|           label=group_setting_labels.can_move_messages_out_of_channel_group | ||||
|           prefix=prefix }} | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_move_messages_within_channel_group" | ||||
|               label=group_setting_labels.can_move_messages_within_channel_group | ||||
|               prefix=prefix }} | ||||
|  | ||||
|         {{> ../settings/group_setting_value_pill_input | ||||
|           setting_name="can_administer_channel_group" | ||||
|           label=group_setting_labels.can_administer_channel_group | ||||
|           prefix=prefix }} | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_move_messages_out_of_channel_group" | ||||
|               label=group_setting_labels.can_move_messages_out_of_channel_group | ||||
|               prefix=prefix }} | ||||
|         </div> | ||||
|  | ||||
|         {{#if (or is_owner is_stream_edit)}} | ||||
|             <div> | ||||
|                 <div class="input-group inline-block message-retention-setting-group time-limit-setting"> | ||||
|                     <label class="dropdown-title settings-field-label" for="{{prefix}}message_retention_days">{{t "Message retention period" }} | ||||
|                         {{> ../help_link_widget link="/help/message-retention-policy" }} | ||||
|                     </label> | ||||
|         <div id="channel-administrative-permissions" class="settings-subsection-parent"> | ||||
|             <div class="channel-administrative-permissions-title-container {{#if is_stream_edit}}subsection-header{{/if}}"> | ||||
|                 <h4 class="stream_setting_subsection_title">{{t "Administrative permissions"}}</h4> | ||||
|                 {{#if is_stream_edit}} | ||||
|                     {{> ../settings/settings_save_discard_widget section_name="administrative-permissions"}} | ||||
|                 {{/if}} | ||||
|             </div> | ||||
|             <div class="admin-permissions-tip"> | ||||
|                 {{t 'Organization administrators can automatically administer all channels.'}} | ||||
|             </div> | ||||
|             {{> ../settings/group_setting_value_pill_input | ||||
|               setting_name="can_administer_channel_group" | ||||
|               label=group_setting_labels.can_administer_channel_group | ||||
|               prefix=prefix }} | ||||
|  | ||||
|                     {{> ../settings/upgrade_tip_widget .}} | ||||
|  | ||||
|                     <select name="stream_message_retention_setting" | ||||
|                       class="stream_message_retention_setting prop-element settings_select bootstrap-focus-style" | ||||
|                       id="{{prefix}}message_retention_days" | ||||
|                       data-setting-widget-type="message-retention-setting"> | ||||
|                         <option value="realm_default">{{t "Use organization level settings {org_level_message_retention_setting}" }}</option> | ||||
|                         <option value="unlimited">{{t 'Retain forever' }}</option> | ||||
|                         <option value="custom_period">{{t 'Custom' }}</option> | ||||
|                     </select> | ||||
|  | ||||
|                     <div class="dependent-settings-block stream-message-retention-days-input"> | ||||
|                         <label class="inline-block" for="{{prefix}}stream_message_retention_custom_input"> | ||||
|                             {{t 'Retention period (days)' }}: | ||||
|             {{#if (or is_owner is_stream_edit)}} | ||||
|                 <div> | ||||
|                     <div class="input-group inline-block message-retention-setting-group time-limit-setting"> | ||||
|                         <label class="dropdown-title settings-field-label" for="{{prefix}}message_retention_days">{{t "Message retention period" }} | ||||
|                             {{> ../help_link_widget link="/help/message-retention-policy" }} | ||||
|                         </label> | ||||
|                         <input type="text" autocomplete="off" | ||||
|                           name="stream-message-retention-days" | ||||
|                           class="stream-message-retention-days message-retention-setting-custom-input time-limit-custom-input" | ||||
|                           id="{{prefix}}stream_message_retention_custom_input" /> | ||||
|  | ||||
|                         {{> ../settings/upgrade_tip_widget .}} | ||||
|  | ||||
|                         <select name="stream_message_retention_setting" | ||||
|                           class="stream_message_retention_setting prop-element settings_select bootstrap-focus-style" | ||||
|                           id="{{prefix}}message_retention_days" | ||||
|                           data-setting-widget-type="message-retention-setting"> | ||||
|                             <option value="realm_default">{{t "Use organization level settings {org_level_message_retention_setting}" }}</option> | ||||
|                             <option value="unlimited">{{t 'Retain forever' }}</option> | ||||
|                             <option value="custom_period">{{t 'Custom' }}</option> | ||||
|                         </select> | ||||
|  | ||||
|                         <div class="dependent-settings-block stream-message-retention-days-input"> | ||||
|                             <label class="inline-block" for="{{prefix}}stream_message_retention_custom_input"> | ||||
|                                 {{t 'Retention period (days)' }}: | ||||
|                             </label> | ||||
|                             <input type="text" autocomplete="off" | ||||
|                               name="stream-message-retention-days" | ||||
|                               class="stream-message-retention-days message-retention-setting-custom-input time-limit-custom-input" | ||||
|                               id="{{prefix}}stream_message_retention_custom_input" /> | ||||
|                         </div> | ||||
|                     </div> | ||||
|                 </div> | ||||
|             </div> | ||||
|         {{/if}} | ||||
|             {{/if}} | ||||
|         </div> | ||||
|     </div> | ||||
| </div> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user