Add DB upgrade function for latest changes, a=chris

Chris Pollett [2012-09-10 06:Sep:th]
Add DB upgrade function for latest changes, a=chris
Filename
configs/createdb.php
lib/upgrade_functions.php
diff --git a/configs/createdb.php b/configs/createdb.php
index 544ae80aa..77a0c4ce1 100755
--- a/configs/createdb.php
+++ b/configs/createdb.php
@@ -75,7 +75,7 @@ if(!in_array(DBMS, array('sqlite', 'sqlite3'))) {
 $db->selectDB(DB_NAME);

 $db->execute("CREATE TABLE VERSION (ID INTEGER PRIMARY KEY)");
-$db->execute("INSERT INTO VERSION VALUES (13)");
+$db->execute("INSERT INTO VERSION VALUES (14)");

 $db->execute("CREATE TABLE USER (USER_ID INTEGER PRIMARY KEY $auto_increment, ".
     "USER_NAME VARCHAR(16) UNIQUE,  PASSWORD VARCHAR(16))");
diff --git a/lib/upgrade_functions.php b/lib/upgrade_functions.php
index 001edef8a..85a565876 100644
--- a/lib/upgrade_functions.php
+++ b/lib/upgrade_functions.php
@@ -76,7 +76,7 @@ function upgradeDatabaseWorkDirectoryCheck()
         $result = @$model->db->execute($sql);
         if($result !== false) {
             $row = $model->db->fetchArray($result);
-            if(isset($row['ID']) && $row['ID'] >= 13) {
+            if(isset($row['ID']) && $row['ID'] >= 14) {
                 return false;
             } else {
                 return true;
@@ -94,7 +94,7 @@ function upgradeDatabaseWorkDirectoryCheck()
  */
 function upgradeDatabaseWorkDirectory()
 {
-    $versions = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13);
+    $versions = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14);
     $model = new Model();
     $model->db->selectDB(DB_NAME);
     $sql = "SELECT ID FROM VERSION";
@@ -445,4 +445,15 @@ function upgradeDatabaseVersion13(&$db)
     }
     $this->upgradeLocale(); //force locale upgrade
 }
+
+/**
+ * Upgrades a Version 12 version of the Yioop! database to a Version 13 version
+ * @param object $db datasource to use to upgrade
+ */
+function upgradeDatabaseVersion14(&$db)
+{
+    $db->execute("DELETE FROM VERSION WHERE ID < 13");
+    $db->execute("UPDATE VERSION SET ID=14 WHERE ID=12");
+    $db->execute("ALTER TABLE MEDIA_SOURCE ADD LANGUAGE VARCHAR(7)");
+}
 ?>
ViewGit