function image_style_save

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.
9 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.
ImageStylesHTTPHeadersTestCase::setUp in modules/image/image.test
Sets up a Drupal site for running functional and integration tests.
ImageStylesPathAndUrlTestCase::setUp in modules/image/image.test
Sets up a Drupal site for running functional and integration tests.

... See full list

File

modules/image/image.module, line 695

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;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.