Jump to content

[Prestashop 1.6.0.9] Passer commande sans paiement


Recommended Posts

Bonjour à tous,

 

J'ai cherché sur le forum mais je n'ai pas trouvé de solution à mon problème.

 

Nous avons des clients avec tellement de conditions et moyens de paiement différents (prélèvement, virement, chèque, appel avec carte, paiement à la livraison, 30 jours, etc.) qu'il est impossible de les résumer tous sur Prestashop dans la dernière étape de la validation de commande.

 

J'aimerais donc donner la possibilité à nos clients de passer commande SANS payer ou SANS sélectionner un moyen de paiement. Juste validation de commande et c'est tout.

 

Comment faire?

 

Merci pour vos réponses.

Link to comment
Share on other sites

Un moyen assez simple, vous créez un moyen de paiement générique basé sur le module chèque.

Appelez-le "Paiement à valider", par exemple

Remplacez le contenu du tpl qui demande de remplir le chèque avec vos coordonnées par un texte type qui explique le système de paiement, et le tour est joué :)

Il faudra bien sur créer un statut particulier pour ce module ("Paiement en attente") et y associer les options voulues.

Link to comment
Share on other sites

Merci pour votre réponse.

J'ai du me tromper quelque part car j'ai créé une usine à gaz :-)

 

J'ai activé le module "chèque". PS me propose uniquement de configurer le module avec mon adresse et payer à l'ordre de.

 

De là je n'ai rien trouvé de ce que vous me proposiez donc suis parti dans le php du module chèque pour modifier des traductions et là ça fait un peu mal car il y en a beaucoup!!

 

Ensuite et c'est quelque chose que je n'ai pas encore trouvé. Prestashop envoie un mail au client en fin de commande "vous avez choisi la méthode de paiment par chèque..." alos que j'aimerais simplement un mail disant que la commande va être validée par nos soins.

 

Si je commence à modifier tout ça, ça veut dire qu'en cas de mise à jour pretashop, je perdrai aussi toutes mes modifications, car je ne modifie pas uniquement le thème, non?

 

Doit y avoir plus simple ou j'ai zappé quelque chose :-)

 

 

 

Un moyen assez simple, vous créez un moyen de paiement générique basé sur le module chèque.

Appelez-le "Paiement à valider", par exemple

Remplacez le contenu du tpl qui demande de remplir le chèque avec vos coordonnées par un texte type qui explique le système de paiement, et le tour est joué :)

Il faudra bien sur créer un statut particulier pour ce module ("Paiement en attente") et y associer les options voulues.

Link to comment
Share on other sites

oulà, non...

 

Quand je dis "basé sur le module chèque", ça veut dire une copie, on ne touche pas à l'original.

Ensuite, il faut modifier les tpl ( surtout payment_execution.tpl ) qui affiche les informations de paiement au client et le mail envoyé

Enfin, créer le nouveau statut et y associer le mail.

 

Ajustez en dernier les traductions qui mentionnent le paiement par chèque.

 

Si vous n'y connaissez rien en code, j'avoue que ce n'est pas évident.

Link to comment
Share on other sites

Bonjour,

Je pense que la méthode d Eolia, n est pas mauvaise du tout, et ne devrait pas poser trop de probleme a faire, meme sans tro de connaissance en code.!
En tout cas, c'est aussi comme ca, que j aurais attaqué la chose.
je dois le faire sur un de mes sites, si j arrive a qq chose de correct, je poste la chose.

Bon courage

Brice

Link to comment
Share on other sites

bon... je vous ai fait le module :)

 

Conditions:

 

- Commencez par copier le contenu du répertoire mails du module dans celui de votre boutique (2 fichiers)

- Créez un statut "Paiement en attente de validation", mettez l'icone que vous voulez (16 x 16) et cochez:

 Envoyer un e-mail au client lorsque la commande est changé à cet état

- Dans les modèles de mails en dessous, choisissez "generic-payment" (pour toutes les langues si nécessaire)

- Enregistrez et récupérez le n° de statut (ID)

 

Dans le zip:

- Vous devez remplacer 9999 par l'ID de votre nouveau statut ligne 14 de genericpayment.php:

const AWAITING_STATUS = 9999; 
Enregistrez et installez le module normalement

 

