THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#126 Re: Mise à jour Thélia

(01-05-2013 14:01:27)


Ont disparu. Heureusement.


OpenStudio Toulouse

Offline

#127 Re: Mise à jour Thélia

(01-05-2013 14:53:49)


Ok.

Donc je dois modifier toutes les requêtes... \o/


Aide les autres, ils t'aideront en retour.

Offline

#128 Re: Mise à jour Thélia

(02-05-2013 03:42:08)


Je passe à la MàJ du site en prod...

Je pars sur la V1.5.4.1.....

Le fichier ou répertoire /classes/Cnx.class.php.orig n'existe pas. Vous devez le copier depuis l'archive de la version de Thelia que vous souhaitez installer

Wouhouuu ça commence bien \o/

Et OUI j'ai bien copié/collé l'intégralité des fichiers et répertoires présents dans la distribution...


bon bah je recopie/colle ce fichier...

Last edited by Elyos (02-05-2013 03:47:30)


Aide les autres, ils t'aideront en retour.

Offline

#129 Re: Mise à jour Thélia

(02-05-2013 05:36:23)


<div class="patchplugin"></div>

ça fout bien la m***e dans ma mise en page quand je veux mettre une colonne à droite...


Aide les autres, ils t'aideront en retour.

Offline

#130 Re: Mise à jour Thélia

(02-05-2013 07:49:02)


Bon bah normalement ça tourne...

Me reste à réussir à intégrer les formulaires de paiement DANS le contenu du site (sans parsephp ça se complique)

puis à mettre les petits readme.txt et plugin.xml dans tous mes dossiers de plugin ^^

En espérant que y'a pas de bugs lors des différents tests...


Aide les autres, ils t'aideront en retour.

Offline

#131 Re: Mise à jour Thélia

(02-05-2013 08:01:57)


Bon bah y'a encore les PDFs qui ont un problème d'encodage...


Aide les autres, ils t'aideront en retour.

Offline

#132 Re: Mise à jour Thélia

(02-05-2013 08:12:07)


Un petit coup d'utf8_decode wink


Aide les autres, ils t'aideront en retour.

Offline

#133 Re: Mise à jour Thélia

(02-05-2013 10:48:33)


Raaaaaaaaaaaaaaah!

Elle est où la fonction qui déclenche le mail de confirmation de commande???

