X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/8492dc052ad85039e0bbe11c7c3e1b8554907f64..3adb3c8c419ca1a01edac5fa62d5f88898415bfa:/WEB-INF/lib/ttOrgHelper.class.php diff --git a/WEB-INF/lib/ttOrgHelper.class.php b/WEB-INF/lib/ttOrgHelper.class.php index 2cf04506..d93e2591 100644 --- a/WEB-INF/lib/ttOrgHelper.class.php +++ b/WEB-INF/lib/ttOrgHelper.class.php @@ -62,4 +62,24 @@ class ttOrgHelper { } 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; + } }