$("body").delegate(".create-btn", "click", function (event){
event.preventDefault();
var new_user_email = $(".create-new-user").val();
var new_user_name = $(".create-new-user-name").val();
console.log(new_user_email);
console.log(new_user_name);
$.ajax({
type: "POST",
url: wagnermeters_create_new_user.ajax_action,
data: {
"action": 'create_new_user_ajax',
"new_user_email": new_user_email,
"new_user_name" : new_user_name,
"security": wagnermeters_create_new_user.nonce
},
success: function (response){
var response = JSON.parse(response);
if(response.success == 1) {
alert("Congrats : User Created Successfully..!");
}
else if(response.success == 2) {
alert("Sorry : User already exists with this email or username..!");
}
else if(response.success == 0) {
alert("Sorry : Any of the field is empty..!");
}
}
})
});
add_action('wp_ajax_create_new_user_ajax', array($this, 'create_new_user_ajax'));
$this->include_scripts();
public function include_scripts() {
wp_enqueue_script('wmsac_main', WAGNERMETERS_PLUGIN_URL . '/js/wmsac-main.js', array('jquery'));
/*
* CREATE NEW USER AJAX PARAMETERS
*/
$wagnermeters_create_new_user = array(
'ajax_action' => admin_url('admin-ajax.php'),
'nonce' => wp_create_nonce("create-new-user")
);
wp_localize_script('wmsac_main', 'wagnermeters_create_new_user', $wagnermeters_create_new_user);
}
public function create_new_user_ajax() {
$this->response['success'] = 0;
check_ajax_referer('create-new-user', 'security');
$new_user_email = woocommerce_clean(urldecode(stripslashes($_POST['new_user_email'])));
$new_user_name = woocommerce_clean(urldecode(stripslashes($_POST['new_user_name'])));
if ($new_user_email == null || empty($new_user_email) || $new_user_name == null || empty($new_user_name)) {
die(json_encode($this->response));
} else {
$user_id = username_exists($new_user_name);
if (!$user_id && email_exists($new_user_email) == false) {
$random_password = wp_generate_password($length = 12, $include_standard_special_chars = false);
$user_id = wp_create_user($new_user_name, $random_password, $new_user_email);
$this->response['success'] = 1;
wp_mail($new_user_email, 'welcome to wagnermeters', 'Your email is : '
. $new_user_email . "<br> Your username : " . $new_user_name
. "<br> Password : " . $random_password . "<br>Thank You");
} else {
$random_password = __('User already exists. Password inherited.');
$this->response['success'] = 2;
}
}
echo json_encode($this->response);
die();
}