Jump to content

[MODULE] DEVFOREVER - Page demandant la confirmation d'accès à une catégorie ou un produit (Exemple : Interdit aux mineurs)


BVince

Recommended Posts

Bonjour,
Je vous mets ici un module paramétrable qui demande la confirmation d'accès à une page catégorie ou à un produit, il peut être utilisé dans le cas d'un site de vente en ligne de produits interdits au mineurs.
J'attends vos retours...
V 1.0.1 : correction divers bugs

PS : Je viens de m'apercevoir que le block édition de message ne fonctionnait que sous FF et pas IE (pourquoi je ne sais pas pour le moment)...
V 1.0.2 : Compatibilité IE
V 1.0.3 : Possibilité de choisir un affichage permanent ou une seule fois géré par cookie.
V 1.1 : Ajout possibilité d'afficher le message sur la page d'accueil du site et/ou sur une ou des catégories, gestion de la taille de la fenêtre pour le masque.

ATTENTION : Je viens de mettre à disposition categorymessage_v1 qui est la nouvelle version de blockpagecategory, sur les conseils de Jolvil, j'ai modifié le nom. J'ai aussi apporté les modifications significatives suivantes :
1 - correction de l'affichage intempestif du message pour les accès à des produits d'un catégorie ayant un message.
2 - Possibilité de choisir le mode Confirmation ou Fermeture

Avant d'installer la dernière version, faire le grand ménage du module précédent...

categorymessage_v1.zip

categorymessage_v1.1.zip

  • Like 3
Link to comment
Share on other sites

J'ai quelques lignes de messages d'erreur dans l'administration du module au dessus du contenu:

J'ai pu voir le résultat sur la page en question, j'ai fait des modifs car l'affichage n'allait pas mais la pge ne se réaffiche pas, comment réafficher le message?

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /homez.33/stereost/www/frantic/boutique/modules/blockpagecategory/blockpagecategory.php on line 86

Link to comment
Share on other sites

Merci de t'être penché si rapidement sur mon problème (qui semble par ailleurs intéresser plus d'un :-) ),
Je viens d'installer le module, mais au moment de sauvegarder, il me marque l'erreur "Impossible d'ajouter cette page spéciale", sur une version 1.2.5 de prestashop et de base pour mes tests.
Que faut-il faire pour que le module puisse enregistrer cette page spéciale, y-a t'il des droits à mettre sur des répertoires ?

Merci de votre réponse

Link to comment
Share on other sites

Il n'y a aucun droit sur aucun dossier, cependant tous les champs sont obligatoires.
Merci pour tout retour sur le mode de fonctionnement et les bugs possibles, je suis sur une 1.2.5, serveur ubuntu dernière version, je ne rencontre pas de problème mais les configurations de chacun font apparaître certaines choses qui ne sont pas toujours décelables lors des tests.
Merci

Link to comment
Share on other sites

L' application de ce module pourrait etre ettendue à l'affichage d'un message au niveau de n'importe quelle categorie pour limiter un acces ou afficher un message, par exemple promo sur une catégorie ou avertissement spécial.

Je suggere que l'on puisse configurer: affichage à chaque accés ou affichage une fois.
eventuellement fermeture avec une simple croix ou choix de confirmation

Pour le nom du module "block" ne me semble pas judicieux car il ne s'agit pas d'un block d'affichage s'insérant dans la page.

pourquoi pas categoryaccess ou categorymessage si on ettend le fonctionnement à l'affichage de message ou autre...

Link to comment
Share on other sites

Ca y'est j'ai pu enregistrer la page spéciale :)
En effet, j'avais oublié de mettre un nom !

Un problème apparaît cependant :
- je clique sur la catégorie pour laquelle j'ai mis une page spéciale --> ok la page s'affiche, je clique sur non --> je reviens bien sur ma page d'accueil, je reclic sur la catégorie 'interdite' --> revisualisation de la page spéciale --> ok, je clique sur non --> ok j'ai bien accès à mes produits
Mais maintenant si je me déconnecte, je clique sur la catégorie et là problème, j'accède à mes produits !!
Je pense qu'il faut afficher toujours la page spéciale à chaque fois que l'on accède à la catégorie, Est-ce possible ?

