Jump to content

"El controlador no encontrado" al intentar acceder a Preferencias>Cms


nadinnecas

Recommended Posts

Hola de nuevo, uso Prestashop 1.6 plantilla por defecto desde hace unos meses y todo bien hasta hoy, que cuando intento acceder a Preferencias>Cms me sale el siguiente error "El controlador no encontrado"  , he buscado por el foro y por las web y no he encontrado nada ¿alguien me puede ayudar??

Gracias de antemano, Nadinne.

post-784445-0-52032000-1413397018_thumb.png

Link to comment
Share on other sites

Indique su versión de Prestashop

 

Indique si ha probado (antes por supuesto hacer un backup de los directorio /classes/ y /controllers/ por si acaso) y bajarte prestashop  (tu version) y resubir esos directorios.

 

Indique si en la pestaña Administración -> Menus al hacer click en la pestaña Preferencias, donde se te despliegan las subpestañas de Preferencias, y editar la subpestaña:

CMS

Tienes su ficha de edición asi:

Nombre: CMS
Clase: AdminCmsContent
Módulo: 
Link to comment
Share on other sites

 

Indique su versión de Prestashop

 

Indique si ha probado (antes por supuesto hacer un backup de los directorio /classes/ y /controllers/ por si acaso) y bajarte prestashop  (tu version) y resubir esos directorios.

 

Indique si en la pestaña Administración -> Menus al hacer click en la pestaña Preferencias, donde se te despliegan las subpestañas de Preferencias, y editar la subpestaña:

CMS

Tienes su ficha de edición asi:

Nombre: CMS
Clase: AdminCmsContent
Módulo: 

 

Y por supuesto, verifica que tengas el fichero:

/controllers/admin/AdminCmsContentController.php

Si no lo tienes, pues subelo.

 

Este:

<?php
/*
* 2007-2014 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 [email protected] 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 <[email protected]>
*  @copyright  2007-2014 PrestaShop SA
*  @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*/

class AdminCmsContentControllerCore extends AdminController
{
	/** @var object adminCMSCategories() instance */
	protected $admin_cms_categories;

	/** @var object adminCMS() instance */
	protected $admin_cms;

	/** @var object Category() instance for navigation*/
	protected static $category = null;

	public function __construct()
	{
		$this->bootstrap = true;
		/* Get current category */
		$id_cms_category = (int)Tools::getValue('id_cms_category', Tools::getValue('id_cms_category_parent', 1));
		self::$category = new CMSCategory($id_cms_category);
		if (!Validate::isLoadedObject(self::$category))
			die('Category cannot be loaded');

		$this->table = 'cms';
		$this->className = 'CMS';
				$this->bulk_actions = array(
			'delete' => array(
				'text' => $this->l('Delete selected'),
				'confirm' => $this->l('Delete selected items?'),
				'icon' => 'icon-trash'
			)
		);
		$this->admin_cms_categories = new AdminCmsCategoriesController();
		$this->admin_cms_categories->init();
		$this->admin_cms = new AdminCmsController();
		$this->admin_cms->init();

		parent::__construct();
	}

	/**
	 * Return current category
	 *
	 * @return object
	 */
	public static function getCurrentCMSCategory()
	{
		return self::$category;
	}

	public function viewAccess($disable = false)
	{
		$result = parent::viewAccess($disable);
		$this->admin_cms_categories->tabAccess = $this->tabAccess;
		$this->admin_cms->tabAccess = $this->tabAccess;
		return $result;
	}

	public function initContent()
	{
		$this->initTabModuleList();
		$this->renderPageHeaderToolbar();
		
		$this->admin_cms_categories->token = $this->token;
		$this->admin_cms->token = $this->token;

		if ($this->display == 'edit_category')
			$this->content .= $this->admin_cms_categories->renderForm();
		else if ($this->display == 'edit_page')
			$this->content .= $this->admin_cms->renderForm();
		else if ($this->display == 'view_page')
			$fixme = 'fixme';// @FIXME
		else
		{
			$id_cms_category = (int)Tools::getValue('id_cms_category');
			if (!$id_cms_category)
				$id_cms_category = 1;

			// CMS categories breadcrumb
			$cms_tabs = array('cms_category', 'cms');
			// Cleaning links
			$cat_bar_index = self::$currentIndex;
			foreach ($cms_tabs as $tab)
				if (Tools::getValue($tab.'Orderby') && Tools::getValue($tab.'Orderway'))
					$cat_bar_index = preg_replace('/&'.$tab.'Orderby=([a-z _]*)&'.$tab.'Orderway=([a-z]*)/i', '', self::$currentIndex);
			$this->context->smarty->assign(array(
				'cms_breadcrumb' => getPath($cat_bar_index, $id_cms_category, '', '', 'cms'),
				'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
				'page_header_toolbar_title' => $this->toolbar_title,
			));
			
			$this->content .= $this->admin_cms_categories->renderList();
			$this->admin_cms->id_cms_category = $id_cms_category;
			$this->content .= $this->admin_cms->renderList();
			
		}

		$this->context->smarty->assign(array(
			'content' => $this->content
		));
	}

