]> git.mjollnir.org Git - moodle.git/commitdiff
set default value for varchar 255 fields, to fix "truncated" errors in utf8 migration...
authorgbateson <gbateson>
Mon, 24 Apr 2006 01:44:08 +0000 (01:44 +0000)
committergbateson <gbateson>
Mon, 24 Apr 2006 01:44:08 +0000 (01:44 +0000)
mod/hotpot/db/mysql.php
mod/hotpot/db/mysql.sql
mod/hotpot/db/postgres7.php
mod/hotpot/db/postgres7.sql
mod/hotpot/db/update_to_v2.php
mod/hotpot/version.php

index 4f5321beb96858d09563280e69cff73d66583c7b..95ba4cfd0a0ac362f91e01130ef747405e29ea80 100644 (file)
@@ -22,7 +22,7 @@ function hotpot_upgrade($oldversion) {
                $ok = $ok && hotpot_update_to_v2_1_2();\r
        }\r
        // update to HotPot v2.1.16\r
-       if ($oldversion < 2006042101) {\r
+       if ($oldversion < 2006042102) {\r
                $ok = $ok && hotpot_get_update_to_v2();\r
                $ok = $ok && hotpot_update_to_v2_1_16();\r
        }\r
index 788cb117ea1969861a9748b797aca8c2ceeaeeaa..a937dec76010461af57e209c7c043e6b16ced0f0 100644 (file)
@@ -13,7 +13,7 @@ CREATE TABLE prefix_hotpot (
     outputformat int(4) unsigned NOT NULL default '1',
     navigation int(4) unsigned NOT NULL default '1',
     studentfeedback tinyint(4) unsigned NOT NULL default '0',
-    studentfeedbackurl varchar(255) default NULL,
+    studentfeedbackurl varchar(255) NOT NULL default '',
     forceplugins int(4) unsigned NOT NULL default '0',
     shownextquiz int(4) unsigned NOT NULL default '0',
     review tinyint(4) NOT NULL default '0',
@@ -79,9 +79,9 @@ CREATE TABLE prefix_hotpot_responses (
     question int(10) unsigned NOT NULL default '0',
     score smallint(8) default NULL,
     weighting smallint(8) default NULL,
-    correct varchar(255) default NULL,
-    wrong varchar(255) default NULL,
-    ignored varchar(255) default NULL,
+    correct varchar(255) NOT NULL default '',
+    wrong varchar(255) NOT NULL default '',
+    ignored varchar(255) NOT NULL default '',
     hints smallint(6) default NULL,
     clues smallint(6) default NULL,
     checks smallint(6) default NULL,
index c147c42bb9d31c445f6bc0d060cc56941f3400f9..dfad962729ae7f372c86751ffc2cc0d96fb5bb7f 100644 (file)
@@ -28,7 +28,7 @@ function hotpot_upgrade($oldversion) {
                $ok = $ok && hotpot_update_to_v2_1_8();\r
        }\r
        // update to HotPot v2.1.16\r
-       if ($oldversion < 2006042101) {\r
+       if ($oldversion < 2006042102) {\r
                $ok = $ok && hotpot_get_update_to_v2();\r
                $ok = $ok && hotpot_update_to_v2_1_16();\r
        }\r
index 4427047a4ea94eecbb16be7109ee2e9865ebcf72..1f6e0fbb8a5cce30abdc8877e13140a0dac36b31 100644 (file)
@@ -91,9 +91,9 @@ CREATE TABLE prefix_hotpot_responses (
     question  INT4 NOT NULL default '0',
     score     INT2,
     weighting INT2,
-    correct   VARCHAR(255),
-    wrong     VARCHAR(255),
-    ignored   VARCHAR(255),
+    correct   VARCHAR(255) NOT NULL default '',
+    wrong     VARCHAR(255) NOT NULL default '',
+    ignored   VARCHAR(255) NOT NULL default '',
     hints     INT2,
     clues     INT2,
     checks    INT2
index e3b18aaf9fc4c3035feb8cdba9762f880fd8ef68..385fdf1e48f4343c12f32b3cffa1f42bddbd5d0f 100644 (file)
@@ -7,6 +7,21 @@ function hotpot_update_to_v2_1_16() {
        $ok = $ok && hotpot_db_update_field_type('hotpot_questions', 'name', 'name', 'TEXT',   '',  '', 'NOT NULL', '');\r
 \r
        if (strtolower($CFG->dbtype)=='mysql') {\r
+\r
+               // set default values on certain VARCHAR(255) fields\r
+               $varchar_fields = array(\r
+                       'hotpot.studentfeedbackurl',\r
+                       'hotpot_responses.correct',\r
+                       'hotpot_responses.wrong',\r
+                       'hotpot_responses.ignored'\r
+               );\r
+               foreach ($varchar_fields as $varchar_field) {\r
+                       list ($table, $field) = explode('.', $varchar_field);\r
+                       execute_sql("UPDATE {$CFG->prefix}$table SET $field='' WHERE $field IS NULL");\r
+                       $ok = $ok && hotpot_db_update_field_type($table, $field, $field, 'VARCHAR', 255, '', 'NOT NULL', '');\r
+               }\r
+\r
+               // remove $CFG->prefix from all index names\r
                $ok = $ok && hotpot_index_remove_prefix('hotpot_attempts', 'hotpot');\r
                $ok = $ok && hotpot_index_remove_prefix('hotpot_attempts', 'userid');\r
                $ok = $ok && hotpot_index_remove_prefix('hotpot_details', 'attempt');\r
index c398104c5347b1c718f8a4a19528d2aebcf5cb74..1e397345cb6b7c2f0a6ec1dad988113a423e486e 100644 (file)
@@ -3,7 +3,7 @@
 ///  Code fragment to define the version of hotpot
 ///  This fragment is called by moodle_needs_upgrading() and /admin/index.php
 /////////////////////////////////////////////////////////////////////////////////
-$module->version  = 2006042101;  // release date of this version (see note below)
+$module->version  = 2006042102;  // release date of this version (see note below)
 $module->release  = 'v2.1.16';    // human-friendly version name (used in mod/hotpot/lib.php)
 $module->cron     = 0;           // period for cron to check this module (secs)
 // interpretation of YYYYMMDDXY version numbers