$ok = $ok && hotpot_update_to_v2_1_16();\r
}\r
\r
-\r
- if ($oldversion < 2006042600) {\r
- table_column('hotpot_attempts','starttime','starttime','int','10','unsigned','0','not null');\r
- table_column('hotpot_attempts','endtime','endtime','int','10','unsigned','0','not null');\r
- table_column('hotpot_attempts','score','score','int','6','unsigned','0','not null');\r
- table_column('hotpot_attempts','penalties','penalties','int','6','unsigned','0','not null');\r
- table_column('hotpot_attempts','timestart','timestart','int','10','unsigned','0','not null');\r
- table_column('hotpot_attempts','timefinish','timefinish','int','10','unsigned','0','not null');\r
- table_column('hotpot_attempts','clickreportid','clickreportid','int','10','unsigned','0','not null');\r
- \r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_questions CHANGE type type tinyint(4) unsigned NOT NULL default '0'");\r
-\r
- table_column('hotpot_questions','text','text','int','10','unsigned','0','not null');\r
- \r
- \r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_responses CHANGE weighting weighting smallint(8) unsigned NOT NULL default '0'");\r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_responses CHANGE score score smallint(8) unsigned NOT NULL default '0'");\r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_responses CHANGE hints hints smallint(6) unsigned NOT NULL default '0'");\r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_responses CHANGE clues clues smallint(6) unsigned NOT NULL default '0'");\r
- execute_sql("ALTER TABLE {$CFG->prefix}hotpot_responses CHANGE checks checks smallint(6) unsigned NOT NULL default '0'");\r
-\r
- }\r
+ // update to HotPot v2.1.17\r
+ if ($oldversion < 2006042601) {\r
+ $ok = $ok && hotpot_get_update_to_v2();\r
+ $ok = $ok && hotpot_update_to_v2_1_17();\r
+ }\r
\r
return $ok;\r
}\r
-\r
function hotpot_get_update_to_v2() {\r
global $CFG;\r
$filepath = "$CFG->dirroot/mod/hotpot/db/update_to_v2.php";\r
<?PHP\r
+function hotpot_update_to_v2_1_17() {\r
+ global $CFG;\r
+ $ok = true;\r
+\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'starttime', '10');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'endtime', '10');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'score', '6');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'penalties', '6');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'timestart', '10');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'timefinish', '10');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_attempts', 'clickreportid', '10');\r
+\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_questions', 'type', '4');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_questions', 'text', '10');\r
+\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_responses', 'weighting', '8');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_responses', 'score', '8');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_responses', 'hints', '6');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_responses', 'clues', '6');\r
+ $ok = $ok && hotpot_denull_int_field('hotpot_responses', 'checks', '6');\r
+\r
+ return $ok;\r
+}\r
+function hotpot_denull_int_field($table, $field, $size) {\r
+ global $CFG;\r
+ $ok = true;\r
+\r
+ $ok = $ok && execute_sql("UPDATE {$CFG->prefix}$table SET $field=0 WHERE $field IS NULL");\r
+ $ok = $ok && hotpot_db_update_field_type($table, $field, $field, 'INTEGER', $size, 'UNSIGNED', 'NOT NULL', 0);\r
+\r
+ return $ok;\r
+}\r
function hotpot_update_to_v2_1_16() {\r
global $CFG;\r
$ok = true;\r
/// Code fragment to define the version of hotpot
/// This fragment is called by moodle_needs_upgrading() and /admin/index.php
/////////////////////////////////////////////////////////////////////////////////
-$module->version = 2006042600; // release date of this version (see note below)
+$module->version = 2006042601; // 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