public function definition() { global $CFG; $mform = $this->_form; // Don't forget the underscore! if (isset($this->_customdata['catalog_id']) && is_object($this->_customdata['catalog_id'])) { $data = $this->_customdata['catalog_id']; } $metacategories = local_catalog_get_metadata_categories(); $catlist = array(); foreach ($metacategories as $m) { $catlist[$m['id']] = $m['name']; } $mform->addElement('select', 'metadata_id', get_string('entry', 'local_catalog'), $catlist, array('style' => 'width: 100%')); $mform->addRule('metadata_id', get_string('required'), 'required', null, 'client'); $mform->addElement('text', 'value', get_string('value', 'local_catalog'), array('style' => 'width: 100%')); // Add elements to your form $mform->addRule('value', get_string('required'), 'required', null, 'client'); $mform->addElement('text', 'url', get_string('url'), array('style' => 'width: 100%')); // Add elements to your form $mform->setType('url', PARAM_URL); //Set type of element $mform->addRule('url', get_string('maximumchars', '', 128), 'maxlength', 128, 'client'); if (isset($data)) { $this->set_data($data); } $this->add_action_buttons(); }
echo $OUTPUT->render_from_template('local_catalog/displayform', $data); } } if ($action == $deletepages) { $del_id = required_param('id', PARAM_INT); local_catalog_delete_page($del_id); $displaypage = true; } if ($displaypage) { $data = new stdClass(); $data->url = new moodle_url($returnurl); $data->sesskey = sesskey(); $data->deleteicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/delete'), 'alt' => get_string('delete'), 'class' => 'iconsmall')); $data->editicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('i/edit'), 'alt' => get_string('edit'), 'class' => 'iconsmall')); $metaform = new local_catalog_metadata(new moodle_url($returnurl, array('action' => $addmeta))); $data->metadata = local_catalog_get_metadata_categories(); if (count($data->metadata) > 0) { $data->has_metadata = true; } foreach ($data->metadata as $key => $elem) { if ($elem['count'] == "0") { $data->metadata[$key]['candelete'] = "true"; } } $data->metaform = $metaform->render(); $data->pages = local_catalog_get_pages(); if (count($data->pages) > 0) { $data->has_pages = true; } foreach ($data->pages as $key => $elem) { if ($elem['count'] == "0") {
function local_catalog_get_course_metadata($catalog_id) { global $DB; $cat = local_catalog_get_metadata_categories("ID"); $meta = $DB->get_records('local_catalog_course_meta', array('catalog_id' => $catalog_id), 'sequence'); $entries = array(); $i = 0; foreach ($meta as $m) { $key = $i; $entries[$key]['id'] = $m->id; $entries[$key]['name'] = $cat[$m->metadata_id]['name']; $entries[$key]['fa_icon'] = $cat[$m->metadata_id]['fa_icon']; $entries[$key]['datatype'] = $cat[$m->metadata_id]['datatype']; $entries[$key]['url'] = $m->url; $entries[$key]['value'] = $m->value; if ($cat[$m->metadata_id]['datatype'] == "date") { $entries[$key]['value'] = date("m/d/Y", $m->value); } if ($cat[$m->metadata_id]['datatype'] == "list") { $entries[$key]['value'] = explode(";", $m->value); } $i++; } return $entries; }