Je reçois un mail non substitué à chaque fois (>_<" )


Aide les autres, ils t'aideront en retour.

Offline

#134 Re: Mise à jour Thélia

(02-05-2013 10:56:19)


Trouvé....

On peut pas le shinter??? Enfin... je veux pas modifier le moteur thélia... mais ce que j'avais avant été mieux...


Aide les autres, ils t'aideront en retour.

Offline

#135 Re: Mise à jour Thélia

(02-05-2013 10:58:29)


ptet par ici : substitutionsmailcommande ....


Aide les autres, ils t'aideront en retour.

Offline

#136 Re: Mise à jour Thélia

(02-05-2013 11:14:47)


Ouiiiiiiiiiiiiin ( T _ T )

Je vais devoir modifier le moteuuuuuuuuuuur ! ='(


Aide les autres, ils t'aideront en retour.

  • manu
  • faï tot petar miladiu

Offline

#137 Re: Mise à jour Thélia

(02-05-2013 11:27:25)


Elyos wrote:

Ouiiiiiiiiiiiiin ( T _ T )

Je vais devoir modifier le moteuuuuuuuuuuur ! ='(

pour faire quoi ?


http://doc.thelia.net/
http://thelia.net/modules
http://raynaud.io
PGP public Key : 0xC6E546A6

Offline

#138 Re: Mise à jour Thélia

(02-05-2013 11:39:13)


Pour faire ça :

		/* Message client */
		$msg = new Message("mailconfirmcli");

		$msgdesc = new Messagedesc($msg->id,$commande->lang);

		$sujet = $this->substitmail($msgdesc->titre, $commande);
		$corps = $this->substitmail($msgdesc->description, $commande);
		$corpstext = $this->substitmail($msgdesc->descriptiontext,$commande);

		$client = new Client($commande->client);
		
		$formatmail = new Formatmail();
		list($sujet, $corps, $corpstext) = $formatmail->substitutions($msg->id, $sujet, $corps, $corpstext, array('commande' => $commande, 'client' => $client));

		// Envoi du mail au client
		Mail::envoyer(
			$client->prenom . " " . $client->nom, $client->email,
			$nomsite, $emailfrom,
			$sujet,
			$corps, $corpstext);

		if($commande->paiement!=8 && $commande->paiement!=21){
			/* Message admin */
			$msg->charger("mailconfirmadm");

			$msgdesc = new Messagedesc($msg->id);

			$sujet = $this->substitmail($msgdesc->titre, $commande);
			$corps = $this->substitmail($msgdesc->description, $commande);
			$corpstext = $this->substitmail($msgdesc->descriptiontext,$commande);

			$formatmail = new Formatmail();
			list($sujet, $corps, $corpstext) = $formatmail->substitutions($msg->id, $sujet, $corps, $corpstext, array('commande' => $commande, 'client' => $client));
				
			// Notifier le ou les administrateurs
			$emailscommande = Variable::lire("emailscommande");

			if (trim($emailscommande) == '') $emailscommande = $emailcontact;

			$emails = explode(',', $emailscommande);

			foreach($emails as $email) {
				$email = trim($email);

				if (empty($email)) continue;

				Mail::envoyer(
						$nomsite, $email,
						$nomsite, $emailfrom,
						$sujet,
						$corps, $corpstext);
			}
		}

1/ Le mail de confirmation est envoyé à l'admin seulement quand la commande est payée ou doit être payée par (chèque, mandat, virement...)
2/ J'ai un système de formatage et de substitutions dans l'admin des mails


Aide les autres, ils t'aideront en retour.

  • manu
  • faï tot petar miladiu

Offline

#139 Re: Mise à jour Thélia

(02-05-2013 11:46:49)


L'envoi du mail est fait depuis le module de paiement, par conséquent tu n'as pas besoin de modifier le moteur mais d'utiliser la surcharge de classe.


http://doc.thelia.net/
http://thelia.net/modules
http://raynaud.io
PGP public Key : 0xC6E546A6

Offline

#140 Re: Mise à jour Thélia

(02-05-2013 11:55:52)


manu wrote:

L'envoi du mail est fait depuis le module de paiement, par conséquent tu n'as pas besoin de modifier le moteur mais d'utiliser la surcharge de classe.

Surcharge de classe? ( O.o ) C'est quoi ça? ( o.O)

J'ai dupliqué le fichier PluginPaiement.class.php, renommé en PluginPaiement.class.php.orig et modifié le PluginPaiement.class.php


Aide les autres, ils t'aideront en retour.

Offline

#141 Re: Mise à jour Thélia

(02-05-2013 13:22:39)


Surcharge de classe? ( O.o ) C'est quoi ça? ( o.O)

Justement, c'est de ça dont il s'agit: O.O = orienté objet. Une classe hérite d'une autre, et tu peux alors surcharger ses méthodes publiques ou protégées.

Par exemple, dans un plugin de paiement, tu déclares une classe qui hérite (extends) de PluginPaiment. Si tu déclares une méthode mail(), c'est celle-ci qui sera invoquée au lieu de celle de la classe parente: voilà un exemple de surcharge de méthode.

Mais bon, le sujet est vaste... Documentes toi sur la programmation orientée objet (genre là), c'est un paradigme très utile de nos jour (et depuis 20 ans dans l'industrie) wink


OpenStudio Toulouse

  • manu
  • faï tot petar miladiu

Offline

#142 Re: Mise à jour Thélia

(02-05-2013 15:16:10)


Elyos wrote:
manu wrote:

