diff --git a/local/alpha/config/vufind/DAIA.ini b/local/alpha/config/vufind/DAIA.ini
index f2b0c6f49ed83319e3d8d6da3e2606d562f06f77..5428ab9655e03e0235236617fc8fbc387e013950 100644
--- a/local/alpha/config/vufind/DAIA.ini
+++ b/local/alpha/config/vufind/DAIA.ini
@@ -20,10 +20,3 @@ relative_path = ../../../config/vufind/DAIA.ini
 ;
 ;##################### DO NOT DELETE THIS HEADER ####################
 ;####################################################################
-
-;[DAIA]
-; refer to http://data.ub.uni-leipzig.de/ldinfo for setting up specific DAIA-urls
-;baseUrl        = http://data.ub.uni-leipzig.de/item/DE-15/finc/
-
-; DAIATheca
-; http://139.18.19.238:8080/DaiaThecaMssql/
\ No newline at end of file
diff --git a/local/config/vufind/DAIA.ini b/local/config/vufind/DAIA.ini
index aad984c296a382b231ad5b5b73fcc300acc9bd44..b2f2ab16c944d82164d62a3a8ebd237e63d7691c 100644
--- a/local/config/vufind/DAIA.ini
+++ b/local/config/vufind/DAIA.ini
@@ -2,16 +2,7 @@
 ; http://gbv.github.io/daiaspec/daia.html#query-api
 ;
 ; The settings in the [DAIA] section will be used for all DAIA requests.
-; The name of this section got refactored with VuFind 2.4, although the old
-; configuration using the [Global] section still works, it should be replaced
-; with the new [DAIA] section.
-;   Note: Settings for daiaResponseFormat and daiaIdPrefix are not supported if
-;         a pre VuFind 2.4 configuration with the [Global] section is used.
-;         i.e.:
-;              [Global]
-;              baseUrl = [your DAIA server base url]
-;              daiaIdPrefix = [this setting will have no effect]
-;              daiaResponseFormat = [this setting will have no effect]
+; The name of this section got refactored with VuFind 2.4.
 ;
 ; A default DAIA call looks like this:
 ; https://daia.myuniversity.edu/?id=ppn:12345678&format=json
@@ -23,6 +14,11 @@
 ; daiaResponseFormat = json
 ;
 
+[DAIA]
+; The base URL for the DAIA webservice.
+;baseUrl            = http://139.18.19.238:9080/daialibero/daia/
+;baseUrl            = http://139.18.19.238:9080/daiatheca/daia/
+
 ; The prefix prepended to the VuFind record Id resulting in the document URI
 ; used for the DAIA request (default = ppn:) (the prefix usually defines the
 ; field which the DAIA server uses for the loookup - e.g. ppn: or isbn:).
@@ -31,10 +27,21 @@
 ; Set the requested DAIA response format: xml (default), json
 ;daiaResponseFormat = xml
 
