- Posts: 276
- Thank you received: 17
Date incohérente avec First Akeeba Subscriptions
Je viens de faire la mise à jour vers Hikashop 2.3.2 et Akeeba Subscriptions 4.1.0.
Sur Hikashop 2.3.2 les dates et heures de commandes sont OK voir photo => Date-hikashop.png
Par contre sur Akeeba Subscriptions 4.1.0 c'est NOK voir photo => date-akeebasub.png (5:11 à la place de 7:11 .../..)
J'ai remis à jour votre pugin akeebasubs
Merci de votre aide
Teophile
Please Log in or Create an account to join the conversation.
Nous utilisons pourtant la fonction Joomla JDate() pour récupérer la date courante.
Le soucis doit provenir de l'heure de votre serveur qui est sûrement décallée de 2 heures.
C'est pourquoi nous retrouvons ce décallage ici. Ce que je vous suggère c'est d'éditer le fichier php du plugin et remplacer:
Please Log in or Create an account to join the conversation.
J'ai fait la modif dans plugins/hikashop/akeebasubs/akeebasubs.php à la ligne 142 :
Je verrai demain matin lors d'un nouveau test.
Remarque : Je suis en plein doute sur cette solution car :
- je suis chez infomaniak "est-ce leur serveur dont tu parles ?";
- dans la configuration de Joomla sur l'onglet Serveur j'ai le fuseau horaire sur PARIS
- et de plus l'heure de modification dans hikashop est OK (voir photo Date-hikashop.png ci-dessus)
alors ...
Teophile
Please Log in or Create an account to join the conversation.
J'ai appliqué votre proposition de modification mais rien n'a changé alors ce matin j'ai fait un nouveau paiement pour mon fameux abonnement de 1 jour et je vous présente sur ces photos les incohérences :
A) AkeebaSubs :
1 - Dans AkkeebaSubs : Créé le 2014-07-13 04:20 => Valide à partir du 2014-07-12 22:59 => jusqu'au 2014-07-13 22:59
..... Dans hikashop ..........Date le 2014-07-13 06:20 => Dernière modif....2014-07-13 06:20
Sur cette vue d'akeebasubs c'est encore plus incohérent puisque la date de validation 2014-07-12 est inférieure à la date de créaton 2014-07-13
B - Hikashop
Les dates sont bonnes :
Nota : Ce post est plus détaillé alors vous pouvez supprimer le post précédent qui présentai le même problème.
Merci de votre aide car je voudrai vendre des abonnements à la journée et le couple Hikashop-Akeeba est super pour faire cela.
Please Log in or Create an account to join the conversation.
Désolé pour l'attente, pourriez vous essayer avec cette version du plugin ?
Please log in or register to see it.
Please Log in or Create an account to join the conversation.
J'ai installé le plugin que vous m'avez adressé et voici les résultats suite à la confirmation d'un paiement sur hikashop :
A - Dans AkkeebaSubs voir les points sur l'image ci-dessous :
OK pour les points 1 et 2 : Créé le 2014-07-16 09:07 => Valide à partir du 2014-07-16 09:07 => jusqu'au 2014-07-17 09:07
NOK pour le point 3 : Décalage de 1 heure avec l'heure du système local 09:07 pour 10:07
NOK pour le point 4 : L'auto-publication de l'abonnement n'a pas été réalisée dans Akeebasub alors que le statut confirmé a été réalisé sur Hikashop suite au paiement par chèque ou Paypal .../...
Questions : Il me semble évident que pour une même commande d'abonnement la date de création dans Akeebasub correspond à la "date d'écriture" dans akeebasubs et non à la date de création dans Hikashop. Est-ce vrai ?
Ces différentes dates sont visibles lorsque sur Hikashop la date de création est différée de quelques heures voire quelques jour lors d'un paiement par chèque par exemple. Est-ce exacte ?
B - Dans Hikashop voir image çi-dessous :
C'est un changement manuel de créée à confirmée lors d'un paiement par chéque. Je suppose que si c'était un paiement automatique de type Paypal cela aurait fonctionné de la même manière.
Pour moi c'est OK.
Je reste à votre disposition pour résoudre définitivement ce problème
Please Log in or Create an account to join the conversation.
Dans la version du plugin que je vous ai donné, j'utilise la fonction hikashop_getDate() qui est donc celle utilisée dans HikaShop et qui prend en compte le décallage horaire.
Pouvez vous modifier toutes les occurences de hikashop_getDate dans le plugin pour ajouter "+3600" au premier paramètre, exemple:
Il y a en tout 5 occurences.
Pour répondre à vos autre questions, oui la souscription dans akeeba est créée seulement lorsque le status de la commande est confirmé. Et la date de création est la date à laquelle la souscription est créer, lors de la validation de la commande.
Pour PayPal cela aurait fonctionné de la même façon.
Please Log in or Create an account to join the conversation.
Je viens de modifier les lignes suivantes :
Effectivement c'est à n'y rien comprendre car si tu as pris les mêmes instructions que hikashop ca devrait fonctionner sans ajouter + 3600. Il doit y avoir une autre cause-racine. Si j'ai bien compris ces modifs qui donnent un bon résultat (voir photo) sont alors paliatives ??
Il reste l'autopublication qui n'est pas active ...
Grand merci pour votre aide
Please Log in or Create an account to join the conversation.
Si Akeeba subscriptions a un décallage aussi, alors la publication n'est pas activée, si vous revenez dans 2 heures ce sera peut être le cas.
Je vais approfondir ce point.
Please Log in or Create an account to join the conversation.
Tous mes encouragements et à votre disposition pour effectuer des tests ...
Please Log in or Create an account to join the conversation.
J'ai réussi à reproduire l'issue de mon côté, en effet le status reste sur "Dépublié".
Dans le plugin, vous pourrez trouver le code:
Ceci m'a été indiqué par la team d'Akeeba Subscriptions lors du développement du plugin.
C'est akeeba qui gère normalement cette plublication automatique de la souscription selon sa validité.
Vous pouvez potentiellement essayer de passer cette valeur à 1 afin de publier par défaut en attendant d'avoir plus d'informations sur cette auto-publication.
Please Log in or Create an account to join the conversation.
Je viens de modifier la ligne suivante :
Et voici le résultat
Hikashop
La date de confirmation Hikashop est 2014-07-22 12:14 :
AkeebaSubs
Alors que la date de création AkeebaSubs est 2014-07-22 12:07 donc inféreure à 12:14 (Remarque : Elle se termine toujours par 07 ??).
Et toujours pas d'autopublication alors que j'ai modifié la ligne 213 :
Merci de votre aide
Teophile
Please Log in or Create an account to join the conversation.
Merci de remplacer le format de la date dans les fonction "hikashop_getDate()" par:
Et ça devrait corriger tous les soucis.
Please Log in or Create an account to join the conversation.
J'ai effectué les modif de format de date sur les lignes 188, 189, 201, 271 et 272
Dans ce 5 fonctions il n'y a plus le + 3600, est-ce qu'il faut le garder ou le supprimer ?
Idem pour le 'enabled' => 1 à ligne 213 ?
L'abonnement de ce midi est publié, mais combien de temps aprés je ne sais pas.
Demain je ferai un test d'abonnement pour voir les changements.
Bonne fin de journée
Please Log in or Create an account to join the conversation.
Les nouvelles souscriptions seront publiées directement après désormais.
Le soucis provenait du décallage de date.
Please Log in or Create an account to join the conversation.
Tu as aiguisé ma curiosité concernant la définition de l'heure en PHP (voir photo jointe)
Il me semble que sur hikashop c'est l'heure H: Heure, au format 24h, avec les zéros initiaux 00 à 23
Exemple sur Hikashop : 2014-07-22 19:48 alors que sur Akeebasub :2014-07-22 07:48
Pourquoi ne pas utiliser H sur Akeebasubs soit 'Y-m-d H:i:s' au lieu de 'Y-m-d h:i:s' ?
Merci de vos réponses.
Please Log in or Create an account to join the conversation.
Oui en effet passer au format 24h est peut être plus judicieux.
C'est changé de mon côté.
Please Log in or Create an account to join the conversation.
Les enregistrements de dates sont OK.
Par contre l'auto-activation de l'abonnement n'est toujours pas opérationnel suite à un statut Confirmé dans Hikashop générant simultanément un état Terminé dans Akeebasubs.
Je poursuis mes tests et je t'adresserai le résultat de mes investigations.
Bonne journée;
Please Log in or Create an account to join the conversation.
J'ai téléchargé la dernière version du 29 juillet sur votre site et l'auto-activation ne fonctionne pas.
Après quelques heures de test concernant cette auto-activation j'en suis arrivé à souhaiter que votre plugin puisse permettre d'écrire la valeur 1 dans la champ enabled de la table _akeeebasubs_subscription.
Par conséquent j'ai modifié votre plugin akeebasubs en remplaçant 0 par 1 :
- à la ligne 189 'enabled' => 1, // Required - SET TO 0 and let Akeeba Subscriptions handle the auto-activation
- à la ligne 243 SET enabled = 1, publish_down = '.$db->quote($publish_down).'
sans succès puisque c'est toujours 0 qui est écrit dans la table _akeeebasubs_subscription
Lorsque je vais dans la table _akeeebasubs_subscription et que je met manuellement la valeur 1 dans la champ enabled l'activation est OK.
Je ne comprend vraiment pas qu'elle est la logique pour ne pas auto-activer un abonnement enabled = 1au même moment que le process de paiement est OK (state=C) et que l'heure de validation est OK.
J'ajoute cette image pour illustrer ma demande :
Grand merci par avance de votre aide.
Please Log in or Create an account to join the conversation.
Juste pour info
J'ai constaté un décalage de 2 heures entre l'heure de validation et l'activation suite à ce test :
Validation à 12:56 pour une activation à 14:57
Il me semble que cela correspond au décalage UTC.
C'est pourquoi je pense que votre plugin Akeebasubs devrait mettre enable ==> 1 au moment de transfert de hikashop dans akeeba subscriptions.
Que est votre avis ??
Merci de votre aide
Please Log in or Create an account to join the conversation.