diff --git a/admin-dev/themes/default/template/controllers/categories/helpers/form/form.tpl b/admin-dev/themes/default/template/controllers/categories/helpers/form/form.tpl index 9810121f8..ed607681d 100644 --- a/admin-dev/themes/default/template/controllers/categories/helpers/form/form.tpl +++ b/admin-dev/themes/default/template/controllers/categories/helpers/form/form.tpl @@ -25,6 +25,29 @@ *} {extends file="helpers/form/form.tpl"} +{block name="input"} + {if $input.type == 'file'} + {if isset($input.display_image) && $input.display_image} + {if isset($fields_value.image) && $fields_value.image} +
+ {$fields_value.image} +

{l s='File size'} {$fields_value.size}kb

+ {if $shared_category} +

{l s='If you delete this picture it\'s will be deleted for all shared shop'}

+ {/if} +
+ + {l s='Delete'} {l s='Delete'} + +

+ {/if} + {/if} + + {if !empty($input.hint)}{$input.hint} {/if} + {else} + {$smarty.block.parent} + {/if} +{/block} {block name="description"} {$smarty.block.parent} {if ($input.name == 'groupBox')} @@ -35,4 +58,4 @@ {$input.customer}

{/if} -{/block} \ No newline at end of file +{/block} diff --git a/classes/ObjectModel.php b/classes/ObjectModel.php index 3cc76ce34..c6a57369f 100644 --- a/classes/ObjectModel.php +++ b/classes/ObjectModel.php @@ -1220,12 +1220,12 @@ abstract class ObjectModelCore * * @return bool success */ - public function deleteImage() + public function deleteImage($force_delete = false) { if (!$this->id) return false; - if (!$this->hasMultishopEntries()) + if ($force_delete || !$this->hasMultishopEntries()) { /* Deleting object images and thumbnails (cache) */ if ($this->image_dir) diff --git a/controllers/admin/AdminCategoriesController.php b/controllers/admin/AdminCategoriesController.php index e3873add5..14af56665 100644 --- a/controllers/admin/AdminCategoriesController.php +++ b/controllers/admin/AdminCategoriesController.php @@ -453,6 +453,9 @@ class AdminCategoriesControllerCore extends AdminController 'class' => 'button' ) ); + + $this->tpl_form_vars['shared_category'] = Validate::isLoadedObject($obj) && $obj->hasMultishopEntries(); + if (Shop::isFeatureActive()) $this->fields_form['input'][] = array( 'type' => 'shop', @@ -493,7 +496,25 @@ class AdminCategoriesControllerCore extends AdminController return parent::renderForm(); } - + + public function postProcess() + { + if (Tools::isSubmit('forcedeleteImage')) + { + $this->processForceDeleteImage(); + Tools::redirectAdmin(self::$currentIndex.'&token='.Tools::getAdminTokenLite('AdminCategories').'&conf=7'); + } + + return parent::postProcess(); + } + + public function processForceDeleteImage() + { + $category = $this->loadObject(); + if (Validate::isLoadedObject($category)) + $category->deleteImage(true); + } + public function processAdd() { $id_category = (int)Tools::getValue('id_category');