Ce document représente la documentation technique, donc l'ensemble des fichiers et fonctions qui composent le module. Nous n'allons pas revenir sur tous les fichiers car dans l'ensemble, c'est l'architechnique normal d'un module prestashop qui a été respecté dans les normes.
views\js\yodaforex.js
Ce fichier est chargé de modifier l'apparence du site, qui va adapter la morphologie des pages pour gérer les devises et les métaux comme il se doit.
Il fait appel au DOM, ce qui signifie qu'un changement de thème avec un changement de structure peut rendre les fonctions dysfonctionnelles. Il convient alors de respecter le DOM du thème Classic de Prestashop.
yodaforex.php
C'est le fichier principal d'un module prestashop normal. Il comprend :
- Les paramètres principaux du module (tel que voulu par prestashop)
- Les fonctions principales
Install / uninstall
: Installation du module, accrochage automatique du module à tous les points d'accroche et gestion des tables de la base de données.getConfigForm
: Formulaire de configuration du module (cela est totalement décrit dans le document technique)postProcess
: Traitement du formulaire de configurationhookDisplayHeader
: Gestion des CSS / JShookDisplayAdminProductsMainStepLeftColumnBottom
/hookActionObjectProductDeleteAfter
: Gestion des données de la fiche produit en adminhookDisplayPDFInvoice
: Modification PDFhookActionEmailAddAfterContent
: Modification emailhookActionObjectCustomerDeleteAfter
: Gestion client (données complémentaires)hookFilterCmsContent
: Gestion du short_code pour l'affichage des données données de simulation dans les pages CMShookYodaDisplayBox
: Affichage du convertisseur n'importe où. Donc un développeur peut aller mettre cela dans le code tplhookDisplayContentWrapperTop
/hookDisplayTopColumn
/hookDisplayProductAdditionalInfo / hookDisplayProductActions / hookDisplayProductButtons / hookDisplayProductListReviews
: Affichage des données de devises / métaux dans les différentes pages (produits, catégories, etc …)hookDisplayShoppingCartFooter / hookActionFrontControllerAfterInit
: Gestion de l'exclusivité du panierhookActionOrderStatusPostUpdate
: Gestion de la remonté de commande au statut de commandeisEligibleCustomer
: Teste si un client doit renseigner des infos supplémentaires pendant la commandegetIdentityBlockings
: Gestion des informations supplémentaires de client pendant la commande
classes\YodaModel.php
C'est dans cette classe que sont regroupées toutes les fonctions de gestion de change à savoir :
yodaSync
: Fonction qui permet de synchroniser avec l'API Yodaforex Web Connect ! C'est elle qui définit si les commandes Prestashop peuvent être renvoyées à Yodaforex ou pas.getIdentities
: Renvoie les informations complémentaires d'un utilisateur. Prend en paramètres l'id du client concerné.getCustomerImages
: Renvoie les fichiers du client (pour l'étape des infos complémentaires). Elle prend l'id du client obligatoirement.isCurrencyCart
: Teste si un panier est un panier de devise. Peut prendre l'objet panier en paramètre ou pasgetCurrencyCartProducts
: Renvoie les informations sur les produits de type devise du panier. Peut prendre l'objet cart en paramètreisMetalCart
: Teste si un panier est un panier de métauxgetYodaPay
: Renvoie les méthodes de paiement appropriées selon le type de panier (devise / métaux)getYodaCarriers
: Renvoie les transporteurs selon le type de panier (devise ou métaux). Peut prendre 2 paramètres :$cart
: objet panier$simple
: Renvoie la liste simple ou bien formatte pour page par transporteur
checkCart
: Teste si un panier est mixe ou pas. Elle prend obligatoirement l'objet paniersendBookingMail
: Envoie de mail de réservation et de devisrequest
: Soumission APIgetYodaProducts
: Recupère les informations complémentaire sur les produits de la base Yodaforex Web Connect. Comme paramètres :$type
: currency (pour devise) et metal (pour métaux)$mode
: sell (pour vente) et buy (pour achat)$detail = false
: Si oui, ajoute aussi les informations sur les prix et tout$id_category = null
: L'id de la catégorie si on est dans une catégorie précise.$material = null
: Défini (uniquement pour les métaux) le matériel qu'on souhaite (or, argent, fonte, …)$multiple = false
: Si true, alors renvoie aussi à la fois les prix d'achat et de vente
getYodaProduct
: Recupération des informations de la base Yodaforex Web Connect pour un produit précis :$type = currency / metal
$mode = sell / buy / null
$detail = false / true
(permet de prendre aussi les informations du produits dans prestashop ou pas)
isMetalProduct
($id_product) : Teste si c'est un produit métal ou pasisCurrencyProduct
($id_product) : teste si c'est un produit devise ou pasaddImageProduct
: Ajout des images aux produits pendant l'import, soit une image de produit si nous en avons une, soit une image par défaut$product
: Objet produit$img
: Nom de l'image$delExist = false
: Si oui, ça supprime l'image existante (si le produit en possède)
getMetalPrice
: Calcule le bon prix pour les métaux :$metal
: Objet métal$mode
= sell / buy$fixings
: Le tableau des fixings
updateMetal
: Mise à jour des métaux avec synchronisation depuis la base Yodaforex Web ConnectupdateCurrency
: Mise à jour des devises avec synchronisation depuis la base Yodaforex Web ConnectbackUpData
: Remonté de commande et d'utilisateur vers la base Yodaforex Web Connect:$id_order
: ID de la commande à remonter.$identities = null
:
setOrderNumber
: Défini le numéro de commande pour la base Yodaforex Web Connect dans le format recommandé.
Les différents controlleurs (controllers\front\*) :
controllers\front\booking.php
: Contrôleur de réservationcontrollers\front\bulkcurrency.php
: Vente achat de devises :- Vente de devises : /index.php?fc=module&module=yodaforex&controller=bulkcurrency
- Achat devises : /index.php?fc=module&module=yodaforex&controller=bulkcurrency?mode=buy
controllers\front\bulksellbuy.php
: Prix web / prix guichet- Prix guichet : /index.php?fc=module&module=yodaforex&controller=bulksellbuy?mode=desk
- Prix web : /index.php?fc=module&module=yodaforex&controller=bulksellbuy?mode=web
- Tarifs web et guichet : /index.php?fc=module&module=yodaforex&controller=bulksellbuy
controllers\front\buymetal.php
: Achat des métaux (/index.php?fc=module&module=yodaforex&controller=buymetal)controllers\front\castmetal.php
:Simulateur de fonte (/index.php?fc=module&module=yodaforex&controller=castmetalcontrollers\front\sellmetal.php
: vente des métaux- Tout : /index.php?fc=module&module=yodaforex&controller=sellmetal
- Argent : /index.php?fc=module&module=yodaforex&controller=sellmetal?mat=argent
- Or : /index.php?fc=module&module=yodaforex&controller=sellmetal?mat=Or
override\*
Tous les fichiers qui s'y trouvent sont les fichiers de surchages. Il s'agit des modifications à faire dans prestashop et qui ne peuvent pas s'opérer dans le module. Ces fichiers sont automatiquement surchargés par prestashop lors de l'installation du module.
La gestion des tables
sql\install.php
: Fichier de création des tables lors de l'installation du module.sql\uninstall.php
: Fichier de suppression de table lors que la désinstallation.
NB : Tous les fonctions n'ont pas été listées car il existe des petites usuelles ou implicites et qui n'ont pas de soucis à être retrouvées.
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.