Difference between revisions of "User:Frank Ralf/NanoGong"

Jump to: navigation, search

Note: You are currently viewing documentation for Moodle 2.0. Up-to-date documentation for the latest stable version is available here: Frank Ralf/NanoGong.

(File API)
(File API)
Line 35: Line 35:
 
=== File API ===
 
=== File API ===
  
 +
==== Proof of concept ====
 
* Instead of the old '''file.php''' the new File API uses '''pluginfile.php'''.
 
* Instead of the old '''file.php''' the new File API uses '''pluginfile.php'''.
 
* I uploaded a test file (sentence.wav) as a resource to find out the internal URL Moodle uses for serving this file.
 
* I uploaded a test file (sentence.wav) as a resource to find out the internal URL Moodle uses for serving this file.
Line 59: Line 60:
 
* This works as a proof of concept.
 
* This works as a proof of concept.
  
 
+
==== Documentation ====
 
* see [[Development:File API]] and [[Development:Using the File API]]
 
* see [[Development:File API]] and [[Development:Using the File API]]
  

Revision as of 17:15, 7 April 2011

Java settings

(Not sure if this is relevant, but better to keep in mind ...)

Filter

General information on filters in Moodle 2.0 can be found at Filters 2.0 and for developers at Development:Filters 2.0.

Language folder

Add language folder: \lang\en\filter_nanogong.php with the following content:

$string['filtername'] = 'NanoGong';

Filter function

The filter function is wrapped inside a class:

class filter_nanogong extends moodle_text_filter {
    function filter($text, array $options = array()){
    ...
    }
}

Note: The callback function has to be outside this class definition!

Preventing caching

$CFG->currenttextiscacheable = false;

is deprecated, outcommented

File API

Proof of concept

  • Instead of the old file.php the new File API uses pluginfile.php.
  • I uploaded a test file (sentence.wav) as a resource to find out the internal URL Moodle uses for serving this file.
  • I then added this full URL as attribute to the NanoGong tag:
<nanogong 
    caption="Testing NanoGong..." 
    url="http://localhost/moodle-MOODLE_20_WEEKLY/pluginfile.php/130/mod_resource/content/1/sentence.wav"
/>
  • As the URL is already in its full format I just commented out the following lines in filter.php.
if ($url != "") {
    if ($CFG->slasharguments)
        $url; # = "{$CFG->wwwroot}/file.php$url";
    else
        $url; # = "{$CFG->wwwroot}/file.php?file=$url";
}
  • This works as a proof of concept.

Documentation

See also

Necessary updating for Moodle 1.9
Migrating to Moodle 2.0
Forums
Moodle plugin database
NanoGong documentation