	public function renderPageHeaderToolbar()
	{
		$id_cms_category = (int)Tools::getValue('id_cms_category');
		$id_cms_page = Tools::getValue('id_cms');

		if (!$id_cms_category)
			$id_cms_category = 1;

		$cms_category = new CMSCategory($id_cms_category);

		if ($this->display == 'edit_category')
		{
			if (Tools::getValue('addcms_category') !== false)
				$this->toolbar_title[] = $this->l('Add new');
			else
				$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_category->name[$this->context->employee->id_lang]);
		}
		elseif ($this->display == 'edit_page')
		{
			$this->toolbar_title[] = $cms_category->name[$this->context->employee->id_lang];

			if (Tools::getValue('addcms') !== false)
				$this->toolbar_title[] = $this->l('Add new');
			elseif ($id_cms_page)
			{
				$cms_page = new CMS($id_cms_page);
				$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_page->meta_title[$this->context->employee->id_lang]);
			}
		}
		else
			$this->toolbar_title[] = $this->l('CMS');

		if ($this->display == 'list')
		{
			$this->page_header_toolbar_btn['new_cms_category'] = array(
				'href' => self::$currentIndex.'&addcms_category&token='.$this->token,
				'desc' => $this->l('Add new CMS category', null, null, false),
				'icon' => 'process-icon-new'
			);
			$this->page_header_toolbar_btn['new_cms_page'] = array(
				'href' => self::$currentIndex.'&addcms&id_cms_category='.(int)$id_cms_category.'&token='.$this->token,
				'desc' => $this->l('Add new CMS page', null, null, false),
				'icon' => 'process-icon-new'
			);
		}

		$this->page_header_toolbar_title = implode(' '.Configuration::get('PS_NAVIGATION_PIPE').' ', $this->toolbar_title);

		if (is_array($this->page_header_toolbar_btn)
			&& $this->page_header_toolbar_btn instanceof Traversable
			|| trim($this->page_header_toolbar_title) != '')
			$this->show_page_header_toolbar = true;

		$template = $this->context->smarty->createTemplate(
			$this->context->smarty->getTemplateDir(0).DIRECTORY_SEPARATOR
			.'page_header_toolbar.tpl', $this->context->smarty);

		$this->context->smarty->assign(array(
			'show_page_header_toolbar' => $this->show_page_header_toolbar,
			'title' => $this->page_header_toolbar_title,
			'toolbar_btn' => $this->page_header_toolbar_btn,
			'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
			'page_header_toolbar_title' => $this->toolbar_title,
		));
	}

	public function postProcess()
	{
		/*if (Tools::isSubmit('submitDelcms')
			|| Tools::isSubmit('previewSubmitAddcmsAndPreview')
			|| Tools::isSubmit('submitAddcms')
            || Tools::isSubmit('submitBulkdeletecms')
			|| Tools::isSubmit('deletecms')
			|| Tools::isSubmit('viewcms')
			|| (Tools::isSubmit('statuscms') && Tools::isSubmit('id_cms'))
			|| (Tools::isSubmit('way') && Tools::isSubmit('id_cms')) && (Tools::isSubmit('position'))
			|| Tools::isSubmit('submitFiltercms')
			|| $this->context->cookie->{'submitFiltercms'} !== false
			|| Tools::getValue('cmsOrderby')
			|| Tools::getValue('cmsOrderway'))*/
			$this->admin_cms->postProcess();
		/*elseif (Tools::isSubmit('submitDelcms_category')
			|| Tools::isSubmit('submitAddcms_categoryAndBackToParent')
			|| Tools::isSubmit('submitBulkdeletecms_category')
			|| Tools::isSubmit('submitAddcms_category')
			|| Tools::isSubmit('deletecms_category')
			|| (Tools::isSubmit('statuscms_category') && Tools::isSubmit('id_cms_category'))
			|| (Tools::isSubmit('position') && Tools::isSubmit('id_cms_category_to_move'))
			|| Tools::isSubmit('submitFiltercms_category')
			|| $this->context->cookie->{'submitFiltercms_category'} !== false
			|| Tools::getValue('cms_categoryOrderby')
			|| Tools::getValue('cms_categoryOrderway'))*/
				$this->admin_cms_categories->postProcess();
      //else
        	parent::postProcess();

		if (((Tools::isSubmit('submitAddcms_category') || Tools::isSubmit('submitAddcms_categoryAndStay')) && count($this->admin_cms_categories->errors))
			|| Tools::isSubmit('updatecms_category')
			|| Tools::isSubmit('addcms_category'))
			$this->display = 'edit_category';
		else if (((Tools::isSubmit('submitAddcms') || Tools::isSubmit('submitAddcmsAndStay')) && count($this->admin_cms->errors))
			|| Tools::isSubmit('updatecms')
			|| Tools::isSubmit('addcms'))
			$this->display = 'edit_page';
		else
		{
			$this->display = 'list';
			$this->id_cms_category = (int)Tools::getValue('id_cms_category');
		}

		if (isset($this->admin_cms->errors))
			$this->errors = array_merge($this->errors, $this->admin_cms->errors);

		if (isset($this->admin_cms_categories->errors))
			$this->errors = array_merge($this->errors, $this->admin_cms_categories->errors);
	}

	public function setMedia()
	{
		parent::setMedia();
		$this->addJqueryUi('ui.widget');
		$this->addJqueryPlugin('tagify');
	}

	public function ajaxProcessUpdateCmsPositions()
	{
		if ($this->tabAccess['edit'] === '1')
		{
			$id_cms = (int)Tools::getValue('id_cms');
			$id_category = (int)Tools::getValue('id_cms_category');
			$way = (int)Tools::getValue('way');
			$positions = Tools::getValue('cms');
			if (is_array($positions))
				foreach ($positions as $key => $value)
				{
					$pos = explode('_', $value);
					if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_category && $pos[2] == $id_cms))
					{
						$position = $key;
						break;
					}
				}
			$cms = new CMS($id_cms);
			if (Validate::isLoadedObject($cms))
			{
				if (isset($position) && $cms->updatePosition($way, $position))
					die(true);
				else
					die('{"hasError" : true, "errors" : "Can not update cms position"}');
			}
			else
				die('{"hasError" : true, "errors" : "This cms can not be loaded"}');
		}
	}

	public function ajaxProcessUpdateCmsCategoriesPositions()
	{
		if ($this->tabAccess['edit'] === '1')
		{
			$id_cms_category_to_move = (int)Tools::getValue('id_cms_category_to_move');
			$id_cms_category_parent = (int)Tools::getValue('id_cms_category_parent');
			$way = (int)Tools::getValue('way');
			$positions = Tools::getValue('cms_category');
			if (is_array($positions))
				foreach ($positions as $key => $value)
				{
					$pos = explode('_', $value);
					if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_cms_category_parent && $pos[2] == $id_cms_category_to_move))
					{
						$position = $key;
						break;
					}
				}
			$cms_category = new CMSCategory($id_cms_category_to_move);
			if (Validate::isLoadedObject($cms_category))
			{
				if (isset($position) && $cms_category->updatePosition($way, $position))
					die(true);
				else
					die('{"hasError" : true, "errors" : "Can not update cms categories position"}');
			}
			else
				die('{"hasError" : true, "errors" : "This cms category can not be loaded"}');
		}
	}

	public function ajaxProcessPublishCMS()
	{
		if ($this->tabAccess['edit'] === '1')
		{
			if ($id_cms = (int)Tools::getValue('id_cms'))
			{
				$bo_cms_url = _PS_BASE_URL_.__PS_BASE_URI__.basename(_PS_ADMIN_DIR_).'/index.php?tab=AdminCmsContent&id_cms='.(int)$id_cms.'&updatecms&token='.$this->token;

				if (Tools::getValue('redirect'))
					die($bo_cms_url);

				$cms = new CMS((int)(Tools::getValue('id_cms')));
				if (!Validate::isLoadedObject($cms))
					die('error: invalid id');

				$cms->active = 1;
				if ($cms->save())
					die($bo_cms_url);
				else
					die('error: saving');
			}
			else
				die ('error: parameters');
		}
	}

}

