From 701936e5fd3a0087fc2d4985551f66fa6b7907ae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=81lvaro=20GR?=
 <4166199+alvgalrus@users.noreply.github.com>
Date: Wed, 16 Oct 2019 19:04:01 +0200
Subject: [PATCH] Fix ListRecords throwing QueryException when backslashes were
 used

This commit fixes Doctrine\ORM\Query\QueryException:
[Syntax Error] line 0, col 35: Error: Expected Doctrine\ORM\Query\Lexer::T_IDENTIFIER, got 'Omeka\Entity\Item'
---
 src/OaiPmh/ResponseGenerator.php | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/src/OaiPmh/ResponseGenerator.php b/src/OaiPmh/ResponseGenerator.php
index e105c1f..7886e4a 100644
--- a/src/OaiPmh/ResponseGenerator.php
+++ b/src/OaiPmh/ResponseGenerator.php
@@ -622,8 +622,8 @@ class ResponseGenerator extends AbstractXmlGenerator
         $entityManager = $this->serviceLocator->get('Omeka\EntityManager');
 
         $itemRepository = $entityManager->getRepository('Omeka\Entity\Item');
-        $qb = $itemRepository->createQueryBuilder('Omeka\Entity\Item');
-        $qb->select('Omeka\Entity\Item');
+        $qb = $itemRepository->createQueryBuilder('Item');
+        $qb->select('Item');
 
         $query = new ArrayObject;
 
@@ -667,12 +667,12 @@ class ResponseGenerator extends AbstractXmlGenerator
         if ($from) {
             $qb->andWhere($qb->expr()->orX(
                 $qb->expr()->andX(
-                    $qb->expr()->isNotNull('Omeka\Entity\Item.modified'),
-                    $qb->expr()->gte('Omeka\Entity\Item.modified', ':from_1')
+                    $qb->expr()->isNotNull('Item.modified'),
+                    $qb->expr()->gte('Item.modified', ':from_1')
                 ),
                 $qb->expr()->andX(
-                    $qb->expr()->isNull('Omeka\Entity\Item.modified'),
-                    $qb->expr()->gte('Omeka\Entity\Item.created', ':from_2')
+                    $qb->expr()->isNull('Item.modified'),
+                    $qb->expr()->gte('Item.created', ':from_2')
                 )
             ));
             $qb->setParameter('from_1', $from);
@@ -682,18 +682,18 @@ class ResponseGenerator extends AbstractXmlGenerator
             $qb->andWhere($qb->expr()->orX(
                 $qb->expr()->andX(
                     $qb->expr()->isNotNull('Omeka\Entity\Item.modified'),
-                    $qb->expr()->lte('Omeka\Entity\Item.modified', ':until_1')
+                    $qb->expr()->lte('Item.modified', ':until_1')
                 ),
                 $qb->expr()->andX(
                     $qb->expr()->isNull('Omeka\Entity\Item.modified'),
-                    $qb->expr()->lte('Omeka\Entity\Item.created', ':until_2')
+                    $qb->expr()->lte('Item.created', ':until_2')
                 )
             ));
             $qb->setParameter('until_1', $until);
             $qb->setParameter('until_2', $until);
         }
 
-        $qb->groupBy('Omeka\Entity\Item.id');
+        $qb->groupBy('Item.id');
 
         // This limit call will form the basis of the flow control
         $qb->setMaxResults($this->_listLimit);
-- 
GitLab