// Fix HelperUploader images params

This commit is contained in:
Jerome Nadaud
2013-10-25 15:54:53 +02:00
parent 81482df1e5
commit f89c8ed008
5 changed files with 69 additions and 82 deletions
@@ -26,27 +26,33 @@
<div class="form-group"> <div class="form-group">
<div class="col-lg-12"> <div class="col-lg-12">
{foreach $images as $image} {foreach $images as $image}
{if isset($image.image)}
<div class="img-thumbnail text-center"> <div class="img-thumbnail text-center">
{$image} <p>{$image.image}</p>
{if isset($size)}<p>{l s='File size'} {$size}kb</p>{/if} {if isset($image.size)}<p>{l s='File size'} {$image.size}kb</p>{/if}
{if isset($delete_url)} {if isset($image.delete_url)}
<a class="btn btn-default" href="{$delete_url}"> <p>
<a class="btn btn-default" href="{$image.delete_url}">
<i class="icon-trash"></i> {l s='Delete'} <i class="icon-trash"></i> {l s='Delete'}
</a> </a>
</p>
{/if} {/if}
</div> </div>
{/if}
{/foreach} {/foreach}
</div> </div>
</div> </div>
{/if} {/if}
<div class="form-group"> <div class="form-group">
<input id="{$id}" type="file" name="{$name}[]"{if isset($url)} data-url="{$url}"{/if}{if isset($multiple) && $multiple} multiple="multiple"{/if} class="hide" /> <div class="col-lg-12">
<button class="btn btn-default" data-style="expand-right" data-size="s" type="button" id="{$id}-add-button"> <input id="{$id}" type="file" name="{$name}[]"{if isset($url)} data-url="{$url}"{/if}{if isset($multiple) && $multiple} multiple="multiple"{/if} class="hide" />
<i class="icon-plus-sign"></i> {if isset($multiple) && $multiple}{l s='Add files'}{else}{l s='Add file'}{/if} <button class="btn btn-default" data-style="expand-right" data-size="s" type="button" id="{$id}-add-button">
</button> <i class="icon-plus-sign"></i> {if isset($multiple) && $multiple}{l s='Add files'}{else}{l s='Add file'}{/if}
<button class="ladda-button" data-style="expand-right" data-size="s" type="button" id="{$id}-upload-button" style="display:none;"> </button>
<i class="icon-cloud-upload"></i> <span class="ladda-label">{if isset($multiple) && $multiple}{l s='Upload files'}{else}{l s='Upload file'}{/if}</span> <button class="ladda-button" data-style="expand-right" data-size="s" type="button" id="{$id}-upload-button" style="display:none;">
</button> <i class="icon-cloud-upload"></i> <span class="ladda-label">{if isset($multiple) && $multiple}{l s='Upload files'}{else}{l s='Upload file'}{/if}</span>
</button>
</div>
</div> </div>
<div class="row" style="display:none"> <div class="row" style="display:none">
<div class="alert alert-info" id="{$id}-files-list"> <div class="alert alert-info" id="{$id}-files-list">
@@ -81,6 +87,7 @@ $( document ).ready(function() {
previewMaxWidth: 100, previewMaxWidth: 100,
previewMaxHeight: 100, previewMaxHeight: 100,
previewCrop: false, previewCrop: false,
limitMultiFileUploads: 3,
start: function () { start: function () {
upload_button.start(); upload_button.start();
}, },
@@ -22,22 +22,26 @@
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA * International Registered Trademark & Property of PrestaShop SA
*} *}
{if isset($display_image) && $display_image} {if isset($images) && $images}
{if isset($image) && $image} <div class="form-group">
<div class="form-group"> <div class="col-lg-12">
<div class="col-lg-12"> {foreach $images as $image}
<div class="img-thumbnail text-center"> {if isset($image.image)}
{$image} <div class="img-thumbnail text-center">
{if isset($size)}<p>{l s='File size'} {$size}kb</p>{/if} <p>{$image.image}</p>
{if isset($delete_url)} {if isset($image.size)}<p>{l s='File size'} {$image.size}kb</p>{/if}
<a class="btn btn-default" href="{$delete_url}"> {if isset($image.delete_url)}
<i class="icon-trash"></i> {l s='Delete'} <p>
<a class="btn btn-default" href="{$image.delete_url}">
<i class="icon-trash"></i> {l s='Delete'}
</a> </a>
{/if} </p>
</div> {/if}
</div> </div>
{/if}
{/foreach}
</div> </div>
{/if} </div>
{/if} {/if}
{if isset($thumb) && $thumb} {if isset($thumb) && $thumb}
<div class="form-group"> <div class="form-group">
+11 -4
View File
@@ -118,12 +118,19 @@ class HelperFormCore extends Helper
$uploader->setUrl(isset($params['url'])?$params['url']:null); $uploader->setUrl(isset($params['url'])?$params['url']:null);
$uploader->setMultiple(isset($params['multiple'])?$params['multiple']:false); $uploader->setMultiple(isset($params['multiple'])?$params['multiple']:false);
$uploader->setUseAjax(isset($params['ajax'])?$params['ajax']:false); $uploader->setUseAjax(isset($params['ajax'])?$params['ajax']:false);
$uploader->setDisplayImage(isset($params['display_image'])?$params['display_image']:false);
$uploader->setImage(isset($params['image'])?$params['image']:null); if (isset($params['images']))
$uploader->setImages($params['images']);
elseif (isset($params['image'])) // Use for retrocompatibility
$uploader->setImages(array(
0 => array(
'image' => isset($params['image'])?$params['image']:null,
'size' => isset($params['size'])?$params['size']:null,
'delete_url' => isset($params['delete_url'])?$params['delete_url']:null
)));
$uploader->setThumb(isset($params['thumb'])?$params['thumb']:null); $uploader->setThumb(isset($params['thumb'])?$params['thumb']:null);
$uploader->setSize(isset($params['size'])?$params['size']:null);
$uploader->setTitle(isset($params['title'])?$params['title']:null); $uploader->setTitle(isset($params['title'])?$params['title']:null);
$uploader->setDeleteUrl(isset($params['delete_url'])?$params['delete_url']:null);
$params['file'] = $uploader->render(); $params['file'] = $uploader->render();
break; break;
+12 -6
View File
@@ -104,13 +104,19 @@ class HelperOptionsCore extends Helper
$uploader->setUrl(isset($field['url'])?$field['url']:null); $uploader->setUrl(isset($field['url'])?$field['url']:null);
$uploader->setMultiple(isset($field['multiple'])?$field['multiple']:false); $uploader->setMultiple(isset($field['multiple'])?$field['multiple']:false);
$uploader->setUseAjax(isset($field['ajax'])?$field['ajax']:false); $uploader->setUseAjax(isset($field['ajax'])?$field['ajax']:false);
$uploader->setDisplayImage(isset($field['display_image'])?$field['display_image']:false);
$uploader->setImage(isset($field['image'])?$field['image']:null);
$uploader->setThumb(isset($field['thumb'])?$field['thumb']:null);
$uploader->setSize(isset($field['size'])?$field['size']:null);
$uploader->setTitle(isset($field['title'])?$field['title']:null);
$uploader->setDeleteUrl(isset($field['delete_url'])?$field['delete_url']:null);
if (isset($field['images']))
$uploader->setImages($field['images']);
elseif (isset($field['image'])) // Use for retrocompatibility
$uploader->setImages(array(
0 => array(
'image' => isset($field['image'])?$field['image']:null,
'size' => isset($field['size'])?$field['size']:null,
'delete_url' => isset($field['delete_url'])?$field['delete_url']:null
)));
$uploader->setThumb(isset($field['thumb'])?$field['thumb']:null);
$uploader->setTitle(isset($field['title'])?$field['title']:null);
$field['file'] = $uploader->render(); $field['file'] = $uploader->render();
} }
+9 -46
View File
@@ -31,13 +31,10 @@ class HelperUploaderCore extends Uploader
const DEFAULT_AJAX_TEMPLATE = 'ajax.tpl'; const DEFAULT_AJAX_TEMPLATE = 'ajax.tpl';
private $_context; private $_context;
private $_delete_url;
private $_display_image;
private $_id; private $_id;
private $_image; private $_images;
private $_name; private $_name;
private $_multiple; private $_multiple;
private $_size;
protected $_template; protected $_template;
private $_template_directory; private $_template_directory;
private $_title; private $_title;
@@ -59,23 +56,6 @@ class HelperUploaderCore extends Uploader
return $this->_context; return $this->_context;
} }
public function setDeleteUrl($value)
{
$this->_delete_url = $value;
return $this;
}
public function getDeleteUrl()
{
return $this->_delete_url;
}
public function setDisplayImage($value)
{
$this->_display_image = $value;
return $this;
}
public function setId($value) public function setId($value)
{ {
$this->_id = (string)$value; $this->_id = (string)$value;
@@ -90,15 +70,18 @@ class HelperUploaderCore extends Uploader
return $this->_id; return $this->_id;
} }
public function setImage($value) public function setImages($value)
{ {
$this->_image = $value; $this->_images = $value;
return $this; return $this;
} }
public function getImage() public function getImages()
{ {
return $this->_image; if (!isset($this->_images))
$this->_images = array();
return $this->_images;
} }
public function setName($value) public function setName($value)
@@ -118,17 +101,6 @@ class HelperUploaderCore extends Uploader
return $this; return $this;
} }
public function setSize($value)
{
$this->_size = $value;
return $this;
}
public function getSize()
{
return $this->_size;
}
public function setTemplate($value) public function setTemplate($value)
{ {
$this->_template = $value; $this->_template = $value;
@@ -234,11 +206,6 @@ class HelperUploaderCore extends Uploader
return $this; return $this;
} }
public function displayImage()
{
return (isset($this->_display_image) && $this->_display_image);
}
public function isMultiple() public function isMultiple()
{ {
return (isset($this->_multiple) && $this->_multiple); return (isset($this->_multiple) && $this->_multiple);
@@ -285,7 +252,6 @@ class HelperUploaderCore extends Uploader
$this->getContext()->controller->addJs(__PS_BASE_URI__.'/js/vendor/spin.js'); $this->getContext()->controller->addJs(__PS_BASE_URI__.'/js/vendor/spin.js');
$this->getContext()->controller->addJs(__PS_BASE_URI__.'/js/vendor/ladda.js'); $this->getContext()->controller->addJs(__PS_BASE_URI__.'/js/vendor/ladda.js');
} }
if ($this->useAjax()) if ($this->useAjax())
@@ -300,11 +266,8 @@ class HelperUploaderCore extends Uploader
'name' => $this->getName(), 'name' => $this->getName(),
'url' => $this->getUrl(), 'url' => $this->getUrl(),
'multiple' => $this->isMultiple(), 'multiple' => $this->isMultiple(),
'display_image' => $this->displayImage(), 'images' => $this->getImages(),
'image' => $this->getImage(),
'thumb' => $this->getThumb(), 'thumb' => $this->getThumb(),
'size' => $this->getSize(),
'delete_url' => $this->getDeleteUrl(),
'title' => $this->getTitle() 'title' => $this->getTitle()
)); ));