Example #1
0
/**
 * Update a user's cellular data
 *
 * @since 0.1.0
 *
 * @param type $user_id
 */
function wp_user_alerts_save_sms_metabox($user_id = 0)
{
    // Bail if no number field was posted
    if (!isset($_POST['cellular_number'])) {
        return;
    }
    // Number
    $number = wp_user_alerts_sanizite_cellular_number($_POST['cellular_number']);
    !empty($number) ? update_user_meta($user_id, 'cellular_number', $number) : delete_user_meta($user_id, 'cellular_number');
    // Carrier
    in_array($_POST['cellular_carrier'], array_keys(wp_user_alerts_get_cellular_carriers())) ? update_user_meta($user_id, 'cellular_carrier', $_POST['cellular_carrier']) : delete_user_meta($user_id, 'cellular_carrier');
    // Privacy
    !empty($_POST['cellular_privacy']) ? update_user_meta($user_id, 'cellular_privacy', array_intersect(array('block_calls', 'block_texts'), $_POST['cellular_privacy'])) : delete_user_meta($user_id, 'cellular_privacy');
}
Example #2
0
/**
 * Return the SMS email address for a given user
 *
 * @since 0.1.0
 *
 * @param  id $user_id
 *
 * @return mixed
 */
function wp_user_alerts_get_user_cellular_address($user_id = 0)
{
    // Get all supported carriers
    $carriers = wp_user_alerts_get_cellular_carriers();
    $address = '';
    // Get user data
    $user = get_userdata($user_id);
    $cell = $user->cellular_number;
    $carrier = $user->cellular_carrier;
    // Format address
    if (!empty($user->cellular_number)) {
        // Bail if carrier not found
        if (!isset($carriers[$carrier])) {
            return false;
        }
        // Format number for email address usage
        $cell = wp_user_alerts_sanizite_cellular_number($cell);
        // Concatenate the cell address
        $address = "{$cell}{$carriers[$carrier]->format}";
    }
    // Filter & return
    return apply_filters('wp_user_alerts_get_user_cellular_address', $address, $user_id, $cell, $carrier);
}