2014-09-03 22:41:13 +08:00
|
|
|
<section {{bind-attr class=":details active::not-activated"}}>
|
2013-02-06 03:16:51 +08:00
|
|
|
|
2014-08-28 01:52:01 +08:00
|
|
|
<div class='user-controls'>
|
2014-09-03 22:41:13 +08:00
|
|
|
{{#if active}}
|
|
|
|
{{#link-to 'user' model class="btn"}}
|
|
|
|
<i class='fa fa-user'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.show_public_profile'}}
|
2014-09-03 22:41:13 +08:00
|
|
|
{{/link-to}}
|
|
|
|
{{#if can_impersonate}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class='btn btn-danger' {{action "impersonate" target="content"}} title="{{i18n 'admin.impersonate.help'}}">
|
2014-09-03 22:41:13 +08:00
|
|
|
<i class='fa fa-crosshairs'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.impersonate.title'}}
|
2014-09-03 22:41:13 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
|
|
|
{{#if currentUser.admin}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "log_out" target="content"}}>
|
2014-09-03 22:41:13 +08:00
|
|
|
<i class='fa fa-power-off'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.log_out'}}
|
2014-09-03 22:41:13 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
2014-08-28 01:52:01 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
|
2014-09-03 22:41:13 +08:00
|
|
|
<div class='display-row username'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.username.title'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{username}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='controls'>
|
2014-08-28 01:52:01 +08:00
|
|
|
{{#link-to 'preferences.username' model class="btn"}}
|
|
|
|
<i class='fa fa-pencil'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'user.change_username.title'}}
|
2013-09-17 02:08:55 +08:00
|
|
|
{{/link-to}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
2013-04-20 13:34:11 +08:00
|
|
|
|
2014-09-30 04:31:05 +08:00
|
|
|
{{#if canCheckEmails}}
|
|
|
|
<div class='display-row email'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.email.title'}}</div>
|
2014-09-30 04:31:05 +08:00
|
|
|
<div class='value'>
|
|
|
|
{{#unless active}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='controls'>{{i18n 'admin.users.not_verified'}}</div>
|
2014-09-30 04:31:05 +08:00
|
|
|
{{/unless}}
|
|
|
|
{{#if email}}
|
|
|
|
<a href="mailto:{{unbound email}}">{{email}}</a>
|
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class="btn" title="{{i18n 'admin.users.check_email.title'}}" {{action "checkEmail" this}}>{{fa-icon "envelope-o"}} {{i18n 'admin.users.check_email.text'}}</button>
|
2014-09-30 04:31:05 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
2013-04-20 13:34:11 +08:00
|
|
|
|
2014-09-30 04:31:05 +08:00
|
|
|
<div class='display-row associations'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.associated_accounts'}}</div>
|
2014-09-30 04:31:05 +08:00
|
|
|
<div class='value'>
|
|
|
|
{{#if associated_accounts}}
|
|
|
|
{{associated_accounts}}
|
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class="btn" title="{{i18n 'admin.users.check_email.title'}}" {{action "checkEmail" this}}>{{fa-icon "envelope-o"}} {{i18n 'admin.users.check_email.text'}}</button>
|
2014-09-30 04:31:05 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{{/if}}
|
2014-09-25 13:50:54 +08:00
|
|
|
|
2013-11-12 04:03:17 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.avatar.title'}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='value'>{{avatar content imageSize="large"}}</div>
|
|
|
|
</div>
|
2013-04-20 13:34:11 +08:00
|
|
|
|
2013-06-26 06:39:20 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.title.title'}}</div>
|
2013-06-26 06:39:20 +08:00
|
|
|
<div class='value'>
|
|
|
|
{{#if editingTitle}}
|
2014-06-10 23:54:38 +08:00
|
|
|
{{text-field value=title autofocus="autofocus"}}
|
2013-06-26 06:39:20 +08:00
|
|
|
{{else}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<span {{action "toggleTitleEdit"}}>{{title}} </span>
|
2013-06-26 06:39:20 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
|
|
|
{{#if editingTitle}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class='btn' {{action "saveTitle"}}>{{i18n 'admin.user.save_title'}}</button>
|
|
|
|
<a href="#" {{action "toggleTitleEdit"}}>{{i18n 'cancel'}}</a>
|
2013-06-26 06:39:20 +08:00
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class='btn' {{action "toggleTitleEdit"}}><i class="fa fa-pencil"></i>{{i18n 'admin.user.edit_title'}}</button>
|
2013-06-26 06:39:20 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2014-07-28 09:59:46 +08:00
|
|
|
{{#if currentUser.admin}}
|
2014-09-27 02:48:34 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.groups.title'}}</div>
|
2014-09-27 02:48:34 +08:00
|
|
|
<div class='value'>
|
|
|
|
{{admin-group-selector selected=model.groups available=availableGroups}}
|
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
|
|
|
{{#if custom_groups}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.groups.primary'}}
|
2014-09-27 02:48:34 +08:00
|
|
|
{{combo-box content=custom_groups value=primary_group_id nameProperty="name" none="admin.groups.no_primary"}}
|
|
|
|
{{/if}}
|
|
|
|
{{#if primaryGroupDirty}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn ok no-text' {{action "savePrimaryGroup"}}><i class='fa fa-check'></i></button>
|
|
|
|
<button class='btn cancel no-text' {{action "resetPrimaryGroup"}}><i class='fa fa-times'></i></button>
|
2014-09-27 02:48:34 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
2014-02-11 05:59:36 +08:00
|
|
|
</div>
|
2014-07-28 09:59:46 +08:00
|
|
|
{{/if}}
|
2014-02-11 05:59:36 +08:00
|
|
|
|
2013-11-12 04:03:17 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.ip_address.title'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{ip_address}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='controls'>
|
2014-11-24 18:08:13 +08:00
|
|
|
{{#if currentUser.staff}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "refreshBrowsers" target="content"}}>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.refresh_browsers'}}
|
2014-07-08 04:18:18 +08:00
|
|
|
</button>
|
2014-11-25 01:04:34 +08:00
|
|
|
{{ip-lookup ip=ip_address userId=id}}
|
2013-05-02 13:15:17 +08:00
|
|
|
{{/if}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
2013-04-20 13:34:11 +08:00
|
|
|
|
2014-04-30 02:37:56 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.registration_ip_address.title'}}</div>
|
2014-04-30 02:37:56 +08:00
|
|
|
<div class='value'>{{registration_ip_address}}</div>
|
2014-06-16 00:14:19 +08:00
|
|
|
<div class='controls'>
|
2014-11-24 18:08:13 +08:00
|
|
|
{{#if currentUser.staff}}
|
2014-11-25 01:04:34 +08:00
|
|
|
{{ip-lookup ip=registration_ip_address userId=id}}
|
2014-06-16 00:14:19 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
2014-04-30 02:37:56 +08:00
|
|
|
</div>
|
|
|
|
|
2014-03-19 22:27:21 +08:00
|
|
|
{{#if showBadges}}
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.badges.title'}}</div>
|
2014-03-19 22:27:21 +08:00
|
|
|
<div class='value'>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'badges.badge_count' count=badge_count}}
|
2014-03-19 22:27:21 +08:00
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{#link-to 'adminUser.badges' this class="btn"}}<i class="fa fa-certificate"></i>{{i18n 'admin.badges.edit_badges'}}{{/link-to}}
|
2014-03-19 22:27:21 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{{/if}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</section>
|
|
|
|
|
2014-09-27 02:48:34 +08:00
|
|
|
{{#if userFields}}
|
|
|
|
<section class='details'>
|
|
|
|
{{#each userFields}}
|
|
|
|
<div class='display-row'>
|
|
|
|
<div class='field'>{{name}}</div>
|
|
|
|
<div class='value'>
|
|
|
|
{{#if value}}
|
|
|
|
{{value}}
|
|
|
|
{{else}}
|
|
|
|
—
|
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{{/each}}
|
|
|
|
</section>
|
|
|
|
{{/if}}
|
|
|
|
|
2013-02-06 03:16:51 +08:00
|
|
|
|
|
|
|
<section class='details'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<h1>{{i18n 'admin.user.permissions'}}</h1>
|
2013-02-06 03:16:51 +08:00
|
|
|
|
2013-09-10 00:21:47 +08:00
|
|
|
{{#if showApproval}}
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.users.approved'}}</div>
|
2013-09-10 00:21:47 +08:00
|
|
|
<div class='value'>
|
|
|
|
{{#if approved}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.approved_by'}}
|
2013-05-08 01:30:12 +08:00
|
|
|
|
2014-03-24 23:43:06 +08:00
|
|
|
{{#link-to 'adminUser' approvedBy}}{{avatar approvedBy imageSize="small"}}{{/link-to}}
|
|
|
|
{{#link-to 'adminUser' approvedBy}}{{approvedBy.username}}{{/link-to}}
|
2013-09-10 00:21:47 +08:00
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'no_value'}}
|
2013-09-10 00:21:47 +08:00
|
|
|
{{/if}}
|
2013-03-21 08:25:41 +08:00
|
|
|
|
2013-09-10 00:21:47 +08:00
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
|
|
|
{{#if approved}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.approve_success'}}
|
2013-09-10 00:21:47 +08:00
|
|
|
{{else}}
|
|
|
|
{{#if can_approve}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "approve" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-check'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.approve'}}
|
2013-09-10 00:21:47 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
2013-06-06 12:18:22 +08:00
|
|
|
{{/if}}
|
2013-09-10 00:21:47 +08:00
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
2013-09-10 00:21:47 +08:00
|
|
|
{{/if}}
|
2013-02-06 03:16:51 +08:00
|
|
|
|
2013-05-08 09:58:34 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.users.active'}}</div>
|
2013-05-08 09:58:34 +08:00
|
|
|
<div class='value'>
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if active}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'yes_value'}}
|
2013-05-08 09:58:34 +08:00
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'no_value'}}
|
2013-05-08 09:58:34 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if active}}
|
|
|
|
{{#if can_deactivate}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class='btn' {{action "deactivate" target="content"}}>{{i18n 'admin.user.deactivate_account'}}</button>
|
|
|
|
{{i18n 'admin.user.deactivate_explanation'}}
|
2013-05-08 09:58:34 +08:00
|
|
|
{{/if}}
|
|
|
|
{{else}}
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_send_activation_email}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "sendActivationEmail" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-envelope'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.send_activation_email'}}
|
2013-05-08 09:58:34 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_activate}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "activate" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-check'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.activate'}}
|
2013-05-08 09:58:34 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2013-10-23 03:53:08 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.api.key'}}</div>
|
2013-10-23 03:53:08 +08:00
|
|
|
|
|
|
|
{{#if api_key}}
|
|
|
|
<div class='long-value'>
|
|
|
|
{{api_key.key}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<button class='btn' {{action "regenerateApiKey"}}><i class="fa fa-undo"></i>{{i18n 'admin.api.regenerate'}}</button>
|
|
|
|
<button {{action "revokeApiKey"}} class="btn"><i class="fa fa-times"></i>{{i18n 'admin.api.revoke'}}</button>
|
2013-10-23 03:53:08 +08:00
|
|
|
</div>
|
|
|
|
{{else}}
|
|
|
|
<div class='value'>
|
|
|
|
—
|
|
|
|
</div>
|
|
|
|
<div class='controls'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<button {{action "generateApiKey"}} class="btn"><i class="fa fa-key"></i>{{i18n 'admin.api.generate'}}</button>
|
2013-10-23 03:53:08 +08:00
|
|
|
</div>
|
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.admin'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{admin}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='controls'>
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_revoke_admin}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "revokeAdmin" target="content"}}>
|
2014-08-25 13:20:59 +08:00
|
|
|
<i class='fa fa-shield'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.revoke_admin'}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_grant_admin}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "grantAdmin" target="content"}}>
|
2014-08-25 13:20:59 +08:00
|
|
|
<i class='fa fa-shield'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.grant_admin'}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</button>
|
2013-03-21 08:25:41 +08:00
|
|
|
{{/if}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.moderator'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{moderator}}</div>
|
2013-02-13 06:58:08 +08:00
|
|
|
<div class='controls'>
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_revoke_moderation}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "revokeModeration" target="content"}}>
|
2014-08-26 13:49:26 +08:00
|
|
|
<i class='fa fa-shield'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.revoke_moderation'}}
|
2013-02-13 06:58:08 +08:00
|
|
|
</button>
|
|
|
|
{{/if}}
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_grant_moderation}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "grantModeration" target="content"}}>
|
2014-08-26 13:49:26 +08:00
|
|
|
<i class='fa fa-shield'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.grant_moderation'}}
|
2013-02-13 06:58:08 +08:00
|
|
|
</button>
|
2013-03-21 08:25:41 +08:00
|
|
|
{{/if}}
|
2013-02-13 06:58:08 +08:00
|
|
|
</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
2013-07-01 22:22:21 +08:00
|
|
|
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'trust_level'}}</div>
|
2013-07-01 22:22:21 +08:00
|
|
|
<div class="value">
|
2014-06-11 22:57:30 +08:00
|
|
|
{{combo-box content=trustLevels value=trust_level nameProperty="detailedName"}}
|
2014-01-23 06:09:56 +08:00
|
|
|
{{#if dirty}}
|
|
|
|
<div>
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn ok no-text' {{action "saveTrustLevel" target="content"}}><i class='fa fa-check'></i></button>
|
|
|
|
<button class='btn cancel no-text' {{action "restoreTrustLevel" target="content"}}><i class='fa fa-times'></i></button>
|
2014-01-23 06:09:56 +08:00
|
|
|
</div>
|
|
|
|
{{/if}}
|
2013-07-01 22:22:21 +08:00
|
|
|
</div>
|
2014-09-30 11:12:33 +08:00
|
|
|
<div class="controls">
|
|
|
|
{{#if model.canLockTrustLevel}}
|
|
|
|
{{#if model.trust_level_locked}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<i title='{{i18n 'admin.user.trust_level_locked_tip'}}' {{action "lockTrustLevel" false target="model"}} class='fa fa-lock'></i> <button class="btn" {{action "lockTrustLevel" false target="model"}}>{{i18n 'admin.user.unlock_trust_level'}}</button>
|
2014-09-30 11:12:33 +08:00
|
|
|
{{else}}
|
2014-12-09 05:35:49 +08:00
|
|
|
<i title='{{i18n 'admin.user.trust_level_unlocked_tip'}}' class='fa fa-unlock'></i> <button class="btn" {{action "lockTrustLevel" true target="model"}}>{{i18n 'admin.user.lock_trust_level'}}</button>
|
2014-09-30 11:12:33 +08:00
|
|
|
{{/if}}
|
|
|
|
{{/if}}
|
|
|
|
{{#if tl3Requirements}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{#link-to 'adminUser.tl3Requirements' this class="btn"}}{{i18n 'admin.user.trust_level_3_requirements'}}{{/link-to}}
|
2014-09-30 11:12:33 +08:00
|
|
|
{{/if}}
|
|
|
|
|
|
|
|
</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-07-01 22:22:21 +08:00
|
|
|
|
2014-01-15 01:48:57 +08:00
|
|
|
<div {{bind-attr class=":display-row isSuspended:highlight-danger"}}>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.suspended'}}</div>
|
2013-11-08 02:53:32 +08:00
|
|
|
<div class='value'>{{isSuspended}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='controls'>
|
2013-11-08 02:53:32 +08:00
|
|
|
{{#if isSuspended}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn btn-danger' {{action "unsuspend" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-ban'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.unsuspend'}}
|
2013-03-21 08:25:41 +08:00
|
|
|
</button>
|
2013-11-08 02:53:32 +08:00
|
|
|
{{suspendDuration}}
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.suspended_explanation'}}
|
2013-02-06 03:16:51 +08:00
|
|
|
{{else}}
|
2013-11-08 02:53:32 +08:00
|
|
|
{{#if canSuspend}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn btn-danger' {{action "showSuspendModal" this}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-ban'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.suspend'}}
|
2013-02-06 03:16:51 +08:00
|
|
|
</button>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.suspended_explanation'}}
|
2013-02-06 03:16:51 +08:00
|
|
|
{{/if}}
|
|
|
|
{{/if}}
|
|
|
|
</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-11-01 22:47:03 +08:00
|
|
|
|
2013-11-08 02:53:32 +08:00
|
|
|
{{#if isSuspended}}
|
2013-11-06 03:41:04 +08:00
|
|
|
<div class='display-row highlight-danger'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.suspended_by'}}</div>
|
2013-11-06 03:41:04 +08:00
|
|
|
<div class='value'>
|
2014-03-24 22:19:15 +08:00
|
|
|
{{#link-to 'adminUser' suspendedBy}}{{avatar suspendedBy imageSize="tiny"}}{{/link-to}}
|
|
|
|
{{#link-to 'adminUser' suspendedBy}}{{suspendedBy.username}}{{/link-to}}
|
2013-11-01 22:47:03 +08:00
|
|
|
</div>
|
2013-11-06 03:41:04 +08:00
|
|
|
<div class='controls'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<b>{{i18n 'admin.user.suspend_reason'}}</b>:
|
2013-11-08 02:53:32 +08:00
|
|
|
{{suspend_reason}}
|
2013-11-06 03:41:04 +08:00
|
|
|
</div>
|
2013-11-01 22:47:03 +08:00
|
|
|
</div>
|
|
|
|
{{/if}}
|
|
|
|
|
2014-01-15 01:48:57 +08:00
|
|
|
<div class='display-row' {{bind-attr class=":display-row blocked:highlight-danger"}}>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.blocked'}}</div>
|
2013-05-31 23:41:40 +08:00
|
|
|
<div class='value'>{{blocked}}</div>
|
|
|
|
<div class='controls'>
|
|
|
|
{{#if blocked}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn' {{action "unblock" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-thumbs-o-up'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.unblock'}}
|
2013-05-31 23:41:40 +08:00
|
|
|
</button>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.block_explanation'}}
|
2013-05-31 23:41:40 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section class='details'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<h1>{{i18n 'admin.user.activity'}}</h1>
|
2013-02-06 03:16:51 +08:00
|
|
|
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'created'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{{created_at_age}}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.users.last_emailed'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{{last_emailed_age}}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'last_seen'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{{last_seen_age}}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.like_count'}}</div>
|
2014-08-23 03:23:10 +08:00
|
|
|
<div class='value'>{{like_given_count}} / {{like_count}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.topics_entered'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{topics_entered}}</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.post_count'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{post_count}}</div>
|
2013-02-07 15:11:56 +08:00
|
|
|
<div class='controls'>
|
2013-05-21 03:27:58 +08:00
|
|
|
{{#if can_delete_all_posts}}
|
2014-10-01 00:36:23 +08:00
|
|
|
<button class='btn btn-danger' {{action "deleteAllPosts" target="content"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class='fa fa-trash-o'></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.delete_all_posts'}}
|
2013-02-07 15:11:56 +08:00
|
|
|
</button>
|
2014-02-21 01:29:40 +08:00
|
|
|
{{else}}
|
|
|
|
{{deleteAllPostsExplanation}}
|
2013-02-07 15:11:56 +08:00
|
|
|
{{/if}}
|
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.posts_read_count'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{posts_read_count}}</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2014-09-08 23:11:56 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.warnings_received_count'}}</div>
|
2014-09-08 23:11:56 +08:00
|
|
|
<div class='value'>{{warnings_received_count}}</div>
|
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.flags_given_received_count'}}</div>
|
2014-08-23 03:23:10 +08:00
|
|
|
<div class='value'>{{flags_given_count}} / {{flags_received_count}}</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.private_topics_count'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{private_topics_count}}</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.time_read'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{{time_read}}}</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'user.invited.days_visited'}}</div>
|
2013-05-21 03:27:58 +08:00
|
|
|
<div class='value'>{{{days_visited}}}</div>
|
2013-03-21 08:25:41 +08:00
|
|
|
</div>
|
2013-02-06 03:16:51 +08:00
|
|
|
</section>
|
|
|
|
|
2014-08-23 08:34:48 +08:00
|
|
|
{{#if single_sign_on_record}}
|
|
|
|
<section class='details'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<h1>{{i18n 'admin.user.sso.title'}}</h1>
|
2014-08-23 08:34:48 +08:00
|
|
|
|
|
|
|
{{#with single_sign_on_record}}
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.sso.external_id'}}</div>
|
2014-08-23 08:34:48 +08:00
|
|
|
<div class='value'>{{external_id}}</div>
|
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.sso.external_username'}}</div>
|
2014-08-23 08:34:48 +08:00
|
|
|
<div class='value'>{{external_username}}</div>
|
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.sso.external_name'}}</div>
|
2014-08-23 08:34:48 +08:00
|
|
|
<div class='value'>{{external_name}}</div>
|
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.sso.external_email'}}</div>
|
2014-08-23 08:34:48 +08:00
|
|
|
<div class='value'>{{external_email}}</div>
|
|
|
|
</div>
|
|
|
|
<div class='display-row'>
|
2014-12-09 05:35:49 +08:00
|
|
|
<div class='field'>{{i18n 'admin.user.sso.external_avatar_url'}}</div>
|
2014-08-23 08:34:48 +08:00
|
|
|
<div class='value'>{{external_avatar_url}}</div>
|
|
|
|
</div>
|
|
|
|
{{/with}}
|
|
|
|
</section>
|
|
|
|
{{/if}}
|
|
|
|
|
2013-04-12 04:04:20 +08:00
|
|
|
<section>
|
|
|
|
<hr/>
|
2014-10-01 00:36:23 +08:00
|
|
|
<button {{bind-attr class=":btn :btn-danger :pull-right deleteForbidden:hidden"}} {{action "destroy" target="content"}} {{bind-attr disabled="deleteForbidden"}}>
|
2013-12-10 05:27:49 +08:00
|
|
|
<i class="fa fa-exclamation-triangle"></i>
|
2014-12-09 05:35:49 +08:00
|
|
|
{{i18n 'admin.user.delete'}}
|
2013-04-12 04:04:20 +08:00
|
|
|
</button>
|
2013-12-21 00:36:43 +08:00
|
|
|
{{#if deleteExplanation}}
|
|
|
|
<div class="clearfix"></div>
|
|
|
|
<div class="pull-right"><i class="fa fa-exclamation-triangle"></i> {{deleteExplanation}}</div>
|
|
|
|
{{/if}}
|
2013-04-12 04:04:20 +08:00
|
|
|
</section>
|
|
|
|
<div class="clearfix"></div>
|