/**
  * Get unique instance object of the class
  *
  * @return LPR_Session|object
  */
 static function instance()
 {
     if (!self::$instance) {
         self::$instance = new self();
     }
     return self::$instance;
 }
 /**
  * Quiz for anonymous users
  *
  * @param boolean
  * @param int
  * @param int
  * @return boolean
  */
 function do_quiz_for_anonymous_user($continue, $quiz_id, $user_id)
 {
     $course_id = learn_press_get_course_by_quiz($quiz_id);
     if ($this->is_public_quiz($course_id)) {
         $session = LPR_Session::instance();
         $session->set('anonymous_quiz', array('questions' => array_values(learn_press_get_quiz_questions($quiz_id)), 'finished' => 0, 'answers' => array(), 'start' => time(), 'end' => null));
         $continue = false;
         do_action('learn_press_user_start_quiz', $quiz_id, $user_id);
     }
     return $continue;
 }
/**
 * Quiz for anonymous users
 *
 * @param boolean
 * @param int
 * @param int
 * @return boolean
 */
function learn_press_do_quiz_for_anonymous_user($continue, $quiz_id, $user_id)
{
    $course_id = learn_press_get_course_by_quiz($quiz_id);
    if (learn_press_is_public_quiz($course_id)) {
        $session = LPR_Session::instance();
        $session->set('anonymous_quiz', array('questions' => array_values(learn_press_get_quiz_questions($quiz_id))));
        $continue = false;
    }
    return $continue;
}