require_once(INSTALLDIR.'/actions/showstream.php');
define('TAGS_PER_PAGE', 100);
-define('AGE_FACTOR', 864000.0);
class TagAction extends StreamAction {
# This should probably be cached rather than recalculated
$tags = DB_DataObject::factory('Notice_tag');
$tags->selectAdd('max(notice_id) as last_notice_id');
- $tags->selectAdd(sprintf('sum(exp(-(now() - created)/%f)) as weight', AGE_FACTOR));
+ $tags->selectAdd(sprintf('sum(exp(-(now() - created)/%f)) as weight', common_config('tag', 'dropoff')));
$tags->groupBy('tag');
$tags->orderBy('weight DESC');
#Do notice broadcasts offline
#If you set this, you must run the xmppdaemon.php
#as a daemon (with, say, start-stop-daemon)
-#$config['queue']['enabled'] = true;
\ No newline at end of file
+#$config['queue']['enabled'] = true;
+
+#exponential decay factor for tags, default 10 days
+#raise this if traffic is slow, lower it if it's fast
+#$config['tag']['dropoff'] = 86400.0 * 10;
\ No newline at end of file
'host' => NULL, # only set if != server
'debug' => false, # print extra debug info
'public' => array()), # JIDs of users who want to receive the public stream
+ 'tag' =>
+ array('dropoff' => 864000.0),
);
$config['db'] = &PEAR::getStaticProperty('DB_DataObject','options');