diff --git a/mod/glossary/comment.html b/mod/glossary/comment.html
deleted file mode 100644
index c01c2252c64..00000000000
--- a/mod/glossary/comment.html
+++ /dev/null
@@ -1,67 +0,0 @@
-format)) {
- $form->format = $defaultformat;
- }
-
- trusttext_prepare_edit($form->text, $form->format, $usehtmleditor, $context);
-
-?>
-
diff --git a/mod/glossary/comment.php b/mod/glossary/comment.php
index 46059a70c0e..0b20eefd4ed 100644
--- a/mod/glossary/comment.php
+++ b/mod/glossary/comment.php
@@ -3,43 +3,44 @@
/// This page prints a particular instance of glossary
require_once('../../config.php');
require_once('lib.php');
-
+ include('comment_form.php');
$id = required_param('id', PARAM_INT); // Course Module ID
$eid = required_param('eid', PARAM_INT); // Entry ID
$cid = optional_param('cid', 0, PARAM_INT); // Comment ID
$confirm = optional_param('confirm',0, PARAM_INT); // Confirm the action
- $action = optional_param('action','add', PARAM_ALPHA);
+ $action = optional_param('action','add', PARAM_ACTION);
$action = strtolower($action);
global $USER, $CFG;
- if (! $cm = get_coursemodule_from_id('glossary', $id)) {
+ if (!$cm = get_coursemodule_from_id('glossary', $id)) {
error('Course Module ID was incorrect');
}
- if (! $course = get_record('course', 'id', $cm->course)) {
+ if (!$course = get_record('course', 'id', $cm->course)) {
+
error('Course is misconfigured');
}
- if (! $glossary = get_record('glossary', 'id', $cm->instance)) {
+ if (!$glossary = get_record('glossary', 'id', $cm->instance)) {
error('Course module is incorrect');
}
- if (! $entry = get_record('glossary_entries', 'id', $eid)) {
+ if (!$entry = get_record('glossary_entries', 'id', $eid)) {
error('Entry is incorrect');
}
- if ( $cid ) {
- if (! $comment = get_record('glossary_comments', 'id', $cid)) {
+ if ($cid ) {
+ if (!$comment = get_record('glossary_comments', 'id', $cid)) {
error('Comment is incorrect');
}
}
require_login($course->id, false, $cm);
-
+
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
-
+
if (isguest()) {
error('Guests are not allowed to post comments', $_SERVER['HTTP_REFERER']);
}
@@ -64,59 +65,50 @@
$strglossary = get_string('modulename', 'glossary');
$strcomments = get_string('comments', 'glossary');
- print_header_simple(format_string($glossary->name), '',
- "id\">$strglossaries -> id\">".format_string($glossary->name,true)." -> id&eid=$entry->id\">$strcomments -> " . $straction,
- '', '', true, update_module_button($cm->id, $course->id, $strglossary),
- navmenu($course, $cm));
-
- echo '';
-
-/// Input section
+ /// Input section
if ( $action == 'delete' ) {
if (($comment->userid <> $USER->id) and !has_capability('mod/glossary:managecomments', $context)) {
error('You can\'t delete other people\'s comments!');
}
if (!$glossary->allowcomments && !has_capability('mod/glossary:managecomments', $context)) {
- error('You can\'t delete comments in this glossary!');
- }
+ error('You can\'t delete comments in this glossary!');
+ }
if ( data_submitted() and $confirm ) {
delete_records('glossary_comments','id', $cid);
-
- print_simple_box_start('center','40%', '#FFBBBB');
- echo ''.get_string('commentdeleted','glossary').'';
- print_simple_box_end();
-
- print_footer($course);
add_to_log($course->id, 'glossary', 'delete comment', "comments.php?id=$cm->id&eid=$entry->id", "$comment->id",$cm->id);
redirect("comments.php?id=$cm->id&eid=$entry->id");
} else {
-
+ print_header_simple(format_string($glossary->name), '',
+ "id\">$strglossaries -> id\">".format_string($glossary->name,true)." -> id&eid=$entry->id\">$strcomments -> " . $straction,
+ '', '', true, update_module_button($cm->id, $course->id, $strglossary),
+ navmenu($course, $cm));
glossary_print_comment($course, $cm, $glossary, $entry, $comment);
-
print_simple_box_start('center','40%', '#FFBBBB');
echo '
'.get_string('areyousuredeletecomment','glossary');
- ?>
-
-
-
+
+ allowcomments && !has_capability('mod/glossary:comment', $context)) {
error('You can\'t add/edit comments to this glossary!');
}
if ( $action == 'edit' ) {
+
if (!isset($comment->timemodified)) {
$timetocheck = 0;
} else {
@@ -133,15 +125,17 @@
}
}
- if ( $confirm and $form = data_submitted() ) {
- trusttext_after_edit($form->text, $context);
-
+ $mform = new glossary_comment_form('comment.php',
+ compact('comment', 'cm', 'entry', 'action', 'context'));
+ if ($fromform = $mform->data_submitted()) {
+ trusttext_after_edit($fromform->comment, $context);
$newentry->entryid = $entry->id;
- $newentry->entrycomment = $form->text;
- $newentry->format = $form->format;
+ $newentry->entrycomment = $fromform->comment;
+ $newentry->format = $fromform->format;
$newentry->timemodified = time();
- if ( $action == 'add' ) {
+ if ($action == 'add') {
+
$newentry->userid = $USER->id;
if (! $newentry->id = insert_record('glossary_comments', $newentry)) {
@@ -150,7 +144,7 @@
add_to_log($course->id, 'glossary', 'add comment', "comments.php?id=$cm->id&eid=$entry->id", "$newentry->id", $cm->id);
}
} else {
- $newentry->id = $form->cid;
+ $newentry->id = $fromform->cid;
$newentry->userid = $comment->userid;
if (! update_record('glossary_comments', $newentry)) {
@@ -159,41 +153,21 @@
add_to_log($course->id, 'glossary', 'update comment', "comments.php?id=$cm->id&eid=$entry->id", "$newentry->id",$cm->id);
}
}
- print_simple_box_start('center','40%', '#FFBBBB');
- echo ''.get_string('commentupdated','glossary').'';
- print_simple_box_end();
-
- print_footer($course);
-
redirect("comments.php?id=$cm->id&eid=$entry->id");
} else {
+ print_header_simple(format_string($glossary->name), '',
+ "id\">$strglossaries -> id\">".
+ format_string($glossary->name,true)." -> id&eid=$entry->id\">$strcomments -> " . $straction,
+ '', '', true, update_module_button($cm->id, $course->id, $strglossary), navmenu($course, $cm));
/// original glossary entry
glossary_print_entry($course, $cm, $glossary, $entry, 'approval', '', false);
- echo '
';
+ // TODO add buttons
+ //helpbutton("writing", get_string("helpwriting"), "moodle", true, true);
- if ($usehtmleditor = can_use_html_editor()) {
- $defaultformat = FORMAT_HTML;
- } else {
- $defaultformat = FORMAT_MOODLE;
- }
- if (isset($comment) ) {
- $form->text = $comment->entrycomment;
- $form->format = $comment->format;
- } else {
- $form->text = '';
- $form->format = $defaultformat;
- }
- include('comment.html');
-
- if ($usehtmleditor) {
- use_html_editor('text');
- }
+ $mform->display();
}
}
-
- echo '';
-
/// Finish the page
print_footer($course);
-?>
+?>
\ No newline at end of file
diff --git a/mod/glossary/comment_form.php b/mod/glossary/comment_form.php
new file mode 100644
index 00000000000..9b8bca89bcb
--- /dev/null
+++ b/mod/glossary/comment_form.php
@@ -0,0 +1,70 @@
+libdir.'/formslib.php';
+class glossary_comment_form extends moodleform {
+ function definition() {
+ $mform =& $this->_form;
+ if(isset($this->_customdata['comment'])) {
+ $comment = $this->_customdata['comment'];
+ $commentid=$comment->id;
+ $commenttext = $comment->entrycomment;
+ $defaultformat=$comment->format;
+
+ }else{
+ $commentid=0;
+ $commenttext ='';
+ $defaultformat=null;
+ }
+ $entry = $this->_customdata['entry'];
+ $cm = $this->_customdata['cm'];
+ $action = $this->_customdata['action'];
+
+ $mform =& $this->_form;
+
+ //two pronged attack for trusttext
+ //submitted value
+ if (!empty($_POST)){
+ trusttext_prepare_edit($_POST['comment'], $_POST['format'], can_use_html_editor(),
+ $this->_customdata['context']);
+ }
+
+ $mform->addElement('htmleditor','comment',get_string("comment", "glossary"));
+ $mform->setType('comment', PARAM_RAW);
+
+ $mform->addElement('format', 'format', get_string("format"));
+ $mform->setDefault('format',$defaultformat);
+
+ //second prong : defaults
+ // format element works it's default out for itself
+ $format=$mform->exportValue('format');
+ trusttext_prepare_edit($commenttext, $format, can_use_html_editor(),
+ $this->_customdata['context']);
+ $mform->setDefault('format',$format);
+ $mform->setDefault('comment',$commenttext);
+
+
+ //hidden elements, in this case setType may not be needed as these
+ //are all processed by optional_param in comment.php but just in case
+ //someone later gets data from form->data_submitted() we'll add them.
+ $mform->addElement('hidden','cid',$comment->id);
+ $mform->setType('cid', PARAM_INT);
+
+ $mform->addElement('hidden','id',$cm->id);
+ $mform->setType('cid', PARAM_INT);
+
+ $mform->addElement('hidden','eid',$entry->id);
+ $mform->setType('eid', PARAM_INT);
+
+ $mform->addElement('hidden','action',$action);
+ $mform->setType('action', PARAM_ACTION);
+
+ $buttonarray[] = &MoodleQuickForm::createElement('submit','submit',get_string("savechanges"));
+ $buttonarray[] = &MoodleQuickForm::createElement('reset','reset',get_string("revert"));
+ $mform->addGroup($buttonarray,'buttonar','', array(" "), false);
+
+
+ }
+
+}
+?>
\ No newline at end of file