at path:
ROOT
/
wp-content
/
plugins
/
tutor
/
cache
/
QuizAttempts.php
run:
R
W
Run
AbstractCache.php
1.52 KB
2026-04-14 05:34:26
R
W
Run
Delete
Rename
FlashMessage.php
2 KB
2026-04-14 05:34:26
R
W
Run
Delete
Rename
QuizAttempts.php
1.78 KB
2026-04-14 05:34:26
R
W
Run
Delete
Rename
TutorCache.php
2.08 KB
2026-04-14 05:34:26
R
W
Run
Delete
Rename
error_log
up
📄
QuizAttempts.php
Save
<?php /** * Handle quiz attempt cache data * * @package Tutor\Cache * @author Themeum <support@themeum.com> * @link https://themeum.com * @since 2.0.6 */ namespace Tutor\Cache; use Tutor\Cache\AbstractCache; if ( ! defined( 'ABSPATH' ) ) { return; } /** * User data caching * Get Set & check * * @since 2.0.6 */ class QuizAttempts extends AbstractCache { /** * Key for cache identifier * * @var string * * @since 2.0.6 */ const KEY = 'tutor_quiz_attempts_count'; /** * Cache expire time * * @var string * * @since 2.0.6 */ const HOUR_IN_SECONDS = 1800; /** * Data for caching * * @var string * * @since 2.0.6 */ public $data; /** * Params for caching * * @var string * * @since 3.7.0 */ public $params = array(); /** * Constructor to initialize query parameters for cache comparison. * * @param array $params The current query parameters (e.g., course_id, date, search). * * @since 2.7.0 */ public function __construct( array $params = array() ) { $this->params = $params; } /** * Key * * @since 2.0.6 * @return string */ public function key(): string { return self::KEY; } /** * Cache data * * @since 2.0.6 * @return array */ public function cache_data() { return array( 'params' => $this->params, 'result' => $this->data, ); } /** * Cache time * * @since 2.0.6 * @return int */ public function cache_time(): int { $cache_time = self::HOUR_IN_SECONDS; return $cache_time; } /** * Check if current params match cached params. * * @return bool */ public function is_same_query(): bool { $cache = $this->get_cache(); if ( ! $cache || ! is_array( $cache ) || ! isset( $cache['params'] ) ) { return false; } return $cache['params'] === $this->params; } }