function eu_cookie_compliance_admin_category_form_submit in EU Cookie Compliance (GDPR Compliance) 7.2
Same name and namespace in other branches
- 7 eu_cookie_compliance.admin.categories.inc \eu_cookie_compliance_admin_category_form_submit()
Submit handler for adding / editing a cookie consent category.
All that happens here is massaging form values to match what system_settings_form expects. Bonus is that i18n variables can then also work its magic, with a little help from eu_cookie_compliance_variable_settings_form_alter.
Parameters
array $form: Form array.
array $form_state: Form state array.
1 string reference to 'eu_cookie_compliance_admin_category_form_submit'
- eu_cookie_compliance_admin_category_form in ./
eu_cookie_compliance.admin.categories.inc - Provides form for adding / editing a cookie consent category.
File
- ./
eu_cookie_compliance.admin.categories.inc, line 295 - This file provides administration forms for the cookie categories.
Code
function eu_cookie_compliance_admin_category_form_submit(array $form, array &$form_state) {
$categories = variable_get('eu_cookie_compliance_categories', array());
if (!isset($categories[$form_state['values']['machine_name']])) {
$categories[$form_state['values']['machine_name']] = array(
'weight' => 0,
);
}
$categories[$form_state['values']['machine_name']] = array_merge($categories[$form_state['values']['machine_name']], array(
'machine_name' => $form_state['values']['machine_name'],
'label' => $form_state['values']['label'],
'description' => $form_state['values']['description'],
'checkbox_default_state' => $form_state['values']['checkbox_default_state'],
));
$label = $form_state['values']['label'];
$form_state['values'] = array();
$form_state['values']['eu_cookie_compliance_categories'] = $categories;
eu_cookie_compliance_clear_caches();
drupal_set_message(t('The category %label has been saved.', array(
'%label' => $label,
)));
$form_state['redirect'] = 'admin/config/system/eu-cookie-compliance/categories';
}