From 4d31d27ff0d9270f03456d17f5387f60bc99c22d Mon Sep 17 00:00:00 2001 From: Dries Buytaert <dries@buytaert.net> Date: Tue, 27 Feb 2001 07:45:03 +0000 Subject: [PATCH] - added comment index for performance sake - improved comment module - code revision - improved backend module - moreover headlines now work - (automatically) stripped tabs and trailing whitespaces from Jeroen's theme. --- CHANGELOG | 2 +- database/database.mysql | 1 + modules/backend.class | 11 ++--------- modules/comment.module | 24 ++++++++---------------- modules/comment/comment.module | 24 ++++++++---------------- themes/jeroen/jeroen.theme | 26 +++++++++++++------------- updates/1.00-to-1.xx | 4 ++++ 7 files changed, 37 insertions(+), 55 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index b1b3b5b64ead..3c14299a5b8c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -24,7 +24,7 @@ drupal 1.xx, xx/xx/2001 * improved diary module: + diary can be deleted * improved headline module: - + improved parser to support RDF/RSS/XML backend + + improved parser to support more "generic" RDF/RSS/XML backend * improved module module * improved watchdog module * added CREDITS file diff --git a/database/database.mysql b/database/database.mysql index e91d313eb467..792edd7ab5e3 100644 --- a/database/database.mysql +++ b/database/database.mysql @@ -67,6 +67,7 @@ CREATE TABLE comments ( timestamp int(11) DEFAULT '0' NOT NULL, score int(6) DEFAULT '0' NOT NULL, votes int(6) DEFAULT '0' NOT NULL, + INDEX lid_link (lid, link), PRIMARY KEY (cid) ); diff --git a/modules/backend.class b/modules/backend.class index 7cdaa328b2f9..6339afd5352c 100644 --- a/modules/backend.class +++ b/modules/backend.class @@ -51,24 +51,17 @@ class backend { if ($this->file) { // Decode URL: $url = parse_url($this->file); - $host = $url[host]; - $port = $url[port] ? $url[port] : 80; - $path = $url[path]; - - // print "<PRE><B>Debug:</B> $url - $host - $port - $path</PRE>"; // Retrieve data from website: - $fp = fsockopen($host, $port, &$errno, &$errstr, $timout); + $fp = fsockopen($url[host], ($url[port] ? $url[port] : 80), &$errno, &$errstr, $timout); if ($fp) { // Request data via URL: - fputs($fp, "GET $path HTTP/1.0\nUser-Agent: $site_name\nHost: $host\nAccept: */*\n\n"); + fputs($fp, "GET $url[path]?$url[query] HTTP/1.0\nUser-Agent: $site_name\nHost: $url[host]\nAccept: */*\n\n"); // Read data from socket: while(!feof($fp)) $data .= fgets($fp, 128); - // print "<PRE>$data</PRE><HR>"; - if (strstr($data, "200 OK")) { // Remove existing entries: diff --git a/modules/comment.module b/modules/comment.module index ef0bce34a4e6..6038d5ed275d 100644 --- a/modules/comment.module +++ b/modules/comment.module @@ -26,24 +26,16 @@ function comment_edit($id) { $output .= "<FORM ACTION=\"admin.php?mod=comment&op=save&id=$id\" METHOD=\"post\">\n"; - $output .= "<P>\n"; - $output .= " <B>Author:</B><BR>\n"; - $output .= " ". format_username($comment->userid) ."\n"; - $output .= "</P>\n"; + $output .= "<B>Author:</B><BR>\n"; + $output .= format_username($comment->userid) ."<P>\n"; - $output .= "<P>\n"; - $output .= " <B>Subject:</B><BR>\n"; - $output .= " <INPUT TYPE=\"text\" NAME=\"subject\" SIZE=\"50\" VALUE=\"". check_textfield($comment->subject) ."\">\n"; - $output .= "</P>\n"; + $output .= "<B>Subject:</B><BR>\n"; + $output .= "<INPUT TYPE=\"text\" NAME=\"subject\" SIZE=\"50\" VALUE=\"". check_textfield($comment->subject) ."\"><P>\n"; - $output .= "<P>\n"; $output .= "<B>Comment:</B><BR>\n"; - $output .= " <TEXTAREA WRAP=\"virtual\" COLS=\"50\" ROWS=\"10\" NAME=\"comment\">". check_textarea($comment->comment) ."</TEXTAREA>\n"; - $output .= "</P>\n"; + $output .= "<TEXTAREA WRAP=\"virtual\" COLS=\"50\" ROWS=\"10\" NAME=\"comment\">". check_textarea($comment->comment) ."</TEXTAREA><P>\n"; - $output .= "<P>\n"; - $output .= " <INPUT TYPE=\"submit\" NAME=\"op\" VALUE=\"Save comment\">\n"; - $output .= "</P>\n"; + $output .= "<INPUT TYPE=\"submit\" NAME=\"op\" VALUE=\"Save comment\">\n"; $output .= "</FORM>\n"; print $output; @@ -51,7 +43,7 @@ function comment_edit($id) { function comment_save($id, $subject, $comment) { db_query("UPDATE comments SET subject = '". check_input($subject) ."', comment = '". check_input($comment) ."' WHERE cid = $id"); - watchdog("message", "comment: modified `$subject'"); + watchdog("message", "comment: modified '$subject'"); } function comment_display($order = "date") { @@ -105,7 +97,7 @@ function comment_admin() { break; case "Save comment": comment_save($id, $subject, $comment); - comment_edit($id); + comment_display(); break; case "Update": comment_display($order); diff --git a/modules/comment/comment.module b/modules/comment/comment.module index ef0bce34a4e6..6038d5ed275d 100644 --- a/modules/comment/comment.module +++ b/modules/comment/comment.module @@ -26,24 +26,16 @@ function comment_edit($id) { $output .= "<FORM ACTION=\"admin.php?mod=comment&op=save&id=$id\" METHOD=\"post\">\n"; - $output .= "<P>\n"; - $output .= " <B>Author:</B><BR>\n"; - $output .= " ". format_username($comment->userid) ."\n"; - $output .= "</P>\n"; + $output .= "<B>Author:</B><BR>\n"; + $output .= format_username($comment->userid) ."<P>\n"; - $output .= "<P>\n"; - $output .= " <B>Subject:</B><BR>\n"; - $output .= " <INPUT TYPE=\"text\" NAME=\"subject\" SIZE=\"50\" VALUE=\"". check_textfield($comment->subject) ."\">\n"; - $output .= "</P>\n"; + $output .= "<B>Subject:</B><BR>\n"; + $output .= "<INPUT TYPE=\"text\" NAME=\"subject\" SIZE=\"50\" VALUE=\"". check_textfield($comment->subject) ."\"><P>\n"; - $output .= "<P>\n"; $output .= "<B>Comment:</B><BR>\n"; - $output .= " <TEXTAREA WRAP=\"virtual\" COLS=\"50\" ROWS=\"10\" NAME=\"comment\">". check_textarea($comment->comment) ."</TEXTAREA>\n"; - $output .= "</P>\n"; + $output .= "<TEXTAREA WRAP=\"virtual\" COLS=\"50\" ROWS=\"10\" NAME=\"comment\">". check_textarea($comment->comment) ."</TEXTAREA><P>\n"; - $output .= "<P>\n"; - $output .= " <INPUT TYPE=\"submit\" NAME=\"op\" VALUE=\"Save comment\">\n"; - $output .= "</P>\n"; + $output .= "<INPUT TYPE=\"submit\" NAME=\"op\" VALUE=\"Save comment\">\n"; $output .= "</FORM>\n"; print $output; @@ -51,7 +43,7 @@ function comment_edit($id) { function comment_save($id, $subject, $comment) { db_query("UPDATE comments SET subject = '". check_input($subject) ."', comment = '". check_input($comment) ."' WHERE cid = $id"); - watchdog("message", "comment: modified `$subject'"); + watchdog("message", "comment: modified '$subject'"); } function comment_display($order = "date") { @@ -105,7 +97,7 @@ function comment_admin() { break; case "Save comment": comment_save($id, $subject, $comment); - comment_edit($id); + comment_display(); break; case "Update": comment_display($order); diff --git a/themes/jeroen/jeroen.theme b/themes/jeroen/jeroen.theme index c294188431bb..e40aa75dbf94 100644 --- a/themes/jeroen/jeroen.theme +++ b/themes/jeroen/jeroen.theme @@ -83,11 +83,11 @@ function abstract($story) { <TR> <TD></TD> <TD> - <TABLE BORDER="0" CELLPADDING="1" CELLSPACING="0" BGCOLOR="#000000" WIDTH="100%"> - <TR> - <TD> - <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"> - <TR> + <TABLE BORDER="0" CELLPADDING="1" CELLSPACING="0" BGCOLOR="#000000" WIDTH="100%"> + <TR> + <TD> + <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"> + <TR> <TD ALIGN="left" BACKGROUND="themes/jeroen/images/menutitle.gif" NOWRAP> <FONT COLOR="<? echo $this->fgc2; ?>"> @@ -137,10 +137,10 @@ function abstract($story) { </TR> </TABLE> </TD> - </TR> - </TABLE> - </TD> - </TR> + </TR> + </TABLE> + </TD> + </TR> </TABLE> <BR> <? @@ -250,10 +250,10 @@ function comment($comment, $link = "", $thread = "") { echo " <TR>"; echo " <TD>"; echo " <TABLE BORDER=\"0\" CELLPADDING=\"1\" CELLSPACING=\"0\" BGCOLOR=\"#000000\" WIDTH=\"100%\">"; - echo " <TR>"; - echo " <TD>"; - echo " <TABLE BACKGROUND=\"themes/jeroen/images/menutitle.gif\" BORDER=\"0\" CELLPADDING=\"2\" CELLSPACING=\"0\" WIDTH=\"100%\">"; - echo " <TR>"; + echo " <TR>"; + echo " <TD>"; + echo " <TABLE BACKGROUND=\"themes/jeroen/images/menutitle.gif\" BORDER=\"0\" CELLPADDING=\"2\" CELLSPACING=\"0\" WIDTH=\"100%\">"; + echo " <TR>"; echo " </TR>"; echo " <TD>"; echo " <TABLE BORDER=\"0\" CELLPADDING=\"2\" CELLSPACING=\"2\"WIDTH=\"100%\">"; diff --git a/updates/1.00-to-1.xx b/updates/1.00-to-1.xx index c579c79460be..98209523b027 100644 --- a/updates/1.00-to-1.xx +++ b/updates/1.00-to-1.xx @@ -1,4 +1,8 @@ +# 26/02/2001: performance optimization +ALTER TABLE comments ADD INDEX lid_link (lid, link); + # 19/02/2001: internationalization / translation +alter table users add language varchar(2) DEFAULT '0' NOT NULL; CREATE TABLE locales ( id int(11) DEFAULT '0' NOT NULL auto_increment, location varchar(128) DEFAULT '' NOT NULL, -- GitLab