Untitled

 avatar
unknown
plain_text
4 months ago
1.2 kB
2
Indexable
add_action('rest_api_init', function() {
    register_rest_route('custom/v1', '/check-phone', [
        'methods' => 'POST',
        'callback' => 'check_phone_duplicate_rest',
        'permission_callback' => '__return_true',
    ]);
});

function check_phone_duplicate_rest($request) {
    global $wpdb;

    $phone = $request->get_param('phone');
    $normalized_phone = preg_replace('/[^0-9]/', '', $phone);

    $results = $wpdb->get_results($wpdb->prepare("
        SELECT submission_id
        FROM {$wpdb->prefix}e_submissions_values
        WHERE `key` = 'phone' AND `value` = %s
        AND submission_id IN (
            SELECT id FROM {$wpdb->prefix}e_submissions
            WHERE created_at >= NOW() - INTERVAL 45 DAY
        )
    ", $normalized_phone));

    if (!empty($results)) {
        return new WP_REST_Response([
            'success' => false,
            'message' => 'Questo numero di telefono è già presente nelle lead recenti.',
        ], 200);
    } else {
        return new WP_REST_Response([
            'success' => true,
            'message' => 'Numero di telefono unico.',
        ], 200);
    }
}
Editor is loading...
Leave a Comment