function opigno_statistics_app_query_active_users_last_week_percentage in Opigno Statistics App 7
Retrieve active user last week percentage (cached for 1 day)
Return value
float
1 call to opigno_statistics_app_query_active_users_last_week_percentage()
- opigno_statistics_app_present_active_users_last_week_percentage in includes/
dashboard/ presenters.inc - Present active users last week percentage
File
- includes/
dashboard/ queries.inc, line 287
Code
function opigno_statistics_app_query_active_users_last_week_percentage() {
$cache_key = __FUNCTION__;
$cached_object = cache_get($cache_key);
if ($cached_object) {
$percentage = $cached_object->data;
}
else {
$number_of_users_last_week = db_query('SELECT COUNT(distinct uid) FROM {accesslog} WHERE timestamp BETWEEN :start_of_last_week AND :end_of_last_week ', array(
':start_of_last_week' => opigno_statistics_app_start_of_last_week(),
':end_of_last_week' => opigno_statistics_app_end_of_last_week(),
))
->fetchField();
$total_number_of_users = db_query('SELECT COUNT(distinct uid) FROM {accesslog}')
->fetchField();
$percentage = $total_number_of_users != 0 && $number_of_users_last_week != 0 ? $number_of_users_last_week / $total_number_of_users : 0;
cache_set($cache_key, $percentage, 'cache', time() + 7200);
// 7200s = 2h cache
}
return $percentage;
}