Difference between revisions of "Creating mobile question types"

Jump to: navigation, search
Line 13: Line 13:
 
* styles_app.css
 
* styles_app.css
  
Create a new file db/mobile.php
+
==== db/mobile.php ====
 
<code php>
 
<code php>
 
defined('MOODLE_INTERNAL') || die();
 
defined('MOODLE_INTERNAL') || die();

Revision as of 22:16, 31 December 2018

An empty template for creating quiz question types is available from here and it incorporates the skeleton code for supporting the App.

https://github.com/marcusgreen/moodle-qtype_TEMPLATE

The files that need to be modified/added are

  • db/mobile.php
  • classes/output/mobile.php
  • mobile/mobile.js
  • mobile/addon-qtype-YOURQTYPENAME.html
  • styles_app.css

db/mobile.php

defined('MOODLE_INTERNAL') || die();
 
$addons = [
    "qtype_YOURQTYPENAME" => [
        "handlers" => [ // Different places where the add-on will display content.
            'YOURQTYPENAME' => [ // Handler unique name (can be anything).
                'displaydata' => [
                    'title' => 'YOURQTYPENAME question',
                    'icon' => '/question/type/YOURQTYPENAME/pix/icon.gif',
                    'class' => '',
                ],
                'delegate' => 'CoreQuestionDelegate', // Delegate (where to display the link to the add-on).
                'method' => 'mobile_get_YOURQTYPENAME',
                'offlinefunctions' => [
                    'mobile_get_YOURQTYPENAME' => [],// function in classes/output/mobile.php
                ], // Function needs caching for offline.
                'styles' => [
                    'url' => '/question/type/YOURQTYPENAME/mobile/styles_app.css',
                    'version' => '1.00'
                ]
            ]
        ],
        'lang' => [
                    ['pluginname', 'qtype_YOURQTYPENAME'], // matching value in  lang/en/qtype_YOURQTYPENAME
        ],
    ]
];