]> git.mjollnir.org Git - moodle.git/commitdiff
Split lib.php into lib.php and locallib.php
authorrkingdon <rkingdon>
Fri, 18 Jun 2004 15:38:21 +0000 (15:38 +0000)
committerrkingdon <rkingdon>
Fri, 18 Jun 2004 15:38:21 +0000 (15:38 +0000)
mod/dialogue/lib.php

index 706ea48d8dec794f6582158683464b70f1519495..d947b5914b4b5ba1693542f7fef80274f23528c6 100644 (file)
@@ -323,32 +323,9 @@ function dialogue_user_outline($course, $user, $mod, $dialogue) {
     return NULL;
 }
 
-
-// SQL FUNCTIONS ///////////////////////////////////////////////////////////////////
-
 //////////////////////////////////////////////////////////////////////////////////////
-function dialogue_count_all_needing_replies_self($user = '') {
-// count [conversations] needing replies [from] self for all dialogues
-// function requested by Williams Castillo 17 Oct 2003 
-    global $USER;
-    
-    if ($user) {    
-        return count_records_select("dialogue_conversations", "(userid = $user->id OR 
-            recipientid = $user->id) AND lastid != $user->id AND closed = 0");
-    } else {
-        return count_records_select("dialogue_conversations", "(userid = $USER->id OR 
-            recipientid = $USER->id) AND lastid != $USER->id AND closed = 0");
-    }
-}
-
-
+// Extra functions needed by the Standard functions
 //////////////////////////////////////////////////////////////////////////////////////
