]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/OpenID/User_openid.php
More info for a proper, fancy-url lighttpd setup
[quix0rs-gnu-social.git] / plugins / OpenID / User_openid.php
index a9c96fa4bde1f8b5078a97b0fd5f5e7ebb9ded6b..baff5cd7f96ce8ee24a30c12d2d1cb8f33964d8f 100644 (file)
@@ -7,7 +7,7 @@ if (!defined('STATUSNET')) {
     exit(1);
 }
 
-class User_openid extends Memcached_DataObject
+class User_openid extends Managed_DataObject
 {
     ###START_AUTOCODE
     /* the code below is auto generated do not remove the above tag */
@@ -19,51 +19,33 @@ class User_openid extends Memcached_DataObject
     public $created;                         // datetime()   not_null
     public $modified;                        // timestamp()   not_null default_CURRENT_TIMESTAMP
 
-    /* Static get */
-    function staticGet($k,$v=null)
-    { return Memcached_DataObject::staticGet('User_openid',$k,$v); }
-
     /* the code above is auto generated do not remove the tag below */
     ###END_AUTOCODE
 
-    function table()
-    {
-        $db = $this->getDatabaseConnection();
-        $dbtype = $db->phptype; // Database type is stored here. Crazy but true.
-
-        return array('canonical' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
-                     'display'   => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
-                     'user_id'   => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL,
-                     'created'   => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL,
-                     'modified'  => ($dbtype == 'mysql' || $dbtype == 'mysqli') ?
-                     DB_DATAOBJECT_MYSQLTIMESTAMP + DB_DATAOBJECT_NOTNULL :
-                     DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME
-                     );
-    }
-
-    /**
-     * List primary and unique keys in this table.
-     * Unique keys used for lookup *MUST* be listed to ensure proper caching.
-     */
-    function keys()
-    {
-        return array_keys($this->keyTypes());
-    }
-
-    function keyTypes()
-    {
-        return array('canonical' => 'K', 'display' => 'U', 'user_id' => 'U');
-    }
-
-    /**
-     * No sequence keys in this table.
-     */
-    function sequenceKey()
+    public static function schemaDef()
     {
-        return array(false, false, false);
+        return array(
+            'fields' => array(
+                'canonical' => array('type' => 'varchar', 'not null' => true, 'length' => 255, 'description' => 'OpenID canonical string'),
+                'display' => array('type' => 'varchar', 'not null' => true, 'length' => 255, 'description' => 'OpenID display string'),
+                'user_id' => array('type' => 'int', 'not null' => true, 'description' => 'User ID for OpenID owner'),
+                '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('canonical'),
+            'unique keys' => array(
+                'user_openid_display_key' => array('display'),
+            ),
+            'indexes' => array(
+                'user_openid_user_id_idx' => array('user_id'),
+            ),
+            'foreign keys' => array(
+                'user_openid_user_id_fkey' => array('user', array('user_id' => 'id')),
+            ),
+        );
     }
 
-    Static function hasOpenID($user_id)
+    static function hasOpenID($user_id)
     {
         $oid = new User_openid();