From 73bb08357c7314391e74336c5bf345ab920f9e87 Mon Sep 17 00:00:00 2001 From: moodler Date: Thu, 10 Oct 2002 07:27:57 +0000 Subject: [PATCH] Initial attempt at adding html text editor features to these forms. --- mod/forum/db/mysql.php | 3 +++ mod/forum/db/mysql.sql | 1 + mod/forum/lib.php | 7 ++++--- mod/forum/post.html | 31 +++++++++++++++++++++++++++++-- mod/forum/post.php | 6 +++++- mod/forum/version.php | 2 +- 6 files changed, 43 insertions(+), 7 deletions(-) diff --git a/mod/forum/db/mysql.php b/mod/forum/db/mysql.php index a22eafbc67..58f758db21 100644 --- a/mod/forum/db/mysql.php +++ b/mod/forum/db/mysql.php @@ -46,6 +46,9 @@ function forum_upgrade($oldversion) { execute_sql(" UPDATE `forum` SET `open` = 2 WHERE `open` = 1 "); execute_sql(" UPDATE `forum` SET `open` = 1 WHERE `open` = 0 "); } + if ($oldversion < 2002101001) { + execute_sql(" ALTER TABLE `forum_posts` ADD `format` TINYINT(2) UNSIGNED DEFAULT '0' NOT NULL AFTER `message` "); + } return true; diff --git a/mod/forum/db/mysql.sql b/mod/forum/db/mysql.sql index 1c67e847cc..eb831cf90e 100644 --- a/mod/forum/db/mysql.sql +++ b/mod/forum/db/mysql.sql @@ -47,6 +47,7 @@ CREATE TABLE forum_posts ( mailed tinyint(1) unsigned NOT NULL default '0', subject varchar(255) NOT NULL default '', message text NOT NULL, + format tinyint(2) NOT NULL default '0', attachment VARCHAR(100) NOT NULL default '', totalscore tinyint(4) NOT NULL default '0', PRIMARY KEY (id) diff --git a/mod/forum/lib.php b/mod/forum/lib.php index a427cffdd6..f361f6e7c1 100644 --- a/mod/forum/lib.php +++ b/mod/forum/lib.php @@ -24,6 +24,7 @@ $FORUM_OPEN_MODES = array ("2" => get_string("openmode2", "forum"), "1" => get_string("openmode1", "forum"), "0" => get_string("openmode0", "forum") ); + $FORUM_SHORT_POST = 300; // Less than this is "short" $FORUM_LONG_POST = 600; // More than this is "long" @@ -123,7 +124,7 @@ function forum_make_mail_post(&$post, $user, $touser, $course, $output .= ""; } - $output .= text_to_html($post->message); + $output .= format_text($post->message, $post->format); $output .= "

"; @@ -202,14 +203,14 @@ function forum_print_post(&$post, $courseid, $ownpost=false, $reply=false, $link if ($link && (strlen($post->message) > $FORUM_LONG_POST)) { // Print shortened version - echo text_to_html(forum_shorten_post($post->message)); + echo format_text(forum_shorten_post($post->message), $post->format); $numwords = count_words($post->message); echo "wwwroot/mod/forum/discuss.php?d=$post->discussion\">"; echo get_string("readtherest", "forum"); echo " (".get_string("numwords", "", $numwords).")..."; } else { // Print whole message - echo text_to_html($post->message); + echo format_text($post->message, $post->format); } echo "

"; diff --git a/mod/forum/post.html b/mod/forum/post.html index b7842cc338..614377cc46 100644 --- a/mod/forum/post.html +++ b/mod/forum/post.html @@ -1,4 +1,4 @@ -

+ enctype="multipart/form-data"> @@ -12,7 +12,15 @@ + + + + +

:

:

- + + + + + + + + @@ -21,6 +29,17 @@

:

+ format, ""); ?> + +   +

:
()

@@ -42,3 +61,11 @@
+ + + + + diff --git a/mod/forum/post.php b/mod/forum/post.php index c0842eb81b..7d7b014efb 100644 --- a/mod/forum/post.php +++ b/mod/forum/post.php @@ -14,7 +14,7 @@ $post = (object)$HTTP_POST_VARS; $post->subject = strip_tags($post->subject); // Strip all tags - $post->message = cleantext($post->message); // Clean up any bad tags + $post->message = clean_text($post->message, $post->format); // Clean up any bad tags $post->attachment = $HTTP_POST_FILES["attachment"]; @@ -262,6 +262,10 @@ $strforums = get_string("modulenameplural", "forum"); + if ($usehtmleditor = can_use_richtext_editor()) { + $onsubmit = "onsubmit=\"copyrichtext(theform.message);\""; + } + $navmiddle = "id\">$strforums -> id\">$forum->name"; if ($course->category) { diff --git a/mod/forum/version.php b/mod/forum/version.php index 1168cda88b..b320fedd20 100644 --- a/mod/forum/version.php +++ b/mod/forum/version.php @@ -5,7 +5,7 @@ // This fragment is called by /admin/index.php //////////////////////////////////////////////////////////////////////////////// -$module->version = 2002100300; +$module->version = 2002101001; $module->cron = 60; ?> -- 2.39.5