Skip to content
Snippets Groups Projects
module.config.php 5.73 KiB
Newer Older
<?php
/**
 * Copyright (C) 2019 Leipzig University Library
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * @author  Gregor Gawol <gawol@ub.uni-leipzig.de>
 * @license http://opensource.org/licenses/gpl-2.0.php GNU GPLv2
 */
namespace fid_adlr\Module\Configuration;
$config = [
    'vufind'      => [
        'plugin_managers'              => [
            'recorddriver' => [
                'factories' => [
                    'solrdefault'        => 'finc\RecordDriver\Factory::getSolrDefault',
                    'solrmarc'           => 'finc\RecordDriver\Factory::getSolrMarc',
                    'solrmarcfinc'       => 'finc\RecordDriver\Factory::getSolrMarcFinc',
                    'solrmarcfincpda'    => 'finc\RecordDriver\Factory::getSolrMarcFincPDA',
                    'solrmarcremote'     => 'finc\RecordDriver\Factory::getSolrMarcRemote',
                    'solrmarcremotefinc' => 'finc\RecordDriver\Factory::getSolrMarcRemoteFinc',
                    'solrai'             => 'finc\RecordDriver\Factory::getSolrAI',
                    'solris'             => 'finc\RecordDriver\Factory::getSolrIS',
                    'solrlido'           => 'finc\RecordDriver\Factory::getSolrLido',
                    'solrlidondl'        => 'finc\RecordDriver\Factory::getSolrLidoNdl'
                ],
            ],
            'recordtab'    => [
                'factories'  => [
                    'hierarchytree' => 'finc\RecordTab\Factory::getHierarchyTree',
                ],
                'invokables' => [
                    'staffviewai'     => 'finc\RecordTab\StaffViewAI',
                    'acquisitionpda'  => 'finc\RecordTab\AcquisitionPDA',
                    'topics'          => 'finc\RecordTab\Topics',
                    'descriptionlido' => 'finc\RecordTab\DescriptionLido',
                    'toc' => 'fid_adlr\RecordTab\TOC'
                ],
            ],
        ],
        'recorddriver_tabs'            => [
            'finc\RecordDriver\SolrDefault'  => [
                'tabs'       => [
                    'Description'   => 'Description',
                    'Holdings'      => null,
                    'TOC'           => 'TOC',
                    'UserComments'  => 'UserComments',
                    'Reviews'       => 'Reviews',
                    'Excerpt'       => 'Excerpt',
                    'Preview'       => 'preview',
                    'HierarchyTree' => 'HierarchyTree',
                    'Map'           => 'Map',
                    'Similar'       => null,
                    'Details'       => 'StaffViewArray',
                ],
                'defaultTab' => null,
            ],
            'finc\RecordDriver\SolrMarcFinc' => [
                'tabs'       => [
                    'Description'   => 'Description',
                    'Holdings'      => null,
                    'TOC'           => 'TOC',
                    'UserComments'  => 'UserComments',
                    'Reviews'       => 'Reviews',
                    'Excerpt'       => 'Excerpt',
                    'Preview'       => 'preview',
                    'HierarchyTree' => 'HierarchyTree',
                    'Map'           => 'Map',
                    'Similar'       => null,
                    'Details'       => 'StaffViewMARC',
                ],
                'defaultTab' => null,
            ],
            'finc\RecordDriver\SolrAI'       => [
                'tabs'       => [
                    'Description'   => 'Description',
                    'Holdings'      => null,
                    'TOC'           => 'TOC',
                    'UserComments'  => 'UserComments',
                    'Reviews'       => 'Reviews',
                    'Excerpt'       => 'Excerpt',
                    'Preview'       => 'preview',
                    'HierarchyTree' => 'HierarchyTree',
                    'Map'           => 'Map',
                    'Similar'       => null,
                    'Details'       => 'StaffViewAI',
                ],
                'defaultTab' => null,
            ],
        ],
        'recorddriver_collection_tabs' => [
            'VuFind\RecordDriver\AbstractBase' => [
                'tabs'       => [
                    'CollectionList' => 'CollectionList',
                    'HierarchyTree'  => 'CollectionHierarchyTree',
                    'Details'        => 'StaffViewArray',
                ],
                'defaultTab' => null,
            ],
        ],
    ],

$nonTabRecordActions = [
    'PDA',
    'EmailHold',
    'ReportErrors',
    'Acquisition'
];

// Define record view routes -- route name => controller
// Define record view routes once again to add new nonTabRecordActions
$recordRoutes = [
    'record'    => 'Record',
    'export'    => 'Export',
    'resources' => 'Resources'
];

// Define static routes -- Controller/Action strings
$staticRoutes = [
    'MyResearch/Acquisition',
    'MyResearch/ResetPassword',
    'dds/Home',
    'dds/Email',
    'Record/EblLink',
    'Search/Sources'
];

$routeGenerator = new \VuFind\Route\RouteGenerator($nonTabRecordActions);
$routeGenerator->addRecordRoutes($config, $recordRoutes);
$routeGenerator->addStaticRoutes($config, $staticRoutes);

return $config;