return sha1(serialize($this->entry));
}
}
+
+function glossary_extend_navigation($navigation, $course, $module, $cm) {
+ global $CFG;
+ $navigation->add(get_string('standardview', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$cm->instance, 'mode'=>'letter')));
+ $navigation->add(get_string('categoryview', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$cm->instance, 'mode'=>'cat')));
+ $navigation->add(get_string('dateview', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$cm->instance, 'mode'=>'date')));
+ $navigation->add(get_string('authorview', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$cm->instance, 'mode'=>'author')));
+}
+
+function glossary_extend_settings_navigation($settings, $module) {
+ global $PAGE, $DB, $CFG, $USER;
+
+ $mode = optional_param('mode', '', PARAM_ALPHA);
+ $hook = optional_param('hook', 'ALL', PARAM_CLEAN);
+
+ $glossary = $DB->get_record('glossary', array('id'=>$PAGE->cm->instance));
+ $glossarynavkey = $settings->add(get_string('glossaryadministration', 'glossary'));
+ $glossarynav = $settings->get($glossarynavkey);
+ $glossarynav->forceopen = true;
+
+ if (has_capability('mod/glossary:import', $PAGE->cm->context)) {
+ $glossarynav->add(get_string('importentries', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/import.php', array('id'=>$PAGE->cm->id)));
+ }
+
+ if (has_capability('mod/glossary:export', $PAGE->cm->context)) {
+ $glossarynav->add(get_string('exportentries', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/export.php', array('id'=>$PAGE->cm->id, 'mode'=>$mode, 'hook'=>$hook)));
+ }
+
+ if (has_capability('mod/glossary:approve', $PAGE->cm->context) && ($hiddenentries = $DB->count_records('glossary_entries', array('glossaryid'=>$glossary->id, 'approved'=>0)))) {
+ $glossarynav->add(get_string('waitingapproval', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$PAGE->cm->id, 'mode'=>'approval')));
+ }
+
+ if (has_capability('mod/glossary:write', $PAGE->cm->context)) {
+ $glossarynav->add(get_string('addentry', 'glossary'), new moodle_url($CFG->wwwroot.'/mod/glossary/edit.php', array('cmid'=>$PAGE->cm->id)));
+ }
+
+ if (has_capability('moodle/course:manageactivities', $PAGE->cm->context)) {
+ $glossarynav->add(get_string('updatethis', '', get_string('modulename', 'glossary')), new moodle_url($CFG->wwwroot.'/course/mod.php', array('update' => $PAGE->cm->id, 'return' => true, 'sesskey' => sesskey())));
+ }
+}
\ No newline at end of file
/// If we are in approval mode, prit special header
$PAGE->set_title(format_string($glossary->name));
$PAGE->set_button(update_module_button($cm->id, $course->id, $strglossary));
+ $url = new moodle_url($CFG->wwwroot.'/mod/glossary/view.php', array('id'=>$cm->id));
+ if (isset($mode)) {
+ $url->param('mode', $mode);
+ }
+ $PAGE->set_url($url);
if ($tab == GLOSSARY_APPROVAL_VIEW) {
require_capability('mod/glossary:approve', $context);
$PAGE->navbar->add($strwaitingapproval);