You are here

class CourseObjectAccessGrade in Course 6

Same name and namespace in other branches
  1. 7.2 plugins/course_object_access/grade.inc \CourseObjectAccessGrade
  2. 7 plugins/course_object_access/grade.inc \CourseObjectAccessGrade

Hierarchy

Expanded class hierarchy of CourseObjectAccessGrade

1 string reference to 'CourseObjectAccessGrade'
grade.inc in plugins/course/access/grade.inc

File

plugins/course/access/grade.inc, line 11

View source
class CourseObjectAccessGrade extends CourseObjectAccess {
  public function optionsDefinition() {
    $defaults = parent::optionsDefinition();
    $defaults += array(
      'course_grade' => NULL,
      'course_grade_hidden' => NULL,
    );
    return $defaults;
  }
  function take() {
    $config = $this
      ->getOptions();
    if ($this
      ->getCourseObject()
      ->getCourse()
      ->getTracker()
      ->getOption('grade_result') >= $config['course_grade']) {
      return TRUE;
    }
    else {
      $this
        ->getCourseObject()
        ->setAccessMessage('grade', t('You must have a grade of at least @grade% to take this activity.', array(
        '@grade' => $this
          ->getOption('course_grade'),
      )));
      return FALSE;
    }
  }
  function see() {
    if (!$this
      ->take() && $this
      ->getOption('course_grade_hidden')) {
      return FALSE;
    }
  }
  function view() {
    return $this
      ->take();
  }
  function optionsForm() {
    $form = array();
    $config = $this
      ->getOptions();
    $form['course_grade'] = array(
      '#title' => t('Course grade required'),
      '#type' => 'textfield',
      '#size' => 4,
      '#description' => t('The user will not be able to access this object until this course grade is met.'),
      '#default_value' => $config['course_grade'],
    );
    $form['course_grade_hidden'] = array(
      '#title' => t('Hide until grade met'),
      '#description' => t('The user will not see this object until the course grade is met.'),
      '#type' => 'checkbox',
      '#default_value' => $config['course_grade_hidden'],
    );
    return $form;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CourseHandler::$accessMessages private property
CourseHandler::$config protected property
CourseHandler::$handlerType public property
CourseHandler::$primaryKey public property
CourseHandler::$serializedField public property
CourseHandler::$table public property
CourseHandler::addOptions final public function Merge an array of options onto the existing options.
CourseHandler::getAccessMessages public function Get an array of access messages.
CourseHandler::getDatabaseFields protected function Return an array of database fields. This determines what fields should be serialized instead of stored.
CourseHandler::getId function
CourseHandler::getOption final public function Get an option stored in this CourseObject.
CourseHandler::getOptions public function Get an object's configuration. 1
CourseHandler::getOptionsSummary public function Stub. Get the summary of an object's options. 1
CourseHandler::getWarnings public function Return a list of warning strings about this handler. 1
CourseHandler::optionsMerge private function Merge arrays with replace, not append.
CourseHandler::optionsSubmit public function Save data somewhere. 1
CourseHandler::optionsValidate public function Validate? 3
CourseHandler::save public function 2
CourseHandler::setAccessMessage public function Set an access message to be displayed along with the course object when it is in the outline. For example, "This activity will open on XYZ" or "Please complete Step 1 to take this activity."
CourseHandler::setOption final public function Set an option for this handler.
CourseHandler::setOptions final public function Set this entire handler's options.
CourseObjectAccess::$courseObject private property
CourseObjectAccess::getCourseObject public function
CourseObjectAccess::setCourseObject public function
CourseObjectAccess::__construct function Overrides CourseHandler::__construct
CourseObjectAccessGrade::optionsDefinition public function Handlers need to declare their defaults if they have a configuration form. Overrides CourseHandler::optionsDefinition
CourseObjectAccessGrade::optionsForm function Handlers can declare a form. Overrides CourseHandler::optionsForm
CourseObjectAccessGrade::see function Overrides CourseObjectAccess::see
CourseObjectAccessGrade::take function Overrides CourseObjectAccess::take
CourseObjectAccessGrade::view function Overrides CourseObjectAccess::view