Mise à jour version 1.2

  • ID du statut en constante de classe
  • Traduction fr terminée :)
Edit: Suite à la politique de l'autruche de Prestashop, j'ai décidé d'enlever toutes mes contributions de modules gratuits. Edited by Eolia (see edit history)
  • Like 6
Link to comment
Share on other sites

Alors là, Chapeau Eolia, j étais dessus aussi, mais tu as été plus rapide, et surement plus efficace, qu un de mes bidouillages. !!!
C'est pas la première fois que tu bosses vite et bien, et un grand merci a toi pour l aide que tu apporte a ce forum...
Deja le coup de la Newsletter, c'est plus que terrible comme module.!

 

Encore merci.

Brice.

Link to comment
Share on other sites

@Eolia pas d'urgence ou trop d'urgences;  désolé je n'ai pas eu le temps de venir voir ce qu'il se passait sur le forum, les fins de semaine sont pénibles chez nous :-)

Un grand grand, ÉNORME merci pour votre aide. Je n'ai pas eu le temps de voir mais je m'y attache ce week end et vous tiens au courant.

Link to comment
Share on other sites

Bon copié les deux fichiers dans le répertoire mail.

Ensuite 

post-429373-0-19745500-1428739829_thumb.png

Puis 

post-429373-0-95063000-1428740190_thumb.png

Récupéré le n° de statut et l'ai mis dans le fichier php ligne 14

puis installé le module.

 

Donc jusque là tout va bien...

 

Mais ça fait quoi? Si j'ai bien compris ça envoie un mail pour dire que le paiement est en attente de validation.

 

Mais on parle toujours de paiement, de chèque alors que je voudrais simplement sucrer cette étape. Pas de paiement, une fois qu'on a validé le transport (et encore le transport n'est même pas nécessaire) on dit que la commande va être validée, à la limite on leur envoie un mail avec la récap (mais pas de facture, BL ou autres) et c'est tout.

 

Link to comment
Share on other sites

Euh.. on ne parle plus de chèque là, juste d'un paiement en attente de validation.

Si j'ai bien compris vous gérez le paiement à coté, par traites, virement ou autre. 

Donc, si vous considérez que le paiement est acquis d'office changez juste les traductions et le n° d'ID status par celui du payment validé

 

Si après vous ne voulez ni paiement, ni transport pas besoin de Prestashop du coup. Juste des pages produits, une case à cocher et envoi avec coordonnées ^^

Link to comment
Share on other sites

Oui pardon c'est vrai. Mais en bas du panier on propose de choisir une méthode de paiement ce qui est déjà défini par le commercial.

On parle de commandes pas de paiement. Donc à la limite il faudrait créer un statut "commande envoyée et en cours de validation" d'autant plus que la facture peut changer du montant calculé par prestashop (nous sommes une toute petite centrale d'achat avec un département "viande" et donc le client peut acheter 10kg de viande mais il va recevoir 10,2 kg et la facture reflètera les 200 grammes de différence.)

 

On a besoin de prestashop pour le panier.

Le client met des produits dans le panier et commande, la commande est validée par le commercial en fonction du stock et on livre en fonction des conditions définies aussi par le commercial.

La facturation intervient plus tard.

Le client a par la suite possibilité de consulter son historique de commandes, de re commander une certaine commande en pouvant modifier les quantités, etc... Pas de consultation de facture

 

Voila :-)

Link to comment
Share on other sites

Bon alors le transporteur, si vous n'en avez qu'un vous pouvez ne pas l'afficher en mettant un display:none dans le tpl de la page commande sur le bloc concerné

Vous pouvez également modifier le titre du bloc "CHOISISSEZ VOTRE MÉTHODE DE PAIEMENT" par "VALIDATION DE LA COMMANDE" (dans les traductions -> traductions du front office, theme: votre thème, -> order-payment)

et modifier le tpl du module (genericpayment/views/template/hook/payment.tpl) en laissant juste:

<p class="payment_module" style="text-align:center">
	<a href="{$link->getModuleLink('genericpayment', 'payment', [], true)|escape:'html'}" title="{l s='Generic payment.' mod='genericpayment'}">
		{l s='Je valide ma commande' mod='genericpayment'}
	</a>
