‘Missing fields.’]);
}
// Activation Link (NOTE: demo approach; in production use a stored token)
$activation_link = add_query_arg(
[
‘sbl_activate’ => ‘true’,
‘rider_name’ => $name,
‘rider_phone’ => $phone,
‘rider_email’ => $email,
],
$current_url
);
$policy_link = home_url(‘/booking-policies’);
$subject = ‘Action Required: Activate your Swiss Black Limo Account’;
$headers = [‘Content-Type: text/html; charset=UTF-8’];
$name_esc = esc_html($name);
$policy_link_esc = esc_url($policy_link);
$activation_link_esc = esc_url($activation_link);
$message = ”
Welcome, {$name_esc}!
Thank you for registering with Swiss Black Limo International.
Step 1: Please read our booking rules here:
Booking Policies â Swiss Black Limo International
Step 2: You must activate your account to book a ride:
See you soon!
“;
$sent = wp_mail($email, $subject, $message, $headers);
if ($sent) {
wp_send_json_success([‘message’ => ‘Email sent’]);
} else {
wp_send_json_error([‘message’ => ‘Failed to send email. Check WP mail settings/logs.’]);
}
wp_die();
}
/**
* 2) FRONTEND: UI injected in footer
*/
add_action(‘wp_footer’, function () {
$ajax_url = admin_url(‘admin-ajax.php’);
$nonce = wp_create_nonce(‘sbl_nonce’);
// â
Put your real Google Maps API key here
$google_maps_key = ‘AIzaSyAPJpb4jbbnovmAJQIUhO0jgEnCrWtIPPE’;
?>
