You are here

function eu_cookie_compliance_admin_categories_form_submit in EU Cookie Compliance (GDPR Compliance) 7

Same name and namespace in other branches
  1. 7.2 eu_cookie_compliance.admin.categories.inc \eu_cookie_compliance_admin_categories_form_submit()

Submit handler for ordering cookie consent categories.

Parameters

array $form: Form array.

array $form_state: Form state array.

1 string reference to 'eu_cookie_compliance_admin_categories_form_submit'
eu_cookie_compliance_admin_categories_form in ./eu_cookie_compliance.admin.categories.inc
Form to order cookie consent categories & an overview at the same time.

File

./eu_cookie_compliance.admin.categories.inc, line 163
This file provides administration forms for the cookie categories.

Code

function eu_cookie_compliance_admin_categories_form_submit(array $form, array &$form_state) {
  $categories = variable_get('eu_cookie_compliance_categories', array());

  // Update categories with new weight values.
  $weights = $form_state['values']['categories'];
  foreach ($weights as $machine_name => $data) {
    $categories[$machine_name]['weight'] = $data['weight'];
  }

  // Order the categories by their weight.
  uasort($categories, function ($a, $b) {
    return $a['weight'] - $b['weight'];
  });
  if (!empty($form_state['values']['domain_settings']['domain_id'])) {
    $domain_id = $form_state['values']['domain_settings']['domain_id'];
  }
  else {
    $domain_id = NULL;
  }
  $form_state['values'] = array();
  $form_state['values']['eu_cookie_compliance_categories'] = $categories;
  if ($domain_id) {
    $form_state['values']['domain_id'] = $domain_id;
  }
}