</p>
Edited by Eolia (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

re alors j'ai tous fait le module est bien la mail le problème c'est quand je passe une commande je ne reçois pas une mail me disant que une commande vient d'être passé ni sur prestashop ni sur ma boite mail.

 

une petite idée du problème ?

 

pour info j'ai déposer les fichiers du dossier mail de votre module dans le dossier mail/fr de la racine de prestashop

Link to comment
Share on other sites

Avez-vous bien respecté cette étape ?

 

- Créez un statut "Paiement en attente de validation", mettez l'icone que vous voulez (16 x 16) et cochez:

 Envoyer un e-mail au client lorsque la commande est changé à cet état

Link to comment
Share on other sites

Salut tout le monde 

 

Déjà merci pour ton aide Eolia

 

En choisi le mode de paiement ( comptant à la livraison ) le client n'as pas la possibilité de télécharger le pdf de la facture.

 

Et quand je met mettre l'image sur la facture  voici se que j'obtiens après avoir fait un clic sur je confirme la commande ( la dernière étape quoi ).

 

TCPDF ERROR: [image] Unable to get image: /img/tmp/product_mini_2_7.jpg

 

Je suis perdu car dans commandes/états, j'en fait un nouveau mais un possible de choisir le module comptant a la livraison après avoir cocher ( Envoyer un e-mail au client lorsque la commande change d'état. )

VERSION :  PrestaShop™ 1.6.0.14

un peut d'aide si possible c'est assez urgent

 

merci d'avance :-)

Link to comment
Share on other sites

  • 5 months later...

bonjour, merci pour votre module,

 

moi je rencontre une erreur 500 lors de la validation de la facture vous avez une idée?

 

j'ai activé le mod debug j'obtiens cela

at line 174 in file classes/PaymentModule.php

168. 169. 		$order_status = new OrderState((int)$id_order_state, (int)$this->context->language->id);170. 		if (!Validate::isLoadedObject($order_status))171. 		{172. 			PrestaShopLogger::addLog('PaymentModule::validateOrder - Order Status cannot be loaded', 3, null, 'Cart', (int)$id_cart, true);173. 			throw new PrestaShopException('Can\'t load Order status');174. 		}175. 176. 		if (!$this->active)177. 		{178. 			PrestaShopLogger::addLog('PaymentModule::validateOrder - Module is not active', 3, null, 'Cart', (int)$id_cart, true);
Edited by pierres13 (see edit history)
Link to comment
Share on other sites

Can't load Order status
at line 174 in file classes/PaymentModule.php

168. 169. 		$order_status = new OrderState((int)$id_order_state, (int)$this->context->language->id);170. 		if (!Validate::isLoadedObject($order_status))171. 		{172. 			PrestaShopLogger::addLog('PaymentModule::validateOrder - Order Status cannot be loaded', 3, null, 'Cart', (int)$id_cart, true);173. 			throw new PrestaShopException('Can\'t load Order status');174. 		}175. 176. 		if (!$this->active)177. 		{178. 			PrestaShopLogger::addLog('PaymentModule::validateOrder - Module is not active', 3, null, 'Cart', (int)$id_cart, true);
  • PaymentModuleCore->validateOrder - [line 34 - modules/genericpayment/controllers/front/validation.php] - [9 Arguments]
    28. 		$currency = $this->context->currency;29. 		$total = (float)$cart->getOrderTotal(true, Cart::BOTH);30. 31. 		$mailVars =	array();32. 33. 		$this->module->validateOrder((int)$cart->id, GenericPayment::AWAITING_STATUS, $total, $this->module->displayName, NULL, $mailVars, (int)$currency->id, false, $customer->secure_key);34. 		Tools::redirect('index.php?controller=order-confirmation&id_cart='.(int)$cart->id.'&id_module='.(int)$this->module->id.'&id_order='.$this->module->currentOrder.'&key='.$customer->secure_key);35. 	}36. }
  • GenericPaymentValidationModuleFrontController->postProcess - [line 171 - classes/controller/Controller.php]
    165. 			// setMedia MUST be called before postProcess166. 			if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className)))167. 				$this->setMedia();168. 169. 			// postProcess handles ajaxProcess170. 			$this->postProcess();171. 172. 			if (!empty($this->redirect_after))173. 				$this->redirect();174. 175. 			if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className)))
  • ControllerCore->run - [line 373 - classes/Dispatcher.php]
    367. 			// Execute hook dispatcher368. 			if (isset($params_hook_action_dispatcher))369. 				Hook::exec('actionDispatcher', $params_hook_action_dispatcher);370. 371. 			// Running controller372. 			$controller->run();373. 		}374. 		catch (PrestaShopException $e)375. 		{376. 			$e->displayMessage();377. 		}
  • DispatcherCore->dispatch - [line 28 - index.php]
    22. *  @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)23. *  International Registered Trademark & Property of PrestaShop SA24. */25. 26. require(dirname(__FILE__).'/config/config.inc.php');27. Dispatcher::getInstance()->dispatch();
