mirror of https://github.com/zulip/zulip.git
149 lines
8.9 KiB
Handlebars
149 lines
8.9 KiB
Handlebars
<div class="micromodal" id="user-profile-modal" data-user-id="{{user_id}}" aria-hidden="true">
|
|
<div class="modal__overlay" tabindex="-1">
|
|
<div class="modal__container new-style" role="dialog" aria-modal="true" aria-labelledby="dialog_title">
|
|
<div class="modal__header">
|
|
<h1 class="modal__title user-profile-name-heading" id="name">
|
|
{{#unless is_bot}}
|
|
{{#if is_active}}
|
|
<div class="tippy-zulip-tooltip" data-tippy-content="{{last_seen}}">
|
|
<span class="{{user_circle_class}} user_circle user_profile_presence"></span>
|
|
</div>
|
|
{{else}}
|
|
<div>
|
|
<i class="fa fa-ban deactivated-user-icon tippy-zulip-tooltip" data-tippy-content="Deactivated user"></i>
|
|
</div>
|
|
{{/if}}
|
|
{{/unless}}
|
|
{{#if is_bot}}
|
|
<i class="zulip-icon zulip-icon-bot" aria-hidden="true"></i>
|
|
{{/if}}
|
|
<span class="user-profile-name">{{> user_full_name name=full_name}}</span>
|
|
<a class="copy-link-to-user-profile user-profile-manage-own-copy-link-button" tabindex="0" data-user-id="{{user_id}}">
|
|
<i class="zulip-icon zulip-icon-link tippy-zulip-tooltip " data-tippy-content="{{t 'Copy link to profile' }}" aria-hidden="true"></i>
|
|
</a>
|
|
{{#if is_me}}
|
|
<a class="user-profile-manage-own-edit-button" href="/#settings/profile">
|
|
<i class="zulip-icon zulip-icon-edit tippy-zulip-tooltip" data-tippy-content="{{t 'Edit profile' }}" aria-hidden="true"></i>
|
|
</a>
|
|
{{/if}}
|
|
{{#if can_manage_profile}}
|
|
<div class="user-profile-manage-others-edit-button">
|
|
<i class="zulip-icon zulip-icon-edit tippy-zulip-tooltip" data-tippy-content="{{t 'Manage user' }}" aria-hidden="true"></i>
|
|
</div>
|
|
{{/if}}
|
|
</h1>
|
|
<button class="modal__close" aria-label="{{t 'Close modal' }}" data-micromodal-close></button>
|
|
</div>
|
|
<div id="tab-toggle" class="center"></div>
|
|
<main class="modal__body" id="body" data-simplebar data-simplebar-auto-hide="false">
|
|
<div class="tab-data">
|
|
<div class="tabcontent active" id="profile-tab">
|
|
<div class="top">
|
|
<div class="col-wrap col-left">
|
|
<div id="default-section">
|
|
{{#if email}}
|
|
<div id="email" class="default-field">
|
|
<div class="name">{{t "Email" }}</div>
|
|
<div class="value">{{email}}</div>
|
|
</div>
|
|
{{/if}}
|
|
<div id="user-id" class="default-field">
|
|
<div class="name">{{t "User ID" }}</div>
|
|
<div class="value">{{user_id}}</div>
|
|
</div>
|
|
<div id="user-type" class="default-field">
|
|
<div class="name">{{t "Role" }}</div>
|
|
{{#if is_bot}}
|
|
{{#if is_system_bot}}
|
|
<div class="value">{{t "System bot" }}</div>
|
|
{{else}}
|
|
<div class="value">{{t "Bot" }}</div>
|
|
{{/if}}
|
|
{{else}}
|
|
<div class="value">{{user_type}}</div>
|
|
{{/if}}
|
|
</div>
|
|
<div id="date-joined" class="default-field">
|
|
<div class="name">{{t "Joined" }}</div>
|
|
<div class="value">{{date_joined}}</div>
|
|
</div>
|
|
{{#if user_time}}
|
|
<div class="default-field">
|
|
<div class="name">{{t "Local time" }}</div>
|
|
<div class="value">{{user_time}}</div>
|
|
</div>
|
|
{{/if}}
|
|
</div>
|
|
</div>
|
|
<div class="col-wrap col-right">
|
|
<div id="avatar" {{#if user_is_guest}} class="guest-avatar" {{/if}}
|
|
style="background-image: url('{{user_avatar}}');">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="bottom">
|
|
<div id="content">
|
|
{{#if is_bot}}
|
|
<div class="field-section">
|
|
<div class="name">{{t "Bot type" }}</div>
|
|
<div class="bot_info_value">{{bot_type}}</div>
|
|
</div>
|
|
{{#if bot_owner}}
|
|
<div class="field-section bot_owner_user_field" data-field-id="{{bot_owner.user_id}}">
|
|
<div class="name">{{t "Owner" }}</div>
|
|
<div class="pill-container not-editable">
|
|
<div class="input" contenteditable="false" style="display: none;"></div>
|
|
</div>
|
|
</div>
|
|
{{/if}}
|
|
{{else}}
|
|
{{> user_custom_profile_fields profile_fields=profile_data}}
|
|
{{/if}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tabcontent" id="user-profile-streams-tab">
|
|
<div class="alert stream_list_info"></div>
|
|
{{#if show_user_subscribe_widget}}
|
|
<div class="header-section">
|
|
<h3 class="stream-tab-element-header">{{t 'Subscribe {full_name} to channels'}}</h3>
|
|
</div>
|
|
{{> user_profile_subscribe_widget}}
|
|
{{/if}}
|
|
<div class="stream-list-top-section">
|
|
<div class="header-section">
|
|
<h3 class="stream-tab-element-header">{{t 'Subscribed channels' }}</h3>
|
|
</div>
|
|
<input type="text" class="stream-search modal_text_input" placeholder="{{t 'Filter channels' }}" />
|
|
<button type="button" class="clear_search_button" id="clear_stream_search">
|
|
<i class="fa fa-remove" aria-hidden="true"></i>
|
|
</button>
|
|
</div>
|
|
<div class="subscription-stream-list empty-list">
|
|
<table class="user-stream-list" data-empty="{{t 'No channel subscriptions.'}}" data-search-results-empty="{{t 'No matching channels' }}"></table>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tabcontent" id="user-profile-groups-tab">
|
|
<div class="subscription-group-list empty-list">
|
|
<table class="user-group-list" data-empty="{{t 'No user group subscriptions.'}}"></table>
|
|
</div>
|
|
</div>
|
|
<div class="tabcontent" id="manage-profile-tab"></div>
|
|
</div>
|
|
</main>
|
|
<div class="manage-profile-tab-footer">
|
|
<footer class="modal__footer">
|
|
<div class="save-success"></div>
|
|
<button type="button" class="modal__btn dialog_exit_button" aria-label="{{t 'Close this dialog window' }}" data-micromodal-close>{{t "Cancel" }}</button>
|
|
<button type="button" class="modal__btn dialog_submit_button">
|
|
<span>{{t "Save changes"}}</span>
|
|
<div class="modal__spinner"></div>
|
|
</button>
|
|
</footer>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|