在浏览Moodle的源代码时,我偶然发现了这个:
库/最近/ lib.php
public function get_listing($encodedpath = '', $page = '') {
global $OUTPUT;
$ret = array();
$ret['dynload'] = true;
$ret['nosearch'] = true;
$ret['nologin'] = true;
$list = array();
$files = $this->get_recent_files(0, $this->number);
try {
foreach ($files as $file) {
$params = base64_encode(serialize($file));
// Check that file exists and accessible
$filesize = $this->get_file_size($params);
if ($file['filename'] == 'image.png') {
var_dump($filesize);
}
if (!empty($filesize)) {
$node = array(
'title' => $file['filename'],
'size' => $filesize,
'date' => '',
'source'=> $params,
'thumbnail' …
Run Code Online (Sandbox Code Playgroud) 忙着调试一个奇怪的问题,这个问题与一些Flash内容将用户从SCORM模块的进度传递回Moodle的方式有关.
在IE 6,7,8,9,Chrome和Firefox上,一切正常.在IE 10上,Flash模块的进度跟踪未到达服务器.
在SCORM启动程序中,使用以下(古代)代码创建事件处理程序:
<SCRIPT LANGUAGE="VBScript">
on error resume next
sub preloader_FSCommand(ByVal command, ByVal args)
call preloader_DoFSCommand(command, args)
end sub
</SCRIPT>
Run Code Online (Sandbox Code Playgroud)
在Chrome上调试,我可以看到该函数按预期调用.
尝试在IE 10中进行调试失败,因为从未调用过代码.我如何将此代码翻译为Javascript?试图删除VBScript,因为它似乎是问题的一部分.我尝试了以下代码,但没有成功:
<script>
function preloader_FSCommand (command, args) {
preloader_DoFSCommand(command, args);
}
</script>
Run Code Online (Sandbox Code Playgroud)
preloader_DoFSCommand
在代码的其他地方定义,在Chrome/Firefox /等上被称为正常,但在IE 10上则没有.
更新:似乎问题的一部分与IE 10不再支持标准模式下的FSCommand有关.问题现在变成了什么是合适的解决方法,它不需要更改Flash/SCORM内容?
编辑模板时如何分隔块?
例:
<?php echo $ output->blocks('course_summary', 'cssCourse'); ?>
Run Code Online (Sandbox Code Playgroud)
我想使用带有课程摘要ID的块,但他没有出现在第一页......
.......................... ......................................
或者想但是不能进一步发展是这样的:
<?php echo $output->login_info(); ?>
Run Code Online (Sandbox Code Playgroud)
它打印块登录信息,这使得loggof和编辑配置文件等...但我可以关于其他块,或反汇编登录信息分开例如阿凡达用户的他的名字......等...
还在等待帮助......
D:\wamp\www\moodle35>cordova build android cordova-android-support-gradle-release: Android platform: V7.1.2+ cordova-android-support-gradle-release: Wrote custom version '27.1.0' to D:\wamp\www\moodle35\platforms\android\app\build.gradle cordova-android-support-gradle-release: Wrote custom version '27.1.0' to D:\wamp\www\moodle35\platforms\android\app\src\main\cordova-android-su port-gradle-release\properties.gradle Android Studio project detected cordova-android-support-gradle-release: Android platform: V7.1.2+ cordova-android-support-gradle-release: Wrote custom version '27.1.0' to D:\wamp\www\moodle35\platforms\android\app\build.gradle cordova-android-support-gradle-release: Wrote custom version '27.1.0' to D:\wamp\www\moodle35\platforms\android\app\src\main\cordova-android-su port-gradle-release\properties.gradle ANDROID_HOME=C:\Users\nageswararao.veerank.HSMUMSZ\AppData\Local\Android\Sdk JAVA_HOME=C:\Program Files\Java\jdk1.8.0_181 studio Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details
BUILD SUCCESSFUL in 15s
1 actionable task: 1 executed
Subproject Path: CordovaLib
Subproject Path: app
Starting …
Run Code Online (Sandbox Code Playgroud) 我正在尝试设计一个新的主题,具有侧前区域和底区域.在这个底部区域(从左到右)我必须并排添加4个块.请帮助我,如何定义区域(区域,位置)以及我必须修改的文件.
谢谢.
我试图在更改下拉菜单时触发ajax调用(在client_script.php).ajax调用将向server_script.php发送一些值,它将更改client_script.php的div部分.问题是服务器脚本保存在本地目录中,例如blocks/latestgrades/server_script.php.完成ajax调用后,url将成为pre之前的server_script.php的地址
http://localhost/umoodle
Run Code Online (Sandbox Code Playgroud)
这是相当不错的,因为server_script/php文件的位置是这样的.但当我将鼠标悬停在其他页面周围时,onchange触发了ajax调用,该调用试图在该位置找到server_script.php,但前面是
http://localhost/umoodle/<something_i_dont_want_here>/
Run Code Online (Sandbox Code Playgroud)
如何改变网址切割我不想要的地方,然后用那个做ajax调用?
我有一个非常大.mbz
的单门课程Moodle备份文件 - 略超过 1GB。我需要将此备份上传到服务器,但当然 Moodle 提供的文件管理器不允许我这样做,因为文件太大。
所以我想知道是否可以通过 FTP 将备份上传到某个文件夹,moodledata
然后使用备份管理器来恢复课程,如果是这样,我应该在哪里上传它/备份存储在哪里?
我在 apache 代理后面设置 Moodle 实例时遇到问题。
这是我的 apache 前端,它代理正在运行的服务器。
<VirtualHost *:80>
ServerName public.domain.com
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://10.10.10.10:81/moodle/
ProxyPassReverse / http://10.10.10.10:81/moodle/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
和。
$CFG->wwwroot = 'http://public.domain.com';
Run Code Online (Sandbox Code Playgroud)
我安装没有问题,但是安装完成后我在浏览器中尝试:
此重定向到:http://public.domain.com/moodle/index.php? sessionstarted=1&lang=en ...
有谁知道会发生什么?
我希望在Moodle 3.1.7中注册后禁用用户修改其电子邮件帐户
我正在尝试使用 Python 的请求库访问 Moodle 安装的 Web 服务。我有 API 的文档和一个用 php 编写的示例项目(我以前没有看过 php,它比我预期的要理解的要困难得多),但我真的很难正确格式化请求。该网站返回检测到的无效参数,因此我非常确定我的端点、授权令牌和服务器配置正在工作,只是数据的格式让我失望。
首先这里是错误...
<?xml version="1.0" encoding="UTF-8" ?>
<EXCEPTION class="invalid_parameter_exception">
<ERRORCODE>invalidparameter</ERRORCODE>
<MESSAGE>Invalid parameter value detected</MESSAGE>
</EXCEPTION>
Run Code Online (Sandbox Code Playgroud)
现在我的代码...
import requests
target = 'http://example.com/moodle/webservice/rest/server.php?'
moodle_create_token = 'xxx'
moodle_enrol_token = 'yyy'
url_payload = {
"wstoken":moodle_create_token,
"wsfunction":"core_user_create_users"
}
###not sure if I should just be passing this as a dict or some deeper more layered struct
payload = {
"username":"testuser",
"password":'testpass',
"firstname":'testf',
"lastname":'testl',
"email":"test@example.com",
"idnumber":"1234"
}
###not sure how to include the payload as the …
Run Code Online (Sandbox Code Playgroud)