function advagg_critical_css_admin_settings_form_submit in Advanced CSS/JS Aggregation 7.2
Submit callback, process the advagg_critical_css form.
Also clear out the advagg cache bin.
Related topics
1 string reference to 'advagg_critical_css_admin_settings_form_submit'
- advagg_critical_css_admin_settings_form in advagg_critical_css/
advagg_critical_css.admin.inc - Form builder; Configure advagg settings.
File
- advagg_critical_css/
advagg_critical_css.admin.inc, line 285 - Admin page callbacks for the advagg critical css module.
Code
function advagg_critical_css_admin_settings_form_submit($form, &$form_state) {
// Exclude unnecessary elements.
form_state_values_clean($form_state);
// Save advagg_critical_css_selector_blacklist.
if (!isset($form_state['values']['advagg_critical_css_selector_blacklist'])) {
$form_state['values']['advagg_critical_css_selector_blacklist'] = '';
}
$advagg_critical_css_selector_blacklist = variable_get('advagg_critical_css_selector_blacklist', '');
if ($form_state['values']['advagg_critical_css_selector_blacklist'] !== $advagg_critical_css_selector_blacklist) {
variable_set('advagg_critical_css_selector_blacklist', $form_state['values']['advagg_critical_css_selector_blacklist']);
}
unset($form_state['values']['advagg_critical_css_selector_blacklist']);
// Rearrange form values into key value pairs.
$items = advagg_critical_css_get_rows_from_form($form_state['values']);
// Get default values.
$default_values = advagg_find_all_recommended_admin_values($form_state['complete form'], '#default_value');
unset($default_values['form_token']);
$default_items = advagg_critical_css_get_rows_from_form($default_values);
// Get diff, see what items need to be saved.
$diff = advagg_diff_multi($default_items, $items);
$changed_items = array();
foreach ($diff as $key => $values) {
$changed_items[$key] = $items[$key];
}
// Get items to insert/update and delete.
list($insert_update, $delete) = advagg_critical_css_get_db_operations_arrays($changed_items, $default_items);
advagg_critical_css_table_insert_update($insert_update);
advagg_critical_css_table_delete($delete);
// Clear caches.
advagg_cache_clear_admin_submit();
drupal_set_message(t('The configuration options have been saved.'));
}