]> git.mjollnir.org Git - moodle.git/commitdiff
mod-feedback MDL-16090 Fixed recent regressions and converted htmleditor instance
authorSam Hemelryk <sam@moodle.com>
Wed, 25 Nov 2009 01:46:12 +0000 (01:46 +0000)
committerSam Hemelryk <sam@moodle.com>
Wed, 25 Nov 2009 01:46:12 +0000 (01:46 +0000)
mod/feedback/db/install.xml
mod/feedback/db/upgrade.php
mod/feedback/edit_item.php
mod/feedback/lib.php
mod/feedback/mod_form.php
mod/feedback/version.php

index 6163a7ae6c80c13bc35da5985d1e97c336c8284a..b5570edaf0b72f7310a96ce8993a59af8cf39321 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" ?>
-<XMLDB PATH="mod/feedback/db" VERSION="20090420" COMMENT="XMLDB file for Moodle mod/feedback"
+<XMLDB PATH="mod/feedback/db" VERSION="20091120" COMMENT="XMLDB file for Moodle mod/feedback"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="../../../lib/xmldb/xmldb.xsd"
 >
@@ -16,8 +16,9 @@
         <FIELD NAME="multiple_submit" TYPE="int" LENGTH="1" NOTNULL="true" UNSIGNED="true" DEFAULT="1" SEQUENCE="false" PREVIOUS="email_notification" NEXT="autonumbering"/>
         <FIELD NAME="autonumbering" TYPE="int" LENGTH="1" NOTNULL="true" UNSIGNED="true" DEFAULT="1" SEQUENCE="false" PREVIOUS="multiple_submit" NEXT="site_after_submit"/>
         <FIELD NAME="site_after_submit" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" PREVIOUS="autonumbering" NEXT="page_after_submit"/>
-        <FIELD NAME="page_after_submit" TYPE="text" LENGTH="small" NOTNULL="true" SEQUENCE="false" PREVIOUS="site_after_submit" NEXT="publish_stats"/>
-        <FIELD NAME="publish_stats" TYPE="int" LENGTH="1" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="page_after_submit" NEXT="timeopen"/>
+        <FIELD NAME="page_after_submit" TYPE="text" LENGTH="small" NOTNULL="true" SEQUENCE="false" PREVIOUS="site_after_submit" NEXT="page_after_submitformat"/>
+        <FIELD NAME="page_after_submitformat" TYPE="int" LENGTH="2" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="page_after_submit" NEXT="publish_stats"/>
+        <FIELD NAME="publish_stats" TYPE="int" LENGTH="1" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="page_after_submitformat" NEXT="timeopen"/>
         <FIELD NAME="timeopen" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="publish_stats" NEXT="timeclose"/>
         <FIELD NAME="timeclose" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="timeopen" NEXT="timemodified"/>
         <FIELD NAME="timemodified" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="timeclose"/>
index 6f3b56ef9ffc4bfbf7aacb0ccc9bac363aa385c9..54d293e72a768067d6ad3a283d4c4583b0a1c3d4 100644 (file)
@@ -277,6 +277,20 @@ function xmldb_feedback_upgrade($oldversion) {
         upgrade_mod_savepoint($result, 2009042001, 'feedback');
     }
 
+    if ($result && $oldversion < 2009112000) {
+        /// Define field page_after_submitformat to be added to feedback
+        $table = new xmldb_table('feedback');
+        $field = new xmldb_field('page_after_submitformat', XMLDB_TYPE_INTEGER, '2', XMLDB_UNSIGNED, XMLDB_NOTNULL, null, '0', 'page_after_submit');
+
+        if (!$dbman->field_exists($table, $field)) {
+            // Launch add field page_after_submitformat
+            $dbman->add_field($table, $field);
+        }
+
+        // feedback savepoint reached
+        upgrade_mod_savepoint($result, 2009112000, 'feedback');
+    }
+
     return $result;
 }
 
index 4225646adaefc39ee5915d52f4c717d8f123795b..2d4b922f3dd45aa22f8e0024e59fcfec8b9b008f 100644 (file)
@@ -20,7 +20,7 @@ $itemid = optional_param('itemid', false, PARAM_INT);
 if(!$typ)redirect(htmlspecialchars('edit.php?id=' . $id));
 
 $url = new moodle_url($CFG->wwwroot.'/mod/feedback/edit_item.php', array('id'=>$id));