Link to comment
Share on other sites

  • 4 weeks later...

Bonjour, 

 

J'utilise actuellement votre module (un grand merci d'ailleurs Eolia !) mais je souhaiterai modifier le css de la barre qui nous montre à quelles étapes de la commande on se trouve (tout mettre en ligne et pas en colonne). En effet, avec votre module, elle ne s'affiche pas comme dans les étapes précédentes).

 

Ou puis je modifier ce design ?

 

Merci par avance pour votre aide.

 

EDIT: le design pris en compte est celui des versions mobiles alors que je suis en grand écran sur un écran 27 pouces, je ne comprends pas pourquoi.

Edited by Pierre-Antoine (see edit history)
Link to comment
Share on other sites

Veuillez modifiez le fichier genericpayment/view/templates/front/payment_execution.tpl

 

Vous trouverez au début ceci:

{capture name=path}{l s='Generic payment' mod='genericpayment'}{/capture}
{include file="$tpl_dir./breadcrumb.tpl"}

{include file="$tpl_dir./breadcrumb.tpl"}  correspond à l'affichage du fil d'ariane

 

Celui-ci est peut-être différent pour votre thème ? Regardez et adaptez cette ligne suivant vos autres modules de paiement :)

Link to comment
Share on other sites

Bonjour,

je me joins aux précédents messages de la communauté pour vous remercier pour ce module bien pratique.

 

Pour ma part, je l'utilise comme "Demande devis" car pour mes clients qui livrent des petits jeux ou des grands jeux, nous avons besoin d'une demande devis pour ces derniers.

(Les petits jeux, eux, sont envoyés via la Poste)

 

