本文整理汇总了PHP中IPSLib::appIsSearchable方法的典型用法代码示例。如果您正苦于以下问题:PHP IPSLib::appIsSearchable方法的具体用法?PHP IPSLib::appIsSearchable怎么用?PHP IPSLib::appIsSearchable使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPSLib
的用法示例。
在下文中一共展示了IPSLib::appIsSearchable方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: searchResultsWrapper
function searchResultsWrapper($results, $sortDropDown, $sortIn, $pagination, $total, $showing, $search_term, $url_string, $current_key, $removed_search_terms = array(), $limited = 0, $wasLimited = false, $search_tags)
{
$IPBHTML = "";
if (IPSLib::locationHasHooks('skin_search', $this->_funcHooks['searchResultsWrapper'])) {
$count_7b018359a3195e8a366642bc7a0440b2 = is_array($this->functionData['searchResultsWrapper']) ? count($this->functionData['searchResultsWrapper']) : 0;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['results'] = $results;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['sortDropDown'] = $sortDropDown;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['sortIn'] = $sortIn;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['pagination'] = $pagination;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['total'] = $total;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['showing'] = $showing;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['search_term'] = $search_term;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['url_string'] = $url_string;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['current_key'] = $current_key;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['removed_search_terms'] = $removed_search_terms;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['limited'] = $limited;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['wasLimited'] = $wasLimited;
$this->functionData['searchResultsWrapper'][$count_7b018359a3195e8a366642bc7a0440b2]['search_tags'] = $search_tags;
}
$i = 0;
if (IPSLib::appIsSearchable('forums', 'search')) {
$i++;
}
if (IPSLib::appIsSearchable('members', 'search')) {
$i++;
}
if (IPSLib::appIsInstalled('blog') && IPSLib::appIsSearchable('blog', 'search')) {
$i++;
}
if (IPSLib::appIsInstalled('gallery') && IPSLib::appIsSearchable('gallery', 'search')) {
$i++;
}
switch ($i) {
case 3:
$classname = 'three_';
break;
case 4:
$classname = 'four_';
break;
case 2:
$classname = 'two_';
break;
default:
$classname = 'one_';
break;
}
$IPBHTML .= "<div class='master_list'>\n\t<h2>" . (($total > 0 and $search_term != '') ? "{$total} " : "") . "{$this->lang->words['search_results']}</h2>\n\t\n\t<div class='ipsFilterBar {$classname}filters clearfix' id='vnc_filters'>\n\t\t<ul>\n\t\t\t" . (!$search_tags && IPSLib::appIsSearchable('forums', 'search') || $search_tags && IPSLib::appIsSearchable('forums', 'tags') ? "<li " . ($this->request['search_app'] == 'forums' ? "class='selected'" : "") . "><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$url_string}&search_app=forums", "public", ''), "", "") . "'>" . IPSLib::getAppTitle('forums') . "</a></li>" : "") . "" . (!$search_tags && IPSLib::appIsSearchable('members', 'search') || $search_tags && IPSLib::appIsSearchable('members', 'tags') ? "<li " . ($this->request['search_app'] == 'members' ? "class='selected'" : "") . "><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$url_string}&search_app=members", "public", ''), "", "") . "'>" . IPSLib::getAppTitle('members') . "</a></li>" : "") . "" . (IPSLib::appIsInstalled('blog') && IPSLib::appIsSearchable('blog', 'search') ? "<li " . ($this->request['search_app'] == 'blog' ? "class='selected'" : "") . "><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$url_string}&search_app=blog", "public", ''), "", "") . "'>" . IPSLib::getAppTitle('blog') . "</a></li>" : "") . "" . (IPSLib::appIsInstalled('gallery') && IPSLib::appIsSearchable('gallery', 'search') ? "<li " . ($this->request['search_app'] == 'gallery' ? "class='selected'" : "") . "><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$url_string}&search_app=gallery", "public", ''), "", "") . "'>" . IPSLib::getAppTitle('gallery') . "</a></li>" : "") . "\n\t\t</ul>\n\t</div>\n\t" . (($total > 0 and $search_term != '') ? "\n\t\t<!--<div class='message'>\n\t\t\t{$this->lang->words['your_search']} <em><strong>{$search_term}</strong></em> {$this->lang->words['your_search_returned']} \n\t\t</div>-->\n\t" : "") . "\n\t" . ($pagination ? "\n\t\t<div class='controls'>\n\t\t\t<div class='buttons'>\n\t\t\t\t{$pagination}\n\t\t\t</div>\n\t\t</div>\n\t" : "") . "\n\t\n\t" . ($total ? "\n\t\t{$results}\n\t" : "<div class='row no_messages'>{$this->lang->words['no_results_found']}" . ($search_term ? " {$this->lang->words['no_results_found_for']} '{$search_term}'" : "") . ".</div>") . "\n\t\n\t" . ($pagination ? "\n\t\t<div class='controls'>\n\t\t\t<div class='buttons'>\n\t\t\t\t{$pagination}\n\t\t\t</div>\n\t\t</div>\n\t" : "") . "\n</div>";
return $IPBHTML;
}
示例2: __f__c8ca620f84d6ee0ffd036e677a836616
function __f__c8ca620f84d6ee0ffd036e677a836616()
{
$_ips___x_retval = '';
$__iteratorCount = 0;
foreach ($this->registry->getApplications() as $app => $data) {
$__iteratorCount++;
$_ips___x_retval .= "\t\t\t\t\n\t\t\t\t\t\t" . ((IPSLib::appIsSearchable($app, 'search') and !in_array($app, array('forums', 'members', 'core'))) ? "<li class='app'>\n\t\t\t\t\t\t\t\t<label for='s_{$app}' title='" . IPSLib::getAppTitle($app) . "'>\n\t\t\t\t\t\t\t\t\t" . (($this->request['app'] == 'core' and $this->request['module'] == 'search') ? "<input type='radio' name='search_app' class='input_radio' id='s_{$app}' value=\"{$app}\" " . (((isset($this->request['search_app']) and $this->request['search_app'] == $app) || (!IPSLib::appIsSearchable($this->registry->getCurrentApplication(), 'search') and $app == 'core') || $this->registry->getCurrentApplication() == $app && (!isset($this->request['search_app']) or !$this->request['search_app'])) && !$this->request['showtopic'] && !$this->request['showforum'] && (!method_exists($this->registry->output->getTemplate($this->request['search_app'] . '_global'), 'contextSearch') or ipsRegistry::$appSearch) ? "checked=\"checked\"" : "") . " />" : "<input type='radio' name='search_app' class='input_radio' id='s_{$app}' value=\"{$app}\" " . (((isset($this->request['search_app']) and $this->request['search_app'] == $app) || (!IPSLib::appIsSearchable($this->registry->getCurrentApplication(), 'search') and $app == 'core') || $this->registry->getCurrentApplication() == $app && (!isset($this->request['search_app']) or !$this->request['search_app'])) && !$this->request['showtopic'] && !$this->request['showforum'] && (!method_exists($this->registry->output->getTemplate($this->registry->getCurrentApplication() . '_global'), 'contextSearch') or ipsRegistry::$appSearch) ? "checked=\"checked\"" : "") . " />") . "" . IPSLib::getAppTitle($app) . "\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t</li>" : "") . "\n\t\t\t\t\t\n";
}
$_ips___x_retval .= '';
unset($__iteratorCount);
return $_ips___x_retval;
}
示例3: __f__e31017b74a41d4b4cb2b4384d3fd5612
function __f__e31017b74a41d4b4cb2b4384d3fd5612($results, $pagination, $total, $member, $limited = 0, $wasLimited = false, $beginTime = 0, $sortIn = null, $sortDropDown = array())
{
$_ips___x_retval = '';
$__iteratorCount = 0;
foreach ($this->registry->getApplications() as $app) {
$__iteratorCount++;
$_ips___x_retval .= "\n\t\t\t\t\t\t" . ((IPSLib::appIsSearchable($app['app_directory'], 'usercontent') and !in_array($app['app_directory'], array('core', 'forums', 'members'))) ? "<li " . ($this->request['search_app'] == $app['app_directory'] ? "class='active'" : "") . "><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&search_app={$app['app_directory']}&mid={$this->request['mid']}&userMode={$this->request['userMode']}&sid={$this->request['_sid']}", "public", ''), "", "") . "'>" . IPSLib::getAppTitle($app['app_directory']) . "</a></li>" : "") . "\n\t\t\t\t\t\n";
}
$_ips___x_retval .= '';
unset($__iteratorCount);
return $_ips___x_retval;
}
示例4: globalTemplateMinimal
function globalTemplateMinimal($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array())
{
$IPBHTML = "";
if (IPSLib::locationHasHooks('skin_global_other', $this->_funcHooks['globalTemplateMinimal'])) {
$count_25be4b93e45d45a0afcf5f204d65ae86 = is_array($this->functionData['globalTemplateMinimal']) ? count($this->functionData['globalTemplateMinimal']) : 0;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['html'] = $html;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['documentHeadItems'] = $documentHeadItems;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['css'] = $css;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['jsModules'] = $jsModules;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['metaTags'] = $metaTags;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['header_items'] = $header_items;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['items'] = $items;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['footer_items'] = $footer_items;
$this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['stats'] = $stats;
}
$IPBHTML .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\t<html xml:lang=\"ru\" lang=\"ru\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n\t\t<!--<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />-->\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\n\t\t\n\t\t<!--<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">-->\n\t\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n\t\t<meta name=\"viewport\" content=\"initial-scale=1, maximum-scale=1, user-scalable = no;\">\n\t</head>\n\t<body id='ipboard_body'>\n\t\t<div id='ipbwrapper'>\n\t\t\t" . (count($items['navigation']) > 1 && !$this->settings['_mobile_nav_home'] ? "" . (($this->nav_count = count($items['navigation'])) ? "" : "") . "" . (($this->nav_back = isset($this->settings['_mobile_back_nav']) ? $this->settings['_mobile_back_nav'] : 2) ? "" : "") . "\n\t\t\t\t<div id='secondary_navigation'>\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$items['navigation'][$this->nav_count - $this->nav_back][1]}", "public", ''), "{$items['navigation'][$this->nav_count - $this->nav_back][2]}", "{$items['navigation'][$this->nav_count - $this->nav_back][3]}") . "'>{$this->lang->words['_larr']} {$items['navigation'][$this->nav_count - $this->nav_back][0]}</a>\n\t\t\t\t</div>" : "" . ((count($items['navigation']) == 1 || $this->settings['_mobile_nav_home']) && !$this->settings['_mobile_hide_nav'] ? "\n\t\t\t\t\t<div id='secondary_navigation'>\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' class='back'>{$this->lang->words['_larr']} {$this->lang->words['home']}</a>\n\t\t\t\t\t</div>\n\t\t\t\t" : "") . "") . "\n\t\t\t" . (method_exists($this->registry->output->getTemplate($this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? "\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() : '') . "\n\t\t\t" : "\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'defaultHeader') ? $this->registry->getClass('output')->getTemplate('global')->defaultHeader() : '') . "\n\t\t\t") . "\n\t\t\t<div id=\"options-button\">»</div>\t\n\t\t\t<div id='user_navigation'>\n\t\t\t\t" . (!$this->memberData['member_id'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}'>{$this->lang->words['sign_in']}</a>\n\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}'>{$this->lang->words['register']}</a>\n\t\t\t\t" : "<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\">{$this->lang->words['log_out']} ({$this->memberData['members_display_name']})</a>\n\t\t\t\t\t" . (($this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' title='{$this->lang->words['your_messenger']}'>{$this->lang->words['your_messenger']}</a>\n\t\t\t\t\t" : "") . "") . "\n\t\t\t\t" . (!ipsRegistry::$applications['members']['app_hide_tab'] && !count(ipsRegistry::$applications['members']['app_tab_groups']) && !IPSMember::isInGroup($this->memberData, ipsRegistry::$applications['members']['app_tab_groups']) ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_memberlist']}'>{$this->lang->words['tb_mlist']}</a>" : "") . "\n\t\t\t\t" . (ipsRegistry::$applications['blog']['app_enabled'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_prefix']}" . IPSLib::getAppTitle('blog') . "'>" . IPSLib::getAppTitle('blog') . "</a>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (ipsRegistry::$applications['gallery']['app_enabled'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_prefix']}" . IPSLib::getAppTitle('gallery') . "'>" . IPSLib::getAppTitle('gallery') . "</a>\n\t\t\t\t" : "") . "\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['view_new_posts']}</a>\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=all", "public", ''), "true", "members_status_all") . "'>{$this->lang->words['mob_status_updates']}</a>\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['sj_search']}</a>\n\t\t\t</div>\n\t\t\t<script type=\"text/javascript\">\n\t\t\t\t/* Prevent flash of header */\n\t\t\t\tdocument.getElementById('user_navigation').style.display = 'none';\n\t\t\t</script>\n\t\t\t\n\t\t\t<div id='content' class='clear'>\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t</div>\n\t\t\t\n\t\t\t<div id='footer' class='clear'>\n\t\t\t\t" . ($this->memberData['userAgentType'] != 'mobileAppLegacy' || $this->registry->output->isLargeTouchDevice() ? "\n\t\t\t\t\t<a id='full_version' href='#'>{$this->lang->words['full_version']}</a>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (count($footer_items['lang_chooser']['options']) ? "\n\t\t\t\t\t<a href='#' id='show_langs'>{$footer_items['lang_chooser']['default']}</a>\n\t\t\t\t\t<div id='show_langs_box' style='display: none'>\n\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", "public", ''), "", "") . "\" method=\"post\">\n\t\t\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t\t\t<input type='hidden' name='setlanguage' value='1' />\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"langurlbits\" value=\"cal_id={$this->request['cal_id']}\" />\n\t\t\t\t\t\t\t\t<label for='newLang' class='hide'>{$this->lang->words['language_prefix']}</label>\n\t\t\t\t\t\t\t\t<select name=\"langid\" id='newLang'>\n\t\t\t\t\t\t\t\t\t" . $this->__f__42eeecc43bfed00ea413c2df51bfa966($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t<input type='submit' class='input_submit alt' value='{$this->lang->words['jmp_go']}' id='newLangSubmit' />\n\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (($this->memberData['userAgentKey'] == 'iphone' || $this->memberData['userAgentKey'] == 'ipodtouch' and !$this->member->isMobileApp) ? "\n\t\t\t\t\t<div><a href=\"http://www.invisionpower.com/download/goiphone.php\">{$this->lang->words['freeiphoneapp']}</a></div>\n\t\t\t\t" : "") . "\n\t\t\t</div>\n\t\t\t<div id='task'>{$stats['task']}</div>\n\t\t</div>\n\t\t<div id='shade' style='display:none'></div>\n\t\t<!-- pre-load -->\n\t\t<div style='display:none'><img src='{style_images_url}/wait.gif' /></div>\n\t</body>\n</html>";
return $IPBHTML;
}
示例5: viewNewContent
/**
* View new posts since your last visit
*
* @return @e void
*/
public function viewNewContent()
{
IPSSearchRegistry::set('in.search_app', $this->request['search_app']);
/* Fetch member cache to see if we have a value set */
$vncPrefs = IPSMember::getFromMemberCache($this->memberData, 'vncPrefs');
/* Guests */
if (!$this->memberData['member_id'] and (!$this->request['period'] or $this->request['period'] == 'unread')) {
$this->request['period'] = 'today';
}
/* In period */
if ($vncPrefs === null or !isset($vncPrefs[IPSSearchRegistry::get('in.search_app')]['view']) or !empty($this->request['period']) and isset($this->request['change'])) {
$vncPrefs[IPSSearchRegistry::get('in.search_app')]['view'] = !empty($this->request['period']) ? $this->request['period'] : $this->settings['default_vnc_method'];
}
/* Follow filter enabled */
if ($vncPrefs === null or !isset($vncPrefs[IPSSearchRegistry::get('in.search_app')]['view']) or isset($this->request['followedItemsOnly'])) {
$vncPrefs[IPSSearchRegistry::get('in.search_app')]['vncFollowFilter'] = !empty($this->request['followedItemsOnly']) ? 1 : 0;
}
/* User mode */
if ($vncPrefs === null or !isset($vncPrefs[IPSSearchRegistry::get('in.search_app')]['view']) or isset($this->request['userMode'])) {
$vncPrefs[IPSSearchRegistry::get('in.search_app')]['userMode'] = !empty($this->request['userMode']) ? $this->request['userMode'] : '';
}
/* Set filters up */
IPSSearchRegistry::set('forums.vncForumFilters', $vncPrefs['forums']['vnc_forum_filter']);
IPSSearchRegistry::set('in.period', $vncPrefs[IPSSearchRegistry::get('in.search_app')]['view']);
IPSSearchRegistry::set('in.vncFollowFilterOn', $vncPrefs[IPSSearchRegistry::get('in.search_app')]['vncFollowFilter']);
IPSSearchRegistry::set('in.userMode', $vncPrefs[IPSSearchRegistry::get('in.search_app')]['userMode']);
/* Update member cache */
if (isset($this->request['period']) and isset($this->request['change'])) {
IPSMember::setToMemberCache($this->memberData, array('vncPrefs' => $vncPrefs));
}
IPSDebug::addMessage(var_export($vncPrefs, true));
IPSDebug::addMessage('Using: ' . IPSSearchRegistry::get('in.period'));
/* Can we do this? */
if (IPSLib::appIsSearchable(IPSSearchRegistry::get('in.search_app'), 'vnc') || IPSLib::appIsSearchable(IPSSearchRegistry::get('in.search_app'), 'active')) {
/* Can't do a specific unread search, so */
if (IPSSearchRegistry::get('in.period') == 'unread' && !IPSLib::appIsSearchable(IPSSearchRegistry::get('in.search_app'), 'vncWithUnreadContent')) {
IPSSearchRegistry::set('in.period', 'lastvisit');
}
/* Perform the search */
$this->searchController->viewNewContent();
/* Get count */
$count = $this->searchController->getResultCount();
/* Get results which will be array of IDs */
$results = $this->searchController->getResultSet();
/* Get templates to use */
$template = $this->searchController->fetchTemplates();
/* Fetch sort details */
$sortDropDown = $this->searchController->fetchSortDropDown();
/* Fetch sort details */
$sortIn = $this->searchController->fetchSortIn();
/* Reset for template */
$this->_resetRequestParameters();
if (IPSSearchRegistry::get('in.start') > 0 and !count($results)) {
$new_url = 'app=core&module=search&do=viewNewContent&period=' . IPSSearchRegistry::get('in.period') . '&userMode=' . IPSSearchRegistry::get('in.userMode') . '&search_app=' . IPSSearchRegistry::get('in.search_app') . '&sid=' . $this->request['_sid'];
$new_url .= '&st=' . (IPSSearchRegistry::get('in.start') - IPSSearchRegistry::get('opt.search_per_page')) . '&search_app_filters[' . IPSSearchRegistry::get('in.search_app') . '][searchInKey]=' . $this->request['search_app_filters'][IPSSearchRegistry::get('in.search_app')]['searchInKey'];
$this->registry->output->silentRedirect($this->settings['base_url'] . $new_url);
}
/* Parse result set */
$results = $this->registry->output->getTemplate($template['group'])->{$template}['template']($results, IPSSearchRegistry::get('opt.searchType') == 'titles' || IPSSearchRegistry::get('opt.noPostPreview') ? 1 : 0);
/* Build pagination */
$links = $this->registry->output->generatePagination(array('totalItems' => $count, 'itemsPerPage' => IPSSearchRegistry::get('opt.search_per_page'), 'currentStartValue' => IPSSearchRegistry::get('in.start'), 'baseUrl' => 'app=core&module=search&do=viewNewContent&period=' . IPSSearchRegistry::get('in.period') . '&userMode=' . IPSSearchRegistry::get('in.userMode') . '&search_app=' . IPSSearchRegistry::get('in.search_app') . '&sid=' . $this->request['_sid'] . $this->_returnSearchAppFilters()));
/* Showing */
$showing = array('start' => IPSSearchRegistry::get('in.start') + 1, 'end' => IPSSearchRegistry::get('in.start') + IPSSearchRegistry::get('opt.search_per_page') > $count ? $count : IPSSearchRegistry::get('in.start') + IPSSearchRegistry::get('opt.search_per_page'));
} else {
$count = 0;
$results = array();
}
/* Add Debug message */
IPSDebug::addMessage("View New Content Matches: " . $count);
/* Check for sortIn */
if (count($sortIn) && !$this->request['search_app_filters'][$this->request['search_app']]['searchInKey']) {
$this->request['search_app_filters'][$this->request['search_app']]['searchInKey'] = $sortIn[0][0];
}
/* Output */
$this->title = $this->lang->words['new_posts_title'];
$this->registry->output->addNavigation($this->lang->words['new_posts_title'], '');
$this->output .= $this->registry->output->getTemplate('search')->newContentView($results, $links, $count, $sortDropDown, $sortIn, IPSSearchRegistry::get('set.resultCutToDate'));
}
示例6: getTagSupport
/**
* Get which applications can use tags
*
* @return array
*/
public function getTagSupport()
{
if (!ipsRegistry::$settings['tags_enabled']) {
return array();
}
$return = array();
foreach (ipsRegistry::$applications as $app) {
$return[$app['app_directory']] = (bool) IPSLib::appIsSearchable($app['app_directory'], 'tags');
}
return $return;
}