es su contenido en la 1.6.0.9.

 

Pero vamos tambien puedes bajar el fichero de tu versión http://www.prestashop.com/es/versiones-para-programadores y subirlo..

Link to comment
Share on other sites

Hola, gracias por la ayuda, uso la versión 1.60.6 , lo que me dices lo he hecho con el directorio controllers pero no en el classes, voy a probar ahora.

Lo que no acabo de entender es lo ultimo que me pides, a que te refieres??

Vamos a ir por partes, primero revisa lo ultimo que te he comentado.

 

¿Existe este fichero:

/controllers/admin/AdminCmsContentController.php

en tu tienda?

Link to comment
Share on other sites

el override no lo he subido, voy a subirlo

En el override, poco puedes resubir, porque por defecto creo recordar que solo vienen carpetas vacias, otra cosa es que tengas algun override instalado de algun modulo.

 

¿Y esto siempre te ha pasado u desde cuando? (Lo digo para descartar que no sea algun bug determinado de la 1.6.0.6, aunque me extrañaria?

 

¿Lo de la pestaña Administración -> Menu, que te comente lo revisastes?

Edited by nadie (see edit history)
Link to comment
Share on other sites

esto me pasa desde ayer antes iba bien y lo de  pestaña Administración -> Menu no lo entiendo, me lo puedes aclarar?

Administración -> Menus, te aparecerá el listado de los menus, haz click sobre el que dice:

 

Preferencias
y te saldra un listado de las subpestañas de Preferencias.

 

Cuando te salgan, busca la que dice "CMS" haz clic en editar y dime lo que te aparece en el formulario.

Link to comment
Share on other sites

ahora lo veo, hay 2 cms y los 2 al abrirlos me sala la imagen que te adjunto

Veo 2, uno el original y otro del modulo homesliderpro

 

En los dos, haz click en el boton de modificar, y te aparecera un formulario muy pequeñito, adjuntame imagenes.

 

¿Esto te ha pasado a partir de instalar el modulo: homesliderpro xD? 

Link to comment
Share on other sites

creo que si lo instalé aunque no se si se llamaba exactamente asi

entrando a los 2 me sale la imagen "princio" y haciendo mucho croll hacia abajo me sale en el primer cms las imagen "1º cms" y en el segundo cms me sale la imagen "2º cms"

jejeje, pero yo no quiero ver el desplegable, quiero ver el resto de datos xD

Link to comment
Share on other sites

disculpa, jejeje te pego lo que sale en el primer cms

 

* 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 [email protected] 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 <[email protected]>
* @copyright 2007-2014 PrestaShop SA
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/

class AdminCmsContentControllerCore extends AdminController
{
/** @var object adminCMSCategories() instance */
protected $admin_cms_categories;

/** @var object adminCMS() instance */
protected $admin_cms;

/** @var object Category() instance for navigation*/
protected static $category = null;

public function __construct()
{
$this->bootstrap = true;
/* Get current category */
$id_cms_category = (int)Tools::getValue('id_cms_category', Tools::getValue('id_cms_category_parent', 1));
self::$category = new CMSCategory($id_cms_category);
if (!Validate::isLoadedObject(self::$category))
die('Category cannot be loaded');

$this->table = 'cms';
$this->className = 'CMS';
$this->bulk_actions = array(
'delete' => array(
'text' => $this->l('Delete selected'),
'confirm' => $this->l('Delete selected items?'),
'icon' => 'icon-trash'
)
);
$this->admin_cms_categories = new AdminCmsCategoriesController();
$this->admin_cms_categories->init();
$this->admin_cms = new AdminCmsController();
$this->admin_cms->init();

parent::__construct();
}

/**
* Return current category
*
* @return object
*/
public static function getCurrentCMSCategory()
{
return self::$category;
}

public function viewAccess($disable = false)
{
$result = parent::viewAccess($disable);
$this->admin_cms_categories->tabAccess = $this->tabAccess;
$this->admin_cms->tabAccess = $this->tabAccess;
return $result;
}

public function initContent()
{
$this->initTabModuleList();
$this->content .= $this->renderPageHeaderToolbar();

$this->admin_cms_categories->token = $this->token;
$this->admin_cms->token = $this->token;

if ($this->display == 'edit_category')
$this->content .= $this->admin_cms_categories->renderForm();
else if ($this->display == 'edit_page')
$this->content .= $this->admin_cms->renderForm();
else if ($this->display == 'view_page')
$fixme = 'fixme';// @FIXME
else
{
$id_cms_category = (int)Tools::getValue('id_cms_category');
if (!$id_cms_category)
$id_cms_category = 1;

// CMS categories breadcrumb
$cms_tabs = array('cms_category', 'cms');
// Cleaning links
$cat_bar_index = self::$currentIndex;
foreach ($cms_tabs as $tab)
if (Tools::getValue($tab.'Orderby') && Tools::getValue($tab.'Orderway'))
$cat_bar_index = preg_replace('/&'.$tab.'Orderby=([a-z _]*)&'.$tab.'Orderway=([a-z]*)/i', '', self::$currentIndex);
$this->context->smarty->assign(array(
'cms_breadcrumb' => getPath($cat_bar_index, $id_cms_category, '', '', 'cms'),
'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_title' => $this->toolbar_title,
));

$this->content .= $this->admin_cms_categories->renderList();
$this->admin_cms->id_cms_category = $id_cms_category;
$this->content .= $this->admin_cms->renderList();

}

$this->context->smarty->assign(array(
'content' => $this->content
));
}

public function renderPageHeaderToolbar()
{
$id_cms_category = (int)Tools::getValue('id_cms_category');
$id_cms_page = Tools::getValue('id_cms');

if (!$id_cms_category)
$id_cms_category = 1;

$cms_category = new CMSCategory($id_cms_category);

if ($this->display == 'edit_category')
{
if (Tools::getValue('addcms_category') !== false)
$this->toolbar_title[] = $this->l('Add new');
else
$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_category->name[$this->context->employee->id_lang]);
}
elseif ($this->display == 'edit_page')
{
$this->toolbar_title[] = $cms_category->name[$this->context->employee->id_lang];

if (Tools::getValue('addcms') !== false)
$this->toolbar_title[] = $this->l('Add new');
elseif ($id_cms_page)
{
$cms_page = new CMS($id_cms_page);
$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_page->meta_title[$this->context->employee->id_lang]);
}
}
else
$this->toolbar_title[] = $this->l('CMS');

if ($this->display == 'list')
{
$this->page_header_toolbar_btn['new_cms_category'] = array(
'href' => self::$currentIndex.'&addcms_category&token='.$this->token,
'desc' => $this->l('Add new CMS category', null, null, false),
'icon' => 'process-icon-new'
);
$this->page_header_toolbar_btn['new_cms_page'] = array(
'href' => self::$currentIndex.'&addcms&id_cms_category='.(int)$id_cms_category.'&token='.$this->token,
'desc' => $this->l('Add new CMS page', null, null, false),
'icon' => 'process-icon-new'
);
}

$this->page_header_toolbar_title = implode(' '.Configuration::get('PS_NAVIGATION_PIPE').' ', $this->toolbar_title);

if (is_array($this->page_header_toolbar_btn)
&& $this->page_header_toolbar_btn instanceof Traversable
|| trim($this->page_header_toolbar_title) != '')
$this->show_page_header_toolbar = true;

$template = $this->context->smarty->createTemplate(
$this->context->smarty->getTemplateDir(0).DIRECTORY_SEPARATOR
.'page_header_toolbar.tpl', $this->context->smarty);

$this->context->smarty->assign(array(
'show_page_header_toolbar' => $this->show_page_header_toolbar,
'title' => $this->page_header_toolbar_title,
'toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_title' => $this->toolbar_title,
));

return $template->fetch();
}

