Skip to content

Instantly share code, notes, and snippets.

@goranefbl
Created November 29, 2023 23:25
Show Gist options
  • Select an option

  • Save goranefbl/7bb2ff1d02dc49b5ce628952deb2708c to your computer and use it in GitHub Desktop.

Select an option

Save goranefbl/7bb2ff1d02dc49b5ce628952deb2708c to your computer and use it in GitHub Desktop.
Reward friend during registration
<?php
add_action('user_register', 'wpgens_generate_referral_reward', 10, 1);
function wpgens_generate_referral_reward($user_id)
{
if (isset($_COOKIE["gens_raf"])) {
global $wpdb;
$results = $wpdb->get_results($wpdb->prepare("SELECT user_id FROM $wpdb->usermeta WHERE meta_key='gens_referral_id' AND meta_value = %s", sanitize_text_field($_COOKIE["gens_raf"])));
if (!empty($results)) {
$referral_id = (int)$results[0]->user_id;
}
if (!$referral_id && filter_var($_COOKIE["gens_raf"], FILTER_VALIDATE_EMAIL)) {
$referral_id = sanitize_text_field($_COOKIE["gens_raf"]);
}
if (!$referral_id) {
return;
}
do_action('gens_new_user_registration', $referral_id, $user_id);
do_action('new_raf_data', 'user_referred', array('user' => $user_id, 'referrer' => $referral_id));
$friend_coupon_object = new WPGens_RAF_Coupons('registration', $user_id, 0);
$friend_coupon_code = $friend_coupon_object->get_coupon();
$email = new WPGens_RAF_Email($friend_coupon_object->coupon_mail, $friend_coupon_code, 0, 'friend');
$email->send_email();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment