You are here

public function CourseObjectAccess::optionsForm in Course 7.2

Define the form to be used in the object access settings area.

3 methods override CourseObjectAccess::optionsForm()
CourseObjectAccessConditional::optionsForm in plugins/course_object_access/conditional.inc
Define the form to be used in the object access settings area.
CourseObjectAccessGrade::optionsForm in plugins/course_object_access/grade.inc
Define the form to be used in the object access settings area.
CourseObjectAccessTiming::optionsForm in plugins/course_object_access/timing.inc
Define the form to be used in the object access settings area.

File

includes/CourseObjectAccess.inc, line 104

Class

CourseObjectAccess
Access handler for CourseObjects.

Code

public function optionsForm($form, &$form_state) {
  $config = $this
    ->getOptions();
  $form['alter']['#weight'] = 100;
  $form['alter']['#type'] = 'fieldset';
  $form['alter']['#collapsed'] = FALSE;
  $form['alter']['#collapsible'] = FALSE;
  $form['alter']['#title'] = t('Modifications');
  $form['alter']['#attributes']['class'][] = 'course-object-access-alter';
  $form['alter']['negate'] = [
    '#title' => t('If the above condition(s) are:'),
    '#type' => 'select',
    '#options' => [
      0 => t('TRUE'),
      1 => t('FALSE'),
    ],
    '#default_value' => isset($config['alter']['negate']) ? $config['alter']['negate'] : 0,
  ];
  $form['alter']['access'] = [
    '#title' => t('Block access'),
    '#description' => t('This will prevent the user from accessing the course object.'),
    '#type' => 'checkbox',
    '#default_value' => isset($config['alter']['access']) ? $config['alter']['access'] : -1,
  ];
  $form['alter']['required'] = [
    '#title' => t('Required'),
    '#description' => t('Change the "Required" property.'),
    '#type' => 'radios',
    '#options' => [
      '-1' => t('No change'),
      1 => t('Make required'),
      0 => t('Make optional'),
    ],
    '#default_value' => isset($config['alter']['required']) ? $config['alter']['required'] : -1,
  ];
  $form['alter']['visible'] = [
    '#title' => t('Visibility'),
    '#description' => t('Change the "Visible" property.'),
    '#type' => 'radios',
    '#options' => [
      '-1' => t('No change'),
      1 => t('Visible'),
      0 => t('Hidden'),
    ],
    '#default_value' => isset($config['alter']['visible']) ? $config['alter']['visible'] : -1,
  ];
  return $form;
}