175 lines
6.6 KiB
PHTML
175 lines
6.6 KiB
PHTML
<div id="sidebar">
|
|
<div class="avatar-wrapper">
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'view', ['name' => $this->context->transport->user->name]) ?>">
|
|
<img src="<?php echo htmlspecialchars($this->context->transport->user->getAvatarUrl(140)) ?>" alt="<?php echo $this->context->transport->user->name ?>">
|
|
</a>
|
|
<h1><?php echo $this->context->transport->user->name ?></h1>
|
|
</div>
|
|
|
|
<div class="unit details">
|
|
<h1>details</h1>
|
|
|
|
<div class="key-value join-date">
|
|
<span class="key">Joined:</span>
|
|
<span class="value" title="<?php echo $val = date('Y-m-d', $this->context->transport->user->join_date) ?>"><?php echo $val ?></span>
|
|
</div>
|
|
|
|
<div class="key-value access-rank">
|
|
<span class="key">Access rank:</span>
|
|
<span class="value" title="<?php echo $val = TextHelper::camelCaseToHumanCase(AccessRank::toString($this->context->transport->user->access_rank)) ?>"><?php echo $val ?></span>
|
|
</div>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::ViewUserEmail, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user))): ?>
|
|
<div class="key-value email">
|
|
<span class="key">E-mail:</span>
|
|
<span class="value" title="<?php echo $val = ($this->context->transport->user->email_unconfirmed ? '(unconfirmed) ' . $this->context->transport->user->email_unconfirmed : $this->context->transport->user->email_confirmed ?: 'none specified') ?>"><?php echo $val ?></span>
|
|
<br>(only you and staff can see this)
|
|
</div>
|
|
<?php endif ?>
|
|
</div>
|
|
|
|
<div class="unit options">
|
|
<h1>options</h1>
|
|
|
|
<ul>
|
|
<?php
|
|
$userModificationPrivileges = [
|
|
Privilege::ChangeUserName,
|
|
Privilege::ChangeUserEmail,
|
|
Privilege::ChangeUserPassword,
|
|
Privilege::ChangeUserAccessRank,
|
|
];
|
|
$userModificationPrivileges = array_fill_keys($userModificationPrivileges, false);
|
|
foreach (array_keys($userModificationPrivileges) as $privilege)
|
|
{
|
|
|
|
if (PrivilegesHelper::confirm($privilege, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user)))
|
|
$userModificationPrivileges[$privilege] = true;
|
|
}
|
|
$canModifyAnything = count(array_filter($userModificationPrivileges)) > 0;
|
|
?>
|
|
|
|
<?php if ($canModifyAnything): ?>
|
|
<li class="edit">
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'edit', ['name' => $this->context->transport->user->name, 'tab' => 'edit']) ?>">
|
|
Edit account settings
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::DeleteUser, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user))): ?>
|
|
<li class="edit">
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'delete', ['name' => $this->context->transport->user->name, 'tab' => 'delete']) ?>">
|
|
Delete account
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::BanUser, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user))): ?>
|
|
<?php if (!$this->context->transport->user->banned): ?>
|
|
<li class="ban">
|
|
<a class="simple-action" href="<?php echo \Chibi\UrlHelper::route('user', 'ban', ['name' => $this->context->transport->user->name]) ?>" data-confirm-text="Are you sure?">
|
|
Ban user
|
|
</a>
|
|
</li>
|
|
<?php else: ?>
|
|
<li class="unban">
|
|
<a class="simple-action" href="<?php echo \Chibi\UrlHelper::route('user', 'unban', ['name' => $this->context->transport->user->name]) ?>" data-confirm-text="Are you sure?">
|
|
Unban user
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
<?php endif ?>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::AcceptUserRegistration) and !$this->context->transport->user->staff_confirmed and $this->config->registration->staffActivation): ?>
|
|
<li class="accept-registration">
|
|
<a class="simple-action" href="<?php echo \Chibi\UrlHelper::route('user', 'accept-registration', ['name' => $this->context->transport->user->name]) ?>">
|
|
Accept registration
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
</ul>
|
|
|
|
<script type="text/javascript">
|
|
if (!$('.options ul li').length)
|
|
$('.options').hide();
|
|
</script>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="inner-content">
|
|
<div class="tabs">
|
|
<nav>
|
|
<ul>
|
|
<?php if ($this->context->transport->tab == 'favs'): ?>
|
|
<li class="selected favs">
|
|
<?php else: ?>
|
|
<li class="favs">
|
|
<?php endif ?>
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'view', ['name' => $this->context->transport->user->name, 'tab' => 'favs', 'page' => 1]) ?>">
|
|
Favs
|
|
</a>
|
|
</li>
|
|
|
|
<?php if ($this->context->transport->tab == 'uploads'): ?>
|
|
<li class="selected uploads">
|
|
<?php else: ?>
|
|
<li class="uploads">
|
|
<?php endif ?>
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'view', ['name' => $this->context->transport->user->name, 'tab' => 'uploads', 'page' => 1]) ?>">
|
|
Uploads
|
|
</a>
|
|
</li>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::ChangeUserSettings, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user))): ?>
|
|
<?php if ($this->context->transport->tab == 'settings'): ?>
|
|
<li class="selected settings">
|
|
<?php else: ?>
|
|
<li class="settings">
|
|
<?php endif ?>
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'settings', ['name' => $this->context->transport->user->name]) ?>">
|
|
Browsing settings
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
|
|
<?php if ($canModifyAnything): ?>
|
|
<?php if ($this->context->transport->tab == 'edit'): ?>
|
|
<li class="selected edit">
|
|
<?php else: ?>
|
|
<li class="edit">
|
|
<?php endif ?>
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'edit', ['name' => $this->context->transport->user->name]) ?>">
|
|
Account settings
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
|
|
<?php if (PrivilegesHelper::confirm(Privilege::DeleteUser, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user))): ?>
|
|
<?php if ($this->context->transport->tab == 'delete'): ?>
|
|
<li class="selected delete">
|
|
<?php else: ?>
|
|
<li class="delete">
|
|
<?php endif ?>
|
|
<a href="<?php echo \Chibi\UrlHelper::route('user', 'delete', ['name' => $this->context->transport->user->name]) ?>">
|
|
Delete account
|
|
</a>
|
|
</li>
|
|
<?php endif ?>
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
|
|
<?php if (isset($this->context->transport->posts)): ?>
|
|
<?php $this->renderFile('post-list') ?>
|
|
<?php endif ?>
|
|
|
|
<?php if ($this->context->transport->tab == 'settings'): ?>
|
|
<?php $this->renderFile('user-settings') ?>
|
|
<?php elseif ($this->context->transport->tab == 'edit'): ?>
|
|
<?php $this->renderFile('user-edit') ?>
|
|
<?php elseif ($this->context->transport->tab == 'delete'): ?>
|
|
<?php $this->renderFile('user-delete') ?>
|
|
<?php endif ?>
|
|
|
|
</div>
|