public function postProcess()
{
/*if (Tools::isSubmit('submitDelcms')
|| Tools::isSubmit('previewSubmitAddcmsAndPreview')
|| Tools::isSubmit('submitAddcms')
|| Tools::isSubmit('submitBulkdeletecms')
|| Tools::isSubmit('deletecms')
|| Tools::isSubmit('viewcms')
|| (Tools::isSubmit('statuscms') && Tools::isSubmit('id_cms'))
|| (Tools::isSubmit('way') && Tools::isSubmit('id_cms')) && (Tools::isSubmit('position'))
|| Tools::isSubmit('submitFiltercms')
|| $this->context->cookie->{'submitFiltercms'} !== false
|| Tools::getValue('cmsOrderby')
|| Tools::getValue('cmsOrderway'))*/
$this->admin_cms->postProcess();
/*elseif (Tools::isSubmit('submitDelcms_category')
|| Tools::isSubmit('submitAddcms_categoryAndBackToParent')
|| Tools::isSubmit('submitBulkdeletecms_category')
|| Tools::isSubmit('submitAddcms_category')
|| Tools::isSubmit('deletecms_category')
|| (Tools::isSubmit('statuscms_category') && Tools::isSubmit('id_cms_category'))
|| (Tools::isSubmit('position') && Tools::isSubmit('id_cms_category_to_move'))
|| Tools::isSubmit('submitFiltercms_category')
|| $this->context->cookie->{'submitFiltercms_category'} !== false
|| Tools::getValue('cms_categoryOrderby')
|| Tools::getValue('cms_categoryOrderway'))*/
$this->admin_cms_categories->postProcess();
//else
parent::postProcess();

if (((Tools::isSubmit('submitAddcms_category') || Tools::isSubmit('submitAddcms_categoryAndStay')) && count($this->admin_cms_categories->errors))
|| Tools::isSubmit('updatecms_category')
|| Tools::isSubmit('addcms_category'))
$this->display = 'edit_category';
else if (((Tools::isSubmit('submitAddcms') || Tools::isSubmit('submitAddcmsAndStay')) && count($this->admin_cms->errors))
|| Tools::isSubmit('updatecms')
|| Tools::isSubmit('addcms'))
$this->display = 'edit_page';
else
{
$this->display = 'list';
$this->id_cms_category = (int)Tools::getValue('id_cms_category');
}

if (isset($this->admin_cms->errors))
$this->errors = array_merge($this->errors, $this->admin_cms->errors);

if (isset($this->admin_cms_categories->errors))
$this->errors = array_merge($this->errors, $this->admin_cms_categories->errors);
}

