. Search through all comments, made by Molle
authorJoey Schulze <joey@infodrom.org>
Tue, 26 Jun 2001 00:47:11 +0000 (00:47 +0000)
committerJoey Schulze <joey@infodrom.org>
Tue, 26 Jun 2001 00:47:11 +0000 (00:47 +0000)
 . Added search form to main page
 . Main page is not sorted by booth nr anymore
 . New page sorted which is sorted by booth nr
 . some routines are shared between index and shared, but I'm too
   tired to fix that, pusch (@todo, $);

src/LinuxTag/2001/index.wml
src/LinuxTag/2001/search.wml [new file with mode: 0644]
src/LinuxTag/2001/sort.wml [new file with mode: 0644]
src/LinuxTag/2001/submenu.inc

index 6c445e9..fd5051a 100644 (file)
@@ -43,8 +43,8 @@
   }
 
   $t_head  = "<p><table cellpadding=\"0\" cellspacing=\"0\" summary=\"\">";
-  $t_title = "<tr bgcolor=\"%s\"><th><font face=\"Helvetica,Arial\">Nr.</font></th><th><font face=\"Helvetica,Arial\">Name</font></th><th><font face=\"Helvetica,Arial\">Members</font></th><th><font face=\"Helvetica,Arial\">Night</font></th><th><font face=\"Helvetica,Arial\">Puters</font></th><th><font face=\"Helvetica,Arial\">Size</font></th><th><font face=\"Helvetica,Arial\">Price</font></th><th><font face=\"Helvetica,Arial\">Comments</font></th></tr>";
-  $t_row   = "<tr bgcolor=\"%s\"><td><font face=\"Helvetica,Arial\">%s</font></td><td><font face=\"Helvetica,Arial\">%s</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td></tr>";
+  $t_title = "<tr bgcolor=\"%s\"><th><font face=\"Helvetica,Arial\">Name</font></th><th><font face=\"Helvetica,Arial\">Members</font></th><th><font face=\"Helvetica,Arial\">Night</font></th><th><font face=\"Helvetica,Arial\">Puters</font></th><th><font face=\"Helvetica,Arial\">Size</font></th><th><font face=\"Helvetica,Arial\">Price</font></th><th><font face=\"Helvetica,Arial\">Comments</font></th></tr>";
+  $t_row   = "<tr bgcolor=\"%s\"><td><font face=\"Helvetica,Arial\">%s</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td></tr>";
   $t_foot  = "</table><p>";
 
   $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
@@ -52,7 +52,7 @@
 
   # pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
 
-  $query = "SELECT name,oid,boothnr,boothsize,computer FROM project ORDER BY boothnr,name";
+  $query = "SELECT name,oid,boothsize,computer FROM project ORDER BY name";
   $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
 
   if (pg_NumRows ($sth) > 0) {
       $night = night ($row['name']);
       $comments = comments ($row['name']);
       $price = price ($row['name']);
-      if (!$row['boothnr']) {
-        $row['boothnr'] = "&nbsp;";
-      }
       $name = sprintf ("<a href=\"show.php3?oid=%d\">%s</a>", $row['oid'], $row['name']);
-      printf ($t_row, $color, $row['boothnr'], $name, $members, $night, $row['computer'], $row['boothsize'], $price, $comments);
+      printf ($t_row, $color, $name, $members, $night, $row['computer'], $row['boothsize'], $price, $comments);
       $sum['project']++;
       $sum['members']+= $members;
       $sum['night']+= $night;
@@ -81,7 +78,8 @@
       $sum['price'] += $price;
     }
     $color=$color == "<cold>"?"<coln>" : "<cold>";
-    printf ($t_row, $color, "<b>Sum</b>", $sum['project'], $sum['members'], $sum['night'],
+    $foo = sprintf ("<b>Sum</b> (%d projects)", $sum['project']);
+    printf ($t_row, $color, $foo, $sum['members'], $sum['night'],
            $sum['computer'], $sum['boothsize'], $sum['price'], $sum['comments']);
     echo ($t_foot);
   }
@@ -89,6 +87,9 @@
 
 </table>
 
+<p><form action=search.php3 method=post><input name=key size=20 maxlength=100>\
+<input type=submit value="Search"></form>
+
 <p><font face="Helvetica,Arial"><b><a href="edit_project.php3?oid=0">New project</a></b></font><p>
 
 </page>