-if ($type !== false) {
+if ($typ !== false) {
     $url->param('typ', $typ);
 }
 if ($itemid !== false) {
@@ -157,13 +157,13 @@ $item_form = &$itemobj->show_edit($item);
 $i_form = &$item_form->get_item_form();
 // $i_form->addElement('header', 'general', 'Titel');
 $i_form->addElement('hidden', 'id', $id);
-$mform->setType('id', PARAM_INT);
+$i_form->setType('id', PARAM_INT);
 $i_form->addElement('hidden', 'itemid', isset($item->id)?$item->id:'');
-$mform->setType('itemid', PARAM_INT);
+$i_form->setType('itemid', PARAM_INT);
 $i_form->addElement('hidden', 'typ', $typ);
-$mform->setType('typ', PARAM_ALPHA);
+$i_form->setType('typ', PARAM_ALPHA);
 $i_form->addElement('hidden', 'feedbackid', $feedback->id);
-$mform->setType('feedbackid', PARAM_INT);
+$i_form->setType('feedbackid', PARAM_INT);
 
 
 $lastposition = $DB->count_records('feedback_item', array('feedback'=>$feedback->id));
@@ -183,12 +183,12 @@ $i_formselect->setValue($i_formselect_value);
 $buttonarray = array();
 if(!empty($item->id)){
     $i_form->addElement('hidden', 'updateitem', '1');
-    $mform->setType('updateitem', PARAM_INT);
+    $i_form->setType('updateitem', PARAM_INT);
     // $i_form->addElement('submit', 'update_item', get_string('update_item', 'feedback'));
     $buttonarray[] = &$i_form->createElement('submit', 'update_item', get_string('update_item', 'feedback'));
 }else{
     $i_form->addElement('hidden', 'saveitem', '1');
-    $mform->setType('saveitem', PARAM_INT);
+    $i_form->setType('saveitem', PARAM_INT);
     // $i_form->addElement('submit', 'save_item', get_string('save_item', 'feedback'));
     $buttonarray[] = &$i_form->createElement('submit', 'save_item', get_string('save_item', 'feedback'));
 }
index 862df6eb5d45bbec22713c55caa151e299cf8ac3..fe1a44b22955a453f209f903e4492b61fe831d46 100644 (file)
@@ -26,6 +26,8 @@
 
 /** Include eventslib.php */
 require_once($CFG->libdir.'/eventslib.php');
+/** Include calendar/lib.php */
+require_once($CFG->dirroot.'/calendar/lib.php');
 
 
 define('FEEDBACK_INCLUDE_TEST', 1);
@@ -548,7 +550,7 @@ function feedback_set_events($feedback) {
             $event->timeduration = 0;
         }
 
-        add_event($event);
+        calendar_event::create($event);
     }
 
     // the close-event
@@ -566,7 +568,7 @@ function feedback_set_events($feedback) {
         $event->visible      = instance_is_visible('feedback', $feedback);
         $event->timeduration = 0;
 
-        add_event($event);
+        calendar_event::create($event);
     }
 }
 
index 23e3d1406a7368107d670643f5d63e499a99d85f..02b3604c11c2cbcd826808469d63682677c940ae 100644 (file)
@@ -76,8 +76,8 @@ class mod_feedback_mod_form extends moodleform_mod {
 
         //-------------------------------------------------------------------------------
         $mform->addElement('header', 'aftersubmithdr', get_string('after_submit', 'feedback'));
-
-        $mform->addElement('htmleditor', 'page_after_submit', get_string("page_after_submit", "feedback"), array('rows' => 20));
+        
+        $mform->addElement('editor', 'page_after_submit', get_string("page_after_submit", "feedback"), null, null);
         $mform->setType('page_after_submit', PARAM_RAW);
 
         $mform->addElement('text', 'site_after_submit', get_string('url_for_continue_button', 'feedback'), array('size'=>'64','maxlength'=>'255'));
@@ -101,7 +101,22 @@ class mod_feedback_mod_form extends moodleform_mod {
         } else {
             $default_values['closeenable'] = 1;
         }
+        if (!isset($default_values['page_after_submitformat'])) {
+            $default_values['page_after_submitformat'] = FORMAT_HTML;
+        }
+        if (!isset($default_values['page_after_submit'])) {
+            $default_values['page_after_submit'] = '';
+        }
+        $default_values['page_after_submit'] = array('text'=>$default_values['page_after_submit'],'format'=>$default_values['page_after_submitformat']);
+    }
 
+    function get_data() {
+        $data = parent::get_data();
+        if ($data) {
+            $data->page_after_submitformat = $data->page_after_submit['format'];
+            $data->page_after_submit = $data->page_after_submit['text'];
+        }
+        return $data;
     }
 
     function validation($data, $files){
index 77cdbd759a985f67a1077e5059121ce8fb577fa8..42981ac2e418dd9b6c29e072f3ee7e1ba0549062 100644 (file)
@@ -9,7 +9,7 @@
 */
 
 
-    $module->version = 2009052701; // The current module version (Date: YYYYMMDDXX)
+    $module->version = 2009112000; // The current module version (Date: YYYYMMDDXX)
     $module->requires = 2009041700;  // Requires this Moodle version
     $feedback_version_intern = 1; //this version is used for restore older backups
     $module->cron = 0; // Period for cron to check this module (secs)