blocks: MDL-19889 Convert random glossary block to use edit_form.php

This commit is contained in:
tjhunt 2009-07-29 03:57:56 +00:00
parent e9f7fdec00
commit 6526cc3468
3 changed files with 81 additions and 101 deletions

View File

@ -72,7 +72,7 @@ class block_glossary_random extends block_base {
break; break;
} }
if ($entry = $DB->get_records_sql("SELECT concept, definition, definitionformat if ($entry = $DB->get_records_sql("SELECT concept, definition, definitionformat, definitiontrust
FROM {glossary_entries} FROM {glossary_entries}
WHERE glossaryid = ? AND approved = 1 WHERE glossaryid = ? AND approved = 1
ORDER BY timemodified $SORT", array($this->config->glossary), $limitfrom, $limitnum)) { ORDER BY timemodified $SORT", array($this->config->glossary), $limitfrom, $limitnum)) {
@ -107,50 +107,6 @@ class block_glossary_random extends block_base {
return true; return true;
} }
function instance_config_print() {
global $CFG, $DB;
if (!isset($this->config)) {
// ... teacher has not yet configured the block, let's put some default values here to explain things
$this->config->title = get_string('blockname','block_glossary_random');
$this->config->refresh = 0;
$this->config->showconcept = 1;
$this->config->cache= get_string('notyetconfigured','block_glossary_random');
$this->config->addentry=get_string('addentry', 'block_glossary_random');
$this->config->viewglossary=get_string('viewglossary', 'block_glossary_random');
$this->config->invisible=get_string('invisible', 'block_glossary_random');
}
// select glossaries to put in dropdown box ...
$glossaries = $DB->get_records_menu('glossary', array('course'=>$this->course->id),'name','id,name');
//format menu texts to avoid html and to filter multilang values
if(!empty($glossaries)) {
foreach($glossaries as $key => $value) {
$glossaries[$key] = strip_tags(format_string($value,true));
}
}
// and select quotetypes to put in dropdown box
$type[0] = get_string('random','block_glossary_random');
$type[1] = get_string('lastmodified','block_glossary_random');
$type[2] = get_string('nextone','block_glossary_random');
$this->config->nexttime = usergetmidnight(time()) + DAYSECS * $this->config->refresh;
// display the form
if (is_file($CFG->dirroot .'/blocks/'. $this->name() .'/config_instance.html')) {
print_simple_box_start('center', '', '', 5, 'blockconfigglobal');
include($CFG->dirroot .'/blocks/'. $this->name() .'/config_instance.html');
print_simple_box_end();
} else {
notice(get_string('blockconfigbad'), str_replace('blockaction=', 'dummy=', qualified_me()));
}
return true;
}
function get_content() { function get_content() {
global $USER, $CFG, $DB; global $USER, $CFG, $DB;

View File

@ -1,56 +0,0 @@
<?php
if (!isset($this->config->glossary)) {
$this->config->glossary = 0;
}
if (!isset($this->config->type)) {
$this->config->type = 0;
}
?>
<table cellpadding="9" cellspacing="0">
<tr valign="top">
<td align="right"><?php print_string("title","block_glossary_random") ?>:</td>
<td><input type="text" name="title" size="50" value="<?php p($this->config->title) ?>" /></td>
</tr>
<tr valign="top">
<td align="right"><?php print_string("select_glossary","block_glossary_random") ?>:</td>
<td><?php choose_from_menu($glossaries,"glossary",$this->config->glossary) ?></td>
</tr>
<tr valign="top">
<td align="right"><?php print_string("refresh","block_glossary_random") ?>:</td>
<td><input type="text" name="refresh" size="5" value="<?php p($this->config->refresh) ?>" /></td>
</tr>
<tr valign="top">
<td align="right"><?php print_string("type","block_glossary_random") ?>:</td>
<td><?php
choose_from_menu($type, "type", $this->config->type, "");
helpbutton('newentry', get_string("type","block_glossary_random"), 'glossary');
?></td>
</tr>
<tr valign="top">
<td align="right"><?php print_string("showconcept","block_glossary_random") ?>:</td>
<td>
<input type="hidden" name="showconcept" value="0" />
<input type="checkbox" name="showconcept" value="1" <?php if(!empty($this->config->showconcept)) echo 'checked="checked"'; ?> />
</td>
</tr>
<tr>
<td colspan="2">
<b><?php print_string("whichfooter","block_glossary_random") ?></b></td></tr>
<tr valign="top">
<td align="right"><?php print_string("askaddentry", "block_glossary_random") ?>:</td>
<td><input type="text" name="addentry" size="80" value="<?php p($this->config->addentry) ?>" /></td></tr>
<tr valign="top">
<td align="right"><?php print_string("askviewglossary", "block_glossary_random") ?>:</td>
<td><input type="text" name="viewglossary" size="80" value="<?php p($this->config->viewglossary) ?>" /></td></tr>
<tr valign="top">
<td align="right"><?php print_string("askinvisible", "block_glossary_random") ?>:</td>
<td><input type="text" name="invisible" size="80" value="<?php p($this->config->invisible) ?>" /></td></tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="<?php print_string("savechanges") ?>" /></td></tr>
</table>

View File

@ -0,0 +1,80 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Form for editing HTML block instances.
*
* @package moodlecore
* @copyright 2009 Tim Hunt
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Form for editing Random glossary entry block instances.
*
* @copyright 2009 Tim Hunt
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class block_glossary_random_edit_form extends block_edit_form {
protected function specific_definition($mform) {
global $DB;
// Fields for editing HTML block title and contents.
$mform->addElement('header', 'configheader', get_string('blocksettings', 'block'));
$mform->addElement('text', 'config_title', get_string('title', 'block_glossary_random'));
$mform->setDefault('config_title', get_string('blockname','block_glossary_random'));
$mform->setType('config_title', PARAM_MULTILANG);
// Select glossaries to put in dropdown box ...
$glossaries = $DB->get_records_menu('glossary', array('course' => $this->block->course->id), 'name', 'id,name');
foreach($glossaries as $key => $value) {
$glossaries[$key] = strip_tags(format_string($value, true));
}
$mform->addElement('select', 'config_glossary', get_string('select_glossary', 'block_glossary_random'), $glossaries);
$mform->addElement('text', 'config_refresh', get_string('refresh', 'block_glossary_random'), array('size' => 5));
$mform->setDefault('config_refresh', 0);
$mform->setType('config_refresh', PARAM_INTEGER);
// and select quotetypes to put in dropdown box
$types = array(
0 => get_string('random','block_glossary_random'),
1 => get_string('lastmodified','block_glossary_random'),
2 => get_string('nextone','block_glossary_random')
);
$mform->addElement('select', 'config_type', get_string('type', 'block_glossary_random'), $types);
$mform->setHelpButton('newentry', get_string('type', 'block_glossary_random'), 'glossary');
$mform->addElement('selectyesno', 'config_showconcept', get_string('showconcept', 'block_glossary_random'));
$mform->setDefault('config_showconcept', 1);
$mform->addElement('static', 'footerdescription', '', get_string('whichfooter', 'block_glossary_random'));
$mform->addElement('text', 'config_addentry', get_string('askaddentry', 'block_glossary_random'));
$mform->setDefault('config_addentry', get_string('addentry', 'block_glossary_random'));
$mform->setType('config_addentry', PARAM_NOTAGS);
$mform->addElement('text', 'config_viewglossary', get_string('askviewglossary', 'block_glossary_random'));
$mform->setDefault('config_viewglossary', get_string('viewglossary', 'block_glossary_random'));
$mform->setType('config_viewglossary', PARAM_NOTAGS);
$mform->addElement('text', 'config_invisible', get_string('askinvisible', 'block_glossary_random'));
$mform->setDefault('config_invisible', get_string('invisible', 'block_glossary_random'));
$mform->setType('config_invisible', PARAM_NOTAGS);
}
}