123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- <?php
- require_once ($CFG->dirroot . '/mod/iassign/locallib.php');
- function xmldb_iassign_install () {
- global $CFG, $DB, $USER;
- $dbman = $DB->get_manager();
-
-
-
- $table = new xmldb_table('iassign_submission');
- $field = new xmldb_field('previous_grade', XMLDB_TYPE_FLOAT, null, null, null, null, null);
- if (!$dbman->field_exists($table, $field)) {
- $dbman->add_field($table, $field);
- }
- $records = array(
- array_combine(
- array('name', 'url', 'version', 'type', 'description',
- 'extension', 'file_jar', 'file_class', 'width', 'height',
- 'enable', 'evaluate', 'reevaluate', 'timemodified', 'author', 'timecreated',
- 'editingbehavior', 'submissionbehavior', 'action_buttons'),
- array('iVProg', 'http://www.usp.br/line/ivprog/', '1.0.20200121', 'HTML5', '{"en":"Visual Interactive Programming on the Internet (HTML)","pt_br":"Programação visual interativa na Internet"}',
- 'ivph', 'ilm/iVProg/1.0.20190717/ivprog/', 'index.html', 800, 600,
- 1, 1, 1, time(), $USER->id, time(),
- 1, 0, 1)),
- array_combine(
- array('name', 'url', 'version', 'type', 'description',
- 'extension', 'file_jar', 'file_class', 'width', 'height',
- 'enable', 'evaluate', 'reevaluate', 'timemodified', 'author', 'timecreated',
- 'editingbehavior', 'submissionbehavior', 'action_buttons'),
- array('iHanoi', 'http://www.matematica.br/ihanoi', '1.0.20200803', 'HTML5', '{"en":"interactive Tower os Hanoi (by LInE)", "pt_br":"Torres de Hanói (do LInE)"}',
- 'ihn', 'ilm/iHanoi/1.0.20200803/ihanoi/', 'index.html', 1100, 500,
- 1, 1, 1, time(), $USER->id, time(),
- 0, 0, 1)),
- array_combine(
- array('name', 'url', 'version', 'type', 'description',
- 'extension', 'file_jar', 'file_class', 'width', 'height',
- 'enable', 'evaluate', 'reevaluate', 'timemodified', 'author', 'timecreated',
- 'editingbehavior', 'submissionbehavior', 'action_buttons'),
- array('iFractions', 'http://www.matematica.br/ifractions', '0.1.20200221', 'HTML5', '{"en":"Interactive Fractions game","pt_br":"Jogo interativa de frações"}',
- 'frc', 'ilm/iFractions/0.1.20200221/ifractions/', 'index.html', 1000, 600,
- 1, 1, 0, time(), $USER->id, time(),
- 0, 1, 0)),
- array_combine(
- array('name', 'url', 'version', 'type', 'description',
- 'extension', 'file_jar', 'file_class', 'width', 'height',
- 'enable', 'evaluate', 'reevaluate', 'timemodified', 'author', 'timecreated',
- 'editingbehavior', 'submissionbehavior', 'action_buttons'),
- array('iGeom', 'http://www.matematica.br/igeom', '5.9.22', 'Java', '{"en":"Interactive Geometry on the Internet","pt_br":"Geometria Interativa na Internet"}',
- 'geo', 'ilm/iGeom/5.9.22/iGeom.jar', 'IGeomApplet.class', 800, 600,
- 1, 1, 0, time(), $USER->id, time(),
- 0, 0, 1)),
- array_combine(
- array('name', 'url', 'version', 'type', 'description',
- 'extension', 'file_jar', 'file_class', 'width', 'height',
- 'enable', 'evaluate', 'reevaluate', 'timemodified', 'author', 'timecreated',
- 'editingbehavior', 'submissionbehavior', 'action_buttons'),
- array('Risko', 'http://risko.pcc.usp.br/', '2.2.23', 'Java', '{"en":"Technical drawing with triangle and ruler","pt_br":"Desenho Geomẽtrico com esquadro"}',
- 'rsk', 'ilm/Risko/2.2.23/Risko.jar', 'RiskoApplet.class', 800, 600,
- 1, 0, 0, time(), $USER->id, time(),
- 1, 0, 1))
- );
- $strInstalled_iLM = "";
- $error = 0;
- foreach ($records as $record) {
- $newentry = new stdClass();
- $newentry->name = $record['name'];
- $newentry->version = $record['version'];
- $newentry->type = $record['type'];
- $newentry->url = $record['url'];
- $newentry->description = $record['description'];
- $newentry->extension = $record['extension'];
- $newentry->file_jar = $record['file_jar'];
- $newentry->file_class = $record['file_class'];
- $newentry->width = $record['width'];
- $newentry->height = $record['height'];
- $newentry->enable = $record['enable'];
- $newentry->evaluate = $record['evaluate'];
- $newentry->reevaluate = $record['reevaluate'];
- $newentry->timemodified = time();
- $newentry->author = $USER->id;
- $newentry->timecreated = time();
- $newentry->editingbehavior = $record['editingbehavior'];
- $newentry->submissionbehavior = $record['submissionbehavior'];
- $newentry->action_buttons = $record['action_buttons'];
- try {
- $DB->insert_record("iassign_ilm", $newentry, false);
- $strInstalled_iLM .= "\n" . ' <li>' . $record['name'] . ';' . $record['type'] . ';' . $record['version'] . ' </li>' . "\n";
- } catch (Exception $e) {
- print "Error install.php: " . $e->getMessage() . "<br/>";
- $error = 1;
- }
- }
- if ($error == 1) {
-
- print '<div class="alert alert-warning alert-block fade in " role="alert" data-aria-autofocus="true" tabindex="0" >' + "\n";
- print get_string('error_security_no_userid', 'iassign');
-
- print '</div>' + "\n";
- }
- else {
- print '<div class="modal-content"><p>' . get_string('cliinstallfinished', 'install') . '</p>' . "\n";
- print ' <ul style="margin-top: 1rem;">' . "\n";
- print $strInstalled_iLM;
- print ' </ul>' . "\n";
- print '</div' . "\n";;
- }
-
- if (class_exists('plugin_manager'))
- $pluginman = plugin_manager::instance();
- else
- $pluginman = core_plugin_manager::instance();
- $plugins = $pluginman->get_plugins();
- iassign_log::add_log('install', 'version: ' . $plugins['mod']['iassign']->versiondisk);
-
- return true;
- }
|