2 $buildlogs_server = "buildlogs.pld-linux.org";
24 $qa_base = "http://ftp.pld-linux.org/.stat/builder";
26 "/ep/rpmqa-ac-i386.txt",
27 "/ep/rpmqa-ac-i386.txt",
28 "/ep/rpmqa-ac-i386.txt",
30 "/alpha/rpmqa-ac-alpha.txt",
31 "/newboss/rpmqa-ac-sparc.txt",
33 "/ep/rpmqa-ra-i386.txt",
34 "/ep/rpmqa-ra-i586.txt",
35 "/ep/rpmqa-ra-i686.txt",
36 "/mifgate/rpmqa-ra-alpha.txt",
37 "/team/rpmqa-ra-sparc.txt",
39 "/kenny/rpmqa-nest-i386.txt",
40 "/kenny/rpmqa-nest-i586.txt",
41 "/kenny/rpmqa-nest-i686.txt",
45 $local = 1; /* $local=0 for FTP */
46 $root_directory = "/home/services/ftp/pub/logs";
48 /* It should be set */
50 $langs["en_US"]["charset"]="ISO-8859-1";
51 $langs["pl_PL"]["charset"]="ISO-8859-2";
54 if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"]))
56 $rows=explode(";",$_SERVER["HTTP_ACCEPT_LANGUAGE"]);
57 $rows=explode(",",$rows[0]);
58 $lang_detected=rtrim($rows[0]);
59 } else if (preg_match("/opera/i",$_SERVER["HTTP_USER_AGENT"]))
61 $lang_detected=preg_replace("/.*\[(.*)\].*/i","\\1",$_SERVER["HTTP_USER_AGENT"]);
65 $lang_detected=preg_replace("/^pl$/i","pl_PL",$lang_detected);
67 if (isset($lang_detected) && isset($langs[$lang_detected]))
72 if (isset($_GET["lang"]))$_SESSION["lang"]=$_GET["lang"];
73 if (isset($_SESSION["lang"]))$lang=$_SESSION["lang"];
76 setlocale(LC_ALL,$lang);
77 bindtextdomain("messages","locale");
78 textdomain("messages");
80 if (isset($_GET["idx"]))$idx=$_GET["idx"];
81 if (isset($_GET["ok"]))$ok=$_GET["ok"];
82 if (isset($_GET["ns"]))$ns=$_GET["ns"];
83 if (isset($_GET["cnt"]))$cnt=$_GET["cnt"];
84 if (isset($_GET["action"]))$action=$_GET["action"];
85 if (isset($_GET["off"]))$off=$_GET["off"];
86 if (isset($_GET["id"]))$id=$_GET["id"];
88 if (isset($_POST["str"]))$str=$_POST["str"];
89 if (isset($_POST["idx"]))$idx=$_POST["idx"];
90 if (isset($_POST["action"]))$action=$_POST["action"];
94 echo '<' . '?xml version="1.0" encoding="' . _("ISO-8859-1") .'"?' . ">\n";
95 echo '<' . '?xml-stylesheet href="#internalStyle" type="text/css"?' . ">\n";
97 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
98 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
99 <html xmlns="http://www.w3.org/1999/xhtml">
101 <title>PLD Build Logs</title>
102 <?php echo '<meta http-equiv="Content-type" content="text/html; charset=' . _("ISO-8859-1") .'"/>' ."\n";?>
103 <style type="text/css"><!--
104 A { text-decoration: none; }
105 A:hover { text-decoration: underline; }
106 H1 { font-family: arial,helvetica,sans-serif;
109 H2 { font-family: arial,helvetica,sans-serif;
112 BODY,TD { font-family: arial,helvetica,sans-serif;
114 TH { font-family: arial,helvetica,sans-serif;
120 <!-- Diffrent color for visited link doesn't make much sense here...
121 this page is autogenerated and it might be misleading after some
122 build log changes. -->
123 <body bgcolor="#ffffff" text="#000000" link="#5f26cd" vlink="#5f26cd">
129 echo "<table cellpadding=\"10\"><tr><td bgcolor=\"#000000\">".
130 "<font color=\"#cccccc\"><pre>";
135 echo "</pre></font></td></tr></table>\n";
140 echo "</body></html>";
146 echo "Fatal error: $msg";
149 function open_ftp($pidx="", $pok="")
151 global $idx, $addr, $buildlogs_server, $ok;
152 global $ftp_conn, $big_url, $url, $ns;
155 if ($pidx==="")$pidx=$idx;
156 if ($pok==="")$pok=$ok;
158 if (!isset($pidx) || !isset($addr[$pidx]))
167 $a = "$addr[$pidx]/OK";
169 $a = "$addr[$pidx]/FAIL";
177 $big_url = "$url?idx=$idx&ok=$ok&ns=$ns&cnt=$cnt";
179 $ftp = ftp_connect($buildlogs_server);
182 mydie(_("cannot connect to")." $buildlogs_server");
186 if (ftp_login($ftp, "anonymous",
187 "buildlogs-iface@pld-linux.org") == false) {
189 mydie(_("cannot ftp login to")." $buildlogs_server");
193 $list = ftp_nlist($ftp, $a);
194 if ($list == false) {
196 mydie(_("cannot list")." $a");
205 function directory_list($pidx="",$pok="")
207 global $idx, $addr, $buildlogs_server, $ok;
208 global $root_directory, $big_url, $url, $ns;
211 if ($pidx==="")$pidx=$idx;
212 if ($pok==="")$pok=$ok;
213 if (!isset($pidx) || !isset($addr[$pidx]))
222 $a = "$addr[$pidx]/OK";
224 $a = "$addr[$pidx]/FAIL";
232 $big_url = "$url?idx=$idx&ok=$ok&ns=$ns&cnt=$cnt";
234 $dir = opendir("$root_directory$a");
236 while ($file = readdir($dir)) {
237 if (($file != ".") && ($file != "..")) {
238 $list[$i] = "$a/$file";
248 global $idx, $addr, $ok;
249 global $ftp_conn, $big_url, $ns, $qa_addr;
250 global $off, $cnt, $local, $root_directory;
253 $list = directory_list();
261 echo "<h1>"._("Listing of")." $addr[$idx]/OK "
262 ."(<a href=\"$big_url&ok=0\">"._("fail")."</a>)</h1>\n";
264 echo "<h1>"._("Listing of")." $addr[$idx]/FAIL "
265 ."(<a href=\"$big_url&ok=1\">"._("ok")."</a>)</h1>\n";
268 echo "<div align=\"center\"><table cols=\"4\" border=\"0\" cellspacing=\"1\" ".
269 "cellpadding=\"3\" bgcolor=\"#000000\" width=\"90%\">\n";
270 echo "<tr><th bgcolor=\"#CCCCFF\" align=\"right\" width=\"1%\">"._("No.")."</th>".
271 "<th bgcolor=\"#CCCCFF\" align=\"left\" width=\"80%\">"._("Log File").
272 "[<a href=\"$big_url&ns=1\">"._("sort")."</a>]</th>".
273 "<th bgcolor=\"#CCCCFF\" align=\"right\" width=\"15%\">"._("Size")."</th> ".
274 "<th bgcolor=\"#CCCCFF\" align=\"left\">"._("Age").
275 "[<a href=\"$big_url&ns=0\">"._("sort")."</a>]</th>".
278 function cmp($f1, $f2) {
279 global $ftp_conn, $root_directory, $local;
281 return filemtime("$root_directory$f2") - filemtime("$root_directory$f1");
282 return ftp_mdtm($ftp_conn, $f2) - ftp_mdtm($ftp_conn, $f1);
293 for ($i = $off; $i < $cnt + $off; $i++) {
294 if (!isset($list[$i]))
296 $h = bin2hex(mhash(MHASH_MD5, $list[$i]));
297 $f = preg_replace("/.*\/([^\/]*)$/", "\\1", $list[$i]);
298 $f = preg_replace("/\.(bz2|gz)$/", "", $f);
300 $s = filesize("$root_directory$list[$i]");
301 $t = $now - filemtime("$root_directory$list[$i]");
303 $s = ftp_size($ftp_conn, $list[$i]);
304 $t = $now - ftp_mdtm($ftp_conn, $list[$i]);
312 $t = $t . " " . ngettext("day","days",$t);
315 $t = $t . " " . ngettext("hour","hours",$t);
319 $t = $t . " " . ngettext("minute","minutes",$t);
321 $u = "$big_url&off=$off&id=$h";
322 echo "<tr><td bgcolor=\"#CCCCCC\" align=\"right\">".($i+1).".</td>".
323 "<td bgcolor=\"#CCCCCC\"><a href=\"$u\">$f</a> ".
324 "[<a href=\"$u&action=text\">"._("text")."</a> | ".
325 "<a href=\"$u&action=tail\">"._("tail")."</a>]".
326 "</td><td bgcolor=\"#CCCCCC\" align=\"right\">".
327 "$s</td><td bgcolor=\"#CCCCCC\">$t</td></tr>\n";
329 echo "</table></div>\n";
331 $backarr = "<<< ";
332 $back = _("Page back");
333 $forward = _("Page forward");
334 $forwardarr = " >>>";
336 echo "<p><table width=\"90%\" align=\"center\"><tr><td align=\"left\" width=\"1%\">";
342 $hrefurl = "<a href=\"$big_url&off=$noff\">";
343 echo "$hrefurl$backarr</a></td><td align=\"left\">$hrefurl$back</a>";
345 echo "$backarr</td><td align=\"left\">$back";
348 echo "</td>\n<td align=\"center\">";
350 if ($qa_addr[$idx] != "") {
351 echo "[<a href=\"$big_url&action=qa\">"._("View <quot>rpm -qa</quot> of builder")."</a>]";
356 echo "</td>\n<td align=right>";
357 if ($off + $cnt < count($list)) {
361 $hrefurl = "<a href=\"$big_url&off=$noff\">";
362 echo "$hrefurl$forward</a></td><td align=right width=1%>$hrefurl$forwardarr</a>";
364 echo "$forward</td><td align=right width=1%>$forwardarr";
366 echo "</td>\n</tr></table></p>";
375 global $idx, $addr, $ok;
376 global $ftp_conn, $root_directory, $big_url, $ns, $id;
377 global $buildlogs_server, $local;
382 $list = directory_list();
390 for ($i = 0; $i < count($list); $i++) {
391 $h = bin2hex(mhash(MHASH_MD5, $list[$i]));
398 mydie(_("cannot find specified file:")." $id");
407 function dump_log($tail)
409 global $idx, $addr, $ok, $url;
410 global $ftp_conn, $root_directory, $big_url, $ns, $id, $cnt, $off;
411 global $buildlogs_server, $local, $qa_addr;
418 $df = preg_replace("/.*\/([^\/]*)$/", "\\1", $f);
419 $df = preg_replace("/\.(bz2|gz)$/", "", $df);
423 echo "<table border=\"0\" cellpadding=\"3\" cellspacing=\"1\" bgcolor=\"#000000\">";
425 function one_item($h, $t) {
426 echo "<tr><td bgcolor=\"#ccccff\">$h:</td>".
427 "<td bgcolor=\"#cccccc\">$t</td></tr>";
430 function href($h, $c) {
431 return "<a href=\"$h\">$c</a>";
434 one_item(_("Status"), ($ok == 1 ?
435 "<font color=green><b>"._("OK")."</b></font>" :
436 "<font color=red><b>"._("Failed")."</b></a>"));
437 one_item(_("Source URL"),
438 href("ftp://$buildlogs_server$f",
439 "ftp://$buildlogs_server$f"));
441 $bu = "$big_url&off=$off";
443 one_item(_("text/plain URL"),
444 href("$bu&id=$id&action=text",
447 one_item(_("full text"),
448 href("$bu&id=$id",
452 if ($qa_addr[$idx] != "") {
453 one_item(_("rpm -qa of builder"), href("$bu&action=qa", _("View!")));
455 one_item(_("rpm -qa of builder"), _("Not available"));
458 one_item("Data", date("Y/m/d H:i:s", filemtime("$root_directory$f")));
460 one_item("Data", date("Y/m/d H:i:s", ftp_mdtm($ftp_conn, $f)));
463 echo "<tr><td>Here:</td><td>" .
464 "<a href=\"$url?idx=$idx&ok=$ok&id=$id\">".
465 "http://" . getenv("SERVER_NAME") .
466 getenv("SCRIPT_NAME") . "?idx=$idx&ok=$ok&id=$id</a>" .
469 echo "</table><h2>"._("Content:")."</h2>";
477 # what can I say beside PHP suxx? how the fuck should I create
478 # bidirectional pipe? gotta use wget
480 if (preg_match("/\.bz2$/", $f)) {
482 } elseif (preg_match("/\.gz$/", $f)) {
489 $cmd = "$filter $root_directory$f";
491 $cmd = "wget -q -O - ftp://$buildlogs_server$f 2>&1 | $filter 2>&1";
494 $cmd = "$cmd | tail -n 100";
495 $fd = popen($cmd, "r");
497 while (($s = fgets($fd, 1000)) != false) {
498 $s = htmlspecialchars($s);
508 [<a href="<?php echo $bu; ?>"><?=_("Back to list of logs")?></a>]
511 [<a href="<?php echo "$bu&action=qa"
512 ?>"><?=_("View rpm -qa of builder")?></a>]
522 global $ftp_conn, $root_directory;
523 global $buildlogs_server, $local;
525 header("Content-type: text/plain");
532 echo "# src : ftp://$buildlogs_server$f\n";
535 date("Y/m/d H:i:s", filemtime("$root_directory$f")) . "\n";
538 date("Y/m/d H:i:s", ftp_mdtm($ftp_conn, $f)) . "\n";
543 if (preg_match("/\.bz2$/", $f)) {
545 } elseif (preg_match("/\.gz$/", $f)) {
552 $cmd = "$filter $root_directory$f";
554 $cmd = "wget -q -O - ftp://$buildlogs_server$f 2>&1 | $filter 2>&1";
556 $fd = popen($cmd, "r");
557 while (($s = fgets($fd, 1000)) != false) {
563 function list_archs()
565 global $addr, $url, $idx, $cnt;
570 $big_url = "$url?idx=$idx&ok=$ok&ns=$ns&cnt=$cnt";
572 echo "<table width=\"100%\" border=\"0\">\n";
573 echo "<tr><td bgcolor=\"#cccccc\" nowrap=\"nowrap\">"._("Failed")."</td><td bgcolor=\"#cccccc\">"._("Ok")."</td></tr>\n";
574 for ($i = 0; $i < count($addr); $i++)
575 echo "<tr><td nowrap=\"nowrap\">".
576 "<a href=\"$url?idx=$i&ok=0&cnt=$cnt\">$addr[$i]</a></td><td nowrap=\"nowrap\">".
577 "[<a href=\"$url?idx=$i&ok=1&cnt=$cnt\">OK</a>]</td>".
578 #"<td>[<a href=\"$url?idx=$i&action=qa\">qa</a>]</td>".
580 echo "</table><hr />\n";
582 echo "<div align=\"center\">";
583 echo "<a href=\"$big_url&action=adv_search\">"._("Advanced Search")."</a><br />\n";
585 echo "<a href=\"$url\">main()</a><hr />\n";
586 echo "<a href=\"http://www.pld-linux.org/\"><img src=\"powpld.png\" ".
587 "alt=\""._("Powered by PLD Linux")."\" border=\"0\" /></a><br />\n" .
589 "<a href=\"mailto:feedback@pld-linux.org\">PLD Team</a>\n".
593 echo "<div align=\"center\"><small>";
594 $pow = array("vim", "php", "brain", "power", "electricity",
595 "coffee", "ufo", "penguin", "GNOME", "ELF", "DWARF",
596 "voodoo magic", "Linux", "x-files", "X", "foobar",
597 "/dev/null", "/dev/zero", "/dev/drzewo",
598 "Leppe'", "matrix", "Neo", "PDP-11",
599 "Ken", "GNU antilope", "PDP-7", "ITS", "Multics",
600 "foobarbaz", "ed", "Joe", "Unix conspiracy",
601 "overclock", "The Right Thing",
602 "The Bad Thing", "Star Treck", "NSA", "NASA",
603 "achelon", "VAX", "Real Programmer",
604 "Real Operating System", "Real Computer",
605 "computron", "bogon", "quantum bogodynamics",
606 "BOFH", "/dev/ill", "nasi tu byli",
607 "Paranoid Android", "Lunatic Corp", "Parallel thinking",
608 "sfistak", "Linus", "Microsoft Windows 2003"
609 # feel free to add sth if you change this file ;)
611 echo _("Powered by")." ";
613 for ($i = 0; $i < $max; $i++) {
614 $x = rand(0, count($pow) - 1);
615 if ($pow[$x] == "") $i--;
616 else echo $pow[$x] . ($i == $max - 1 ? "." : ", ");
619 echo "</small></div>";
623 if ($qa_addr[$idx] != "") {
624 echo "<form action=\"index.php\" method=\"post\">";
625 echo "<input type=hidden name=idx value=$idx />";
626 echo "<input type=hidden name=action value=sqa />";
627 echo "<input type=text size=14 name=str /><br />";
628 echo "<input type=submit name=submit value=\""._("Search rpmqa!")."\" />";
635 global $idx, $qa_addr, $qa_base;
637 if (!isset($idx) || !isset($qa_addr[$idx]))
642 if ($qa_addr[$idx] == "")
645 return fopen("$qa_base$qa_addr[$idx]", "r");
650 global $url, $idx, $qa_addr, $str;
653 echo "<h1>"._("Search results for")." '$str' "._("in")." $qa_addr[$idx]</h1>";
658 echo _("Sorry, cannot open.");
660 while (($s = fgets($f, 1000)) != false) {
661 if (stristr($s, $str))
669 function dump_qa($plain)
671 global $url, $idx, $qa_addr;
678 header("Content-type: text/plain");
679 echo _("# rpm -qa of")." $a\n";
681 echo "<h1>"._("rpm -qa of")." $a</h1>";
682 echo "<a href=\"$url?idx=$idx&action=qatxt\">"._("text/plain version")."</a>";
687 echo _("Sorry, cannot open.");
689 while (($s = fgets($f, 1000)) != false) {
699 function adv_search()
701 global $addr, $url, $local, $_POST, $off, $cnt, $root_directory;
703 $big_url = "$url?idx=$idx&ok=$ok&ns=$ns&cnt=$cnt";
705 echo "<form action=\"index.php?action=adv_search\" method=\"post\">";
707 echo "<div align=\"center\">";
708 echo "<table border=\"0\">\n";
710 echo "<td>"._("Package name")."</td>\n";
711 echo "<td><input type=\"text\" size=\"20\" name=\"name\" value=\"".$_POST[name]."\"/></td>\n";
715 echo "<td>"._("Days")."</td>\n";
716 echo "<td>"._("From").": <input type=\"text\" size=\"20\" name=\"age1\" value=\"".$_POST["age1"]."\" /></td>\n";
717 echo "<td>"._("To").": <input type=\"text\" size=\"20\" name=\"age2\" value=\"".$_POST["age2"]."\" /></td>\n";
721 echo "<td>"._("Size")."</td>\n";
722 echo "<td>"._("From").": <input type=\"text\" size=\"20\" name=\"size1\" value=\"".$_POST["size1"]."\" /></td>\n";
723 echo "<td>"._("To").": <input type=\"text\" size=\"20\" name=\"size2\" value=\"".$_POST["size2"]."\" /></td>\n";
727 echo "<td>"._("Search logs:")."</td>\n";
731 echo "<td>"._("Failed")."</td>\n";
732 echo "<td>"._("OK")."</td>\n";
735 for ($i = 0; $i < count($addr); $i++)
739 $check=" checked=\"on\"";
740 echo "<td><input name=$name type=\"checkbox\"$check>".$addr[$i]."</input></td>\n";
742 $check=" checked=\"on\"";
743 echo "<td><input name=$name type=\"checkbox\"$check>".$addr[$i]."</input></td>\n";
748 echo "<td><input type=submit name=submit value=\""._("Search!")."\" /></td>";
753 // if (isset($_POST["name"]) || isset($_POST["age1"]) || isset($_POST["age2"]) ||
754 // isset($_POST["size1"]) || isset($_POST["size2"]))
755 if (($_POST["name"]!="") || ($_POST["age1"]!="") || ($_POST["age2"]!="") ||
756 ($_POST["size1"]!="") || ($_POST["size2"]!=""))
760 for ($i = 0; $i < count($addr); $i++)
765 if (isset($_POST["as".$j."_".$i]))
768 $tmp_list = directory_list($i,$j);
770 $tmp_list = open_ftp($i,$j);
772 if (is_array($tmp_list))
774 while (list($k,$name)=each($tmp_list))
776 $s = filesize("$root_directory$name");
777 $t = $now - filemtime("$root_directory$name");
779 if (($_POST["name"]!="") && (!preg_match("/".$_POST["name"]."/i",$name)))continue;
780 if (($_POST["age1"]) && ($_POST["age1"]>$t))continue;
781 if (($_POST["age2"]) && ($_POST["age2"]<$t))continue;
783 if (($_POST["size1"]) && ($_POST["size1"]>$s))continue;
784 if (($_POST["size2"]) && ($_POST["size2"]<$s))continue;
786 $list[$i."_".$j."_".$k]=$name;
792 if (sizeof($list)==0)
794 echo _("Nothing found");
798 echo "<table border=\"0\" cellspacing=\"1\" ".
799 "cellpadding=3 bgcolor=\"#000000\" width=\"90%\">\n";
800 echo "<tr><th bgcolor=\"#CCCCFF\" align=\"left\" width=\"10%\">"._("Builder").
801 "[<a href=\"$big_url&ns=2\">"._("sort")."</a>]</th>";
802 echo "<th bgcolor=\"#CCCCFF\" align=\"left\" width=\"60%\">"._("Log File").
803 "[<a href=\"$big_url&ns=1\">"._("sort")."</a>]</th>".
804 "<th bgcolor=\"#CCCCFF\" align=\"right\" width=\"15%\">"._("Size")."</th> ".
805 "<th bgcolor=\"#CCCCFF\" align=\"left\">"._("Age").
806 "[<a href=\"$big_url&ns=0\">"._("sort")."</a>]</th>".
809 function cmp1($f1, $f2) {
810 global $ftp_conn, $root_directory, $local;
812 return filemtime("$root_directory$f2") - filemtime("$root_directory$f1");
813 return ftp_mdtm($ftp_conn, $f2) - ftp_mdtm($ftp_conn, $f1);
816 function cmp2($f1, $f2) {
817 list($p11,$p12,$p13)=explode("_",$f1);
818 list($p21,$p22,$p23)=explode("_",$f2);
819 return strcmp($f2,$f1);
824 usort($list, "cmp1");
825 // } else if ($ns == 2)
827 // uksort($list, "cmp2");
834 while (list($k,$name)=each($list))
836 if (($counter<$off) || ($counter>$off+$cnt-1))
843 list($i,$j,$k)=explode("_",$k);
845 $h = bin2hex(mhash(MHASH_MD5, $name));
846 $f = preg_replace("/.*\/([^\/]*)$/", "\\1", $name);
847 $f = preg_replace("/\.(bz2|gz)$/", "", $f);
849 $s = filesize("$root_directory$name");
850 $t = $now - filemtime("$root_directory$name");
852 $s = ftp_size($ftp_conn, $list[$i]);
853 $t = $now - ftp_mdtm($ftp_conn, $list[$i]);
861 $t = $t . " " . ngettext("day","days",$t);
864 $t = $t . " " . ngettext("hour","hours",$t);
868 $t = $t . " " . ngettext("minute","minutes",$t);
870 $big_url = "$url?idx=$i&ok=$j&ns=$ns&cnt=$cnt";
871 $u = "$big_url&off=$off&id=$h";
873 $builder=$addr[$i]."/".(($j=="1")?"OK":"FAIL");
875 echo "<td bgcolor=#CCCCCC><a href=\"$u\">$builder</a></td>";
876 echo "<td bgcolor=#CCCCCC><a href=\"$u\">$f</a> ".
877 "[<a href=\"$u&action=text\">"._("text")."</a> | ".
878 "<a href=\"$u&action=tail\">"._("tail")."</a>]".
879 "</td><td bgcolor=#CCCCCC align=right>".
880 "$s</td><td bgcolor=#CCCCCC>$t</td></tr>\n";
882 echo "</table></div>\n";
884 $backarr = "<<< ";
885 $back = _("Page back");
886 $forward = _("Page forward");
887 $forwardarr = " >>>";
891 echo "<p><table width=\"90%\" align=\"center\"><tr><td align=left width=1%>";
897 $hrefurl = "<a href=\"$big_url&off=$noff\">";
898 echo "$hrefurl$backarr</a></td><td align=left>$hrefurl$back</a>";
900 echo "$backarr</td><td align=left>$back";
903 echo "</td>\n<td align=\"center\">";
904 echo "</td>\n<td align=\"right\">";
906 if ($off + $cnt < count($list))
911 $hrefurl = "<a href=\"$big_url&off=$noff\">";
912 echo "$hrefurl$forward</a></td><td align=\"right\" width=\"1%\">$hrefurl$forwardarr</a>";
916 echo "$forward</td><td align=\"right\" width=\"1%\">$forwardarr";
919 echo "</td>\n</tr></table></p>";
929 echo _("Enter something!");
937 <table border="0" width="100%"><tr><td width="20%"> </td><td>
938 <h1><?=_("Welcome!")?></h1>
939 <p><?=_("Welcome to PLD Build Logs WWW interface.")?></p><p>
940 <?=_("Feel free to email bug reports, complaints and feature requests ")?>
941 <!-- ech... niech strace... -->
942 <a href="mailto:feedback@pld-linux.org"><?=_("to us")?></a>. <?=_("Positive opinions are also")?>
943 <a href="mailto:feedback@pld-linux.org"><?=_("welcome")?></a> ;)</p>
944 <p>Version: $Id: index.php,v 1.59 2003/06/07 14:32:09 blues Exp $</p>
945 </td><td width="20%"> </td></tr>
950 header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
951 header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
952 header("Cache-Control: no-cache, must-revalidate");
953 header("Pragma: no-cache");
957 if ($action == "text") {
959 } else if ($action == "adv_search") {
963 } else if ($action == "qatxt") {
967 echo "<table cellpadding=\"10\" width=\"100%\"><tr><td valign=\"top\" width=\"10%\">";
969 echo "</td><td valign=\"top\">";
973 else if ($action == "sqa")
976 dump_log($action == "tail");
977 else if (isset($idx))
981 echo "</td></tr></table>";
987 if ($action == "text") {
989 } else if ($action == "qatxt") {
993 echo "<table cellpadding=\"10\" width=\"100%\"><tr><td valign=top width=\"10%\">";
995 echo "</td><td valign=\"top\">";
1000 dump_log($action == "tail");
1001 else if (isset($idx))
1005 echo "</td></tr></table>";