Файл: pages/profile.view.php
Строк: 155
<?php
/**
* Анкета пользователя.
* В данном файле используются регионы (region).
* Для корректной работы с ними рекомендую использовать PhpStorm
*/
include_once '../sys/inc/start.php';
$doc = new document ();
$doc->title = __('Анкета');
$ank = (empty($_GET ['id'])) ? $user : new user((int)$_GET ['id']);
if (!$ank->group)
$doc->access_denied(__('Нет данных'));
$doc->title = ($user->id && $ank->id == $user->id)? __('Моя анкета') : __('Анкета "%s"', $ank->login);
$doc->description = __('Анкета "%s"', $ank->login);
$doc->keywords [] = $ank->login;
//endregion
//region Бан
if ($ank->is_ban) {
$ban_listing = new listing();
$q = mysql_query("SELECT * FROM `ban` WHERE `id_user` = '$ank->id' AND `time_start` < '" . TIME . "' AND (`time_end` is NULL OR `time_end` > '" . TIME . "') ORDER BY `id` DESC");
while ($c = mysql_fetch_assoc($q)) {
$post = $ban_listing->post();
$adm = new user($c ['id_adm']);
$post->title = ($adm->group <= $user->group ? '<a href="/profile.view.php?id=' . $adm->id . '">' . $adm->nick . '</a>: ' : '') . text::toValue($c ['code']);
if ($c ['time_start'] && TIME < $c ['time_start']) {
$post->content[] = '[b]' . __('Начало действия') . ':[/b]' . misc::when($c ['time_start']) . "n";
}
if ($c['time_end'] === NULL) {
$post->content[] = '[b]' . __('Пожизненная блокировка') . "[/b]n";
} elseif (TIME < $c['time_end']) {
$post->content[] = __('Осталось: %s', misc::when($c['time_end'])) . "n";
}
if ($c['link']) {
$post->content[] = __('Ссылка на нарушение: %s', $c['link']) . "n";
}
$post->content[] = __('Комментарий: %s', $c['comment']) . "n";
}
$ban_listing->display();
}
//endregion
//region Профиль пользователя
$listing = new listing();
//region Имя
if ($ank->realname) {
$post = $listing->post();
$post->title = __('Имя');
$post->content = $ank->realname;
}
//region E-mail
if ($ank->email) {
if ($ank->is_friend($user) || $ank->vis_email) {
$post = $listing->post();
$post->title = 'E-mail';
$post->content = $ank->email;
if (preg_match("#@(mail|bk|inbox|list).ru$#i", $ank->email))
$post->icon = 'http://status.mail.ru/?' . $ank->email;
$post->url = 'mailto:' . $ank->email;
} else {
$post = $listing->post();
$post->title = 'E-mail';
$post->url = '/faq.php?info=hide&return=' . URL;
$post->content = __('Информация скрыта');
}
}
//region Регистрационнац E-mail
if ($ank->reg_mail) {
if ($user->group > $ank->group) {
$post = $listing->post();
$post->title = __('Регистрационный E-mail');
$post->content = $ank->reg_mail;
if (preg_match("#@(mail|bk|inbox|list).ru$#i", $ank->reg_mail))
$post->icon = 'http://status.mail.ru/?' . $ank->reg_mail;
$post->url = 'mailto:' . $ank->reg_mail;
}
}
//endregion
//region Последний визит
$post = $listing->post();
$post->title = __('Последний визит');
$post->content = misc::when($ank->last_visit);
//endregion
//region Всего переходов
$post = $listing->post();
$post->title = __('Всего переходов');
$post->content = $ank->conversions;
//endregion
//region Дата регистрации
$post = $listing->post();
$post->title = __('Дата регистрации');
$post->content = date('d-m-Y', $ank->reg_date);
//endregion
//region По приглашению от...
$q = mysql_query("SELECT `id_user` FROM `invations` WHERE `id_invite` = '$ank->id' LIMIT 1");
if (mysql_num_rows($q)) {
$inv = new user(mysql_result($q, 0, 'id_user'));
$post = $listing->post();
$post->title = text::toOutput(__('По приглашению от %s', '[user]' . $inv->id . '[/user]'));
}
//endregion
$listing->display();
//endregion
if ($user->group && $ank->id != $user->id) {
$doc->act(__('Написать сообщение'), "my.mail.php?id={$ank->id}");
if ($user->group > $ank->group) {
$doc->act(__('Доступные действия'), "/dpanel/user.actions.php?id={$ank->id}");
}
}
if ($user->group)
$doc->ret(__('Личное меню'), '/menu.user.php');