This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/templates/user/preferences.hbs

259 lines
10 KiB
Handlebars

<section class='user-content user-preferences'>
<form class="form-horizontal">
<div class="control-group save-button" id='save-button-top'>
<div class="controls">
{{partial 'user/preferences/save-button'}}
</div>
</div>
<div class="control-group pref-username">
<label class="control-label">{{i18n 'user.username.title'}}</label>
<div class="controls">
<span class='static'>{{model.username}}</span>
{{#if model.can_edit_username}}
{{#link-to "preferences.username" class="btn btn-small pad-left no-text"}}<i class="fa fa-pencil"></i>{{/link-to}}
{{/if}}
</div>
<div class='instructions'>
{{{i18n 'user.username.short_instructions' username=model.username}}}
</div>
</div>
{{#if canEditName}}
<div class="control-group pref-name">
<label class="control-label">{{i18n 'user.name.title'}}</label>
<div class="controls">
{{#if model.can_edit_name}}
{{text-field value=newNameInput classNames="input-xxlarge"}}
{{else}}
<span class='static'>{{name}}</span>
{{/if}}
</div>
<div class='instructions'>
{{nameInstructions}}
</div>
</div>
{{/if}}
{{#if canSelectTitle}}
<div class="control-group pref-title">
<label class="control-label">{{i18n 'user.title.title'}}</label>
<div class="controls">
<span class="static">{{model.title}}</span>
{{#link-to "preferences.badgeTitle" class="btn btn-small pad-left no-text"}}{{fa-icon "pencil"}}{{/link-to}}
</div>
</div>
{{/if}}
{{#if canCheckEmails}}
<div class="control-group pref-email">
<label class="control-label">{{i18n 'user.email.title'}}</label>
{{#if model.email}}
<div class="controls">
<span class='static'>{{model.email}}</span>
{{#if model.can_edit_email}}
{{#link-to "preferences.email" class="btn btn-small pad-left no-text"}}{{fa-icon "pencil"}}{{/link-to}}
{{/if}}
</div>
<div class='instructions'>
{{i18n 'user.email.instructions'}}
</div>
{{else}}
<div class="controls">
{{d-button action="checkEmail" actionParam=model title="admin.users.check_email.title" icon="envelope-o" label="admin.users.check_email.text"}}
</div>
{{/if}}
</div>
{{/if}}
{{#if canChangePassword}}
<div class="control-group pref-password">
<label class="control-label">{{i18n 'user.password.title'}}</label>
<div class="controls">
<a href="#" {{action "changePassword"}} class='btn'>
{{fa-icon "envelope"}}
{{#if model.no_password}}
{{i18n 'user.change_password.set_password'}}
{{else}}
{{i18n 'user.change_password.action'}}
{{/if}}
</a>
{{passwordProgress}}
</div>
</div>
{{/if}}
<div class="control-group pref-avatar">
<label class="control-label">{{i18n 'user.avatar.title'}}</label>
<div class="controls">
{{! we want the "huge" version even though we're downsizing it to "large" in CSS }}
{{bound-avatar model "huge"}}
{{#if allowAvatarUpload}}
{{d-button action="showAvatarSelector" class="pad-left no-text" icon="pencil"}}
{{else}}
{{#unless ssoOverridesAvatar}}
<a href="//gravatar.com/emails" target="_blank" title="{{i18n 'user.change_avatar.gravatar_title'}}" class="btn no-text">{{fa-icon "pencil"}}</a>
{{/unless}}
{{/if}}
</div>
</div>
{{#if allowBackgrounds}}
<div class="control-group pref-profile-bg">
<label class="control-label">{{i18n 'user.change_profile_background.title'}}</label>
<div class="controls">
{{image-uploader imageUrl=model.profile_background type="profile_background"}}
</div>
<div class='instructions'>
{{i18n 'user.change_profile_background.instructions'}}
</div>
</div>
<div class="control-group pref-profile-bg">
<label class="control-label">{{i18n 'user.change_card_background.title'}}</label>
<div class="controls">
{{image-uploader imageUrl=model.card_background type="card_background"}}
</div>
<div class='instructions'>
{{i18n 'user.change_card_background.instructions'}}
</div>
</div>
{{/if}}
{{#if allowUserLocale}}
<div class="control-group pref-locale">
<label class="control-label">{{i18n 'user.locale.title'}}</label>
<div class="controls">
{{combo-box valueAttribute="value" content=availableLocales value=model.locale none="user.locale.default"}}
</div>
<div class='instructions'>
{{i18n 'user.locale.instructions'}}
</div>
</div>
{{/if}}
<div class="control-group pref-bio">
<label class="control-label">{{i18n 'user.bio'}}</label>
<div class="controls bio-composer">
{{pagedown-editor value=model.bio_raw}}
</div>
</div>
{{#each uf in userFields}}
{{user-field field=uf.field value=uf.value}}
{{/each}}
<div class="control-group pref-location">
<label class="control-label">{{i18n 'user.location'}}</label>
<div class="controls">
{{input type="text" value=model.location class="input-xxlarge" id='edit-location'}}
</div>
</div>
<div class="control-group pref-website">
<label class="control-label">{{i18n 'user.website'}}</label>
<div class="controls">
{{input type="text" value=model.website class="input-xxlarge"}}
</div>
</div>
<div class="control-group pref-card-badge">
<label class="control-label">{{i18n 'user.card_badge.title'}}</label>
<div class="controls">
{{#if model.card_image_badge}}
{{icon-or-image model.card_image_badge}}
{{/if}}
{{#link-to "preferences.card-badge" class="btn btn-small pad-left no-text"}}{{fa-icon "pencil"}}{{/link-to}}
</div>
</div>
<div class="control-group pref-email-settings">
<label class="control-label">{{i18n 'user.email_settings'}}</label>
{{#if canReceiveDigest}}
{{preference-checkbox labelKey="user.email_digests.title" checked=model.email_digests}}
{{#if model.email_digests}}
<div class='controls controls-dropdown'>
{{combo-box valueAttribute="value" content=digestFrequencies value=model.digest_after_days}}
</div>
{{/if}}
{{/if}}
{{preference-checkbox labelKey="user.email_private_messages" checked=model.email_private_messages}}
{{preference-checkbox labelKey="user.email_direct" checked=model.email_direct}}
{{preference-checkbox labelKey="user.mailing_list_mode" checked=model.mailing_list_mode}}
{{preference-checkbox labelKey="user.email_always" checked=model.email_always}}
<div class='instructions'>
{{i18n 'user.email.frequency' count=siteSettings.email_time_window_mins}}
</div>
</div>
<div class="control-group other">
<label class="control-label">{{i18n 'user.other_settings'}}</label>
<div class="controls controls-dropdown">
<label>{{i18n 'user.new_topic_duration.label'}}</label>
{{combo-box valueAttribute="value" content=considerNewTopicOptions value=model.new_topic_duration_minutes}}
</div>
<div class="controls controls-dropdown">
<label>{{i18n 'user.auto_track_topics'}}</label>
{{combo-box valueAttribute="value" content=autoTrackDurations value=model.auto_track_topics_after_msecs}}
</div>
{{preference-checkbox labelKey="user.external_links_in_new_tab" checked=model.external_links_in_new_tab}}
{{preference-checkbox labelKey="user.enable_quoting" checked=model.enable_quoting}}
{{preference-checkbox labelKey="user.dynamic_favicon" checked=model.dynamic_favicon}}
{{preference-checkbox labelKey="user.disable_jump_reply" checked=model.disable_jump_reply}}
{{#unless editHistoryVisible}}
{{preference-checkbox labelKey="user.edit_history_public" checked=model.edit_history_public}}
{{/unless}}
{{plugin-outlet "user_custom_preferences"}}
</div>
<div class="control-group category">
<label class="control-label">{{i18n 'user.categories_settings'}}</label>
<div class="controls category-controls">
<label>{{i18n 'user.watched_categories'}}</label>
{{category-group categories=model.watchedCategories blacklist=selectedCategories}}
</div>
<div class="instructions">{{i18n 'user.watched_categories_instructions'}}</div>
<div class="controls category-controls">
<label>{{i18n 'user.tracked_categories'}}</label>
{{category-group categories=model.trackedCategories blacklist=selectedCategories}}
</div>
<div class="instructions">{{i18n 'user.tracked_categories_instructions'}}</div>
<div class="controls category-controls">
<label>{{i18n 'user.muted_categories'}}</label>
{{category-group categories=model.mutedCategories blacklist=selectedCategories}}
</div>
<div class="instructions">{{i18n 'user.muted_categories_instructions'}}</div>
</div>
<div class="control-group muting">
<label class="control-label">{{i18n 'user.users'}}</label>
<div class="controls category-controls">
<label>{{i18n 'user.muted_users'}}</label>
{{user-selector excludeCurrentUser=true usernames=model.muted_usernames class="user-selector"}}
</div>
<div class="instructions">{{i18n 'user.muted_users_instructions'}}</div>
</div>
<div class="control-group">
<div class="controls">
{{partial 'user/preferences/save-button'}}
</div>
</div>
{{#if model.canDeleteAccount}}
<div class="control-group delete-account">
<hr/>
<div class="controls">
{{d-button action="delete" disabled=deleteDisabled class="btn-danger" icon="trash-o" label="user.delete_account"}}
</div>
</div>
{{/if}}
</form>
</section>