usersModel = $usersModel; $this->usersManagerApi = $usersManagerApi; } public function schedule() { $this->daily("setUserDefaultReportPreference"); } public function setUserDefaultReportPreference() { // We initialize the default report user preference for each user (if it hasn't been inited before) for performance, // doing this lets us avoid loading all siteIds (which can be 50k or more) when this preference is requested. // getting the user preference can be called quite often when generating links etc (to get defaultWebsiteId). $usersModel = $this->usersModel; $usersManagerApi = $this->usersManagerApi; Access::getInstance()->doAsSuperUser(function () use ($usersModel, $usersManagerApi) { $allUsers = $usersModel->getUsers(array()); foreach ($allUsers as $user) { $usersManagerApi->initUserPreferenceWithDefault($user['login'], API::PREFERENCE_DEFAULT_REPORT); } }); } }