public function setMedia()
{
parent::setMedia();
$this->addJqueryUi('ui.widget');
$this->addJqueryPlugin('tagify');
}

public function ajaxProcessUpdateCmsPositions()
{
if ($this->tabAccess['edit'] === '1')
{
$id_cms = (int)Tools::getValue('id_cms');
$id_category = (int)Tools::getValue('id_cms_category');
$way = (int)Tools::getValue('way');
$positions = Tools::getValue('cms');
if (is_array($positions))
foreach ($positions as $key => $value)
{
$pos = explode('_', $value);
if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_category && $pos[2] == $id_cms))
{
$position = $key;
break;
}
}
$cms = new CMS($id_cms);
if (Validate::isLoadedObject($cms))
{
if (isset($position) && $cms->updatePosition($way, $position))
die(true);
else
die('{"hasError" : true, "errors" : "Can not update cms position"}');
}
else
die('{"hasError" : true, "errors" : "This cms can not be loaded"}');
}
}

public function ajaxProcessUpdateCmsCategoriesPositions()
{
if ($this->tabAccess['edit'] === '1')
{
$id_cms_category_to_move = (int)Tools::getValue('id_cms_category_to_move');
$id_cms_category_parent = (int)Tools::getValue('id_cms_category_parent');
$way = (int)Tools::getValue('way');
$positions = Tools::getValue('cms_category');
if (is_array($positions))
foreach ($positions as $key => $value)
{
$pos = explode('_', $value);
if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_cms_category_parent && $pos[2] == $id_cms_category_to_move))
{
$position = $key;
break;
}
}
$cms_category = new CMSCategory($id_cms_category_to_move);
if (Validate::isLoadedObject($cms_category))
{
if (isset($position) && $cms_category->updatePosition($way, $position))
die(true);
else
die('{"hasError" : true, "errors" : "Can not update cms categories position"}');
}
else
die('{"hasError" : true, "errors" : "This cms category can not be loaded"}');
}
}

