*/
function enrol_into_course($course, $user, $enrol) {
+ $timestart = time();
if ($course->enrolperiod) {
- $timestart = time();
$timeend = time() + $course->enrolperiod;
} else {
- $timestart = $timeend = 0;
+ $timeend = 0;
}
if ($role = get_default_course_role($course)) {
// if event type is
if ($handler->schedule == 'instant') {
- if (dispatch_event($handler, $eventdata->eventdata)) {
+ if (dispatch_event($handler, $eventdata)) {
continue;
} else {
// update the failed flag
* @return bool - success or fail
*/
function dispatch_event($handler, $eventdata) {
-
+
global $CFG;
// checks for handler validity
foreach ($grades->grades as $userid=>$usergrade) {
// make the grade_added eventdata
// missing grade event trigger
- // trigger_event('grade_added', $eventdata);
+ // trigger_event('grade_added', $eventdata);
+ unset($eventdata);
+ $eventdata->courseid = $modinstance->course;
+ $eventdata->itemmodule = $mod;
+ $eventdata->iteminstance = $modinstance->instance;
+ $eventdata->gradetype = 0;
+ $eventdata->userid = $userid;
+ $eventdata->gradevalue = $usergrade;
+
+ print_object($eventdata);
+ trigger_event('grade_added', $eventdata);
+
}
}
}
/*
* Handles all grade_added and grade_updated events
*
- * INCOMPLETE
- *
* @param object $eventdata contains all the data for the event
* @return boolean success
*
/// First let's make sure a grade_item exists for this grade
$gradeitem = new grade_item($eventdata);
+
if (empty($gradeitem->id)) { // Doesn't exist yet
if (!$gradeitem->id = $gradeitem->insert()) { // Try to create a new item...
debugging('Could not create a grade_item!');
$eventdata->itemid = $gradeitem->id;
-
/// Grade_item exists, now we can insert the new raw grade
- $rawgrade = new grade_grade_raw($eventdata);
+ $rawgrade = new grade_grades_raw($eventdata);
if ($rawgrade->id) {
$rawgrade->update($eventdata->gradevalue, 'event');
// dummy test function
function plusone($eventdata) {
+
return $eventdata+1;
}
$eventdata->schedule = 'instant';
$eventid = insert_record('events_queue', $eventdata);
-
+
$id = queue_handler($this->handler, $eventid);
$storedhandler = get_record('events_queue_handlers', 'id', $id);
+
$retval = events_process_queued_handler($storedhandler);
$this->assertEqual(2, $retval);
$this->storedhandler = $storedhandler;
* tests trigger_event funtion()
*/
function test_trigger_event() {
- $eventdata = new object;
- $eventdata->eventdata = 2;
- $eventdata->schedule = 'instant';
+ $eventdata = 2;
$this->assertEqual(0, trigger_event('testevent', $eventdata));
}