updated offers expiration hanling with separate checkbox for each 3 offers

This commit is contained in:
asus
2024-04-16 16:43:11 +02:00
parent d3e0fbb99e
commit 62dcaa7672
8 changed files with 72 additions and 145 deletions

View File

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

View File

@@ -105,6 +105,9 @@ function send_emails_CIPF($email_name, $user_id = null) {
}
foreach ($emails as $email) {
// dont delete, for log
error_log("send '".$email_name."' email to: ".$email['to']." (".json_encode($email).")");
$sent = wp_mail($email['to'], $email['subject'], $email['message'], $email['headers']);
if (!$sent) {
error_log('Email sending failed!: ' . json_encode($email));
@@ -144,6 +147,7 @@ function handle_send_reminders_CIPF($acf_id, $user_id, $date_limit, $reminder_ty
continue;
}
set_email_reminder_choice_CIPF($reminder_key, $acf_id);
send_emails_CIPF($email_type, $user_id);
return; // don't send multiple emails
}

File diff suppressed because one or more lines are too long

View File

@@ -109,22 +109,23 @@ add_action('template_redirect', 'partner_form_creation_page_CIPF');
* actions after partner form is validated
*
*/
function partner_after_form_CIPF($form_id, $post_array, $form_type) {
Plgntls::debug_infos(2);
$form_partner_id = Cipf::FORM_PARTNER_PAGE_ID;
if ($form_partner_id !== $form_id) {
return;
}
Plgntls::debug_infos();
// error_log("form_id: " . json_encode($form_id));
// error_log("post_array: " . json_encode($post_array));
// error_log("form_type: " . json_encode($form_type));
$post_id = $post_array['ID'];
}
add_action('df_after_process', 'partner_after_form_CIPF', 10, 3);
//function partner_after_form_CIPF($form_id, $post_array, $form_type) {
// Plgntls::debug_infos(2);
// $form_partner_id = Cipf::FORM_PARTNER_PAGE_ID;
//
// if ($form_partner_id !== $form_id) {
// return;
// }
// Plgntls::debug_infos();
//
//// error_log("form_id: " . json_encode($form_id));
//// error_log("post_array: " . json_encode($post_array));
//// error_log("form_type: " . json_encode($form_type));
//
// // should protect : if post creation there will not be an ID
// $post_id = $post_array['ID'];
//}
//add_action('df_after_process', 'partner_after_form_CIPF', 10, 3);

View File

@@ -15,6 +15,8 @@ if (!defined('ABSPATH')) {
function handle_partner_offers_expire_CIPF($page_id) {
Plgntls::debug_infos();
$post = get_post($page_id);
$i = 1;
while ($i <= 3) {
$offer_duration = get_field_init_CIPF('duree_offre_'.$i, $page_id);
@@ -27,8 +29,12 @@ function handle_partner_offers_expire_CIPF($page_id) {
++$i;
continue;
}
handle_offer_is_expired_CIPF($i, $page_id);
$offer_title = get_field_init_CIPF('offre_'.$i.'_titre', $page_id);
error_log("- post: ".$post->post_title." - titre offre: ".$offer_title);
handle_offer_will_expire_CIPF($i, $page_id);
handle_offer_is_expired_CIPF($i, $page_id);
++$i;
}
}
@@ -48,9 +54,9 @@ function handle_offer_will_expire_CIPF($i, $page_id) {
$post = get_post($page_id);
$user_id = $post->post_author;
handle_send_reminders_CIPF($page_id, $user_id, $date_limit, 'offer_expiration', 'offer_will_expire');
handle_send_reminders_CIPF($page_id, $user_id, $date_limit, 'offer_expiration_'.$i, 'offer_will_expire');
}
function handle_offer_is_expired_CIPF($i, $page_id) {
@@ -61,7 +67,9 @@ function handle_offer_is_expired_CIPF($i, $page_id) {
}
update_field('afficher_offre_'.$i, 'Masquer', $page_id);
set_email_reminder_choice_CIPF('offer_expired', $acf_id);
$post = get_post($page_id);
$user_id = $post->post_author;
send_emails_CIPF('offer_expired', $user_id);
}

View File

@@ -121,46 +121,49 @@ function handle_prof_account_deletion_CIPF($user_id) {
send_emails_CIPF('account_deleted', $user_id);
include_once(ABSPATH.'wp-admin/includes/user.php');
$user = get_user_by('id', $user_id);
// dont delete, for log
$user = get_user_by('id', $user_id);
error_log("delete prof: " . $user->user_login);
wp_delete_user($user_id);
}
/*
* it should not be necessary, but just in case
* ! no sens : it hooks after user is deleted, so images are already added to another user if they are not deleted
*
*/
function prof_deletion_ensure_images_are_deleted_CIPF($user_id, $reassign, $user) {
Plgntls::debug_infos();
$role_prof = Cipf::ROLE_PROF;
if (!in_array($role_prof, $user->roles)) {
return;
}
$images = get_posts(array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'posts_per_page' => -1,
'author' => $user_id,
));
if (empty($images)) {
return;
}
foreach ($images as $image) {
$image_id = $image->ID;
// Set the second argument to true to permanently delete the attachment
$result = wp_delete_attachment($image_id, true);
if ($result === false) {
error_log('- failed to delete image: ' . $image_id);
}
else {
error_log('- delete image: ' . $image_id);
}
}
}
add_action('deleted_user', 'prof_deletion_ensure_images_are_deleted_CIPF', 10, 3);
//function prof_deletion_ensure_images_are_deleted_CIPF($user_id, $reassign, $user) {
// Plgntls::debug_infos();
// $role_prof = Cipf::ROLE_PROF;
//
// if (!in_array($role_prof, $user->roles)) {
// return;
// }
//
// $images = get_posts(array(
// 'post_type' => 'attachment',
// 'post_mime_type' => 'image',
// 'posts_per_page' => -1,
// 'author' => $user_id,
// ));
// if (empty($images)) {
// return;
// }
// foreach ($images as $image) {
// $image_id = $image->ID;
// // Set the second argument to true to permanently delete the attachment
// $result = wp_delete_attachment($image_id, true);
// if ($result === false) {
// error_log('- failed to delete image: ' . $image_id);
// }
// else {
// error_log('- delete image: ' . $image_id);
// }
// }
//}
//add_action('deleted_user', 'prof_deletion_ensure_images_are_deleted_CIPF', 10, 3);

Submodule private updated: 360ed6d219...0b28bb6abc