]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
tweaks for the installer whee
authorBrion Vibber <brion@pobox.com>
Fri, 29 Oct 2010 23:26:45 +0000 (16:26 -0700)
committerBrion Vibber <brion@pobox.com>
Fri, 29 Oct 2010 23:26:45 +0000 (16:26 -0700)
db/core.php
lib/installer.php
lib/mysqlschema.php

index 695a3e3aa0e426b3aaadd2b5b1ed1018f9c99678..29aa917c1fc0212b864ea43e68b52f401151be23 100644 (file)
@@ -230,6 +230,7 @@ $schema['notice_source'] = array(
         'name' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'name of the source'),
         'url' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'url to link to'),
         'notice_id' => array('type' => 'int', 'not null' => true, 'description' => 'date this record was created'),
+        'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'),
         'modified' => array('type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'),
     ),
     'primary key' => array('code'),
index 441f7266063e932ef83f84369be20ebcebf5d506..ad1989f4eb4a4f521293b05fa112d36a56af96dc 100644 (file)
@@ -341,6 +341,7 @@ abstract class Installer
             }
             $schema->ensureTable($name, $def);
         }
+        return true;
     }
 
     /**
@@ -441,11 +442,12 @@ abstract class Installer
             if (!mb_strlen($stmt)) {
                 continue;
             }
-            $res = $conn->execute($stmt);
-            if (DB::isError($res)) {
-                $error = $result->getMessage();
+            try {
+                $res = $conn->simpleQuery($stmt);
+            } catch (Exception $e) {
+                $error = $e->getMessage();
                 $this->updateStatus("ERROR ($error) for SQL '$stmt'");
-                return $res;
+                return false;
             }
         }
         return true;
@@ -458,9 +460,6 @@ abstract class Installer
      */
     function registerInitialUser()
     {
-        define('STATUSNET', true);
-        define('LACONICA', true); // compatibility
-
         require_once INSTALLDIR . '/lib/common.php';
 
         $data = array('nickname' => $this->adminNick,
index 153b79ccd9ff058e9c8d037769775908bc3cc523..a2581e6d81a2bd842279545ba8750ca02e677f72 100644 (file)
@@ -387,7 +387,14 @@ class MysqlSchema extends Schema
             $vals = array_map(array($this, 'quote'), $column['enum']);
             return 'enum(' . implode(',', $vals) . ')';
         } else if ($this->_isString($column)) {
-            return parent::typeAndSize($column) . ' CHARSET utf8';
+            $col = parent::typeAndSize($column);
+            if (!empty($column['charset'])) {
+                $col .= ' CHARSET ' . $column['charset'];
+            }
+            if (!empty($column['collate'])) {
+                $col .= ' COLLATE ' . $column['collate'];
+            }
+            return $col;
         } else {
             return parent::typeAndSize($column);
         }