Link to comment
Share on other sites

Merci à vous deux,

Je vais réaliser quelques modifications pour ajouter des paramètres :

1 - Affichage à chaque accès ou 1 seule fois.
2 - Possibilité de mettre une croix ou les deux boutons actuels.
3 - Modification du nom (conseil jolvil) afin de ne pas perturber PS.

Si vous avez des points supplémentaires, n'hésitez pas à m'en faire part.

Pour ce qui est de ton problème Antonin73, c'est tout à fait normal puisque la déconnexion prestashop ne gère pas la destruction du cookie que j'ai créé, je regarderais le code pour te dire si il est possible de détruire le cookie en modifiant un peu PS.

Link to comment
Share on other sites

toujours le message avec nouvelle version

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /homez.33/stereost/www/frantic/boutique/modules/blockpagecategory/blockpagecategory.php on line 86


en fait le nom ne perturbe pas le fonctionnement de PS, on peut donner n'importe qu'elle nom a un module, c'est juste une question de logique pour que le nom corresponde bien a la fonction et que l'on s'y retrouve facilement avec les differents modules.

Link to comment
Share on other sites

Merci BVince

De mon côté, la V1.0.3, tourne "pour l'instant" sans problème en test.
Je ne rencontre pas les problèmes de jolvil : aucun warning sur mon serveur de test

Je vais placer ce module sur un site de test, hébergé, je continue à faire des tests.

Si vous avez besoin de testeurs, je peux apporter ma contribution à tester vos modules.

Link to comment
Share on other sites

Je n'est plus le message précédent.

J'ai un message lorsque je fais une modification d"un message existant lorsque j'enregistre à nouveau

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /homez.33/stereost/www/frantic/boutique/classes/MySQL.php on line 91

-------


Le message ne marche sur la page d'acceuil si elle a la forme monsite.com/1-home mais pas sur la page monsite.com, ce qui pourrait etre utile.

Link to comment
Share on other sites

Ca devient bien sympa !

Il y a un petit manque d'affichage du fond (voir image)

j'ai toujours mon message en sauvegardant la modif
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /homez.33/stereost/www/frantic/boutique/classes/MySQL.php on line 91

autre choses:

est il possible d'afficher une image ou une page dans la frame?

définir une bordure pour la frame?

17415_7bWYBtLDO9MNImadlRea_t

Link to comment
Share on other sites

Le message sur la page d'accueil fonctionne, super ! Ce module va être tres utile

J'ai remarqué une chose: lors d'un premier affichage du message, le cache prend bien en compte toute la page, si je ferme le message est que je recharge la page, le cache manque en bas. Par contre si je vais sur une autre page et que je reviens c'est OK.

Autre chose: dans le titre du sujet tu mentionnes "Page demandant la confirmation d’accès à une catégorie ou un produit "
alors que le message est affiché uniquement pour une catégorie et pas pour un produit. A moins que tu n'etendes la possibilité de le faire pour chaque page du site.

Link to comment
Share on other sites

Jolvil,

Le module fonctionne aussi pour l'accès à un produit, si celui-ci est dans une catégorie sélectionnée et qu'on a choisi le mode 1 fois, l'accès direct au produit affiche le message, si le mode "toujours" a été sélectionné, le message n'est pas pris en compte.
On va peut-être pas étendre le module à l'ensemble des pages du site mais pourquoi pas répertorier une série de pages sur lesquels cela pourra être intéressant ?

Link to comment
Share on other sites