public function ajaxProcessPublishCMS()
{
if ($this->tabAccess['edit'] === '1')
{
if ($id_cms = (int)Tools::getValue('id_cms'))
{
$bo_cms_url = _PS_BASE_URL_.__PS_BASE_URI__.basename(_PS_ADMIN_DIR_).'/index.php?tab=AdminCmsContent&id_cms='.(int)$id_cms.'&updatecms&token='.$this->token;

if (Tools::getValue('redirect'))
die($bo_cms_url);

$cms = new CMS((int)(Tools::getValue('id_cms')));
if (!Validate::isLoadedObject($cms))
die('error: invalid id');

$cms->active = 1;
if ($cms->save())
die($bo_cms_url);
else
die('error: saving');
}
else
die ('error: parameters');
}
}

}

 
 
y esto en el segundo cms
 

* 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 [email protected] 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 <[email protected]>
* @copyright 2007-2014 PrestaShop SA
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/

class AdminCmsContentControllerCore extends AdminController
{
/** @var object adminCMSCategories() instance */
protected $admin_cms_categories;

/** @var object adminCMS() instance */
protected $admin_cms;

/** @var object Category() instance for navigation*/
protected static $category = null;

public function __construct()
{
$this->bootstrap = true;
/* Get current category */
$id_cms_category = (int)Tools::getValue('id_cms_category', Tools::getValue('id_cms_category_parent', 1));
self::$category = new CMSCategory($id_cms_category);
if (!Validate::isLoadedObject(self::$category))
die('Category cannot be loaded');

$this->table = 'cms';
$this->className = 'CMS';
$this->bulk_actions = array(
'delete' => array(
'text' => $this->l('Delete selected'),
'confirm' => $this->l('Delete selected items?'),
'icon' => 'icon-trash'
)
);
$this->admin_cms_categories = new AdminCmsCategoriesController();
$this->admin_cms_categories->init();
$this->admin_cms = new AdminCmsController();
$this->admin_cms->init();

parent::__construct();
}

/**
* Return current category
*
* @return object
*/
public static function getCurrentCMSCategory()
{
return self::$category;
}

public function viewAccess($disable = false)
{
$result = parent::viewAccess($disable);
$this->admin_cms_categories->tabAccess = $this->tabAccess;
$this->admin_cms->tabAccess = $this->tabAccess;
return $result;
}

public function initContent()
{
$this->initTabModuleList();
$this->content .= $this->renderPageHeaderToolbar();

$this->admin_cms_categories->token = $this->token;
$this->admin_cms->token = $this->token;

if ($this->display == 'edit_category')
$this->content .= $this->admin_cms_categories->renderForm();
else if ($this->display == 'edit_page')
$this->content .= $this->admin_cms->renderForm();
else if ($this->display == 'view_page')
$fixme = 'fixme';// @FIXME
else
{
$id_cms_category = (int)Tools::getValue('id_cms_category');
if (!$id_cms_category)
$id_cms_category = 1;

// CMS categories breadcrumb
$cms_tabs = array('cms_category', 'cms');
// Cleaning links
$cat_bar_index = self::$currentIndex;
foreach ($cms_tabs as $tab)
if (Tools::getValue($tab.'Orderby') && Tools::getValue($tab.'Orderway'))
$cat_bar_index = preg_replace('/&'.$tab.'Orderby=([a-z _]*)&'.$tab.'Orderway=([a-z]*)/i', '', self::$currentIndex);
$this->context->smarty->assign(array(
'cms_breadcrumb' => getPath($cat_bar_index, $id_cms_category, '', '', 'cms'),
'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_title' => $this->toolbar_title,
));

$this->content .= $this->admin_cms_categories->renderList();
$this->admin_cms->id_cms_category = $id_cms_category;
$this->content .= $this->admin_cms->renderList();

}

$this->context->smarty->assign(array(
'content' => $this->content
));
}

public function renderPageHeaderToolbar()
{
$id_cms_category = (int)Tools::getValue('id_cms_category');
$id_cms_page = Tools::getValue('id_cms');

if (!$id_cms_category)
$id_cms_category = 1;

$cms_category = new CMSCategory($id_cms_category);

if ($this->display == 'edit_category')
{
if (Tools::getValue('addcms_category') !== false)
$this->toolbar_title[] = $this->l('Add new');
else
$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_category->name[$this->context->employee->id_lang]);
}
elseif ($this->display == 'edit_page')
{
$this->toolbar_title[] = $cms_category->name[$this->context->employee->id_lang];

if (Tools::getValue('addcms') !== false)
$this->toolbar_title[] = $this->l('Add new');
elseif ($id_cms_page)
{
$cms_page = new CMS($id_cms_page);
$this->toolbar_title[] = sprintf($this->l('Edit: %s'), $cms_page->meta_title[$this->context->employee->id_lang]);
}
}
else
$this->toolbar_title[] = $this->l('CMS');

if ($this->display == 'list')
{
$this->page_header_toolbar_btn['new_cms_category'] = array(
'href' => self::$currentIndex.'&addcms_category&token='.$this->token,
'desc' => $this->l('Add new CMS category', null, null, false),
'icon' => 'process-icon-new'
);
$this->page_header_toolbar_btn['new_cms_page'] = array(
'href' => self::$currentIndex.'&addcms&id_cms_category='.(int)$id_cms_category.'&token='.$this->token,
'desc' => $this->l('Add new CMS page', null, null, false),
'icon' => 'process-icon-new'
);
}

$this->page_header_toolbar_title = implode(' '.Configuration::get('PS_NAVIGATION_PIPE').' ', $this->toolbar_title);

if (is_array($this->page_header_toolbar_btn)
&& $this->page_header_toolbar_btn instanceof Traversable
|| trim($this->page_header_toolbar_title) != '')
$this->show_page_header_toolbar = true;

$template = $this->context->smarty->createTemplate(
$this->context->smarty->getTemplateDir(0).DIRECTORY_SEPARATOR
.'page_header_toolbar.tpl', $this->context->smarty);

$this->context->smarty->assign(array(
'show_page_header_toolbar' => $this->show_page_header_toolbar,
'title' => $this->page_header_toolbar_title,
'toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_btn' => $this->page_header_toolbar_btn,
'page_header_toolbar_title' => $this->toolbar_title,
));

return $template->fetch();
}

