*
* @see DB_DataObject
*/
-
class Sitemap_user_count extends Memcached_DataObject
{
public $__table = 'sitemap_user_count'; // table name
* @return Sitemap_user_count object found, or null for no hits
*
*/
-
function staticGet($k, $v=null)
{
return Memcached_DataObject::staticGet('Sitemap_user_count', $k, $v);
*
* @return array array of column definitions
*/
-
function table()
{
return array('registration_date' => DB_DATAOBJECT_DATE + DB_DATAOBJECT_NOTNULL,
*
* @return array key definitions
*/
-
function keyTypes()
{
return $this->keys();
$userCounts[$suc->registration_date] = $suc->user_count;
}
- self::cacheSet('sitemap:user:counts', $userCounts);
+ // Cache user counts for 4 hours.
+
+ self::cacheSet('sitemap:user:counts', $userCounts, null, time() + 4 * 60 * 60);
}
return $userCounts;
$counts = array();
for ($d = $firstDate; $d <= $today; $d = self::incrementDay($d)) {
- common_debug("Date = '$d'");
$n = self::getCount($d);
self::insertCount($d, $n);
$counts[$d] = $n;
static function insertCount($d, $n)
{
- common_debug("Inserting count '$n' for '$d'");
-
$suc = new Sitemap_user_count();
$suc->registration_date = DB_DataObject_Cast::date($d);
$suc = Sitemap_user_count::staticGet('registration_date', DB_DataObject_Cast::date($d));
if (empty($suc)) {
- throw new Exception("No such registration date: $d");
+ // TRANS: Exception thrown when a registration date cannot be found.
+ throw new Exception(_m("No such registration date: $d."));
}
$orig = clone($suc);