L'idée serait de pouvoir protéger une catégorie par un mot de passe. Donc, en gros, de remplacer le champ mode (confirmation/fermeture) par un champ mot de passe sur le back office. Pour que du coté public, la page spéciale se ferme quand le bon mdp est rentré et qu'elle renvoi à la page précédente (ou message d'erreur) si le mdp est incorrect.

Je ne sais pas si je suis très clair... Je suis en train de regarder ton code mais sans grand espoir (je suis un noob en programmation...)

Link to comment
Share on other sites

J'ai regarde comment j'avais crée le code et je pense que c'est tout a fait faisable, je modifierai le code dans les jours a venir pour mettre a disposition une version integrant le mode securite par mot de passe, je pense aussi integrer le choix du ou les groupes de client qui seront directement autorise a accéder a la section (sans mot de passe).

Link to comment
Share on other sites

Qu'est ce que tu veux dire par mise en production ? Je ne comprend pas trop, c'est pour un site perso de photos, je veux restreindre l'accès de certaines catégories à des personnes qui auraient un code. Je n'ai trouvé aucune solution pour faire ca et ton module semble être ce qui se rapproche le plus.

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

J'ai un petit souci : je télécharge la version 1.1, le fichier que j'ai sur mon pc est bien la version 1.1 mais une fois installé sur le serveur, dans le BO, onglet module c'est la version 1.0 qui apparait???

Du coup j'ai le message d'ereur après validation:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /mnt/136/sdd/e/f/zarloon/boutique/classes/MySQL.php on line 91

et le fond de l'encart affiché est donc blanc...

Merci.

Link to comment
Share on other sites

Bon ben j'ai désinstaller plusieurs fois le module (même sur le ftp) et retélécharger plusieurs fois le 1.1 (même sur le site de bvince) et quand je fini de l'installer il est écris v1.0 ???
Y'a un truc que je pige pas là et ca commence à me faire mal à la tête !!!
@+

Link to comment
Share on other sites

Merci pour la réactivité,

Cependant le problème reste le même.
C'est toujours ecrit v1.0
Le module fonctionne mais comme disait jolvil il me semble j'ai toujours le message d'erreur après la mise à jour de la page spéciale.
Et le fond de page affiché reste blanc.

19034_DnFOEcouUyjyuXCBSgML_t

19035_HWGlfOelVdtclXgsbdzd_t

19036_74ZKpABsDxiegIf4mG1G_t

Link to comment
Share on other sites

ouais !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Super t'es trop fort Bvince !!!

C'est tout simplement génial !
Quelle réactivité on dirait un support technique, un SAV alors que ce module est gratuit !!

Bon elle est ou la caisse? La case don parceque tu le mérite amplement.
Et j'espère que tout le monde en fait autant!

Encore merci Bvince!

Link to comment
Share on other sites

Ah Bvince, toujours aussi pro dans tes réalisations, quel bonheur...

Bon par contre, en ligne sur une 1.3 alpha voilà mes tests.
Dans le BO, j'insère une image qui apparait bien, j'enregistre.

Dans le FO, voilà ce que cela me donne, pas d'image.
Je vérifie le chemin et là je me rend compte que le chemin n'est pas bon.
Au lieu d'avoir http://www.mondomaine.fr/prestashop/img/monimage,'>http://www.mondomaine.fr/prestashop/img/monimage, j'ai http://www.mondomaine.fr/img/monimage.

Je repars donc dans le BO et là je me rends compte en affichant l'html de tiny que même si je lui mets l'adresse en entier pour l'insertion de l'image, il me la transforme en ../img/monimage et non http://www.mondomaine.fr/prestashop/img/monimage

Heu, j'espère avoir été précis dans mon explication, j'en doute

19122_CO7G04Pj3hP06hScrmN7_t

Link to comment
Share on other sites

Maxhome,
je pense que tu as un soucis de paramétrage dans la 1.3 en ce qui concerne le chemin d'accès pour tiny, je viens de faire le test sur une 1.2.5 sur 3 serveurs différents sans problème, regarde du côté du paramétrage des variables de Tiny.

Link to comment
Share on other sites

grrr, suis allé voir dans le fichier AdminCMS histoire de voir un quelconque PS_BASE_URI manquant mais rien...
Sinon paramètrage des variables? c'est à dire? à quel endroit?
Merci beaucoup

Edit: l'insertion d'images dans toutes les autres pages CMS (livraison etc...)fonctionnent parfaitement.
Suis paumé là

Link to comment
Share on other sites

BVince, j'ai une piste...
Dans le TinyMCEInit, nous avons souvent ces lignes:

elements : "nourlconvert",
convert_urls : false,

Dans ton php, ces lignes ne figurent pas.
Je pense que mon problème vient de là, mais si je les ajoute, message d'erreur en bas dans IE et le texte dans la fenêtre de Tiny affiché en html du style

convert_urls : false,
[/code]



Merci encore

Link to comment
Share on other sites

Bonjour j'ai eu le meme type de probleme en mettant un lien sur une image,

Celui ci bien que bien renseigné n'etait pas bon quand je cliquait sur l'image.
Ex: Lorsque je mettait comme lien http://monsite/boutique/modules/pagesouhaitée.php
La fenêtre ouverte était http://monsite/module/pageshaitée.php -> le "boutique" disparaissait ?
En allant voir dans l'editeur le lien devenait: "../modules/pagesouhaitée.php"
Alors je rajoutait manuellement ..boutique/ à la ligne mais la bizarrement en cliquant sur l'image le lien devenait http://monsite/boutique/..boutique/modules/pagesouhaitée.php (réapparition de boutique/ donc un de trop)

J'ai réglé ce problème en décochant la page acceuil avec l'ID 1, et en cochant la page Accueil sans ID (je sais pas si je suis assez clair, en fait dans mon menu horyzontal j'ai mis acceuil)

Tout est rentré dans l'ordre après ça, si ça peut servir à d'autres qui peuvent rencontrer le même souci.

Link to comment
Share on other sites

  • 2 months later...

Bonsoir,

je viens de tester le module et je rencontre un problème.
Parfois, il ne prend pas en compte le texte que je rentre : je crée un message, entre un texte, je valide, et quand je reviens, la partie "saisie du texte" est vide.

Une idée ?
Merci

Link to comment
Share on other sites

Bonjour Florent,
Je pense à un problème de magic_quotes, remplace à la ligne 150 du fichier categorymessage.php

'description'=>Tools::getValue('body_message_'.$language['id_lang'])



par

'description'=>addslashes(Tools::getValue('body_message_'.$language['id_lang']))

Link to comment
Share on other sites

Est-ce que le problème se présente à chaque fois ou aléatoirement ? Au cas ou le problème est aléatoire, alors il faut mettre en cause le contenu qui est saisi, il me faudrait des exemples concrets pour faire une modification dans le code.

Link to comment
Share on other sites

Re

alors effectivement, on peut dire que c'est aléatoire. Voici ci-dessous une partie du texte que j'ai essayé de rentrer.

"SITE EN CONSTRUCTION

Notre site est en cours de réalisation.
Aucune commande n'est possible pour le moment."

Si je rentre seulement "Site en construction", ça marche. Quand j'ajoute le reste et que je mets à jour, tout disparaît.

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,

Encore une fois merci pour ce superbe module !

Je viens d'installer la dernière version et maintenant lorsque je sauvegarde le message j'ai : "Impossible d'ajouter cette page spéciale."
Je pensais qu'il s'agissait d'un problème d'autorisation, j'ai passé le dossier en 755, mais pas mieux…

Quelle serait le soucis et la solution ?

Merci !

Link to comment
Share on other sites

Dans les options d'affichage, nous avons :
- toujours (le message s'affiche à chaque visite, mais également à chaque changement de catégorie et de produits)
- 1 seule fois (1 seule fois quelque soit la page, puis jamais)

est-il possible d'avoir une activation 1 seule fois pendant toute une session, mais qui réapparaisse 1 seule fois à chaque nouvelle visite ?

Merci !

Link to comment
Share on other sites

En réalité le cookie est stocké 24 heures, donc une visite réalisée 24 heures après fait réapparaître le message, tu pourras trouver ce paramètre ligne 79 du fichier tpl :

date_exp.setTime(date_exp.getTime()+(24*3600*1000));



24 heures * 3600 secondes * 1000 (millième de secondes) = Nombre de millième de secondes avant expiration du cookie.
Modifie cette variable à ta guise...(Tiens, ça me rappelle une pub ça !)

Link to comment
Share on other sites

Salut Vincent...

Je suis le seul ou quoi?
Quand je tente de modifier, je retrouve mon texte de test, j'y insère une image, je retouche le texte, j'enregistre et là....Plus d'affichage de la popup sur le FO.
Dans le BO, quand je reviens en modification, je n'ai plus rien dans Tiny (Les autres paramètres sont sauvegardés)

Je n'ai d'autres choix que te supprimer puis tout recréer et là nickel...sauf si je viens à modifier...la rebelotte

Heuu y'a que moi? si c'est le cas,je cherche ailleurs mais bizarre, je ne perds que le contenu de Tiny quand je viens à modifier


EDIT: correction, la modif de texte fonctionne, le problème surgit uniquement si j'insère une image, sinon nikel

REDIT: grrrr changement de texte, ajout, suppression ok, par contre image ou dès que j'enrichi le texte, il ne se mémorise pas

REREDIT: Décidemment, non vraiment trop aléatoire, maintenant le changement de texte ne marche pas toujours, vais me prendre un café moi ;)

Link to comment
Share on other sites

En réalité le cookie est stocké 24 heures, donc une visite réalisée 24 heures après fait réapparaître le message, tu pourras trouver ce paramètre ligne 79 du fichier tpl :

date_exp.setTime(date_exp.getTime()+(24*3600*1000));



24 heures * 3600 secondes * 1000 (millième de secondes) = Nombre de millième de secondes avant expiration du cookie.
Modifie cette variable à ta guise...(Tiens, ça me rappelle une pub ça !)



Merci pour l'info ! :)
Link to comment
Share on other sites

  • 2 months later...
  • 2 months later...

Bonjour à tous...

J'utilise le module "Category messages + V1.0" comme d'autres modules achetés chez DevForEver.

Je tente ma change via ce post… ayant envoyé plusieurs emails à DevForEver (@Vince) mais sans aucune réponse, peut-être un problème de redirection :-S


1/ je souhaite inclure dans le message du pop up un ou des liens permettant au client d'accéder directement à une / des catégorie(s) sans qu'il n'est besoin de cliquer sur la croix pour fermer la fenêtre.
Est-ce envisageable et comment ?

2/ j'ai rencontré un problème lorsqu'on utilise l'affichage sur "toujours".
Lorsque le client passe commande et effectue son règlement via paypal. Le paiement est bien effectué, mais la commande n'est pas validée par la boutique, n'apparait donc pas dans l'onglet "commandes" puisqu'annulée.
Par contre lorsqu'on choisit l'affichage "1 seule fois" aucun soucis.

Merci pour vos réponses !

Cordialement

Link to comment
Share on other sites

Bonjour Capclem,

Désolé pour les non-réponses, mais lorsque j'envoie des e-mails, ils me reviennent comme quoi j'envoie depuis une adresse IP blacklistée ou non autorisée, voilà pourquoi....
Enfin, je ne vois pas pourquoi tu ne pourrais pas intégrer un lien dans la fenêtre qui enverrait directement sur une page, puisque le module utilise du TinyMce, par contre si la page cible est paramétrée pour ouvrir à nouveau le popup alors là il va falloir réaliser une modification du code.
En ce qui concerne PayPal, je ne sais pas vraiment car le module est greffé sur le TOP, il faudrait peut être mettre une exception de fichier dans le greffon du hook...Je testerai plus tard pour voir si le module a vraiment une incidence sur cette fonctionnalité.
Encore désolé...

Link to comment
Share on other sites

Merci pour ta réponse ! :-)

En fait, aucune difficulté pour mettre en place un lien… mais je souhaiterais que lorsqu'on clique sur ce lien, ça ferme la fenêtre également… ou que le simple fait de cliquer à coté de la fenêtre la ferme… car il y a plusieurs personnes qui n'avaient pas compris qu'il fallait cliquer sur la croix pour fermer la fenêtre et donc revenir sur la boutique (malgré un texte mis en place pour expliquer qu'il faut cliquer sur la croix pour fermer) :-S

Merci !

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