• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP event\base类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中core\event\base的典型用法代码示例。如果您正苦于以下问题:PHP base类的具体用法?PHP base怎么用?PHP base使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了base类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: observer

 /**
  * Observe the events, and dispatch them if necessary.
  *
  * @param \core\event\base $event The event.
  * @return void
  */
 public static function observer(\core\event\base $event)
 {
     if ($event->component === 'block_xp') {
         // Skip own events.
     } else {
         if (!$event->userid || isguestuser($event->userid) || is_siteadmin($event->userid)) {
             // Skip non-logged in users and guests.
         } else {
             if ($event->contextlevel !== CONTEXT_COURSE && $event->contextlevel !== CONTEXT_MODULE) {
                 // Ignore events outside a course.
             } else {
                 if ($event->edulevel !== \core\event\base::LEVEL_PARTICIPATING) {
                     // Ignore events that are not participating.
                 } else {
                     if (!has_capability('block/xp:earnxp', $event->get_context(), $event->userid)) {
                         // Skip the events if the user does not have the capability to earn XP, or if it is the admin.
                     } else {
                         // Keep the event, and proceed.
                         $manager = block_xp_manager::get($event->courseid);
                         $manager->capture_event($event);
                     }
                 }
             }
         }
     }
 }
开发者ID:scarletjester,项目名称:moodle-block_xp,代码行数:32,代码来源:helper.php


示例2: dispatch

 /**
  * Trigger new event.
  *
  * @internal to be used only from \core\event\base::trigger() method.
  * @param \core\event\base $event
  *
  * @throws \coding_Exception if used directly.
  */
 public static function dispatch(\core\event\base $event)
 {
     if (during_initial_install()) {
         return;
     }
     if (!$event->is_triggered() or $event->is_dispatched()) {
         throw new \coding_exception('Illegal event dispatching attempted.');
     }
     self::$buffer[] = $event;
     if (self::$dispatching) {
         return;
     }
     self::$dispatching = true;
     self::process_buffers();
     self::$dispatching = false;
 }
开发者ID:evltuma,项目名称:moodle,代码行数:24,代码来源:manager.php


示例3: get_events_select

 public function get_events_select($selectwhere, array $params, $sort, $limitfrom, $limitnum)
 {
     global $DB;
     $sort = self::tweak_sort_by_id($sort);
     $events = array();
     $records = $DB->get_records_select('logstore_standard_log', $selectwhere, $params, $sort, '*', $limitfrom, $limitnum);
     foreach ($records as $data) {
         $extra = array('origin' => $data->origin, 'ip' => $data->ip, 'realuserid' => $data->realuserid);
         $data = (array) $data;
         $id = $data['id'];
         $data['other'] = unserialize($data['other']);
         if ($data['other'] === false) {
             $data['other'] = array();
         }
         unset($data['origin']);
         unset($data['ip']);
         unset($data['realuserid']);
         unset($data['id']);
         $event = \core\event\base::restore($data, $extra);
         // Add event to list if it's valid.
         if ($event) {
             $events[$id] = $event;
         }
     }
     return $events;
 }
开发者ID:janaece,项目名称:globalclassroom4_clean,代码行数:26,代码来源:store.php


示例4: observer

 /**
  * Observe the events, and dispatch them if necessary.
  *
  * @param \core\event\base $event The event.
  * @return void
  */
 public static function observer(\core\event\base $event)
 {
     global $CFG;
     static $allowedcontexts = null;
     if ($allowedcontexts === null) {
         $allowedcontexts = array(CONTEXT_COURSE, CONTEXT_MODULE);
         if (isset($CFG->block_xp_context) && $CFG->block_xp_context == CONTEXT_SYSTEM) {
             $allowedcontexts[] = CONTEXT_SYSTEM;
         }
     }
     if ($event->component === 'block_xp') {
         // Skip own events.
     } else {
         if (!$event->userid || isguestuser($event->userid) || is_siteadmin($event->userid)) {
             // Skip non-logged in users and guests.
         } else {
             if ($event->anonymous) {
                 // Skip all the events marked as anonymous.
             } else {
                 if (!in_array($event->contextlevel, $allowedcontexts)) {
                     // Ignore events that are not in the right context.
                 } else {
                     if ($event->edulevel !== \core\event\base::LEVEL_PARTICIPATING) {
                         // Ignore events that are not participating.
                     } else {
                         if (!has_capability('block/xp:earnxp', $event->get_context(), $event->userid)) {
                             // Skip the events if the user does not have the capability to earn XP.
                         } else {
                             // Keep the event, and proceed.
                             $manager = block_xp_manager::get($event->courseid);
                             $manager->capture_event($event);
                         }
                     }
                 }
             }
         }
     }
 }
