2016-10-06 20:34:07 +02:00
|
|
|
|
<div id="account-settings" class="settings-section show" data-name="your-account">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="alert" id="account-settings-status"></div>
|
|
|
|
|
<div class="account-settings-form">
|
|
|
|
|
<form class="email-change-form">
|
2017-05-17 19:07:00 +02:00
|
|
|
|
<h3 class="light">{{t "User settings" }}</h3>
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<p for="change_email" class="inline-block title">
|
|
|
|
|
{{t "Email" }}: <span id='email_value'>{{page_params.email}}</span>
|
|
|
|
|
<a id="change_email" href="#change_email" {{#if page_params.realm_email_changes_disabled}}style="display:none" {{/if}}title="{{t 'Change email' }}">[{{t "Change" }}]</a>
|
|
|
|
|
<i class="icon-vector-question-sign change_email_tooltip" {{#unless page_params.realm_email_changes_disabled}}style="display:none" {{/unless}} data-toggle="tooltip"
|
|
|
|
|
title="{{t 'Changing email addresses has been disabled by your Zulip organization administrators. Contact an administrator for help.' }}"></i>
|
|
|
|
|
</p>
|
2017-01-20 12:27:38 +01:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div id="change_email_modal" class="modal hide" tabindex="-1" role="dialog"
|
|
|
|
|
aria-labelledby="change_email_modal_label" aria-hidden="true">
|
|
|
|
|
<div class="modal-header">
|
|
|
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
|
|
|
|
<h3 id="change_email_modal_label">{{t "Change email" }}</h3>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="modal-body">
|
|
|
|
|
<div class="input-group email_change_container">
|
|
|
|
|
<label for="email">{{t "Email" }}</label>
|
2017-04-28 23:38:22 +02:00
|
|
|
|
<input type="text" name="email" value="{{ page_params.email }}" autocomplete="off" />
|
2017-04-26 04:52:39 +02:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="modal-footer">
|
|
|
|
|
<button id='change_email_button' class="btn btn-success" data-dismiss="modal" aria-hidden="true">{{t "Change" }}</button>
|
|
|
|
|
<button class="btn btn-primary" data-dismiss="modal" aria-hidden="true">{{t "Close" }}</button>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
2017-01-20 12:27:38 +01:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<form action="/json/settings/change" method="post"
|
|
|
|
|
class="form-horizontal your-account-settings">
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="m-10 inline-block grid user-name-parent">
|
|
|
|
|
<div class="user-name-section inline-block">
|
|
|
|
|
<div class="input-group" id="name_change_container">
|
|
|
|
|
<label for="full_name" class="inline-block title">{{t "Full name" }}</label>
|
2017-04-27 00:26:49 +02:00
|
|
|
|
<input type="text" name="full_name" id="full_name" class="w-200 inline-block" value="{{ page_params.full_name }}" {{#if page_params.realm_name_changes_disabled}}disabled="disabled" {{/if}}/>
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<i class="icon-vector-question-sign change_name_tooltip" data-toggle="tooltip"
|
|
|
|
|
{{#unless page_params.realm_name_changes_disabled}}style="display:none" {{/unless}}
|
|
|
|
|
title="{{t 'Changing your name has been disabled by your Zulip organization administrators. Contact an administrator for help.' }}"/>
|
|
|
|
|
<i class="icon-vector-question-sign change_name_tooltip" data-toggle="tooltip"
|
|
|
|
|
{{#if page_params.realm_name_changes_disabled}}style="display:none" {{/if}}
|
|
|
|
|
title="{{t 'Zulip has full unicode support, so you can spell your name exactly how you want it to appear.' }}"/>
|
|
|
|
|
<div class="warning"></div>
|
|
|
|
|
</div>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<!-- password start -->
|
2017-04-20 08:21:31 +02:00
|
|
|
|
{{#if page_params.realm_password_auth_enabled}}
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="input-group" id="pw_change_link">
|
|
|
|
|
<label for="change_password_button" class="inline-block title">{{t "Password" }}</label>
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button class="change_password_button button rounded inline-block input-size" data-dismiss="modal" aria-hidden="true">{{t "Change password" }}</button>
|
2017-04-26 04:52:39 +02:00
|
|
|
|
</div>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div id="pw_change_controls">
|
|
|
|
|
<div class="input-group">
|
|
|
|
|
<label for="old_password" class="inline-block title">{{t "Old password" }}</label>
|
|
|
|
|
<input type="password" autocomplete="off" name="old_password" id="old_password" class="w-200 inline-block" value="" />
|
|
|
|
|
<div class="warning">
|
|
|
|
|
<a href="/accounts/password/reset/" class="sea-green" target="_blank">{{t "Forgotten it?" }}</a>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="input-group">
|
|
|
|
|
<label for="new_password" class="inline-block title">{{t "New password" }}</label>
|
2017-07-06 22:47:12 +02:00
|
|
|
|
<input type="password" autocomplete="off" name="new_password" id="new_password" class="w-200 inline-block" value=""
|
|
|
|
|
data-min-length="{{ page_params.password_min_length }}" data-min-quality="{{ page_params.password_min_quality }}" />
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="warning">
|
|
|
|
|
<div class="progress inline-block" id="pw_strength">
|
|
|
|
|
<div class="bar bar-danger fade" style="width: 10%;"></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="input-group">
|
|
|
|
|
<label class="inline-block title" for="confirm_password title">{{t "Confirm password" }}</label>
|
|
|
|
|
<input type="password" autocomplete="off" name="confirm_password" id="confirm_password" class="w-200 inline-block" value="" />
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
{{/if}}
|
|
|
|
|
|
|
|
|
|
<div class="input-group no-border">
|
|
|
|
|
<label for="" class="inline-block"></label>
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button type="submit" class="button rounded w-200 sea-green input-size" name="change_settings">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
{{t 'Save changes'}}
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="input-group">
|
|
|
|
|
<label for="" class="inline-block"></label>
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button type="submit" class="button rounded w-200 btn-danger input-size" id="user_deactivate_account_button">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
{{t 'Deactivate account' }}
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
2016-12-02 21:42:11 +01:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
2017-05-17 19:07:00 +02:00
|
|
|
|
<h3 class="light">{{t "User avatar" }}</h3>
|
|
|
|
|
|
|
|
|
|
<div class="user-avatar-section">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="inline-block">
|
|
|
|
|
<img id="user-settings-avatar" src="{{ page_params.avatar_url_medium }}" />
|
|
|
|
|
<div id="user_avatar_file_input_error" class="text-error"></div>
|
|
|
|
|
<input type="file" name="user_avatar_file_input" class="notvisible" id="user_avatar_file_input" value="{{t 'Upload avatar' }}" />
|
|
|
|
|
<div id="upload_avatar_spinner"></div>
|
|
|
|
|
</div>
|
2017-05-17 19:07:00 +02:00
|
|
|
|
<div class="inline-block avatar-controls">
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button class="button rounded sea-green w-200 block" id="user_avatar_upload_button">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
{{t 'Upload new avatar' }}
|
|
|
|
|
</button>
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button class="button rounded btn-danger w-200 m-t-20 block" id="user_avatar_delete_button">
|
2017-04-26 04:52:39 +02:00
|
|
|
|
{{t 'Delete avatar' }}
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
2016-12-02 21:42:11 +01:00
|
|
|
|
</div>
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div class="clear-float"></div>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
</form>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<div id="deactivate_self_modal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="deactivation_self_modal_label" aria-hidden="true">
|
|
|
|
|
<div class="modal-header">
|
|
|
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
|
|
|
|
<h3 id="deactivation_user_modal_label">{{t "Deactivate your account" }} </h3>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="modal-body">
|
|
|
|
|
<p>{{#tr this}}By deactivating your account, you will be logged out immediately.{{/tr}}</p>
|
|
|
|
|
<p>{{t "Note that any bots that you maintain will be disabled." }}</p>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="modal-footer">
|
2017-06-06 01:57:22 +02:00
|
|
|
|
<button class="button" data-dismiss="modal" aria-hidden="true">{{t "Cancel" }}</button>
|
2017-04-26 04:52:39 +02:00
|
|
|
|
<button class="button btn-danger" id="do_deactivate_self_button">{{t "Deactivate now" }}</button>
|
2016-10-13 20:09:32 +02:00
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
</div>
|
2016-10-13 20:09:32 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
2017-06-13 17:57:33 +02:00
|
|
|
|
<hr class="settings_separator" />
|
|
|
|
|
|
|
|
|
|
<div class="form-horizontal" id="api_key_button_box">
|
|
|
|
|
<div class="input-group side-padded-container">
|
|
|
|
|
<p class="api-key-note">
|
|
|
|
|
{{#tr this}}
|
|
|
|
|
Creating a bot, and using the bot's account / API key, is the recommended way to use
|
|
|
|
|
the Zulip API. However, you can also use your personal API key if you need to a way
|
|
|
|
|
to automatically send and edit messages from your own account.
|
|
|
|
|
{{/tr}}
|
|
|
|
|
</p>
|
|
|
|
|
<button class="button rounded" id="api_key_button">{{t "Show/change your API key" }}</button>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div id="get_api_key_box" class="side-padded-container">
|
|
|
|
|
<p>{{t "Please re-enter your password to confirm your identity." }}
|
|
|
|
|
<a href="/accounts/password/reset/" target="_blank">{{t "Forgotten it?" }}</a></p>
|
|
|
|
|
<form action="/json/fetch_api_key" method="post" class="form-horizontal">
|
|
|
|
|
<div class="control-group">
|
|
|
|
|
<label for="password" class="control-label">{{t "Current password" }}</label>
|
|
|
|
|
<input type="password" autocomplete="off"
|
|
|
|
|
name="password" id="get_api_key_password" value="" />
|
|
|
|
|
</div>
|
|
|
|
|
<div class="control-group">
|
|
|
|
|
<input type="submit" name="view_api_key" value="{{t 'Get API key' }}"
|
|
|
|
|
class="btn btn-primary" />
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
|
|
|
|
</div>
|
|
|
|
|
<div id="show_api_key_box" class="side-padded-container">
|
|
|
|
|
<p>{{t "Your API key:" }}</p>
|
|
|
|
|
<p><b><span id="api_key_value"></span></b></p>
|
|
|
|
|
<button type="submit" class="btn btn-primary regenerate_api_key">
|
|
|
|
|
{{t "Generate new API key" }}
|
|
|
|
|
</button>
|
|
|
|
|
<a id="download_zuliprc" download="{{zuliprc}}" class="btn btn-success">
|
|
|
|
|
{{t "Download .zuliprc" }}
|
|
|
|
|
</a>
|
|
|
|
|
<div id="user_api_key_error text-error">
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
2017-04-26 04:52:39 +02:00
|
|
|
|
</div>
|
2016-10-05 02:23:09 +02:00
|
|
|
|
</div>
|