X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=classes%2FUser_im_prefs.php;h=cc9dea608db7ebd4e479ff91006140f10bd5761f;hb=be4d9082f955163fd39ffa38a9a724ff669a8ef9;hp=75be8969e05d7e3da8a25b6de180f1d371c03a78;hpb=00e129b01343e37dbd662b95f423e731b0867023;p=quix0rs-gnu-social.git diff --git a/classes/User_im_prefs.php b/classes/User_im_prefs.php index 75be8969e0..cc9dea608d 100644 --- a/classes/User_im_prefs.php +++ b/classes/User_im_prefs.php @@ -29,7 +29,7 @@ require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; -class User_im_prefs extends Memcached_DataObject +class User_im_prefs extends Managed_DataObject { ###START_AUTOCODE /* the code below is auto generated do not remove the above tag */ @@ -56,17 +56,28 @@ class User_im_prefs extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - /* - DB_DataObject calculates the sequence key(s) by taking the first key returned by the keys() function. - In this case, the keys() function returns user_id as the first key. user_id is not a sequence, but - DB_DataObject's sequenceKey() will incorrectly think it is. Then, since the sequenceKey() is a numeric - type, but is not set to autoincrement in the database, DB_DataObject will create a _seq table and - manage the sequence itself. This is not the correct behavior for the user_id in this class. - So we override that incorrect behavior, and simply say there is no sequence key. - */ - function sequenceKey() + public static function schemaDef() { - return array(false,false); + return array( + 'fields' => array( + 'user_id' => array('type' => 'int', 'not null' => true, 'description' => 'user'), + 'screenname' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'screenname on this service'), + 'transport' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'transport (ex xmpp, aim)'), + 'notify' => array('type' => 'int', 'size' => 'tiny', 'not null' => true, 'default' => 0, 'description' => 'Notify when a new notice is sent'), + 'replies' => array('type' => 'int', 'size' => 'tiny', 'not null' => true, 'default' => 0, 'description' => 'Send replies from people not subscribed to'), + 'microid' => array('type' => 'int', 'size' => 'tiny', 'not null' => true, 'default' => 1, 'description' => 'Publish a MicroID'), + 'updatefrompresence' => array('type' => 'int', 'size' => 'tiny', 'not null' => true, 'default' => 0, 'description' => 'Send replies from people not subscribed to.'), + '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('user_id', 'transport'), + 'unique keys' => array( + 'transport_screenname_key' => array('transport', 'screenname'), + ), + 'foreign keys' => array( + 'user_im_prefs_user_id_fkey' => array('user', array('user_id' => 'id')), + ), + ); } /**