/**
  * @param $result
  * @return OrderSearchResult
  */
 public function fromApi($result)
 {
     $orderFactory = new OrderFactory();
     $orders = [];
     foreach ($result->result as $order) {
         $orders[] = $orderFactory->fromApi($order);
     }
     return new OrderSearchResult($orders, $result->count, $result->search, $result->limit, $result->offset);
 }
 /**
  * @param      $id
  * @param null $oneTimeToken
  * @param bool $removeOneTimeToken
  * @return Order
  */
 public function find($id = null, $oneTimeToken = null, $removeOneTimeToken = true)
 {
     $params = ['id' => $id, 'token' => CustomerHelper::checkLoggedinCustomer(), 'remove_one_time_token' => $removeOneTimeToken];
     try {
         $orderFactory = new OrderFactory();
         $apiResult = VendirunApi::makeRequest('order/find', $params)->getData();
         $order = $orderFactory->fromApi($apiResult);
         $order->setOneTimeToken($oneTimeToken);
         return $order;
     } catch (FailResponseException $e) {
         return null;
     }
 }