0

在我的 Moodle 网站上,我在每门课程中都设置了测验。当学生参加测验时,我希望该学生收到一封确认电子邮件。在该确认电子邮件中,我还希望能够有一个特定于学生刚刚参加的测验的 pdf 附件(例如 pdf 证书)。

到目前为止,我在站点管理 > 语言 > 语言自定义中找到了 emailconfirmbody 字符串。在那里,我可以编辑默认的“亲爱的 {$a->username},感谢您在 {$a-> 的课程“{$a->coursename}”中提交对“{$a->quizname}”的回答submittime}。此消息确认我们已安全收到您的答案。您可以在 {$a->quizurl} 访问此测验。" 问题是...

  1. 如何添加pdf附件?pdf 附件需要特定于测验,就像 emailconfirmbody 消息特定于测验一样(通过使用变量 quizname)。

  2. 除非手动运行 cron.php 文件,否则在提交测验后不会发送电子邮件。如何让电子邮件自动发送?

4

1 回答 1

0

就像 Franz 上面所说的,您需要设置 cron 以定期运行。

对于电子邮件附件,您可能需要发送自己的电子邮件。您可以通过使用事件 api 来做到这一点。 http://docs.moodle.org/dev/Events_API#Handling_an_event

如果您查看测验事件文件的底部,您可以看到要使用的事件。/mod/quiz/db/events.php

这个大概

quiz_attempt_submitted
->component   = 'mod_quiz';
->attemptid   = // The id of the quiz attempt that was submitted.
->timefinish  = // The timestamp of when the attempt was submitted.
->timestamp   = // The timestamp of when the attempt was submitted.
->userid      = // The user id that the attempt belongs to.
->submitterid = // The user id of the user who sumitted the attempt.
->quizid      = // The quiz id of the quiz the attempt belongs to.
->cmid        = // The course_module id of the quiz the attempt belongs to.
->courseid    = // The course id of the course the quiz belongs to.

在这里查看使用 课程完成更新外部数据库事件创建本地插件的概述

于 2013-10-25T09:16:38.753 回答