| Server IP : 104.21.28.229 / Your IP : 216.73.216.142 Web Server : Apache/2 System : Linux hosting8537.lvs 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : mienphi ( 1014) PHP Version : 8.2.14 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/mienphi/public_html/wp-content/plugins/learnpress/inc/user-item/ |
Upload File : |
<?php
class LP_Quiz_Results {
/**
* @var array
*/
protected $results = array();
/**
* LP_Quiz_Results constructor.
*
* @param $results
*/
public function __construct( $results ) {
// If $results is user_item_id.
if ( is_numeric( $results ) ) {
$this->results = LP_User_Items_Result_DB::instance()->get_result( $results );
} else {
$this->results = $results ? (array) $results : array();
}
}
/**
* @param string $return
*
* @return array|bool|mixed
*/
public function getQuestions( $return = '' ) {
$questions = $this->offsetGet( 'questions' );
if ( ! $questions ) {
$questions = array();
}
$ids = array_keys( $questions );
$ids = apply_filters( 'lp-quiz/results/getquestions', $ids );
return $return === 'ids' ? $ids : $questions;
}
/**
* @param int $id
*
* @return array|bool
*/
public function getAnswered( $id = 0 ) {
$questions = $this->getQuestions();
if ( $id ) {
return isset( $questions[ $id ] ) ? $questions[ $id ]['answered'] : false;
}
return wp_list_pluck( $questions, 'answered' );
}
public function get( $prop = null, $default = '' ) {
if ( ! $prop ) {
return $this->results ? $this->results : $default;
}
$value = $this->offsetGet( $prop );
return $value ? $value : $default;
}
public function offsetUnset( $offset ) {
if ( isset( $this->results[ $offset ] ) ) {
unset( $this->results[ $offset ] );
}
}
public function offsetSet( $offset, $value ) {
$this->results[ $offset ] = $value;
}
public function offsetGet( $offset ) {
return isset( $this->results[ $offset ] ) ? $this->results[ $offset ] : false;
}
public function offsetExists( $offset ) {
return array_key_exists( $offset, $this->results );
}
public function __toString() {
return $this->get( 'result' );
}
}