You are here

function image_style_save in Drupal 7

Saves an image style.

Parameters

array $style: An image style array containing:

  • name: A unique name for the style.
  • isid: (optional) An image style ID.

Return value

array An image style array containing:

  • name: An unique name for the style.
  • old_name: The original name for the style.
  • isid: An image style ID.
  • is_new: TRUE if this is a new style, and FALSE if it is an existing style.
8 calls to image_style_save()
ImageAdminStylesUnitTest::testStyleReplacement in modules/image/image.test
Test deleting a style and choosing a replacement style.
ImageDimensionsTestCase::testImageDimensions in modules/image/image.test
Test styled image dimensions cumulatively.
ImageFieldTestCase::createRandomStyle in modules/image/image.test
Create a random style.
ImageStylesPathAndUrlTestCase::setUp in modules/image/image.test
Sets up a Drupal site for running functional and integration tests.
ImageThemeFunctionWebTestCase::testImageFormatterTheme in modules/image/image.test
Tests usage of the image field formatters.

... See full list

File

modules/image/image.module, line 685
Exposes global functionality for creating image styles.

Code

function image_style_save($style) {
  if (isset($style['isid']) && is_numeric($style['isid'])) {

    // Load the existing style to make sure we account for renamed styles.
    $old_style = image_style_load(NULL, $style['isid']);
    image_style_flush($old_style);
    drupal_write_record('image_styles', $style, 'isid');
    if ($old_style['name'] != $style['name']) {
      $style['old_name'] = $old_style['name'];
    }
  }
  else {

    // Add a default label when not given.
    if (empty($style['label'])) {
      $style['label'] = $style['name'];
    }
    drupal_write_record('image_styles', $style);
    $style['is_new'] = TRUE;
  }

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

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