开发者ID:antoniorodrigues,项目名称:redes-digitais,代码行数:44,代码来源:helper.php


示例5: test_restore_event

 public function test_restore_event()
 {
     $event1 = \core_tests\event\unittest_executed::create(array('context' => context_system::instance(), 'other' => array('sample' => 1, 'xx' => 10)));
     $data1 = $event1->get_data();
     $data1['eventname'] = '\\mod_xx\\event\\xx_yy';
     $data1['component'] = 'mod_xx';
     $data1['action'] = 'yy';
     $data1['target'] = 'xx';
     $extra1 = array('origin' => 'cli');
     $event2 = \core\event\base::restore($data1, $extra1);
     $data2 = $event2->get_data();
     $extra2 = $event2->get_logextra();
     $this->assertInstanceOf('core\\event\\unknown_logged', $event2);
     $this->assertTrue($event2->is_triggered());
     $this->assertTrue($event2->is_restored());
     $this->assertNull($event2->get_url());
     $this->assertEquals($data1, $data2);
     $this->assertEquals($extra1, $extra2);
 }
开发者ID:evltuma,项目名称:moodle,代码行数:19,代码来源:event_unknown_logged_test.php


示例6: buffer_event

 /**
  * Api to buffer events to store, to reduce db queries.
  *
  * @param \core\event\base $event
  */
 protected function buffer_event(\core\event\base $event)
 {
     // If there are no subscriptions for this event do not buffer it.
     if (!\tool_monitor\subscription_manager::event_has_subscriptions($event->eventname, $event->courseid)) {
         return;
     }
     $eventdata = $event->get_data();
     $eventobj = new \stdClass();
     $eventobj->eventname = $eventdata['eventname'];
     $eventobj->contextid = $eventdata['contextid'];
     $eventobj->contextlevel = $eventdata['contextlevel'];
     $eventobj->contextinstanceid = $eventdata['contextinstanceid'];
     if ($event->get_url()) {
         // Get link url if exists.
         $eventobj->link = $event->get_url()->out();
     } else {
         $eventobj->link = '';
     }
     $eventobj->courseid = $eventdata['courseid'];
     $eventobj->timecreated = $eventdata['timecreated'];
     $this->buffer[] = $eventobj;
     $this->count++;
 }
开发者ID:alanaipe2015,项目名称:moodle,代码行数:28,代码来源:eventobservers.php


示例7: get_log_event

 /**
  * Returns an event from the log data.
  *
  * @param stdClass $data Log data
  * @return \core\event\base
  */
 public function get_log_event($data)
 {
     $extra = array('origin' => $data->origin, 'ip' => $data->ip, 'realuserid' => $data->realuserid);
     $data = (array) $data;
     $id = $data['id'];
     $data['other'] = unserialize($data['other']);
     if ($data['other'] === false) {
         $data['other'] = array();
     }
     unset($data['origin']);
     unset($data['ip']);
     unset($data['realuserid']);
     unset($data['id']);
     if (!($event = \core\event\base::restore($data, $extra))) {
         return null;
     }
     return $event;
 }
开发者ID:evltuma,项目名称:moodle,代码行数:24,代码来源:store.php


示例8: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  */
 protected function validate_data()
 {
     parent::validate_data();
     if ($this->contextlevel != CONTEXT_MODULE) {
         throw new \coding_exception('Context level must be CONTEXT_MODULE.');
     }
 }
开发者ID:ninelanterns,项目名称:moodle-mod_scheduler,代码行数:12,代码来源:scheduler_base.php


示例9: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['title'])) {
         throw new \coding_exception('The \'title\' value must be set in the object.');
     }
 }
开发者ID:unikent,项目名称:moodle-mod_qa,代码行数:13,代码来源:question_posted.php


示例10: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['subscriptionid'])) {
         throw new \coding_exception('The \'subscriptionid\' value must be set in other.');
     }
 }