L'envoi du mail est fait depuis le module de paiement, par conséquent tu n'as pas besoin de modifier le moteur mais d'utiliser la surcharge de classe.

Surcharge de classe? ( O.o ) C'est quoi ça? ( o.O)

J'ai dupliqué le fichier PluginPaiement.class.php, renommé en PluginPaiement.class.php.orig et modifié le PluginPaiement.class.php

Mouarf, c'est une blague ? Jpensais que t'avais quand même un minimum de bagage pour faire des plugins !


http://doc.thelia.net/
http://thelia.net/modules
http://raynaud.io
PGP public Key : 0xC6E546A6

Offline

#143 Re: Mise à jour Thélia

(02-05-2013 17:52:04)


Bah je vois pas trop comment bloquer l'appel de cette fonction...


Aide les autres, ils t'aideront en retour.

  • manu
  • faï tot petar miladiu

Offline

#144 Re: Mise à jour Thélia

(03-05-2013 08:15:00)


En le redéfinissant dans ton plugin.

public function mail()
{
   //rien ici, donc rien ne sera fait, saytout
}

et si tu veux rajouter de la magie et que tu veux envoyer ton mail quand le paiement passe à payé :

public function mail(){}

public function confirmation($commande)
{
    parent::mail($commande);
}

public function substitmail($corps, $commande)
{
   //tu redéfinis ici tes substitutions, voir même : 
   $corps = parent::substitmail($corps, $commande);

   //tes substitutions à toi ici

   return $corps;

}

pour la fonction substitmail, tu as des appels de plugin "preSubstitmail", "substitutionsventeprodmailcommande" et "substitutionsmailcommande".

Avec tout ça tu peux arriver à tes fins sans toucher une seule ligne de code du moteur de Thelia !


http://doc.thelia.net/
http://thelia.net/modules
http://raynaud.io
PGP public Key : 0xC6E546A6

Offline

#145 Re: Mise à jour Thélia

(03-05-2013 08:35:27)


Dans le cas où plusieurs plugins de paiement sont actifs, il faut s'assurer qu'on envoie le mail uniquement si c'est ce plugin de paiement qui a été utilisé sur la commande:

public function confirmation($commande)
{
    if ($this->est_module_de_paiement_pour($commande)) parent::mail($commande);
}

OpenStudio Toulouse

Offline

#146 Re: Mise à jour Thélia

(03-05-2013 12:02:39)


@menu : Je vais voir tout ça. wink

roadster31 wrote:
public function confirmation($commande)
{
    if ($this->est_module_de_paiement_pour($commande)) parent::mail($commande);
}

Je connaissais pas celle là! Je vais pouvoir modifier mes plugins de paiement pour l'affichage du formulaire big_smile

Par contre... tinymce complètement désactivé? faut le rajouter en plugin?

Last edited by Elyos (03-05-2013 12:26:40)


Aide les autres, ils t'aideront en retour.

Offline

#147 Re: Mise à jour Thélia

(03-05-2013 13:10:25)


Référence commande et numéro de transaction ne sont plus générés de la même façon... Une raison particulière à cela ?


Aide les autres, ils t'aideront en retour.

Offline

#148 Re: Mise à jour Thélia

(03-05-2013 15:41:40)


Thélia wrote:

Warning: Creating default object from empty value in /.../commande_creer.php on line 123

$_SESSION["commande"]->nbart = 0;

Last edited by Elyos (03-05-2013 15:43:01)


Aide les autres, ils t'aideront en retour.

Offline

#149 Re: Mise à jour Thélia

(03-05-2013 16:15:05)


Un plugin mal branlé manipule sans doute la session


OpenStudio Toulouse

Offline

#150 Re: Mise à jour Thélia

(03-05-2013 16:27:11)


Ce n'est pas plutôt dû au fait que $_SESSION["commande"] n'est pas considéré comme un objet?

Parce que dans aucun plugin je ne manipule $_SESSION["commande"]

Last edited by Elyos (03-05-2013 16:30:49)


Aide les autres, ils t'aideront en retour.