/** * Displays the HTML for error messages * * @access public * @since 4.0.0 */ function leaky_paywall_show_error_messages($error_id = '') { if (leaky_paywall_errors()->get_error_codes()) { do_action('leaky_paywall_errors_before'); echo leaky_paywall_get_error_messages_html($error_id); do_action('leaky_paywall_errors_after'); } }
/** * Validate additional fields during registration submission * * @since 4.0.0 */ public function validate_fields() { if (empty($_POST['card_number'])) { leaky_paywall_errors()->add('missing_card_number', __('The card number you entered is invalid', 'issuem-leaky-paywall'), 'register'); } }
function leaky_paywall_free_registration_form() { $level_id = $_GET['issuem-leaky-paywall-free-form']; $settings = get_leaky_paywall_settings(); $return = ''; if ($level = get_leaky_paywall_subscription_level($level_id)) { if (empty($level['price'])) { if ($codes = leaky_paywall_errors()->get_error_codes()) { echo '<div class="leaky_paywall_errors">'; // Loop error codes and display errors foreach ($codes as $code) { $message = leaky_paywall_errors()->get_error_message($code); $return .= '<span class="error"><strong>' . __('Error') . '</strong>: ' . $message . '</span><br/>'; } echo '</div>'; } $return .= '<h3>' . sprintf(__('Register for %s', 'issuem-leaky-paywall'), $level['label']) . '</h3>'; $return .= '<form id="leaky_paywall_registration_form" class="leaky_paywall_form" action="" method="POST">'; $return .= '<fieldset>'; $return .= '<p>'; $return .= '<label for="leaky_paywall_user_Login" class="leaky-paywall-field-label">' . __('Username', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_login" id="leaky_paywall_user_login" class="required" type="text"/>'; $return .= '</p>'; $return .= '<p>'; $return .= '<label for="leaky_paywall_user_email" class="leaky-paywall-field-label">' . __('Email', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_email" id="leaky_paywall_user_email" class="required" type="email"/>'; $return .= '</p>'; $return .= '<p>'; $return .= '<label for="leaky_paywall_user_first" class="leaky-paywall-field-label">' . __('First Name', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_first" id="leaky_paywall_user_first" type="text"/>'; $return .= '</p>'; $return .= '<p>'; $return .= '<label for="leaky_paywall_user_last" class="leaky-paywall-field-label">' . __('Last Name', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_last" id="leaky_paywall_user_last" type="text"/>'; $return .= '</p>'; $return .= '<p>'; $return .= '<label for="password" class="leaky-paywall-field-label">' . __('Password', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_pass" id="password" class="required" type="password"/>'; $return .= '</p>'; $return .= '<p>'; $return .= '<label for="password_again" class="leaky-paywall-field-label">' . __('Password Again', 'issuem-leaky-paywall') . '</label>'; $return .= '<input name="leaky_paywall_user_pass_confirm" id="password_again" class="required" type="password"/>'; $return .= '</p>'; $return = apply_filters('leaky_paywall_after_registration_fields', $return); $return .= '<p>'; $return .= '<input type="hidden" name="leaky_paywall_register_nonce" value="' . wp_create_nonce('leaky_paywall-register-nonce') . '"/>'; $return .= '<input type="hidden" name="leaky_paywall_register_level_id" value="' . $level_id . '"/>'; $return .= '<input type="submit" name="issuem-leaky-paywall-free-return" value="' . __('Register Now', 'issuem-leaky-paywall') . '"/>'; $return .= '</p>'; $return .= '</fieldset>'; $return .= '</form>'; } else { $return .= __('Requested subscription level is not free', 'issuem-leaky-paywall'); } } else { $return .= __('Not a valid subscription level', 'issuem-leaky-paywall'); } return $return; }
public function add_error($code = '', $message = '') { leaky_paywall_errors()->add($code, $message, 'register'); }
/** * Validate and setup the user data for registration * * @since 4.0.0 */ function leaky_paywall_validate_user_data() { $user = array(); if (!is_user_logged_in()) { $user['id'] = 0; $user['login'] = sanitize_text_field($_POST['username']); $user['password'] = sanitize_text_field($_POST['password']); $user['confirm_password'] = sanitize_text_field($_POST['confirm_password']); $user['email'] = sanitize_text_field($_POST['email_address']); $user['first_name'] = sanitize_text_field($_POST['first_name']); $user['last_name'] = sanitize_text_field($_POST['last_name']); $user['need_new'] = true; } else { $userdata = get_userdata(get_current_user_id()); $user['id'] = $userdata->ID; $user['login'] = $userdata->user_login; $user['email'] = $userdata->user_email; $user['first_name'] = sanitize_text_field($_POST['first_name']); $user['last_name'] = sanitize_text_field($_POST['last_name']); $user['password'] = sanitize_text_field($_POST['password']); $user['confirm_password'] = sanitize_text_field($_POST['confirm_password']); $user['need_new'] = false; } if (empty($user['first_name'])) { // empty first name leaky_paywall_errors()->add('firstname_empty', __('Please enter your first name', 'leaky_paywall'), 'register'); } if (empty($user['last_name'])) { // empty last name leaky_paywall_errors()->add('lastname_empty', __('Please enter your last name', 'leaky_paywall'), 'register'); } if (!is_email($user['email'])) { //invalid email leaky_paywall_errors()->add('email_invalid', __('Invalid email', 'leaky_paywall'), 'register'); } if (!leaky_paywall_validate_username($user['login'])) { // invalid username leaky_paywall_errors()->add('username_invalid', __('Invalid username', 'leaky_paywall'), 'register'); } if (empty($user['password'])) { // password is empty leaky_paywall_errors()->add('password_empty', __('Please enter a password', 'leaky_paywall'), 'register'); } if ($user['password'] !== $user['confirm_password']) { // passwords do not match leaky_paywall_errors()->add('password_mismatch', __('Passwords do not match', 'leaky_paywall'), 'register'); } if ($user['need_new']) { if (email_exists($user['email'])) { //Email address already registered leaky_paywall_errors()->add('email_used', __('Email already registered', 'leaky_paywall'), 'register'); } if (username_exists($user['login'])) { // Username already registered leaky_paywall_errors()->add('username_unavailable', __('Username already taken', 'leaky_paywall'), 'register'); } if (empty($user['login'])) { // empty username leaky_paywall_errors()->add('username_empty', __('Please enter a username', 'leaky_paywall'), 'register'); } } return apply_filters('leaky_paywall_user_registration_data', $user); }