Leur transporteur pour les grands jeux a une grille tarifaire selon le poids et le département (1200 prix impossibles à entrer dans un transporteur Prestashop (même avec ce module) car leurs prix varient chaque année !

Les prix sont donc imprimés sur plusieurs feuilles.

 

Voici mon problème.

J'ai créé un transporteur "Demande de devis sous 24h" que j'affecte exclusivement à chacun de mes grands jeux, donc au moment de la livraison, seul ce "transporteur" est possible. Parfait !

 

En revanche, au moment du paiement, j'aimerais que ne figure QUE votre module que j'ai transformé en "Demande de devis" et ne plus voir Paypal, Virement et Chèque.

 

Y'a-t-il une condition if que je puisse insérer dans order-payment.tpl, qui permettrait de n'afficher que votre module si le transporteur "Demande devis sous 24h" est sélectionné ?

J'espère que tout ceci n'est pas confus.

 

Merci pour votre temps.

Link to comment
Share on other sites

Oui il faut ajouter une condition dans chaque module de paiement concerné.

Ajouter, sur le hookpayment et éventuellement sur hookDisplayPaymentEU (si le module l'utilise)

	public function hookPayment($params) {
	
		if($params['cart']->id_carrier == 'id_du_transporteur_special')
			return;
                ....

        }

Attention, si vous mettez à jour vos modules de paiement, ces modifs seront à refaire^^

Link to comment
Share on other sites

Excellent, ça fonctionne :D

 

Pour info, au cas où ça pourrait en aider d'autres : j'ai donc modifié les fichiers cheque.php, bankwire.php et paypal.php qui se trouvent dans les modules à la racine (pas dans le thème)

ma_boutique/modules/paypal/paypal.php et pareil pour les autres.

 

Et dans le fichier genericpayment.php du dossier modules/genericpayment j'ai mis une condition différente

public function hookPayment($params)
    {
        if($params['cart']->id_carrier != 'id_du_transporteur_special')
	    return;
        ...
    }

Si le transporteur spécial n'est pas sélectionné, alors je n'affiche pas ce module.

 

Encore merci Eolia :)

Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

Bonsoir,

j'aurai besoin d'aide

J'ai installé le module il y a qqles temps et faute de ne pas m'être penché dessus, je l'avais oublié ;)

 

j'ai installé le module

j'aimerai comme certains ont pu le faire avec succès faire en sorte que si un transporteur (id = .....) est sélectionné, seul ce module doit apparaitre

certains sont parvenus à le faire (cf ci-dessous) en modifiant cheque.php, etc...

Voici un extrait du fichier cheque.php

J'aimerai que si chèque est sélectionné, le module "devis" n'apparaissent pas et au contraire si "paiement générique" est sélectionné comme transporteur que seul ce module apparaisse.

 

Merci

 

******************extrait de cheque.php********

 

public function hookPayment($params)
{
if (!$this->active)
return;
if (!$this->checkCurrency($params['cart']))
return;
 
$this->smarty->assign(array(
'this_path' => $this->_path,
'this_path_cheque' => $this->_path,
'this_path_ssl' => Tools::getShopDomainSsl(true, true).__PS_BASE_URI__.'modules/'.$this->name.'/'
));
return $this->display(__FILE__, 'payment.tpl');
}
 

******************extrait de genericpayement.php********

 

public function hookPayment($params)
{
if (!$this->active)
return;
if (!$this->checkCurrency($params['cart']))
return;
 
$this->smarty->assign(array(
'this_path' => $this->_path,
'this_path_genericpayment' => $this->_path,
'this_path_ssl' => Tools::getShopDomainSsl(true, true).__PS_BASE_URI__.'modules/'.$this->name.'/'
));
return $this->display(__FILE__, 'payment.tpl');
}

****************************************************************

 

Excellent, ça fonctionne :D

 

Pour info, au cas où ça pourrait en aider d'autres : j'ai donc modifié les fichiers cheque.php, bankwire.php et paypal.php qui se trouvent dans les modules à la racine (pas dans le thème)

ma_boutique/modules/paypal/paypal.php et pareil pour les autres.

 

Et dans le fichier genericpayment.php du dossier modules/genericpayment j'ai mis une condition différente

public function hookPayment($params)
    {
        if($params['cart']->id_carrier != 'id_du_transporteur_special')
	    return;
        ...
    }

Si le transporteur spécial n'est pas sélectionné, alors je n'affiche pas ce module.

 

Encore merci Eolia :)

Link to comment
Share on other sites

Salut,

alors je n'ai pas bien compris tes modifications de cheque.php mais c'est très simple.

 

Voici ce que tu fais dans ces trois fichiers :

www.le-nom-de-ta-boutique/modules/cheque/cheque.php

www.le-nom-de-ta-boutique/modules/bankwire/bankwire.php

et www.le-nom-de-ta-boutique/modules/paypal/paypal.php

 

tu cherches la ligne public function hookPayment($params) et tu ajoutes après la première accolade cette condition if :

public function hookPayment($params)
    {
        if($params['cart']->id_carrier == 'id_du_transporteur_special')
	    return;
        /*le reste tu n'y touches pas !*/
        ...
    }

et dans le fichier

www.le-nom-de-ta-boutique/modules/genericpayment/genericpayment.php

 

à la même ligne tu mets cette condition if :

public function hookPayment($params)
    {
        if($params['cart']->id_carrier != 'id_du_transporteur_special')
	    return;
        /*le reste tu n'y touches pas !*/
        ...
    }

Voilà.

Si tu choisis le transporteur spécial, tu auras le paiement générique, sinon les autres moyens de paiement (chèque, virement et Paypal).

 

J'espère que cela t'aura aidé.

Link to comment
Share on other sites

  • 1 month later...

Bonjour,

 

Merci beaucoup pour ce module, qui répond parfaitement à mes besoins.

 

