public function process()
    {
        $this->report->deleteExpired();
        $this->history->deleteExpired();

        // Delete files in temporary directory
        foreach (gplcart_file_scan_recursive(GC_DIR_PRIVATE_TEMP) as $file) {
            if (strpos(basename($file), '.') !== 0) { // Ignore hidden files
                gplcart_file_delete_recursive($file);
            }
        }

        $result = $this->report->checkFilesystem();

        if ($result !== true) {
            foreach ((array) $result as $message) {
                $this->logger->log('system_status', array('message' => $message), 'warning');
            }
        }

        return true;
    }