本文整理汇总了PHP中Action::EventNotFound方法的典型用法代码示例。如果您正苦于以下问题:PHP Action::EventNotFound方法的具体用法?PHP Action::EventNotFound怎么用?PHP Action::EventNotFound使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Action
的用法示例。
在下文中一共展示了Action::EventNotFound方法的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()
{
if (!$this->User_IsAuthorization() or !($oUserCurrent = $this->User_GetUserCurrent()) or !$oUserCurrent->isAdministrator()) {
return parent::EventNotFound();
}
$this->oUserCurrent = $oUserCurrent;
}
示例3: Init
/**
* Инициализация
*
*/
public function Init()
{
// * Доступ только у авторизованных пользователей
$this->oUserCurrent = E::ModuleUser()->GetUserCurrent();
if (!$this->oUserCurrent) {
parent::EventNotFound();
}
$this->SetDefaultEvent('index');
E::ModuleViewer()->Assign('sMenuItemSelect', 'feed');
}
示例4: EventDownloadFile
public function EventDownloadFile()
{
$this->SetTemplate(false);
$sTopicId = $this->GetParam(0);
$sFieldId = $this->GetParam(1);
E::ModuleSecurity()->ValidateSendForm();
if (!($oTopic = E::ModuleTopic()->GetTopicById($sTopicId))) {
return parent::EventNotFound();
}
if (!($this->oType = E::ModuleTopic()->GetContentType($oTopic->getType()))) {
return parent::EventNotFound();
}
if (!($oField = E::ModuleTopic()->GetContentFieldById($sFieldId))) {
return parent::EventNotFound();
}
if ($oField->getContentId() != $this->oType->getContentId()) {
return parent::EventNotFound();
}
//получаем объект файла
$oFile = $oTopic->getFieldFile($oField->getFieldId());
//получаем объект поля топика, содержащий данные о файле
$oValue = $oTopic->getField($oField->getFieldId());
if ($oFile && $oValue) {
if (preg_match("/^(http:\\/\\/)/i", $oFile->getFileUrl())) {
$sFullPath = $oFile->getFileUrl();
R::Location($sFullPath);
} else {
$sFullPath = Config::Get('path.root.dir') . $oFile->getFileUrl();
}
$sFilename = $oFile->getFileName();
/*
* Обновляем данные
*/
$aFileObj = array();
$aFileObj['file_name'] = $oFile->getFileName();
$aFileObj['file_url'] = $oFile->getFileUrl();
$aFileObj['file_size'] = $oFile->getFileSize();
$aFileObj['file_extension'] = $oFile->getFileExtension();
$aFileObj['file_downloads'] = $oFile->getFileDownloads() + 1;
$sText = serialize($aFileObj);
$oValue->setValue($sText);
$oValue->setValueSource($sText);
//сохраняем
E::ModuleTopic()->UpdateContentFieldValue($oValue);
/*
* Отдаем файл
*/
header('Content-type: ' . $oFile->getFileExtension());
header('Content-Disposition: attachment; filename="' . $sFilename . '"');
F::File_PrintChunked($sFullPath);
} else {
E::ModuleMessage()->AddErrorSingle(E::ModuleLang()->Get('content_download_file_error'));
return R::Action('error');
}
}
示例5: Init
/**
* Инициализация
*
* @return string
*/
public function Init()
{
/**
* Если нет прав доступа - перекидываем на 404 страницу
*/
if (!$this->User_IsAuthorization() or !($oUserCurrent = $this->User_GetUserCurrent()) or !$oUserCurrent->isAdministrator()) {
return parent::EventNotFound();
}
$this->SetDefaultEvent('index');
$this->oUserCurrent = $oUserCurrent;
}
示例6: Init
/**
* Инициализация
*
*/
public function Init()
{
/**
* Доступ только у авторизованных пользователей
*/
$this->oUserCurrent = $this->User_getUserCurrent();
if (!$this->oUserCurrent) {
parent::EventNotFound();
}
$this->Viewer_Assign('sMenuItemSelect', 'feed');
}
示例7: Init
/**
* Инициализация
*
*/
public function Init()
{
/**
* Лента доступна только для авторизованных
*/
$this->oUserCurrent = $this->User_getUserCurrent();
if (!$this->oUserCurrent) {
parent::EventNotFound();
}
$this->SetDefaultEvent('index');
$this->Viewer_Assign('aStreamEventTypes', $this->Stream_getEventTypes());
$this->Viewer_Assign('sMenuItemSelect', 'stream');
/**
* Загружаем в шаблон JS текстовки
*/
$this->Lang_AddLangJs(array('stream_subscribes_already_subscribed', 'error'));
}
示例8: EventReceptiondeskCategoryIndex
protected function EventReceptiondeskCategoryIndex()
{
if (!($oCategory = $this->PluginReceptiondesk_Category_GetCategoryByUrl($this->GetParamEventMatch(0, 0)))) {
return parent::EventNotFound();
}
$iPage = $this->GetParamEventMatch(1, 2) ? $this->GetParamEventMatch(1, 2) : 1;
if ($iPage == 1) {
$this->Viewer_SetHtmlCanonical(Router::GetPath('receptiondesk'));
}
$aResult = $this->PluginReceptiondesk_Question_GetQuestionList($iPage, Config::Get('plugin.receptiondesk.receptiondesk_question_per_page'), 1, $oCategory->getId());
$aPaging = $this->Viewer_MakePaging($aResult['count'], $iPage, Config::Get('plugin.receptiondesk.receptiondesk_question_per_page'), Config::Get('pagination.pages.count'), Router::GetPath('receptiondesk') . $oCategory->getUrl() . '/');
$this->Viewer_Assign('oCurrentCategory', $oCategory);
$this->Viewer_Assign('aQuestionList', $aResult['collection']);
$this->Viewer_Assign('aPaging', $aPaging);
if (Config::Get('plugin.receptiondesk.receptiondesk_create_popup')) {
$this->Viewer_Assign('bPopup', true);
}
$this->SetTemplateAction('index');
}
示例9: EventShowTopics
/**
* Выводит список топиков
*
*/
protected function EventShowTopics()
{
/**
* Меню
*/
$this->sMenuSubItemSelect = $this->sCurrentEvent;
/*
* Получаем тип контента
*/
if (!($this->oType = E::ModuleTopic()->GetContentType($this->sCurrentEvent))) {
return parent::EventNotFound();
}
/**
* Устанавливаем title страницы
*/
E::ModuleViewer()->AddHtmlTitle($this->oType->getContentTitleDecl());
/**
* Передан ли номер страницы
*/
$iPage = $this->GetParamEventMatch(0, 2) ? $this->GetParamEventMatch(0, 2) : 1;
/**
* Получаем список топиков
*/
$aResult = E::ModuleTopic()->GetTopicsByType($iPage, Config::Get('module.topic.per_page'), $this->oType->getContentUrl());
$aTopics = $aResult['collection'];
/**
* Формируем постраничность
*/
$aPaging = E::ModuleViewer()->MakePaging($aResult['count'], $iPage, Config::Get('module.topic.per_page'), Config::Get('pagination.pages.count'), R::GetPath('filter') . $this->sCurrentEvent);
/**
* Загружаем переменные в шаблон
*/
E::ModuleViewer()->Assign('aPaging', $aPaging);
E::ModuleViewer()->Assign('aTopics', $aTopics);
$this->SetTemplateAction('index');
}
示例10: EventWhois
/**
* Показывает инфу профиля
*
*/
protected function EventWhois()
{
/**
* Получаем логин из УРЛа
*/
$sUserLogin = $this->sCurrentEvent;
/**
* Проверяем есть ли такой юзер
*/
if (!($this->oUserProfile = $this->User_GetUserByLogin($sUserLogin))) {
return parent::EventNotFound();
}
/**
* Получаем список друзей
*/
$aUsersFriend = $this->User_GetUsersFriend($this->oUserProfile->getId());
if (Config::Get('general.reg.invite')) {
/**
* Получаем список тех кого пригласил юзер
*/
$aUsersInvite = $this->User_GetUsersInvite($this->oUserProfile->getId());
$this->Viewer_Assign('aUsersInvite', $aUsersInvite);
/**
* Получаем того юзера, кто пригласил текущего
*/
$oUserInviteFrom = $this->User_GetUserInviteFrom($this->oUserProfile->getId());
$this->Viewer_Assign('oUserInviteFrom', $oUserInviteFrom);
}
/**
* Получаем список юзеров блога
*/
$aBlogUsers = $this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(), ModuleBlog::BLOG_USER_ROLE_USER);
$aBlogModerators = $this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(), ModuleBlog::BLOG_USER_ROLE_MODERATOR);
$aBlogAdministrators = $this->Blog_GetBlogUsersByUserId($this->oUserProfile->getId(), ModuleBlog::BLOG_USER_ROLE_ADMINISTRATOR);
/**
* Получаем список блогов которые создал юзер
*/
$aBlogsOwner = $this->Blog_GetBlogsByOwnerId($this->oUserProfile->getId());
/**
* Вызов хуков
*/
$this->Hook_Run('profile_whois_show', array("oUserProfile" => $this->oUserProfile));
/**
* Загружаем переменные в шаблон
*/
$this->Viewer_Assign('aBlogUsers', $aBlogUsers);
$this->Viewer_Assign('aBlogModerators', $aBlogModerators);
$this->Viewer_Assign('aBlogAdministrators', $aBlogAdministrators);
$this->Viewer_Assign('aBlogsOwner', $aBlogsOwner);
$this->Viewer_Assign('aUsersFriend', $aUsersFriend);
$this->Viewer_AddHtmlTitle($this->Lang_Get('user_menu_profile') . ' ' . $this->oUserProfile->getLogin());
$this->Viewer_AddHtmlTitle($this->Lang_Get('user_menu_profile_whois'));
/**
* Устанавливаем шаблон вывода
*/
$this->SetTemplateAction('whois');
}
示例11: EventRead
/**
* Чтение письма
*/
protected function EventRead()
{
$this->sMenuSubItemSelect = 'read';
// * Получаем номер сообщения из УРЛ и проверяем существует ли оно
$sTalkId = $this->GetParam(0);
if (!($oTalk = E::ModuleTalk()->GetTalkById($sTalkId))) {
return parent::EventNotFound();
}
// * Пользователь есть в переписке?
if (!($oTalkUser = E::ModuleTalk()->GetTalkUser($oTalk->getId(), $this->oUserCurrent->getId()))) {
return parent::EventNotFound();
}
// * Пользователь активен в переписке?
if ($oTalkUser->getUserActive() != ModuleTalk::TALK_USER_ACTIVE) {
return parent::EventNotFound();
}
// * Обрабатываем добавление коммента
if (isset($_REQUEST['submit_comment'])) {
$this->SubmitComment();
}
// * Достаём комменты к сообщению
$aReturn = E::ModuleComment()->GetCommentsByTargetId($oTalk, 'talk');
$iMaxIdComment = $aReturn['iMaxIdComment'];
$aComments = $aReturn['comments'];
// * Помечаем дату последнего просмотра
$oTalkUser->setDateLast(F::Now());
$oTalkUser->setCommentIdLast($iMaxIdComment);
$oTalkUser->setCommentCountNew(0);
E::ModuleTalk()->UpdateTalkUser($oTalkUser);
E::ModuleViewer()->AddHtmlTitle($oTalk->getTitle());
E::ModuleViewer()->Assign('oTalk', $oTalk);
E::ModuleViewer()->Assign('aComments', $aComments);
E::ModuleViewer()->Assign('iMaxIdComment', $iMaxIdComment);
/*
* Подсчитываем нужно ли отображать комментарии.
* Комментарии не отображаются, если у вестки только один читатель
* и ранее созданных комментариев нет.
*/
if (count($aComments) == 0) {
$iActiveSpeakers = 0;
foreach ((array) $oTalk->getTalkUsers() as $oTalkUser) {
if ($oTalkUser->getUserId() != $this->oUserCurrent->getId() && $oTalkUser->getUserActive() == ModuleTalk::TALK_USER_ACTIVE) {
$iActiveSpeakers++;
break;
}
}
if ($iActiveSpeakers == 0) {
E::ModuleViewer()->Assign('bNoComments', true);
}
}
E::ModuleViewer()->Assign('bAllowToComment', true);
$this->SetTemplateAction('message');
}
示例12: EventCity
/**
* Показывает юзеров по городу
*
*/
protected function EventCity()
{
if (!($oCity = $this->User_GetCityByName(urldecode($this->getParam(0))))) {
return parent::EventNotFound();
}
/**
* Получаем статистику
*/
$this->GetStats();
/**
* Передан ли номер страницы
*/
$iPage = $this->GetParamEventMatch(1, 2) ? $this->GetParamEventMatch(1, 2) : 1;
/**
* Получаем список юзеров
*/
$aResult = $this->User_GetUsersByCity($oCity->getName(), $iPage, Config::Get('module.user.per_page'));
$aUsersCity = $aResult['collection'];
/**
* Формируем постраничность
*/
$aPaging = $this->Viewer_MakePaging($aResult['count'], $iPage, Config::Get('module.user.per_page'), 4, Router::GetPath('people') . $this->sCurrentEvent . '/' . $oCity->getName());
/**
* Загружаем переменные в шаблон
*/
if ($aUsersCity) {
$this->Viewer_Assign('aPaging', $aPaging);
}
$this->Viewer_Assign('oCity', $oCity);
$this->Viewer_Assign('aUsersCity', $aUsersCity);
}
示例13: EventInvite
/**
* Показ и обработка формы приглаешний
*
*/
protected function EventInvite()
{
/**
* Только при активном режиме инвайтов
*/
if (!Config::Get('general.reg.invite')) {
return parent::EventNotFound();
}
$this->sMenuItemSelect = 'invite';
$this->sMenuSubItemSelect = '';
E::ModuleViewer()->AddHtmlTitle(E::ModuleLang()->Get('settings_menu_invite'));
/**
* Если отправили форму
*/
if (isPost('submit_invite')) {
E::ModuleSecurity()->ValidateSendForm();
$bError = false;
/**
* Есть права на отправку инфайтов?
*/
if (!E::ModuleACL()->CanSendInvite($this->oUserCurrent) && !$this->oUserCurrent->isAdministrator()) {
E::ModuleMessage()->AddError(E::ModuleLang()->Get('settings_invite_available_no'), E::ModuleLang()->Get('error'));
$bError = true;
}
/**
* Емайл корректен?
*/
if (!F::CheckVal(F::GetRequestStr('invite_mail'), 'mail')) {
E::ModuleMessage()->AddError(E::ModuleLang()->Get('settings_invite_mail_error'), E::ModuleLang()->Get('error'));
$bError = true;
}
/**
* Запускаем выполнение хуков
*/
E::ModuleHook()->Run('settings_invate_send_before', array('oUser' => $this->oUserCurrent));
/**
* Если нет ошибок, то отправляем инвайт
*/
if (!$bError) {
$oInvite = E::ModuleUser()->GenerateInvite($this->oUserCurrent);
E::ModuleNotify()->SendInvite($this->oUserCurrent, F::GetRequestStr('invite_mail'), $oInvite);
E::ModuleMessage()->AddNoticeSingle(E::ModuleLang()->Get('settings_invite_submit_ok'));
E::ModuleHook()->Run('settings_invate_send_after', array('oUser' => $this->oUserCurrent));
}
}
E::ModuleViewer()->Assign('iCountInviteAvailable', E::ModuleUser()->GetCountInviteAvailable($this->oUserCurrent));
E::ModuleViewer()->Assign('iCountInviteUsed', E::ModuleUser()->GetCountInviteUsed($this->oUserCurrent->getId()));
}
示例14: EventEdit
/**
* Редактирование ссылки
*
* @return unknown
*/
protected function EventEdit()
{
/**
* Меню
*/
$this->sMenuSubItemSelect = '';
$this->sMenuItemSelect = 'question';
/**
* Получаем номер топика из УРЛ и проверяем существует ли он
*/
$sTopicId = $this->GetParam(0);
if (!($oTopic = $this->Topic_GetTopicById($sTopicId))) {
return parent::EventNotFound();
}
/**
* Проверяем тип топика
*/
if ($oTopic->getType() != 'question') {
return parent::EventNotFound();
}
/**
* Если права на редактирование
*/
if (!$this->ACL_IsAllowEditTopic($oTopic, $this->oUserCurrent)) {
return parent::EventNotFound();
}
/**
* Вызов хуков
*/
$this->Hook_Run('topic_edit_show', array('oTopic' => $oTopic));
/**
* Загружаем переменные в шаблон
*/
$this->Viewer_Assign('aBlogsAllow', $this->Blog_GetBlogsAllowByUser($this->oUserCurrent));
$this->Viewer_Assign('bEditDisabled', $oTopic->getQuestionCountVote() == 0 ? false : true);
$this->Viewer_AddHtmlTitle($this->Lang_Get('topic_question_title_edit'));
/**
* Устанавливаем шаблон вывода
*/
$this->SetTemplateAction('add');
/**
* Проверяем отправлена ли форма с данными(хотяб одна кнопка)
*/
if (isset($_REQUEST['submit_topic_publish']) or isset($_REQUEST['submit_topic_save'])) {
/**
* Обрабатываем отправку формы
*/
return $this->SubmitEdit($oTopic);
} else {
/**
* Заполняем поля формы для редактирования
* Только перед отправкой формы!
*/
$_REQUEST['topic_title'] = $oTopic->getTitle();
$_REQUEST['topic_text'] = $oTopic->getTextSource();
$_REQUEST['topic_tags'] = $oTopic->getTags();
$_REQUEST['blog_id'] = $oTopic->getBlogId();
$_REQUEST['topic_id'] = $oTopic->getId();
$_REQUEST['topic_publish_index'] = $oTopic->getPublishIndex();
$_REQUEST['topic_forbid_comment'] = $oTopic->getForbidComment();
$_REQUEST['answer'] = array();
$aAnswers = $oTopic->getQuestionAnswers();
foreach ($aAnswers as $aAnswer) {
$_REQUEST['answer'][] = $aAnswer['text'];
}
}
}
示例15: EventAdd
/**
* Добавление топика
*
*/
protected function EventAdd()
{
$sTopicType = $this->GetParam(0);
$iBlogId = (int) getRequest('blog_id');
if (!($oTopicType = $this->Topic_GetTopicType($sTopicType))) {
return parent::EventNotFound();
}
/**
* Проверяем права на создание топика
*/
if (!$this->ACL_CanAddTopic($this->oUserCurrent, $oTopicType)) {
$this->Message_AddErrorSingle($this->Rbac_GetMsgLast());
return Router::Action('error');
}
$this->sMenuSubItemSelect = $sTopicType;
/**
* Получаем доступные блоги по типам
*/
$aBlogs = array();
$aBlogs['open'] = $this->Blog_GetBlogsByType('open');
/**
* Убираем из списка блоги в которые не доступен постинг
*/
foreach ($aBlogs['open'] as $k => $oBlogOpen) {
if (!$this->ACL_IsAllowBlog($oBlogOpen, $this->oUserCurrent)) {
unset($aBlogs['open'][$k]);
}
}
if ($this->oUserCurrent->isAdministrator()) {
$aBlogs['close'] = $this->Blog_GetBlogsByType('close');
} else {
$aBlogs['close'] = $this->Blog_GetBlogsByTypeAndUserId('close', $this->oUserCurrent->getId());
}
/**
* Вызов хуков
*/
$this->Hook_Run('topic_add_show', array('aBlogs' => &$aBlogs));
/**
* Проверяем на отсутствие блогов
*/
$bSkipBlogs = true;
foreach ($aBlogs as $aBlogsType) {
if ($aBlogsType) {
$bSkipBlogs = false;
}
}
/**
* Загружаем переменные в шаблон
*/
$this->Viewer_Assign('topicType', $oTopicType);
$this->Viewer_Assign('blogsAllow', $aBlogs);
$this->Viewer_Assign('skipBlogs', $bSkipBlogs);
$this->Viewer_Assign('blogId', $iBlogId);
$this->Viewer_AddHtmlTitle($this->Lang_Get('topic.add.title.add'));
$this->SetTemplateAction('add');
}