| 1 layout.context.admin.inc | layout_settings_form_context_remove($form, &$form_state) | 
Submit handler for layout_settings_form() that removes a context.
File
- core/modules/ layout/ layout.context.admin.inc, line 379 
- Administrative functions for custom layout contexts.
Code
function layout_settings_form_context_remove($form, &$form_state) {
  $removed_context = $form_state['clicked_button']['#array_parents'][3];
  // Find all relationships to this context and remove them too.
  $contexts = $form_state['layout']->getContexts();
  $id = $contexts[$removed_context]->settings['id'];
  $relationships = $form_state['layout']->relationships;
  foreach ($relationships as $key => $relationship) {
    if ($relationship->settings['context_parent'] == 'id:' . $id) {
      unset($form_state['layout']->relationships[$key]);
    }
  }
  // Then finally remove the context.
  $form_state['layout']->clearContexts($removed_context);
  layout_set_layout_tempstore($form_state['layout']);
  $form_state['ajax_update'] = array('context_wrapper');
}