diff --git a/src/LinuxTag/2001/search.wml b/src/LinuxTag/2001/search.wml
new file mode 100644 (file)
index 0000000..d00b143
--- /dev/null
@@ -0,0 +1,36 @@
+#include <lt.style>
+#include "phptools.inc"
+
+<page title="Europäischer LinuxTag 2001 - Projects" subtitle=Project>
+
+<?
+  if(!$key) die("no search string");
+
+  $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
+              or die("Unable to connect to SQL server");
+  pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
+  
+  $query = sprintf ("SELECT oid,date,who,email,body,project FROM comments WHERE body ~* '%s' ORDER BY date", $key);
+  $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+  if (pg_NumRows ($sth) > 0) {
+
+    for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
+       $row = pg_fetch_array ($sth, $nr);
+
+       $date = explode (" ", $row['date']);
+       $date = explode ("-", $date[0]);
+       $date = sprintf ("%d.%d.%d", $date[2], $date[1], $date[0]);
+
+       printf ("<hr><h3><a href=\"edit_comment.php3?oid=%d\">%s, %s &lt;%s&gt;</a></h3><strong>Project</strong>: %s <br> %s<p>",
+         $row['oid'], $date, $row['who'], $row['email'], $row['project'], $row['body']);
+    }
+  }
+  
+?>
+
+</page>
+
+# Local variables:
+# mode: text
+# mode: auto-fill
+# end:
diff --git a/src/LinuxTag/2001/sort.wml b/src/LinuxTag/2001/sort.wml
new file mode 100644 (file)
index 0000000..66b5591
--- /dev/null
@@ -0,0 +1,99 @@
+#include <lt.style>
+#include "phptools.inc"
+
+<page title="Europäischer LinuxTag 2001 - Projekte" subtitle="Sorted List">
+
+<?
+  function night ($project)
+  {
+    global $dbh;
+
+    $query = sprintf ("SELECT COUNT(*) FROM person WHERE project = '%s' AND list = 0 AND night = 1", $project);
+    $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+    if (pg_NumRows ($sth) > 0) {
+      $row = pg_fetch_array ($sth, 0);
+      return $row[0];
+    }
+  }
+  function comments ($project)
+  {
+    global $dbh;
+
+    $query = sprintf ("SELECT COUNT(*) FROM comments WHERE project = '%s'", $project);
+    $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+    if (pg_NumRows ($sth) > 0) {
+      $row = pg_fetch_array ($sth, 0);
+      return $row[0];
+    }
+  }
+  function price ($project)
+  {
+    global $dbh;
+
+    $query = sprintf ("SELECT sum(amount*price) FROM supplies,supplylist WHERE supplylist.id = supplies.supply and project='%s'",
+                     $project);
+    $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+    if (pg_NumRows ($sth) > 0) {
+      $row = pg_fetch_array ($sth, 0);
+      return $row[0];
+    }
+  }
+
+  $t_head  = "<p><table cellpadding=\"0\" cellspacing=\"0\" summary=\"\">";
+  $t_title = "<tr bgcolor=\"%s\"><th><font face=\"Helvetica,Arial\">Nr.</font></th><th><font face=\"Helvetica,Arial\">Name</font></th><th><font face=\"Helvetica,Arial\">Members</font></th><th><font face=\"Helvetica,Arial\">Night</font></th><th><font face=\"Helvetica,Arial\">Puters</font></th><th><font face=\"Helvetica,Arial\">Size</font></th><th><font face=\"Helvetica,Arial\">Price</font></th><th><font face=\"Helvetica,Arial\">Comments</font></th></tr>";
+  $t_row   = "<tr bgcolor=\"%s\"><td><font face=\"Helvetica,Arial\">%s</font></td><td><font face=\"Helvetica,Arial\">%s</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td><td align=\"right\"><font face=\"Helvetica,Arial\">%d</font></td></tr>";
+  $t_foot  = "</table><p>";
+
+  $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
+              or die("Unable to connect to SQL server");
+
+  # pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
+
+  $query = "SELECT name,oid,boothnr,boothsize,computer FROM project ORDER BY boothnr,name";
+  $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+  if (pg_NumRows ($sth) > 0) {
+    echo ($t_head);
+    printf ($t_title, "<colh>");
+
+    $color = "<coln>";
+    for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
+      $color=$color == "<cold>"?"<coln>" : "<cold>";
+      $row = pg_fetch_array ($sth, $nr);
+      $members = members ($row['name']);
+      $night = night ($row['name']);
+      $comments = comments ($row['name']);
+      $price = price ($row['name']);
+      if (!$row['boothnr']) {
+        $row['boothnr'] = "&nbsp;";
+      }
+      $name = sprintf ("<a href=\"show.php3?oid=%d\">%s</a>", $row['oid'], $row['name']);
+      printf ($t_row, $color, $row['boothnr'], $name, $members, $night, $row['computer'], $row['boothsize'], $price, $comments);
+      $sum['project']++;
+      $sum['members']+= $members;
+      $sum['night']+= $night;
+      $sum['comments']+= $comments;
+      $sum['computer']+=$row['computer'];
+      $sum['boothsize']+=$row['boothsize'];
+      $sum['price'] += $price;
+    }
+    $color=$color == "<cold>"?"<coln>" : "<cold>";
+    printf ($t_row, $color, "<b>Sum</b>", $sum['project'], $sum['members'], $sum['night'],
+           $sum['computer'], $sum['boothsize'], $sum['price'], $sum['comments']);
+    echo ($t_foot);
+  }
+?>
+
+</table>
+
+<p><font face="Helvetica,Arial"><b><a href="edit_project.php3?oid=0">New project</a></b></font><p>
+
+</page>
+
+# Local variables:
+# mode: text
+# mode: auto-fill
+# end:
index 2039869..acb474b 100644 (file)
@@ -3,6 +3,11 @@
   Index
 ><br>
 
+&nbsp;<ifneq <get-var WML_SRC_BASENAME> "sort"
+  <a href="sort.php3">Sorted</a>
+  Sorted
+><br>
+
 &nbsp;<ifneq <get-var WML_SRC_BASENAME> "todo"
   <a href="todo.php3">Todo</a>
   Todo