-[Global]
-; The base URL for the DAIA webservice.
-; refer to http://data.ub.uni-leipzig.de/ldinfo for setting up specific DAIA-urls
-baseUrl        = http://data.ub.uni-leipzig.de/item/ISIL/identifier/
+; Set multiQuery to true if your DAIA webservice supports queries with multiple
+; ids (cf. http://gbv.github.io/daiaspec/daia.html#query-api).
+; Default is false.
+;multiQuery = false
+
+; If daiaContentTypes are set, the DAIA driver checks the Content-Type
+; line in the DAIA response HTTP header for the configured values. If
+; daiaContentTypes is not set, Content-Type HTTP header is NOT checked.
+; 
+; expected Content-Types for DAIA XML format:
+; (seperate multiple values by commata, for example:
+; daiaContentTypes['xml'] = "application/xml, text/xml"
+daiaContentTypes['xml'] = "application/xml"
 
-; DAIATheca
-; http://139.18.19.238:8080/DaiaThecaMssql/
\ No newline at end of file
+; expected Content-Types for DAIA JSON format:
+; (seperate multiple values by commata, for example:
+; daiaContentTypes['xml'] = "application/json, application/javascript"
+daiaContentTypes['json'] = "application/json"
diff --git a/local/dev/config/vufind/DAIA.ini.sample b/local/dev/config/vufind/DAIA.ini.sample
index c8ae05ca19f1ef2afc15f7f03db88fc8c6c39e6d..01b53f0a6269adda904c4322500ffefd3cdf0895 100644
--- a/local/dev/config/vufind/DAIA.ini.sample
+++ b/local/dev/config/vufind/DAIA.ini.sample
@@ -20,10 +20,3 @@ relative_path = ../../../config/vufind/DAIA.ini
 ;
 ;##################### DO NOT DELETE THIS HEADER ####################
 ;####################################################################
-
-;[DAIA]
-; refer to http://data.ub.uni-leipzig.de/ldinfo for setting up specific DAIA-urls
-;baseUrl        = http://data.ub.uni-leipzig.de/item/DE-15/finc/
-
-; DAIATheca
-; http://139.18.19.238:8080/DaiaThecaMssql/
\ No newline at end of file
diff --git a/module/finc/src/finc/ILS/Driver/DAIA.php b/module/finc/src/finc/ILS/Driver/DAIA.php
index e1d7cc4ef8795270d12b33476319aefd322d6c27..2147ea2d42df9590ad2090236a199adcda38602a 100644
--- a/module/finc/src/finc/ILS/Driver/DAIA.php
+++ b/module/finc/src/finc/ILS/Driver/DAIA.php
@@ -80,14 +80,6 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
      */
     protected $multiQuery = false;
 
-    /**
-     * DAIA legacySupport flag
-     *
-     * @var        boolean
-     * @deprecated Will be removed in the next driver version
-     */
-    protected $legacySupport = false;
-
     /**
      * acceptable ContentTypes delivered by DAIA server
      * in HTTP header
@@ -118,13 +110,6 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
      */
     public function init()
     {
-        // DAIA.ini sections changed, therefore move old [Global] section to
-        // new [DAIA] section as fallback
-        if (isset($this->config['Global']) && !isset($this->config['DAIA'])) {
-            $this->config['DAIA'] = $this->config['Global'];
-            $this->legacySupport = true;
-        }
-
         if (isset($this->config['DAIA']['baseUrl'])) {
             $this->baseUrl = $this->config['DAIA']['baseUrl'];
         } else {
@@ -205,25 +190,20 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
             return [];
         }
 
-        if ($this->legacySupport) {
-            // we are in legacySupport mode, so use the deprecated
-            // getXMLStatus() method
-            return $this->getXMLStatus($id);
-        } else {
-            // let's retrieve the DAIA document by URI
-            try {
-                $rawResult = $this->doHTTPRequest($this->generateURI($id));
-                // extract the DAIA document for the current id from the
-                // HTTPRequest's result
-                $doc = $this->extractDaiaDoc($id, $rawResult);
-                if (!is_null($doc)) {
-                    // parse the extracted DAIA document and return the status info
-                    return $this->parseDaiaDoc($id, $doc);
-                }
-            } catch (ILSException $e) {
-                $this->debug($e->getMessage());
+        // let's retrieve the DAIA document by URI
+        try {
+            $rawResult = $this->doHTTPRequest($this->generateURI($id));
+            // extract the DAIA document for the current id from the
+            // HTTPRequest's result
+            $doc = $this->extractDaiaDoc($id, $rawResult);
+            if (!is_null($doc)) {
+                // parse the extracted DAIA document and return the status info
+                return $this->parseDaiaDoc($id, $doc);
             }
+        } catch (ILSException $e) {
+            $this->debug($e->getMessage());
         }
+
         return [];
     }
 
@@ -234,14 +214,12 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
      * collection of records.
      * As the DAIA Query API supports querying multiple ids simultaneously
      * (all ids divided by "|") getStatuses(ids) would call getStatus(id) only
-     * once, id containing the list of ids to be retrieved. Apart from the
-     * legacySupport this would cause some trouble as the list of ids does not
-     * necessarily correspond to the VuFind Record-id. Therefore getStatuses(ids)
-     * has its own logic for multiQuery-support and performs the HTTPRequest
-     * itself, retrieving one DAIA response for all ids and uses helper
-     * functions to split this one response into documents corresponding to the
-     * queried ids.
-     * If multiQueries are not supported, getStatus(id) is used.
+     * once, id containing the list of ids to be retrieved. This would cause some
+     * trouble as the list of ids does not necessarily correspond to the VuFind
+     * Record-id. Therefore getStatuses(ids) has its own logic for multiQuery-support
+     * and performs the HTTPRequest itself, retrieving one DAIA response for all ids
+     * and uses helper functions to split this one response into documents
+     * corresponding to the queried ids.
      *
      * @param array $ids The array of record ids to retrieve the status for
      *
@@ -251,49 +229,41 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
     {
         $status = [];
 
-        if ($this->legacySupport) {
-            // we are in legacySupport mode, so use the deprecated
-            // getXMLStatus() method for each id
-            foreach ($ids as $id) {
-                $status[] = $this->getXMLShortStatus($id);
-            }
-        } else {
-            try {
-                if ($this->multiQuery) {
-                    // perform one DAIA query with multiple URIs
-                    $rawResult = $this
-                        ->doHTTPRequest($this->generateMultiURIs($ids));
-                    // the id used in VuFind can differ from the document-URI
-                    // (depending on how the URI is generated)
-                    foreach ($ids as $id) {
-                        // it is assumed that each DAIA document has a unique URI,
-                        // so get the document with the corresponding id
-                        $doc = $this->extractDaiaDoc($id, $rawResult);
-                        if (!is_null($doc)) {
-                            // a document with the corresponding id exists, which
-                            // means we got status information for that record
-                            $status[] = $this->parseDaiaDoc($id, $doc);
-                        }
-                        unset($doc);
+        try {
+            if ($this->multiQuery) {
+                // perform one DAIA query with multiple URIs
+                $rawResult = $this
+                    ->doHTTPRequest($this->generateMultiURIs($ids));
+                // the id used in VuFind can differ from the document-URI
+                // (depending on how the URI is generated)
+                foreach ($ids as $id) {
+                    // it is assumed that each DAIA document has a unique URI,
+                    // so get the document with the corresponding id
+                    $doc = $this->extractDaiaDoc($id, $rawResult);
+                    if (!is_null($doc)) {
+                        // a document with the corresponding id exists, which
+                        // means we got status information for that record
+                        $status[] = $this->parseDaiaDoc($id, $doc);
                     }
-                } else {
-                    // multiQuery is not supported, so retrieve DAIA documents one by
-                    // one
-                    foreach ($ids as $id) {
-                        $rawResult = $this->doHTTPRequest($this->generateURI($id));
-                        // extract the DAIA document for the current id from the
-                        // HTTPRequest's result
-                        $doc = $this->extractDaiaDoc($id, $rawResult);
-                        if (!is_null($doc)) {
-                            // parse the extracted DAIA document and save the status
-                            // info
-                            $status[] = $this->parseDaiaDoc($id, $doc);
-                        }
+                    unset($doc);
+                }
+            } else {
+                // multiQuery is not supported, so retrieve DAIA documents one by
+                // one
+                foreach ($ids as $id) {
+                    $rawResult = $this->doHTTPRequest($this->generateURI($id));
+                    // extract the DAIA document for the current id from the
+                    // HTTPRequest's result
+                    $doc = $this->extractDaiaDoc($id, $rawResult);
+                    if (!is_null($doc)) {
+                        // parse the extracted DAIA document and save the status
+                        // info
+                        $status[] = $this->parseDaiaDoc($id, $doc);
                     }
                 }
-            } catch (ILSException $e) {
-                $this->debug($e->getMessage());
             }
+        } catch (ILSException $e) {
+            $this->debug($e->getMessage());
         }
         return $status;
     }
@@ -358,19 +328,10 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
         ];
 
         try {
-            if ($this->legacySupport) {
-                // HttpRequest for DAIA legacy support as all
-                // the parameters are contained in the baseUrl
-                $result = $this->httpService->get(
-                    $this->baseUrl . $id,
-                    [], null, $http_headers
-                );
-            } else {
-                $result = $this->httpService->get(
-                    $this->baseUrl,
-                    $params, null, $http_headers
-                );
-            }
+            $result = $this->httpService->get(
+                $this->baseUrl,
+                $params, null, $http_headers
+            );
         } catch (\Exception $e) {
             throw new ILSException(
                 'HTTP request exited with Exception ' . $e->getMessage() .
@@ -425,11 +386,7 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
      */
     protected function generateURI($id)
     {
-        if ($this->legacySupport) {
-            return $id;
-        } else {
-            return $this->daiaIdPrefix . $id;
-        }
+        return $this->daiaIdPrefix . $id;
     }
 
     /**
@@ -880,441 +837,4 @@ class DAIA extends \VuFind\ILS\Driver\AbstractBase implements
             }
         }
     }
-
-    /**
-     * Flatten a DAIA response to an array of holding information.
-     *
-     * @param string $id Document to look up.
-     *
-     * @return array
-     *
-     * @deprecated Only kept for legacySupport
-     */
-    protected function getXMLStatus($id)
-    {
-        $daia = new DOMDocument();
-        $response = $this->doHTTPRequest($id);
-        if ($response) {
-            $daia->loadXML($response);
-        }
-        // get Availability information from DAIA
-        $documentlist = $daia->getElementsByTagName('document');
-
-        // handle empty DAIA response
-        if ($documentlist->length == 0
-            && $daia->getElementsByTagName("message") != null
-        ) {
-            // analyse the message for the error handling and debugging
-        }
-
-        $status = [];
-        for ($b = 0; $documentlist->item($b) !== null; $b++) {
-            $itemlist = $documentlist->item($b)->getElementsByTagName('item');
-            $ilslink = '';
-            if ($documentlist->item($b)->attributes->getNamedItem('href') !== null) {
-                $ilslink = $documentlist->item($b)->attributes
-                    ->getNamedItem('href')->nodeValue;
-            }
-            $emptyResult = [
-                'callnumber' => '-',
-                'availability' => '0',
-                'number' => 1,
-                'reserve' => 'No',
-                'duedate' => '',
-                'queue'   => '',
-                'delay'   => '',
-                'barcode' => 'No samples',
-                'status' => '',
-                'id' => $id,
-                'location' => '',
-                'ilslink' => $ilslink,
-                'label' => 'No samples'
-            ];
-            for ($c = 0; $itemlist->item($c) !== null; $c++) {
-                $result = [
-                    'callnumber' => '',
-                    'availability' => '0',
-                    'number' => ($c+1),
-                    'reserve' => 'No',
-                    'duedate' => '',
-                    'queue'   => '',
-                    'delay'   => '',
-                    'barcode' => 1,
-                    'status' => '',
-                    'id' => $id,
-                    'item_id' => '',
-                    'recallhref' => '',
-                    'location' => '',
-                    'location.id' => '',
-                    'location.href' => '',
-                    'label' => '',
-                    'notes' => [],
-                ];
-                if ($itemlist->item($c)->attributes->getNamedItem('id') !== null) {
-                    $result['item_id'] = $itemlist->item($c)->attributes
-                        ->getNamedItem('id')->nodeValue;
-                }
-                if ($itemlist->item($c)->attributes->getNamedItem('href') !== null) {
-                    $result['recallhref'] = $itemlist->item($c)->attributes
-                        ->getNamedItem('href')->nodeValue;
-                }
-                $departmentElements = $itemlist->item($c)
-                    ->getElementsByTagName('department');
-                if ($departmentElements->length > 0) {
-                    if ($departmentElements->item(0)->nodeValue) {
-                        $result['location']
-                            = $departmentElements->item(0)->nodeValue;
-                        $result['location.id'] = $departmentElements
-                            ->item(0)->attributes->getNamedItem('id')->nodeValue;
-                        $result['location.href'] = $departmentElements
-                            ->item(0)->attributes->getNamedItem('href')->nodeValue;
-                    }
-                }
-                $storageElements
-                    = $itemlist->item($c)->getElementsByTagName('storage');
-                if ($storageElements->length > 0) {
-                    if ($storageElements->item(0)->nodeValue) {
-                        $result['location'] = $storageElements->item(0)->nodeValue;
-                        //$result['location.id'] = $storageElements->item(0)
-                        //  ->attributes->getNamedItem('id')->nodeValue;
-                        $href = $storageElements->item(0)->attributes
-                            ->getNamedItem('href');
-                        if ($href !== null) {
-                            //href attribute is recommended but not mandatory
-                            $result['location.href'] = $storageElements->item(0)
-                                ->attributes->getNamedItem('href')->nodeValue;
-                        }
-                        //$result['barcode'] = $result['location.id'];
-                    }
-                }
-                $barcodeElements
-                    = $itemlist->item($c)->getElementsByTagName('identifier');
-                if ($barcodeElements->length > 0) {
-                    if ($barcodeElements->item(0)->nodeValue) {
-                        $result['barcode'] = $barcodeElements->item(0)->nodeValue;
-                    }
-                }
-                $labelElements = $itemlist->item($c)->getElementsByTagName('label');
-                if ($labelElements->length > 0) {
-                    if ($labelElements->item(0)->nodeValue) {
-                        $result['label'] = $labelElements->item(0)->nodeValue;
-                        $result['callnumber']
-                            = urldecode($labelElements->item(0)->nodeValue);
-                    }
-                }
-                $messageElements
-                    = $itemlist->item($c)->getElementsByTagName('message');
-                if ($messageElements->length > 0) {
-                    for ($m = 0; $messageElements->item($m) !== null; $m++) {
-                        $errno = $messageElements->item($m)->attributes
-                            ->getNamedItem('errno')->nodeValue;
-                        if ($errno === '404') {
-                            $result['status'] = 'missing';
-                        } else if ($this->logger) {
-                            $lang = $messageElements->item($m)->attributes
-                                ->getNamedItem('lang')->nodeValue;
-                            $logString = "[DAIA] message for {$lang}: "
-                                . $messageElements->item($m)->nodeValue;
-                            $this->debug($logString);
-                        }
-                    }
-                }
-
-                //$loanAvail = 0;
-                //$loanExp = 0;
-                //$presAvail = 0;
-                //$presExp = 0;
-
-                $unavailableElements = $itemlist->item($c)
-                    ->getElementsByTagName('unavailable');
-                if ($unavailableElements->item(0) !== null) {
-                    for ($n = 0; $unavailableElements->item($n) !== null; $n++) {
-                        $service = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('service');
-                        $expectedNode = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('expected');
-                        $queueNode = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('queue');
-                        if ($service !== null) {
-                            $service = $service->nodeValue;
-                            if ($service === 'presentation') {
-                                $result['presentation.availability'] = '0';
-                                $result['presentation_availability'] = '0';
-                                if ($expectedNode !== null) {
-                                    $result['presentation.duedate']
-                                        = $expectedNode->nodeValue;
-                                }
-                                if ($queueNode !== null) {
-                                    $result['presentation.queue']
-                                        = $queueNode->nodeValue;
-                                }
-                                $result['availability'] = '0';
-                            } elseif ($service === 'loan') {
-                                $result['loan.availability'] = '0';
-                                $result['loan_availability'] = '0';
-                                if ($expectedNode !== null) {
-                                    $result['loan.duedate']
-                                        = $expectedNode->nodeValue;
-                                }
-                                if ($queueNode !== null) {
-                                    $result['loan.queue'] = $queueNode->nodeValue;
-                                }
-                                $result['availability'] = '0';
-                            } elseif ($service === 'interloan') {
-                                $result['interloan.availability'] = '0';
-                                if ($expectedNode !== null) {
-                                    $result['interloan.duedate']
-                                        = $expectedNode->nodeValue;
-                                }
-                                if ($queueNode !== null) {
-                                    $result['interloan.queue']
-                                        = $queueNode->nodeValue;
-                                }
-                                $result['availability'] = '0';
-                            } elseif ($service === 'openaccess') {
-                                $result['openaccess.availability'] = '0';
-                                if ($expectedNode !== null) {
-                                    $result['openaccess.duedate']
-                                        = $expectedNode->nodeValue;
-                                }
-                                if ($queueNode !== null) {
-                                    $result['openaccess.queue']
-                                        = $queueNode->nodeValue;
-                                }
-                                $result['availability'] = '0';
-                            }
-                        }
-                        // TODO: message/limitation
-                        if ($expectedNode !== null) {
-                            $result['duedate'] = $expectedNode->nodeValue;
-                        }
-                        if ($queueNode !== null) {
-                            $result['queue'] = $queueNode->nodeValue;
-                        }
-                    }
-                }
-
-                $availableElements = $itemlist->item($c)
-                    ->getElementsByTagName('available');
-                if ($availableElements->item(0) !== null) {
-                    for ($n = 0; $availableElements->item($n) !== null; $n++) {
-                        $service = $availableElements->item($n)->attributes
-                            ->getNamedItem('service');
-                        $delayNode = $availableElements->item($n)->attributes
-                            ->getNamedItem('delay');
-                        if ($service !== null) {
-                            $service = $service->nodeValue;
-                            if ($service === 'presentation') {
-                                $result['presentation.availability'] = '1';
-                                $result['presentation_availability'] = '1';
-                                if ($delayNode !== null) {
-                                    $result['presentation.delay']
-                                        = $delayNode->nodeValue;
-                                }
-                                $result['availability'] = '1';
-                            } elseif ($service === 'loan') {
-                                $result['loan.availability'] = '1';
-                                $result['loan_availability'] = '1';
-                                if ($delayNode !== null) {
-                                    $result['loan.delay'] = $delayNode->nodeValue;
-                                }
-                                $result['availability'] = '1';
-                            } elseif ($service === 'interloan') {
-                                $result['interloan.availability'] = '1';
-                                if ($delayNode !== null) {
-                                    $result['interloan.delay']
-                                        = $delayNode->nodeValue;
-                                }
-                                $result['availability'] = '1';
-                            } elseif ($service === 'openaccess') {
-                                $result['openaccess.availability'] = '1';
-                                if ($delayNode !== null) {
-                                    $result['openaccess.delay']
-                                        = $delayNode->nodeValue;
-                                }
-                                $result['availability'] = '1';
-                            }
-                        }
-                        // TODO: message/limitation
-                        if ($delayNode !== null) {
-                            $result['delay'] = $delayNode->nodeValue;
-                        }
-                    }
-                }
-                // document has no availability elements, so set availability
-                // and barcode to -1
-                if ($availableElements->item(0) === null
-                    && $unavailableElements->item(0) === null
-                ) {
-                    $result['availability'] = '-1';
-                    $result['barcode'] = '-1';
-                }
-                $result['ilslink'] = $ilslink;
-                $status[] = $result;
-                /* $status = "available";
-                if (loanAvail) return 0;
-                if (presAvail) {
-                    if (loanExp) return 1;
-                    return 2;
-                }
-                if (loanExp) return 3;
-                if (presExp) return 4;
-                return 5;
-                */
-            }
-            if (count($status) === 0) {
-                $status[] = $emptyResult;
-            }
-        }
-        return $status;
-    }
-
-    /**
-     * Return an abbreviated set of status information.
-     *
-     * @param string $id The record id to retrieve the status for
-     *
-     * @return mixed     On success, an associative array with the following keys:
-     * id, availability (boolean), status, location, reserve, callnumber, duedate,
-     * number
-     *
-     * @deprecated Only kept for legacySupport
-     */
-    public function getXMLShortStatus($id)
-    {
-        $daia = new DOMDocument();
-        $response = $this->doHTTPRequest($id);
-        if ($response) {
-            $daia->loadXML($response);
-        }
-        // get Availability information from DAIA
-        $itemlist = $daia->getElementsByTagName('item');
-        $label = "Unknown";
-        $storage = "Unknown";
-        $presenceOnly = '1';
-        $holding = [];
-        for ($c = 0; $itemlist->item($c) !== null; $c++) {
-            $earliest_href = '';
-            $storageElements = $itemlist->item($c)->getElementsByTagName('storage');
-            if ($storageElements->item(0) && $storageElements->item(0)->nodeValue) {
-                if ($storageElements->item(0)->nodeValue === 'Internet') {
-                    $href = $storageElements->item(0)->attributes
-                        ->getNamedItem('href')->nodeValue;
-                    $storage = '<a href="' . $href . '">' . $href . '</a>';
-                } else {
-                    $storage = $storageElements->item(0)->nodeValue;
-                }
-            }
-            $labelElements = $itemlist->item($c)->getElementsByTagName('label');
-            if ($labelElements->item(0)->nodeValue) {
-                $label = $labelElements->item(0)->nodeValue;
-            }
-            $availableElements = $itemlist->item($c)
-                ->getElementsByTagName('available');
-            if ($availableElements->item(0) !== null) {
-                $availability = 1;
-                $status = 'Available';
-                $href = $availableElements->item(0)->attributes
-                    ->getNamedItem('href');
-                if ($href !== null) {
-                    $earliest_href = $href->nodeValue;
-                }
-                for ($n = 0; $availableElements->item($n) !== null; $n++) {
-                    $svc = $availableElements->item($n)->getAttribute('service');
-                    if ($svc === 'loan') {
-                        $presenceOnly = '0';
-                    }
-                    // $status .= ' ' . $svc;
-                }
-            } else {
-                $leanable = 1;
-                $unavailableElements = $itemlist->item($c)
-                    ->getElementsByTagName('unavailable');
-                if ($unavailableElements->item(0) !== null) {
-                    $earliest = [];
-                    $queue = [];
-                    $hrefs = [];
-                    for ($n = 0; $unavailableElements->item($n) !== null; $n++) {
-                        $unavailHref = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('href');
-                        if ($unavailHref !== null) {
-                            $hrefs['item' . $n] = $unavailHref->nodeValue;
-                        }
-                        $expectedNode = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('expected');
-                        if ($expectedNode !== null) {
-                            //$duedate = $expectedNode->nodeValue;
-                            //$duedate_arr = explode('-', $duedate);
-                            //$duedate_timestamp = mktime(
-                            //    '0', '0', '0', $duedate_arr[1], $duedate_arr[2],
-                            //    $duedate_arr[0]
-                            //);
-                            //array_push($earliest, array(
-                            //    'expected' => $expectedNode->nodeValue,
-                            //    'recall' => $unavailHref->nodeValue);
-                            //array_push($earliest, $expectedNode->nodeValue);
-                            $earliest['item' . $n] = $expectedNode->nodeValue;
-                        } else {
-                            array_push($earliest, "0");
-                        }
-                        $queueNode = $unavailableElements->item($n)->attributes
-                            ->getNamedItem('queue');
-                        if ($queueNode !== null) {
-                            $queue['item' . $n] = $queueNode->nodeValue;
-                        } else {
-                            array_push($queue, "0");
-                        }
-                    }
-                }
-                if (count($earliest) > 0) {
-                    arsort($earliest);
-                    $earliest_counter = 0;
-                    foreach ($earliest as $earliest_key => $earliest_value) {
-                        if ($earliest_counter === 0) {
-                            $earliest_duedate = $earliest_value;
-                            $earliest_href = isset($hrefs[$earliest_key])
-                                ? $hrefs[$earliest_key] : '';
-                            $earliest_queue = isset($queue[$earliest_key])
-                                ? $queue[$earliest_key] : '';
-                        }
-                        $earliest_counter = 1;
-                    }
-                } else {
-                    $leanable = 0;
-                }
-                $messageElements = $itemlist->item($c)
-                    ->getElementsByTagName('message');
-                if ($messageElements->length > 0) {
-                    $errno = $messageElements->item(0)->attributes
-                        ->getNamedItem('errno')->nodeValue;
-                    if ($errno === '404') {
-                        $status = 'missing';
-                    }
-                }
-                if (!isset($status)) {
-                    $status = 'Unavailable';
-                }
-                $availability = 0;
-            }
-            $reserve = 'N';
-            if (isset($earliest_queue) && $earliest_queue > 0) {
-                $reserve = 'Y';
-            }
-            $holding[] = [
-                'availability' => $availability,
-                'id'            => $id,
-                'status'        => isset($status) ? "$status" : '',
-                'location'      => isset($storage) ? "$storage" : '',
-                'reserve'       => isset($reserve) ? $reserve : '',
-                'queue'         => isset($earliest_queue) ? $earliest_queue : '',
-                'callnumber'    => isset($label) ? "$label" : '',
-                'duedate'       => isset($earliest_duedate) ? $earliest_duedate : '',
-                'leanable'      => isset($leanable) ? $leanable : '',
-                'recallhref'    => isset($earliest_href) ? $earliest_href : '',
-                'number'        => ($c+1),
-                'presenceOnly'  => isset($presenceOnly) ? $presenceOnly : '',
-            ];
-        }
-        return $holding;
-    }
 }
\ No newline at end of file
diff --git a/module/finc/src/finc/ILS/Driver/FincILS.php b/module/finc/src/finc/ILS/Driver/FincILS.php
index 8b6af33ba44beb3ba7ee9d7d1721a8d2a3261193..9d1a6879b3418ee81fcd1840ce58f3aa207cbedf 100644
--- a/module/finc/src/finc/ILS/Driver/FincILS.php
+++ b/module/finc/src/finc/ILS/Driver/FincILS.php
@@ -103,49 +103,25 @@ class FincILS extends PAIA implements LoggerAwareInterface
     {
         parent::init();
 
-        // due to section naming changes in DAIA.ini switch legacySupport
-        if ($this->legacySupport) {
-            // set the ILS-specific recordId for interaction with ILS
+        // set the ILS-specific recordId for interaction with ILS
 
-            // get the ILS-specific identifier
-            if (!isset($this->config['Global']['ilsIdentifier'])) {
-                $this->debug(
-                    "No ILS-specific identifier configured, setting ilsIdentifier=default."
-                );
-                $this->ilsIdentifier = "default";
-            } else {
-                $this->ilsIdentifier = $this->config['Global']['ilsIdentifier'];
-            }
-
-            // get ISIL from config if ILS-specific recordId is barcode for
-            // interaction with ILS
-            if (!isset($this->mainConfig['InstitutionInfo']['isil'])) {
-                $this->debug("No ISIL defined in section InstitutionInfo in config.ini.");
-                $this->isil = [];
-            } else {
-                $this->isil = $this->mainConfig['InstitutionInfo']['isil']->toArray();
-            }
+        // get the ILS-specific identifier
+        if (!isset($this->config['DAIA']['ilsIdentifier'])) {
+            $this->debug(
+                "No ILS-specific identifier configured, setting ilsIdentifier=default."
+            );
+            $this->ilsIdentifier = "default";
         } else {
-            // set the ILS-specific recordId for interaction with ILS
-
-            // get the ILS-specific identifier
-            if (!isset($this->config['DAIA']['ilsIdentifier'])) {
-                $this->debug(
-                    "No ILS-specific identifier configured, setting ilsIdentifier=default."
-                );
-                $this->ilsIdentifier = "default";
-            } else {
-                $this->ilsIdentifier = $this->config['DAIA']['ilsIdentifier'];
-            }
+            $this->ilsIdentifier = $this->config['DAIA']['ilsIdentifier'];
+        }
 
-            // get ISIL from config if ILS-specific recordId is barcode for
-            // interaction with ILS
-            if (!isset($this->mainConfig['InstitutionInfo']['isil'])) {
-                $this->debug("No ISIL defined in section InstitutionInfo in config.ini.");
-                $this->isil = [];
-            } else {
-                $this->isil = $this->mainConfig['InstitutionInfo']['isil']->toArray();
-            }
+        // get ISIL from config if ILS-specific recordId is barcode for
+        // interaction with ILS
+        if (!isset($this->mainConfig['InstitutionInfo']['isil'])) {
+            $this->debug("No ISIL defined in section InstitutionInfo in config.ini.");
+            $this->isil = [];
+        } else {
+            $this->isil = $this->mainConfig['InstitutionInfo']['isil']->toArray();
         }
 
         $this->_testILSConnections();