Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /*
- This file is part of Join My Multisite, a plugin for WordPress.
- Join My Multisite is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
- Sitewide Comment Control is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with WordPress. If not, see <http://www.gnu.org/licenses/>.
- */
- if (!defined('ABSPATH')) {
- die();
- }
- //$jmm_options = get_option( 'helfjmm_options' );
- // if ( !is_null($jmm_options['perpage']) && $jmm_options['perpage'] != "XXXXXX" )
- // {$goto = get_permalink($jmm_options['perpage']); echo get_permalink($jmm_options['perpage']); echo $goto; }
- // else
- // {$goto = '/wp-signup.php'; echo 'hi2'; }
- ?>
- <style type="text/css">
- .mu_register { width: 90%; margin:0 auto; }
- .mu_register form { margin-top: 2em; }
- .mu_register .error { font-weight:700; padding:10px; color:#333333; background:#FFEBE8; border:1px solid #CC0000; }
- .mu_register input[type="submit"],
- .mu_register #blog_title,
- .mu_register #user_email,
- .mu_register #blogname,
- .mu_register #user_name { width:100%; font-size: 24px; margin:5px 0; }
- .mu_register .prefix_address,
- .mu_register .suffix_address {font-size: 18px;display:inline; }
- .mu_register label { font-weight:700; font-size:15px; display:block; margin:10px 0; }
- .mu_register label.checkbox { display:inline; }
- .mu_register .mu_alert { font-weight:700; padding:10px; color:#333333; background:#ffffe0; border:1px solid #e6db55; }
- </style>
- <div id="content" class="widecolumn">
- <div class="mu_register">
- <?php
- function show_user_form($user_name = '', $user_email = '', $errors = '') {
- // User name
- echo '<label for="user_name">' . __('Username:', 'helfjmm') . '</label>';
- if ( $errmsg = $errors->get_error_message('user_name') ) {
- echo '<p class="error">'.$errmsg.'</p>';
- }
- echo '<input name="user_name" type="text" id="user_name" value="'. esc_attr($user_name) .'" maxlength="60" /><br />';
- _e( '(Must be at least 4 characters, letters and numbers only.)', 'helfjmm' );
- ?>
- <label for="user_email"><?php _e( 'Email Address:', 'helfjmm' ) ?></label>
- <?php if ( $errmsg = $errors->get_error_message('user_email') ) { ?>
- <p class="error"><?php echo $errmsg ?></p>
- <?php } ?>
- <input name="user_email" type="text" id="user_email" value="<?php echo esc_attr($user_email) ?>" maxlength="200" /><br /><?php _e('We send your registration email to this address. (Double-check your email address before continuing.)', 'helfjmm') ?>
- <?php
- if ( $errmsg = $errors->get_error_message('generic') ) {
- echo '<p class="error">' . $errmsg . '</p>';
- }
- do_action( 'signup_extra_fields', $errors );
- }
- function validate_user_form() {
- return wpmu_validate_user_signup($_POST['user_name'], $_POST['user_email']);
- }
- function signup_user($user_name = '', $user_email = '', $errors = '') {
- global $current_site, $active_signup;
- $jmm_options = get_option( 'helfjmm_options' );
- if ( !is_null($jmm_options['perpage']) && $jmm_options['perpage'] != "XXXXXX" )
- {$goto = get_permalink($jmm_options['perpage']); }
- else
- {$goto = '/wp-signup.php';}
- if ( !is_wp_error($errors) )
- $errors = new WP_Error();
- $signup_for = isset( $_POST[ 'signup_for' ] ) ? esc_html( $_POST[ 'signup_for' ] ) : 'blog';
- // allow definition of default variables
- $filtered_results = apply_filters('signup_user_init', array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors ));
- $user_name = $filtered_results['user_name'];
- $user_email = $filtered_results['user_email'];
- $errors = $filtered_results['errors'];
- $blog_details = get_blog_details($current_site->blog_id);
- ?>
- <h2><?php printf( __( 'Get a user account on %s in seconds', 'helfjmm' ), $blog_details->blogname ) ?></h2>
- <form id="setupform" method="post" action="<?php echo $goto; ?>">
- <input type="hidden" name="stage" value="validate-user-signup" />
- <?php do_action( 'signup_hidden_fields' ); ?>
- <?php show_user_form($user_name, $user_email, $errors); ?>
- <p>
- <input id="signupblog" type="hidden" name="signup_for" value="user" />
- </p>
- <p class="submit"><input type="submit" name="submit" class="submit" value="<?php esc_attr_e('Sign Up', 'helfjmm') ?>" /></p>
- </form>
- <?php
- }
- function validate_user_signup() {
- $result = validate_user_form();
- extract($result);
- if ( $errors->get_error_code() ) {
- $errors = rewrite_errors_for_translation($errors);
- signup_user($user_name, $user_email, $errors);
- return false;
- }
- if ( 'blog' == $_POST['signup_for'] ) {
- signup_blog($user_name, $user_email);
- return false;
- }
- wpmu_signup_user($user_name, $user_email, apply_filters( 'add_signup_meta', array() ) );
- confirm_user_signup($user_name, $user_email);
- return true;
- }
- function rewrite_errors_for_translation($errors) {
- $rewritten_errors = new WP_Error();
- $messages = $errors->get_error_messages();
- foreach ($messages as $value) {
- switch ($value) {
- case 'Only lowercase letters (a-z) and numbers are allowed.':
- $rewritten_errors->add( 'user_name', __( 'Only lowercase letters (a-z) and numbers are allowed.', 'helfjmm' ) );
- break;
- case 'Please enter a username.':
- $rewritten_errors->add( 'user_name', __( 'Please enter a username.', 'helfjmm' ) );
- break;
- case 'That username is not allowed.':
- $rewritten_errors->add( 'user_name', __( 'That username is not allowed.', 'helfjmm' ) );
- break;
- case 'You cannot use that email address to signup. We are having problems with them blocking some of our email. Please use another email provider.':
- $rewritten_errors->add( 'user_name', __( 'You cannot use that email address to signup. We are having problems with them blocking some of our email. Please use another email provider.', 'helfjmm' ) );
- break;
- case 'Username must be at least 4 characters.':
- $rewritten_errors->add('user_name', __( 'Username must be at least 4 characters.', 'helfjmm' ) );
- break;
- case 'Sorry, usernames may not contain the character “_”!':
- $rewritten_errors->add('user_name', __( 'Sorry, usernames may not contain the character “_”!', 'helfjmm' ) );
- break;
- case 'Sorry, usernames must have letters too!':
- $rewritten_errors->add('user_name', __( 'Sorry, usernames must have letters too!', 'helfjmm' ) );
- break;
- case 'Please enter a correct email address.':
- $rewritten_errors->add('user_email', __( 'Please enter a correct email address.', 'helfjmm' ) );
- break;
- case 'Sorry, that email address is not allowed!':
- $rewritten_errors->add('user_email', __( 'Sorry, that email address is not allowed!', 'helfjmm' ) );
- break;
- case 'Sorry, that username already exists!':
- $rewritten_errors->add('user_name', __( 'Sorry, that username already exists!', 'helfjmm' ) );
- break;
- case 'Sorry, that email address is already used!':
- $rewritten_errors->add('user_email', __( 'Sorry, that email address is already used!', 'helfjmm' ) );
- break;
- case 'That username is currently reserved but may be available in a couple of days.':
- $rewritten_errors->add('user_name', __( 'That username is currently reserved but may be available in a couple of days.', 'helfjmm' ) );
- break;
- case 'username and email used':
- $rewritten_errors->add('user_email_used', __( 'username and email used', 'helfjmm' ) );
- break;
- case 'That email address has already been used. Please check your inbox for an activation email. It will become available in a couple of days if you do nothing.':
- $rewritten_errors->add('user_email', __( 'That email address has already been used. Please check your inbox for an activation email. It will become available in a couple of days if you do nothing.', 'helfjmm' ) );
- break;
- }
- }
- return $rewritten_errors;
- }
- function confirm_user_signup($user_name, $user_email) {
- ?>
- <h2><?php printf( __( '%s is your new username', 'helfjmm' ), $user_name) ?></h2>
- <p><?php _e( 'But, before you can start using your new username, <strong>you must activate it</strong>.', 'helfjmm' ) ?></p>
- <p><?php printf( __( 'Check your inbox at <strong>%s</strong> and click the link given.', 'helfjmm' ), $user_email ); ?></p>
- <p><?php _e( 'If you do not activate your username within two days, you will have to sign up again.', 'helfjmm' ); ?></p>
- <?php
- do_action( 'signup_finished' );
- }
- // Main
- $active_signup = get_site_option( 'registration' );
- if ( !$active_signup )
- $active_signup = 'all';
- $active_signup = apply_filters( 'wpmu_active_signup', $active_signup ); // return "all", "none", "blog" or "user"
- // Make the signup type translatable.
- $i18n_signup['all'] = _x('all', 'Multisite active signup type');
- $i18n_signup['none'] = _x('none', 'Multisite active signup type');
- $i18n_signup['blog'] = _x('blog', 'Multisite active signup type');
- $i18n_signup['user'] = _x('user', 'Multisite active signup type');
- if ( is_super_admin() )
- echo '<div class="mu_alert">' . sprintf( __( 'Greetings Site Administrator! You are currently allowing “%s” registrations. To change or disable registration go to your <a href="%s">Options page</a>.', 'helfjmm' ), $i18n_signup[$active_signup], esc_url( network_admin_url( 'settings.php' ) ) ) . '</div>';
- $newblogname = isset($_GET['new']) ? strtolower(preg_replace('/^-|-$|[^-a-zA-Z0-9]/', '', $_GET['new'])) : null;
- $current_user = wp_get_current_user();
- if ( $active_signup == 'none' ) {
- _e( 'Registration has been disabled.' );
- } else {
- $stage = isset( $_POST['stage'] ) ? $_POST['stage'] : 'default';
- switch ( $stage ) {
- case 'validate-user-signup' :
- if ( $active_signup == 'all' || $_POST[ 'signup_for' ] == 'blog' && $active_signup == 'blog' || $_POST[ 'signup_for' ] == 'user' && $active_signup == 'user' )
- validate_user_signup();
- else
- _e( 'User registration has been disabled.', 'helfjmm' );
- break;
- case 'default':
- default :
- $user_email = isset( $_POST[ 'user_email' ] ) ? $_POST[ 'user_email' ] : '';
- do_action( 'preprocess_signup_form' ); // populate the form from invites, elsewhere?
- if ( is_user_logged_in() == false && ( $active_signup == 'all' || $active_signup == 'user' ) )
- signup_user( $user_email );
- else
- _e( 'You are logged in already. No need to register again!', 'helfjmm' );
- break;
- }
- }
- ?>
- </div>
- </div>
- <?php do_action( 'after_signup_form' ); ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement