Parsed: 108601

  protected function get_request_args( $search = '', $timezone = '' ) {
    $args = array(
      'number' => 5, // Get more than three in case some get trimmed out.
      'ip'     => self::get_unsafe_client_ip(),
    );

    /*
		 * Include the minimal set of necessary arguments, in order to increase the
		 * chances of a cache-hit on the API side.
		 */
    if ( empty( $search ) && isset( $this->user_location['latitude'], $this->user_location['longitude'] ) ) {
      $args['latitude']  = $this->user_location['latitude'];
      $args['longitude'] = $this->user_location['longitude'];
    } else {
      $args['locale'] = get_user_locale( $this->user_id );

      if ( $timezone ) {
        $args['timezone'] = $timezone;
      }

      if ( $search ) {
        $args['location'] = $search;
      }
    }

    // Wrap the args in an array compatible with the second parameter of `wp_remote_get()`.
    return array(
      'body' => $args,
    );
  }