当前位置: 首页>>代码示例>>PHP>>正文


PHP R::GetPathWebCurrent方法代码示例

本文整理汇总了PHP中R::GetPathWebCurrent方法的典型用法代码示例。如果您正苦于以下问题:PHP R::GetPathWebCurrent方法的具体用法?PHP R::GetPathWebCurrent怎么用?PHP R::GetPathWebCurrent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在R的用法示例。


在下文中一共展示了R::GetPathWebCurrent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: OutLog

 /**
  * Протоколирование запросов
  *
  * @param array|null $aVars
  */
 public function OutLog($aVars = null)
 {
     if (!$this->bLogEnable) {
         return;
     }
     if (!($sLogFile = Config::Get('module.search.logs.file'))) {
         $sLogFile = 'search.log';
     }
     if (!$this->oUser) {
         if ($sUserId = E::ModuleSession()->Get('user_id')) {
             $this->oUser = E::ModuleUser()->GetUserById($sUserId);
         }
     }
     if (!$this->oUser) {
         $sUserLogin = '*anonymous*';
     } else {
         $sUserLogin = $this->oUser->GetLogin();
     }
     $path = R::GetPathWebCurrent();
     $uri = $_SERVER['REQUEST_URI'];
     $sStrLog = 'user=>"' . $sUserLogin . '" ip=>"' . $_SERVER['REMOTE_ADDR'] . '"' . "\n" . str_repeat(' ', 22) . 'path=>' . $path . '"' . "\n" . str_repeat(' ', 22) . 'uri=>' . $uri . '"';
     if (is_array($aVars) && sizeof($aVars)) {
         foreach ($aVars as $key => $val) {
             $sStrLog .= "\n" . str_repeat(' ', 22) . $key . '=>"' . $val . '"';
         }
     }
     E::ModuleLogger()->Dump($sLogFile, $sStrLog);
 }
开发者ID:Azany,项目名称:altocms,代码行数:33,代码来源:ActionSearch.class.php

示例2: BuildHeadFiles

 /**
  * Строит массив для подключения css и js,
  * преобразовывает их в строку для HTML
  *
  */
 protected function BuildHeadFiles()
 {
     $sPath = R::GetPathWebCurrent();
     $this->aFileRules = Config::Get('head.rules');
     foreach ((array) $this->aFileRules as $sName => $aRule) {
         if (!$aRule['path']) {
             continue;
         }
         foreach ((array) $aRule['path'] as $sRulePath) {
             $sPattern = "~" . str_replace(array('/', '*'), array('\\/', '\\w+'), $sRulePath) . "~";
             if (preg_match($sPattern, $sPath)) {
                 // * Преобразование JS
                 if (isset($aRule['js']['empty']) && $aRule['js']['empty']) {
                     E::ModuleViewerAsset()->ClearJs();
                 }
                 if (isset($aRule['js']['exclude']) && is_array($aRule['js']['exclude'])) {
                     E::ModuleViewerAsset()->ExcludeJs($aRule['js']['exclude']);
                 }
                 if (isset($aRule['js']['include']) && is_array($aRule['js']['include'])) {
                     E::ModuleViewerAsset()->AddJsFiles($aRule['js']['include']);
                 }
                 // * Преобразование CSS
                 if (isset($aRule['css']['empty']) && $aRule['css']['empty']) {
                     E::ModuleViewerAsset()->ClearCss();
                 }
                 if (isset($aRule['css']['exclude']) && is_array($aRule['css']['exclude'])) {
                     E::ModuleViewerAsset()->ExcludeCss($aRule['css']['exclude']);
                 }
                 if (isset($aRule['css']['include']) && is_array($aRule['css']['include'])) {
                     E::ModuleViewerAsset()->AddCssFiles($aRule['css']['include']);
                 }
                 // * Продолжаем поиск
                 if (isset($aRule['stop'])) {
                     break 2;
                 }
             }
         }
     }
     E::ModuleViewerAsset()->Prepare();
     // * Объединяем файлы в наборы
     $aHeadFiles = array('js' => array(), 'css' => array());
     // * Получаем HTML код
     $aHtmlHeadFiles = $this->BuildHtmlHeadFiles($aHeadFiles);
     $this->SetHtmlHeadFiles($aHtmlHeadFiles);
 }
开发者ID:anp135,项目名称:altocms,代码行数:50,代码来源:Viewer.class.php

