query($sql); $result = array(); if (!is_a($res, 'PEAR_Error')) { while ($val = $res->fetchRow()) { $val['date'] = substr($val['created'], 0, 10); // Strip the time. $result[] = $val; } return $result; } return false; } // The getName function returns organization name (which is a name of its top group). static function getName($org_id) { $mdb2 = getConnection(); $sql = "select name from tt_groups where id = $org_id and (status = 1 or status = 0) and parent_id is NULL"; $res = $mdb2->query($sql); if (!is_a($res, 'PEAR_Error')) { $val = $res->fetchRow(); return $val['name']; } return false; } // The getInactiveOrgs is a maintenance function that returns an array of inactive organization ids (max 5 for now). static function getInactiveOrgs() { $inactive_orgs = array(); $mdb2 = getConnection(); // Determine inactive organizations by querying the database for max access timestamp for its users. $cutoff_timestamp = $mdb2->quote(date('Y-m-d', strtotime('-1 year'))); $sql = "select org_id from". " (select max(accessed) as last_access, org_id from tt_users group by org_id order by last_access, org_id) as t". " where last_access is null or last_access < $cutoff_timestamp limit 5"; // Max 5 orgs at a time for now... $res = $mdb2->query($sql); if (!is_a($res, 'PEAR_Error')) { while ($val = $res->fetchRow()) { $inactive_orgs[] = $val['org_id']; } return $inactive_orgs; } return false; } }