Je propose le rachat de mobile sur mon site (https://www.iassist.fr), de ce fait la grande particularité est que ce n'est pas le client qui paye lorsqu'il passe commande mais bien nous qui devons envoyer un chèque à réception de leur téléphone.

 

En revanche je n'arrive pas à modifier les traductions.

 

En place et lieu de "demande de devis" je souhaite avoir "demande de rachat",

 

J'ai été dans les traduction du module dans le back office mais rien y fait...

 

cf pièce jointe

 

Merci d'avance :-)

 

 

post-916881-0-88341900-1457623614_thumb.png

post-916881-0-92905900-1457623634_thumb.png

Link to comment
Share on other sites

C'est également ce que j'ai fais avec le fichier :

 

/modules/genericpayment/translations/fr.php

 

Mais j’obtiens une erreur dans mon panier.

 

Peut-être n'est pas le bon fichier à traduire ?

 

J'utilise un module de one page checkout, peut-être entre-il en conflit avec...

 

Merci pour votre aide en tout cas

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...
  • 1 month later...

Bonjour

 

Un très grand merci pour ce module que j'ai utilisé non pas comme demande de devis, mais plutôt pour pré-commander des articles et ensuite le client paye plus tard après validation, si il y a du stock disponible (je sais... c'est assez bizarre mais le client est roi :) )

J'ai personnalisé tous les textes et un peu le template .tpl.

Et maintenant je m'attaque à la customisation du mail reçu par le client.

 

Et demain je ne sais pas encore comment faire..., mais je devrais demander au client quel type de paiement il préfère et lui envoyer un mail pour qu'il me dise comment il souhaite payer, ça je pense créé un nouveau statut avec un nouveau template de mail.

 

Ensuite le client doit me répondre.

Si répond par virement c'est facile, mais s'il me dit par CB je dois lui renvoyer un mail pour payer par SystemPay. etça je n'ai pas d'idée de comment faire ? Si vous avez des pistes je suis preneuse !!

 

Autre question , que veut dire exactement la case à cocher  Considérer la commande associée comme validée. ??

Cela déclenche quoi ?

 

Merci encore !!!

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

  • 8 months later...

Bonjour,

j'ai appliqué cette procédure à la lettre mais cela ne fonctionne pas sur ma 1.6.1.9

J'ai un transporteur(id=128), pour lequel je veux interdire le paiement par paypal et payplug. Ce transporteur est forcé sur certains articles par une règle sur le poids.

Et surtout, si le client modifie son panier, et que le transporteur change, je veux que paypal et payplug soit dispo ou pas.

 

Merci pour votre aide précieuse.

Link to comment
Share on other sites

Bonjour davn44,

la version sur laquelle j'ai installé ce module "fait main" par Eolia fonctionne sur 1.6.1.2.

 

Il se peut qu'avec les mises à jour entre temps celui-ci ne fonctionne pas.

Ceci étant dit, si vous avez vraiment appliqué toutes les procédures pas à pas, cela devrait fonctionner.

 

Pour l'instant je ne puis que vous conseiller de bien vérifier si une coquille ne s'est pas insérée.

Link to comment
Share on other sites

Bonjour davn44,

la version sur laquelle j'ai installé ce module "fait main" par Eolia fonctionne sur 1.6.1.2.

 

Il se peut qu'avec les mises à jour entre temps celui-ci ne fonctionne pas.

Ceci étant dit, si vous avez vraiment appliqué toutes les procédures pas à pas, cela devrait fonctionner.

 

Pour l'instant je ne puis que vous conseiller de bien vérifier si une coquille ne s'est pas insérée.

Ok, par contre si tu peux enlever le zip du post #41...

Ca ne le fait pas trop de distribuer gratuitement un module en vente sur mon shop https://eoliashop.com/modules-prestashop/paiement-modules/generic-payment

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

  • 1 year later...

Bonjour tout le monde,

Je relance ce post. Ce module à l'air génial !

Quelques petites interrogations :

Marche t'il également sur 1.7 ?

Si c'est le cas, pourrais-je réavoir le zip svp (je ne le trouve pas) ?

Est-ce possible d'assembler toutes les factures d'une période donnée en une seule facture mensuelle ?

 

À très vite

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...