예제 #1
0
 /**
  * Renders the container.
  * @see XenForo_ViewRenderer_Abstract::renderContainer()
  *
  * @param string
  * @param array
  *
  * @return string
  */
 public function renderContainer($contents, array $params = array())
 {
     $options = XenForo_Application::get('options');
     $params['debugMode'] = XenForo_Application::debugMode();
     $params['debugFormBackground'] = $options->debugFormBackground;
     if (!empty($params['adminNavigation']['sideLinks'])) {
         $params['sideNav'] = $this->_renderSideNav($params['adminNavigation']['sideLinksRoot'], $params['adminNavigation']['sideLinks']);
     } else {
         $params['sideNav'] = array();
     }
     $params['serverTimeInfo'] = XenForo_Locale::getDayStartTimestamps();
     $params['publicUrl'] = $options->useFriendlyUrls ? './' : 'index.php';
     if (!isset($params['allowManualDeferredRun'])) {
         $params['allowManualDeferredRun'] = true;
     }
     $params['hasManualDeferred'] = XenForo_ViewRenderer_Abstract::hasManualDeferredToRun($params['allowManualDeferredRun']) || !empty($params['hasManualDeferred']);
     $templateName = !empty($params['containerTemplate']) ? $params['containerTemplate'] : 'PAGE_CONTAINER';
     $template = $this->createTemplateObject($templateName, $params);
     if ($contents instanceof XenForo_Template_Abstract) {
         $contents = $contents->render();
     }
     $template->setParams($this->_dependencies->getExtraContainerData());
     $template->setParam('contents', $contents);
     if ($params['debugMode']) {
         $template->setParams(XenForo_Debug::getDebugTemplateParams());
     }
     $rendered = $template->render();
     $rendered = $this->replaceRequiredExternalPlaceholders($template, $rendered);
     $language = XenForo_Visitor::getInstance()->getLanguage();
     if (isset($language['text_direction']) && $language['text_direction'] == 'RTL') {
         $rendered = XenForo_Template_Helper_RightToLeft::replaceRtlEntities($rendered);
     }
     return $rendered;
 }
예제 #2
0
파일: Json.php 프로젝트: Sywooch/forums
 /**
  * Add default parameters to the provided parameters array
  *
  * @param array $params
  *
  * @return array
  */
 protected static function _addDefaultParams(array &$params = array())
 {
     $visitor = XenForo_Visitor::getInstance();
     if ($visitor->getUserId()) {
         $params['_visitor_conversationsUnread'] = XenForo_Locale::numberFormat($visitor->conversations_unread);
         $params['_visitor_alertsUnread'] = XenForo_Locale::numberFormat($visitor->alerts_unread);
     }
     if (XenForo_ViewRenderer_Abstract::hasManualDeferredToRun()) {
         $params['_manualDeferred'] = true;
     }
     if (!empty(XenForo_Application::$autoDeferredIds)) {
         $params['_autoDeferred'] = true;
     }
     return $params;
 }