Aquesta pàgina forma part de la documentació de Moodle en català, tot i que no ha estat traduïda encara. Podeu contribuir obertament a les tasques de traducció. Podeu consultar la Guia d'edició de la documentació i també participar ens els debats del fòrum de traductors de la documentació a moodle.org

Usuari:Frank Ralf/NanoGong: diferència entre les revisions

De MoodleDocs
Salta a:navegació, cerca
Cap resum de modificació
 
(5 revisions intermèdies per 2 usuaris que no es mostren)
Línia 1: Línia 1:
== Java settings ==
== Java settings ==
(Not sure if this is relevant, but better to keep in mind ...)
(Not sure if this is relevant, but better to keep in mind ...)
* see [[Development:Question type plugin how to#Configuration settings for your question type]]
* see [[Question type plugin how to#Configuration settings for your question type]]


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


=== Language folder ===
=== Language folder ===
Add language folder: '''\lang\en\filter_nanogong.php''' with the following content:
Add language folder: '''\lang\en\''' and put '''filter_nanogong.php''' file with the following content there:


<code php>
<code php>
$string['filtername'] = 'NanoGong';
$string['filtername'] = 'NanoGong';
</code>
</code>
[[File:Nanogong filter folder structure.png]]


=== Filter function ===
=== Filter function ===
Línia 59: Línia 61:


* This works as a proof of concept.
* This works as a proof of concept.
==== Getting closer ... ====
This modification does also work:
; NanoGong tag
<code php>
<nanogong
    caption="Testing NanoGong..."
    url="/130/mod_resource/content/1/sentence.wav"
/>
</code>
; filter.php
<code php>
if ($url != "") {
    if ($CFG->slasharguments)
        $url = "{$CFG->wwwroot}/pluginfile.php$url";
    else
        $url; # = "{$CFG->wwwroot}/file.php?file=$url";
}
</code>


==== Documentation ====
==== Documentation ====
* see [[Development:File API]] and [[Development:Using the File API]]
* see [[File API]] and [[Using the File API]]


* [[Development:File_API#File_serving]]
* [[File_API#File_serving]]
* [[Development:Using_the_file_API#Serving_files_to_users]]
* [[Using_the_file_API#Serving_files_to_users]]
* [[Development:File_storage_conversion_Quiz_and_Questions#Serving_files]]
* [[File_storage_conversion_Quiz_and_Questions#Serving_files]]


== See also ==
== See also ==
Línia 73: Línia 97:


; Migrating to Moodle 2.0
; Migrating to Moodle 2.0
* [[Development:Migrating contrib code to 2.0]]
* [[Migrating contrib code to 2.0]]
* [[Development:Migrating to 2.0 checklist]]
* [[Migrating to 2.0 checklist]]
* [[Development:Migrating contrib code to 2.0/Experience of converting a module to Moodle 2]]
* [[Migrating contrib code to 2.0/Experience of converting a module to Moodle 2]]


; Forums
; Forums
* [http://moodle.org/mod/forum/discuss.php?d=170422 Release of NanoGong 4.1, an important update for Moodle users]
* [http://moodle.org/mod/forum/discuss.php?d=170422 Release of NanoGong 4.1, an important update for Moodle users]
* [http://moodle.org/mod/forum/discuss.php?d=174922 NanoGong in Moodle 2.xxx]


; Moodle plugin database  
; Moodle plugin database  
Línia 87: Línia 112:
* http://gong.ust.hk/nanogong/info_php.html
* http://gong.ust.hk/nanogong/info_php.html
* [http://gong.ust.hk/moodle/course/view.php?id=2 Gong and NanoGong Demonstration]
* [http://gong.ust.hk/moodle/course/view.php?id=2 Gong and NanoGong Demonstration]


[[Category:Moodle 2.0|NanoGong]]
[[Category:Moodle 2.0|NanoGong]]
[[Category:Developer|NanoGong]]

Revisió de 07:24, 15 ago 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 Filters 2.0.

Language folder

Add language folder: \lang\en\ and put filter_nanogong.php file with the following content there:

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

Fitxer:Nanogong filter folder structure.png

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.

Getting closer ...

This modification does also work:

NanoGong tag

<nanogong

   caption="Testing NanoGong..." 
   url="/130/mod_resource/content/1/sentence.wav"

/>

filter.php

if ($url != "") {

   if ($CFG->slasharguments)
       $url = "{$CFG->wwwroot}/pluginfile.php$url";
   else
       $url; # = "{$CFG->wwwroot}/file.php?file=$url";

}

Documentation

See also

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