Jump to content

MAJ d'un module 1.4.4.1 vers 1.5.2.0, l'onglet ne s'affiche plus


Recommended Posts

Bonjour,

 

J'ai créer un module "moulinette" de MAJ des prix/stock par drag'n'drop d'un fichier csv/asc ds le back office, en ajoutant un sous onglet dans "Catalogue", sous Presta 1.4.4.1. Jusque là, pas de pblm, tout marche ^_^

 

En copiant mon dossier moulinette dans modules sous un autre site sous presta 1.5.2.0 puis en l'installant, mon sous onglet ne s'affiche plus... Qu'est ce qui a changé ? Ou que j'oublie de faire ? :(

 

Mon fichier modules/moulinette/moulinette.php :

<?php
if (!defined('_PS_VERSION_')) exit();

class moulinette extends Module
{
 public function __construct()//construction du module - Infos qui s'affiche ds l'onglet Modules de l'admin
 {
  $this->name = 'moulinette';
  $this->tab = 'other';//catégorie du module
  $this->version = 1.0;
  $this->author = 'Itiav';
  $this->need_instance = 0;
  parent::__construct();
  $this->displayName = $this->l('The “Moulinette”');
  $this->description = $this->l('Update price and quantity from software “<b>ALIADIS</b>”.');//'Met à jour les prix et les stocks extrait du logiciel “<b>LGPI</b>”.'
  $this->confirmUninstall = $this->l('Are you sure you want to delete your details ?');//Message de confiramtion de désinstalation du module
 }
 public function install()//installation du module
 {
  if(!parent::install()
//	|| !$this->registerHook('header')
|| !$this->installModuleTab('AdminMoulinette', array(1=>'The “Moulinette”', 2=>'The “Moulinette”'), 1)) return false;
  return true;
 }

 public function uninstall()//désinstallation du module
 {
  if(!parent::uninstall()
|| !$this->uninstallModuleTab('AdminMoulinette')) return false;
  return true;
 }

 private function installModuleTab($tabClass, $tabName, $idTabParent)// ajout d'un lien ds les onglet de l'admin
 {
  $tab = new Tab();
  $tab->name = $tabName;
  $tab->class_name = $tabClass;
  $tab->module = $this->name;
  $tab->id_parent = $idTabParent;
  if(!$tab->save()) return false;
  return true;
 }

//  public function hookHeader($params)
//  {
//   Tools::addJS(($this->_path).'/js/import_prix_stock.js');
//   Tools::addJS(($this->_path).'/js/php_fonctions.js');
//   Tools::addJS(($this->_path).'/js/drag_n_drop_upload.js');
//   Tools::addCSS(($this->_path).'/progress_bar.css');
//   Tools::addCSS(($this->_path).'/drag_n_drop_upload.css');
//  }

 private function uninstallModuleTab($tabClass)// suppression du lien ds les onglet de l'admin
 {
  $idTab = Tab::getIdFromClassName($tabClass);
  if($idTab != 0)
  {
$tab = new Tab($idTab);
$tab->delete();
return true;
  }
  return false;
 }
}
?>

 

et mon fichier AdminMoulinette.php :

<?php
include_once(PS_ADMIN_DIR.'/../classes/AdminTab.php');
class AdminMoulinette extends AdminTab
{
 public function display()
 {
  $html =
'<link href="../modules/moulinette/css/drag_n_drop_upload.css" rel="stylesheet" type="text/css" />
<link href="../modules/moulinette/css/progress_bar.css" rel="stylesheet" type="text/css" />
<script src="../modules/moulinette/js/requetes.js" type="text/javascript"></script>
<script src="../modules/moulinette/js/drag_n_drop_upload.js" type="text/javascript"></script>
<script src="../modules/moulinette/js/import_prix_stock.js" type="text/javascript"></script>
<script src="../modules/moulinette/js/php_fonctions.js" type="text/javascript"></script>
<center>
<div id="moulinette"
  style="margin: 0 !important; padding: 0 !important; width: 600px;">
 L\'importation nécessite le fichier <b>inventaire.csv</b> : <br />
 <br />
 <div id="dropBox" class="dropBox">
  <span><img src="../modules/moulinette/img/dropBox.png" onload="initDropZone(\'../modules/moulinette/drag_n_drop_upload.php\', Array(\'.asc\'), init_import_prix_stocks);" /></span>
 </div>
 <div id="resDropBox" class="resDropBox"></div>
</div>
<br />
<a href="../modules/moulinette/products_ALIADIS_miss.csv" target="rapport">Dernier rapport des produit d ALIADIS absents de Santeshopdiscount</a>
<br />
<br />
<div id="rapport_moulinette" style="text-align: left;">
</div>
</center>';
  echo $this->l('').$html;
 }
}
?>

 

En fait mon module affiche juste une image (une dropbox), et tout le reste je le fait avec mon propre code sans passer par les classes et fonctions de presta, car j'utilise rarement presta ..

 

Merci :3

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...