- conversation.uri needs to be nullable

- factory method for creating new local conversations
This commit is contained in:
Zach Copley 2010-02-17 01:11:14 -08:00
parent a2f8c5da17
commit ed46a38ecf
3 changed files with 34 additions and 4 deletions

View File

@ -36,14 +36,43 @@ class Conversation extends Memcached_DataObject
public $__table = 'conversation'; // table name
public $id; // int(4) primary_key not_null
public $uri; // varchar(225) unique_key not_null
public $uri; // varchar(225) unique_key
public $created; // datetime not_null
public $modified; // timestamp not_null default_CURRENT_TIMESTAMP
/* Static get */
function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('Session',$k,$v); }
function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('conversation',$k,$v); }
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
/**
* Factory method for creating a new conversation
*
* @return Conversation the new conversation DO
*/
static function create()
{
$conv = new Conversation();
$conv->created = common_sql_now();
$id = $conv->insert();
if (empty($id)) {
common_log_db_error($conv, 'INSERT', __FILE__);
return null;
}
$orig = clone($conv);
$orig->uri = common_local_url('conversation', array('id' => $id));
$result = $orig->update($conv);
if (empty($result)) {
common_log_db_error($conv, 'UPDATE', __FILE__);
return null;
}
return $conv;
}
}

View File

@ -49,12 +49,13 @@ consumer_key = K
[conversation]
id = 129
uri = 130
uri = 2
created = 142
modified = 384
[conversation__keys]
id = N
uri = U
[deleted_notice]
id = 129

View File

@ -636,7 +636,7 @@ create table inbox (
create table conversation (
id integer auto_increment primary key comment 'unique identifier',
uri varchar(225) not null unique comment 'URI of the conversation',
uri varchar(225) unique comment 'URI of the conversation',
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified'
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;