You are here

function styles_style_save in Styles 7.2

2 calls to styles_style_save()
styles_ui_style_add_form_submit in contrib/styles_ui/styles_ui.admin.inc
Submission handler for the add style form.
styles_ui_style_edit_form_submit in contrib/styles_ui/styles_ui.admin.inc
Submission handler for the add style form.

File

./styles.module, line 660
Bundles similar display formatters together.

Code

function styles_style_save(&$style) {
  if (isset($style['sid']) && is_numeric($style['sid'])) {

    // Load the existing style to make sure we account for renamed styles.
    $old_style = styles_style_load($style['field_type'], NULL, $style['sid']);
    styles_style_flush($old_style);
    drupal_write_record('styles', $style, 'sid');
    if ($old_style['name'] != $style['name']) {
      $style['old_name'] = $old_style['name'];
    }
  }
  else {
    if (isset($style['name'])) {

      // Load the existing style to make sure we account for renamed styles.
      $old_style = styles_style_load($style['field_type'], $style['name']);
      styles_style_flush($old_style);
      if (isset($old_style['sid'])) {
        $style['sid'] = $old_style['sid'];
        drupal_write_record('styles', $style, 'sid');
      }
      else {
        drupal_write_record('styles', $style);
        $style['is_new'] = TRUE;
      }
      if (isset($old_style['name'])) {
        $style['old_name'] = $old_style['name'];
      }
    }
    else {
      drupal_write_record('styles', $style);
      $style['is_new'] = TRUE;
    }
  }

  // Let other modules update as necessary on save.
  module_invoke_all('styles_style_save', $style);

  // Clear all caches and flush.
  styles_style_flush($style);
  return $style;
}