From: stronk7 Date: Sat, 2 Sep 2006 23:48:02 +0000 (+0000) Subject: First implementation of the create_table() function. Simple. X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=4dc4dde9e22506c5f2fed3762cb4cd9c31cad38c;p=moodle.git First implementation of the create_table() function. Simple. --- diff --git a/lib/ddllib.php b/lib/ddllib.php index 738439cfa4..b05a6a64dc 100644 --- a/lib/ddllib.php +++ b/lib/ddllib.php @@ -272,13 +272,31 @@ function install_from_xmldb_file($file) { return false; } - foreach($sqlarr as $sql) { - if (!execute_sql($sql)) { - $status = false; // Allow to continue to mimic old behaviour - } // perhaps it would be better to exit false + return execute_sql_arr($sqlarr); +} + +/** + * This function will create the table passed as argument with all its + * fields/keys/indexes/sequences, everything based in the XMLDB object + * + * @param XMLDBtable table object containing all the table info + * @return boolean true on success, false on error + */ +function create_table($table) { + + global $CFG, $db; + + $status = true; + + if (strtolower(get_class($table)) != 'xmldbtable') { + return false; + } + + if(!$sqlarr = $table->getCreateTableSQL($CFG->dbtype, $CFG->prefix, false)) { + return false; } - return $status; + return execute_sql_arr($sqlarr); } ?>