2014-02-01 11:17:02 +01:00
<?php
LayoutHelper::setSubTitle($this->context->transport->user->name);
LayoutHelper::addStylesheet('user-view.css');
?>
2013-10-14 10:22:53 +02:00
< div id = "sidebar" >
< div class = "avatar-wrapper" >
< a href = " <?php echo \Chibi\UrlHelper :: route ( 'user' , 'view' , [ 'name' => $this -> context -> transport -> user -> name ]) ?> " >
2013-10-15 00:41:04 +02:00
< img src = " <?php echo htmlspecialchars ( $this -> context -> transport -> user -> getAvatarUrl ( 140 )) ?> " alt = " <?php echo $this -> context -> transport -> user -> name ?> " >
2013-10-14 10:22:53 +02:00
< / a >
< h1 > <?php echo $this -> context -> transport -> user -> name ?> </ h1 >
< / div >
2013-10-19 22:56:56 +02:00
< div class = "unit details" >
2013-10-15 00:41:04 +02:00
< h1 > details< / h1 >
2013-10-15 13:14:48 +02:00
< div class = "key-value join-date" >
2013-10-14 10:22:53 +02:00
< span class = "key" > Joined:< / span >
2014-02-16 13:10:29 +01:00
< span class = "value" title = " <?php echo TextHelper :: formatDate ( $this -> context -> transport -> user -> joinDate , true ) ?> " >
<?php echo TextHelper :: formatDate ( $this -> context -> transport -> user -> joinDate , false ) ?>
< / span >
2013-10-14 10:22:53 +02:00
< / div >
2014-02-13 09:10:24 +01:00
< div class = "key-value last-login" >
< span class = "key" > Last login:< / span >
2014-02-16 13:10:29 +01:00
< span class = "value" title = " <?php echo TextHelper :: formatDate ( $this -> context -> transport -> user -> lastLoginDate , true ) ?> " >
<?php echo TextHelper :: formatDate ( $this -> context -> transport -> user -> lastLoginDate , false ) ?>
< / span >
2014-02-13 09:10:24 +01:00
< / div >
2013-10-15 13:14:48 +02:00
< div class = "key-value access-rank" >
2013-10-14 10:22:53 +02:00
< span class = "key" > Access rank:< / span >
2014-02-16 13:10:29 +01:00
< span class = "value" title = " <?php echo $val = TextHelper :: camelCaseToHumanCase ( AccessRank :: toString ( $this -> context -> transport -> user -> accessRank )) ?> " >
<?php echo $val ?>
< / span >
2013-10-14 10:22:53 +02:00
< / div >
2013-10-15 13:14:48 +02:00
2013-10-20 19:19:52 +02:00
<?php if ( PrivilegesHelper :: confirm ( Privilege :: ViewUserEmail , PrivilegesHelper :: getIdentitySubPrivilege ( $this -> context -> transport -> user ))) : ?>
2013-10-15 13:14:48 +02:00
< div class = "key-value email" >
< span class = "key" > E-mail:< / span >
2014-02-16 13:10:29 +01:00
< span class = "value" title = " <?php echo $val = ( $this -> context -> transport -> user -> emailUnconfirmed
? '(unconfirmed) ' . $this->context->transport->user->emailUnconfirmed
: $this->context->transport->user->emailConfirmed ?: 'none specified') ?>">
<?php echo $val ?>
< / span >
2013-10-16 20:26:48 +02:00
< br > (only you and staff can see this)
2013-10-15 13:14:48 +02:00
< / div >
<?php endif ?>
2013-10-14 10:22:53 +02:00
< / div >
2013-10-15 00:41:04 +02:00
2013-11-30 00:07:23 +01:00
<?php
$userModificationPrivileges = [
Privilege::ChangeUserName,
Privilege::ChangeUserEmail,
Privilege::ChangeUserPassword,
Privilege::ChangeUserAccessRank,
];
$userModificationPrivileges = array_fill_keys($userModificationPrivileges, false);
foreach (array_keys($userModificationPrivileges) as $privilege)
{
2013-10-15 00:41:04 +02:00
2013-11-30 00:07:23 +01:00
if (PrivilegesHelper::confirm($privilege, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user)))
$userModificationPrivileges[$privilege] = true;
}
$canModifyAnything = count(array_filter($userModificationPrivileges)) > 0;
2013-10-15 00:41:04 +02:00
2013-11-30 00:07:23 +01:00
$options = [];
2013-10-15 00:41:04 +02:00
2013-11-30 00:07:23 +01:00
if ($canModifyAnything)
{
$options []=
[
'class' => 'edit',
'text' => 'Edit account settings',
'link' => \Chibi\UrlHelper::route('user', 'edit', ['name' => $this->context->transport->user->name, 'tab' => 'edit']),
];
}
2013-10-15 00:41:04 +02:00
2014-02-17 19:50:02 +01:00
if (PrivilegesHelper::confirm(Privilege::AcceptUserRegistration) and !$this->context->transport->user->staffConfirmed and $this->config->registration->staffActivation)
2013-11-30 00:07:23 +01:00
{
$options []=
[
2014-02-17 19:50:02 +01:00
'class' => 'accept-registration',
'text' => 'Accept registration',
'simple-action' => \Chibi\UrlHelper::route('user', 'accept-registration', ['name' => $this->context->transport->user->name]),
2013-11-30 00:07:23 +01:00
];
}
2013-10-19 19:34:15 +02:00
2013-11-30 00:07:23 +01:00
if (PrivilegesHelper::confirm(Privilege::FlagUser))
{
if ($this->context->flagged)
{
$options []=
[
'class' => 'flag',
'text' => 'Flagged',
'inactive' => true,
];
}
else
{
$options []=
[
'class' => 'flag',
'text' => 'Flag for moderator attention',
'simple-action' => \Chibi\UrlHelper::route('user', 'flag', ['name' => $this->context->transport->user->name]),
'data-confirm-text' => 'Are you sure you want to flag this user?',
];
}
}
2013-11-17 14:52:46 +01:00
2013-11-30 00:07:23 +01:00
if (PrivilegesHelper::confirm(Privilege::BanUser, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user)))
{
if (!$this->context->transport->user->banned)
{
$options []=
[
'class' => 'ban',
'text' => 'Ban user',
'simple-action' => \Chibi\UrlHelper::route('user', 'ban', ['name' => $this->context->transport->user->name]),
'data-confirm-text' => 'Are you sure?',
];
}
else
{
$options []=
[
'class' => 'unban',
'text' => 'Unban user',
'simple-action' => \Chibi\UrlHelper::route('user', 'unban', ['name' => $this->context->transport->user->name]),
'data-confirm-text' => 'Are you sure?',
];
}
}
2013-10-15 13:14:48 +02:00
2014-02-17 19:50:02 +01:00
if (PrivilegesHelper::confirm(Privilege::DeleteUser, PrivilegesHelper::getIdentitySubPrivilege($this->context->transport->user)))
2013-11-30 00:07:23 +01:00
{
$options []=
[
2014-02-17 19:50:02 +01:00
'class' => 'delete',
'text' => 'Delete account',
'link' => \Chibi\UrlHelper::route('user', 'delete', ['name' => $this->context->transport->user->name, 'tab' => 'delete']),
2013-11-30 00:07:23 +01:00
];
}
2013-10-15 00:41:04 +02:00
2013-11-30 00:07:23 +01:00
$this->context->options = $options;
$this->renderFile('sidebar-options');
?>
2013-10-14 10:22:53 +02:00
< / div >
< div id = "inner-content" >
2013-11-30 00:03:59 +01:00
< nav class = "tabs" >
< 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" >
2013-10-14 10:22:53 +02:00
<?php else : ?>
2013-11-30 00:03:59 +01:00
< li class = "settings" >
2013-10-14 10:22:53 +02:00
<?php endif ?>
2013-11-30 00:03:59 +01:00
< a href = " <?php echo \Chibi\UrlHelper :: route ( 'user' , 'settings' , [ 'name' => $this -> context -> transport -> user -> name ]) ?> " >
Browsing settings
2013-10-14 10:22:53 +02:00
< / a >
< / li >
2013-11-30 00:03:59 +01:00
<?php endif ?>
2013-10-14 10:22:53 +02:00
2013-11-30 00:03:59 +01:00
<?php if ( $canModifyAnything ) : ?>
<?php if ( $this -> context -> transport -> tab == 'edit' ) : ?>
< li class = "selected edit" >
2013-10-14 10:22:53 +02:00
<?php else : ?>
2013-11-30 00:03:59 +01:00
< li class = "edit" >
2013-10-14 10:22:53 +02:00
<?php endif ?>
2013-11-30 00:03:59 +01:00
< a href = " <?php echo \Chibi\UrlHelper :: route ( 'user' , 'edit' , [ 'name' => $this -> context -> transport -> user -> name ]) ?> " >
Account settings
2013-10-14 10:22:53 +02:00
< / a >
< / li >
2013-11-30 00:03:59 +01:00
<?php endif ?>
2013-10-15 00:41:04 +02:00
2013-11-30 00:03:59 +01:00
<?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" >
2013-10-15 13:14:48 +02:00
<?php endif ?>
2013-11-30 00:03:59 +01:00
< a href = " <?php echo \Chibi\UrlHelper :: route ( 'user' , 'delete' , [ 'name' => $this -> context -> transport -> user -> name ]) ?> " >
Delete account
< / a >
< / li >
<?php endif ?>
< / ul >
< / nav >
2013-10-14 10:22:53 +02:00
2014-02-16 11:44:42 +01:00
< div class = "tab-content" >
<?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 >
2013-10-15 00:41:04 +02:00
2013-10-14 10:22:53 +02:00
< / div >