// fix update view.tpl in AdminCustomerController and Added new helper : HelperView

git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@9908 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
lLefevre
2011-11-05 22:03:08 +00:00
parent ced2e2f229
commit ebadf3e961
6 changed files with 504 additions and 386 deletions
+22 -3
View File
@@ -73,6 +73,7 @@ class AdminControllerCore extends Controller
public $tpl_form_vars = array();
public $tpl_list_vars = array();
public $tpl_view_vars = array();
public $fields_value = false;
@@ -289,6 +290,10 @@ class AdminControllerCore extends Controller
array_pop($tabs);
$tabs[] = array('name' => sprintf($this->l('Add %s'), $this->table));
break;
case 'view':
array_pop($tabs);
$tabs[] = array('name' => sprintf($this->l('View %s'), $this->table));
break;
}
// note : this should use a tpl file
foreach ($tabs AS $key => $item)
@@ -1003,17 +1008,17 @@ class AdminControllerCore extends Controller
// Template override
$tpl = $this->tpl_folder.'content.tpl';
$tpl_action = $this->tpl_folder.$this->display.'.tpl';
//$tpl_action = $this->tpl_folder.$this->display.'.tpl';
// Check if action template has been override
// new smarty : template_dir is an array.
// @todo : add override path to the smarty config, and checking all array item
if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl_action))
/*if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl_action))
{
if (method_exists($this, $this->display.Tools::toCamelCase($this->className)))
$this->{$this->display.Tools::toCamelCase($this->className)}();
$this->context->smarty->assign('content', $this->context->smarty->fetch($tpl_action));
}
}*/
// Check if content template has been override
if (file_exists($this->context->smarty->template_dir[0].'/'.$tpl))
@@ -1332,6 +1337,17 @@ class AdminControllerCore extends Controller
*/
public function initView()
{
if (empty($this->toolbar_title))
$this->initToolbarTitle();
$helper = new HelperView($this);
$helper->override_folder = $this->tpl_folder;
$helper->tpl_vars = $this->tpl_view_vars;
$this->setHelperDisplay($helper);
$view = $helper->generateView();
$this->toolbar_fix = false;
return $view;
}
/**
@@ -1672,7 +1688,10 @@ class AdminControllerCore extends Controller
if (isset($_GET['view'.$this->table]))
{
if ($this->tabAccess['view'] === '1')
{
$this->display = 'view';
$this->action = 'view';
}
else
$this->_errors[] = Tools::displayError('You do not have permission to view here.');
}
-1
View File
@@ -63,7 +63,6 @@ class HelperCore
public function __construct()
{
$this->context = Context::getContext();
}
/*public function setTpl($tpl)
+62
View File
@@ -0,0 +1,62 @@
<?php
/*
* 2007-2011 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2011 PrestaShop SA
* @version Release: $Revision: 9194 $
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
class HelperViewCore extends Helper
{
public $id;
public $toolbar = true;
public $table;
public $token;
/** @var if not null, a title will be added on that list */
public $title = null;
public function __construct()
{
$this->base_folder = 'helper/view/';
$this->base_tpl = 'view.tpl';
parent::__construct();
}
public function generateView()
{
$this->tpl = $this->createTemplate($this->base_tpl);
$this->tpl->assign(array(
'title' => $this->title,
'current' => $this->currentIndex,
'title' => $this->title,
'token' => $this->token,
'table' => $this->table,
'show_toolbar' => $this->show_toolbar,
'toolbar_fix' => $this->toolbar_fix,
'toolbar_btn' => $this->toolbar_btn
));
return parent::generate();
}
}