You are here

function opigno_live_meetings_form_node_form_alter in Opigno Moxtra App 7

Implements hook_form_FORM_ID_alter().

Alter create/edit form to

  • Hide "session_key" field
  • Register new submit handlers to create or edit a meeting on moxtra

_state

Parameters

array $form:

File

modules/opigno_live_meetings/includes/opigno_live_meetings.form.inc, line 15

Code

function opigno_live_meetings_form_node_form_alter(&$form, &$form_state, $form_id) {
  $content_type = $form['#node']->type;
  if ($content_type === 'live_meeting') {
    if (isset($form_state['node']->nid)) {

      //update
      $form['#submit'][] = 'opigno_live_meetings_form_update_live_meeting_submit';
      $form['meeting_dates']['#access'] = FALSE;
    }
    else {

      //create
      $form['#submit'][] = 'opigno_live_meetings_form_create_live_meeting_submit';
      $form['opigno_calendar_date']['#access'] = FALSE;
    }
    $form['schedule_binder_id']['#access'] = FALSE;
    $form['session_key']['#access'] = FALSE;
    $form['actions']['preview']['#access'] = FALSE;

    //validate
    $form['#validate'][] = 'opigno_live_meetings_form_live_meeting_validate';

    // If the course ID is set (should always be!), show the classes that the user can access and
    //   that have this course as child
    if (isset($form['og_group_ref']['und'][0]['default']['#default_value'][0])) {
      $course_id = $form['og_group_ref']['und'][0]['default']['#default_value'][0];
      $classes_ids = opigno_live_meetings_db_get_classes_nids_from_course($course_id);
      foreach ($form['field_class_ref']['und'][0]['default']['#options'] as $op_index => $option) {
        if ($op_index != '_none' && !in_array($op_index, $classes_ids)) {
          unset($form['field_class_ref']['und'][0]['default']['#options'][$op_index]);
        }
      }
    }
  }
}