From 4dc4dde9e22506c5f2fed3762cb4cd9c31cad38c Mon Sep 17 00:00:00 2001 From: stronk7 Date: Sat, 2 Sep 2006 23:48:02 +0000 Subject: [PATCH] First implementation of the create_table() function. Simple. --- lib/ddllib.php | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) 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); } ?> -- 2.39.5