Documentation du code de SPIP et de ses plugins

Commandes

Fonctions

Table of Contents

Functions

filtre_commandes_hash_dist()  : string
Un fitre que l'on peut utiliser en argument d'une inclusion si on veut etre sur que l'affichage change quand la commande change <INCLURE{fond=macommande,id_commande,hash=#ID_COMMANDE|commandes_hash} />
commandes_hash()  : mixed
commandes_lister_statuts()  : array<string|int, mixed>|string
Retourne les différents statuts possibles pour une commande ou le nom d'un statut précis
filtre_commande_totalise_taxes_dist()  : array<string|int, mixed>|string
Une fonction pour memoriser les taxes par taux et retourner le tableau de detail en recap
commande_totalise_taxes()  : mixed
filtre_commandes_arrondir_quantite_dist()  : int|float
Filtre pour utiliser la fonction d'arrondi des quantite
commandes_arrondir_quantite()  : mixed
filtre_commandes_afficher_quantite_descriptif_dist()  : string
Afficher la quantite si differente de 1
commandes_afficher_quantite_descriptif()  : mixed
filtre_commandes_afficher_quantite_dist()  : string
Afficher la quantite, en arrondissant eventuellement (par defaut fait juste l'arrondi int natif)
commandes_afficher_quantite()  : mixed
filtre_commandes_afficher_prix_detaille_abbr_dist()  : mixed|string
commandes_afficher_prix_detaille_abbr()  : mixed
filtre_commandes_afficher_reduction_si_dist()  : mixed
commandes_afficher_reduction_si()  : mixed
critere_COMMANDES_encours_visiteur_dist()  : mixed
Critère pour prendre la commande en cours du visiteur, qu'il soit connecté ou non
commandes_id_commande_encours_visiteur()  : int
Retourne le numéro de la commande en cours du visiteur, qu'il soit connecté ou non
generer_commande_infos_client()  : array<string|int, mixed>|mixed
La fonction peut-être appellee par la fonction générique generer_objet_info($id_commande, 'commmande', 'infos_client') dans ce cas $ligne_sql_commande est fournie en second argument mais n'est pas utile ici et $cle vaut 'infos_client'
filtre_generer_commande_infos_client_dist()  : array<string|int, mixed>|mixed
Filtre helper pour utiliser les infos clients dans un squelette
creer_commande_encours()  : int
Créer une commande avec le statut `encours` pour le visiteur actuel.
commandes_supprimer()  : bool
Supprimer une ou plusieurs commandes et leurs données associées
commandes_effacer()  : bool
Supprimer des commandes
commandes_ajouter_detail()  : int
Ajouter une ligne de detail dans une commande
commandes_supprimer_detail()  : bool
Supprimer un ou plusieurs détails d'une commande
commandes_envoyer_notification()  : mixed
Envoyer un mail de notification
commandes_notifier()  : void
Traitement des notifications par email d'une commande
commandes_appliquer_taxes()  : mixed
Mettre a jour les taxes d'une commande selon exoneration ou non
commandes_actualiser_statut_si_commande_envoyee()  : false|string
Mettre à jour le statut envoye/retour/retour_partiel d'une commande après envois appelee automatiquement au changement de statut de commande a appeler manuellement si on marque des details 'envoye' ou 'retour'
traiter_notifications_commande()  : mixed
legacy
commandes_lister_paiements_echeances()  : array<string|int, mixed>
Lister un à un les paiements des échéances prévus
commandes_lister_montants_echeances()  : array<string|int, mixed>
Lister un à un les montants des échéances prévus idem commandes_lister_paiements_echeances mais retourne uniquement le montant (ttc) pour chaque echeance, et pas un tableau
commandes_nb_echeances_payees()  : mixed
commandes_trouver_prochaine_echeance_desc()  : array<string|int, mixed>|bool
Trouver la prochaine échéance à payer pour une commande
commandes_trouver_prochaine_echeance()  : bool|mixed
inc_commandes_reference_dist()  : string
Génère un numéro unique utilisé pour remplir le champ `reference` lors de la création d'une commande.

Functions

filtre_commandes_hash_dist()

Un fitre que l'on peut utiliser en argument d'une inclusion si on veut etre sur que l'affichage change quand la commande change <INCLURE{fond=macommande,id_commande,hash=#ID_COMMANDE|commandes_hash} />

filtre_commandes_hash_dist(int $id_commande) : string
Parameters
$id_commande : int
Return values
string

commandes_hash()

commandes_hash(mixed $id_commande) : mixed
Parameters
$id_commande : mixed
Tags
deprecated

v2.4.0

commandes_lister_statuts()

Retourne les différents statuts possibles pour une commande ou le nom d'un statut précis

commandes_lister_statuts([bool|string $statut = false ]) : array<string|int, mixed>|string
Parameters
$statut : bool|string = false
  • vide ou false pour retourner un tableau
  • nom d'un statut précis pour retourner sa chaîne de langue
Tags
filtre
used-by
commandes_upgrade()
Return values
array<string|int, mixed>|string
  • array: tableau associatif des statuts possibles et leurs chaînes de langue
  • string: chaîne de langue d'un statut

filtre_commande_totalise_taxes_dist()

Une fonction pour memoriser les taxes par taux et retourner le tableau de detail en recap

filtre_commande_totalise_taxes_dist([null|float $prix_ht = null ][, null|float $prix_ttc = null ][, null|float $taxe = null ]) : array<string|int, mixed>|string
Parameters
$prix_ht : null|float = null
$prix_ttc : null|float = null
$taxe : null|float = null
Tags
filtre
Return values
array<string|int, mixed>|string

commande_totalise_taxes()

commande_totalise_taxes([mixed $prix_ht = null ][, mixed $prix_ttc = null ]) : mixed
Parameters
$prix_ht : mixed = null
$prix_ttc : mixed = null
Tags
deprecated

v2.4.0

filtre_commandes_arrondir_quantite_dist()

Filtre pour utiliser la fonction d'arrondi des quantite

filtre_commandes_arrondir_quantite_dist(int|float $quantite[, string $objet = '' ][, int $id_objet = 0 ]) : int|float
Parameters
$quantite : int|float
$objet : string = ''
$id_objet : int = 0
Tags
filtre
Return values
int|float

commandes_arrondir_quantite()

commandes_arrondir_quantite(mixed $quantite[, mixed $objet = '' ][, mixed $id_objet = 0 ]) : mixed
Parameters
$quantite : mixed
$objet : mixed = ''
$id_objet : mixed = 0
Tags
deprecated

v2.4.0

filtre_commandes_afficher_quantite_descriptif_dist()

Afficher la quantite si differente de 1

filtre_commandes_afficher_quantite_descriptif_dist(int|float $quantite[, string $objet = '' ][, int $id_objet = 0 ]) : string
Parameters
$quantite : int|float
$objet : string = ''
$id_objet : int = 0
Tags
filtre
Return values
string

commandes_afficher_quantite_descriptif()

commandes_afficher_quantite_descriptif(mixed $quantite[, mixed $objet = '' ][, mixed $id_objet = 0 ]) : mixed
Parameters
$quantite : mixed
$objet : mixed = ''
$id_objet : mixed = 0
Tags
deprecated

v2.4.0

filtre_commandes_afficher_quantite_dist()

Afficher la quantite, en arrondissant eventuellement (par defaut fait juste l'arrondi int natif)

filtre_commandes_afficher_quantite_dist(int|float $quantite[, string $objet = '' ][, int $id_objet = 0 ]) : string
Parameters
$quantite : int|float
$objet : string = ''
$id_objet : int = 0
Tags
filtre
Return values
string

commandes_afficher_quantite()

commandes_afficher_quantite(mixed $quantite[, mixed $objet = '' ][, mixed $id_objet = 0 ]) : mixed
Parameters
$quantite : mixed
$objet : mixed = ''
$id_objet : mixed = 0
Tags
deprecated

v2.4.0

filtre_commandes_afficher_prix_detaille_abbr_dist()

filtre_commandes_afficher_prix_detaille_abbr_dist( $prix_ttc,  $quantite,  $prix_unit_ht,  $reduction,  $taxe) : mixed|string
Parameters
$prix_ttc :
$quantite :
$prix_unit_ht :
$reduction :
$taxe :
Tags
filtre
Return values
mixed|string

commandes_afficher_prix_detaille_abbr()

commandes_afficher_prix_detaille_abbr(mixed $prix_ttc, mixed $quantite, mixed $prix_unit_ht, mixed $reduction, mixed $taxe) : mixed
Parameters
$prix_ttc : mixed
$quantite : mixed
$prix_unit_ht : mixed
$reduction : mixed
$taxe : mixed
Tags
deprecated

v2.4.0

filtre_commandes_afficher_reduction_si_dist()

filtre_commandes_afficher_reduction_si_dist(mixed $reduction) : mixed
Parameters
$reduction : mixed

commandes_afficher_reduction_si()

commandes_afficher_reduction_si(mixed $reduction) : mixed
Parameters
$reduction : mixed
Tags
deprecated

v2.4.0

critere_COMMANDES_encours_visiteur_dist()

Critère pour prendre la commande en cours du visiteur, qu'il soit connecté ou non

critere_COMMANDES_encours_visiteur_dist(string $idb, object &$boucles, object $crit) : mixed
Parameters
$idb : string
$boucles : object
$crit : object
Tags
example

<BOUCLE_commande(COMMANDES) {encours_visiteur}>

uses
commandes_calculer_critere_encours_visiteur()

commandes_id_commande_encours_visiteur()

Retourne le numéro de la commande en cours du visiteur, qu'il soit connecté ou non

commandes_id_commande_encours_visiteur() : int

Soit la commande est en session, soit on prend celle dans la db. Nb : il ne peut en théorie y avoir qu'une seule commande en cours par auteur, dans le cas improbable où il y en aurait plusieurs, on prend la plus récente.

Return values
int

Numéro de la commande ou 0 s'il n'y en a pas

generer_commande_infos_client()

La fonction peut-être appellee par la fonction générique generer_objet_info($id_commande, 'commmande', 'infos_client') dans ce cas $ligne_sql_commande est fournie en second argument mais n'est pas utile ici et $cle vaut 'infos_client'

generer_commande_infos_client(int $id_commande[, mixed $ligne_sql_commande = [] ][, string $cle = '' ]) : array<string|int, mixed>|mixed
Parameters
$id_commande : int
$ligne_sql_commande : mixed = []
$cle : string = ''
Return values
array<string|int, mixed>|mixed

filtre_generer_commande_infos_client_dist()

Filtre helper pour utiliser les infos clients dans un squelette

filtre_generer_commande_infos_client_dist(int $id_commande, string $cle) : array<string|int, mixed>|mixed
Parameters
$id_commande : int
$cle : string
Return values
array<string|int, mixed>|mixed

creer_commande_encours()

Créer une commande avec le statut `encours` pour le visiteur actuel.

creer_commande_encours([int $id_auteur = 0 ]) : int

On part du principe qu'il ne peut y avoir qu'une seule commande encours par session, aussi on supprime de la base toute ancienne commande encours présente en session avant d'en créer une nouvelle. L'identifiant de la nouvelle commande est ensuite placé dans la session.

Si le visiteur n'est pas identifie mais connu, on peut passer son id_auteur en argument pour permettre le rattachement de la commande a son compte mais attention dans tous les cas la commande sera associee a la session en cours. C'est utile si par exemple on demande l'email au visiteur dans le processus d'achat mais on veut pas l'obliger a se connecter pour simplifier le workflow : il peut faire tout le processus en restant non connecte, mais la commande sera quand meme rattachee a son compte Et ca permet aussi de faire une commande pour le compte de quelqu'un d'autre sans avoir besoin de ses identifiants (ie payer un abonnement a un ami)

Parameters
$id_auteur : int = 0

permet de preciser l'id_auteur de la session au cas ou le visiteur n'est pas connecte mais connu (par son email qu'il a rentre dans le processus de commande par exemple)

Tags
uses
commandes_reference()
uses
commande_inserer()
Return values
int

$id_commande identifiant SQL de la commande

commandes_supprimer()

Supprimer une ou plusieurs commandes et leurs données associées

commandes_supprimer(int|array<string|int, mixed> $ids_commandes) : bool

La fonction va supprimer :

  • les détails des commandes
  • les liens entre les commandes et leurs adresses
  • les adresses si elles sont devenues orphelines
Parameters
$ids_commandes : int|array<string|int, mixed>

Identifiant d'une commande ou tableau d'identifiants

Tags
used-by
action_supprimer_commande_dist()
used-by
commandes_supprimer_detail()
Return values
bool
  • false si pas d'identifiant de commande transmis
  • true sinon

commandes_effacer()

Supprimer des commandes

commandes_effacer(int|array<string|int, mixed> $ids_commandes) : bool
Parameters
$ids_commandes : int|array<string|int, mixed>

Identifiant d'une commande ou tableau d'identifiants

Tags
deprecated

Alias de commandes_supprimer() pour rétro-compatibilité

see
commandes_supprimer()
Return values
bool
  • false si pas d'identifiant de commande transmis
  • true sinon

commandes_ajouter_detail()

Ajouter une ligne de detail dans une commande

commandes_ajouter_detail(int $id_commande, array<string|int, mixed> $emplette[, bool $ajouter = true ]) : int
Parameters
$id_commande : int
$emplette : array<string|int, mixed>

objet : type de l'objet ajoute id_objet : id de l'objet ajoute quantite : quantite ajoutee infos_extras : tableau PHP d'informations quelconques

$ajouter : bool = true
Return values
int

commandes_supprimer_detail()

Supprimer un ou plusieurs détails d'une commande

commandes_supprimer_detail([int $id_commande = 0 ][, int|array<string|int, mixed> $ids_details = [] ][, bool $supprimer_commande = false ]) : bool

On supprime les détails correspondant à commande dans la table spip_commandes_details. Si tous ses détails sont supprimés par l'opération, la commande peut également être supprimée en présence du paramètre adéquat.

Parameters
$id_commande : int = 0

Identifiant de la commande

$ids_details : int|array<string|int, mixed> = []

Identifiant d'un détail ou tableau d'identifiants

$supprimer_commande : bool = false

true pour effacer la commande si elle est vide après l'opération

Tags
uses
commandes_supprimer()
used-by
action_supprimer_detail_commande()
Return values
bool

false si pas d'identifiant de commande transmis, ou si pas autorisé à supprimer true sinon

commandes_envoyer_notification()

Envoyer un mail de notification

commandes_envoyer_notification(string $qui, string $id_type, int $id_commande, string $expediteur, array<string|int, mixed> $destinataires) : mixed
  • On veut envoyer du html pour que le tableau de commandes soit lisible par le client
  • On peut avoir un expediteur specifique
  • Mais notifications_envoyer_mails() de spip ne peut pas envoyer de mails en html. On ne peut pas non plus y specifier un expediteur. Donc si les plugins notifications_avancees et Facteur sont presents, on prepare un joli mail en html. Sinon un moche en texte.
Parameters
$qui : string

: vendeur ou client

$id_type : string
$id_commande : int
$expediteur : string
$destinataires : array<string|int, mixed>
Tags
deprecated
see
commandes_notifier()

commandes_notifier()

Traitement des notifications par email d'une commande

commandes_notifier([int|string $id_commande = 0 ][, string|null $statut_ancien = null ]) : void

Selon les options de configuration et le statut de la commande, des emails seront envoyés au(x) vendeur(s) et optionnellement au client. Nécessite le plugin "Notifications avancées" pour fonctionner. Avec le plugin Facteur, les messages seront au format HTML, sinon au format texte.

Parameters
$id_commande : int|string = 0

Identifiant de la commande

$statut_ancien : string|null = null
Tags
uses
notifications()
used-by
commande_inserer()
used-by
commande_instituer()
used-by
traiter_notifications_commande()

commandes_appliquer_taxes()

Mettre a jour les taxes d'une commande selon exoneration ou non

commandes_appliquer_taxes(int $id_commande, string $exoneration_raison) : mixed
Parameters
$id_commande : int
$exoneration_raison : string

commandes_actualiser_statut_si_commande_envoyee()

Mettre à jour le statut envoye/retour/retour_partiel d'une commande après envois appelee automatiquement au changement de statut de commande a appeler manuellement si on marque des details 'envoye' ou 'retour'

commandes_actualiser_statut_si_commande_envoyee(int $id_commande[, mixed $statut_ancien = null ][, mixed $instituer = true ]) : false|string
Parameters
$id_commande : int
$statut_ancien : mixed = null
$instituer : mixed = true
Return values
false|string

traiter_notifications_commande()

legacy

traiter_notifications_commande([int $id_commande = 0 ]) : mixed
Parameters
$id_commande : int = 0
Tags
uses
commandes_notifier()

commandes_lister_paiements_echeances()

Lister un à un les paiements des échéances prévus

commandes_lister_paiements_echeances(array<string|int, mixed> $echeances) : array<string|int, mixed>
Parameters
$echeances : array<string|int, mixed>

Tableau des échéances décrites suivant ce qu'on attend pour les commandes :

array(
	array('montant' => 40, 'montant_ht' => 33.33, 'nb' => 2),
	array('montant' => 50),
)
Return values
array<string|int, mixed>

Retourne un tableau listant uniquement les montants un par un :

array(array('montant' => 40, 'montant_ht' => 33.33), array('montant' => 40, 'montant_ht' => 33.33), array('montant' => 50, 'montant_ht' => 50))

commandes_lister_montants_echeances()

Lister un à un les montants des échéances prévus idem commandes_lister_paiements_echeances mais retourne uniquement le montant (ttc) pour chaque echeance, et pas un tableau

commandes_lister_montants_echeances(array<string|int, mixed> $echeances) : array<string|int, mixed>
Parameters
$echeances : array<string|int, mixed>
Tags
deprecated
Return values
array<string|int, mixed>

Retourne un tableau listant uniquement les montants un par un :

array(40, 40, 50)

commandes_nb_echeances_payees()

commandes_nb_echeances_payees(mixed $id_commande) : mixed
Parameters
$id_commande : mixed

commandes_trouver_prochaine_echeance_desc()

Trouver la prochaine échéance à payer pour une commande

commandes_trouver_prochaine_echeance_desc(int $id_commande[, array<string|int, mixed>|float $echeances = null ][, mixed $ignorer_derniere = false ]) : array<string|int, mixed>|bool
Parameters
$id_commande : int

Identifiant de la commande

$echeances : array<string|int, mixed>|float = null

Montant unique ou tableau décrivant des échéances complexes

$ignorer_derniere : mixed = false
Return values
array<string|int, mixed>|bool

Retourne la description de la prochaine échéance

commandes_trouver_prochaine_echeance()

commandes_trouver_prochaine_echeance( $id_commande[, null $echeances = null ][, bool $ignorer_derniere = false ]) : bool|mixed
Parameters
$id_commande :
$echeances : null = null
$ignorer_derniere : bool = false
Tags
deprecated
Return values
bool|mixed

inc_commandes_reference_dist()

Génère un numéro unique utilisé pour remplir le champ `reference` lors de la création d'une commande.

inc_commandes_reference_dist(int $id_commande[, int $id_auteur = 0 ]) : string
Parameters
$id_commande : int
$id_auteur : int = 0

(optionnel) identifiant de l'auteur

Tags
deprecated
uses
commande_generer_reference_dist()
Return values
string

reference de la commande


        
On this page

Search results