function kingkongboard_entry_password_check() { global $current_user; $result = array(); $entry_id = sanitize_text_field($_POST['entry_id']); $entry_pwd = sanitize_text_field($_POST['entry_pwd']); $entry_pwd = md5($entry_pwd); $board_id = get_kingkong_board_meta_value($entry_id, 'board_id'); $added_user = get_kingkong_board_meta_value($entry_id, 'login_id'); $entry_secret = get_post_meta($entry_id, 'kingkongboard_entry_password', true); $entry_password = get_post_meta($entry_id, 'kingkongboard_entry_password', true); $board_managers = get_post_meta($board_id, 'board_managers', true); if ($board_managers) { $board_managers = unserialize($board_managers); } else { $board_managers = array(); } if (is_user_logged_in()) { $user_login = $current_user->user_login; } else { $user_login = null; } if (in_array($user_login, $board_managers) or current_user_can('manage_options') or $added_user == $current_user->ID and $added_user != 0) { $result['status'] = "success"; } else { if ($entry_pwd == $entry_secret) { $result['status'] = "success"; } else { $result['status'] = "failed"; $error = new kkbError(); if ($added_user != $current_user->ID && $added_user != 0) { $result['message'] = $error->getMessage(07); } else { $result['message'] = $error->getMessage(00); } } } header("Content-Type: application/json"); echo json_encode($result); exit; }