Jump to content

ajouter "j’ai plus de 18 ans " cocher cette case


Recommended Posts

bonjour,

comment ajouter sous les CGV une ligne supplementaire obligatoire :
je certifie être majeur pour passer cette commande et né(e) le (JJ/MM/AAAA) comme le montre cet exemple:
http://www.airsoft-cube.com/boutique/order.php

si vous pouviez m'aider...

j’espere que j’ai ete assez clair et que vous répondrez à ma question sans me dire “sujet mainte fois abordé, tu as la palme de la connerie!”

soyez indulgent c’est mon premier site et n’ayant aucne connaissances en informatique j’ai beaucoup travaillé!

avec mes remerciements, bertrand

mon site : http://www.dmdiffusionboutique.com/

Topic déplacé dans la bonne section - yoya971

Link to comment
Share on other sites

Salut et bienvenue bertrand,
Je suis sur que tu trouveras une réponse ici. Ton site est très correct, bravo.

Concernant ta demande, je t'invite à regarder order-carrier.tpl ainsi que conditions.js afin de faire la meme chose que pour "j'ai lu et j'accepte les conditions blabla..."

Bon courage.
Cdlt,

Pierre.

Link to comment
Share on other sites

bonjour

je n'y arrive pas !
je n'arrive pas à integre le code que j'ai copié!

pourriez vous me le faire si le coeur vous en dit meme si je sais qu'il ne vous en dit pas trop !

ci joint un fichier order txt qui contient le code ou j'ai vu cette option dans un site et aussi mon fichier order-carrier

voici le code que j'ai trouvé :

   function test_age()
   {
       var $age = 18;
       var $date = getE("birth").value;
       var d = new Date();

       if (!getE('maj').checked || $date == "")
       {
           alert("Vous devez certifier être majeur et entrer votre date de naissance pour passer cette commande");
           return false;
       }

       if ($ret = /^(\d{0,1}\d)\/(\d{0,1}\d)\/(\d\d\d\d)$/.exec($date))
       {
           var date_cal = Date.parse($ret[2]+'/'+$ret[1]+'/'+(Number($ret[3]) + Number($age)));
           d.setTime(date_cal);

           if (Number(d.getDate()) != Number($ret[1]) || (Number(d.getMonth())+1) != Number($ret[2]) || (Number(d.getFullYear()) - $age) != Number($ret[3]))
           {
               alert("Date de naissance incohérante");
               return false;
           }
           d = new Date();

           if (d.getTime() - date_cal > 0)
               return true;
           else
               alert("   Attention!\n\nvous devez être majeur pour passer une commande");
       }
       else
           alert("Format de date de naissance invalide");
       return false;
   }

   function test_Ocarr()
   {
       if (!acceptCGV("Vous devez accepter les conditions générales de vente pour passer à l\'étape suivante")){return false;}
       if (!test_age()) return false;
       return true;
   }



avec mes immenses remerciements, bertrand

[EDIT]Merci de mettre les balises 'code' dans ton message la prochaine fois - yoya971

Link to comment
Share on other sites

  • 6 months later...

Salut,

Je sais pas si depuis le temps tu a trouvé une solution mais j'apporte la mienne que je viens de trouver.

Je cherchais le même principe mais limité au formulaire d'inscription. J'ai trouvé sur le forum la solution. Regarde dans les classes, Validate.php, la fonction a la ligne 462 :

static public function isBirthDate($date)
{
if (empty($date))
return true;
if (preg_match('/^([0-9]{4})-((0?[1-9])|(1[0-2]))-((0?[1-9])|([1-2][0-9])|(3[01]))( [0-9]{2}:[0-9]{2}:[0-9]{2})?$/ui', $date, $birthDate)) {
if ($birthDate[1] >= date('Y') - 9)
return false;
return true;
}
return false;
}

Tu change le 9 par 18 et lorsque une personne valide son formulaire d'inscription et que la date est invalide le formulaire est rejeté et le message d'erreur Date de naissance invalide s'affiche au dessus, j'ai moi en plus ajouté dans le formulaire () authentification.tpl) en dessous des champs de choix de la date une variable texte d'avertissement {l s='Notice : You must be over 18 years'} que j'ai traduit en FR après depuis le back office, si après dans tes CGV tu stipule que l'inscription et les commandes sont limitées aux majeurs c'est tout bon.

Bon courage.

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