示例3: EventShowTopic

 /**
  * Show topic
  *
  * @return string|null
  */
 protected function EventShowTopic()
 {
     $this->sMenuHeadItemSelect = 'index';
     $sBlogUrl = '';
     $sTopicUrlMask = R::GetTopicUrlMask();
     if ($this->oCurrentTopic) {
         $this->oCurrentBlog = $this->oCurrentTopic->getBlog();
         if ($this->oCurrentBlog) {
             $sBlogUrl = $this->oCurrentBlog->getUrl();
         }
         $this->sMenuItemSelect = 'blog';
     } else {
         if ($this->GetParamEventMatch(0, 1)) {
             // из коллективного блога
             $sBlogUrl = $this->sCurrentEvent;
             $iTopicId = $this->GetParamEventMatch(0, 1);
             $this->sMenuItemSelect = 'blog';
         } else {
             // из персонального блога
             $iTopicId = $this->GetEventMatch(1);
             $this->sMenuItemSelect = 'log';
         }
         // * Проверяем есть ли такой топик
         if (!$iTopicId || !($this->oCurrentTopic = E::ModuleTopic()->GetTopicById($iTopicId))) {
             return parent::EventNotFound();
         }
     }
     if (!$this->oCurrentTopic->getBlog()) {
         // Этого быть не должно, но если вдруг, то надо отработать
         return parent::EventNotFound();
     }
     $this->sMenuSubItemSelect = '';
     // Trusted user is admin or owner of topic
     if ($this->oUserCurrent && ($this->oUserCurrent->isAdministrator() || $this->oUserCurrent->isModerator() || $this->oUserCurrent->getId() == $this->oCurrentTopic->getUserId())) {
         $bTrustedUser = true;
     } else {
         $bTrustedUser = false;
     }
     if (!$bTrustedUser) {
         // Topic with future date
         if ($this->oCurrentTopic->getDate() > date('Y-m-d H:i:s')) {
             return parent::EventNotFound();
         }
         // * Проверяем права на просмотр топика-черновика
         if (!$this->oCurrentTopic->getPublish()) {
             if (!Config::Get('module.topic.draft_link')) {
                 return parent::EventNotFound();
             } else {
                 // Если режим просмотра по прямой ссылке включен, то проверяем параметры
                 $bOk = false;
                 if ($sDraftCode = F::GetRequestStr('draft', null, 'get')) {
                     if (strpos($sDraftCode, ':')) {
                         list($nUser, $sHash) = explode(':', $sDraftCode);
                         if ($this->oCurrentTopic->GetUserId() == $nUser && $this->oCurrentTopic->getTextHash() == $sHash) {
                             $bOk = true;
                         }
                     }
                 }
                 if (!$bOk) {
                     return parent::EventNotFound();
                 }
             }
         }
     }
     // Если номер топика правильный, но URL блога неверный, то корректируем его и перенаправляем на нужный адрес
     if ($sBlogUrl !== '' && $this->oCurrentTopic->getBlog()->getUrl() !== $sBlogUrl) {
         R::Location($this->oCurrentTopic->getUrl());
     }
     // Если запросили топик с определенной маской, не указаным названием блога,
     // но ссылка на топик и ЧПУ url разные, и это не запрос RSS
     // то перенаправляем на страницу для вывода топика (во избежание дублирования контента по разным URL)
     if ($sTopicUrlMask && $sBlogUrl == '' && $this->oCurrentTopic->getUrl() != R::GetPathWebCurrent() . (substr($this->oCurrentTopic->getUrl(), -1) === '/' ? '/' : '') && substr(R::RealUrl(true), 0, 4) !== 'rss/') {
         R::Location($this->oCurrentTopic->getUrl());
     }
     // Checks rights to show content from the blog
     if (!$this->oCurrentTopic->getBlog()->CanReadBy($this->oUserCurrent)) {
         E::ModuleMessage()->AddErrorSingle(E::ModuleLang()->Get('acl_cannot_show_content'), E::ModuleLang()->Get('not_access'));
         return R::Action('error');
     }
     // Обрабатываем добавление коммента
     if (isset($_REQUEST['submit_comment'])) {
         $this->SubmitComment();
     }
     // Достаём комменты к топику
     if (!Config::Get('module.comment.nested_page_reverse') && Config::Get('module.comment.use_nested') && Config::Get('module.comment.nested_per_page')) {
         $iPageDef = ceil(E::ModuleComment()->GetCountCommentsRootByTargetId($this->oCurrentTopic->getId(), 'topic') / Config::Get('module.comment.nested_per_page'));
     } else {
         $iPageDef = 1;
     }
     $iPage = intval(F::GetRequest('cmtpage', 0));
     if ($iPage < 1) {
         $iPage = $iPageDef;
     }
     $aReturn = E::ModuleComment()->GetCommentsByTargetId($this->oCurrentTopic, 'topic', $iPage, Config::Get('module.comment.nested_per_page'));
     $iMaxIdComment = $aReturn['iMaxIdComment'];
//.........这里部分代码省略.........
开发者ID:anp135,项目名称:altocms,代码行数:101,代码来源:ActionBlog.class.php


注:本文中的R::GetPathWebCurrent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。