public function postProcess()
{
/*if (Tools::isSubmit('submitDelcms')
|| Tools::isSubmit('previewSubmitAddcmsAndPreview')
|| Tools::isSubmit('submitAddcms')
|| Tools::isSubmit('submitBulkdeletecms')
|| Tools::isSubmit('deletecms')
|| Tools::isSubmit('viewcms')
|| (Tools::isSubmit('statuscms') && Tools::isSubmit('id_cms'))
|| (Tools::isSubmit('way') && Tools::isSubmit('id_cms')) && (Tools::isSubmit('position'))
|| Tools::isSubmit('submitFiltercms')
|| $this->context->cookie->{'submitFiltercms'} !== false
|| Tools::getValue('cmsOrderby')
|| Tools::getValue('cmsOrderway'))*/
$this->admin_cms->postProcess();
/*elseif (Tools::isSubmit('submitDelcms_category')
|| Tools::isSubmit('submitAddcms_categoryAndBackToParent')
|| Tools::isSubmit('submitBulkdeletecms_category')
|| Tools::isSubmit('submitAddcms_category')
|| Tools::isSubmit('deletecms_category')
|| (Tools::isSubmit('statuscms_category') && Tools::isSubmit('id_cms_category'))
|| (Tools::isSubmit('position') && Tools::isSubmit('id_cms_category_to_move'))
|| Tools::isSubmit('submitFiltercms_category')
|| $this->context->cookie->{'submitFiltercms_category'} !== false
|| Tools::getValue('cms_categoryOrderby')
|| Tools::getValue('cms_categoryOrderway'))*/
$this->admin_cms_categories->postProcess();
//else
parent::postProcess();

if (((Tools::isSubmit('submitAddcms_category') || Tools::isSubmit('submitAddcms_categoryAndStay')) && count($this->admin_cms_categories->errors))
|| Tools::isSubmit('updatecms_category')
|| Tools::isSubmit('addcms_category'))
$this->display = 'edit_category';
else if (((Tools::isSubmit('submitAddcms') || Tools::isSubmit('submitAddcmsAndStay')) && count($this->admin_cms->errors))
|| Tools::isSubmit('updatecms')
|| Tools::isSubmit('addcms'))
$this->display = 'edit_page';
else
{
$this->display = 'list';
$this->id_cms_category = (int)Tools::getValue('id_cms_category');
}

if (isset($this->admin_cms->errors))
$this->errors = array_merge($this->errors, $this->admin_cms->errors);

if (isset($this->admin_cms_categories->errors))
$this->errors = array_merge($this->errors, $this->admin_cms_categories->errors);
}

public function setMedia()
{
parent::setMedia();
$this->addJqueryUi('ui.widget');
$this->addJqueryPlugin('tagify');
}

