Automatic installer.php lang files by installer_builder (20100803)
[moodle.git] / message / history.php
blob42b3cc55bf5968d36b7ed7372d7838dca6791d38
1 <?php // $Id$
2 // For listing message histories between any two users
4 require('../config.php');
5 require('lib.php');
7 require_login();
9 if (isguest()) {
10 redirect($CFG->wwwroot);
13 if (empty($CFG->messaging)) {
14 error("Messaging is disabled on this site");
17 /// Script parameters
18 $userid1 = required_param('user1', PARAM_INT);
19 if (! $user1 = get_record("user", "id", $userid1)) { // Check it's correct
20 error("User ID 1 was incorrect");
23 if ($user1->deleted) {
24 print_header();
25 print_heading(get_string('userdeleted').': '.$userid1);
26 print_footer();
27 die;
30 if (has_capability('moodle/site:readallmessages', get_context_instance(CONTEXT_SYSTEM))) { // Able to see any discussion
31 $userid2 = optional_param('user2', $USER->id, PARAM_INT);
32 if (! $user2 = get_record("user", "id", $userid2)) { // Check
33 error("User ID 2 was incorrect");
35 if ($user2->deleted) {
36 print_header();
37 print_heading(get_string('userdeleted').': '.$userid2);
38 print_footer();
39 die;
41 } else {
42 $userid2 = $USER->id; // Can only see messages involving yourself
43 $user2 = $USER;
45 $search = optional_param('search', '', PARAM_CLEAN);
47 add_to_log(SITEID, 'message', 'history', 'history.php?user1='.$userid1.'&amp;user2='.$userid2, $userid1);
49 /// Our two users are defined - let's set up the page
51 print_header(get_string('messagehistory', 'message'), '', '', '', '<base target="_blank" />');
53 /// Print out a heading including the users we are looking at
55 print_simple_box_start('center');
56 echo '<table align="center" cellpadding="10"><tr>';
57 echo '<td align="center">';
58 echo print_user_picture($user1, SITEID, $user1->picture, 100, true, true, 'userwindow').'<br />';
59 echo fullname($user1);
60 echo '</td>';
61 echo '<td align="center">';
62 echo '<img src="'.$CFG->wwwroot.'/pix/t/left.gif" alt="'.get_string('from').'" />';
63 echo '<img src="'.$CFG->wwwroot.'/pix/t/right.gif" alt="'.get_string('to').'" />';
64 echo '</td>';
65 echo '<td align="center">';
66 echo print_user_picture($user2, SITEID, $user2->picture, 100, true, true, 'userwindow').'<br />';
67 echo fullname($user2);
68 echo '</td>';
69 echo '</tr></table>';
70 print_simple_box_end();
73 /// Get all the messages and print them
75 if ($messages = message_get_history($user1, $user2)) {
76 $current->mday = '';
77 $current->month = '';
78 $current->year = '';
79 $messagedate = get_string('strftimetime');
80 $blockdate = get_string('strftimedaydate');
81 foreach ($messages as $message) {
82 $date = usergetdate($message->timecreated);
83 if ($current->mday != $date['mday'] | $current->month != $date['month'] | $current->year != $date['year']) {
84 $current->mday = $date['mday'];
85 $current->month = $date['month'];
86 $current->year = $date['year'];
87 echo '<a name="'.$date['year'].$date['mon'].$date['mday'].'"></a>';
88 print_heading(userdate($message->timecreated, $blockdate), 'center', 4);
90 if ($message->useridfrom == $user1->id) {
91 echo message_format_message($message, $user1, $messagedate, $search, 'other');
92 } else {
93 echo message_format_message($message, $user2, $messagedate, $search, 'me');
96 } else {
97 print_heading(get_string('nomessagesfound', 'message'));
100 print_footer('none');