mirror of
https://github.com/zulip/zulip.git
synced 2025-11-01 12:33:40 +00:00
org settings: Refactor check_property_changed.
In this refactor property values are handled more carefully i.e. we first check whether property_name refers to a property values which we can't get from the input elements like we do have in org permissions section for properties like realm_add_emoji_by_admins_only. Small refactor in property_value_element_refers is to prevent many return statements on further addition of property names.
This commit is contained in:
committed by
Tim Abbott
parent
393d4d320f
commit
6cdbcfd80c
@@ -420,7 +420,7 @@ function _set_up() {
|
||||
|
||||
function property_value_element_refers(property_name) {
|
||||
if (property_name === 'realm_message_content_edit_limit_minutes') {
|
||||
return Math.ceil(page_params.realm_message_content_edit_limit_seconds / 60);
|
||||
return Math.ceil(page_params.realm_message_content_edit_limit_seconds / 60).toString();
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -432,8 +432,14 @@ function _set_up() {
|
||||
function check_property_changed(elem) {
|
||||
elem = $(elem);
|
||||
var property_name = exports.extract_property_name(elem);
|
||||
var current_val = page_params[property_name];
|
||||
var changed_val;
|
||||
// Check whether the id refers to a property whose name we can't
|
||||
// extract from element's id.
|
||||
var current_val = property_value_element_refers(property_name);
|
||||
if (current_val === undefined) {
|
||||
current_val = page_params[property_name];
|
||||
}
|
||||
|
||||
if (typeof current_val === 'boolean') {
|
||||
changed_val = elem.prop('checked');
|
||||
} else if (typeof current_val === 'string') {
|
||||
@@ -442,17 +448,9 @@ function _set_up() {
|
||||
current_val = current_val.toString();
|
||||
changed_val = elem.val().trim();
|
||||
} else {
|
||||
// Check whether the id refers to a property whose name we can't
|
||||
// extract from element's id.
|
||||
current_val = property_value_element_refers(property_name);
|
||||
|
||||
if (current_val !== undefined) {
|
||||
current_val = current_val.toString();
|
||||
changed_val = elem.val().trim();
|
||||
} else {
|
||||
blueslip.error('Element refers to unknown property ' + property_name);
|
||||
}
|
||||
blueslip.error('Element refers to unknown property ' + property_name);
|
||||
}
|
||||
|
||||
return current_val !== changed_val;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user