From: <ir...@us...> - 2012-10-20 11:50:59
|
Revision: 10229 http://sourceforge.net/p/xoops/svn/10229 Author: irmtfan Date: 2012-10-20 11:50:14 +0000 (Sat, 20 Oct 2012) Log Message: ----------- Add: new fulldiv template set (opacity), hack XOOPSCORE/search.php bug fix: count_subforum, $criteria_post and $criteria_count only for users improve: add topic_read = 0/1 and forum_read = 0/1 smarty variables Modified Paths: -------------- XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt XoopsModules/newbb/branches/irmtfan/newbb/class/forum.php XoopsModules/newbb/branches/irmtfan/newbb/class/topic.renderer.php XoopsModules/newbb/branches/irmtfan/newbb/templates/css/language/english/style.css XoopsModules/newbb/branches/irmtfan/newbb/templates/css/language/persian/style.css XoopsModules/newbb/branches/irmtfan/newbb/templates/newbb_index.html XoopsModules/newbb/branches/irmtfan/newbb/templates/newbb_viewall.html XoopsModules/newbb/branches/irmtfan/newbb/templates/newbb_viewforum.html XoopsModules/newbb/branches/irmtfan/newbb/viewpost.php Added Paths: ----------- XoopsModules/newbb/branches/irmtfan/XOOPS255/ XoopsModules/newbb/branches/irmtfan/XOOPS255/search.php XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_block.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_block_author.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_block_post.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_block_text.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_block_topic.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_tag_block_cloud.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/blocks/newbb_tag_block_top.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/english/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/english/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/english/style.css XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/persian/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/persian/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/css/language/persian/style.css XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/admin_delete.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/admin_edit.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/admin_merge.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/admin_move.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/anonym.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/attachment.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/blank.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/blank.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/buzz.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/delicious.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/digg.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/document.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/down.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/facebook.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/forum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/forum_new.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/friendfeed.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/googleplus.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/lastposticon.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/less.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/linkedin.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/minus.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/more.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/new_forum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/next.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/pdf.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/plus.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/poll.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/post.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/previous.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/printer.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rate1.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rate2.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rate3.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rate4.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rate5.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/reddit.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/rss.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/spacer-a.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/statistik.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/stumbleupon.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/subforum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/technorati.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_digest.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_hot.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_hot_new.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_locked.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_my.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_new.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/topic_sticky.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/twitter.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/up.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/whosonline.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/icon/wong.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/new_forum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/new_subforum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/offline.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/online.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_bann.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_delete.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_edit.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_pdf.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_quote.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_reply.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/p_report.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/t_new.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/t_poll.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/t_qr.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/t_qr_expand.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/english/t_reply.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/new_forum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/new_subforum.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/offline.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/online.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_bann.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_delete.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_edit.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_quote.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_reply.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_report.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/p_up.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/t_new.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/t_poll.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/t_qr.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/t_qr_expand.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/language/persian/t_reply.png XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/ace.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/avi.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/bmp.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/doc.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/exe.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/flash.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/gif.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/html.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/jpeg.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/jpg.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/mid.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/mov.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/mp3.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/mpg.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/netscape.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/pdf.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/png.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/ppt.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/rar.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/txt.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/unknown.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/wav.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/xls.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/mime/zip.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/blue.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/green.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/img_backing.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/img_left.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/img_right.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/images/rpg/orange.gif XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/language/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/language/english/ XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/language/english/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/language/english/newbb_toggle_class.js XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/js/language/index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_edit_post.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_index.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_index_menu.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_notification_select.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_online.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_poll_results.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_poll_view.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_rss.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_search.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_searchresults.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_thread.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewall.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewforum.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewforum_menu.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewforum_subforum.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewpost.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/newbb_viewtopic.html XoopsModules/newbb/branches/irmtfan/newbb/templates_fulldiv_opacity/readme.txt Added: XoopsModules/newbb/branches/irmtfan/XOOPS255/search.php =================================================================== --- XoopsModules/newbb/branches/irmtfan/XOOPS255/search.php (rev 0) +++ XoopsModules/newbb/branches/irmtfan/XOOPS255/search.php 2012-10-20 11:50:14 UTC (rev 10229) @@ -0,0 +1,292 @@ +<?php +/* + You may not change or alter any portion of this comment or credits + of supporting developers from this source code or any supporting source code + which is considered copyrighted (c) material of the original comment or credit authors. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +*/ + +/** + * XOOPS global search + * + * See the enclosed file license.txt for licensing information. + * If you did not receive this file, get it at http://www.fsf.org/copyleft/gpl.html + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license http://www.fsf.org/copyleft/gpl.html GNU General Public License (GPL) + * @package core + * @since 2.0.0 + * @author Kazumi Ono (AKA onokazu) + * @author Taiwen Jiang <ph...@us...> + * @version $Id: search.php 8066 2011-11-06 05:09:33Z beckmi $ + * @todo Modularize; Both search algorithms and interface will be redesigned + */ +include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'mainfile.php'; + +xoops_loadLanguage('search'); + +$config_handler =& xoops_gethandler('config'); +$xoopsConfigSearch = $config_handler->getConfigsByCat(XOOPS_CONF_SEARCH); + +if ($xoopsConfigSearch['enable_search'] != 1) { + header('Location: ' . XOOPS_URL . '/index.php'); + exit(); +} +$action = "search"; +if (!empty($_GET['action'])) { + $action = trim(strip_tags($_GET['action'])); +} else if (!empty($_POST['action'])) { + $action = trim(strip_tags($_POST['action'])); +} +$query = ""; +if (!empty($_GET['query'])) { + $query = trim(strip_tags($_GET['query'])); +} else if (!empty($_POST['query'])) { + $query = trim(strip_tags($_POST['query'])); +} +$andor = "AND"; +if (!empty($_GET['andor'])) { + $andor = trim(strip_tags($_GET['andor'])); +} else if (!empty($_POST['andor'])) { + $andor = trim(strip_tags($_POST['andor'])); +} +$mid = $uid = $start = 0; +if (!empty($_GET['mid'])) { + $mid = intval($_GET['mid']); +} else if (!empty($_POST['mid'])) { + $mid = intval($_POST['mid']); +} +if (!empty($_GET['uid'])) { + $uid = intval($_GET['uid']); +} else if (!empty($_POST['uid'])) { + $uid = intval($_POST['uid']); +} +if (!empty($_GET['start'])) { + $start = intval($_GET['start']); +} else if (!empty($_POST['start'])) { + $start = intval($_POST['start']); +} + +$queries = array(); + +if ($action == "results") { + if ($query == "") { + redirect_header("search.php", 1, _SR_PLZENTER); + exit(); + } +} else if ($action == "showall") { + if ($query == "" || empty($mid)) { + redirect_header("search.php", 1, _SR_PLZENTER); + exit(); + } +} else if ($action == "showallbyuser") { + if (empty($mid) || empty($uid)) { + redirect_header("search.php", 1, _SR_PLZENTER); + exit(); + } +} + +$groups = is_object($xoopsUser) ? $xoopsUser->getGroups() : XOOPS_GROUP_ANONYMOUS; +$gperm_handler =& xoops_gethandler('groupperm'); +$available_modules = $gperm_handler->getItemIds('module_read', $groups); +if ($action == 'search') { + include $GLOBALS['xoops']->path('header.php'); + include $GLOBALS['xoops']->path('include/searchform.php'); + $search_form->display(); + include $GLOBALS['xoops']->path('footer.php'); + exit(); +} +if ($andor != "OR" && $andor != "exact" && $andor != "AND") { + $andor = "AND"; +} + +$myts =& MyTextSanitizer::getInstance(); +if ($action != 'showallbyuser') { + if ($andor != "exact") { + $ignored_queries = array(); // holds kewords that are shorter than allowed minmum length + $temp_queries = preg_split('/[\s,]+/', $query); + foreach ($temp_queries as $q) { + $q = trim($q); + if (strlen($q) >= $xoopsConfigSearch['keyword_min']) { + $queries[] = $myts->addSlashes($q); + } else { + $ignored_queries[] = $myts->addSlashes($q); + } + } + if (count($queries) == 0) { + redirect_header('search.php', 2, sprintf(_SR_KEYTOOSHORT, $xoopsConfigSearch['keyword_min'])); + exit(); + } + } else { + $query = trim($query); + if (strlen($query) < $xoopsConfigSearch['keyword_min']) { + redirect_header('search.php', 2, sprintf(_SR_KEYTOOSHORT, $xoopsConfigSearch['keyword_min'])); + exit(); + } + $queries = array($myts->addSlashes($query)); + } +} +switch ($action) { + case "results": + $module_handler =& xoops_gethandler('module'); + $criteria = new CriteriaCompo(new Criteria('hassearch', 1)); + $criteria->add(new Criteria('isactive', 1)); + $criteria->add(new Criteria('mid', "(" . implode(',', $available_modules) . ")", 'IN')); + $modules = $module_handler->getObjects($criteria, true); + $mids = isset($_REQUEST['mids']) ? $_REQUEST['mids'] : array(); + if (empty($mids) || ! is_array($mids)) { + unset($mids); + $mids = array_keys($modules); + } + $xoopsOption['xoops_pagetitle'] = _SR_SEARCHRESULTS . ': ' . implode(' ', $queries); + include $GLOBALS['xoops']->path('header.php'); + $nomatch = true; + echo "<h3>" . _SR_SEARCHRESULTS . "</h3>\n"; + echo _SR_KEYWORDS . ':'; + if ($andor != 'exact') { + foreach ($queries as $q) { + echo ' <strong>' . htmlspecialchars(stripslashes($q)) . '</strong>'; + } + if (!empty($ignored_queries)) { + echo '<br />'; + printf(_SR_IGNOREDWORDS, $xoopsConfigSearch['keyword_min']); + foreach ($ignored_queries as $q) { + echo ' <strong>' . htmlspecialchars(stripslashes($q)) . '</strong>'; + } + } + } else { + echo ' "<strong>' . htmlspecialchars(stripslashes($queries[0])) . '</strong>"'; + } + echo '<br />'; + foreach ($mids as $mid) { + $mid = intval($mid); + if (in_array($mid, $available_modules)) { + $module = $modules[$mid]; + $results = $module->search($queries, $andor, 5, 0); + $count = count($results); + if (is_array($results) && $count > 0) { + $nomatch = false; + echo "<h4>" . $module->getVar('name') . "</h4>"; + for($i = 0; $i < $count; $i++) { + if (isset($results[$i]['image']) && $results[$i]['image'] != "") { + echo "<img src='modules/" . $module->getVar('dirname') . "/" . $results[$i]['image'] . "' alt='" . $module->getVar('name') . "' /> "; + } else { + echo "<img style='width:26px; height:26px;' src='images/icons/posticon2.gif' alt='" . $module->getVar('name') . "' /> "; + } + if (!preg_match("/^http[s]*:\/\//i", $results[$i]['link'])) { + $results[$i]['link'] = "modules/" . $module->getVar('dirname') . "/" . $results[$i]['link']; + } + + echo "<strong><a href='" . $results[$i]['link'] . "' title=''>" . $myts->htmlspecialchars($results[$i]['title']) . "</a></strong><br />\n"; + echo "<span class='x-small'>"; + $results[$i]['uid'] = @intval($results[$i]['uid']); + if (!empty($results[$i]['uid'])) { + $uname = XoopsUser::getUnameFromId($results[$i]['uid']); + echo " <a href='" . XOOPS_URL . "/userinfo.php?uid=" . $results[$i]['uid'] . "' title=''>" . $uname . "</a>\n"; + } + echo !empty($results[$i]['time']) ? " (" . formatTimestamp(intval($results[$i]['time'])) . ")" : ""; + echo "</span><br />\n"; + } + if ($count >= 5) { + // START irmtfan hack to use MODULE_NAME/search.php file instead of XOOPSCORE/search.php + $module_search_file_relpath = "modules/" . $module->getVar('dirname') . "/search.php"; + if ( is_file( XOOPS_ROOT_PATH . "/" . $module_search_file_relpath ) ) { + $queryString = urlencode(stripslashes(implode(' ', $queries))); + $search_url = XOOPS_URL . "/" . $module_search_file_relpath . "?term=" . $queryString . "&query=" . $queryString . "&andor={$andor}"; + } else { + $search_url = XOOPS_URL . '/search.php?query=' . urlencode(stripslashes(implode(' ', $queries))); + $search_url .= "&mid={$mid}&action=showall&andor={$andor}"; + } + // END irmtfan hack to use MODULE_NAME/search.php file instead of XOOPSCORE/search.php + echo '<p><a href="' . htmlspecialchars($search_url) . '" title="' . _SR_SHOWALLR . '">' . _SR_SHOWALLR . '</a></p>'; + } + } + } + unset($results); + unset($module); + } + if ($nomatch) { + echo "<p>" . _SR_NOMATCH . "</p>"; + } + include $GLOBALS['xoops']->path('include/searchform.php'); + $search_form->display(); + break; + + case "showall": + case 'showallbyuser': + include $GLOBALS['xoops']->path('header.php'); + $module_handler =& xoops_gethandler('module'); + $module =& $module_handler->get($mid); + $results = $module->search($queries, $andor, 20, $start, $uid); + $count = count($results); + if (is_array($results) && $count > 0) { + $next_results =& $module->search($queries, $andor, 1, $start + 20, $uid); + $next_count = count($next_results); + $has_next = false; + if (is_array($next_results) && $next_count == 1) { + $has_next = true; + } + echo "<h4>" . _SR_SEARCHRESULTS . "</h4>\n"; + if ($action == 'showall') { + echo _SR_KEYWORDS . ':'; + if ($andor != 'exact') { + foreach ($queries as $q) { + echo ' <strong>' . htmlspecialchars(stripslashes($q)) . '</strong>'; + } + } else { + echo ' "<strong>' . htmlspecialchars(stripslashes($queries[0])) . '</strong>"'; + } + echo '<br />'; + } + printf(_SR_SHOWING, $start + 1, $start + $count); + echo "<h5>" . $module->getVar('name') . "</h5>"; + for ($i = 0; $i < $count; $i ++) { + if (isset($results[$i]['image']) && $results[$i]['image'] != '') { + echo "<img src='modules/" . $module->getVar('dirname', "n") . "/" . $results[$i]['image'] . "' alt='" . $module->getVar('name') . "' /> "; + } else { + echo "<img style='width:26px; height:26px;' src='images/icons/posticon2.gif' alt='" . $module->getVar("name") . "' /> "; + } + if (!preg_match("/^http[s]*:\/\//i", $results[$i]['link'])) { + $results[$i]['link'] = "modules/" . $module->getVar('dirname') . "/" . $results[$i]['link']; + } + echo "<strong><a href='" . $results[$i]['link'] . "'>" . $myts->htmlspecialchars($results[$i]['title']) . "</a></strong><br />\n"; + echo "<span class='x-small'>"; + $results[$i]['uid'] = @intval($results[$i]['uid']); + if (!empty($results[$i]['uid'])) { + $uname = XoopsUser::getUnameFromId($results[$i]['uid']); + echo " <a href='" . XOOPS_URL . "/userinfo.php?uid=" . $results[$i]['uid'] . "'>" . $uname . "</a>\n"; + } + echo !empty($results[$i]['time']) ? " (" . formatTimestamp(intval($results[$i]['time'])) . ")" : ""; + echo "</span><br />\n"; + } + echo '<table><tr>'; + $search_url = XOOPS_URL . '/search.php?query=' . urlencode(stripslashes(implode(' ', $queries))); + $search_url .= "&mid={$mid}&action={$action}&andor={$andor}"; + if ($action == 'showallbyuser') { + $search_url .= "&uid={$uid}"; + } + if ($start > 0) { + $prev = $start - 20; + echo '<td align="left">'; + $search_url_prev = $search_url . "&start={$prev}"; + echo '<a href="' . htmlspecialchars($search_url_prev) . '">' . _SR_PREVIOUS . '</a></td>'; + } + echo '<td> </td>'; + if (false != $has_next) { + $next = $start + 20; + $search_url_next = $search_url . "&start={$next}"; + echo '<td align="right"><a href="' . htmlspecialchars($search_url_next) . '">' . _SR_NEXT . '</a></td>'; + } + echo '</tr></table>'; + } else { + echo '<p>' . _SR_NOMATCH . '</p>'; + } + include $GLOBALS['xoops']->path('include/searchform.php'); + $search_form->display(); + break; +} +include $GLOBALS['xoops']->path('footer.php'); +?> \ No newline at end of file Modified: XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt =================================================================== --- XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt 2012-10-20 00:13:47 UTC (rev 10228) +++ XoopsModules/newbb/branches/irmtfan/newbb/changelog-rev10109.txt 2012-10-20 11:50:14 UTC (rev 10229) @@ -1,3 +1,21 @@ +date 2012-10-20 +============================= |