开发者ID:janaece,项目名称:globalclassroom4_clean,代码行数:13,代码来源:subscription_criteria_met.php


示例11: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->relateduserid)) {
         throw new \coding_exception('The \'relateduserid\' must be set.');
     }
 }
开发者ID:advancingdesign,项目名称:moodle-local_enrolmentreminder,代码行数:13,代码来源:message_sent.php


示例12: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['itemid'])) {
         throw new \coding_exception('The itemid needs to be set in $other');
     }
 }
开发者ID:parksandwildlife,项目名称:learning,代码行数:13,代码来源:rating_created.php


示例13: validate_data

 /**
  * Custom validations.
  *
  * @throws \coding_exception when validation fails.
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     // Make sure this class is never used without proper object details.
     if (!$this->contextlevel === CONTEXT_MODULE) {
         throw new \coding_exception('Context level must be CONTEXT_MODULE.');
     }
 }
开发者ID:evltuma,项目名称:moodle,代码行数:14,代码来源:content_page_viewed.php


示例14: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->relateduserid)) {
         debugging('The \'relateduserid\' value must be specified in the event.', DEBUG_DEVELOPER);
         $this->relateduserid = $this->objectid;
     }
 }
开发者ID:sebastianberm,项目名称:moodle-block_coupon,代码行数:14,代码来源:coupon_used.php


示例15: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (empty($this->other['mode'])) {
         throw new \coding_exception('The \'mode\' value must be set in other.');
     }
     if (empty($this->relateduserid)) {
         throw new \coding_exception('The \'relateduserid\' must be set.');
     }
 }
开发者ID:posttechguy,项目名称:moodle-tbst2-report_log,代码行数:16,代码来源:user_report_viewed.php


示例16: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['desc'])) {
         throw new \coding_exception('The \'desc\' value must be set in other.');
     }
     if ($this->contextlevel != CONTEXT_MODULE) {
         throw new \coding_exception('Context level must be CONTEXT_MODULE.');
     }
 }
开发者ID:ccle,项目名称:moodle-mod_turnitintool,代码行数:16,代码来源:delete_submission.php


示例17: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception when validation does not pass.
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['dataid'])) {
         throw new \coding_exception('The dataid must be set in $other.');
     }
     if (!isset($this->other['viewid'])) {
         throw new \coding_exception('The viewid must be set in $other.');
     }
 }
开发者ID:parksandwildlife,项目名称:learning,代码行数:16,代码来源:view_base.php


示例18: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     // Make sure this class is never used without proper object details.
     if (empty($this->objectid) || empty($this->objecttable)) {
         throw new \coding_exception('The course_module_viewed event must define objectid and object table.');
     }
     // Make sure the context level is set to module.
     if ($this->contextlevel != CONTEXT_MODULE) {
         throw new \coding_exception('Context level must be CONTEXT_MODULE.');
     }
 }
开发者ID:evltuma,项目名称:moodle,代码行数:18,代码来源:all_files_downloaded.php


示例19: validate_data

 /**
  * Custom validation.
  *
  * @throws \coding_exception
  * @return void
  */
 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->other['tourid'])) {
         throw new \coding_exception('The \'tourid\' value must be set in other.');
     }
     if (!isset($this->other['stepindex'])) {
         throw new \coding_exception('The \'stepindex\' value must be set in other.');
     }
     if (!isset($this->other['pageurl'])) {
         throw new \coding_exception('The \'pageurl\' value must be set in other.');
     }
 }
开发者ID:dg711,项目名称:moodle,代码行数:19,代码来源:step_shown.php


示例20: validate_data

 protected function validate_data()
 {
     parent::validate_data();
     if (!isset($this->userid)) {
         throw new \coding_exception('The user id must be set.');
     }
     if (!isset($this->courseid)) {
         throw new \coding_exception('The course id must be set.');
     }
     if (!isset($this->other['quizcmid']) && !isset($this->other['qcatid'])) {
         throw new \coding_exception('Either the quiz course module id or the question category id must be set.');
     }
 }
开发者ID:MoodleMetaData,项目名称:MoodleMetaData,代码行数:13,代码来源:questions_retrieved.php



注:本文中的core\event\base类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP event\user_created类代码示例发布时间:2022-05-23
下一篇:
PHP core\View类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap