diff --git a/plugins/cipf_plugin/cipf_plugin.php b/plugins/cipf_plugin/cipf_plugin.php
index 0631620..5812261 100644
--- a/plugins/cipf_plugin/cipf_plugin.php
+++ b/plugins/cipf_plugin/cipf_plugin.php
@@ -4,7 +4,7 @@ Plugin Name: cipf_plugin
Plugin URI:
Description:
Author: hugogogo
-Version: 0.3.11.1
+Version: 0.3.12
Author URI:
*/
diff --git a/plugins/cipf_plugin/php/partners_register.php b/plugins/cipf_plugin/php/partners_register.php
index 6cc612a..70471e1 100644
--- a/plugins/cipf_plugin/php/partners_register.php
+++ b/plugins/cipf_plugin/php/partners_register.php
@@ -46,14 +46,223 @@ if (!defined('ABSPATH')) {
//}
//add_filter('xoo_el_register_fields', 'check_fields_CIPF');
-function test_add_fields_register_CIPF($args) {
- error_log("args : " . json_encode($args));
- echo '';
+
+
+/*
+* hook to add a field in the xootix form
+* 30 : ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/templates/global/xoo-el-register-section.php
+*
+*/
+function add_fields_register_CIPF($args) {
+ PLGNTLS_class::debug_infos();
+ // error_log("args : " . json_encode($args));
+ $role_partner = PLGNTLS_class::ROLE_PARTNER;
+ $slug_partner_registration = PLGNTLS_class::SLUG_PARTNER_REGISTRATION;
+ $input_hidden_role = PLGNTLS_class::INPUT_HIDDEN_ROLE;
+
+ /*
+ * compare current slug to partner-register slug
+ * if it match, add a hidden field
+ *
+ */
+ global $wp;
+ $current_slug = $wp->request;
+ if ($current_slug === $slug_partner_registration) {
+ echo "";
+ }
}
-add_action( 'xoo_el_register_add_fields', 'test_add_fields_register_CIPF' );
+add_action('xoo_el_register_add_fields', 'add_fields_register_CIPF');
+
+
+/*
+* filter to modify user before xootix create new user
+* 437 : ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/includes/class-xoo-el-form-handler.php
+*
+* at registration, if form query is for partner
+* -> change role to 'partenaire'
+*
+*/
+function add_partenaires_CIPF($customer_data){
+ PLGNTLS_class::debug_infos();
+ $role_partner = PLGNTLS_class::ROLE_PARTNER;
+ $input_hidden_role = PLGNTLS_class::INPUT_HIDDEN_ROLE;
+
+ /*
+ * check query of form submit
+ * if contains parner, change role for partner
+ *
+ */
+ if (!isset($_POST[$input_hidden_role])) {
+ error_log("not set _POST[input_hidden_role]");
+ return;
+ }
+ if ($_POST[$input_hidden_role] === $role_partner) {
+ error_log("_POST[input_hidden_role] === partner");
+ $customer_data['role'] = $role_partner;
+ }
+ return $customer_data;
+}
+add_filter('xoo_el_register_new_customer_data', 'add_partenaires_CIPF', 10, 1);
+/*
+profs :
+wp: {
+ "public_query_vars":{"0":"m","1":"p","2":"posts","3":"w","4":"cat","5":"withcomments","6":"withoutcomments","7":"s","8":"search","9":"exact","10":"sentence","11":"calendar","12":"page","13":"paged","14":"more","15":"tb","16":"pb","17":"author","18":"order","19":"orderby","20":"year","21":"monthnum","22":"day","23":"hour","24":"minute","25":"second","26":"name","27":"category_name","28":"tag","29":"feed","30":"author_name","31":"pagename","32":"page_id","33":"error","34":"attachment","35":"attachment_id","36":"subpost","37":"subpost_id","38":"preview","39":"robots","40":"favicon","41":"taxonomy","42":"term","43":"cpage","44":"post_type","45":"embed","46":"post_format","47":"layout_category","48":"layout_tag","49":"layout_pack","50":"layout_type","51":"module_width","52":"scope","53":"et_tb_item_type","57":"rest_route","58":"sitemap","59":"sitemap-subtype","60":"sitemap-stylesheet","61":"et_code_snippet_type"},
+ "private_query_vars":["offset","posts_per_page","posts_per_archive_page","showposts","nopaging","post_type","post_status","category__in","category__not_in","category__and","tag__in","tag__not_in","tag__and","tag_slug__in","tag_slug__and","tag_id","post_mime_type","perm","comments_per_page","post__in","post__not_in","post_parent","post_parent__in","post_parent__not_in","title","fields"],
+ "extra_query_vars":[],
+ "query_vars":[],
+ "query_string":"",
+ "request":"",
+ "matched_rule":"",
+ "matched_query":"",
+ "did_permalink":false
+}
+_POST: {
+ "xoo_el_reg_username":"beknomakka",
+ "xoo_el_reg_email":"beknomakka@gufum.com",
+ "xoo_el_reg_pass":"pouetpouet",
+ "_xoo_el_form":"register",
+ "xoo_el_redirect":"\/redirection_cipf",
+ "action":"xoo_el_form_action",
+ "display":"inline"
+}
+
+partners :
+wp: {"public_query_vars":{"0":"m","1":"p","2":"posts","3":"w","4":"cat","5":"withcomments","6":"withoutcomments","7":"s","8":"search","9":"exact","10":"sentence","11":"calendar","12":"page","13":"paged","14":"more","15":"tb","16":"pb","17":"author","18":"order","19":"orderby","20":"year","21":"monthnum","22":"day","23":"hour","24":"minute","25":"second","26":"name","27":"category_name","28":"tag","29":"feed","30":"author_name","31":"pagename","32":"page_id","33":"error","34":"attachment","35":"attachment_id","36":"subpost","37":"subpost_id","38":"preview","39":"robots","40":"favicon","41":"taxonomy","42":"term","43":"cpage","44":"post_type","45":"embed","46":"post_format","47":"layout_category","48":"layout_tag","49":"layout_pack","50":"layout_type","51":"module_width","52":"scope","53":"et_tb_item_type","57":"rest_route","58":"sitemap","59":"sitemap-subtype","60":"sitemap-stylesheet","61":"et_code_snippet_type"},"private_query_vars":["offset","posts_per_page","posts_per_archive_page","showposts","nopaging","post_type","post_status","category__in","category__not_in","category__and","tag__in","tag__not_in","tag__and","tag_slug__in","tag_slug__and","tag_id","post_mime_type","perm","comments_per_page","post__in","post__not_in","post_parent","post_parent__in","post_parent__not_in","title","fields"],"extra_query_vars":[],"query_vars":[],"query_string":"","request":"","matched_rule":"","matched_query":"","did_permalink":false}
+_POST: {
+ "xoo_el_reg_username":"jardozespi",
+ "xoo_el_reg_email":"jardozespi@gufum.com",
+ "xoo_el_reg_pass":"pouetpouet",
+ "_xoo_el_form":"register",
+ "cipf_user_role":"partenaire",
+ "xoo_el_redirect":"\/redirection_cipf",
+ "action":"xoo_el_form_action",
+ "display":"inline"
+}
+
+
+*/
+
+
+
+/*
+*
+* ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/includes/class-xoo-el-form-handler.php
+*
+*/
+//function check_created_user_CIPF($customer_id, $new_customer_data) {
+// error_log("--- in check_created_user_CIPF");
+// error_log("customer_id: " . json_encode($customer_id));
+// error_log("new_customer_data: " . json_encode($new_customer_data));
+// $user_metas = get_user_meta($customer_id);
+// error_log("user metas: " . json_encode($user_metas));
+//}
+//add_action('xoo_el_created_customer', 'check_created_user_CIPF', 10, 2);
+
+
+//function temp_test_data_cipf($extra_data) {
+// PLGNTLS_class::debug_infos();
+// $input_hidden_role = PLGNTLS_class::INPUT_HIDDEN_ROLE;
+//
+// error_log("- in temp_test_data_cipf, extra data: " . json_encode($extra_data));
+// $extra_data[$input_hidden_role] = '';
+// error_log("- after, extra data: " . json_encode($extra_data));
+// return $extra_data;
+//}
+//add_filter('xoo_aff_easy-login-woocommerce_data', 'temp_test_data_cipf');
/*
+steps :
+- ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/includes/class-xoo-el-form-handler.php
+ - 257 : function process_registration()
+ - 273 : get_fields_data() -> reg_admin_fields: {"xoo_el_reg_fname":{"field_type":"xoo_el_reg_fname","input_type":"text","settings":{"required":"yes","label":"","cols":"onehalf","icon":"far fa-user","placeholder":"First Name","minlength":"","maxlength":"","class":"","active":"no","unique_id":"xoo_el_reg_fname"},"priority":"10"},"xoo_el_reg_lname":{"field_type":"xoo_el_reg_lname","input_type":"text","settings":{"required":"yes","label":"","cols":"onehalf","icon":"far fa-user","placeholder":"Last Name","minlength":"","maxlength":"","class":"","active":"no","unique_id":"xoo_el_reg_lname"},"priority":"20"},"xoo_el_reg_username":{"field_type":"xoo_el_reg_username","input_type":"text","settings":{"active":"yes","label":"Cr\u00e9er votre identifiant","cols":"one","icon":"fas fa-user-plus","placeholder":"","minlength":"3","maxlength":"20","class":"","unique_id":"xoo_el_reg_username","required":"yes"},"priority":"30"},"xoo_el_reg_email":{"field_type":"xoo_el_reg_email","input_type":"email","settings":{"active":"yes","required":"yes","label":"Votre adresse mail","cols":"one","icon":"fas fa-at","placeholder":"","class":"","unique_id":"xoo_el_reg_email"},"priority":"40"},"xoo_el_reg_pass":{"field_type":"xoo_el_reg_pass","input_type":"password","settings":{"active":"yes","label":"Cr\u00e9ez votre mot de passe","cols":"one","icon":"fas fa-key","placeholder":"8 caract\u00e8res minimum","minlength":"8","maxlength":"100","password_visibility":"yes","class":"","unique_id":"xoo_el_reg_pass","required":"yes"},"priority":"50"},"xoo_el_reg_pass_again":{"field_type":"xoo_el_reg_pass_again","input_type":"password","settings":{"label":"","cols":"one","icon":"fas fa-key","placeholder":"Confirm Password","password_visibility":"yes","class":"","active":"no","unique_id":"xoo_el_reg_pass_again","required":"yes"},"priority":"60"},"xoo_el_reg_terms":{"field_type":"xoo_el_reg_terms","input_type":"checkbox_single","settings":{"required":"yes","label":"","placeholder":"The Terms and Conditions","cols":"one","checkbox_single":{"yes":{"checked":"","label":"I accept the Terms of Service and Privacy Policy <\/a>","value":"yes","priority":"10"}},"class":"","active":"no","unique_id":"xoo_el_reg_terms"},"priority":"70"},"xoo-el-username":{"field_type":"xoo-el-username","input_type":"text","settings":{"label":"Identifiant ou email","cols":"one","icon":"fas fa-user-plus","placeholder":"","class":"","unique_id":"xoo-el-username","required":"yes","active":"yes","elType":"login","custom_attributes":{"autocomplete":"username"}},"priority":"80"},"xoo-el-password":{"field_type":"xoo-el-password","input_type":"password","settings":{"label":"Mot de passe","cols":"one","icon":"fas fa-key","placeholder":"","password_visibility":"yes","class":"","unique_id":"xoo-el-password","required":"yes","elType":"login","custom_attributes":{"autocomplete":"current-password"}},"priority":"90"},"xoo-el-rp-pass":{"field_type":"xoo-el-rp-pass","input_type":"password","settings":{"label":"","cols":"one","icon":"fas fa-key","placeholder":"Nouveau mot de passe","minlength":"6","maxlength":"20","password_visibility":"yes","class":"","unique_id":"xoo-el-rp-pass","required":"yes","elType":"resetpw"},"priority":"100"},"xoo-el-rp-pass-again":{"field_type":"xoo-el-rp-pass-again","input_type":"password","settings":{"required":"yes","unique_id":"xoo-el-rp-pass-again","elType":"resetpw","label":"","cols":"one","icon":"fas fa-key","placeholder":"Confirmer le mot de passe","password_visibility":"yes","class":""},"priority":"110"},"user_login":{"field_type":"user_login","input_type":"text","settings":{"label":"","cols":"one","icon":"fas fa-user-plus","placeholder":"Identifiant\/e-mail","class":"","unique_id":"user_login","required":"yes","active":"yes","elType":"lostpw"},"priority":"120"},"xoo-el-sing-user":{"field_type":"xoo-el-sing-user","input_type":"text","settings":{"unique_id":"xoo-el-sing-user","required":"yes","active":"yes","elType":"single","custom_attributes":{"autocomplete":"username"},"xoo_el_username":"yes","label":"","cols":"one","icon":"fas fa-user-plus","placeholder":"Identifiant\/e-mail","class":""},"priority":990}}
+ - ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/xoo-form-fields-fw/admin/class-xoo-aff-fields.php
+ - 39 : public function get_fields_data( $format = 'array' )
+ -> 47 : return apply_filters( 'xoo_aff_'.$this->plugin_slug.'_data', $data );
+ - 275 : $doNotValidateOtherFields = get_fields('register') -> doNotValidateOtherFields: ["xoo-el-username","xoo-el-password","xoo-el-rp-pass","xoo-el-rp-pass-again","user_login","xoo-el-sing-user"]
+ - ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/includes/class-xoo-el-fields.php
+ - 28 : public function get_fields( $type = 'register' )
+ -> 58 : return apply_filters( 'xoo_el_'.$type.'_fields', $fields );
+ - 277 : $fieldValues = validate_submitted_field_values( $_POST, $doNotValidateOtherFields ); -> fieldValues: {"xoo_el_reg_username":"nofyobopso","xoo_el_reg_email":"nofyobopso@gufum.com","xoo_el_reg_pass":"pouetpouet"}
+ - ../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/xoo-form-fields-fw/admin/class-xoo-aff-fields.php
+ - 1213 : public function validate_submitted_field_values( $values = array(), $do_not_validate_ids = array() )
+ - 1222 : $fields = $this->get_fields_data()
+ - list that does not contains the contains the form fields
+ - values: {"xoo_el_reg_username":"tamludupsi","xoo_el_reg_email":"tamludupsi@gufum.com","xoo_el_reg_pass":"pouetpouet","_xoo_el_form":"register","cipf_user_role":"partenaire","xoo_el_redirect":"\/redirection_cipf","action":"xoo_el_form_action","display":"inline"}
+ - fields: {
+ "xoo_el_reg_fname":{"field_type":"xoo_el_reg_fname","input_type":"text","settings":{"required":"yes","label":"","cols":"onehalf","icon":"far fa-user","placeholder":"First Name","minlength":"","maxlength":"","class":"","active":"no","unique_id":"xoo_el_reg_fname"},"priority":"10"},
+ "xoo_el_reg_lname":{"field_type":"xoo_el_reg_lname","input_type":"text","settings":{"required":"yes","label":"","cols":"onehalf","icon":"far fa-user","placeholder":"Last Name","minlength":"","maxlength":"","class":"","active":"no","unique_id":"xoo_el_reg_lname"},"priority":"20"},
+ "xoo_el_reg_username":{"field_type":"xoo_el_reg_username","input_type":"text","settings":{"active":"yes","label":"Cr\u00e9er votre identifiant","cols":"one","icon":"fas fa-user-plus","placeholder":"","minlength":"3","maxlength":"20","class":"","unique_id":"xoo_el_reg_username","required":"yes"},"priority":"30"},
+ "xoo_el_reg_email":{"field_type":"xoo_el_reg_email","input_type":"email","settings":{"active":"yes","required":"yes","label":"Votre adresse mail","cols":"one","icon":"fas fa-at","placeholder":"","class":"","unique_id":"xoo_el_reg_email"},"priority":"40"},
+ "xoo_el_reg_pass":{"field_type":"xoo_el_reg_pass","input_type":"password","settings":{"active":"yes","label":"Cr\u00e9ez votre mot de passe","cols":"one","icon":"fas fa-key","placeholder":"8 caract\u00e8res minimum","minlength":"8","maxlength":"100","password_visibility":"yes","class":"","unique_id":"xoo_el_reg_pass","required":"yes"},"priority":"50"},
+ "xoo_el_reg_pass_again":{"field_type":"xoo_el_reg_pass_again","input_type":"password","settings":{"label":"","cols":"one","icon":"fas fa-key","placeholder":"Confirm Password","password_visibility":"yes","class":"","active":"no","unique_id":"xoo_el_reg_pass_again","required":"yes"},"priority":"60"},
+ "xoo_el_reg_terms":{"field_type":"xoo_el_reg_terms","input_type":"checkbox_single","settings":{"required":"yes","label":"","placeholder":"The Terms and Conditions","cols":"one","checkbox_single":{"yes":{"checked":"","label":"I accept the Terms of Service and Privacy Policy <\/a>","value":"yes","priority":"10"}},"class":"","active":"no","unique_id":"xoo_el_reg_terms"},"priority":"70"},
+ "xoo-el-username":{"field_type":"xoo-el-username","input_type":"text","settings":{"label":"Identifiant ou email","cols":"one","icon":"fas fa-user-plus","placeholder":"","class":"","unique_id":"xoo-el-username","required":"yes","active":"yes","elType":"login","custom_attributes":{"autocomplete":"username"}},"priority":"80"},
+ "xoo-el-password":{"field_type":"xoo-el-password","input_type":"password","settings":{"label":"Mot de passe","cols":"one","icon":"fas fa-key","placeholder":"","password_visibility":"yes","class":"","unique_id":"xoo-el-password","required":"yes","elType":"login","custom_attributes":{"autocomplete":"current-password"}},"priority":"90"},
+ "xoo-el-rp-pass":{"field_type":"xoo-el-rp-pass","input_type":"password","settings":{"label":"","cols":"one","icon":"fas fa-key","placeholder":"Nouveau mot de passe","minlength":"6","maxlength":"20","password_visibility":"yes","class":"","unique_id":"xoo-el-rp-pass","required":"yes","elType":"resetpw"},"priority":"100"},
+ "xoo-el-rp-pass-again":{"field_type":"xoo-el-rp-pass-again","input_type":"password","settings":{"required":"yes","unique_id":"xoo-el-rp-pass-again","elType":"resetpw","label":"","cols":"one","icon":"fas fa-key","placeholder":"Confirmer le mot de passe","password_visibility":"yes","class":""},"priority":"110"},
+ "user_login":{"field_type":"user_login","input_type":"text","settings":{"label":"","cols":"one","icon":"fas fa-user-plus","placeholder":"Identifiant\/e-mail","class":"","unique_id":"user_login","required":"yes","active":"yes","elType":"lostpw"},"priority":"120"},
+ "xoo-el-sing-user":{"field_type":"xoo-el-sing-user","input_type":"text","settings":{"unique_id":"xoo-el-sing-user","required":"yes","active":"yes","elType":"single","custom_attributes":{"autocomplete":"username"},"xoo_el_username":"yes","label":"","cols":"one","icon":"fas fa-user-plus","placeholder":"Identifiant\/e-mail","class":""},"priority":990}
+ }
+
+
+---
+
+do_action( 'xoo_el_created_customer', $customer_id, $new_customer_data);
+../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/includes/class-xoo-el-form-handler.php
+
+prof :
+customer_id: 194
+new_customer_data: {
+ "user_login":"dultiropso",
+ "user_pass":"pouetpouet",
+ "user_email":"dultiropso@gufum.com",
+ "role":"professeur__professeure"
+}
+user metas: {
+ "nickname":["dultiropso"],
+ "first_name":[""],
+ "last_name":[""],
+ "description":[""],
+ "rich_editing":["true"],
+ "syntax_highlighting":["true"],
+ "comment_shortcuts":["false"],
+ "admin_color":["fresh"],
+ "use_ssl":["0"],
+ "show_admin_bar_front":["true"],
+ "locale":[""],
+ "wp_503463_capabilities":["a:1:{s:23:\"professeur__professeure\";b:1;}"],
+ "wp_503463_user_level":["0"],
+ "dismissed_wp_pointers":[""]
+}
+
+partner :
+customer_id: 195
+new_customer_data: {
+ "user_login":"mistahirdu",
+ "user_pass":"pouetpouet",
+ "user_email":"mistahirdu@gufum.com",
+ "role":"professeur__professeure"
+}
+user metas: {
+ "nickname":["mistahirdu"],
+ "first_name":[""],
+ "last_name":[""],
+ "description":[""],
+ "rich_editing":["true"],
+ "syntax_highlighting":["true"],
+ "comment_shortcuts":["false"],
+ "admin_color":["fresh"],
+ "use_ssl":["0"],
+ "show_admin_bar_front":["true"],
+ "locale":[""],
+ "wp_503463_capabilities":["a:1:{s:23:\"professeur__professeure\";b:1;}"],
+ "wp_503463_user_level":["0"],
+ "dismissed_wp_pointers":[""]
+}
+
+
+---
do_action( 'xoo_el_register_add_fields', $args );
../../../wordpress_docker/volumes/wp_volume/wp-content/plugins/easy-login-woocommerce/templates/global/xoo-el-register-section.php
diff --git a/plugins/cipf_plugin/php/redirections.php b/plugins/cipf_plugin/php/redirections.php
index 5f2fc5c..215b7b8 100644
--- a/plugins/cipf_plugin/php/redirections.php
+++ b/plugins/cipf_plugin/php/redirections.php
@@ -11,7 +11,7 @@ if (!defined('ABSPATH')) {
/*
-* redirects direct to home
+* redirects to home
*
*/
function redirect_home_CIPF(){
@@ -117,6 +117,9 @@ function redirection_profil_CIPF(){
* redirects when trying to access the page with SLUG_PAGE_REDIRECTION
* no matter if it exists or not
*
+* get current page url : https://wordpress.stackexchange.com/q/274569/226939
+* -> global $wp; add_query_arg( $wp->query_vars, home_url( $wp->request ) );
+*
*/
function redirection_page_CIPF(){
PLGNTLS_class::debug_infos();
diff --git a/plugins/cipf_plugin/utils/plgntls_class.php b/plugins/cipf_plugin/utils/plgntls_class.php
index 58f377c..8cf5c59 100644
--- a/plugins/cipf_plugin/utils/plgntls_class.php
+++ b/plugins/cipf_plugin/utils/plgntls_class.php
@@ -119,7 +119,6 @@ class PLGNTLS_class {
// SHORTCODES
// OPTIONS
- const OPTION_PARTNER_SLUG = ['_name'=>'cipf_partner_slug', 'true'=>'true', 'false'=>'false'];
// MENU
const SLUG_TOOGLE_ADMIN_MENU = ['_name'=>'toogle_admin_menu_url_cipf', 'toggle'=>'toggle', 'show'=>'show', 'hide'=>'hide'];
@@ -134,6 +133,7 @@ class PLGNTLS_class {
const CARD_VALIDITY_TIME = '1 year'; // string : time of validity of the card (ex: '1 month' or '1 year' or '60 days')
const USER_INFO_DATE_FORMAT = 'd/m/Y'; // for user_infos.php (date format : https://www.php.net/manual/fr/datetime.format.php)
const ADMIN_VALIDATE_PROF_FIELD = 'admin_activate_prof_cipf'; // for admin_modif_prof.php
+ const INPUT_HIDDEN_ROLE = 'cipf_user_role';
private static $_DEBUG_INFOS = false;