diff options
author | Zach Copley <zach@status.net> | 2010-09-28 19:07:45 -0700 |
---|---|---|
committer | Zach Copley <zach@status.net> | 2010-09-29 16:35:13 -0700 |
commit | 73297d374974a431b40d0cc45a7180613b8d5762 (patch) | |
tree | 7574f4969a3493d6c7264cd85b1fa27254b68c62 /plugins/AnonymousFave/AnonymousFavePlugin.php | |
parent | c10f17dc6b1e357e37fea31adbf74de003e6429c (diff) |
New DB_DataObject for storing favorites tally
Diffstat (limited to 'plugins/AnonymousFave/AnonymousFavePlugin.php')
-rw-r--r-- | plugins/AnonymousFave/AnonymousFavePlugin.php | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/plugins/AnonymousFave/AnonymousFavePlugin.php b/plugins/AnonymousFave/AnonymousFavePlugin.php index 3dccaf538..98f747748 100644 --- a/plugins/AnonymousFave/AnonymousFavePlugin.php +++ b/plugins/AnonymousFave/AnonymousFavePlugin.php @@ -55,6 +55,39 @@ class AnonymousFavePlugin extends Plugin { common_ensure_session(); } + /** + * Hook for ensuring our tables are created + * + * Ensures the fave_tally table is there and has the right columns + * + * @return boolean hook return + */ + + function onCheckSchema() + { + $schema = Schema::get(); + + // For storing total number of times a notice has been faved + + $schema->ensureTable('fave_tally', + array( + new ColumnDef('notice_id', 'integer', null, false, 'PRI'), + new ColumnDef('count', 'integer', null, false), + new ColumnDef( + 'modified', + 'timestamp', + null, + false, + null, + 'CURRENT_TIMESTAMP', + 'on update CURRENT_TIMESTAMP' + ) + ) + ); + + return true; + } + function onEndShowHTML($action) { if (!common_logged_in()) { @@ -75,6 +108,9 @@ class AnonymousFavePlugin extends Plugin { $dir = dirname(__FILE__); switch ($cls) { + case 'Fave_tally': + include_once $dir . '/' . $cls . '.php'; + return false; case 'AnonFavorAction': include_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php'; return false; |