admin: Add realm option to prevent users from changing their name.

A realm option to prevent users from changing their name is added.
Fixes #3950.
This commit is contained in:
Raghav Jajodia
2017-03-13 23:03:49 +05:30
committed by Tim Abbott
parent dc48b87765
commit ef7e15ee00
11 changed files with 99 additions and 6 deletions

View File

@@ -129,6 +129,15 @@ function populate_streams(streams_data) {
loading.destroy_indicator($('#admin_page_streams_loading_indicator'));
}
exports.toggle_name_change_display = function () {
if ($('#full_name').attr('disabled')) {
$('#full_name').removeAttr('disabled');
} else {
$('#full_name').attr('disabled', 'disabled');
}
$(".change_name_tooltip").toggle();
};
exports.toggle_email_change_display = function () {
$("#change_email").toggle();
$(".change_email_tooltip").toggle();
@@ -336,6 +345,7 @@ function _setup_page() {
realm_invite_by_admins_only: page_params.realm_invite_by_admins_only,
realm_authentication_methods: page_params.realm_authentication_methods,
realm_create_stream_by_admins_only: page_params.realm_create_stream_by_admins_only,
realm_name_changes_disabled: page_params.realm_name_changes_disabled,
realm_email_changes_disabled: page_params.realm_email_changes_disabled,
realm_add_emoji_by_admins_only: page_params.realm_add_emoji_by_admins_only,
realm_allow_message_editing: page_params.realm_allow_message_editing,
@@ -588,6 +598,7 @@ function _setup_page() {
var invite_by_admins_only_status = $("#admin-realm-invite-by-admins-only-status").expectOne();
var authentication_methods_status = $("#admin-realm-authentication-methods-status").expectOne();
var create_stream_by_admins_only_status = $("#admin-realm-create-stream-by-admins-only-status").expectOne();
var name_changes_disabled_status = $("#admin-realm-name-changes-disabled-status").expectOne();
var email_changes_disabled_status = $("#admin-realm-email-changes-disabled-status").expectOne();
var add_emoji_by_admins_only_status = $("#admin-realm-add-emoji-by-admins-only-status").expectOne();
var message_editing_status = $("#admin-realm-message-editing-status").expectOne();
@@ -599,6 +610,7 @@ function _setup_page() {
invite_by_admins_only_status.hide();
authentication_methods_status.hide();
create_stream_by_admins_only_status.hide();
name_changes_disabled_status.hide();
email_changes_disabled_status.hide();
add_emoji_by_admins_only_status.hide();
message_editing_status.hide();
@@ -613,6 +625,7 @@ function _setup_page() {
var new_invite = $("#id_realm_invite_required").prop("checked");
var new_invite_by_admins_only = $("#id_realm_invite_by_admins_only").prop("checked");
var new_create_stream_by_admins_only = $("#id_realm_create_stream_by_admins_only").prop("checked");
var new_name_changes_disabled = $("#id_realm_name_changes_disabled").prop("checked");
var new_email_changes_disabled = $("#id_realm_email_changes_disabled").prop("checked");
var new_add_emoji_by_admins_only = $("#id_realm_add_emoji_by_admins_only").prop("checked");
var new_allow_message_editing = $("#id_realm_allow_message_editing").prop("checked");
@@ -644,6 +657,7 @@ function _setup_page() {
invite_by_admins_only: JSON.stringify(new_invite_by_admins_only),
authentication_methods: JSON.stringify(new_auth_methods),
create_stream_by_admins_only: JSON.stringify(new_create_stream_by_admins_only),
name_changes_disabled: JSON.stringify(new_name_changes_disabled),
email_changes_disabled: JSON.stringify(new_email_changes_disabled),
add_emoji_by_admins_only: JSON.stringify(new_add_emoji_by_admins_only),
allow_message_editing: JSON.stringify(new_allow_message_editing),
@@ -688,6 +702,13 @@ function _setup_page() {
ui.report_success(i18n.t("Any user may now create new streams!"), create_stream_by_admins_only_status);
}
}
if (response_data.name_changes_disabled !== undefined) {
if (response_data.name_changes_disabled) {
ui.report_success(i18n.t("Users cannot change their name!"), name_changes_disabled_status);
} else {
ui.report_success(i18n.t("Users may now change their name!"), name_changes_disabled_status);
}
}
if (response_data.email_changes_disabled !== undefined) {
if (response_data.email_changes_disabled) {
ui.report_success(i18n.t("Users cannot change their email!"), email_changes_disabled_status);