Ejemplo n.º 1
0
 /**
  * Test external blog updated event.
  *
  * There is no external API for this, so the unit test will simply
  * create and trigger the event and ensure data is returned as expected.
  */
 public function test_external_blog_updated_event()
 {
     // Trigger an event: external blog updated.
     $eventparams = array('context' => $context = context_system::instance(), 'objectid' => 1001, 'other' => array('url' => 'http://moodle.org'));
     $event = \core\event\blog_external_updated::create($eventparams);
     // Trigger and capture the event.
     $sink = $this->redirectEvents();
     $event->trigger();
     $events = $sink->get_events();
     $event = reset($events);
     // Check that the event data is valid.
     $this->assertInstanceOf('\\core\\event\\blog_external_updated', $event);
     $this->assertEquals(1001, $event->objectid);
     $this->assertEquals('http://moodle.org', $event->other['url']);
     $this->assertDebuggingNotCalled();
 }
Ejemplo n.º 2
0
                $event->trigger();
                break;
            case 'edit':
                if ($data->id && $DB->record_exists('blog_external', array('id' => $data->id))) {
                    $rss = new moodle_simplepie($data->url);
                    $external->id = $data->id;
                    $external->name = empty($data->name) ? $rss->get_title() : $data->name;
                    $external->description = empty($data->description) ? $rss->get_description() : $data->description;
                    $external->userid = $USER->id;
                    $external->url = $data->url;
                    $external->filtertags = !empty($data->filtertags) ? $data->filtertags : null;
                    $external->timemodified = time();
                    $DB->update_record('blog_external', $external);
                    // Log this action.
                    $eventparms = array('context' => $context, 'objectid' => $external->id, 'other' => array('url' => $external->url));
                    $event = \core\event\blog_external_updated::create($eventparms);
                    $event->trigger();
                    core_tag_tag::set_item_tags('core', 'blog_external', $external->id, context_user::instance($external->userid), $data->autotags);
                } else {
                    print_error('wrongexternalid', 'blog');
                }
                break;
            default:
                print_error('invalidaction');
        }
        redirect($returnurl);
    }
}
navigation_node::override_active_url(new moodle_url('/blog/external_blogs.php'));
$PAGE->navbar->add(get_string('addnewexternalblog', 'blog'));
$PAGE->set_heading(fullname($USER));