IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Déclaration CSS/JS dans un module


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Par défaut Déclaration CSS/JS dans un module
    Salut,

    Je fais actuellment un module pour l'admin (uniquement) de Prestashop mais je ne sais pas ou il faut déclarer les fichiers .js et .css nécessaire a mon module :/
    En cherchant sur le net et les forums de prestashop j'ai vu qu'il fallait utiliser a priori ceci : Tools::addJS(($this->_path).'/js/import_prix_stock.js'); Mais ou faut il le mettre ?

    Pour la déclaration/(dés)installation/création du lien ds l'admin j'utilise moulinette.php :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <?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 = 'Thor Production';
    			$this->need_instance = 0;
     
    			parent::__construct();
     
    			$this->displayName = $this->l('The “Moulinette”');
    			$this->description = $this->l('Update price and quantity from software “<b>LGPI</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->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)
    		{
    			$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;
    		}
     
    		private function uninstallModuleTab($tabClass)
    		{
    			$idTab = Tab::getIdFromClassName($tabClass);
    			if($idTab != 0)
    			{
    				$tab = new Tab($idTab);
    				$tab->delete();
    				return true;
    			}
    			return false;
    		}
    	}
    ?>
    L'affichage du module via AdminMoulinette.php :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    	include_once(PS_ADMIN_DIR.'/../classes/AdminTab.php');
    	class AdminMoulinette extends AdminTab
    	{
    		public function display()
    		{
    			$html =
    '<div id="moulinette">
    	<img src="" style="display: none;" onload="initDropZone(init_drag_n_drop_upload());" />
    	L’importation nécessite les fichiers <b>pv_artve.asc</b> et <b>ps_stock.asc</b> : <br />
    	<br />
    	<div id="import_prix_stocks" class="dropBox"></div>
    	<div id="droped_import_prix_stocks" class="droped"></div>
    </div>';
    			echo $this->l('').$html;
    		}
    	}
    ?>


    Merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut
    Bonjour,

    dans ta moulinette.php, tu dois ajouter une fonction "hookHeader" qui ressemble à ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	public function hookHeader()
    	{
    		Tools::addCSS($this->_path.'blocktaggedproducts.css', 'all');
    		Tools::addJS(_PS_JS_DIR_.'jquery/accordion/accordion.ui.js');
    	}
    tu as juste à changer les fichiers Js/Css appelés.

Discussions similaires

  1. Réponses: 9
    Dernier message: 28/04/2017, 11h49
  2. déclaration variable dans un module
    Par jemigo dans le forum Langage
    Réponses: 5
    Dernier message: 09/10/2008, 10h16
  3. Ecrire les déclarations dans un module
    Par Olivier Regnier dans le forum Langage
    Réponses: 2
    Dernier message: 30/01/2008, 11h56
  4. [VB.NET] Appeler une sub public dans un module de form
    Par SergeF dans le forum Windows Forms
    Réponses: 3
    Dernier message: 01/06/2004, 13h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo