/**
  * Get fields. This is an API endpoint.
  *
  * @param int $id
  * @since 6.0
  * @return WP_Error|WP_JSON_Response
  */
 public function get_fields($id)
 {
     $id = (int) $id;
     if (empty($id)) {
         return new WP_Error('json_invalid_id_ccf_form', esc_html__('Invalid form ID.', 'custom-contact-forms'), array('status' => 404));
     }
     $post_type = get_post_type_object('ccf_form');
     if (!current_user_can($post_type->cap->edit_posts, $id)) {
         return new WP_Error('json_cannot_view_ccf_forms', esc_html__('Sorry, you cannot view forms.', 'custom-contact-forms'), array('status' => 403));
     }
     $fields = $this->_get_fields($id);
     $response = new WP_JSON_Response();
     $response->set_status(200);
     $response->set_data($fields);
     return $response;
 }
 /**
  * Create a new user.
  *
  * @param $data
  * @return mixed
  */
 public function create_user($data)
 {
     if (!current_user_can('create_users')) {
         return new WP_Error('json_cannot_create', __('Sorry, you are not allowed to create users.'), array('status' => 403));
     }
     if (!empty($data['ID'])) {
         return new WP_Error('json_user_exists', __('Cannot create existing user.'), array('status' => 400));
     }
     $user_id = $this->insert_user($data);
     if (is_wp_error($user_id)) {
         return $user_id;
     }
     $response = $this->get_user($user_id);
     if (!$response instanceof WP_JSON_ResponseInterface) {
         $response = new WP_JSON_Response($response);
     }
     $response->set_status(201);
     $response->header('Location', json_url('/users/' . $user_id));
     return $response;
 }
Пример #3
0
 public function new_user()
 {
     $data = null;
     if (isset($_POST['data'])) {
         $data = json_decode(stripslashes($_POST['data']), ARRAY_N);
     }
     if (empty($data)) {
         return new WP_Error('json_money_invalid_data', __('Invalid data parameters.'), array('status' => 404));
     }
     if (!DLN_Helper_Decrypt::get_decrypt()) {
         return new WP_Error('json_user_invalid_code', __('Invalid data verify code.'), array('status' => 404));
     }
     //if ( ! current_user_can( 'create_users' ) ) {
     //	return new WP_Error( 'json_cannot_create', __( 'Sorry, you are not allowed to create users.' ), array( 'status' => 403 ) );
     //}
     if (!empty($data['ID'])) {
         return new WP_Error('json_user_exists', __('Cannot create existing user.'), array('status' => 400));
     }
     $user_id = $this->insert_user($data);
     if (is_wp_error($user_id)) {
         return $user_id;
     }
     $response = $this->get_user($user_id);
     if (!$response instanceof WP_JSON_ResponseInterface) {
         $response = new WP_JSON_Response($response);
     }
     $response->set_status(201);
     $response->header('Location', json_url('/users/' . $user_id));
     return $response;
 }