From: Mutwin K. <mu...@us...> - 2004-11-15 20:39:28
|
Update of /cvsroot/fuwiki/fuwiki_1_0/FWiki In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22330/FWiki Modified Files: Images.php Search.php Stats.php Log Message: nearing rc2 Index: Search.php =================================================================== RCS file: /cvsroot/fuwiki/fuwiki_1_0/FWiki/Search.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Search.php 7 Nov 2004 12:00:34 -0000 1.2 --- Search.php 15 Nov 2004 20:39:18 -0000 1.3 *************** *** 37,46 **** function show_search_results($str, $begin=0) { ! global $WikiStats, $WikiIO; //$WikiStats->inc_count("total_searches"); $str = encode_utf8($str); $str = stripslashes(preg_replace("/\"([^\"]*)\"/Ue", "preg_replace('/ /', '-', stripslashes('\\1'), -1)", $str, -1)); - $strs = split(" ", $str); $results = ""; $total = 0; for($i = 0; $i < 2; $i++) { $query[$i] = "SELECT name,id".($i == 1 ? ",text" : "")." FROM "._CACHE_TBL." WHERE"; --- 37,50 ---- function show_search_results($str, $begin=0) { ! global $WikiStats, $WikiIO, $_GET; //$WikiStats->inc_count("total_searches"); + if(!empty($_GET["start"])) + $start = $_GET["start"]; + else + $start = 0; $str = encode_utf8($str); $str = stripslashes(preg_replace("/\"([^\"]*)\"/Ue", "preg_replace('/ /', '-', stripslashes('\\1'), -1)", $str, -1)); $results = ""; $total = 0; + $str = preg_replace("/(^| )(?![+-])/", " +", $str, -1); for($i = 0; $i < 2; $i++) { $query[$i] = "SELECT name,id".($i == 1 ? ",text" : "")." FROM "._CACHE_TBL." WHERE"; *************** *** 48,67 **** if($i == 0) $where = "name"; else $where = "text"; ! foreach($strs as $s) { ! if($n == 0) $n = 1; ! else $query[$i] .= " AND"; ! if(preg_match("/^\*|\*$/", $s)) { ! $s = preg_replace("/^\*/", "%", $s, 1); ! $s = preg_replace("/\*$/", "%", $s, 1); ! $s = preg_replace("/^([^%])/", "% \\1", $s, 1); ! $s = preg_replace("/([^%])$/", "\\1 %", $s, 1); ! $query[$i] .= " ".$where." LIKE '".preg_replace("/-/", " ", $s, -1)."'"; ! } ! else ! $query[$i] .= " ".$where." LIKE '% ".preg_replace("/-/", " ", $s, -1)." %'"; ! } ! $query[$i] .= " LIMIT 25;"; $res = $WikiIO->query($query[$i]); if(!$res || mysql_num_rows($res) < 1) { if($i == 0) continue; --- 52,60 ---- if($i == 0) $where = "name"; else $where = "text"; ! $query[$i] .= " MATCH(".$where.") AGAINST ('".$str."' IN BOOLEAN MODE)"; ! $query[$i] .= " LIMIT ".$start.",25;"; $res = $WikiIO->query($query[$i]); if(!$res || mysql_num_rows($res) < 1) { + echo mysql_error(); if($i == 0) continue; *************** *** 72,84 **** $results .= "<table>\n"; while($a = mysql_fetch_array($res)) { ! if($i == 0) $results .= "<tr><td><b><a href=\"index.php?".$a["name"]."\">".$a["name"]."</a></b></td></tr>\n"; ! else { $results .= "<tr><td><a href=\"index.php?".$a["name"]."\">".$a["name"]."</a></td><td>\n"; ! foreach($strs as $s) { ! preg_match("/(.{0,50})(".preg_replace("/-/", " ", $s, -1).")(.{0,50})/i", ($a["text"]), $o); ! $results .= "(...)".$o[1]."<b>".$o[2]."</b>".$o[3]."(...)<br />"; } ! $results."</td></tr>\n"; } $total++; --- 65,82 ---- $results .= "<table>\n"; while($a = mysql_fetch_array($res)) { ! if($i == 0) { ! $total_title++; $results .= "<tr><td><b><a href=\"index.php?".$a["name"]."\">".$a["name"]."</a></b></td></tr>\n"; ! } else { $results .= "<tr><td><a href=\"index.php?".$a["name"]."\">".$a["name"]."</a></td><td>\n"; ! $ar = split(" ", $str); ! foreach($ar as $s) { ! if(strlen($s) < 3 || preg_match("/^-/", $s)) ! continue; ! $s = preg_replace("/^\+/", "", $s, 1); ! preg_match("/(.{0,50})(".preg_replace("/-/", " ", $s, -1).")(.{0,50})/i", stripslashes($a["text"]), $o); ! $results .= "(...)".$o[1]."<b>".$o[2]."</b>".$o[3]."(...)<br />"; } ! $results .= "</td></tr>\n"; } $total++; *************** *** 86,90 **** $results .= "</table>\n"; } ! $out = "\n"._FWS_RESULTS . " (". _FWS_TOTALRES . $total .")<br /><br />\n" . $results; return $out; --- 84,94 ---- $results .= "</table>\n"; } ! $out = "\n"._FWS_RESULTS . " (". _FWS_TOTALRES . $total .")<br />"; ! if($total_title >= 25 || $total >= 25) { ! $out .= "<form action=\"index.php?FWikiSearch&start=".($start+25)."\" method=\"post\">\n"; ! $out .= "<input type=\"hidden\" name=\"searchstr\" value=\"".$_POST["searchstr"]."\"><input type=\"hidden\" name=\"Searching\" value=\"true\">\n"; ! $out .= "<input type=\"submit\" value=\"". _FWS_MORERESULTS ."\"><br />\n"; ! } ! $out .= "<br />\n" . $results; return $out; *************** *** 94,98 **** { $out = "\n"._FWS_TITLE . "<br /><br />\n"; ! $out .= "<form action=\"index.php?FWikiSearch\" method=\"POST\">\n"; $out .= "<input name=\"searchstr\">\n"; $out .= "<input type=\"hidden\" name=\"Searching\" value=\"true\">\n"; --- 98,102 ---- { $out = "\n"._FWS_TITLE . "<br /><br />\n"; ! $out .= "<form action=\"index.php?FWikiSearch\" method=\"post\">\n"; $out .= "<input name=\"searchstr\">\n"; $out .= "<input type=\"hidden\" name=\"Searching\" value=\"true\">\n"; Index: Stats.php =================================================================== RCS file: /cvsroot/fuwiki/fuwiki_1_0/FWiki/Stats.php,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Stats.php 13 Oct 2004 20:28:27 -0000 1.1.1.1 --- Stats.php 15 Nov 2004 20:39:18 -0000 1.2 *************** *** 40,44 **** function FWikiMain() { ! global $WikiStats; $out = "<h1>"._SITENAME ." "._FWST_HEADER."</h1><br />\n\n"; --- 40,44 ---- function FWikiMain() { ! global $WikiStats, $WikiIO; $out = "<h1>"._SITENAME ." "._FWST_HEADER."</h1><br />\n\n"; *************** *** 79,82 **** --- 79,111 ---- $out .= "</tr>\n</table>\n\n"; + $out .= "<br /><br /><h2>"._FWST_TODAY."</h2>\n"; + $a1 = array(); $nums = array(); $nchanges = 0; + $time = getdate(); + $time["hours"] = 0; $time["minutes"] = 0; $time["seconds"] = 0; + $res = $WikiIO->query("SELECT date FROM wikis WHERE date > '".get_timestamp($time)."'"); + if(!$res || mysql_num_rows($res) < 1) { + $out .= _FWST_NO_CHTODAY; echo mysql_error(); + } else { + $out .= "<table border=\"1\">\n"; + $o1 = "<td><b>"._FWST_HOUR."</b></td>"; $o2 = "<td><b>"._FWST_CHANGES."</b></td>"; + while($a = mysql_fetch_array($res)) { + $nums[substr($a["date"], 8, 2)]++; + $nchanges++; + } + if(_CACHE_TBL != "wikis") { + $res = $WikiIO->query("SELECT date FROM wikis_cache WHERE date > '".get_timestamp($time)."'"); + if($res) + while($a = mysql_fetch_array($res)) { + $nums[substr($a["date"], 8, 2)]++; + $nchanges++; + } + } + for($i = 0; $i < 24; $i++) { + $o1 .= "<td>".$i."</td>"; $o2 .= "<td>".($nchanges == 0 ? "0" : round(($nums[$i]/$nchanges)*100, 0)."% (".$nums[$i].")"). "</td>"; + } + $out .= "\n<tr>".$o1."</tr>\n<tr>".$o2."</tr>"; + $out .= "\n</table>\n\n"; + } + $out .= "<br /><br /><h2>"._FWST_HOURLY." "._FWST_HEADER."</h2>\n<table border=\"1\">\n"; $o1 = "<td><b>"._FWST_HOUR."</b></td>"; $o2 = "<td><b>"._FWST_PGVIEWS."</b></td>"; $o3 = "<td><b>"._FWST_CHANGES."</b></td>"; Index: Images.php =================================================================== RCS file: /cvsroot/fuwiki/fuwiki_1_0/FWiki/Images.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Images.php 7 Nov 2004 12:02:47 -0000 1.1 --- Images.php 15 Nov 2004 20:39:18 -0000 1.2 *************** *** 26,29 **** --- 26,43 ---- return "<a href=\"index.php?FWikiImages&order=".$n."\">".$header."</a>"; } + + function get_neighbours($id, $next=true) + { + global $WikiIO; + if($next) + $query = "SELECT id FROM images WHERE id > ".$id." ORDER BY id LIMIT 1;"; + else + $query = "SELECT id FROM images WHERE id < ".$id." ORDER BY id DESC LIMIT 1;"; + $res = $WikiIO->query($query); + if(!$res || mysql_num_rows($res) < 1) + return 0; + $a = mysql_fetch_array($res); + return $a["id"]; + } function FWikiMain() *************** *** 55,59 **** $a = mysql_fetch_array($res); $gallery = $_GET["gallery"]; ! $out = "<a href=\"index.php?FWikiImages&gallery=".($gallery-1)."\"><<</a> <a href=\"index.php?FWikiImages&gallery=".($gallery+1)."\">>></a><br />\n"; $out .= "<a href=\"index.php?".$a["pagename"]."\">".$a["pagename"]."</a>" . " : ".$a["name"]."<br />"; $out .= "<img src=\"upload/".$a["id"].".".get_file_extension($a["name"])."\"><br />\n"; --- 69,73 ---- $a = mysql_fetch_array($res); $gallery = $_GET["gallery"]; ! $out = "<a href=\"index.php?FWikiImages&gallery=".get_neighbours($gallery, false)."\"><<</a> <a href=\"index.php?FWikiImages&gallery=".get_neighbours($gallery, true)."\">>></a><br />\n"; $out .= "<a href=\"index.php?".$a["pagename"]."\">".$a["pagename"]."</a>" . " : ".$a["name"]."<br />"; $out .= "<img src=\"upload/".$a["id"].".".get_file_extension($a["name"])."\"><br />\n"; *************** *** 63,67 **** $out = "<table>\n<tr><td>".gen_header(_FWI_FILENAME, 1)."</td><td>".gen_header(_FWI_PAGENAME, 2)."</td><td>".gen_header(_FWI_UPLOADER, 3)."</td><td>".gen_header(_FWI_UPLOADTIME, 4)."</td><td> </td></tr>\n"; while ($a = mysql_fetch_array($res)) { ! $out .= "<tr><td>".$a["name"]."</td><td>".$a["pagename"]."</td><td>".$WikiUser->get_user_name($a["uploader_id"])."</td><td>".timestamp_pattern($a["upload_time"])."</td>"; $out .= "<td><a href=\"index.php?FWikiImages&gallery=".$a["id"]."\">"._FWI_VIEW."</a></td></tr>\n"; --- 77,81 ---- $out = "<table>\n<tr><td>".gen_header(_FWI_FILENAME, 1)."</td><td>".gen_header(_FWI_PAGENAME, 2)."</td><td>".gen_header(_FWI_UPLOADER, 3)."</td><td>".gen_header(_FWI_UPLOADTIME, 4)."</td><td> </td></tr>\n"; while ($a = mysql_fetch_array($res)) { ! $out .= "<tr><td>".$a["name"]."</td><td><a href=\"index.php?".$a["pagename"]."\">".$a["pagename"]."</a></td><td>".$WikiUser->get_user_name($a["uploader_id"])."</td><td>".timestamp_pattern($a["upload_time"])."</td>"; $out .= "<td><a href=\"index.php?FWikiImages&gallery=".$a["id"]."\">"._FWI_VIEW."</a></td></tr>\n"; |