? FICHEIROS ? config.php ? moodledata ? version1.diff ? version2.diff ? version3.diff ? message/output/email/db/upgrade.php ? message/output/jabber/db/upgrade.php ? mod/feedback/version.php Index: version.php =================================================================== RCS file: /cvsroot/moodle/moodle/version.php,v retrieving revision 1.463 diff -c -r1.463 version.php *** version.php 5 Jun 2007 09:28:15 -0000 1.463 --- version.php 19 Jun 2007 16:52:36 -0000 *************** *** 6,12 **** // This is compared against the values stored in the database to determine // whether upgrades should be performed (see lib/db/*.php) ! $version = 2007060502; // YYYYMMDD = date // XY = increments within a single day $release = '1.9 dev'; // Human-friendly version name --- 6,12 ---- // This is compared against the values stored in the database to determine // whether upgrades should be performed (see lib/db/*.php) ! $version = 2007061916; // YYYYMMDD = date // XY = increments within a single day $release = '1.9 dev'; // Human-friendly version name Index: admin/handlevirus.php =================================================================== RCS file: /cvsroot/moodle/moodle/admin/handlevirus.php,v retrieving revision 1.8 diff -c -r1.8 handlevirus.php *** admin/handlevirus.php 28 Feb 2007 06:25:22 -0000 1.8 --- admin/handlevirus.php 19 Jun 2007 16:52:36 -0000 *************** *** 59,65 **** return false; } $body = get_string('virusfoundlater','moodle',$a); ! email_to_user($user,get_admin(),$subject,$body); } --- 59,75 ---- return false; } $body = get_string('virusfoundlater','moodle',$a); ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = get_admin(); ! $eventdata->userto = $user; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $body; ! $eventdata->fullmessagehtml = $body; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($user,get_admin(),$subject,$body); } *************** *** 69,75 **** $body = get_string('virusfoundlateradmin','moodle',$a); foreach ($admins as $admin) { ! email_to_user($admin,$admin,$subject,$body); } } --- 79,95 ---- $body = get_string('virusfoundlateradmin','moodle',$a); foreach ($admins as $admin) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $admin; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $body; ! $eventdata->fullmessagehtml = $body; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin,$admin,$subject,$body); } } *************** *** 81,87 **** $subject = get_string('virusfoundsubject','moodle',format_string($site->fullname)); $body = get_string('virusfoundlateradminnolog','moodle',$a); foreach ($admins as $admin) { ! email_to_user($admin,$admin,$subject,$body); } } --- 101,117 ---- $subject = get_string('virusfoundsubject','moodle',format_string($site->fullname)); $body = get_string('virusfoundlateradminnolog','moodle',$a); foreach ($admins as $admin) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $admin; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $body; ! $eventdata->fullmessagehtml = $body; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin,$admin,$subject,$body); } } Index: admin/process_email.php =================================================================== RCS file: /cvsroot/moodle/moodle/admin/process_email.php,v retrieving revision 1.5 diff -c -r1.5 process_email.php *** admin/process_email.php 28 Feb 2007 06:25:22 -0000 1.5 --- admin/process_email.php 19 Jun 2007 16:52:36 -0000 *************** *** 33,40 **** $from->lastname = null; $from->email = '<>'; $from->maildisplay = true; ! ! email_to_user($user,$from,$subject,$body); die (); } /// ALL OTHER PROCESSING --- 33,50 ---- $from->lastname = null; $from->email = '<>'; $from->maildisplay = true; ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $from; ! $eventdata->userto = $user; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $body; ! $eventdata->fullmessagehtml = $body; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($user,$from,$subject,$body); die (); } /// ALL OTHER PROCESSING Index: backup/backup_scheduled.php =================================================================== RCS file: /cvsroot/moodle/moodle/backup/backup_scheduled.php,v retrieving revision 1.36 diff -c -r1.36 backup_scheduled.php *** backup/backup_scheduled.php 7 Oct 2006 20:47:56 -0000 1.36 --- backup/backup_scheduled.php 19 Jun 2007 16:52:39 -0000 *************** *** 196,202 **** $subject = $prefix.get_string("scheduledbackupstatus"); //Send the message ! email_to_user($admin,$admin,$subject,$message); } --- 196,212 ---- $subject = $prefix.get_string("scheduledbackupstatus"); //Send the message ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $admin; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $message; ! $eventdata->fullmessagehtml = $message; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin,$admin,$subject,$message); } Index: course/pending.php =================================================================== RCS file: /cvsroot/moodle/moodle/course/pending.php,v retrieving revision 1.10 diff -c -r1.10 pending.php *** course/pending.php 28 Feb 2007 06:25:24 -0000 1.10 --- course/pending.php 19 Jun 2007 16:52:41 -0000 *************** *** 59,65 **** $a->name = $course->fullname; $a->url = $CFG->wwwroot.'/course/view.php?id='.$courseid; $a->teacher = $course->teacher; ! email_to_user($user,$USER,get_string('courseapprovedsubject'),get_string('courseapprovedemail','moodle',$a)); redirect($CFG->wwwroot.'/course/edit.php?id='.$courseid); exit; } --- 59,76 ---- $a->name = $course->fullname; $a->url = $CFG->wwwroot.'/course/view.php?id='.$courseid; $a->teacher = $course->teacher; ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $USER; ! $eventdata->userto = $user; ! $eventdata->subject = get_string('courseapprovedsubject'); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('courseapprovedemail','moodle',$a); ! $eventdata->fullmessagehtml = get_string('courseapprovedemail','moodle',$a); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($user,$USER,get_string('courseapprovedsubject'),get_string('courseapprovedemail','moodle',$a)); redirect($CFG->wwwroot.'/course/edit.php?id='.$courseid); exit; } *************** *** 86,92 **** } else { $user = get_record("user","id",$reject->requester); ! email_to_user($user,$USER,get_string('courserejectsubject'),get_string('courserejectemail','moodle',$rejectnotice)); delete_records("course_request","id",$reject->id); notice(get_string('courserejected'),'pending.php'); } --- 97,114 ---- } else { $user = get_record("user","id",$reject->requester); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $USER; ! $eventdata->userto = $user; ! $eventdata->subject = get_string('courserejectsubject'); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('courserejectemail','moodle',$rejectnotice); ! $eventdata->fullmessagehtml = get_string('courserejectemail','moodle',$rejectnotice); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($user,$USER,get_string('courserejectsubject'),get_string('courserejectemail','moodle',$rejectnotice)); delete_records("course_request","id",$reject->id); notice(get_string('courserejected'),'pending.php'); } Index: enrol/authorize/enrol.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/authorize/enrol.php,v retrieving revision 1.134 diff -c -r1.134 enrol.php *** enrol/authorize/enrol.php 15 Jun 2007 17:40:58 -0000 1.134 --- enrol/authorize/enrol.php 19 Jun 2007 16:52:41 -0000 *************** *** 237,243 **** $context = get_context_instance(CONTEXT_COURSE, $course->id); if ($paymentmanagers = get_users_by_capability($context, 'enrol/authorize:managepayments')) { foreach ($paymentmanagers as $paymentmanager) { ! email_to_user($paymentmanager, $USER, $emailsubject, $emailmessage); } } redirect($CFG->wwwroot, get_string("reviewnotify", "enrol_authorize"), '30'); --- 237,253 ---- $context = get_context_instance(CONTEXT_COURSE, $course->id); if ($paymentmanagers = get_users_by_capability($context, 'enrol/authorize:managepayments')) { foreach ($paymentmanagers as $paymentmanager) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $USER; ! $eventdata->userto = $paymentmanager; ! $eventdata->subject = $emailsubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $emailmessage; ! $eventdata->fullmessagehtml = $emailmessage; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($paymentmanager, $USER, $emailsubject, $emailmessage); } } redirect($CFG->wwwroot, get_string("reviewnotify", "enrol_authorize"), '30'); *************** *** 256,265 **** $a = new stdClass; $a->course = "$course->fullname"; $a->user = fullname($USER); ! email_to_user($paymentmanager, ! $USER, ! get_string("enrolmentnew", '', format_string($course->shortname)), ! get_string('enrolmentnewuser', '', $a)); } if (!empty($CFG->enrol_mailadmins)) { $a = new stdClass; --- 266,286 ---- $a = new stdClass; $a->course = "$course->fullname"; $a->user = fullname($USER); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $USER; ! $eventdata->userto = $paymentmanager; ! $eventdata->subject = get_string("enrolmentnew", '', format_string($course->shortname)); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('enrolmentnewuser', '', $a); ! $eventdata->fullmessagehtml = get_string('enrolmentnewuser', '', $a); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($paymentmanager, ! // $USER, ! // get_string("enrolmentnew", '', format_string($course->shortname)), ! // get_string('enrolmentnewuser', '', $a)); } if (!empty($CFG->enrol_mailadmins)) { $a = new stdClass; *************** *** 267,276 **** $a->user = fullname($USER); $admins = get_admins(); foreach ($admins as $admin) { ! email_to_user($admin, ! $USER, ! get_string("enrolmentnew", '', format_string($course->shortname)), ! get_string('enrolmentnewuser', '', $a)); } } } else { --- 288,307 ---- $a->user = fullname($USER); $admins = get_admins(); foreach ($admins as $admin) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $USER; ! $eventdata->userto = $admin; ! $eventdata->subject = get_string("enrolmentnew", '', format_string($course->shortname)); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('enrolmentnewuser', '', $a); ! $eventdata->fullmessagehtml = get_string('enrolmentnewuser', '', $a); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin, ! // $USER, ! // get_string("enrolmentnew", '', format_string($course->shortname)), ! // get_string('enrolmentnewuser', '', $a)); } } } else { *************** *** 670,679 **** $adminuser = get_admin(); if (!empty($faults)) { ! email_to_user($adminuser, $adminuser, "AUTHORIZE.NET CRON FAULTS", $faults); } if (!empty($CFG->enrol_mailadmins)) { ! email_to_user($adminuser, $adminuser, "AUTHORIZE.NET CRON LOG", $this->log); } // Send emails to students about which courses have enrolled. --- 701,729 ---- $adminuser = get_admin(); if (!empty($faults)) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $adminuser; ! $eventdata->userto = $adminuser; ! $eventdata->subject = 'AUTHORIZE.NET CRON FAULTS'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $faults; ! $eventdata->fullmessagehtml = $faults; ! events_trigger('message_send', $eventdata); ! //email_to_user($adminuser, $adminuser, "AUTHORIZE.NET CRON FAULTS", $faults); } if (!empty($CFG->enrol_mailadmins)) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $adminuser; ! $eventdata->userto = $adminuser; ! $eventdata->subject = 'AUTHORIZE.NET CRON LOG'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $this->log; ! $eventdata->fullmessagehtml = $this->log; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($adminuser, $adminuser, "AUTHORIZE.NET CRON LOG", $this->log); } // Send emails to students about which courses have enrolled. *************** *** 729,735 **** $a->count = $count; $a->url = $CFG->wwwroot.'/enrol/authorize/uploadcsv.php'; $message = get_string('pendingecheckemail', 'enrol_authorize', $a); ! @email_to_user($adminuser, $adminuser, $subject, $message); } // Daily warning email for pending orders expiring. --- 779,796 ---- $a->count = $count; $a->url = $CFG->wwwroot.'/enrol/authorize/uploadcsv.php'; $message = get_string('pendingecheckemail', 'enrol_authorize', $a); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $adminuser; ! $eventdata->userto = $adminuser; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $message; ! $eventdata->fullmessagehtml = $message; ! events_trigger('message_send', $eventdata); ! ! //@email_to_user($adminuser, $adminuser, $subject, $message); } // Daily warning email for pending orders expiring. *************** *** 758,764 **** $a->enrolurl = "$CFG->wwwroot/$CFG->admin/enrol_config.php?enrol=authorize"; $a->url = $CFG->wwwroot.'/enrol/authorize/index.php?status='.AN_STATUS_AUTH; $message = get_string('pendingordersemail', 'enrol_authorize', $a); ! email_to_user($adminuser, $adminuser, $subject, $message); // Email to teachers if (empty($CFG->an_emailexpiredteacher)) { --- 819,836 ---- $a->enrolurl = "$CFG->wwwroot/$CFG->admin/enrol_config.php?enrol=authorize"; $a->url = $CFG->wwwroot.'/enrol/authorize/index.php?status='.AN_STATUS_AUTH; $message = get_string('pendingordersemail', 'enrol_authorize', $a); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $adminuser; ! $eventdata->userto = $adminuser; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $message; ! $eventdata->fullmessagehtml = $message; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($adminuser, $adminuser, $subject, $message); // Email to teachers if (empty($CFG->an_emailexpiredteacher)) { *************** *** 795,801 **** $a->url = $CFG->wwwroot.'/enrol/authorize/index.php?course='.$lastcourse.'&status='.AN_STATUS_AUTH; $message = get_string('pendingordersemailteacher', 'enrol_authorize', $a); foreach ($paymentmanagers as $paymentmanager) { ! email_to_user($paymentmanager, $adminuser, $subject, $message); } } } --- 867,883 ---- $a->url = $CFG->wwwroot.'/enrol/authorize/index.php?course='.$lastcourse.'&status='.AN_STATUS_AUTH; $message = get_string('pendingordersemailteacher', 'enrol_authorize', $a); foreach ($paymentmanagers as $paymentmanager) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $adminuser; ! $eventdata->userto = $paymentmanager; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $message; ! $eventdata->fullmessagehtml = $message; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($paymentmanager, $adminuser, $subject, $message); } } } Index: enrol/authorize/localfuncs.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/authorize/localfuncs.php,v retrieving revision 1.10 diff -c -r1.10 localfuncs.php *** enrol/authorize/localfuncs.php 2 Mar 2007 16:47:38 -0000 1.10 --- enrol/authorize/localfuncs.php 19 Jun 2007 16:52:41 -0000 *************** *** 162,168 **** $a->paymenturl = "$CFG->wwwroot/enrol/authorize/index.php?user=$lastuserid"; $emailmessage = get_string('welcometocoursesemail', 'enrol_authorize', $a); $user = get_record('user', 'id', $lastuserid); ! @email_to_user($user, $sender, get_string("enrolmentnew", '', $SITE->shortname), $emailmessage); } } --- 162,179 ---- $a->paymenturl = "$CFG->wwwroot/enrol/authorize/index.php?user=$lastuserid"; $emailmessage = get_string('welcometocoursesemail', 'enrol_authorize', $a); $user = get_record('user', 'id', $lastuserid); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $sender; ! $eventdata->userto = $user; ! $eventdata->subject = get_string("enrolmentnew", '', $SITE->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $emailmessage; ! $eventdata->fullmessagehtml = $emailmessage; ! events_trigger('message_send', $eventdata); ! ! //@email_to_user($user, $sender, get_string("enrolmentnew", '', $SITE->shortname), $emailmessage); } } Index: enrol/authorize/uploadcsv.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/authorize/uploadcsv.php,v retrieving revision 1.11 diff -c -r1.11 uploadcsv.php *** enrol/authorize/uploadcsv.php 8 Jan 2007 19:34:17 -0000 1.11 --- enrol/authorize/uploadcsv.php 19 Jun 2007 16:52:41 -0000 *************** *** 219,225 **** /// Send email to admin if (!empty($ignoredlines)) { $admin = get_admin(); ! email_to_user($admin, $admin, "$SITE->fullname: Authorize.net CSV ERROR LOG", $ignoredlines); } /// Send welcome messages to users --- 219,235 ---- /// Send email to admin if (!empty($ignoredlines)) { $admin = get_admin(); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $admin; ! $eventdata->subject = "$SITE->fullname: Authorize.net CSV ERROR LOG"; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $ignoredlines; ! $eventdata->fullmessagehtml = $ignoredlines; ! events_trigger('message_send', $eventdata); ! //email_to_user($admin, $admin, "$SITE->fullname: Authorize.net CSV ERROR LOG", $ignoredlines); } /// Send welcome messages to users Index: enrol/flatfile/enrol.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/flatfile/enrol.php,v retrieving revision 1.8 diff -c -r1.8 enrol.php *** enrol/flatfile/enrol.php 21 Sep 2006 00:04:43 -0000 1.8 --- enrol/flatfile/enrol.php 19 Jun 2007 16:52:41 -0000 *************** *** 258,265 **** if (!empty($CFG->enrol_mailstudents)) { $a->coursename = "$course->fullname"; $a->profileurl = "$CFG->wwwroot/user/view.php?id=$user->id&course=$course->id"; ! email_to_user($user, $teacher, get_string("enrolmentnew", '', $course->shortname), ! get_string('welcometocoursetext', '', $a)); } if (!empty($CFG->enrol_mailteachers) && $teachers) { --- 258,275 ---- if (!empty($CFG->enrol_mailstudents)) { $a->coursename = "$course->fullname"; $a->profileurl = "$CFG->wwwroot/user/view.php?id=$user->id&course=$course->id"; ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $user; ! $eventdata->subject = get_string("enrolmentnew", '', $course->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('welcometocoursetext', '', $a); ! $eventdata->fullmessagehtml = get_string('welcometocoursetext', '', $a); ! events_trigger('message_send', $eventdata); ! //email_to_user($user, $teacher, get_string("enrolmentnew", '', $course->shortname), ! // get_string('welcometocoursetext', '', $a)); } if (!empty($CFG->enrol_mailteachers) && $teachers) { *************** *** 269,276 **** if (!$u->hidden || has_capability('moodle/role:viewhiddenassigns', $context)) { $a->course = "$course->fullname"; $a->user = fullname($user); ! email_to_user($teacher, $user, get_string("enrolmentnew", '', $course->shortname), ! get_string('enrolmentnewuser', '', $a)); } } } --- 279,297 ---- if (!$u->hidden || has_capability('moodle/role:viewhiddenassigns', $context)) { $a->course = "$course->fullname"; $a->user = fullname($user); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $user; ! $eventdata->userto = $teacher; ! $eventdata->subject = get_string("enrolmentnew", '', $course->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('enrolmentnewuser', '', $a); ! $eventdata->fullmessagehtml = get_string('enrolmentnewuser', '', $a); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($teacher, $user, get_string("enrolmentnew", '', $course->shortname), ! // get_string('enrolmentnewuser', '', $a)); } } } *************** *** 288,299 **** } // end of if(file_open) if(! @unlink($filename)) { ! email_to_user(get_admin(), get_admin(), get_string("filelockedmailsubject", "enrol_flatfile"), get_string("filelockedmail", "enrol_flatfile", $filename)); $this->log .= "Error unlinking file $filename\n"; } if (!empty($CFG->enrol_mailadmins)) { ! email_to_user(get_admin(), get_admin(), "Flatfile Enrolment Log", $this->log); } } // end of if(file_exists) --- 309,340 ---- } // end of if(file_open) if(! @unlink($filename)) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = get_admin(); ! $eventdata->userto = get_admin(); ! $eventdata->subject = get_string("filelockedmailsubject", "enrol_flatfile"); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string("filelockedmail", "enrol_flatfile", $filename); ! $eventdata->fullmessagehtml = get_string("filelockedmail", "enrol_flatfile", $filename); ! events_trigger('message_send', $eventdata); ! ! //email_to_user(get_admin(), get_admin(), get_string("filelockedmailsubject", "enrol_flatfile"), get_string("filelockedmail", "enrol_flatfile", $filename)); $this->log .= "Error unlinking file $filename\n"; } if (!empty($CFG->enrol_mailadmins)) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = get_admin(); ! $eventdata->userto = get_admin(); ! $eventdata->subject = 'Flatfile Enrolment Log'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $this->log; ! $eventdata->fullmessagehtml = $this->log; ! events_trigger('message_send', $eventdata); ! ! //email_to_user(get_admin(), get_admin(), "Flatfile Enrolment Log", $this->log); } } // end of if(file_exists) Index: enrol/imsenterprise/enrol.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/imsenterprise/enrol.php,v retrieving revision 1.9 diff -c -r1.9 enrol.php *** enrol/imsenterprise/enrol.php 20 Feb 2007 17:15:14 -0000 1.9 --- enrol/imsenterprise/enrol.php 19 Jun 2007 16:52:42 -0000 *************** *** 377,383 **** $msg .= "Logging is currently not active."; } ! email_to_user(get_admin(), get_admin(), "Moodle IMS Enterprise enrolment notification", $msg); $this->log_line('Notification email sent to administrator.'); } --- 377,393 ---- $msg .= "Logging is currently not active."; } ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = get_admin(); ! $eventdata->userto = get_admin(); ! $eventdata->subject = 'Moodle IMS Enterprise enrolment notification'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $msg; ! $eventdata->fullmessagehtml = $msg; ! events_trigger('message_send', $eventdata); ! ! //email_to_user(get_admin(), get_admin(), "Moodle IMS Enterprise enrolment notification", $msg); $this->log_line('Notification email sent to administrator.'); } Index: enrol/manual/enrol.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/manual/enrol.php,v retrieving revision 1.16 diff -c -r1.16 enrol.php *** enrol/manual/enrol.php 21 Mar 2007 06:20:02 -0000 1.16 --- enrol/manual/enrol.php 19 Jun 2007 16:52:42 -0000 *************** *** 309,316 **** } else { $a->current[] = fullname($user) . " <$user->email>"; if ($course->notifystudents) { // Send this guy notice ! email_to_user($user, $teacher, $SITE->fullname .' '. $strexpirynotify, ! $strexpirynotifystudentsemail); } } } --- 309,325 ---- } else { $a->current[] = fullname($user) . " <$user->email>"; if ($course->notifystudents) { // Send this guy notice ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $user; ! $eventdata->subject = $SITE->fullname .' '. $strexpirynotify; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $strexpirynotifystudentsemail; ! $eventdata->fullmessagehtml = $strexpirynotifystudentsemail; ! events_trigger('message_send', $eventdata); ! //email_to_user($user, $teacher, $SITE->fullname .' '. $strexpirynotify, ! // $strexpirynotifystudentsemail); } } } *************** *** 325,331 **** 'u.*,ra.hidden', 'r.sortorder ASC', '', '', '', '', false)) { foreach ($teachers as $teacher) { ! email_to_user($teacher, $admin, $a->coursename .' '. $strexpirynotify, $strexpirynotifyemail); } } } --- 334,350 ---- 'u.*,ra.hidden', 'r.sortorder ASC', '', '', '', '', false)) { foreach ($teachers as $teacher) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $teacher; ! $eventdata->subject = $a->coursename .' '. $strexpirynotify; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $strexpirynotifyemail; ! $eventdata->fullmessagehtml = $strexpirynotifyemail; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($teacher, $admin, $a->coursename .' '. $strexpirynotify, $strexpirynotifyemail); } } } Index: enrol/paypal/ipn.php =================================================================== RCS file: /cvsroot/moodle/moodle/enrol/paypal/ipn.php,v retrieving revision 1.19 diff -c -r1.19 ipn.php *** enrol/paypal/ipn.php 28 Feb 2007 06:25:27 -0000 1.19 --- enrol/paypal/ipn.php 19 Jun 2007 16:52:42 -0000 *************** *** 102,108 **** // Email user to let them know. Email admin. if ($data->payment_status == "Pending" and $data->pending_reason != "echeck") { ! email_to_user($user, get_admin(), "Moodle: PayPal payment", "Your PayPal payment is pending."); email_paypal_error_to_admin("Payment pending", $data); die; } --- 102,118 ---- // Email user to let them know. Email admin. if ($data->payment_status == "Pending" and $data->pending_reason != "echeck") { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = get_admin(); ! $eventdata->userto = $user; ! $eventdata->subject = 'Moodle: PayPal payment'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = 'Your PayPal payment is pending.'; ! $eventdata->fullmessagehtml = 'Your PayPal payment is pending.'; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($user, get_admin(), "Moodle: PayPal payment", "Your PayPal payment is pending."); email_paypal_error_to_admin("Payment pending", $data); die; } *************** *** 170,184 **** if (!empty($CFG->enrol_mailstudents)) { $a->coursename = $course->fullname; $a->profileurl = "$CFG->wwwroot/user/view.php?id=$user->id"; ! email_to_user($user, $teacher, get_string("enrolmentnew", '', $course->shortname), ! get_string('welcometocoursetext', '', $a)); } if (!empty($CFG->enrol_mailteachers)) { $a->course = $course->fullname; $a->user = fullname($user); ! email_to_user($teacher, $user, get_string("enrolmentnew", '', $course->shortname), ! get_string('enrolmentnewuser', '', $a)); } if (!empty($CFG->enrol_mailadmins)) { --- 180,215 ---- if (!empty($CFG->enrol_mailstudents)) { $a->coursename = $course->fullname; $a->profileurl = "$CFG->wwwroot/user/view.php?id=$user->id"; ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $user; ! $eventdata->subject = get_string("enrolmentnew", '', $course->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('welcometocoursetext', '', $a); ! $eventdata->fullmessagehtml = get_string('welcometocoursetext', '', $a); ! events_trigger('message_send', $eventdata); ! //email_to_user($user, $teacher, get_string("enrolmentnew", '', $course->shortname), ! // get_string('welcometocoursetext', '', $a)); } if (!empty($CFG->enrol_mailteachers)) { $a->course = $course->fullname; $a->user = fullname($user); ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $user; ! $eventdata->userto = $teacher; ! $eventdata->subject = get_string("enrolmentnew", '', $course->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('enrolmentnewuser', '', $a); ! $eventdata->fullmessagehtml = get_string('enrolmentnewuser', '', $a); ! events_trigger('message_send', $eventdata); ! ! // email_to_user($teacher, $user, get_string("enrolmentnew", '', $course->shortname), ! // get_string('enrolmentnewuser', '', $a)); } if (!empty($CFG->enrol_mailadmins)) { *************** *** 186,193 **** $a->user = fullname($user); $admins = get_admins(); foreach ($admins as $admin) { ! email_to_user($admin, $user, get_string("enrolmentnew", '', $course->shortname), ! get_string('enrolmentnewuser', '', $a)); } } --- 217,234 ---- $a->user = fullname($user); $admins = get_admins(); foreach ($admins as $admin) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $user; ! $eventdata->userto = $admin; ! $eventdata->subject = get_string("enrolmentnew", '', $course->shortname); ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = get_string('enrolmentnewuser', '', $a); ! $eventdata->fullmessagehtml = get_string('enrolmentnewuser', '', $a); ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin, $user, get_string("enrolmentnew", '', $course->shortname), ! // get_string('enrolmentnewuser', '', $a)); } } *************** *** 217,224 **** foreach ($data as $key => $value) { $message .= "$key => $value\n"; } ! email_to_user($admin, $admin, "PAYPAL ERROR: ".$subject, $message); } --- 258,275 ---- foreach ($data as $key => $value) { $message .= "$key => $value\n"; } + + $eventdata = new object(); + $eventdata->modulename = 'moodle'; + $eventdata->userfrom = $admin; + $eventdata->userto = $admin; + $eventdata->subject = 'PAYPAL ERROR: '.$subject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $message; + $eventdata->fullmessagehtml = $message; + events_trigger('message_send', $eventdata); ! //email_to_user($admin, $admin, "PAYPAL ERROR: ".$subject, $message); } Index: error/index.php =================================================================== RCS file: /cvsroot/moodle/moodle/error/index.php,v retrieving revision 1.16 diff -c -r1.16 index.php *** error/index.php 4 Jan 2007 21:32:43 -0000 1.16 --- error/index.php 19 Jun 2007 16:52:42 -0000 *************** *** 12,18 **** } else { $user = $USER; } ! email_to_user($admin, $user, 'Error: '. $form->referer .' -> '. $form->requested, $form->text); redirect($CFG->wwwroot .'/course/', 'Message sent, thanks', 3); die; --- 12,28 ---- } else { $user = $USER; } ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $admin; ! $eventdata->userto = $user; ! $eventdata->subject = 'Error'; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = 'Error: '. $form->referer .' -> '. $form->requested, $form->text; ! $eventdata->fullmessagehtml = 'Error: '. $form->referer .' -> '. $form->requested, $form->text; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin, $user, 'Error: '. $form->referer .' -> '. $form->requested, $form->text); redirect($CFG->wwwroot .'/course/', 'Message sent, thanks', 3); die; Index: lang/en_utf8/message.php =================================================================== RCS file: /cvsroot/moodle/moodle/lang/en_utf8/message.php,v retrieving revision 1.5 diff -c -r1.5 message.php *** lang/en_utf8/message.php 29 Dec 2006 18:33:41 -0000 1.5 --- lang/en_utf8/message.php 19 Jun 2007 16:52:47 -0000 *************** *** 67,70 **** --- 67,77 ---- $string['userisblockingyounoncontact'] = 'This user is only accepting messages from people listed as contacts, and you are not currently on the list.'; $string['userssearchresults'] = 'Search results: $a users found'; + //luis: used in the message system + $string['editmymessage'] = 'Messaging'; + $string['guestnoeditmessage'] = 'Guest user can not edit messaging options'; + $string['guestnoeditmessageother'] = 'Guest user can not edit other user messaging options'; + + + ?> Index: lang/en_utf8/role.php =================================================================== RCS file: /cvsroot/moodle/moodle/lang/en_utf8/role.php,v retrieving revision 1.35 diff -c -r1.35 role.php *** lang/en_utf8/role.php 18 May 2007 11:57:47 -0000 1.35 --- lang/en_utf8/role.php 19 Jun 2007 16:52:47 -0000 *************** *** 145,148 **** --- 145,153 ---- $string['site:mnetlogintoremote'] = 'Roam to a remote Moodle'; $string['site:mnetloginfromremote'] = 'Login from a remote Moodle'; + //LUIS: new message system + $string['user:editmessageprofile'] = 'Edit user messaging profile'; + $string['user:editownmessageprofile'] = 'Edit own user messaging profile'; + + ?> Index: lib/eventslib.php =================================================================== RCS file: /cvsroot/moodle/moodle/lib/eventslib.php,v retrieving revision 1.14 diff -c -r1.14 eventslib.php *** lib/eventslib.php 5 Jun 2007 22:58:38 -0000 1.14 --- lib/eventslib.php 19 Jun 2007 16:52:58 -0000 *************** *** 231,247 **** $function = unserialize($handler->handlerfunction); if (is_callable($function)) { // oki, no need for includes } else if (file_exists($CFG->dirroot.$handler->handlerfile)) { include_once($CFG->dirroot.$handler->handlerfile); - } else { $errormessage = "Handler file of component $handler->handlermodule: $handler->handlerfile can not be found!"; return false; } // checks for handler validity if (is_callable($function)) { return call_user_func($function, $eventdata); --- 231,249 ---- $function = unserialize($handler->handlerfunction); + if (is_callable($function)) { // oki, no need for includes } else if (file_exists($CFG->dirroot.$handler->handlerfile)) { include_once($CFG->dirroot.$handler->handlerfile); } else { $errormessage = "Handler file of component $handler->handlermodule: $handler->handlerfile can not be found!"; return false; } + + // checks for handler validity if (is_callable($function)) { return call_user_func($function, $eventdata); *************** *** 374,379 **** --- 376,382 ---- function events_trigger($eventname, $eventdata) { global $CFG, $USER; + $failedcount = 0; // number of failed events. $event = false; *************** *** 384,389 **** --- 387,394 ---- $errormessage = ''; if ($handler->schedule == 'instant') { + + if ($handler->status) { //check if previous pending events processed if (!record_exists('events_queue_handlers', 'handlerid', $handler->id)) { *************** *** 396,401 **** --- 401,407 ---- // dispatch the event only if instant schedule and status ok if (!$handler->status) { $errormessage = 'Unknown error';; + if (events_dispatch($handler, $eventdata, $errormessage)) { continue; } Index: lib/uploadlib.php =================================================================== RCS file: /cvsroot/moodle/moodle/lib/uploadlib.php,v retrieving revision 1.25 diff -c -r1.25 uploadlib.php *** lib/uploadlib.php 20 May 2007 11:20:49 -0000 1.25 --- lib/uploadlib.php 19 Jun 2007 16:52:58 -0000 *************** *** 680,686 **** $subject = get_string('clamemailsubject', 'moodle', format_string($site->fullname)); $admins = get_admins(); foreach ($admins as $admin) { ! email_to_user($admin, get_admin(), $subject, $notice); } } --- 680,696 ---- $subject = get_string('clamemailsubject', 'moodle', format_string($site->fullname)); $admins = get_admins(); foreach ($admins as $admin) { ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $get_admin(); ! $eventdata->userto = $admin; ! $eventdata->subject = $subject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $notice; ! $eventdata->fullmessagehtml = $notice; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($admin, get_admin(), $subject, $notice); } } Index: lib/db/access.php =================================================================== RCS file: /cvsroot/moodle/moodle/lib/db/access.php,v retrieving revision 1.59 diff -c -r1.59 access.php *** lib/db/access.php 10 Jun 2007 19:35:05 -0000 1.59 --- lib/db/access.php 19 Jun 2007 16:52:59 -0000 *************** *** 789,794 **** --- 789,818 ---- ) ), + //capabilities designed for the new message system configuration + 'moodle/user:editmessageprofile' => array( + + 'riskbitmask' => RISK_SPAM, + + 'captype' => 'write', + 'contextlevel' => CONTEXT_USER, + 'legacy' => array( + 'admin' => CAP_ALLOW + ) + ), + + 'moodle/user:editownmessageprofile' => array( + + 'captype' => 'write', + 'contextlevel' => CONTEXT_SYSTEM, + 'legacy' => array( + 'guest' => CAP_PROHIBIT, + 'user' => CAP_ALLOW, + 'admin' => CAP_ALLOW + ) + ), + + 'moodle/question:import' => array( 'riskbitmask' => RISK_XSS, Index: lib/db/events.php =================================================================== RCS file: /cvsroot/moodle/moodle/lib/db/events.php,v retrieving revision 1.4 diff -c -r1.4 events.php *** lib/db/events.php 6 Jun 2007 23:04:25 -0000 1.4 --- lib/db/events.php 19 Jun 2007 16:52:59 -0000 *************** *** 26,31 **** /////////////////////////////////////////////////////////////////////////// ! $handlers = array (); // no handlers for now in core ?> --- 26,77 ---- /////////////////////////////////////////////////////////////////////////// ! $handlers = array ( ! ! /* ! * Messaging Events ! */ ! /* ! * required parameters (object): ! * modulename - ! * modulefile - ! * ! */ ! 'message_provider_register' => array ( ! 'handlerfile' => '/lib/message.php', ! 'handlerfunction' => 'message_provider_register_handler', ! 'schedule' => 'instant' ! ), ! ! /* ! * required parameters (object): ! * modulename - ! * ! */ ! ! 'message_provider_unregister' => array ( ! 'handlerfile' => '/lib/message.php', ! 'handlerfunction' => 'message_provider_unregister_handler', ! 'schedule' => 'instant' ! ), ! ! /* required parameters (object): ! * modulename - ! * userfrom ! * userto ! * subject ! * smallmessage - the small version of the message ! * fullmessagetext - the full version (the message processor will choose with one to use) ! * fullmessagehtml - the full version (the message processor will choose with one to use) ! */ ! ! 'message_send' => array ( ! 'handlerfile' => '/lib/message.php', ! 'handlerfunction' => 'message_send_handler', ! 'schedule' => 'instant' ! ) ! ! ! ); ?> Index: lib/db/install.xml =================================================================== RCS file: /cvsroot/moodle/moodle/lib/db/install.xml,v retrieving revision 1.73 diff -c -r1.73 install.xml *** lib/db/install.xml 6 Jun 2007 23:04:25 -0000 1.73 --- lib/db/install.xml 19 Jun 2007 16:52:59 -0000 *************** *** 1,5 **** ! --- 1,5 ---- ! *************** *** 1420,1426 **** ! --- 1420,1426 ----
! *************** *** 1430,1438 ****
! --- 1430,1457 ---- + + + + + + + + + +
+ + + + + + + + +
! *************** *** 1452,1456 **** --- 1471,1486 ---- + + + + + + + + + + +
\ No newline at end of file Index: lib/db/upgrade.php =================================================================== RCS file: /cvsroot/moodle/moodle/lib/db/upgrade.php,v retrieving revision 1.66 diff -c -r1.66 upgrade.php *** lib/db/upgrade.php 6 Jun 2007 02:45:39 -0000 1.66 --- lib/db/upgrade.php 19 Jun 2007 16:52:59 -0000 *************** *** 1392,1397 **** --- 1392,1465 ---- /// Launch create table for grade_import_newitem $result = $result && create_table($table); } + + if ($result && $oldversion < 2009061900) { + //create the database tables for message_processors and message_providers + $table = new XMLDBTable('message_providers'); + $table->addFieldInfo('id', XMLDB_TYPE_INTEGER, '10', null, XMLDB_NOTNULL, XMLDB_SEQUENCE, null, null, null); + $table->addFieldInfo('modulename', XMLDB_TYPE_CHAR, '166', null, XMLDB_NOTNULL, null, null, null, null); + $table->addFieldInfo('modulefile', XMLDB_TYPE_CHAR, '255', null, XMLDB_NOTNULL, null, null, null, null); + $table->addKeyInfo('primary', XMLDB_KEY_PRIMARY, array('id')); + $result = $result && create_table($table); + + $table = new XMLDBTable('message_processors'); + $table->addFieldInfo('id', XMLDB_TYPE_INTEGER, '10', null, XMLDB_NOTNULL, XMLDB_SEQUENCE, null, null, null); + $table->addFieldInfo('name', XMLDB_TYPE_CHAR, '166', null, XMLDB_NOTNULL, null, null, null, null); + $table->addKeyInfo('primary', XMLDB_KEY_PRIMARY, array('id')); + $result = $result && create_table($table); + + + $provider = new object(); + $provider->modulename = 'moodle'; + $provider->modulefile = 'index.php'; + $result = $result & insert_record('message_providers', $provider); + + $processor = new object(); + $processor->name = 'nothing'; + $result = $result & insert_record('message_processors', $processor); + + //just process the WIDGET_install to create the entries for the providers while upgrading + if (!$mods = get_list_of_plugins('mod') ) { + error('No modules installed!'); + } + + foreach ($mods as $mod) { + include_once($CFG->dirroot .'/mod/'. $mod .'/lib.php'); // defines upgrading and/or installing functions + + /// Run local install function if there is one + $installfunction = $mod.'_install'; + if (function_exists($installfunction)) { + if (! $installfunction() ) { + notify('Encountered a problem running install function for '.$mod.'!'); + } + } + + } + + //just process the WIDGET_install to create the entries for the processors while upgrading + if (!$mods = get_list_of_plugins('message/output') ) { + error('No modules installed!'); + } + + foreach ($mods as $mod) { + include_once($CFG->dirroot .'/message/output/'. $mod .'/lib.php'); // defines upgrading and/or installing functions + + /// Run local install function if there is one + $installfunction = $mod.'_install'; + if (function_exists($installfunction)) { + if (! $installfunction() ) { + notify('Encountered a problem running install function for '.$mod.'!'); + } + } + + } + + + + + } + + return $result; Index: message/discussion.php =================================================================== RCS file: /cvsroot/moodle/moodle/message/discussion.php,v retrieving revision 1.13 diff -c -r1.13 discussion.php *** message/discussion.php 3 Jan 2007 20:35:10 -0000 1.13 --- message/discussion.php 19 Jun 2007 16:53:07 -0000 *************** *** 111,117 **** } else if (empty($refresh) and data_submitted() and confirm_sesskey()) { if ($message!='') { ! message_post_message($USER, $user, $message, $format, 'direct'); } redirect('discussion.php?id='.$userid.'&start='.$start.'&noframesjs='.$noframesjs.'&newonly='.$newonly.'&last='.$last); } --- 111,117 ---- } else if (empty($refresh) and data_submitted() and confirm_sesskey()) { if ($message!='') { ! message_post_message($USER, $user, $message, $format, 'direct'); } redirect('discussion.php?id='.$userid.'&start='.$start.'&noframesjs='.$noframesjs.'&newonly='.$newonly.'&last='.$last); } Index: message/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/message/lib.php,v retrieving revision 1.59 diff -c -r1.59 lib.php *** message/lib.php 13 Jan 2007 00:12:49 -0000 1.59 --- message/lib.php 19 Jun 2007 16:53:07 -0000 *************** *** 1003,1009 **** if (!isset($preference->message_emailformat)) { $preference->message_emailformat = FORMAT_HTML; } ! if ((time() - $userto->lastaccess) > ((int)$preference->message_emailtimenosee * 60)) { // Long enough $message = stripslashes_safe($message); $tagline = get_string('emailtagline', 'message', $SITE->shortname); --- 1003,1010 ---- if (!isset($preference->message_emailformat)) { $preference->message_emailformat = FORMAT_HTML; } ! //for now allways send using events ! //if ((time() - $userto->lastaccess) > ((int)$preference->message_emailtimenosee * 60)) { // Long enough $message = stripslashes_safe($message); $tagline = get_string('emailtagline', 'message', $SITE->shortname); *************** *** 1023,1030 **** if (!empty($preference->message_emailaddress)) { $userto->email = $preference->message_emailaddress; // Use custom messaging address } ! email_to_user($userto, $userfrom, $messagesubject, $messagetext, $messagehtml); ! } } return $savemessage->id; --- 1024,1042 ---- if (!empty($preference->message_emailaddress)) { $userto->email = $preference->message_emailaddress; // Use custom messaging address } ! ! $eventdata = new object(); ! $eventdata->modulename = 'moodle'; ! $eventdata->userfrom = $userfrom; ! $eventdata->userto = $userto; ! $eventdata->subject = $messagesubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $messagetext; ! $eventdata->fullmessagehtml = $messagehtml; ! events_trigger('message_send', $eventdata); ! ! //email_to_user($userto, $userfrom, $messagesubject, $messagetext, $messagehtml); ! //} } return $savemessage->id; Index: mod/assignment/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/assignment/lib.php,v retrieving revision 1.243 diff -c -r1.243 lib.php *** mod/assignment/lib.php 11 Jun 2007 11:28:42 -0000 1.243 --- mod/assignment/lib.php 19 Jun 2007 16:53:08 -0000 *************** *** 1358,1364 **** $posttext = $this->email_teachers_text($info); $posthtml = ($teacher->mailformat == 1) ? $this->email_teachers_html($info) : ''; ! @email_to_user($teacher, $user, $postsubject, $posttext, $posthtml); // If it fails, oh well, too bad. } } } --- 1358,1375 ---- $posttext = $this->email_teachers_text($info); $posthtml = ($teacher->mailformat == 1) ? $this->email_teachers_html($info) : ''; ! $eventdata = new object(); ! $eventdata->modulename = 'assignment'; ! $eventdata->userfrom = $user; ! $eventdata->userto = $teacher; ! $eventdata->subject = $postsubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $posttext; ! $eventdata->fullmessagehtml = $posthtml; ! if ( events_trigger('message_send', $eventdata) > 0 ){ ! } ! ! // @email_to_user($teacher, $user, $postsubject, $posttext, $posthtml); // If it fails, oh well, too bad. } } } *************** *** 1631,1636 **** --- 1642,1661 ---- /// OTHER STANDARD FUNCTIONS //////////////////////////////////////////////////////// + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function assignment_install() { + $eventdata = new object(); + $eventdata->modulename = 'assignment'; + $eventdata->modulefile = 'mod/assignment/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + + /** * Deletes an assignment instance * *************** *** 1807,1816 **** --- 1832,1855 ---- } else { $posthtml = ""; } + + $eventdata = new object(); + $eventdata->modulename = 'assignment'; + $eventdata->userfrom = $teacher; + $eventdata->userto = $user; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0 ){ + echo "Error: assignment cron: Could not send out mail for id $submission->id to user $user->id ($user->email)\n"; + } + /* if (! email_to_user($user, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: assignment cron: Could not send out mail for id $submission->id to user $user->id ($user->email)\n"; } + */ } $USER = $realuser; Index: mod/exercise/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/exercise/lib.php,v retrieving revision 1.48 diff -c -r1.48 lib.php *** mod/exercise/lib.php 16 Apr 2007 23:20:39 -0000 1.48 --- mod/exercise/lib.php 19 Jun 2007 16:53:09 -0000 *************** *** 49,54 **** --- 49,68 ---- **********************************************/ /*******************************************************************/ + + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function exercise_install() { + $eventdata = new object(); + $eventdata->modulename = 'exercise'; + $eventdata->modulefile = 'mod/exercise/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + function exercise_add_instance($exercise) { // Given an object containing all the necessary data, // (defined by the form in mod.html) this function *************** *** 226,234 **** --- 240,262 ---- echo "Error: can not find teacher for course $course->id!\n"; } + $eventdata = new object(); + $eventdata->modulename = 'exercise'; + $eventdata->userfrom = $sendto; + $eventdata->userto = $teacher; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0 ){ + echo "Error: exercise cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; + } + + /* if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: exercise cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } + */ } } return true; Index: mod/forum/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/forum/lib.php,v retrieving revision 1.579 diff -c -r1.579 lib.php *** mod/forum/lib.php 11 Jun 2007 11:28:44 -0000 1.579 --- mod/forum/lib.php 19 Jun 2007 16:53:09 -0000 *************** *** 1,6 **** --- 1,7 ---- libdir.'/filelib.php'); + require_once($CFG->libdir.'/eventslib.php'); /// CONSTANTS /////////////////////////////////////////////////////////// *************** *** 86,91 **** --- 87,105 ---- /// STANDARD FUNCTIONS /////////////////////////////////////////////////////////// + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function forum_install() { + $eventdata = new object(); + $eventdata->modulename = 'forum'; + $eventdata->modulefile = 'mod/forum/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + /** * Given an object containing all the necessary data, * (defined by the form in mod.html) this function *************** *** 448,455 **** mtrace('Sending ', ''); ! if (!$mailresult = email_to_user($userto, $userfrom, $postsubject, $posttext, $posthtml, '', '', $CFG->forum_replytouser)) { mtrace("Error: mod/forum/cron.php: Could not send out mail for id $post->id to user $userto->id". " ($userto->email) .. not trying again."); add_to_log($course->id, 'forum', 'mail error', "discuss.php?d=$discussion->id#p$post->id", --- 462,481 ---- mtrace('Sending ', ''); ! /* if (!$mailresult = email_to_user($userto, $userfrom, $postsubject, $posttext, $posthtml, '', '', $CFG->forum_replytouser)) { + */ + + + $eventdata = new object(); + $eventdata->modulename = 'forum'; + $eventdata->userfrom = $userto; + $eventdata->userto = $userfrom; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0){ mtrace("Error: mod/forum/cron.php: Could not send out mail for id $post->id to user $userto->id". " ($userto->email) .. not trying again."); add_to_log($course->id, 'forum', 'mail error', "discuss.php?d=$discussion->id#p$post->id", *************** *** 698,705 **** --- 724,742 ---- $posthtml = ''; } + /* if (!$mailresult = email_to_user($userto, $site->shortname, $postsubject, $posttext, $posthtml, '', '', $CFG->forum_replytouser)) { + */ + $eventdata = new object(); + $eventdata->modulename = 'forum'; + $eventdata->userfrom = $userto; + $eventdata->userto = $site->shortname; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0){ mtrace("ERROR!"); echo "Error: mod/forum/cron.php: Could not send out digest mail to user $userto->id ($userto->email)... not trying again.\n"; add_to_log($course->id, 'forum', 'mail digest error', '', '', $cm->id, $userto->id); Index: mod/journal/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/journal/lib.php,v retrieving revision 1.80 diff -c -r1.80 lib.php *** mod/journal/lib.php 16 Apr 2007 23:12:26 -0000 1.80 --- mod/journal/lib.php 19 Jun 2007 16:53:09 -0000 *************** *** 170,178 **** --- 170,191 ---- $posthtml = ""; } + $eventdata = new object(); + $eventdata->modulename = 'lesson'; + $eventdata->userfrom = $teacher; + $eventdata->userto = $user; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0){ + echo "Error: Journal cron: Could not send out mail for id $entry->id to user $user->id ($user->email)\n"; + } + /* if (! email_to_user($user, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: Journal cron: Could not send out mail for id $entry->id to user $user->id ($user->email)\n"; } + */ if (! set_field("journal_entries", "mailed", "1", "id", "$entry->id")) { echo "Could not update the mailed field for id $entry->id\n"; } *************** *** 439,444 **** --- 452,471 ---- echo "
\n"; } + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function journal_install() { + $eventdata = new object(); + $eventdata->modulename = 'journal'; + $eventdata->modulefile = 'mod/journal/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + + function journal_add_instance($journal) { // Given an object containing all the necessary data, Index: mod/lesson/essay.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/lesson/essay.php,v retrieving revision 1.8 diff -c -r1.8 essay.php *** mod/lesson/essay.php 11 Jun 2007 11:25:26 -0000 1.8 --- mod/lesson/essay.php 19 Jun 2007 16:53:10 -0000 *************** *** 195,200 **** --- 195,220 ---- // Subject $subject = get_string('essayemailsubject', 'lesson', format_string($pages[$attempt->pageid]->title,true)); + $eventdata = new object(); + $eventdata->modulename = 'lesson'; + $eventdata->userfrom = $USER; + $eventdata->userto = $users[$attempt->userid]; + $eventdata->subject = $subject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $plaintext; + $eventdata->fullmessagehtml = $message; + if ( events_trigger('message_send', $eventdata) == 0){ + $essayinfo->sent = 1; + $attempt->useranswer = addslashes(serialize($essayinfo)); + update_record('lesson_attempts', $attempt); + // Log it + add_to_log($course->id, 'lesson', 'update email essay grade', "essay.php?id=$cm->id", format_string($pages[$attempt->pageid]->title,true).': '.fullname($users[$attempt->userid]), $cm->id); + }else{ + error('Emailing Failed'); + } + + + /* if(email_to_user($users[$attempt->userid], $USER, $subject, $plaintxt, $message)) { $essayinfo->sent = 1; $attempt->useranswer = addslashes(serialize($essayinfo)); *************** *** 204,209 **** --- 224,230 ---- } else { error('Emailing Failed'); } + */ } } lesson_set_message(get_string('emailsuccess', 'lesson'), 'notifysuccess'); Index: mod/lesson/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/lesson/lib.php,v retrieving revision 1.35 diff -c -r1.35 lib.php *** mod/lesson/lib.php 11 Jun 2007 11:25:26 -0000 1.35 --- mod/lesson/lib.php 19 Jun 2007 16:53:10 -0000 *************** *** 10,15 **** --- 10,30 ---- define("LESSON_MAX_EVENT_LENGTH", "432000"); // 5 days maximum /*******************************************************************/ + + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function lesson_install() { + $eventdata = new object(); + $eventdata->modulename = 'lesson'; + $eventdata->modulefile = 'mod/lesson/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + + function lesson_add_instance($lesson) { /// Given an object containing all the necessary data, /// (defined by the form in mod.html) this function Index: mod/workshop/lib.php =================================================================== RCS file: /cvsroot/moodle/moodle/mod/workshop/lib.php,v retrieving revision 1.96 diff -c -r1.96 lib.php *** mod/workshop/lib.php 7 Mar 2007 07:50:24 -0000 1.96 --- mod/workshop/lib.php 19 Jun 2007 16:53:12 -0000 *************** *** 77,82 **** --- 77,96 ---- **********************************************/ /////////////////////////////////////////////////////////////////////////////// + + /** + * Code to be executed when a module is installed + * now is just used to register the module as message provider + */ + function workshop_install() { + $eventdata = new object(); + $eventdata->modulename = 'workshop'; + $eventdata->modulefile = 'mod/workshop/index.php'; + events_trigger('message_provider_register', $eventdata); + + return true; + } + function workshop_add_instance($workshop) { // Given an object containing all the necessary data, // (defined by the form in mod.html) this function *************** *** 267,276 **** --- 281,305 ---- echo "Error: can not find teacher for course $course->id!\n"; } + $eventdata = new object(); + $eventdata->modulename = 'workshop'; + $eventdata->userfrom = $teacher; + $eventdata->userto = $sendto; + $eventdata->subject = $postsubject; + $eventdata->smallmessage = ''; + $eventdata->fullmessagetext = $posttext; + $eventdata->fullmessagehtml = $posthtml; + if ( events_trigger('message_send', $eventdata) > 0){ + echo "Error: workshop cron: Could not send out mail for id $submission->id to + user $sendto->id ($sendto->email)\n"; + } + + /* if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } + */ } } *************** *** 356,366 **** if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } } } --- 385,410 ---- if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! ! $eventdata = new object(); ! $eventdata->modulename = 'workshop'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $sendto; ! $eventdata->subject = $postsubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $posttext; ! $eventdata->fullmessagehtml = $posthtml; ! if ( events_trigger('message_send', $eventdata) > 0){ ! echo "Error: workshop cron: Could not send out mail for id $submission->id to ! user $sendto->id ($sendto->email)\n"; ! } ! ! /* if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } + */ } } *************** *** 457,467 **** if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } } // see if the assessor needs to to told if ($comment->userid != $assessment->userid) { --- 501,526 ---- if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! ! $eventdata = new object(); ! $eventdata->modulename = 'workshop'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $sendto; ! $eventdata->subject = $postsubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $posttext; ! $eventdata->fullmessagehtml = $posthtml; ! if ( events_trigger('message_send', $eventdata) > 0){ ! echo "Error: workshop cron: Could not send out mail for id $submission->id to user ! $sendto->id ($sendto->email)\n"; ! } ! ! /* if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } + */ } // see if the assessor needs to to told if ($comment->userid != $assessment->userid) { *************** *** 504,514 **** if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } if (! set_field("workshop_comments", "mailed", "1", "id", "$comment->id")) { echo "Could not update the mailed field for comment id $comment->id\n"; } --- 563,588 ---- if (!$teacher = get_teacher($course->id)) { echo "Error: can not find teacher for course $course->id!\n"; } ! ! $eventdata = new object(); ! $eventdata->modulename = 'workshop'; ! $eventdata->userfrom = $teacher; ! $eventdata->userto = $sendto; ! $eventdata->subject = $postsubject; ! $eventdata->smallmessage = ''; ! $eventdata->fullmessagetext = $posttext; ! $eventdata->fullmessagehtml = $posthtml; ! if ( events_trigger('message_send', $eventdata) > 0){ ! echo "Error: workshop cron: Could not send out mail for id $submission->id to user ! $sendto->id ($sendto->email)\n"; ! } ! ! /* if (! email_to_user($sendto, $teacher, $postsubject, $posttext, $posthtml)) { echo "Error: workshop cron: Could not send out mail for id $submission->id to user $sendto->id ($sendto->email)\n"; } + */ if (! set_field("workshop_comments", "mailed", "1", "id", "$comment->id")) { echo "Could not update the mailed field for comment id $comment->id\n"; } Index: user/tabs.php =================================================================== RCS file: /cvsroot/moodle/moodle/user/tabs.php,v retrieving revision 1.39 diff -c -r1.39 tabs.php *** user/tabs.php 30 Apr 2007 13:26:06 -0000 1.39 --- user/tabs.php 19 Jun 2007 16:53:17 -0000 *************** *** 230,235 **** --- 230,242 ---- } } } + + //added a new ta + if (has_capability('moodle/user:editownmessageprofile', $systemcontext)) { + $toprow[] = new tabobject('editmessage', $wwwroot.'/message/edit.php?id='.$user->id.'&course='.$course->id, get_string('editmymessage', 'message')); + } + + /// Add second row to display if there is one if (!empty($secondrow)) {