Example #1
0
 protected function _getAutoWarningAddEditResponse(array $autoWarning)
 {
     /* @var $warningModel XenForo_Model_Warning */
     $warningModel = $this->getModelFromCache('XenForo_Model_Warning');
     $warnings = $warningModel->prepareWarningDefinitions($warningModel->getWarningDefinitions());
     $viewParams = array('autoWarning' => $autoWarning, 'warnings' => $warnings, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($autoWarning['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection());
     return $this->responseView('ThemeHouse_AutoWarning_ViewAdmin_Warning_AutoAdd', 'th_auto_warning_add_autowarning', $viewParams);
 }
Example #2
0
 public function actionEdit()
 {
     $advId = $this->_input->filterSingle('adv_id', XenForo_Input::STRING);
     $addOnModel = $this->getModelFromCache('Turki_Adv_Model_Hooks');
     $adv = $this->_getAdvOrError($advId);
     // die(var_dump($adv['post_criteria']));
     $viewParams = array('userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection(''), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'pageCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection(''), 'pageCriteriaData' => XenForo_Helper_Criteria::getDataForPageCriteriaSelection(), 'advs' => $adv, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($adv['user_criteria']), 'pageCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($adv['page_criteria']), 'postCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($adv['post_criteria']), 'hookOptions' => $addOnModel->getHooksListIfAvailable(), 'adv_display' => array('top' => new XenForo_Phrase('top'), 'bottom' => new XenForo_Phrase('bottom')), 'hookSelected' => isset($adv['adv_hook_name']) ? $adv['adv_hook_name'] : $addOnModel->getDefaultHook());
     return $this->responseView('Turki_Adv_ViewAdmin_Edit', 'adv_xenfor_edit', $viewParams);
 }
Example #3
0
 public static function template_hook($hookName, &$contents, array $hookParams, XenForo_Template_Abstract $template)
 {
     $options = XenForo_Application::get('options');
     $enableadvxenforo = $options->enableadvxenforo;
     $thread_id = $hookParams['thread']['thread_id'];
     if ($enableadvxenforo) {
         $PermissionEnable = XenForo_Visitor::getInstance()->hasPermission('adv_xenforo', 'adv_xenforo_enable_adv') ? TRUE : FALSE;
         if ($hookName == 'account_preferences_options' && $PermissionEnable) {
             $ourTemplate = $template->create('adv_xenforo_account_options', $template->getparams());
             $rendered = $ourTemplate->render();
             $contents = $contents . $rendered;
         }
         $hasPermission = XenForo_Visitor::getInstance()->hasPermission('adv_xenforo', 'adv_xenforo_show') ? TRUE : FALSE;
         $advs = XenForo_Application::getSimpleCacheData('adv_xenforo');
         $user = XenForo_Visitor::getInstance()->toArray();
         $enable_adv = $PermissionEnable === TRUE ? $user['enable_adv'] : TRUE;
         $containerData = self::$containerData;
         if (empty(self::$containerData)) {
             $containerData = XenForo_Template_Public::getExtraContainerData();
         }
         if ($enable_adv) {
             if ($hasPermission === TRUE && $advs["AdvsHook"]) {
                 $isMobile = XenForo_Visitor::isBrowsingWith('mobile');
                 switch (TRUE) {
                     case $isMobile == TRUE:
                         $adv_adv = 'adv_small';
                         break;
                     default:
                         $adv_adv = 'adv_large';
                         break;
                 }
                 foreach ($advs["AdvsHook"] as $_asv) {
                     if ($_asv['active'] && XenForo_Helper_Criteria::userMatchesCriteria($_asv['user_criteria'], TRUE, $user) && XenForo_Helper_Criteria::pageMatchesCriteria($_asv['page_criteria'], TRUE, $template->getParams(), $containerData)) {
                         $ourTemplate = $template->create('ads_xf_ar_xenforo', array('advanced' => $_asv[$adv_adv]));
                         $rendered = $ourTemplate->render();
                         if ($hookName == 'message_content' && Turki_Adv_Helper_Criteria::postCriteria($_asv['post_criteria'], TRUE) === FALSE) {
                             if ($hookParams['message']['thread_id']) {
                                 $decode = XenForo_Helper_Criteria::prepareCriteriaForSelection($_asv['post_criteria']);
                                 $position = $decode['active']['page'] ? $hookParams['message']['position'] % $options->messagesPerPage : $hookParams['message']['position'];
                                 if ($position == $decode['active']['post_id'] - 1) {
                                     $contents = $decode['active']['position'] ? Turki_Adv_Helper_Helpers::advhtml($contents, $rendered) : $contents . $rendered;
                                 }
                             }
                         } else {
                             if ($hookName == $_asv['adv_hook_name'] && Turki_Adv_Helper_Criteria::postCriteria($_asv['post_criteria'], TRUE)) {
                                 $contents = $_asv['display'] == 'top' ? $rendered . $contents : $contents . $rendered;
                             }
                         }
                     }
                 }
             }
         }
         self::_templateHook($hookName, $contents, $hookParams, $template);
     }
 }
Example #4
0
 /**
  * Helper to get the tab rule add/edit form controller response.
  *
  * @param array $tabRule
  *
  * @return XenForo_ControllerResponse_View
  */
 protected function _getTabRuleAddEditResponse(array $tabRule)
 {
     /* @var $tabNameModel Waindigo_Tabs_Model_TabName */
     $tabNameModel = $this->getModelFromCache('Waindigo_Tabs_Model_TabName');
     $tabNames = $tabNameModel->prepareTabNames($tabNameModel->getTabNames());
     $tabModel = $this->_getTabModel();
     $matchContentTypes = $tabModel->getMatchContentTypes();
     $createContentTypes = $tabModel->getCreateContentTypes();
     $viewParams = array('tabRule' => $tabRule, 'matchCriteria' => array($tabRule['match_content_type'] => XenForo_Helper_Criteria::prepareCriteriaForSelection($tabRule['match_criteria'])), 'matchCriteriaData' => Waindigo_Tabs_Helper_Criteria::getDataForMatchCriteriaSelection(), 'matchContentTypes' => $matchContentTypes, 'createCriteria' => array($tabRule['create_content_type'] => $tabRule['create_criteria'] ? unserialize($tabRule['create_criteria']) : array()), 'createCriteriaData' => Waindigo_Tabs_Helper_Criteria::getDataForCreateCriteriaSelection(), 'createContentTypes' => $createContentTypes, 'tabNames' => $tabNames, 'customMessage' => $this->_getTabRuleModel()->getTabRuleMasterCustomMessagePhraseValue($tabRule['tab_rule_id']));
     return $this->responseView('Waindigo_Tabs_ViewAdmin_TabRule_Edit', 'waindigo_tab_rule_edit_tabs', $viewParams);
 }
Example #5
0
 /**
  * Helper to get the user spam rule add/edit form controller response.
  *
  * @param array $userSpamRule
  *
  * @return XenForo_ControllerResponse_View
  */
 protected function _getUserSpamRuleAddEditResponse(array $userSpamRule)
 {
     $userSpamRule = $this->_getUserSpamRuleModel()->prepareUserSpamRule($userSpamRule);
     $isoCountries = array();
     if (function_exists('geoip_country_code_by_name')) {
         $countries = preg_split("/\r\n|\n|\r/", XenForo_Application::get('options')->th_spamRules_countries);
         foreach ($countries as $countryId => $country) {
             preg_match('/([A-Z][0-9A-Z]),"?([^"]*)"?/', $country, $matches);
             if ($matches) {
                 $isoCountries[$matches[1]] = $matches[2];
             }
         }
         asort($isoCountries);
     }
     $viewParams = array('userSpamRule' => $userSpamRule, 'countries' => $isoCountries, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($userSpamRule['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'requestCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($userSpamRule['request_criteria']));
     return $this->responseView('ThemeHouse_SpamRules_ViewAdmin_UserSpamRule_Edit', 'th_user_spam_rule_edit_spamrules', $viewParams);
 }
Example #6
0
 /**
  * Gets the add/edit form response for a trophy.
  *
  * @param array $trophy
  *
  * @return XenForo_ControllerResponse_Abstract
  */
 protected function _getTrophyAddEditResponse(array $trophy)
 {
     $trophyModel = $this->_getTrophyModel();
     $viewParams = array('trophy' => $trophy, 'masterTitle' => $trophyModel->getTrophyMasterTitlePhraseValue($trophy['trophy_id']), 'masterDescription' => $trophyModel->getTrophyMasterDescriptionPhraseValue($trophy['trophy_id']), 'criteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($trophy['criteria']));
     return $this->responseView('XenForo_ViewAdmin_Trophy_Edit', 'trophy_edit', $viewParams);
 }
 /**
  * Helper to get the redirect rule add/edit form controller response.
  *
  * @param array $redirectRule
  *
  * @return XenForo_ControllerResponse_View
  */
 protected function _getRedirectRuleAddEditResponse(array $redirectRule)
 {
     $viewParams = array('redirectRule' => $redirectRule, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($redirectRule['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'pageCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($redirectRule['page_criteria']), 'pageCriteriaData' => XenForo_Helper_Criteria::getDataForPageCriteriaSelection(), 'showInactiveCriteria' => true);
     return $this->responseView('ThemeHouse_RedirectRules_ViewAdmin_RedirectRule_Edit', 'th_redirect_rule_edit_redirectrules', $viewParams);
 }
 /**
  * Gets the add/edit form response for a promotion.
  *
  * @param array $promotion
  *
  * @return XenForo_ControllerResponse_Abstract
  */
 protected function _getPromotionAddEditResponse(array $promotion)
 {
     $userGroupOptions = $this->_getUserGroupModel()->getUserGroupOptions($promotion['extra_user_group_ids']);
     $viewParams = array('promotion' => $promotion, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($promotion['user_criteria']), 'userGroupOptions' => $userGroupOptions, 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection());
     return $this->responseView('XenForo_ViewAdmin_UserGroupPromotion_Edit', 'user_group_promotion_edit', $viewParams);
 }
 protected function _getNoticeAddEditResponse(array $notice)
 {
     if (ThemeHouse_SocialGroups_SocialForum::hasInstance()) {
         $socialForum = ThemeHouse_SocialGroups_SocialForum::getInstance()->toArray();
     } else {
         return $this->responseError('th_requested_social_forum_not_found_socialgroups');
     }
     $this->_assertCanManageSocialNotices($socialForum);
     $noticeModel = $this->_getNoticeModel();
     $ftpHelper = $this->getHelper('ForumThreadPost');
     $forum = $this->getHelper('ForumThreadPost')->assertForumValidAndViewable($socialForum['node_id'], array());
     $viewParams = array('socialForum' => $socialForum, 'notice' => $notice, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($notice['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'pageCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($notice['page_criteria']), 'pageCriteriaData' => XenForo_Helper_Criteria::getDataForPageCriteriaSelection(), 'showInactiveCriteria' => true, 'nodeBreadCrumbs' => $ftpHelper->getNodeBreadCrumbs($forum, true));
     return $this->responseView('ThemeHouse_SocialNotices_ViewPublic_SocialForum_Notice_Edit', 'th_social_notice_edit_socialnotices', $viewParams);
 }
 /**
  * Gets the add/edit form response for a privacy group.
  *
  * @param array $privacyGroup
  *
  * @return XenForo_ControllerResponse_Abstract
  */
 protected function _getPrivacyGroupAddEditResponse(array $privacyGroup)
 {
     $viewParams = array('privacyGroup' => $privacyGroup, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($privacyGroup['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'privacyOptions' => $this->_getPrivacyGroupModel()->getPrivacyOptions($privacyGroup['privacy_options']));
     return $this->responseView('ThemeHouse_PrivacyGroups_ViewAdmin_PrivacyGroup_Edit', 'th_privacy_group_edit_privacygroups', $viewParams);
 }
Example #11
0
 /**
  * Helper to get the leaderboard add/edit form controller response.
  *
  * @param array $leaderboard
  *
  * @return XenForo_ControllerResponse_View
  */
 protected function _getLeaderboardAddEditResponse(array $leaderboard)
 {
     $viewParams = array('leaderboard' => $leaderboard, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($leaderboard['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection());
     return $this->responseView('Waindigo_Leaderboards_ViewAdmin_Leaderboard_Edit', 'waindigo_leaderboard_edit_leaderboards', $viewParams);
 }
Example #12
0
 protected function _getNoticeAddEditResponse(array $notice)
 {
     $noticeModel = $this->_getNoticeModel();
     $viewParams = array('notice' => $notice, 'userCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($notice['user_criteria']), 'userCriteriaData' => XenForo_Helper_Criteria::getDataForUserCriteriaSelection(), 'pageCriteria' => XenForo_Helper_Criteria::prepareCriteriaForSelection($notice['page_criteria']), 'pageCriteriaData' => XenForo_Helper_Criteria::getDataForPageCriteriaSelection(), 'showInactiveCriteria' => true);
     return $this->responseView('XenForo_ViewAdmin_Notice_Edit', 'notice_edit', $viewParams);
 }