cristobcn Posted September 23, 2012 Share Posted September 23, 2012 Hola, he tenido instalado el modulo TM Nivo Slider v1.4 funcionando correctamente hasta la versión Prestashop 1.4.9.0, ahora he actualizado a la última versión 1.5.0.17 y ya no me muestra las imagenes. Agradecería cualquier información. Gracias! Link to comment Share on other sites More sharing options...
Miguel2012 Posted October 25, 2012 Share Posted October 25, 2012 Yo tambien tengo el mismo problema alguien sabe la solución yo creo que no linkea bien, debe ser la forma de indexar con la carpeta de imagenes Link to comment Share on other sites More sharing options...
cristobcn Posted October 26, 2012 Author Share Posted October 26, 2012 Hola Miguel2012, finalmente estudiando un poco el código encontre una solución, esta consiste en cambiar una línea del código escrito en el archivo tmnivoslider.tpl del módulo. En la línea 8 donde pone: <a href="{$link->getPageLink('index.php')}{$home_link->url}"><img src="{$link->getPageLink('index.php')}modules/tmnivoslider/{$home_link->img}" alt="" title="#htmlcaption{counter name=tmnivoslider_counter}" /></a> y fijandome en la forma de llamar a las imagenes en otro módulo que ahora no recuerdo la sustitui por la siguiente: <a href='{$home_link->url}'><img src='{$this_path}{$home_link->img}' alt="" title="#htmlcaption{counter name=tmnivoslider_counter}" /></a> y magia, funciona perfectamente, espero que a ti igualmente te funcione, cualquier cosa, estamos en contacto. Un saludo! Link to comment Share on other sites More sharing options...
Miguel2012 Posted October 26, 2012 Share Posted October 26, 2012 Eres un crack!! Genial Gracias, por que de todos los post ninguno daba la solución, gracias de nuevo compañero!! Link to comment Share on other sites More sharing options...
Miguel2012 Posted October 29, 2012 Share Posted October 29, 2012 (edited) Hola Miguel2012, finalmente estudiando un poco el código encontre una solución, esta consiste en cambiar una línea del código escrito en el archivo tmnivoslider.tpl del módulo. En la línea 8 donde pone: <a href="{$link->getPageLink('index.php')}{$home_link->url}"><img src="{$link->getPageLink('index.php')}modules/tmnivoslider/{$home_link->img}" alt="" title="#htmlcaption{counter name=tmnivoslider_counter}" /></a> y fijandome en la forma de llamar a las imagenes en otro módulo que ahora no recuerdo la sustitui por la siguiente: <a href='{$home_link->url}'><img src='{$this_path}{$home_link->img}' alt="" title="#htmlcaption{counter name=tmnivoslider_counter}" /></a> y magia, funciona perfectamente, espero que a ti igualmente te funcione, cualquier cosa, estamos en contacto. Un saludo! me he dado cuenta de este error al añadir una imagen: Item #5 Slide image Slide URL Field #1 Field #2 Field #3 Field #4 Button text Delete this item Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 125 Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 131 Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 137 Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 143 Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 149 Notice: Trying to get property of non-object in C:\xampp\htdocs\pres14\modules\tmnivoslider\tmnivoslider.php on line 155 esto creo que es por que falta algo no? Edited October 29, 2012 by Miguel2012 (see edit history) Link to comment Share on other sites More sharing options...
cristobcn Posted October 29, 2012 Author Share Posted October 29, 2012 Pues lo siento Miguel2012, pero este error no me lo da a mi, se me ocurre que pruebes a colocar la información tanto de los textos como de las imagenes en el archivo links.xml dentro de la carpeta del modulo, pero no se me ocurre más, siento no poderte ayudar. Link to comment Share on other sites More sharing options...
Miguel2012 Posted October 29, 2012 Share Posted October 29, 2012 Pues lo siento Miguel2012, pero este error no me lo da a mi, se me ocurre que pruebes a colocar la información tanto de los textos como de las imagenes en el archivo links.xml dentro de la carpeta del modulo, pero no se me ocurre más, siento no poderte ayudar. No pasa nada mirare a ver de solucionarlo, muchas gracias por tu ayuda!! Link to comment Share on other sites More sharing options...
cristobcn Posted October 29, 2012 Author Share Posted October 29, 2012 Hola de nuevo Miguel, se me ocurre darte el codigo de mi tmnivoslider.php ya que veo que las lineas que muestran el error hablan de este, no se pruebalo, si podemos de alguna manera que te pase mi modulo funcionando en un ps_v1.5.1 en un zip, o lo que sea vaya, a tu disposición... tmnivoslider.php (code) <?php class TMNivoslider extends Module { protected $maxImageSize = 307200; protected $_xml; function __construct() { $this->name = 'tmnivoslider'; $this->tab = 'front_office_features'; $this->version = '1.5.0.17'; parent::__construct(); $this->page = basename(__FILE__, '.php'); $this->displayName = $this->l('TM Nivo Slider'); $this->description = $this->l('Slide the images with choosen languages'); $this->_xml = $this->_getXml(); } function install() { if (!parent::install() OR !$this->registerHook('top')) return false; return true; } function putContent($xml_data, $key, $field) { $field = htmlspecialchars($field); if (!$field) return 0; return ("\n".' <'.$key.'>'.$field.'</'.$key.'>'); } function getContent() { global $cookie; /* Languages preliminaries */ $defaultLanguage = intval(Configuration::get('PS_LANG_DEFAULT')); $languages = Language::getLanguages(); $iso = Language::getIsoById($defaultLanguage); $isoUser = Language::getIsoById(intval($cookie->id_lang)); /* display the module name */ $this->_html = '<h2>'.$this->displayName.' '.$this->version.'</h2>'; /* update the editorial xml */ if (isset($_POST['submitUpdate'])) { // Generate new XML data $newXml = '<?xml version=\'1.0\' encoding=\'utf-8\' ?>'."\n"; $newXml .= '<links>'."\n"; $i = 0; foreach ($_POST['link'] as $link) { $newXml .= ' <link>'; foreach ($link AS $key => $field) { if ($line = $this->putContent($newXml, $key, $field)) $newXml .= $line; } /* upload the image */ if (isset($_FILES['link_'.$i.'_img']) AND isset($_FILES['link_'.$i.'_img']['tmp_name']) AND !empty($_FILES['link_'.$i.'_img']['tmp_name'])) { Configuration::set('PS_IMAGE_GENERATION_METHOD', 1); if ($error = checkImage($_FILES['link_'.$i.'_img'], $this->maxImageSize)) $this->_html .= $error; elseif (!$tmpName = tempnam(_PS_TMP_IMG_DIR_, 'PS') OR !move_uploaded_file($_FILES['link_'.$i.'_img']['tmp_name'], $tmpName)) return false; elseif (!imageResize($tmpName, dirname(__FILE__).'/slides/slide_0'.$i.'.jpg')) $this->_html .= $this->displayError($this->l('An error occurred during the image upload.')); unlink($tmpName); } if ($line = $this->putContent($newXml, 'img', 'slides/slide_0'.$i.'.jpg')) $newXml .= $line; $newXml .= "\n".' </link>'."\n"; $i++; } $newXml .= '</links>'."\n"; /* write it into the editorial xml file */ if ($fd = @fopen(dirname(__FILE__).'/links.xml', 'w')) { if (!@fwrite($fd, $newXml)) $this->_html .= $this->displayError($this->l('Unable to write to the editor file.')); if (!@fclose($fd)) $this->_html .= $this->displayError($this->l('Can\'t close the editor file.')); } else $this->_html .= $this->displayError($this->l('Unable to update the editor file.<br />Please check the editor file\'s writing permissions.')); } if (Tools::isSubmit('submitUpdate')) { $output .= '<div class="conf confirm"><img src="../img/admin/ok.gif" alt="'.$this->l('Confirmation').'" />'.$this->l('Settings updated').'</div>'; } /* display the editorial's form */ $this->_displayForm(); return $this->_html; } static private function getXmlFilename() { return 'links.xml'; } private function _getXml() { if (file_exists(dirname(__FILE__).'/'.$this->getXmlFilename())) { if ($xml = @simplexml_load_file(dirname(__FILE__).'/'.$this->getXmlFilename())) return $xml; } return false; } public function _getFormItem($i, $last) { global $cookie; $this->_xml = $this->_getXml(); $isoUser = Language::getIsoById(intval($cookie->id_lang)); $output = ' <div class="item" id="item'.$i.'"> <h3>'.$this->l('Item #').($i+1).'</h3> <input type="hidden" name="item_'.$i.'_item" value="" />'; $output .= ' <label>'.$this->l('Slide image').'</label> <div class="margin-form"> <div><img src="'.$this->_path.'slides/slide_0'.$i.'.jpg" alt="" title="" style="width:250px; height:auto;" /></div> <input type="file" name="link_'.$i.'_img" /> <p style="clear: both"></p> </div>'; $output .= ' <label>'.$this->l('Slide URL').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.']" size="64" value="'.$this->_xml->link[$i]->url.'" /> <p style="clear: both"></p> </div>'; $output .= ' <label>'.$this->l('Field #1').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.'][field1]" size="64" value="'.$this->_xml->link[$i]->field1.'" /> <p style="clear: both"></p> </div>'; $output .= ' <label>'.$this->l('Field #2').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.'][field2]" size="64" value="'.$this->_xml->link[$i]->field2.'" /> <p style="clear: both"></p> </div>'; $output .= ' <label>'.$this->l('Field #3').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.'][field3]" size="64" value="'.$this->_xml->link[$i]->field3.'" /> <p style="clear: both"></p> </div>'; /* $output .= ' <label>'.$this->l('Field #4').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.'][field4]" size="64" value="'.$this->_xml->link[$i]->field4.'" /> <p style="clear: both"></p> </div>'; */ $output .= ' <label>'.$this->l('Button text').'</label> <div class="margin-form" style="padding-left:0"> <input type="text" name="link['.$i.'][field5]" size="64" value="'.$this->_xml->link[$i]->field5.'" /> <p style="clear: both"></p> </div>'; $output .= ' <div class="clear pspace"></div> '.($i >= 0 ? '<a href="javascript:{}" onclick="removeDiv(\'item'.$i.'\')" style="color:#EA2E30"><img src="'._PS_ADMIN_IMG_.'delete.gif" alt="'.$this->l('delete').'" />'.$this->l('Delete this item').'</a>' : '').' <hr/></div>'; return $output; } private function _displayForm() { global $cookie; /* Languages preliminaries */ $defaultLanguage = intval(Configuration::get('PS_LANG_DEFAULT')); $languages = Language::getLanguages(); $iso = Language::getIsoById($defaultLanguage); $isoUser = Language::getIsoById(intval($cookie->id_lang)); /* xml loading */ $xml = false; if (file_exists(dirname(__FILE__).'/links.xml')) if (!$xml = @simplexml_load_file(dirname(__FILE__).'/links.xml')) $this->_html .= $this->displayError($this->l('Your links file is empty.')); $this->_html .= ' <script type="text/javascript"> function removeDiv(id) { $("#"+id).fadeOut("slow"); $("#"+id).remove(); } function cloneIt(cloneId) { var currentDiv = $(".item:last"); var id = ($(currentDiv).size()) ? $(currentDiv).attr("id").match(/[0-9]/gi) : -1; var nextId = parseInt(id) + 1; $.get("'._MODULE_DIR_.$this->name.'/ajax.php?id="+nextId, function(data) { $("#items").append(data); }); $("#"+cloneId).remove(); } </script> <form method="post" action="'.$_SERVER['REQUEST_URI'].'" enctype="multipart/form-data"> <fieldset style="width: 800px;"> <legend><img src="'.$this->_path.'logo.gif" alt="" title="" /> '.$this->displayName.'</legend> <div id="items">'; $i = 0; foreach ($xml->link as $link) { $last = ($i == (count($xml->link)-1) ? true : false); $this->_html .= $this->_getFormItem($i, $last); $i++; } $this->_html .= ' </div> <a id="clone'.$i.'" href="javascript:cloneIt(\'clone'.$i.'\')" style="color:#488E41"><img src="'._PS_ADMIN_IMG_.'add.gif" alt="'.$this->l('add').'" /><b>'.$this->l('Add a new item').'</b></a>'; $this->_html .= ' <div class="margin-form clear"> <div class="clear pspace"></div> <div class="margin-form"> <input type="submit" name="submitUpdate" value="'.$this->l('Save').'" class="button" /> </div> </div> </fieldset> </form>'; } function hookTop($params) { global $cookie; $this->context->controller->addCSS($this->_path.'tmnivoslider.css', 'all'); /* Languages preliminaries */ $defaultLanguage = intval(Configuration::get('PS_LANG_DEFAULT')); $languages = Language::getLanguages(); $iso = Language::getIsoById($defaultLanguage); $isoUser = Language::getIsoById(intval($cookie->id_lang)); if (file_exists(dirname(__FILE__).'/links.xml')) if ($xml = simplexml_load_file(dirname(__FILE__).'/links.xml')) { global $cookie, $smarty; $smarty->assign(array( 'xml' => $xml, 'this_path' => $this->_path )); return $this->display(__FILE__, 'tmnivoslider.tpl'); } return false; } } ?> Link to comment Share on other sites More sharing options...
Miguel2012 Posted October 30, 2012 Share Posted October 30, 2012 Muchaaaaaas Gracias por tu aporte, voy a probarlo maestro a ver que me ha ocurrido!! Link to comment Share on other sites More sharing options...
carin Posted November 8, 2012 Share Posted November 8, 2012 Buenas Tenia un problema con este modulo, y me lo habeis solucionado, muchisimas gracias a los dos por vuestros comentarios. De nuevo muchisimas gracias. Salud. Link to comment Share on other sites More sharing options...
yompiam Posted December 31, 2012 Share Posted December 31, 2012 Saludos Amigos. Yo acabo de instalar el modulo por FTP, y solo lo p uedo ver por en "TOP OF PAGE" y en realidad lo deseo ver en "HOMEPAGE CONTENT" y me sale un error. pueden ayudarme por favor. Link to comment Share on other sites More sharing options...
Recommended Posts