Moodle 限定测验时间设置

Moodle 限定测验时间设置,moodle,Moodle,我想限制测验的时间,只允许将时间设置在上午11点到下午5点之间 我发现这句话: lib/form/datetimeselector.php 在函数_createElement的第120行:我将值23更改为11 现在开放时间选项限制为11,但这也影响了关闭时间 而且它也会影响所有模块 请告诉我修改时间选项的正确位置 谢谢。好的,我找到了解决办法 简单步骤 将lib/form/datetimeselector.php复制到两个新副本中,并将这两个副本重命名为datetimeselector\u qu

我想限制测验的时间,只允许将时间设置在上午11点到下午5点之间

我发现这句话: lib/form/datetimeselector.php 在函数_createElement的第120行:我将值23更改为11

现在开放时间选项限制为11,但这也影响了关闭时间

而且它也会影响所有模块

请告诉我修改时间选项的正确位置


谢谢。

好的,我找到了解决办法

简单步骤
  • lib/form/datetimeselector.php
    复制到两个新副本中,并将这两个副本重命名为
    datetimeselector\u quizopen.php
    datetimeselector\u quizopen.php
  • 在这两个文件中,相应地更改类名和函数名(遗留构造函数)
  • 在第131行的两个文件中,相应地更改循环的
  • 在ini
    lib/formslib.php
    中注册这两个文件(第3227行)
  • mod/quick/mod_form.php
    中,将元素名称从
    date\u time\u selector
    更改为
    date\u time\u selector\u quizopen
    (第86行)和
    date\u time\u selector\u quizclose
    (第90行)
  • 详细步骤
  • 转到文件夹
    lib/form
    并复制
    datetimeselector.php
    -2份副本
  • 将第一个副本重命名为
    datetimeselector_quizopen.php
  • 将第二个副本重命名为
    datetimeselector\u quizclose.php
  • datetimeselector\u quizopen.php
    中,将类名从
    MoodleQuickForm\u date\u time\u选择器重命名为
    MoodleQuickForm\u date\u time\u quizopen
    (第42行)
  • 在同一个文件中,将函数名从
    公共函数MoodleQuickForm\u date\u time\u选择器
    重命名为public
    函数MoodleQuickForm\u date\u time\u选择器
    (第115行)
  • 在同一文件中,将($i=0;$i addElement('date\u time\u selector\u quizopen','timeopen',

  • 在同一文件的第90行,从
    $mform->addElement('date\u time\u selector','timeclose',
    更改为
    $mform->addElement('date\u time\u selector\u quizclose','timeclose',