You are here

function fullcalendar_plugin_style_fullcalendar::options_form in FullCalendar 7.2

Same name and namespace in other branches
  1. 6.2 includes/views/plugins/fullcalendar_plugin_style_fullcalendar.inc \fullcalendar_plugin_style_fullcalendar::options_form()

Provide a form to edit options for this plugin.

Overrides views_plugin_style::options_form

File

includes/views/plugins/fullcalendar_plugin_style_fullcalendar.inc, line 111
Contains the FullCalendar style plugin.

Class

fullcalendar_plugin_style_fullcalendar
@file Contains the FullCalendar style plugin.

Code

function options_form(&$form, &$form_state) {

  // Load all FullCalendar options and merge in their form info.
  fullcalendar_include_api();
  $fullcalendar_options = module_invoke_all('fullcalendar_options_info');
  uasort($fullcalendar_options, 'drupal_sort_weight');
  if (!empty($fullcalendar_options)) {
    $arguments = array(
      &$form,
      &$form_state,
      &$this,
    );

    // Create a separate fieldset for each module.
    foreach (array_intersect(array_keys($fullcalendar_options), module_implements('fullcalendar_options_form')) as $module) {
      if (empty($fullcalendar_options[$module]['no_fieldset'])) {
        $form[$module] = array(
          '#type' => 'fieldset',
          '#title' => t('@module options', array(
            '@module' => $fullcalendar_options[$module]['name'],
          )),
          '#collapsible' => TRUE,
          '#collapsed' => TRUE,
          '#attributes' => array(
            'class' => array(
              $module,
            ),
          ),
        );
      }
      $function = $module . '_fullcalendar_options_form';
      call_user_func_array($function, $arguments);
    }
  }
}