Utiliser une fonction virtuemart dans mon composant joomla

Support et assistance pour développer des extensions ou pour modifier Joomla! 1.5.x

Moderators: sarki, Aidan38

Forum rules
Règles du forum
flyzi
Joomla! Apprentice
Joomla! Apprentice
Posts: 6
Joined: Thu Apr 29, 2010 3:52 pm

Utiliser une fonction virtuemart dans mon composant joomla

Postby flyzi » Tue May 11, 2010 4:22 pm

Bonjour,

je n'arrive pas à utiliser la fonction add() située dans ps_shopper
-> administrator\components\com_virtuemart\classes

Le but étant de créer un composant spécifique : un utilisateur spécial qui inscrit d'autres utilisateurs.

il me marque qu'il ne trouve pas ps_DB (j'ai fais un require_once de ps_database -> sans succès).


Avez vous un exemple simple de code (qui fonctionne) où un composant externe à virtuemart utilise une fonction de ce dernier ?

Merci d'avance.

electrocity
Joomla! Intern
Joomla! Intern
Posts: 53
Joined: Sat Mar 06, 2010 8:21 pm
Contact:

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby electrocity » Sat May 29, 2010 11:50 am

Tu n'est pas assez précis dans ta demande.
Envoies le code ou plus de renseignement.
déja pour demander facilement quelque chose a virtuemart il faut inclure ceci dans ton fichier

Code: Select all

// Load the virtuemart main parse code
if( !isset( $mosConfig_absolute_path ) ) $mosConfig_absolute_path = $GLOBALS['mosConfig_absolute_path']= JPATH_SITE;


$LiveSite = JURI::base();

require_once( $mosConfig_absolute_path.'/components/com_virtuemart/virtuemart_parser.php' );
Free and paid Joomla & virtuemart extensions https://shop.st42.fr/en

flyzi
Joomla! Apprentice
Joomla! Apprentice
Posts: 6
Joined: Thu Apr 29, 2010 3:52 pm

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby flyzi » Sat May 29, 2010 12:39 pm

J'ai réussi à faire ce que je voulais. Merci.

electrocity
Joomla! Intern
Joomla! Intern
Posts: 53
Joined: Sat Mar 06, 2010 8:21 pm
Contact:

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby electrocity » Sun May 30, 2010 2:48 pm

pour info
suite a ton message perso
j'aimerais utiliser la fonction add(&$d) de ps_checkout.php afin d'ajouter une
commande "manuellement".

comment utiliser cette fonction ? Comment se fait l'appel à cette fonction
avec début de code que vous m'aviez indiqué ?

Enfin, je ne comprends pas ce qu'est (&$d) et comment en recréer un en dur.


(&$d)
& : veut dire faire référence à(sans cela , il utilisera une copie de la valuer)
$d : est la variable passez en paramêtre dans la fonction(ici la fonction est add())
De plus en regardant le code de virtuemart dans ps_checkout.php on peut voir que c'est appelé par le fonction process(&$d)
en allant plus loin cette fonction est appeler apparemment par submit_order( this.form ) dans le fichier get_final_confirmation.tpl.php
donc $d est le résultat des valeurs envoyées par l'étape de confirmation de commande dans VIrtuemart avant d'être redirigé vers l'organisme de payement.
Cette fonction add() enregistre toutes les données de la commande dans les tables :
vm_order_history ,vm_order_payment,vm_order_item ... so tous est valide.
Donc pour utiliser cette fonction tel que il faudra lui envoyer un tableau avec tous, équivalent au $d, démarer une $_SESSION['cart'],['coupon_id'] ...;
Je pense que si tu avait compris cela tu n'aurais pas posé cette question
Donc,
Si tu n'a jamais créer de composant, vaut mieux commencer plus petit pour t'entrainer ou trouver des tutoriels.
Si tu veut ajouter manuellement des clients, cette fonction n'est pas utile car c'est pour ajouter une commande avec tous les éléments dedans.

J'éspére que tu le prend pas mal, mais c'est pour t'avertir de la complexité de la chose.

Bonne chance pour ton projet.
Mr Electrocity
Free and paid Joomla & virtuemart extensions https://shop.st42.fr/en

flyzi
Joomla! Apprentice
Joomla! Apprentice
Posts: 6
Joined: Thu Apr 29, 2010 3:52 pm

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby flyzi » Sun May 30, 2010 3:19 pm

Merci. En faite,

j'ai déjà réalisé un composant, créé un formulaire pour qu'un utilisateur spécifique inscrive un client. Et là, je bloque sur la création d'une commande (un utilisateur spécifique rempli son panier normalement, mais à l'enregistrement de la commande il lui donne l'id du client !).

Merci pour ces précisions.

electrocity
Joomla! Intern
Joomla! Intern
Posts: 53
Joined: Sat Mar 06, 2010 8:21 pm
Contact:

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby electrocity » Mon May 31, 2010 12:12 am

J'ai créer un module relais colis TNT pour le shipping.
Il me semble que l'ID est un variable de session.
Si tu veux simplement changer l'id client, il suffirait de la modifier juste avant ou au moment de confirmer la commande.Mais il faut surement aussi récuperer dans la table le reste des renseignement.
je te conseil de rajouter un print_r($_SESSION) dans tes étapes de commandes. tu trouvera plus facilement ce qu'il faut inclure. puis faire une requéte sur les tables qui on les renseignement nécessaire.
Aprés tu peux proteger avec la valeur gid pour les groupes d'utilisateur admis.
Tu peux aussi modifer order.orderprint.php pour pouvoir changer le client par la suite dans l'administration une fois la commande complêter.
Free and paid Joomla & virtuemart extensions https://shop.st42.fr/en

electrocity
Joomla! Intern
Joomla! Intern
Posts: 53
Joined: Sat Mar 06, 2010 8:21 pm
Contact:

Re: Utiliser une fonction virtuemart dans mon composant joom

Postby electrocity » Mon May 31, 2010 12:17 am

Par hasard j'ai trouvé ce HACK https://forum.virtuemart.net/index.php?topic=26194.0
Je pense que cela devrait te convenir.
Free and paid Joomla & virtuemart extensions https://shop.st42.fr/en


Return to “1.5 - Développement”

Who is online

Users browsing this forum: No registered users and 2 guests