new group message layout

This commit is contained in:
Evan Prodromou 2011-01-20 16:08:22 -05:00
parent 4618641da2
commit edeaf8a2f8
2 changed files with 53 additions and 16 deletions

View File

@ -53,7 +53,7 @@ require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
* @see DB_DataObject * @see DB_DataObject
*/ */
class User_greeting_count extends Memcached_DataObject class Group_message extends Memcached_DataObject
{ {
public $__table = 'user_greeting_count'; // table name public $__table = 'user_greeting_count'; // table name
public $user_id; // int(4) primary_key not_null public $user_id; // int(4) primary_key not_null
@ -67,12 +67,12 @@ class User_greeting_count extends Memcached_DataObject
* @param string $k Key to use to lookup (usually 'user_id' for this class) * @param string $k Key to use to lookup (usually 'user_id' for this class)
* @param mixed $v Value to lookup * @param mixed $v Value to lookup
* *
* @return User_greeting_count object found, or null for no hits * @return Group_message object found, or null for no hits
* *
*/ */
function staticGet($k, $v=null) function staticGet($k, $v=null)
{ {
return Memcached_DataObject::staticGet('User_greeting_count', $k, $v); return Memcached_DataObject::staticGet('Group_message', $k, $v);
} }
/** /**
@ -143,15 +143,15 @@ class User_greeting_count extends Memcached_DataObject
* *
* @param integer $user_id ID of the user to get a count for * @param integer $user_id ID of the user to get a count for
* *
* @return User_greeting_count instance for this user, with count already incremented. * @return Group_message instance for this user, with count already incremented.
*/ */
static function inc($user_id) static function inc($user_id)
{ {
$gc = User_greeting_count::staticGet('user_id', $user_id); $gc = Group_message::staticGet('user_id', $user_id);
if (empty($gc)) { if (empty($gc)) {
$gc = new User_greeting_count(); $gc = new Group_message();
$gc->user_id = $user_id; $gc->user_id = $user_id;
$gc->greeting_count = 1; $gc->greeting_count = 1;

View File

@ -77,22 +77,59 @@ class PrivateGroupPlugin extends Plugin
new ColumnDef('created', new ColumnDef('created',
'datetime'), 'datetime'),
new ColumnDef('modified', new ColumnDef('modified',
'timestamp')); 'timestamp')));
$schema->ensureTable('group_private_inbox', $schema->ensureTable('group_message',
array(new ColumnDef('group_id', array(new ColumnDef('id',
'char',
36,
false,
'PRI'),
new ColumnDef('uri',
'varchar',
255,
false,
'UNI'),
new ColumnDef('from_profile',
'integer', 'integer',
null, null,
false, false,
'PRI'), 'MUL'),
new ColumnDef('allow_privacy', new ColumnDef('to_group',
'integer'), 'integer',
new ColumnDef('allow_sender', null,
'integer'), false,
'MUL'),
new ColumnDef('content',
'text'),
new ColumnDef('rendered',
'text'),
new ColumnDef('url',
'varchar',
255,
false,
'UNI'),
new ColumnDef('created', new ColumnDef('created',
'datetime'), 'datetime'),
new ColumnDef('modified', new ColumnDef('modified',
'timestamp')); 'timestamp')));
$schema->ensureTable('group_message_copy',
array(new ColumnDef('group_message_id',
'char',
36,
false,
'PRI'),
new ColumnDef('message_uri',
'varchar',
255,
false,
'PRI'),
new ColumnDef('created',
'datetime'),
new ColumnDef('modified',
'timestamp')));
return true; return true;
} }