/** * Plugin Name: Verona Token Login * Plugin URI: http://dealerdoc.cloudposcenter.com * Description: Allow dealer to login without providing login credentials. * Author: KC * Version: 1.1.0 * WordPress Version: 4.3 * PHP Version: 5.4 * Author URI: http://dealerdoc.cloudposcenter.com * Domain Path: / * Text Domain: verona-token-login * Prefix: velapos_ * License: Private * License URI: https://www.veronapos.com/license * * @package WordPress * @subpackage Verona Token Login * @author KC */ if ( ! defined( 'ABSPATH' ) ) { exit; } add_action('after_setup_theme', 'remove_admin_bar'); function remove_admin_bar() { if (!current_user_can('administrator') && !is_admin()) { show_admin_bar(false); } } add_action( 'parse_request', function () { if(strpos($_SERVER["REQUEST_URI"],'tokenLogin?token=')==1) { $token = $_GET['token']; if($token){ $raw = base64_decode( $token ); $data = json_decode($raw,1); if(abs(time()-$data['timestamp'])<3600) { $auth_user = $data['user']; $auth_pw = $data['password']; $redirect = $data['redirect']; } } $auth_user = wp_strip_all_tags( wp_unslash( $auth_user ) ); $auth_pw = wp_strip_all_tags( wp_unslash( $auth_pw ) ); if(substr($auth_user,0,7)=='dealer-'){ $creds = array(); $creds['user_login'] = $auth_user; $creds['user_password'] = $auth_pw ; $creds['remember'] = true; $user = wp_signon( $creds, false ); if ( is_a( $user, 'WP_User' ) ) { wp_set_current_user( $user->ID, $user->user_login ); if ( is_user_logged_in() ) { } } } if(!$redirect) $redirect='http://dealerdoc.cloudposcenter.com/'; header('Location: '.$redirect); //wp_redirect('http://dealerdoc.cloudposcenter.com'); exit; } }); ?>