diff --git a/core/modules/image/image.admin.inc b/core/modules/image/image.admin.inc index ca55227..c633c19 100644 --- a/core/modules/image/image.admin.inc +++ b/core/modules/image/image.admin.inc @@ -307,7 +307,10 @@ function image_style_delete_form($form, &$form_state, $style) { function image_style_delete_form_submit($form, &$form_state) { $style = $form_state['image_style']; - image_style_delete($style, $form_state['values']['replacement']); + if($form_state['values']['replacement']) { + image_style_replace($style->id(), $form_state['values']['replacement']); + } + image_style_delete($style); drupal_set_message(t('Style %name was deleted.', array('%name' => $style->label()))); $form_state['redirect'] = 'admin/config/media/image-styles'; } diff --git a/core/modules/image/image.module b/core/modules/image/image.module index c763dc6..2835467 100644 --- a/core/modules/image/image.module +++ b/core/modules/image/image.module @@ -325,11 +325,8 @@ function image_file_predelete(File $file) { image_path_flush($file->uri); } -/** - * Implements hook_image_style_save(). - */ -function image_image_style_save($style) { - if ($style->id() != $style->getOriginalID()) { +function image_style_replace($old_name, $new_name) { + if ($old_name != $new_name) { $instances = field_read_instances(); // Loop through all fields searching for image fields. foreach ($instances as $instance) { @@ -337,15 +334,15 @@ function image_image_style_save($style) { $instance_changed = FALSE; foreach ($instance['display'] as $view_mode => $display) { // Check if the formatter involves an image style. - if ($display['type'] == 'image' && $display['settings']['image_style'] == $style->getOriginalID()) { + if ($display['type'] == 'image' && $display['settings']['image_style'] == $old_name) { // Update display information for any instance using the image // style that was just deleted. - $instance['display'][$view_mode]['settings']['image_style'] = $style->id(); + $instance['display'][$view_mode]['settings']['image_style'] = $new_name; $instance_changed = TRUE; } } - if ($instance['widget']['settings']['preview_image_style'] == $style->getOriginalID()) { - $instance['widget']['settings']['preview_image_style'] = $style->id(); + if ($instance['widget']['settings']['preview_image_style'] == $old_name) { + $instance['widget']['settings']['preview_image_style'] = $new_name; $instance_changed = TRUE; } if ($instance_changed) { @@ -357,15 +354,6 @@ function image_image_style_save($style) { } /** - * Implements hook_image_style_delete(). - */ -function image_image_style_delete($style) { - image_image_style_save($style); - // Flush cached media for the style. - image_style_flush($style); -} - -/** * Implements hook_field_delete_field(). */ function image_field_delete_field($field) { @@ -570,31 +558,6 @@ function image_style_load($name) { } /** - * Implements hook_image_style_load. - */ -function image_image_style_load($styles) { - foreach ($styles as $style) { - if (!empty($style->effects)) { - foreach ($style->effects as $ieid => $effect) { - $definition = image_effect_definition_load($effect['name']); - $effect = array_merge($definition, $effect); - $style->effects[$ieid] = $effect; - } - // Sort effects by weight. - uasort($style->effects, 'drupal_sort_weight'); - } - } -} - -/** - * Implements hook_image_style_update(). - */ -function image_image_style_update($style) { - // Flush cached media for the style. - image_style_flush($style); -} - -/** * Delete an image style. * * @param Drupal\image\Plugin\Core\Entity\ImageStyle $style @@ -611,9 +574,8 @@ function image_style_delete($style, $replacement_style_name = '') { // Let other modules update as necessary on save. if ($replacement_style_name) { - $style->set('name', $replacement_style_name); + image_style_replace($style->id(), $replacement_style_name); } - module_invoke_all('image_style_delete', $style); return TRUE; } diff --git a/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php b/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php index 363fbd8..8110b77 100644 --- a/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php +++ b/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php @@ -18,7 +18,7 @@ * id = "image_style", * label = @Translation("Image style"), * module = "image", - * controller_class = "Drupal\Core\Config\Entity\ConfigStorageController", + * controller_class = "Drupal\image\ImageStyleStorageController", * uri_callback = "image_style_uri", * config_prefix = "image.style", * entity_keys = {