public function ajaxProcessUpdateCmsPositions()
{
if ($this->tabAccess['edit'] === '1')
{
$id_cms = (int)Tools::getValue('id_cms');
$id_category = (int)Tools::getValue('id_cms_category');
$way = (int)Tools::getValue('way');
$positions = Tools::getValue('cms');
if (is_array($positions))
foreach ($positions as $key => $value)
{
$pos = explode('_', $value);
if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_category && $pos[2] == $id_cms))
{
$position = $key;
break;
}
}
$cms = new CMS($id_cms);
if (Validate::isLoadedObject($cms))
{
if (isset($position) && $cms->updatePosition($way, $position))
die(true);
else
die('{"hasError" : true, "errors" : "Can not update cms position"}');
}
else
die('{"hasError" : true, "errors" : "This cms can not be loaded"}');
}
}

public function ajaxProcessUpdateCmsCategoriesPositions()
{
if ($this->tabAccess['edit'] === '1')
{
$id_cms_category_to_move = (int)Tools::getValue('id_cms_category_to_move');
$id_cms_category_parent = (int)Tools::getValue('id_cms_category_parent');
$way = (int)Tools::getValue('way');
$positions = Tools::getValue('cms_category');
if (is_array($positions))
foreach ($positions as $key => $value)
{
$pos = explode('_', $value);
if ((isset($pos[1]) && isset($pos[2])) && ($pos[1] == $id_cms_category_parent && $pos[2] == $id_cms_category_to_move))
{
$position = $key;
break;
}
}
$cms_category = new CMSCategory($id_cms_category_to_move);
if (Validate::isLoadedObject($cms_category))
{
if (isset($position) && $cms_category->updatePosition($way, $position))
die(true);
else
die('{"hasError" : true, "errors" : "Can not update cms categories position"}');
}
else
die('{"hasError" : true, "errors" : "This cms category can not be loaded"}');
}
}

public function ajaxProcessPublishCMS()
{
if ($this->tabAccess['edit'] === '1')
{
if ($id_cms = (int)Tools::getValue('id_cms'))
{
$bo_cms_url = _PS_BASE_URL_.__PS_BASE_URI__.basename(_PS_ADMIN_DIR_).'/index.php?tab=AdminCmsContent&id_cms='.(int)$id_cms.'&updatecms&token='.$this->token;

if (Tools::getValue('redirect'))
die($bo_cms_url);

$cms = new CMS((int)(Tools::getValue('id_cms')));
if (!Validate::isLoadedObject($cms))
die('error: invalid id');

$cms->active = 1;
if ($cms->save())
die($bo_cms_url);
else
die('error: saving');
}
else
die ('error: parameters');
}
}

}

 
 
Era esto lo que decias??
Link to comment
Share on other sites

  • 2 weeks later...

Hola nadie, igual no estoy peor, ayer ya alta del problema actualicé la versión 1.606 a la versión 1.609  y la tienda se ha quedado en blanco tanto el back office como el front office.

He solicitado a mi servidor que restauren mi tienda al domingo pasado que fue la ultima copia de seguridad. y estoy esperando que la realicen.

Gracias por tu interes.

Link to comment
Share on other sites

Oh.....

 

Comentas que se ha quedado en blanco al actualizar ¿Pero habilitastes el debug: http://www.prestashop.com/forums/topic/232476-%C2%BFqu%C3%A9-hacer-cuando-se-queda-la-pantalla-en-blanco-en-prestashop/?

 

De todos modos, como dices que vas a esperar a que te restauren el backup...

Edited by nadie (see edit history)
Link to comment
Share on other sites

Te todos modos el error que da ahora es:

Warning: require_once(/home/ajzcejew/public_html/tools/htmlpurifier/HTMLPurifier.standalone.php): failed to open stream: No such file or directory in/home/ajzcejew/public_html/config/config.inc.php on line 119

Fatal error: require_once(): Failed opening required '/home/ajzcejew/public_html/tools/htmlpurifier/HTMLPurifier.standalone.php' (include_path='.:/opt/alt/php54/usr/share/pear:/opt/alt/php54/usr/share/php') in /home/ajzcejew/public_html/config/config.inc.php on line 119

Link to comment
Share on other sites

  • 3 weeks later...

Hola nadinnecas.

 

Me pasa lo mismo que a ti con la página CMS. Estoy en la versión 1.6.0.6, he sustituído los directorios Classes y Controllers y me sigue apareciendo el mensaje "controlador no encontrado".

 

También había instalado homesliderspro, lo he desinstalado y nada, sigo igual.

 

¿Alguien tiene una solución a este problema?

 

Gracias a todos de antemano

Link to comment
Share on other sites

Ummm bueno, si lo has solucionado, y como no puedes poner la solución, procedo a cerrar el tema...., aunque realmente es un tema vacio....

 

Si alguien tiene la misma duda, que cree un tema nuevo, y indique versión de prestashop con la que trabaja.. a ver tiene suerte y puede solucionar el problema. (Lo digo para no mezclar usuarios en el mismo tema)

 

Si alguien tiene una solución que le haya servido, que la publique en la sección de aportes.

 

Saludos,

Edited by nadie (see edit history)
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...