3 class block_messages
extends block_base
{
5 $this->title
= get_string('messages','message');
6 $this->version
= 2007101509;
9 function get_content() {
12 if (!$CFG->messaging
) {
16 if ($this->content
!== NULL) {
17 return $this->content
;
20 $this->content
= new stdClass
;
21 $this->content
->text
= '';
22 $this->content
->footer
= '';
24 if (empty($this->instance
) or empty($USER->id
) or isguest() or empty($CFG->messaging
)) {
25 return $this->content
;
28 $this->content
->footer
= '<a href="'.$CFG->wwwroot
.'/message/index.php" onclick="this.target=\'message\'; return openpopup(\'/message/index.php\', \'message\', \'menubar=0,location=0,scrollbars,status,resizable,width=400,height=500\', 0);">'.get_string('messages', 'message').'</a>...';
30 $users = get_records_sql("SELECT m.useridfrom as id, COUNT(m.useridfrom) as count,
31 u.firstname, u.lastname, u.picture, u.imagealt, u.lastaccess
32 FROM {$CFG->prefix}user u,
33 {$CFG->prefix}message m
34 WHERE m.useridto = '$USER->id'
35 AND u.id = m.useridfrom
36 GROUP BY m.useridfrom, u.firstname,u.lastname,u.picture,u.lastaccess,u.imagealt");
39 //Now, we have in users, the list of users to show
40 //Because they are online
42 $this->content
->text
.= '<ul class="list">';
43 foreach ($users as $user) {
44 $timeago = format_time(time() - $user->lastaccess
);
45 $this->content
->text
.= '<li class="listentry"><div class="user"><a href="'.$CFG->wwwroot
.'/user/view.php?id='.$user->id
.'&course='.$this->instance
->pageid
.'" title="'.$timeago.'">';
46 $this->content
->text
.= print_user_picture($user, $this->instance
->pageid
, $user->picture
, 0, true, false, '', false);
47 $this->content
->text
.= fullname($user).'</a></div>';
48 $this->content
->text
.= '<div class="message"><a href="'.$CFG->wwwroot
.'/message/discussion.php?id='.$user->id
.'" onclick="this.target=\'message_'.$user->id
.'\'; return openpopup(\'/message/discussion.php?id='.$user->id
.'\', \'message_'.$user->id
.'\', \'menubar=0,location=0,scrollbars,status,resizable,width=400,height=500\', 0);"><img class="iconsmall" src="'.$CFG->pixpath
.'/t/message.gif" alt="" /> '.$user->count
.'</a>';
49 $this->content
->text
.= '</div></li>';
51 $this->content
->text
.= '</ul>';
53 $this->content
->text
.= '<div class="info">';
54 $this->content
->text
.= get_string('nomessages', 'message');
55 $this->content
->text
.= '</div>';
58 return $this->content
;