本文整理汇总了PHP中Router::Location方法的典型用法代码示例。如果您正苦于以下问题:PHP Router::Location方法的具体用法?PHP Router::Location怎么用?PHP Router::Location使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Router
的用法示例。
在下文中一共展示了Router::Location方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: EventShowComment
/**
* Обрабатывает ссылку на конкретный комментарий, определят к какому топику он относится и перенаправляет на него
* Актуально при использовании постраничности комментариев
*/
protected function EventShowComment()
{
$iCommentId = $this->sCurrentEvent;
/**
* Проверяем к чему относится комментарий
*/
if (!($oComment = $this->Comment_GetCommentById($iCommentId))) {
return parent::EventNotFound();
}
if ($oComment->getTargetType() != 'topic' or !($oTopic = $oComment->getTarget())) {
return parent::EventNotFound();
}
/**
* Определяем необходимую страницу для отображения комментария
*/
if (!Config::Get('module.comment.use_nested') or !Config::Get('module.comment.nested_per_page')) {
Router::Location($oTopic->getUrl() . '#comment' . $oComment->getId());
}
$iPage = $this->Comment_GetPageCommentByTargetId($oComment->getTargetId(), $oComment->getTargetType(), $oComment);
if ($iPage == 1) {
Router::Location($oTopic->getUrl() . '#comment' . $oComment->getId());
} else {
Router::Location($oTopic->getUrl() . "?cmtpage={$iPage}#comment" . $oComment->getId());
}
exit;
}
示例2: Init
public function Init()
{
E::ModuleViewer()->SetResponseAjax('json');
if (!E::IsAdmin()) {
Router::Location('error/404/');
}
$this->oUserCurrent = E::User();
}
示例3: EventMakeAdm
protected function EventMakeAdm()
{
if (!$this->User_IsAuthorization()) {
return parent::EventNotFound();
}
if (!$this->User_GetUserCurrent()->isAdministrator()) {
return parent::EventNotFound();
}
$aPair = $this->PluginAdm_Admalgoritm_getPair();
Router::Location('admin');
}
示例4: EventAlbums
protected function EventAlbums()
{
$sUserLogin = $this->sCurrentEvent;
if (!($this->oUserProfile = $this->User_GetUserByLogin($sUserLogin))) {
return parent::EventNotFound();
}
$iPage = $this->GetParamEventMatch(1, 2) ? $this->GetParamEventMatch(1, 2) : 1;
/**
* Выполняем редирект на новый URL, в новых версиях LS экшен "my" будет удален
*/
$sPage = $iPage == 1 ? '' : "page{$iPage}/";
Router::Location($this->oUserProfile->getUserWebPath() . 'created/albums/' . $sPage);
}
示例5: EventUnsubscribe
/**
* Отписка от подписки
*/
protected function EventUnsubscribe()
{
if ($oSubscribe = $this->Subscribe_GetSubscribeByKey($this->getParam(0)) and $oSubscribe->getStatus() == 1) {
$oSubscribe->setStatus(0);
$oSubscribe->setDateRemove(date("Y-m-d H:i:s"));
$this->Subscribe_UpdateSubscribe($oSubscribe);
$this->Message_AddNotice($this->Lang_Get('subscribe_change_ok'), null, true);
}
/**
* Получаем URL для редиректа
*/
if (!($sUrl = $this->Subscribe_GetUrlTarget($oSubscribe->getTargetType(), $oSubscribe->getTargetId()))) {
$sUrl = Router::GetPath('index');
}
Router::Location($sUrl);
}
示例6: EventPagesAction
protected function EventPagesAction($sAdminAction = null)
{
if ($sAdminAction) {
$oPage = $this->PluginPage_Page_GetPageById($this->_getRequestCheck('page_id'));
if ($oPage) {
if ($sAdminAction == 'activate' or $sAdminAction == 'deactivate') {
$oPage->setActive($sAdminAction == 'activate' ? 1 : 0);
if ($this->PluginPage_Page_UpdatePage($oPage)) {
$this->Message_AddNotice($this->Lang_Get('adm_action_ok'), $this->Lang_Get('attention'), true);
} else {
$this->Message_AddError($this->Lang_Get('adm_action_err'), $this->Lang_Get('error'), true);
}
}
}
}
Router::Location(Router::GetPath('admin') . 'pages/');
}
示例7: EventDelete
/**
* Удаление топика
*
* @return void
*/
protected function EventDelete()
{
$this->Security_ValidateSendForm();
// * Получаем номер топика из УРЛ и проверяем существует ли он
$sTopicId = $this->GetParam(0);
if (!($oTopic = $this->Topic_GetTopicById($sTopicId))) {
return parent::EventNotFound();
}
// * проверяем есть ли право на удаление топика
if (!$this->ACL_IsAllowDeleteTopic($oTopic, $this->oUserCurrent)) {
return parent::EventNotFound();
}
// * Гарантировано удаляем топик и его зависимости
$this->Hook_Run('topic_delete_before', array('oTopic' => $oTopic));
$this->PluginAceadminpanel_Admin_DelTopic($oTopic->GetId());
$this->Hook_Run('topic_delete_after', array('oTopic' => $oTopic));
// * Перенаправляем на страницу со списком топиков из блога этого топика
Router::Location($oTopic->getBlog()->getUrlFull());
}
示例8: EventUnsubscribe
/**
* Отписка от подписки
*/
protected function EventUnsubscribe()
{
/**
* Получаем подписку по ключу
*/
if ($oSubscribe = $this->Subscribe_GetSubscribeByKey($this->getParam(0)) and $oSubscribe->getStatus() == 1) {
/**
* Отписываем пользователя
*/
$oSubscribe->setStatus(0);
$oSubscribe->setDateRemove(date("Y-m-d H:i:s"));
$this->Subscribe_UpdateSubscribe($oSubscribe);
$this->Message_AddNotice($this->Lang_Get('common.success.save'), null, true);
}
/**
* Получаем URL для редиректа
*/
if (!($sUrl = $this->Subscribe_GetUrlTarget($oSubscribe->getTargetType(), $oSubscribe->getTargetId()))) {
$sUrl = Router::GetPath('index');
}
Router::Location($sUrl);
}
示例9: EventSeopackDelete
protected function EventSeopackDelete()
{
$this->sMainMenuItem = 'content';
E::ModuleSecurity()->ValidateSendForm();
if ($oSeopack = E::ModuleSeopack()->GetSeopackBySeopackId($this->GetParam(0))) {
$oSeopack->Delete();
E::ModuleMessage()->AddNotice(E::ModuleLang()->Get('plugin.seopack.seopack_admin_action_delete_ok') . null, true);
Router::Location('admin/seopack/');
} else {
E::ModuleMessage()->AddError(E::ModuleLang()->Get('plugin.seopack.seopack_admin_action_delete_error'), E::ModuleLang()->Get('error'));
}
$this->SetTemplateAction('seopack_list');
}
示例10: SubmitManagePlugin
/**
* Активация\деактивация плагина
*
* @param string $sPlugin
* @param string $sAction
*/
protected function SubmitManagePlugin($sPlugin, $sAction)
{
if (!in_array($sAction, array('activate', 'deactivate'))) {
$this->Message_AddError($this->Lang_Get('plugins_unknown_action'), $this->Lang_Get('error'), true);
Router::Location(Router::GetPath('plugins'));
}
/**
* Активируем\деактивируем плагин
*/
if ($bResult = $this->Plugin_Toggle($sPlugin, $sAction)) {
$this->Message_AddNotice($this->Lang_Get('plugins_action_ok'), $this->Lang_Get('attention'), true);
} else {
if (!($aMessages = $this->Message_GetErrorSession()) or !count($aMessages)) {
$this->Message_AddErrorSingle($this->Lang_Get('system_error'), $this->Lang_Get('error'), true);
}
}
/**
* Возвращаем на страницу управления плагинами
*/
Router::Location(Router::GetPath('admin') . 'plugins/');
}
示例11: PrepareResults
/**
* Поиск и формирование результата
*
* @param array $aReq
* @param int $iLimit
*
* @return array|bool
*/
protected function PrepareResults($aReq, $iLimit)
{
// * Количество результатов по типам
$aRes = array();
foreach ($this->sTypesEnabled as $sType => $aExtra) {
$aRes['aCounts'][$sType] = intval(E::ModuleSphinx()->GetNumResultsByType($aReq['q'], $sType, $aExtra));
}
if ($aRes['aCounts'][$aReq['sType']] == 0) {
// * Объектов необходимого типа не найдено
unset($this->sTypesEnabled[$aReq['sType']]);
// * Проверяем отсальные типы
foreach (array_keys($this->sTypesEnabled) as $sType) {
if ($aRes['aCounts'][$sType]) {
Router::Location(Router::GetPath('search') . $sType . '/?q=' . $aReq['q']);
}
}
} elseif (($aReq['iPage'] - 1) * $iLimit <= $aRes['aCounts'][$aReq['sType']]) {
// * Ищем
$this->aSphinxRes = E::ModuleSphinx()->FindContent($aReq['q'], $aReq['sType'], ($aReq['iPage'] - 1) * $iLimit, $iLimit, $this->sTypesEnabled[$aReq['sType']]);
// * Возможно демон Сфинкса не доступен
if (false === $this->aSphinxRes) {
return false;
}
$this->bIsResults = true;
// * Формируем постраничный вывод
$aPaging = E::ModuleViewer()->MakePaging($aRes['aCounts'][$aReq['sType']], $aReq['iPage'], $iLimit, Config::Get('pagination.pages.count'), Router::GetPath('search') . $aReq['sType'], array('q' => $aReq['q']));
E::ModuleViewer()->Assign('aPaging', $aPaging);
}
$this->SetTemplateAction('results');
E::ModuleViewer()->AddHtmlTitle($aReq['q']);
E::ModuleViewer()->Assign('bIsResults', $this->bIsResults);
return $aRes;
}
示例12: EventExit
/**
* Обрабатываем процесс разлогинивания
*
*/
protected function EventExit()
{
$this->Security_ValidateSendForm();
$this->User_Logout();
//$this->Viewer_Assign('bRefreshToHome',true);
Router::Location(Config::Get('path.root.web') . '/');
}
示例13: EventReminder
/**
* Обработка напоминания пароля, подтверждение смены пароля
*
* @return string|null
*/
protected function EventReminder()
{
if (E::IsUser()) {
// Для авторизованного юзера восстанавливать нечего
Router::Location('/');
} else {
// Устанавливаем title страницы
E::ModuleViewer()->AddHtmlTitle(E::ModuleLang()->Get('password_reminder'));
$this->_eventRecovery(false);
}
}
示例14: SubmitManagePlugin
/**
* Активация\деактивация плагина
*
* @param string $sPlugin Имя плагина
* @param string $sAction Действие
*/
protected function SubmitManagePlugin($sPlugin, $sAction)
{
$this->Security_ValidateSendForm();
if (!in_array($sAction, array('activate', 'deactivate', 'remove', 'apply_update'))) {
$this->Message_AddError($this->Lang_Get('admin.plugins.notices.unknown_action'), $this->Lang_Get('common.error.error'), true);
Router::Location(Router::GetPath('admin/plugins'));
}
$bResult = false;
/**
* Активируем\деактивируем плагин
*/
if ($sAction == 'activate') {
$bResult = $this->PluginManager_ActivatePlugin($sPlugin);
} elseif ($sAction == 'deactivate') {
$bResult = $this->PluginManager_DeactivatePlugin($sPlugin);
} elseif ($sAction == 'remove') {
$bResult = $this->PluginManager_RemovePlugin($sPlugin);
} elseif ($sAction == 'apply_update') {
$this->PluginManager_ApplyPluginUpdate($sPlugin);
$bResult = true;
}
if ($bResult) {
$this->Message_AddNotice($this->Lang_Get('admin.plugins.notices.action_ok'), $this->Lang_Get('common.attention'), true);
} else {
if (!($aMessages = $this->Message_GetErrorSession()) or !count($aMessages)) {
$this->Message_AddErrorSingle($this->Lang_Get('common.error.system.base'), $this->Lang_Get('common.error.error'), true);
}
}
/**
* Возвращаем на страницу управления плагинами
*/
Router::Location(Router::GetPath('admin') . 'plugins/');
}
示例15: EventAdd
/**
* Страница создания письма
*/
protected function EventAdd()
{
$this->sMenuSubItemSelect = 'add';
$this->Viewer_AddHtmlTitle($this->Lang_Get('talk_menu_inbox_create'));
/**
* Получаем список друзей
*/
$aUsersFriend = $this->User_GetUsersFriend($this->oUserCurrent->getId());
if ($aUsersFriend['collection']) {
$this->Viewer_Assign('aUsersFriend', $aUsersFriend['collection']);
}
/**
* Проверяем отправлена ли форма с данными
*/
if (!isPost('submit_talk_add')) {
return false;
}
/**
* Проверка корректности полей формы
*/
if (!$this->checkTalkFields()) {
return false;
}
/**
* Проверяем разрешено ли отправлять инбокс по времени
*/
if (!$this->ACL_CanSendTalkTime($this->oUserCurrent)) {
$this->Message_AddErrorSingle($this->Lang_Get('talk_time_limit'), $this->Lang_Get('error'));
return false;
}
/**
* Отправляем письмо
*/
if ($oTalk = $this->Talk_SendTalk($this->Text_Parser(strip_tags(getRequestStr('talk_title'))), $this->Text_Parser(getRequestStr('talk_text')), $this->oUserCurrent, $this->aUsersId)) {
Router::Location(Router::GetPath('talk') . 'read/' . $oTalk->getId() . '/');
} else {
$this->Message_AddErrorSingle($this->Lang_Get('system_error'));
return Router::Action('error');
}
}