Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Mar 3rd, 2014  |  syntax: None  |  size: 8.56 KB  |  views: 100  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <?php
  2. /*
  3.   Template Name: Login Page
  4.  */
  5. nocache_headers();
  6. global $wpdb, $user_ID;
  7. $redirectto     = $wpdb->escape(wp_strip_all_tags(esc_attr($_GET['redirect_to'])));
  8. if(empty($redirectto) or $redirectto == '') { $redirectto = site_url();}
  9.  
  10. if (!$user_ID) {
  11.         if(isset($_POST['task'])){
  12.                 if($_POST['task'] == 'login'){
  13.                         //We shall SQL escape all inputs
  14.                         $username = wp_strip_all_tags($wpdb->escape($_REQUEST['username']));
  15.                         $password = wp_strip_all_tags($wpdb->escape($_REQUEST['password']));
  16.                         $remember = wp_strip_all_tags($wpdb->escape($_REQUEST['rememberme']));
  17.                        
  18.                         if($remember) $remember = "true";
  19.                         else $remember = "false";
  20.                         $login_data = array();
  21.                         $login_data['user_login'] = $username;
  22.                         $login_data['user_password'] = $password;
  23.                         $login_data['remember'] = $remember;
  24.                        
  25.                         if( $login_data['user_login'] == "" || empty($login_data['user_login'])) {
  26.                                 $err = __('<strong>ERROR</strong>: Please enter a username.');
  27.                         } elseif( $login_data['user_password'] == "" || empty($login_data['user_password'])) {
  28.                                 $err = __('<strong>ERROR</strong>: The password field is empty.');
  29.                         } else {
  30.                         $user_verify = wp_signon( $login_data, false );
  31.                                 if ( is_wp_error($user_verify) ) {
  32.                                                 $err    = __("<strong>ERROR</strong>: Invalid username or incorrect password.");
  33.                                 } else {       
  34.                                                 wp_safe_redirect($redirectto);
  35.                                                 exit();
  36.                                 }
  37.                         }
  38.                 }elseif($_POST['task'] == 'register'){
  39.                
  40.                 $pwd1 = $wpdb->escape(trim($_POST['pwd1']));
  41.         $pwd2 = $wpdb->escape(trim($_POST['pwd2']));
  42.         $email = $wpdb->escape(trim($_POST['email']));
  43.         $username = $wpdb->escape(trim($_POST['reg_username']));
  44.                 $Phone = preg_replace('%[^0-9]%i', '', $_POST['phone']);
  45.  
  46.                         if( $username == "" || empty($username)) { $err = __('<strong>ERROR</strong>: Please enter a username.');
  47.                         } elseif( $email == "" || empty($email)) { $err = __('<strong>ERROR</strong>: Please type your e-mail address.');
  48.                         } elseif( $pwd1 == "" || empty($pwd1)) { $err = __('<strong>ERROR</strong>: The password field is empty.');
  49.                         } elseif( !is_email($email)) { $err = __('<strong>ERROR</strong>: please enter a valid email address.');
  50.                         } elseif( email_exists($email) ) { $err = __('<strong>ERROR</strong>: This email is already registered, please choose another one.');
  51.                         } elseif( !validate_username($username)) {
  52.                         $err = __( '<strong>ERROR</strong>: This username is invalid because it uses illegal characters. Please enter a valid username.' );
  53.                         } elseif( username_exists($username)) { $err = __('<strong>ERROR</strong>: This username is already registered. Please choose another one.');
  54.                         } elseif( $pwd1 <> $pwd2 ){ $err = __('The passwords do not match.');        
  55.                         } else {
  56.                                 $user_id = wp_insert_user( array (
  57.                                                                                 'user_pass' => apply_filters('pre_user_user_pass', $pwd1),
  58.                                                                                 'user_login' => apply_filters('pre_user_user_login', $username),
  59.                                                                                 'user_email' => apply_filters('pre_user_user_email', $email),
  60.                                                                                 ) );
  61.                                 if( is_wp_error($user_id) ) {
  62.                                         $err = __('<strong>ERROR</strong>: Couldn&#8217;t register you... please contact the <a href=\"mailto:%s\">webmaster</a> !', get_option('admin_email'));
  63.                                         $err = str_replace('webmaster', __('Site Admin'), $err);
  64.                                 } else {
  65.                                         update_user_meta($user_id, 'phone', wp_strip_all_tags($Phone));
  66.                                         do_action('user_register', $user_id);                                  
  67.                                                 // Welcome mail to new user
  68.                                                 $from           = get_option('admin_email');
  69.                                                 $blog_name      =       get_option('blogname');
  70.                                                 $headers = 'From: '.$from . "\r\n";
  71.                                                 $subject = sprintf(__('Welcome to %s', 'bizway'), $blog_name);
  72.                                                 $msg .= "شكرا لإشتراكك في ".$blog_name." إليك تفاصيل الدخول:\r\n\r\n";
  73.                                                 $msg .= sprintf(__('Username: %s'), $username) . "\r\n";
  74.                                                 $msg .= sprintf(__('E-mail: %s'), $email) . "\r\n";
  75.                                                 $msg .= sprintf(__('Password: %s'), '(كلمة المرور التي قمت بتسجيل بها)') . "\r\n\r\n";
  76.                                                 $msg .= "يمكنك تسجيل الدخول إلى النظام عبر هذا الرابط:\r\n";
  77.                                                 $msg .= home_url('login')."\r\n\r\n";
  78.                                                 $msg .= "شكراً لك..\r\n";
  79.                                                 $msg .= "فريق ".$blog_name.".\r\n\r\n";
  80.  
  81.                                                 wp_mail( $email, $subject, $msg, $headers );
  82.                                        
  83.                                         $success = __('Registration complete. Please check your e-mail.') . "<br /><br />";
  84.                                         $success .= sprintf( __('Your account is now activated. <a href="%1$s">Log in</a> or go back to the <a href="%2$s">homepage</a>.' ), home_url('login'), home_url() );
  85.                                 }
  86.                         }
  87.                 }
  88.         }
  89. get_header(); ?>
  90. <style>
  91. .login input[type="text"],.login input[type="password"], .register input[type="text"],.register input[type="password"] {
  92. background: #fff !important;
  93. border: 1px solid #ddd !important;
  94. color: #555 !important;
  95. clear: both !important;
  96. display: block !important;
  97. margin: 10px 0 0 !important;
  98. padding: 8px !important;
  99. width: 80%;
  100. }
  101. .login input[type="submit"],.register input[type="submit"] {
  102. width: 87px;
  103. border: 0;
  104. color: #FFF;
  105. -webkit-border-radius: 5px;
  106. -moz-border-radius: 5px;
  107. border-radius: 5px;
  108. }
  109. .login .btn, .register .btn{
  110. background: orange;
  111. height: 30px;
  112. text-indent: 0px;
  113. }
  114. </style>
  115.  
  116. <!--Start Page Heading -->
  117. <div class="page-heading-container">
  118.     <div class="container_24">
  119.         <div class="grid_24">
  120.             <div class="page-heading">
  121.                 <h1><?php the_title(); ?> </h1>
  122.             </div>
  123.         </div>
  124.         <div class="clear"></div>
  125.     </div>
  126. </div>
  127. <!--End Page Heading -->
  128. <!--Start Page Content -->
  129. <div class="page-content-container">
  130.     <div class="container_24">
  131.         <div class="grid_24">
  132.             <div class="page-content">
  133.                 <div class="grid_24 sub_alpha">
  134.                                 <?php if ( have_posts() ) : the_post(); ?>
  135.                                         <h3 class=""><?php //the_content(); ?></h3>    
  136.                 <?php endif; ?>
  137.                                 <?php if($err != ''){ ?>
  138.                                         <h4 style="color: red;"><?echo $err; ?></h4>
  139.                                 <?php } ?>
  140.                                 <?php if($success != ''){ ?>
  141.                                         <h4 style="color: green;"><?echo $success; ?></h4>
  142.                                 <?php } ?>
  143.                                         <div class="grid_11 login" style="border-left: 1px dotted #ccc;">
  144.                                                 <h3 class="">تسجيل الدخول</h3>
  145.                                                         <form id="wp_login_form" action="" method="post">
  146.                                                                 <p><label for="username"><?php _e('Username'); ?></label>
  147.                                                                 <input type="text" name="username" id="username" class="text" value="" /></p>
  148.                                                                 <p><label for="password"><?php _e('Password'); ?></label>
  149.                                                                 <input type="password" name="password" id="password" class="text" value="" /></p>
  150.                                                                 <p><label><input name="rememberme" type="checkbox" value="forever" checked /> <?php esc_attr_e('Remember Me'); ?></label></p>
  151.                                                                 <p style="text-align: center; width: 80%;"><input type="submit" id="submitbtn" name="submit1" value="<?php esc_attr_e('Log In'); ?>" class="btn" />
  152.                                                                 <input type="hidden" name="task" value="login" />
  153.                                                                 <br /><br />
  154.                                                         </form>
  155.                                                 <p style="float: left; margin: 0px 0px 20px 20px;">
  156.                                                 <a href="<?php echo esc_url( site_url('wp-login.php?action=lostpassword') ); ?>" title="<?php esc_attr_e( 'Password Lost and Found' ); ?>"><?php _e( 'Lost your password?' ); ?></a>
  157.                                                 </p>
  158.                                         </div>                                 
  159.                                         <div class="grid_11 register" style="margin-right: 1%;">
  160.                                                 <h3 class="">تسجيل حساب جديد</h3>
  161.                                                
  162.                                                         <form id="wp_register_form" action="" method="post">
  163.                                                                 <p><label for="reg_username"><?php _e('Username'); ?></label>
  164.                                                                 <input type="text" name="reg_username" id="reg_username" class="text" value="" /></p>
  165.                                                                 <p><label for="email"><?php _e('Email'); ?></label>
  166.                                                                 <input type="text" name="email" id="email" class="text" value="" /></p>
  167.                                                                 <p><label for="pwd1"><?php _e('Password'); ?></label>
  168.                                                                 <input type="password" name="pwd1" id="pwd1" class="text" value="" /></p>
  169.                                                                 <p><label for="pwd2"><?php echo str_replace('الجديدة', '', __('Confirm new password')); ?></label>
  170.                                                                 <input type="password" name="pwd2" id="pwd2" class="text" value="" /></p>
  171.                                                                 <p><label for="phone">رقم الهاتف <font style="size: 80%">(إختياري)</font></label>
  172.                                                                 <input type="text" name="phone" id="phone" class="text" value="" /></p>
  173.                                                                 <p style="text-align: center; width: 80%;"><input type="submit" id="submitbtn" name="submit2" value="<?php esc_attr_e('Register'); ?>" class="btn" />
  174.                                                                 <input type="hidden" name="task" value="register" />
  175.                                                                 <br /><br />
  176.                                                         </form>
  177.                                         </div>                                 
  178.                                                                                
  179.                                 </div>
  180.             </div>
  181.         </div>
  182.         <div class="clear"></div>
  183.     </div>
  184. </div>
  185. <?php get_footer();
  186. } else {
  187.         wp_safe_redirect($redirectto);
  188. }
  189. ?>