-function dialogue_count_closed($dialogue, $user) {
-    
-    return count_records_select("dialogue_conversations", "dialogueid = $dialogue->id AND 
-        (userid = $user->id OR recipientid = $user->id) AND closed = 1");
-    }
-
 
 //////////////////////////////////////////////////////////////////////////////////////
 function dialogue_count_entries($dialogue, $conversation, $user = '') {
@@ -363,31 +340,6 @@ function dialogue_count_entries($dialogue, $conversation, $user = '') {
 }
 
 
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_count_open($dialogue, $user) {
-    
-    return count_records_select("dialogue_conversations", "dialogueid = $dialogue->id AND 
-        (userid = $user->id OR recipientid = $user->id) AND closed = 0");
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_count_needing_replies_other($dialogue, $user) {
-// count [conversations] needing replies [from] other [person]  
-    return count_records_select("dialogue_conversations", "dialogueid = $dialogue->id AND 
-        (userid = $user->id OR recipientid = $user->id) AND lastid = $user->id AND closed = 0");
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_count_needing_replies_self($dialogue, $user) {
-// count [conversations] needing replies [from] self
-    
-    return count_records_select("dialogue_conversations", "dialogueid = $dialogue->id AND 
-        (userid = $user->id OR recipientid = $user->id) AND lastid != $user->id AND closed = 0");
-}
-
-
 //////////////////////////////////////////////////////////////////////////////////////
 function dialogue_delete_expired_conversations() {
 
@@ -409,138 +361,47 @@ function dialogue_delete_expired_conversations() {
 
 
 //////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_participants($dialogueid) {
-//Returns the users with data in one dialogue
-//(users with records in dialogue_conversations, creators and receivers)
-
-    global $CFG;
-
-    //Get conversation's creators
-    $creators = get_records_sql("SELECT DISTINCT u.*
-                                FROM {$CFG->prefix}user u,
-                                     {$CFG->prefix}dialogue_conversations c
-                                WHERE c.dialogueid = '$dialogueid' and
-                                      u.id = c.userid");
-
-    //Get conversation's receivers
-    $receivers = get_records_sql("SELECT DISTINCT u.*
-                                FROM {$CFG->prefix}user u,
-                                     {$CFG->prefix}dialogue_conversations c
-                                WHERE c.dialogueid = '$dialogueid' and
-                                      u.id = c.recipientid");
-
-    //Add receivers to creators
-    if ($receivers) {
-        foreach ($receivers as $receiver) {
-            $creators[$receiver->id] = $receiver;
-        }
-    }
-
-    //Return creators array (it contains an array of unique users, creators and receivers)
-    return ($creators);
-} 
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_available_users($dialogue) {
-
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-    switch ($dialogue->dialoguetype) {
-        case 0 : // teacher to student
-            if (isteacher($course->id)) {
-                return dialogue_get_available_students($dialogue);
-            }
-            else {
-                return dialogue_get_available_teachers($dialogue);
-            }
-        case 1: // student to student
-            if (isstudent($course->id)) {
-                return dialogue_get_available_students($dialogue);
-            }
-            else {
-                return;
-            }
-        case 2: // everyone
-            if ($teachers = dialogue_get_available_teachers($dialogue)) {
-                foreach ($teachers as $userid=>$name) {
-                    $names[$userid] = $name;
-                }
-                $names[-1] = "-------------";
-            }
-            if ($students = dialogue_get_available_students($dialogue)) {
-                foreach ($students as $userid=>$name) {
-                    $names[$userid] = $name;
-                }
-            }
-            if (isset($names)) {
-                return $names;
-            }
-            return;
-    }
-}
-
-                    
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_available_students($dialogue) {
-global $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-     // get the students on this course...
-    if ($users = get_course_students($course->id, "u.firstname, u.lastname")) {
-        foreach ($users as $otheruser) {
-            // ...exclude self and...
-            if ($USER->id != $otheruser->id) {
-                // ...any already in any open conversations unless multiple conversations allowed
-                if ($dialogue->multipleconversations or count_records_select("dialogue_conversations", 
-                        "dialogueid = $dialogue->id AND 
-                        ((userid = $USER->id AND recipientid = $otheruser->id) OR 
-                        (userid = $otheruser->id AND recipientid = $USER->id)) AND closed = 0") == 0) {
-                    $names[$otheruser->id] = "$otheruser->firstname $otheruser->lastname";
-                }
-            }
-        }
-    }
-    if (isset($names)) {
-        return $names;
-    }
-    return;
+function dialogue_get_add_entry_logs($course, $timestart) {
+       // get the "add entry" entries and add the first and last names, we are not interested in the entries 
+       // make by this user (the last condition)!
+       global $CFG, $USER;
+    return get_records_sql("SELECT l.time, l.url, u.firstname, u.lastname, e.dialogueid, d.name
+                             FROM {$CFG->prefix}log l,
+                                                               {$CFG->prefix}dialogue d, 
+                                                       {$CFG->prefix}dialogue_conversations c, 
+                                {$CFG->prefix}dialogue_entries e, 
+                                {$CFG->prefix}user u
+                            WHERE l.time > $timestart AND l.course = $course->id AND l.module = 'dialogue'
+                                                               AND l.action = 'add entry'
+                                                               AND e.id = l.info 
+                                                               AND c.id = e.conversationid
+                                AND (c.userid = $USER->id or c.recipientid = $USER->id)
+                                                               AND d.id = e.dialogueid
+                                                               AND u.id = e.userid 
+                                                               AND e.userid != $USER->id");
 }
 
 
 //////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_available_teachers($dialogue) {
-global $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-        }
-    // get the teachers on this course...
-    if ($users = get_course_teachers($course->id, "u.firstname, u.lastname")) {
-        // $names[0] = "-----------------------";
-        foreach ($users as $otheruser) {
-            // ...exclude self and ...
-            if ($USER->id != $otheruser->id) {
-                // ...any already in open conversations unless multiple conversations allowed 
-                if ($dialogue->multipleconversations or count_records_select("dialogue_conversations", 
-                        "dialogueid = $dialogue->id AND ((userid = $USER->id AND 
-                        recipientid = $otheruser->id) OR (userid = $otheruser->id AND 
-                        recipientid = $USER->id)) AND closed = 0") == 0) {
-                    $names[$otheruser->id] = "$otheruser->firstname $otheruser->lastname";
-                }
-            }
-        }
-    }
-    if (isset($names)) {
-        return $names;
-    }
-    return;
+function dialogue_get_closed_logs($course, $timestart) {
+       // get the "closed" entries and add the first and last names, we are not interested in the entries 
+       // make by this user (the last condition)!
+       global $CFG, $USER;
+    return get_records_sql("SELECT l.time, l.url, u.firstname, u.lastname, c.dialogueid, d.name
+                             FROM {$CFG->prefix}log l,
+                                                               {$CFG->prefix}dialogue d, 
+                                                       {$CFG->prefix}dialogue_conversations c, 
+                                {$CFG->prefix}user u
+                            WHERE l.time > $timestart AND l.course = $course->id AND l.module = 'dialogue'
+                                                               AND l.action = 'closed'
+                                                               AND c.id = l.info 
+                                AND (c.userid = $USER->id or c.recipientid = $USER->id)
+                                                               AND d.id = c.dialogueid
+                                                               AND u.id = c.lastid 
+                                                               AND c.lastid != $USER->id");
 }
 
 
-
 //////////////////////////////////////////////////////////////////////////////////////
 function dialogue_get_conversations($dialogue, $user, $condition = '', $order = '') {
     global $CFG;
@@ -558,55 +419,6 @@ function dialogue_get_conversations($dialogue, $user, $condition = '', $order =
 }
 
 
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_users_done($dialogue) {
-    global $CFG;
-    return get_records_sql("SELECT u.* 
-                              FROM {$CFG->prefix}user u, 
-                                   {$CFG->prefix}user_students s, 
-                                   {$CFG->prefix}user_teachers t, 
-                                   {$CFG->prefix}dialogue_entries j
-                             WHERE ((s.course = '$dialogue->course' AND s.userid = u.id) 
-                                OR  (t.course = '$dialogue->course' AND t.userid = u.id))
-                               AND u.id = j.userid 
-                               AND j.dialogue = '$dialogue->id'
-                          ORDER BY j.modified DESC");
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_user_entries($dialogue, $user) {
-    global $CFG;
-    return get_records_select("dialogue_entries", "dialogueid = $dialogue->id AND userid = $user->id",
-                "timecreated DESC");
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_add_entry_logs($course, $timestart) {
-    // get the "add entry" entries and add the first and last names, we are not interested in the entries 
-    // make by this user (the last condition)!
-    global $CFG, $USER;
-    if (empty($USER->id)) {
-        return false;
-    }
-    return get_records_sql("SELECT l.time, l.url, u.firstname, u.lastname, e.dialogueid, d.name
-                             FROM {$CFG->prefix}log l,
-                                {$CFG->prefix}dialogue d, 
-                                {$CFG->prefix}dialogue_conversations c, 
-                                {$CFG->prefix}dialogue_entries e, 
-                                {$CFG->prefix}user u
-                            WHERE l.time > $timestart AND l.course = $course->id AND l.module = 'dialogue'
-                                AND l.action = 'add entry'
-                                AND e.id = l.info 
-                                AND c.id = e.conversationid
-                                AND (c.userid = $USER->id or c.recipientid = $USER->id)
-                                AND d.id = e.dialogueid
-                                AND u.id = e.userid 
-                                AND e.userid != $USER->id");
-}
-
-
 //////////////////////////////////////////////////////////////////////////////////////
 function dialogue_get_open_conversations($course) {
     // get the conversations which are waiting for a response for this user. 
@@ -644,594 +456,12 @@ function dialogue_get_open_conversations($course) {
 
 
 //////////////////////////////////////////////////////////////////////////////////////
-function dialogue_get_closed_logs($course, $timestart) {
-    // get the "closed" entries and add the first and last names, we are not interested in the entries 
-    // make by this user (the last condition)!
-    global $CFG, $USER;
-    if (empty($USER->id)) {
-        return false;
-    }
-    return get_records_sql("SELECT l.time, l.url, u.firstname, u.lastname, c.dialogueid, d.name
-                             FROM {$CFG->prefix}log l,
-                                {$CFG->prefix}dialogue d, 
-                                {$CFG->prefix}dialogue_conversations c, 
-                                {$CFG->prefix}user u
-                            WHERE l.time > $timestart AND l.course = $course->id AND l.module = 'dialogue'
-                                AND l.action = 'closed'
-                                AND c.id = l.info 
-                                AND (c.userid = $USER->id or c.recipientid = $USER->id)
-                                AND d.id = c.dialogueid
-                                AND u.id = c.lastid 
-                                AND c.lastid != $USER->id");
-}
-
-
-// OTHER dialogue FUNCTIONS ///////////////////////////////////////////////////////////////////
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_list_conversations_closed($dialogue) {
-// list the closed for the current user
-    global $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-    if (! $cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    if ($conversations = dialogue_get_conversations($dialogue, $USER, "closed = 1")) {
-        // reorder the conversations by (other) name
-        foreach ($conversations as $conversation) {
-            if ($USER->id != $conversation->userid) {
-                if (!$with = get_record("user", "id", $conversation->userid)) {
-                    error("User's record not found");
-                }
-            }
-            else {
-                if (!$with = get_record("user", "id", $conversation->recipientid)) {
-                    error("User's record not found");
-                }
-            }
-            $names[$conversation->id] = "$with->firstname $with->lastname";
-        }
-        asort($names);
-        
-        print_simple_box_start();
-        $table->head = array (get_string("dialoguewith", "dialogue"), get_string("subject", "dialogue"),  
-            get_string("numberofentries", "dialogue"), get_string("lastentry", "dialogue"), 
-            get_string("status", "dialogue"));
-        $table->width = "100%";
-        $table->align = array ("left", "left", "center", "left", "left");
-        $table->size = array ("*", "*", "*", "*", "*");
-        $table->cellpadding = 2;
-        $table->cellspacing = 0;
-
-        foreach ($names as $cid=>$name) {
-            if (!$conversation = get_record("dialogue_conversations", "id", $cid)) {
-                error("Closed conversations: could not find conversation record");
-            }
-            $total = dialogue_count_entries($dialogue, $conversation);
-            $byuser = dialogue_count_entries($dialogue, $conversation, $USER);
-            if ($conversation->closed) {
-                $status = get_string("closed", "dialogue");
-            } else {
-                $status = get_string("open", "dialogue");
-            }
-            $table->data[] = array("<a href=\"dialogues.php?id=$cm->id&action=showdialogues&cid=$conversation->id\">".
-                "$name</a>", $conversation->subject, $byuser." ".get_string("of", "dialogue")." ".$total,
-                userdate($conversation->timemodified), $status);
-            }
-        print_table($table);
-        print_simple_box_end();
-    } 
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_list_conversations_other($dialogue) {
-// list the conversations of the current user awaiting response from the other person
-    global $THEME, $USER;
-    
-    if (!$course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-    if (!$cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    $timenow = time();
-    if ($conversations = dialogue_get_conversations($dialogue, $USER, "lastid = $USER->id AND closed = 0")) {
-        // reorder the conversations by (other) name
-        foreach ($conversations as $conversation) {
-            if ($USER->id != $conversation->userid) {
-                if (!$with = get_record("user", "id", $conversation->userid)) {
-                    error("User's record not found");
-                }
-            }
-            else {
-                if (!$with = get_record("user", "id", $conversation->recipientid)) {
-                    error("User's record not found");
-                }
-            }
-            $names[$conversation->id] = "$with->firstname $with->lastname";
-        }
-        asort($names);
-        
-        print_simple_box_start();
-        $table->head = array (get_string("dialoguewith", "dialogue"), get_string("subject", "dialogue"),  
-            get_string("numberofentries", "dialogue"), get_string("lastentry", "dialogue"), 
-            get_string("status", "dialogue"));
-        $table->width = "100%";
-        $table->align = array ("left", "left", "center", "left", "left");
-        $table->size = array ("*", "*", "*", "*", "*");
-        $table->cellpadding = 2;
-        $table->cellspacing = 0;
-
-        foreach ($names as $cid=>$name) {
-            if (!$conversation = get_record("dialogue_conversations", "id", $cid)) {
-                error("Closed conversations: could not find conversation record");
-            }
-            $total = dialogue_count_entries($dialogue, $conversation);
-            $byuser = dialogue_count_entries($dialogue, $conversation, $USER);
-            if ($conversation->seenon) {
-                $status = get_string("seen", "dialogue", format_time($timenow - $conversation->seenon));
-            } else {
-                $status = get_string("notyetseen", "dialogue");
-            }
-            $table->data[] = array("<a href=\"dialogues.php?id=$cm->id&action=printdialogue&cid=$conversation->id\">".
-                "$name</a>", $conversation->subject, $byuser." ".get_string("of", "dialogue")." ".$total,
-                userdate($conversation->timemodified), $status);
-            }
-        print_table($table);
-        print_simple_box_end();
-    } 
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_list_conversations_self($dialogue) {
-// list open conversations of the current user awaiting their reply
-    global $THEME, $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-    if (! $cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    $timenow = time();
-    $showbutton = false;
-    $showemoticon = false;  // never show emoticons for now - need to close or reload the  popup 
-                            // window to get the focus into the correct textarea on the second time round
-    
-    echo "<form name=\"replies\" method=\"post\" action=\"dialogues.php\">\n";
-    echo "<input type=\"hidden\" name=\"action\" value=\"insertentries\">\n";
-    echo "<input type=\"hidden\" name=\"id\" value=\"$cm->id\">\n";
-    echo "<input type=\"hidden\" name=\"pane\" value=\"1\">\n";
-
-    // list the conversations requiring a resonse from this user in full
-    if ($conversations = dialogue_get_conversations($dialogue, $USER, "lastid != $USER->id AND closed = 0")) {
-        $showbutton = true;
-        print_simple_box_start("center");
-        foreach ($conversations as $conversation) {
-            // set seenon if required
-            if (!$conversation->seenon) {
-                if (!set_field("dialogue_conversations", "seenon", $timenow, "id", $conversation->id)) {
-                    error("List conversations self: could not set seenon");
-                }
-            }
-            echo "<center><table border=\"1\" cellspacing=\"0\" valign=\"top\" cellpadding=\"4\" 
-                width=\"100%\">\n";
-            echo "<tr><TD BGCOLOR=\"$THEME->cellheading2\" valign=\"top\">\n";
-            if ($conversation->userid == $USER->id) {
-                if (!$otheruser = get_record("user", "id", $conversation->recipientid)) {
-                    error("User not found");
-                }
-            }
-            else {
-                if (!$otheruser = get_record("user", "id", $conversation->userid)) {
-                    error("User not found");
-                }
-            }
-            // print_user_picture($user->id, $course->id, $user->picture);
-            echo "<b>".get_string("dialoguewith", "dialogue", "$otheruser->firstname $otheruser->lastname").
-                "</b></td>";
-            echo "<td bgcolor=\"$THEME->cellheading2\"><i>$conversation->subject&nbsp;</i><br />\n";
-            echo "<div align=\"right\">\n";
-            if (!$conversation->subject) {
-                // conversation does not have a subject, show add subject link
-                echo "<a href=\"dialogues.php?action=getsubject&id=$cm->id&cid=$conversation->id&pane=2\">".
-                    get_string("addsubject", "dialogue")."</a>\n";
-                helpbutton("addsubject", get_string("addsubject", "dialogue"), "dialogue");
-                echo "&nbsp; | ";
-            }
-            if (dialogue_count_entries($dialogue, $conversation)) {
-                echo "<a href=\"dialogues.php?action=confirmclose&id=$cm->id&cid=$conversation->id&pane=1\">".
-                    get_string("close", "dialogue")."</a>\n";
-                helpbutton("closedialogue", get_string("close", "dialogue"), "dialogue");
-            }
-            else {
-                echo "&nbsp;";
-            }
-            echo "<div></td></tr>";
-        
-            if ($entries = get_records_select("dialogue_entries", "conversationid = $conversation->id", "id")) {
-                foreach ($entries as $entry) {
-                    if ($entry->userid == $USER->id) {
-                        echo "<tr><td colspan=\"2\" bgcolor=\"#FFFFFF\">\n";
-                        echo text_to_html("<font size=\"1\">".get_string("onyouwrote", "dialogue", 
-                            userdate($entry->timecreated)).":</font><br />".$entry->text);
-                        echo "</td></tr>\n";
-                    }
-                    else {
-                        echo "<tr><td colspan=\"2\" bgcolor=\"$THEME->body\">\n";
-                        echo text_to_html("<font size=\"1\">".get_string("onwrote", "dialogue", 
-                               userdate($entry->timecreated)." ".$otheruser->firstname).
-                               ":</font><br />".$entry->text);
-                        echo "</td></tr>\n";
-                    }
-                }
-            }
-        
-            echo "<tr><td colspan=\"2\" align=\"center\" valign=\"top\">\n";
-            if ($entries) {
-                echo "<i>".get_string("typereply", "dialogue")."</i>\n";
-            }
-            else {
-                echo "<i>".get_string("typefirstentry", "dialogue")."</i>\n";
-            }
-            echo "</td></tr>\n";
-            echo "<tr><td valign=\"top\" align=\"right\">\n";
-            helpbutton("writing", get_string("helpwriting"), "dialogue", true, true);
-            echo "<br />";
-            if ($showemoticon) {
-                emoticonhelpbutton("replies", "reply$conversation->id");
-                $showemoticon = false;
-            }               
-            echo "</td><td>\n";
-            // use a cumbersome name on the textarea as the emoticonhelp doesn't like an "array" name 
-            echo "<textarea name=\"reply$conversation->id\" rows=\"5\" cols=\"60\" wrap=\"virtual\">";
-            echo "</textarea>\n";
-            echo "</td></tr>";
-            echo "</table></center><br />\n";
-        }
-        print_simple_box_end();
-    if ($showbutton) {
-        echo "<hr />\n";
-        echo "<b>".get_string("sendmailmessages", "dialogue").":</b> \n";
-        if ($dialogue->maildefault) {
-            echo "<input type=\"checkbox\" name=\"sendthis\" value=\"1\" checked> \n";
-        }
-        else {
-            echo "<input type=\"checkbox\" name=\"sendthis\" value=\"1\"> \n";
-        }
-        helpbutton("sendmail", get_string("sendmailmessages", "dialogue"), "dialogue");
-        echo "<br /><input type=\"submit\" value=\"".get_string("addmynewentries", "dialogue")."\">\n";
-    }
-    echo "</form>\n";
-    }
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_print_conversation($dialogue, $conversation) {
-// print a conversation and allow a new entry
-    global $THEME, $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-    }
-    if (! $cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    $timenow = time();
-    $showbutton = false;
-    $showemoticon = false;  // never show emoticons for now - need to close or reload the  popup 
-                            // window to get the focus into the correct textarea on the second time round
-    
-    echo "<form name=\"replies\" method=\"post\" action=\"dialogues.php\">\n";
-    echo "<input type=\"hidden\" name=\"action\" value=\"insertentries\">\n";
-    echo "<input type=\"hidden\" name=\"id\" value=\"$cm->id\">\n";
-    echo "<input type=\"hidden\" name=\"pane\" value=\"2\">\n";
-
-    $showbutton = true;
-    print_simple_box_start("center", "", $THEME->cellcontent2);
-    echo "<center><table border=\"1\" cellspacing=\"0\" valign=\"top\" cellpadding=\"4\" 
-        width=\"100%\">\n";
-    echo "<tr><td bgcolor=\"$THEME->cellheading2\" valign=\"top\">\n";
-    if ($conversation->userid == $USER->id) {
-        if (!$otheruser = get_record("user", "id", $conversation->recipientid)) {
-            error("User not found");
-        }
-    }
-    else {
-        if (!$otheruser = get_record("user", "id", $conversation->userid)) {
-            error("User not found");
-        }
-    }
-    // print_user_picture($user->id, $course->id, $user->picture);
-    echo "<b>".get_string("dialoguewith", "dialogue", "$otheruser->firstname $otheruser->lastname").
-        "</b></td>";
-    echo "<td bgcolor=\"$THEME->cellheading2\"><i>$conversation->subject&nbsp;</i><br />\n";
-    echo "<div align=\"right\">\n";
-    if (!$conversation->subject) {
-        // conversation does not have a subject, show add subject link
-        echo "<a href=\"dialogues.php?action=getsubject&id=$cm->id&cid=$conversation->id&pane=2\">".
-            get_string("addsubject", "dialogue")."</a>\n";
-        helpbutton("addsubject", get_string("addsubject", "dialogue"), "dialogue");
-        echo "&nbsp; | ";
-    }
-    echo "<a href=\"dialogues.php?action=confirmclose&id=$cm->id&cid=$conversation->id&pane=2\">".
-        get_string("close", "dialogue")."</a>\n";
-    helpbutton("closedialogue", get_string("close", "dialogue"), "dialogue");
-    echo "</div></td></tr>\n";
-
-    if ($entries = get_records_select("dialogue_entries", "conversationid = $conversation->id", "id")) {
-        foreach ($entries as $entry) {
-            if ($entry->userid == $USER->id) {
-                echo "<tr><td colspan=\"2\" bgcolor=\"#FFFFFF\">\n";
-                echo text_to_html("<font size=\"1\">".get_string("onyouwrote", "dialogue", 
-                            userdate($entry->timecreated)).":</font><br />".$entry->text);
-            }
-            else {
-                echo "<tr><td colspan=\"2\" bgcolor=\"$THEME->body\">\n";
-                echo text_to_html("<font size=\"1\">".get_string("onwrote", "dialogue", 
-                            userdate($entry->timecreated)." ".$otheruser->firstname).":</font><br />".
-                        $entry->text);
-            }
-        }
-        echo "</td></tr>\n";
-    }
-    echo "<tr><td colspan=\"2\" align=\"center\" valign=\"top\"><i>".
-        get_string("typefollowup", "dialogue")."</i></td></tr>\n";
-    echo "<tr><td valign=\"top\" align=\"right\">\n";
-    helpbutton("writing", get_string("helpwriting"), "dialogue", true, true);
-    echo "<br />";
-    if ($showemoticon) {
-        emoticonhelpbutton("replies", "reply$conversation->id");
-        $showemoticon = false;
-    }
-    echo "</td><td>\n";
-    // use a cumbersome name on the textarea as the emoticonhelp doesn't like an "array" name 
-    echo "<textarea name=\"reply$conversation->id\" rows=\"5\" cols=\"60\" wrap=\"virtual\">";
-    echo "</textarea>\n";
-    echo "</td></tr>";
-    echo "</table></center><br />\n";
-    print_simple_box_end();
-    if ($showbutton) {
-        echo "<hr />\n";
-        echo "<b>".get_string("sendmailmessages", "dialogue").":</b> \n";
-        if ($dialogue->maildefault) {
-            echo "<input type=\"checkbox\" name=\"sendthis\" value=\"1\" checked> \n";
-        }
-        else {
-            echo "<input type=\"checkbox\" name=\"sendthis\" value=\"1\"> \n";
-        }
-        helpbutton("sendmail", get_string("sendmailmessages", "dialogue"), "dialogue");
-        echo "<br /><input type=\"submit\" value=\"".get_string("addmynewentry", "dialogue")."\">\n";
-    }
-    echo "</form>\n";
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_print_tabbed_heading($tabs) {
-// Prints a tabbed heading where one of the tabs highlighted.
-// $tabs is an object with several properties.
-//      $tabs->names      is an array of tab names
-//      $tabs->urls       is an array of links
-//      $tabs->align     is an array of column alignments (defaults to "center")
-//      $tabs->size      is an array of column sizes
-//      $tabs->wrap      is an array of "nowrap"s or nothing
-//      $tabs->highlight    is an index (zero based) of "active" heading .
-//      $tabs->width     is an percentage of the page (defualts to 80%)
-//      $tabs->cellpadding    padding on each cell (defaults to 5)
-
-    global $CFG, $THEME;
-    
-    if (isset($tabs->names)) {
-        foreach ($tabs->names as $key => $name) {
-            if (!empty($tabs->urls[$key])) {
-                $url =$tabs->urls[$key];
-                if ($tabs->highlight == $key) {
-                    $tabcontents[$key] = "<b>$name</b>";
-                } else {
-                    $tabcontents[$key] = "<a class= \"dimmed\" href=\"$url\"><b>$name</b></a>";
-                }
-            } else {
-                $tabcontents[$key] = "<b>$name</b>";
-            }
-        }
-    }
-
-    if (empty($tabs->width)) {
-        $tabs->width = "80%";
-    }
-
-    if (empty($tabs->cellpadding)) {
-        $tabs->cellpadding = "5";
-    }
-
-    // print_simple_box_start("center", "$table->width", "#ffffff", 0);
-    echo "<table width=\"$tabs->width\" border=\"0\" valign=\"top\" align=\"center\" ";
-    echo " cellpadding=\"$tabs->cellpadding\" cellspacing=\"0\" class=\"generaltable\">\n";
-
-    if (!empty($tabs->names)) {
-        echo "<tr>";
-        echo "<td  class=\"generaltablecell\">".
-            "<img width=\"10\" src=\"$CFG->wwwroot/pix/spacer.gif\" alt=\"\"></td>\n";
-        foreach ($tabcontents as $key => $tab) {
-            if (isset($align[$key])) {
-                $alignment = "align=\"$align[$key]\"";
-            } else {
-                $alignment = "align=\"center\"";
-            }
-            if (isset($size[$key])) {
-                $width = "width=\"$size[$key]\"";
-            } else {
-                $width = "";
-            }
-            if (isset($wrap[$key])) {
-                $wrapping = "no wrap";
-            } else {
-                $wrapping = "";
-            }
-            if ($key == $tabs->highlight) {
-                echo "<td valign=top class=\"generaltabselected\" $alignment $width $wrapping bgcolor=\"$THEME->cellheading2\">$tab</td>\n";
-            } else {
-                echo "<td valign=top class=\"generaltab\" $alignment $width $wrapping bgcolor=\"$THEME->cellheading\">$tab</td>\n";
-            }
-        echo "<td  class=\"generaltablecell\">".
-            "<img width=\"10\" src=\"$CFG->wwwroot/pix/spacer.gif\" alt=\"\"></td>\n";
-        }
-        echo "</tr>\n";
-    } else {
-        echo "<tr><td>No names specified</td></tr>\n";
-    }
-    // bottom stripe
-    $ncells = count($tabs->names)*2 +1;
-    $height = 2;
-    echo "<tr><td colspan=\"$ncells\" bgcolor=\"$THEME->cellheading2\">".
-        "<img height=\"$height\" src=\"$CFG->wwwroot/pix/spacer.gif\" alt=\"\"></td></tr>\n";
-    echo "</table>\n";
-    // print_simple_box_end();
-
-    return true;
-}
-
-
-
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_show_conversation($dialogue, $conversation) {
-    global $THEME, $USER;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-        }
-    if (! $cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    $timenow = time();
-    print_simple_box_start("center");
-    echo "<center><TABLE BORDER=1 CELLSPACING=0 valign=top cellpadding=4 width=\"100%\">\n";
-        
-    echo "<tr>";
-    echo "<td bgcolor=\"$THEME->cellheading2\" valign=\"top\">\n";
-    if ($conversation->userid == $USER->id) {
-        if (!$otheruser = get_record("user", "id", $conversation->recipientid)) {
-            error("User not found");
-        }
-    }
-    else {
-        if (!$otheruser = get_record("user", "id", $conversation->userid)) {
-            error("User not found");
-        }
-    }
-    // print_user_picture($user->id, $course->id, $user->picture);
-    echo "<b>".get_string("dialoguewith", "dialogue", "$otheruser->firstname $otheruser->lastname").
-        "</b></td>";
-    echo "<td bgcolor=\"$THEME->cellheading2\" valign=\"top\"><i>$conversation->subject&nbsp;</i></td></tr>";
-
-    if ($entries = get_records_select("dialogue_entries", "conversationid = $conversation->id", "id")) {
-        foreach ($entries as $entry) {
-            if ($entry->userid == $USER->id) {
-                echo "<tr><td  colspan=\"2\" bgcolor=\"#FFFFFF\">\n";
-                echo text_to_html("<font size=\"1\">".get_string("onyouwrote", "dialogue", 
-                    userdate($entry->timecreated)).
-                    ":</font><br />".$entry->text);
-                echo "</td></tr>\n";
-            }
-            else {
-                echo "<tr><td  colspan=\"2\" bgcolor=\"$THEME->body\">\n";
-                echo text_to_html("<font size=\"1\">".get_string("onwrote", "dialogue", 
-                    userdate($entry->timecreated)." ".$otheruser->firstname).":</font><br />".$entry->text);
-                echo "</td></tr>\n";
-            }
-        }
-    }
-    echo "</TABLE></center><BR CLEAR=ALL>\n";
-    print_simple_box_end();
-    print_continue("view.php?id=$cm->id&pane=3");
+function dialogue_get_user_entries($dialogue, $user) {
+    global $CFG;
+    return get_records_select("dialogue_entries", "dialogueid = $dialogue->id AND userid = $user->id",
+                "timecreated DESC");
 }
 
 
-//////////////////////////////////////////////////////////////////////////////////////
-function dialogue_show_other_conversations($dialogue, $conversation) {
-// prints the other CLOSED conversations for this pair of users
-    global $THEME;
-    
-    if (! $course = get_record("course", "id", $dialogue->course)) {
-        error("Course is misconfigured");
-        }
-    if (! $cm = get_coursemodule_from_instance("dialogue", $dialogue->id, $course->id)) {
-        error("Course Module ID was incorrect");
-    }
-    
-    if (!$user = get_record("user", "id", $conversation->userid)) {
-        error("User not found");
-        }
-    if (!$otheruser = get_record("user", "id", $conversation->recipientid)) {
-        error("User not found");
-        }
-    
-    if ($conversations = get_records_select("dialogue_conversations", "dialogueid = $dialogue->id AND 
-            ((userid = $user->id AND recipientid = $otheruser->id) OR (userid = $otheruser->id AND 
-            recipientid = $user->id)) AND closed = 1", "timemodified DESC")) {
-        if (count($conversations) > 1) {
-            $timenow = time();
-            foreach ($conversations as $otherconversation) {
-                if ($conversation->id != $otherconversation->id) {
-                    // for this conversation work out which is the other user
-                    if ($otherconversation->userid == $user->id) {
-                        if (!$otheruser = get_record("user", "id", $otherconversation->recipientid)) {
-                            error("Show other conversations: could not get user record");
-                        }
-                    }
-                    else {
-                        if (!$otheruser = get_record("user", "id", $otherconversation->userid)) {
-                            error("Show other conversations: could not get user record");
-                        }
-                    } 
-                    print_simple_box_start("center");
-                    echo "<center><TABLE BORDER=1 CELLSPACING=0 valign=top cellpadding=4 width=\"100%\">\n";
-                        
-                    echo "<TR>";
-                    echo "<TD BGCOLOR=\"$THEME->cellheading2\" VALIGN=TOP>\n";
-                    // print_user_picture($otheruser->id, $course->id, $otheruser->picture);
-                    echo "<b>".get_string("dialoguewith", "dialogue", 
-                        "$otheruser->firstname $otheruser->lastname")."</b></td>";
-                    echo "<td bgcolor=\"$THEME->cellheading2\" valign=\"top\"><i>$otherconversation->subject&nbsp;</i></td></tr>";
-                    if ($entries = get_records_select("dialogue_entries", 
-                            "conversationid = $otherconversation->id", "id")) {
-                        foreach ($entries as $entry) {
-                            if ($entry->userid == $user->id) {
-                                echo "<tr><td  colspan=\"2\" bgcolor=\"#FFFFFF\">\n";
-                                echo text_to_html("<font size=\"1\">".get_string("onyouwrote", "dialogue", 
-                                    userdate($entry->timecreated)).":</font><br />".$entry->text);
-                                echo "</td></tr>\n";
-                            }
-                            else {
-                                echo "<tr><td  colspan=\"2\" bgcolor=\"$THEME->body\">\n";
-                                echo text_to_html("<font size=\"1\">".get_string("onwrote", "dialogue", 
-                                    userdate($entry->timecreated)." ".$otheruser->firstname).
-                                    ":</font><br />".$entry->text);
-                                echo "</td></tr>\n";
-                            }
-                        }
-                    }
-                
-                    echo "</TABLE></center><BR CLEAR=ALL>\n";
-                    print_simple_box_end();
-                }
-            }
-            print_continue("view.php?id=$cm->id&pane=3");
-        }
-    }
-}
-
 
 ?>