/** * Purchase Form Validate Guest User * * @access private * @since 1.0.8.1 * @return array */ function edd_purchase_form_validate_guest_user() { // Start an array to collect valid user data $valid_user_data = array('user_id' => 0); // Show error message if user must be logged in if (edd_logged_in_only()) { edd_set_error('logged_in_only', __('You must be logged into an account to purchase', 'easy-digital-downloads')); } // Get the guest email $guest_email = isset($_POST['edd_email']) ? $_POST['edd_email'] : false; // Check email if ($guest_email && strlen($guest_email) > 0) { // Validate email if (!is_email($guest_email)) { // Invalid email edd_set_error('email_invalid', __('Invalid email', 'easy-digital-downloads')); } else { // All is good to go $valid_user_data['user_email'] = $guest_email; } } else { // No email edd_set_error('email_empty', __('Enter an email', 'easy-digital-downloads')); } // Loop through required fields and show error messages foreach (edd_purchase_form_required_fields() as $field_name => $value) { if (in_array($value, edd_purchase_form_required_fields()) && empty($_POST[$field_name])) { edd_set_error($value['error_id'], $value['error_message']); } } return $valid_user_data; }
/** * Check if a field is required * * @param string $field * @access public * @since 1.7 * @return bool */ function edd_field_is_required($field = '') { $required_fields = edd_purchase_form_required_fields(); return array_key_exists($field, $required_fields); }