You are here

function context_ui_form_process in Context 6

Same name in this branch
  1. 6 context_ui/context_ui.admin.inc \context_ui_form_process()
  2. 6 context_ui/export_ui/context_export_ui.class.php \context_ui_form_process()
Same name and namespace in other branches
  1. 5 context_ui/context_ui_admin.inc \context_ui_form_process()
  2. 6.3 context_ui/export_ui/context_export_ui.class.php \context_ui_form_process()
  3. 6.2 context_ui/context_ui.admin.inc \context_ui_form_process()
  4. 7.3 context_ui/export_ui/context_export_ui.class.php \context_ui_form_process()

Modifies a context object from submitted form values.

Parameters

$context: The context object to modify.

$form: A form array with submitted values

Return value

A context object

2 calls to context_ui_form_process()
context_ui_form_submit in context_ui/context_ui.admin.inc
Submit handler for main context_ui form.
context_ui_form_submit in context_ui/export_ui/context_export_ui.class.php
Submit handler for main context_ui form.

File

context_ui/export_ui/context_export_ui.class.php, line 201

Code

function context_ui_form_process($context, $form) {
  $context->name = isset($form['name']) ? $form['name'] : NULL;
  $context->description = isset($form['description']) ? $form['description'] : NULL;
  $context->tag = isset($form['tag']) ? $form['tag'] : NULL;
  $context->condition_mode = isset($form['condition_mode']) ? $form['condition_mode'] : NULL;
  $context->conditions = array();
  $context->reactions = array();
  if (!empty($form['conditions'])) {
    $enabled = explode(',', $form['conditions']['state']);
    foreach ($form['conditions']['plugins'] as $condition => $values) {
      if (in_array($condition, $enabled, TRUE) && ($plugin = context_get_plugin('condition', $condition))) {
        if (isset($values['values'])) {
          $context->conditions[$condition]['values'] = $plugin
            ->condition_form_submit($values['values']);
        }
        if (isset($values['options'])) {
          $context->conditions[$condition]['options'] = $plugin
            ->options_form_submit($values['options']);
        }
        if (context_empty($context->conditions[$condition]['values'])) {
          unset($context->conditions[$condition]);
        }
      }
    }
  }
  if (!empty($form['reactions'])) {
    $enabled = explode(',', $form['reactions']['state']);
    foreach ($form['reactions']['plugins'] as $reaction => $values) {
      if (in_array($reaction, $enabled, TRUE) && ($plugin = context_get_plugin('reaction', $reaction))) {
        if (isset($values)) {
          $context->reactions[$reaction] = $plugin
            ->options_form_submit($values);
        }
        if (context_empty($context->reactions[$reaction])) {
          unset($context->reactions[$reaction]);
        }
      }
    }
  }
  return $context;
}