/** * Renders the guest time zone option. * * @param XenForo_View $view View object * @param string $fieldPrefix Prefix for the HTML form field name * @param array $preparedOption Prepared option info * @param boolean $canEdit True if an "edit" link should appear * * @return XenForo_Template_Abstract Template object */ public static function renderOption(XenForo_View $view, $fieldPrefix, array $preparedOption, $canEdit) { $value = $preparedOption['option_value']; $editLink = $view->createTemplateObject('option_list_option_editlink', array('preparedOption' => $preparedOption, 'canEditOptionDefinition' => $canEdit)); $forumOptions = XenForo_Option_NodeChooser::getNodeOptions($value['node_id'], sprintf('(%s)', new XenForo_Phrase('unspecified')), 'Forum'); return $view->createTemplateObject('option_template_spamThreadAction', array('fieldPrefix' => $fieldPrefix, 'listedFieldName' => $fieldPrefix . '_listed[]', 'preparedOption' => $preparedOption, 'formatParams' => $forumOptions, 'editLink' => $editLink)); }
/** * Fetches a list of node options. * * @param array $selectedForums * @param mixed Include root forum (specify a phrase to represent the root * forum) * @param mixed Filter the options to allow only the specified type to be * selectable * * @return array */ public static function getNodeOptions($selectedForums, $includeRoot = false, $filter = false) { $options = parent::getNodeOptions($selectedForums, $includeRoot, $filter); foreach ($selectedForums as $selectedForum) { $options[$selectedForum]['selected'] = true; } return $options; }
/** * Fetches a list of node options. * * @param array $selectedForums * @param mixed Include root forum (specify a phrase to represent the root * forum) * @param mixed Filter the options to allow only the specified type to be * selectable * * @return array */ public static function getNodeOptions($selectedForums, $includeRoot = false, $filter = false) { $options = parent::getNodeOptions($selectedForums, $includeRoot, $filter); unset($options[0]); foreach ($options as $option) { if ($option['node_type_id'] != 'Forum') { unset($options[$option['value']]); } } foreach ($selectedForums as $selectedForum) { $options[$selectedForum]['selected'] = true; } return $options; }
public function configure(XenForo_ControllerAdmin_Abstract $controller, array &$config) { if ($config) { if ($errors = $this->validateConfiguration($config)) { return $controller->responseError($errors); } $this->_bootstrap($config); return true; } else { $nodeOptions = XenForo_Option_NodeChooser::getNodeOptions(0, false, 'Forum'); $viewParams = array('nodeOptions' => $nodeOptions); return $controller->responseView('Nobita_Teams_ViewAdmin_Import_Config', 'Team_import_waindigo_config', $viewParams); } }
public static function renderOption(XenForo_View $view, $fieldPrefix, array $preparedOption, $canEdit) { $choices = $preparedOption['option_value']; $editLink = $view->createTemplateObject('option_list_option_editlink', array('preparedOption' => $preparedOption, 'canEditOptionDefinition' => $canEdit)); $modernModel = XenForo_Model::create('Brivium_ModernStatistic_Model_ModernStatistic'); $forumOptions = XenForo_Option_NodeChooser::getNodeOptions(-1, false, 'Forum'); $listKinds = array(array('value' => 'thread', 'label' => new XenForo_Phrase('thread'))); $resourceVersion = $modernModel->checkXenForoResourceAddon(); $categoryOptions = array(); if ($resourceVersion) { $listKinds[] = array('value' => 'resource', 'label' => new XenForo_Phrase('resource')); $categoryModel = XenForo_Model::create('XenResource_Model_Category'); $categories = $categoryModel->prepareCategories($categoryModel->getViewableCategories()); foreach ($categories as $categoryId => $category) { $category['depth'] += 1; $categoryOptions[$categoryId] = array('value' => $categoryId, 'label' => $category['category_title'], 'depth' => $category['depth']); } } $listTypes = array(array('value' => 'thread_latest', 'label' => new XenForo_Phrase('BRMS_latest_threads')), array('value' => 'thread_hotest', 'label' => new XenForo_Phrase('BRMS_most_viewed_threads')), array('value' => 'post_latest', 'label' => new XenForo_Phrase('BRMS_latest_replies')), array('value' => 'most_reply', 'label' => new XenForo_Phrase('BRMS_most_replied_threads')), array('value' => 'sticky_threads', 'label' => new XenForo_Phrase('BRMS_sticky_threads')), array('value' => 'my_threads', 'label' => new XenForo_Phrase('BRMS_my_threads'))); $listTypeResources = array(array('value' => 'resource_last_update', 'label' => new XenForo_Phrase('latest_updates')), array('value' => 'resource_resource_date', 'label' => new XenForo_Phrase('newest_resources')), array('value' => 'resource_rating_weighted', 'label' => new XenForo_Phrase('top_resources')), array('value' => 'resource_download_count', 'label' => new XenForo_Phrase('most_downloaded'))); $listThreadOrders = array(array('value' => 'title', 'label' => new XenForo_Phrase('title_alphabetical')), array('value' => 'post_date', 'label' => new XenForo_Phrase('thread_creation_time')), array('value' => 'view_count', 'label' => new XenForo_Phrase('number_of_views')), array('value' => 'reply_count', 'label' => new XenForo_Phrase('number_of_replies')), array('value' => 'first_post_likes', 'label' => new XenForo_Phrase('first_message_likes'))); return $view->createTemplateObject('BRMS_option_template_tab_selector', array('fieldPrefix' => $fieldPrefix, 'listedFieldName' => $fieldPrefix . '_listed[]', 'preparedOption' => $preparedOption, 'formatParams' => $preparedOption['formatParams'], 'editLink' => $editLink, 'resourceVersion' => $resourceVersion, 'categoryList' => $categoryOptions, 'forumList' => $forumOptions, 'choices' => $choices, 'listTypes' => $listTypes, 'listTypeResources' => $listTypeResources, 'listThreadOrders' => $listThreadOrders, 'listKinds' => $listKinds, 'nextCounter' => count($choices))); }
/** * Gets the data that is needed to display a list of criteria options for * user selection. * * @return array */ public static function getDataForCreateCriteriaSelection() { $data = array('thread' => array('nodes' => XenForo_Option_NodeChooser::getNodeOptions(0, false, 'Forum'))); if (XenForo_Application::$versionId >= 1020000) { $addOns = XenForo_Application::get('addOns'); } else { /* @var $addOnModel XenForo_Model_AddOn */ $addOnModel = $this->getModelFromCache('XenForo_Model_AddOn'); $addOns = $addOnModel->getAllAddOns(); foreach ($addOns as $addOnId => $addOn) { if (!$addOn['active']) { unset($addOns[$addOnId]); } } } $isRmInstalled = isset($addOns['XenResource']); if ($isRmInstalled) { $data['resource'] = array('categories' => XenForo_Model::create('XenResource_Model_Category')->getAllCategories()); } $isXmgInstalled = isset($addOns['XenGallery']); if ($isXmgInstalled) { $data['xengallery_media'] = array('categories' => XenForo_Model::create('XenGallery_Model_Category')->getAllCategories()); } return $data; }
/** * Outputs forum list formatted with depth and categories. * @param $selected * @return array */ protected function _helperPrepareForumsOption($selected) { return XenForo_Option_NodeChooser::getNodeOptions($selected, sprintf('(%s)', new XenForo_Phrase('unspecified')), 'Forum'); }