cipf added new class for when state is not buying a new card at 5€

This commit is contained in:
asus
2024-04-30 18:25:26 +02:00
parent a73cacd5e9
commit 61be6143a3
7 changed files with 295 additions and 4 deletions

View File

@@ -4,7 +4,7 @@ Plugin Name: hggg_cipf
Plugin URI:
Description:
Author: hugogogo
Version: 0.5.11.3
Version: 0.5.12
Author URI:
*/

View File

@@ -1,4 +1,9 @@
/*
* use this class when you want to only pay a physical new plastic card
* otherwise use the class 'payer_carte'
*
*/
[class*='cipf_display_'].cipf_display_changer_carte { display: block !important; }
[class*='cipf_display_'].cipf_display_changer_carte.cipf_flex { display: flex !important; }

View File

@@ -0,0 +1,9 @@
/*
* use this class when you dont want to pay a physical new plastic card
* otherwise use the class 'changer_carte'
*
*/
[class*='cipf_display_'].cipf_display_payer_carte { display: block !important; }
[class*='cipf_display_'].cipf_display_payer_carte.cipf_flex { display: flex !important; }

View File

@@ -97,7 +97,10 @@ function display_states_css_CIPF($user_id = null) {
*
*/
if (is_acf_prof_change_card_CIPF($user_id)) {
$css_for_states[] = 'css/display_states/changer_carte.css';
$css_for_states[] = 'css/display_states/carte_changer.css';
}
else {
$css_for_states[] = 'css/display_states/carte_payer.css';
}
/*

View File

@@ -34,8 +34,9 @@ function handle_orders_request_CIPF($request_data) {
*/
try {
$can_pay = check_can_pay_CIPF();
if (is_wp_error($can_pay))
if (is_wp_error($can_pay)) {
throw new HttpException('not allowed to pay : ' . $can_pay->get_error_message(), 403);
}
$order_response = create_order_CIPF();
$json_response = $order_response['json_response'];

Submodule private updated: 1901a2bef1...5df8fa3f9c

273
todo.md Normal file
View File

@@ -0,0 +1,273 @@
## TODO :
---
### DEV
- [/] `0...` formbuilder mise a jour automatique ?
- [/] `0...` regarder où mettre les infos de debug dans le fichier wp-config pour eviter qu'elles soient ecrasees a la mise a jour
- [/] `0...` user info shortcodes : inverser fonctinnement par defaut 'author' ou 'logged-in'
- [/] `0...` user info shortcodes : pbm apostrophe backskash
- [/] `0...` meilleur gestion des champs acf et de leur valeur, tout mettre en constantes dans class
- [/] `0...` create menu for custer, that we can hide with an action on the plugin list
- [/] `0...` cipf plugin empeche validation de certains forms ?
- [/] `0...` ne pas continuer sur les anchors (pas besoin de modifier la page en tant qu'admin)
- [/] `0...` pourquoi la page de redirection ne marche pas ? -> mauvais hook
- [/] `0...` noter dans le code tous les endroits oú je fais appel a du css ecrit du coté de fabien, pour info pour le futur (dans l'ideal, je devrais tout faire dans le plugin) -> finalement je les ai changé
- [/] `0...` nouvelle installation creer des bugs : pas tres grave, il suffit de desactiver et reactiver nimporte quel plugin
- [/] `0...` creer champ recherche __image_profil_url__ -> acf renvoit deja l'url
- [/] `0...` schedule events
- [/] `0...` acf fields history -> `history`
- [/] `0...` j'ai cree un job cron daily
- [/] `0...` ajouté une tache cron dans infomaniak
- [/] `0...` ajouté une info dans wp-config.php : `define( 'DISABLE_WP_CRON', true );`
- [/] `0...` ajouté adresse ip du server pour maintenance infomaniak: 83.166.138.108 (trouvee avec la commande `hostname -I`)
- [/] `0...` resolu le pbm des dates : il faut bien penser a regler le site en francais, et mettre le format acf sur 'l d F Y' (L minuscule) (d: 01, ou alors j: 1)
### INSCRIPTION/CONNECTION
- [/] `0...` front end
- [/] `0...` par roles
- [/] `0...` autovalidation mail (profs)
- [/] `0...` validation admin (partners)
- [/] `0...` redirection
- [/] `0...` gerer le cas d'adresse email existante
- [/] `0...` front end
- [/] `0...` redirection
- [/] `0...` apres connexion : cacher bouton se connecter : 'conditional menus'
- [/] `0...` quand on change le mdp depuis le form front, ca marche avec la connexion via le formulaire de connexion de de formbuilder, mais pas avec celle de wp (attendre que fabien confirme le pbm)
- [/] `0...` affichage de l'oeil avec form builder parfois bug -> on n'utilise plus form builder pour ca
- [/] `0...` redirection (regarder ce que divi permet de faire)
- [/] `0...` changer mdp
- [/] `0...` popup login - lien email creation de mdp
- [/] `0...` popup login - attribuer role
- [/] `0...` option mdp oublié
- [/] `0...` popup login n'apparait pas sur chrome
- [/] `0...` plugin xootix : trouver un meilleur moyen d'identifier que c'est un partenaire qui s'inscrit (redirection methode bloque les autres redirections, c'est relou)
- [/] `0...` login avec xootix : champs password avec 'autocomplete=new-password' -> safari croit que c'est un nouveau mot de passe a creer -> g ecrit a plugin
- [/] `0...` cacher le champ 'remember me'
- [/] `0...` verifier que tous les liens fonctionnent (warning les liens pour les mots de passe oublies)
### ADMIN
- [/] `0...` admin et editor doivent avoir acces aux fiches profs
- [/] `0...` pourquoi la validation de la carte depuis fipf foncitonne meme quand le champs n'est pas relié ?
- [/] `0...` montrer barre admin pour la fipf
- [/] `0...` page prof vue par admin : lien telechargement photo
- [/] `0...` compte secretaria doit pouvoir modifier fiches partenaires
- [/] `0...` fipf regarde profil prof : ne voit pas le bouton pour valider le virement
- [/] `0...` gestion listes mdp offres partenaires -> cr en option
- [/] `0...` gestion listes mdp inscription carte -> geré a la main par diego (avec le champs observation)
- [/] `0...` admin et editor redirection emmene pas sur la bonne page
- [/] `0...` faire des options de recherches plus poussees pour le compte FIPF pour les profs
- [/] `0...` cacher infos admin fipf : Options personnelles, À propos du compte, Mots de passe dapplication, et Login/Signup
- [/] `0...` ecrire mode emplois custer queries
- [/] `0...` ajout class `.hide_for_fipfrole_cipf` pour les champs acf a cacher pour la fipf
- [/] `0...` ajout class `.hide_title_for_fipfrole_cipf` pour cacher le titre du groupe de champ (a rajouter sur n'importe quel champ du groupe)
- [/] `0...` ajout class `.hide_group_for_fipfrole_cipf` pour cacher tout le groupe de champ (a rajouter sur n'importe quel champ du groupe)
- [/] `0...` j'ai ajouté class `.textarea_full_width` sur historique
- [/] `0...` pour acf field 'historique' faire gaffe a cocher 'new lines'>'no formatting'
- [/] `0...` ajout de class css `readonly_acf`
### FRONT END
- [/] `0...` champs pre-remplis
- [/] `0...` editer champs
- [/] `0...` editions form multistep pbm ac images qui doivent revalider
- [/] `0...` dans les pages on ne peut pas montrer le champ email -> pourquoi ? que faire ?
- [/] `0...` what is honeypot captcha field ?
- [/] `0...` formbuilder emails notification et confirmation pbm
- [/] `0...` footer en bas de page
- [/] `0...` footer avec espace blanc en bas https://cipf.lejourdesprofs.org/inscription/
- [/] `0...` footer en bas de page pour page 404 (page non trouvee de members)
- [/] `0...` creer un shortcode pour recuperer les noms et prenoms de la personne connectee, comme pour lemail
- [/] `0...` form builder multiple modals don't work
- [/] `0...` plusieurs modals
- [/] `0...` creer carte en pdf : 'e2pdf' champs textes (fabien)
- [/] `0...` creer carte en pdf : 'e2pdf' champs images
- [/] `0...` empecher ouvrir pdf a chargement page
- [/] `0...` afficher le nom et le prénom : au lieu que le menu s'appel 'nom prenom', qu'ils s'appel 'hugo lamy' -> plus besoin
- [/] `0...` (abandonné) modal form builder - labels disparus
- [/] `0...` (abandonné) modal form builder - css cassé
- [/] `0...` (abandonné) modal form builder - icone de fermeture non modifiee
- [/] `0...` redirection dont' work
- [/] `0...` cacher flash page
- [/] `0...` quand fabien utilise les champs acf du calcul, meme a d'autres endroits, il a besoin du text, pas du nombre, donc voir une solution
- [/] `0...` verifier que le mappage des champs acf pour le calcul fonctionnent bien -> pas avec 0 en value (et apostrophe ?)
- [/] `0...` avant validation formulaire, revoir tous les choix
- [/] `0...` `cipf_user_info` : si pas la ressource, affiche actuellement 'false' (justificatif), afficher 'non' ? ou 'vide' ?
- [/] `0...` images upload : trouver lien site pour modifier photo en ligne
- [/] `0...` images upload : site exterieur ? https://www.img2go.com/fr/recadrer-image
- [/] `0...` images upload : redimensionner images crop -> on oublie
- [/] `0...` affichage aleatoire partenaires
- [/] `0...` champs textarea : resize none `https://www.w3schools.com/cssref/css3_pr_resize.php`
- [/] `0...` pbm affichage responsive hauteur de la barre menu
- [/] `0...` simplifier text editeur wysiwyg
- [/] `0...` creation roles par default : prof ? partenaire ? -> prof
- [/] `0...` voir avec fabien le css des menus
- [/] `0...` restrictions pages profs
- [/] `0...` restrictions pages partenaires
- [/] `0...` `$$etat_carte$$` et `$$livraison$$` reste en l'état dans le mail alors que `$$paiement$$` (par exemple) donne le bon résultat
- [/] `0...` css carte prof responsive mobile
- [/] `0...` pbm addresse email d'envois
- [/] `0...` supprimer images dans media a suppression compte
- [/] `0...` voir le pbm des conditions avec divi
- [/] `0...` personnes non admin qui essayent d'acceder a l'admin -> rediriger vers page accueil (au lieu de voir message 'interdit d'acces')
- [/] `0...` pbm : prof telecharger justificatif activite professionnelle : formats jpeg (jpEg) non acceptés (mais jpg oui)
### PROFS
- [/] `0...` creation prof, champ mdp ne bloque pas en cas d'erreur (trop court ou pas identiques) (~ mis a derniere etape)
- [/] `0...` message mauvais mdp n'apparait pas a l'etape finale (~ mis a derniere etape)
- [/] `0...` prof ne peut pas voir sa page -> acces interdit
- [/] `0...` menu prof -> la procédure de déconnexion
- [/] `0...` menu prof -> faire le lien vers le compte
- [/] `0...` remetre les champs de formulaire de la derniere etape a zero (accepter conditions utilisation, etc...)
- [/] `0...` e2pdf -> afficher image
- [/] `0...` sur page commender carte, si pas connecté, forcer popup connexion/inscription
- [/] `0...` page achat carte : afficher le bon message 'commander' ou 'renouveler'
- [/] `0...` pbm calcul champs formulaire
- [/] `0...` apres paiement, condition message reussite/echec
- [/] `0...` champs formulaires pas remis a zero, pourquoi ? et aussi remettre a zero le champ 10/15 (total 5 champs (+ virement))
- [/] `0...` bloc virement pour admin et editor, pas vu par profs
- [/] `0...` condition pour voir page prof : si choix paiement par viremenet, tant que virement pas recu (case non cochee par diego) alors pas possible de voir la page -> redirection vers page 'votre compte n'est pas encore validé'
- [/] `0...` sur page prof : condition afficher bouton 'renouveler'/'non disponible' -> plus besoin
- [/] `0...` resset cgv champe dans form prof
- [/] `0...` au calcul du prix dans paypal, prendre la bonne valeur meme si acf return est en label ou array
- [/] `0...` pbm prof form don't validate change in livraison
- [/] `0...` peut-etre verifier a ouverture de page profil si virement en attente invalide mais date valide -> passer en attente valide
- [/] `0...` ajouter !important sur les css des etapes pour surpasser d'autres css qui forcent un display pas none
- [/] `0...` page commander carte n'affiche pas renouveler carte
- [/] `0...` la mise a jour des etapes est toute cassee, apres paiement
- [/] `0...` faire gaffe bouton front valider virement : ne pas valider si pas de virement en cours
- [/] `0...` creation prof -> redirection commande
- [/] `0...` bouton front valider virement
- [/] `0...` ne pas calculer les prix, laisser formbuilder le faire
- [/] `0...` afficher les messages en fonction des etapes
- [/] `0...` some fields in form prof are not set second time or already set first time
- [/] `0...` empecher personnes deconnectees d'acceder a la page de commande
- [/] `0...` prof visite son profil : verifications sur les virements ? -> trop lourd de faire toutes les verifs a chaque fois
- [/] `0...` validation virement -> mettre a jour la date
- [/] `0...` Quand je renouvelle ma carte -> 0 ou 5 euros est décoché et quand je coche le bouton de validation disparaît
- [/] `0...` chez fabien, message 'paiement reussi/echoue' ne s'affiche pas
- [/] `0...` condition pour voir page prof : si premier paiement raté ? -> finalement, uniquement si nouveau
- [/] `0...` quand carte a expiree, changer champ date avec 'carte a renouveler' et couleur rose #ed009e
- [/] `0...` quand carte a expiree, changer champ 'telecharger' avec 'renouveler'
- [/] `0...` pour admin, gerer bouton 'activer compte' (inactif en attente de virement)
- [/] `0...` champ acf mettre a jour a l'achat et lors de rappels : carte pas valide -> etat 'commander'
- [/] `0...` penser a remettre champ acf 'compte actif' a zero a expiration de la carte
- [/] `0...` creer numero des cartes (yyyymmddx-A) A: carte generees sur le site / cartes imprimees lui-meme
- [/] `0...` dans formulaire prof achat carte, pourquoi le champ de livraison est remis a zero ?
- [/] `0...` sur page prof, vue par admin/editor : afficher lien du fichier certificat, au lieu de son numero
- [/] `0...` en attente de virement : si ancienne carte deja cree et encore valide, ne pas bloquer acces au compte
- [/] `0...` changer date de validite uniquement apres virement validé, pas avant
- [/] `0...` page prof si paiement en cours : pourquoi refaire passer a aucun ?
- [/] `0...` bouton suppresion de compte -> faire en sorte qu'il supprime le compte :p -> finalement non, gestion par admin
- [/] `0...` redirection sur la page du prof n'a pas lieu depuis "creer un compte" depuis le bouton "mon espace" de la page d'accueil
- [/] `0...` prof a cree carte et veut faire virement, mais il est redirigé vers formulaire quand il va sur son compte
- [/] `0...` resumé des options de formulaire avant validation
- [/] `0...` page 'compte en attente de validation' -> rediriger vers compte si actif
- [/] `0...` messages payements reussi ou echouer n'apparaissent plus
- [/] `0...` calculs prix pour paypal, bien prendre la valeur, pas le libellé, meme si on a reglé le retour sur libellé
- [/] `0...` la carte n'a pas de numéro
- [/] `0...` pour les cartes offertes (50 cartes par ex) : un code a usage unique ? -> ct une option
- [/] `0...` pas de message d'erreur si prof modifie son email par une adress existante
- [/] `0...` que faire en cas de virement : valider status virement dès validation formulaire ? si la personne n'a finalement pas envoyé son virement, et qu'elle se dit qu'elle va plutot payer par paypal ? si elle a envoyé son virement, qu'il n'est pas encore validé, est-ce qu'elle peut payer par paypal ? est-ce qu'elle risque de se tromper ?
- [/] `0...` paiement par virement du prof, fipf valide la carte : creer numero, ajouter 1 an, changer etat 'commande'->'renouvellement'
- [/] `0...` page profil prof, faire le check si la carte n'est pas expiree (le check si la carte est expiree fonctionne deja)
- [/] `0...` page profil prof, faire le check si la carte est expiree mais en attente de virement
- [/] `0...` apres validation premier form, mais avant paiement, la page front affiche 'renouveller' au lieu de acheter
- [/] `0...` profs roles peuvent lirent les articles privés et autre
### PARTENAIRES
- [/] `0...` virer image a suppression post
- [/] `0...` editer offres
- [/] `0...` affiche offre en fonction valeur de champs acf
- [/] `0...` css : pbm photo plusieurs offres partenaire (grid ? float ?)
- [/] `0...` css : menus droite partenaire : centrer dans la colonne
- [/] `0...` grid text vers le haut
- [/] `0...` text toute la largeur si pas d'image
- [/] `0...` creer css pour cacher champs de connexion des profs (nom et prenom) -> plus besoin
- [/] `0...` creer une redirection vers la page partenaire quand on valide le formulaire
- [/] `0...` menu partenaire -> faire un lien vers sa page
- [/] `0...` css image partenaires - occuper toute la largeur
- [/] `0...` css image partenaires - garder format 16/9
- [/] `0...` css image partenaires - pour cipf-prtnr-img * et post title img
- [/] `0...` a la creation d'un compte partenaire, creer automatiquement sa page avec son adress email ? -> finalement non, plutot rediriger vers formulaire de creation de page
- [/] `0...` find right role at creation account, without referer
- [/] `0...` si page partenaire n'existe pas, rediriger sur la page creation de page
- [/] `0...` shortcode user infos trouve pas author sur page partenaire
- [/] `0...` verifier si identification partenaire avec options fonctionne quand plusieurs connexions - non, trouver une autre methode
- [/] `0...` inscription partenaire role
- [/] `0...` email a validation de formulaire de creation de page ne contient pas l'url du partenaire
- [/] `0...` empecher les autres utilisateurs de voir le bouton de modificaiton de sa page partenaire
- [/] `0...` verifier les acces a la modification de page partenaire : pour l'instant tous les partenaires voient le bouton, et seuls les auteurs et les admins peuvent modifier, mais les admins ne devraient pas pouvoir modifier
- [/] `0...` sur page partenaire, offres, faire css pour simuler fonctionnement masquer/afficher (parce que les conditions divi perdent la memoire)
- [/] `0...` trouver une autre solution que `HTTP_REFERER` pour creer le role partenaire -> la redirection ?
- [/] `0...` ajouter option offre a duree determinee
- [/] `0...` css white-space: break-space des offres -> finalement acf gere ca
- [/] `0...` creer un mot cle special pour les emails pour creer un lien vers la page partenaire pour diego, similaires a __author_page__
- [/] `0...` voir comment cacher bouton modification pages partenaire sauf pour creator et admin et fipf (hook ? css ?)
- [/] `0...` voir comment empecher les gens d'acceder a la page de modificaiton des offres partenaires, sauf creator et admin et fipf
- [/] `0...` montrer la barre d'admin pour la fipf et les admins
- [/] `0...` empecher role fipf de supprimer les admins
- [/] `0...` sur page partenaire, si aucune offre, afficher un message (un bloc html preparé par fabien), et passer la page en brouillon pour qu'elle n'apparaisse plus sur la liste des partenaires
- [/] `0...` btn url à masquer si vide (fabien m'a ecrit ca, je ne suis pas sur de ce que ca veut dire, peut-etre un bouton sur la page partenaire ?)
- [/] `0...` empecher d'acceder a la page de creation de formulaire, uniquement celle de modification
- [/] `0...` un bouton publier ou ne pas publier ma page ? -> ajouter un bouton sous le bouton modifier la page, relié a un champs acf radio 'publier'/'masquer' -> toogle l'etat
- [/] `0...` partenaire, boutons publier / masquer : creer une class pour montrer un seul des deux
- [/] `0...` partenaire logo pbm
- [/] `0...` pbm redirection apres page partner changee en brouillon (url avec post id)
- [/] `0...` tous les partenaires peuvent voir les pages des autres partenaires en brouillon
### EMAILS
- [/] `0...` filtrer email formbuilder $$field$$
- [/] `0...` email, faire que diego puisse clicker sur un lien quand un prof fait un changement, qui l'emmene vers la profil du prof -> ajouter url de la page author du prof dans le shortcode user infos
- [/] `0...` some variables in email dont expand well (numbers ?)
- [/] `0...` filter email user info : si page author, diviFB ne retrouve pas l'id pour le prof, donc chercher le miens
- [/] `0...` filtrer les mails : dates ne s'affichent pas en dd/mm/yyyy (en tout cas pas toujours)
- [/] `0...` virer le mail de creation de mdp a creation de compte
- [/] `0...` emails envoyés depuis compte admin modifiant prof : les champs $$field$$ montrent la personne connectee, pas le prof -> finamelement les admins ne modifient pas les profs depuis le front
- [/] `0...` xootix pbm email en cas de reinitialisation du mdp : pas de liens
- [/] `0...` faire lien email pour que diego puisse voir la page partenaire ou prof qui a ete modifiee
- [/] `0...` pouvoir personnaliser les mails de inscription de xootix
- [/] `0...` email creation compte pour modifier mdp : manque le lien, et de toute maniere l'email est inutil -> possible d'empecher de l'envoyer ?
- [/] `0...` xootix pbm email liens : s'ils ne le resolvent pas, faire un filtre sur wp email
- [/] `0...` enlever liste de mail dans les mails smtp : This message is from a mailing list
- [/] `0...` pouvoir personnaliser les mails de oublie de xootix
- [/] `0...` cacher 'se souvenir de moi' sur la creation/inscription des comptes
- [/] `0...` pbm addresse email d'envois
- [/] `0...` form-builder change les urls des emails, c'est chelou -> en fait c'est brevo (sendinblue) qui fait ca, mais pourquoi, et comment l'eviter ?
- [/] `0...` profs : validation payment prof, envoyer email
- [/] `0...` profs : validation virement prof, envoyer email
- [/] `0...` changer l'adresse d'envois des emails
- [/] `0...` permettre d'afficher l'image de profil dans un email avec la balise <img>
- [/] `0...` emails, changer 'le compte' par 'la carte' pour expiration, et changer l'ordre
- [/] `0...` rajouter un email a diego en cas de problem de paiement
- [/] `0...` creation un groupe de champs acf prof/partner pour les emails
- [/] `0...` j'ai desactivé l'option qui force les 'emails from' dans wp-mail-smtp
- [/] `0...` j'ai ajouté un email qui peut s'envoyer a chaque fois que ce job tourne, pour alerte
- [/] `0...` changé contenu dans acf emails reminders pour ajouter chaque offres
### PAYMENT
- [/] `0...` mettre en place paiement paypal securise
- [/] `0...` valider paiement par prof
- [/] `0...` mettre a jour infos paiement et carte
- [/] `0...` - paiement : pbm mise en place date premier paiement
- [/] `0...` recuperer champs acf de somme totale `somme_a_regler`
- [/] `0...` date ajoute plusieurs annees
- [/] `0...` bloquer renouvellement de payement avant xx temps de la date d'echeance (ex: 30 jours)
- [/] `0...` redirection vers page ma carte, avec selector :active pour activer le message reussi ou raté
- [/] `0...` erreur dans le calcul du prix
- [/] `0...` tester paypal avec compte diego
- [/] `0...` condition fenetre moyens de paiements paypal ou virement
- [/] `0...` tester avec compte live
- [/] `0...` gerer les redirections
- [/] `0...` tester les differents formats de dates de acf
- [/] `0...` paiements : gerer les erreurs de mon code qui n'invalident pas les paiements
- [/] `0...` mieux gerer les cas d'erreur
- [/] `0...` paypal: notification payment reussi ou raté, ajouter numero de transaction -> `order_id`
- [/] `0...` bouton renouveller carte a 5€ -> ajouter bouton avec lien `/paiement/?prof_card_change=true` + css `.cipf_display_changer_carte`
### MENU
- [/] `0...` text payement reussi ou raté : ajouter texte dans menu ? garder le systeme des backticks ?
- [/] `0...` paypal : entrer les infos du compte
### SCHEDULE EVENTS
- [ ] `..2.` payments : supprimer order-id trop vieux
- [ ] `..2.` partners : offres temporaires -> gerer qu'elles disparaissent apres la date de validite -> la passer en masquer
- [ ] `..2.` partners : la gestion des offres à échéance
- [ ] `..2.` payments : schedule event pour supprimer le compte xx temps (6 mois ?) apres fin de validite de la carte
- [ ] `..2.` payments : schedule event pour supprimer les codes
- [ ] `..2.` payments : schedule event pour desactiver la carte
- [ ] `..2.` payments : faire rappels emails
### NEWSLETTER
- [ ] `..2.` voir comment implementer ca
- [ ] `..2.` comment savoir si une offre est nouvelle
- [ ] `..2.` comment gerer si un partenaire a plusieurs nouvelles offres