Initial Upload

This commit is contained in:
Matt Batchelder
2025-12-02 10:32:59 -05:00
commit 05ce0da296
2240 changed files with 467811 additions and 0 deletions

View File

@@ -0,0 +1,647 @@
<?php
/*
* Copyright (C) 2024 Xibo Signage Ltd
*
* Xibo - Digital Signage - https://xibosignage.com
*
* This file is part of Xibo.
*
* Xibo is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* Xibo 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with Xibo. If not, see <http://www.gnu.org/licenses/>.
*/
namespace Xibo\Dependencies;
use Psr\Container\ContainerInterface;
/**
* Helper class to add controllers to DI
*/
class Controllers
{
/**
* Register controllers with DI
*/
public static function registerControllersWithDi()
{
return [
'\Xibo\Controller\Action' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Action(
$c->get('actionFactory'),
$c->get('layoutFactory'),
$c->get('regionFactory'),
$c->get('widgetFactory'),
$c->get('moduleFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Applications' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Applications(
$c->get('session'),
$c->get('applicationFactory'),
$c->get('applicationRedirectUriFactory'),
$c->get('applicationScopeFactory'),
$c->get('userFactory'),
$c->get('pool'),
$c->get('connectorFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\AuditLog' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\AuditLog(
$c->get('auditLogFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Campaign' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Campaign(
$c->get('campaignFactory'),
$c->get('layoutFactory'),
$c->get('tagFactory'),
$c->get('folderFactory'),
$c->get('displayGroupFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Connector' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Connector(
$c->get('connectorFactory'),
$c->get('widgetFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Clock' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Clock(
$c->get('session')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Command' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Command(
$c->get('commandFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DataSet' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DataSet(
$c->get('dataSetFactory'),
$c->get('dataSetColumnFactory'),
$c->get('userFactory'),
$c->get('folderFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DataSetColumn' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DataSetColumn(
$c->get('dataSetFactory'),
$c->get('dataSetColumnFactory'),
$c->get('dataSetColumnTypeFactory'),
$c->get('dataTypeFactory'),
$c->get('pool')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DataSetData' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DataSetData(
$c->get('dataSetFactory'),
$c->get('mediaFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DataSetRss' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DataSetRss(
$c->get('dataSetRssFactory'),
$c->get('dataSetFactory'),
$c->get('dataSetColumnFactory'),
$c->get('pool'),
$c->get('store')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DayPart' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DayPart(
$c->get('dayPartFactory'),
$c->get('scheduleFactory'),
$c->get('displayNotifyService')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Developer' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Developer(
$c->get('moduleFactory'),
$c->get('moduleTemplateFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Display' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Display(
$c->get('store'),
$c->get('pool'),
$c->get('playerActionService'),
$c->get('displayFactory'),
$c->get('displayGroupFactory'),
$c->get('displayTypeFactory'),
$c->get('layoutFactory'),
$c->get('displayProfileFactory'),
$c->get('displayEventFactory'),
$c->get('requiredFileFactory'),
$c->get('tagFactory'),
$c->get('notificationFactory'),
$c->get('userGroupFactory'),
$c->get('playerVersionFactory'),
$c->get('dayPartFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DisplayGroup' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DisplayGroup(
$c->get('playerActionService'),
$c->get('displayFactory'),
$c->get('displayGroupFactory'),
$c->get('layoutFactory'),
$c->get('moduleFactory'),
$c->get('mediaFactory'),
$c->get('commandFactory'),
$c->get('tagFactory'),
$c->get('campaignFactory'),
$c->get('folderFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\DisplayProfile' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\DisplayProfile(
$c->get('pool'),
$c->get('displayProfileFactory'),
$c->get('commandFactory'),
$c->get('playerVersionFactory'),
$c->get('dayPartFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Fault' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Fault(
$c->get('store'),
$c->get('logFactory'),
$c->get('displayFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Folder' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Folder(
$c->get('folderFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Font' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Font(
$c->get('fontFactory')
);
$controller->useMediaService($c->get('mediaService'));
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\IconDashboard' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\IconDashboard();
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Layout' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Layout(
$c->get('session'),
$c->get('userFactory'),
$c->get('resolutionFactory'),
$c->get('layoutFactory'),
$c->get('moduleFactory'),
$c->get('userGroupFactory'),
$c->get('tagFactory'),
$c->get('mediaFactory'),
$c->get('dataSetFactory'),
$c->get('campaignFactory'),
$c->get('displayGroupFactory'),
$c->get('pool'),
$c->get('mediaService'),
$c->get('widgetFactory'),
$c->get('widgetDataFactory'),
$c->get('playlistFactory'),
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Library' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Library(
$c->get('userFactory'),
$c->get('moduleFactory'),
$c->get('tagFactory'),
$c->get('mediaFactory'),
$c->get('widgetFactory'),
$c->get('permissionFactory'),
$c->get('layoutFactory'),
$c->get('playlistFactory'),
$c->get('userGroupFactory'),
$c->get('displayFactory'),
$c->get('scheduleFactory'),
$c->get('folderFactory')
);
$controller->useMediaService($c->get('mediaService'));
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Logging' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Logging(
$c->get('store'),
$c->get('logFactory'),
$c->get('userFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Login' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Login(
$c->get('session'),
$c->get('userFactory'),
$c->get('pool')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
if ($c->has('flash')) {
$controller->setFlash($c->get('flash'));
}
return $controller;
},
'\Xibo\Controller\Maintenance' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Maintenance(
$c->get('store'),
$c->get('mediaFactory'),
$c->get('mediaService')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\MediaManager' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\MediaManager(
$c->get('store'),
$c->get('moduleFactory'),
$c->get('mediaFactory'),
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\MenuBoard' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\MenuBoard(
$c->get('menuBoardFactory'),
$c->get('folderFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\MenuBoardCategory' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\MenuBoardCategory(
$c->get('menuBoardFactory'),
$c->get('menuBoardCategoryFactory'),
$c->get('mediaFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\MenuBoardProduct' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\MenuBoardProduct(
$c->get('menuBoardFactory'),
$c->get('menuBoardCategoryFactory'),
$c->get('menuBoardProductOptionFactory'),
$c->get('mediaFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\PlaylistDashboard' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\PlaylistDashboard(
$c->get('playlistFactory'),
$c->get('moduleFactory'),
$c->get('widgetFactory'),
$c->get('mediaFactory'),
$c
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Module' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Module(
$c->get('moduleFactory'),
$c->get('moduleTemplateFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Notification' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Notification(
$c->get('notificationFactory'),
$c->get('userNotificationFactory'),
$c->get('displayGroupFactory'),
$c->get('userGroupFactory'),
$c->get('displayNotifyService')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\PlayerFault' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\PlayerFault(
$c->get('playerFaultFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\PlayerSoftware' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\PlayerSoftware(
$c->get('pool'),
$c->get('playerVersionFactory'),
$c->get('displayProfileFactory'),
$c->get('displayFactory')
);
$controller->useMediaService($c->get('mediaService'));
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Playlist' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Playlist(
$c->get('playlistFactory'),
$c->get('mediaFactory'),
$c->get('widgetFactory'),
$c->get('moduleFactory'),
$c->get('userGroupFactory'),
$c->get('userFactory'),
$c->get('tagFactory'),
$c->get('layoutFactory'),
$c->get('displayFactory'),
$c->get('scheduleFactory'),
$c->get('folderFactory'),
$c->get('regionFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Preview' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Preview(
$c->get('layoutFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Pwa' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Pwa(
$c->get('displayFactory'),
$c,
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Region' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Region(
$c->get('regionFactory'),
$c->get('widgetFactory'),
$c->get('transitionFactory'),
$c->get('moduleFactory'),
$c->get('layoutFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Report' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Report(
$c->get('reportService')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\SavedReport' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\SavedReport(
$c->get('reportService'),
$c->get('reportScheduleFactory'),
$c->get('savedReportFactory'),
$c->get('mediaFactory'),
$c->get('userFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\ScheduleReport' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\ScheduleReport(
$c->get('reportService'),
$c->get('reportScheduleFactory'),
$c->get('savedReportFactory'),
$c->get('mediaFactory'),
$c->get('userFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\SyncGroup' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\SyncGroup(
$c->get('syncGroupFactory'),
$c->get('folderFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Resolution' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Resolution(
$c->get('resolutionFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Schedule' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Schedule(
$c->get('session'),
$c->get('scheduleFactory'),
$c->get('displayGroupFactory'),
$c->get('campaignFactory'),
$c->get('commandFactory'),
$c->get('displayFactory'),
$c->get('layoutFactory'),
$c->get('dayPartFactory'),
$c->get('scheduleReminderFactory'),
$c->get('scheduleExclusionFactory'),
$c->get('syncGroupFactory'),
$c->get('scheduleCriteriaFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\CypressTest' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\CypressTest(
$c->get('store'),
$c->get('session'),
$c->get('scheduleFactory'),
$c->get('displayGroupFactory'),
$c->get('campaignFactory'),
$c->get('displayFactory'),
$c->get('layoutFactory'),
$c->get('dayPartFactory'),
$c->get('folderFactory'),
$c->get('commandFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Sessions' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Sessions(
$c->get('store'),
$c->get('sessionFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Settings' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Settings(
$c->get('layoutFactory'),
$c->get('userGroupFactory'),
$c->get('transitionFactory'),
$c->get('userFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Stats' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Stats(
$c->get('store'),
$c->get('timeSeriesStore'),
$c->get('reportService'),
$c->get('displayFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\StatusDashboard' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\StatusDashboard(
$c->get('store'),
$c->get('pool'),
$c->get('userFactory'),
$c->get('displayFactory'),
$c->get('displayGroupFactory'),
$c->get('mediaFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Task' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Task(
$c->get('store'),
$c->get('timeSeriesStore'),
$c->get('pool'),
$c->get('taskFactory'),
$c
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Tag' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Tag(
$c->get('displayGroupFactory'),
$c->get('layoutFactory'),
$c->get('tagFactory'),
$c->get('userFactory'),
$c->get('displayFactory'),
$c->get('mediaFactory'),
$c->get('scheduleFactory'),
$c->get('campaignFactory'),
$c->get('playlistFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Template' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Template(
$c->get('layoutFactory'),
$c->get('tagFactory'),
$c->get('resolutionFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Transition' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Transition(
$c->get('transitionFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\User' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\User(
$c->get('userFactory'),
$c->get('userTypeFactory'),
$c->get('userGroupFactory'),
$c->get('permissionFactory'),
$c->get('applicationFactory'),
$c->get('sessionFactory'),
$c->get('mediaService')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\UserGroup' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\UserGroup(
$c->get('userGroupFactory'),
$c->get('permissionFactory'),
$c->get('userFactory')
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\Widget' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\Widget(
$c->get('moduleFactory'),
$c->get('moduleTemplateFactory'),
$c->get('playlistFactory'),
$c->get('mediaFactory'),
$c->get('permissionFactory'),
$c->get('widgetFactory'),
$c->get('transitionFactory'),
$c->get('regionFactory'),
$c->get('widgetAudioFactory'),
$c->get('widgetDataFactory'),
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
'\Xibo\Controller\WidgetData' => function (ContainerInterface $c) {
$controller = new \Xibo\Controller\WidgetData(
$c->get('widgetDataFactory'),
$c->get('widgetFactory'),
$c->get('moduleFactory'),
);
$controller->useBaseDependenciesService($c->get('ControllerBaseDependenciesService'));
return $controller;
},
];
}
}

View File

@@ -0,0 +1,536 @@
<?php
/*
* Copyright (C) 2025 Xibo Signage Ltd
*
* Xibo - Digital Signage - https://xibosignage.com
*
* This file is part of Xibo.
*
* Xibo is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* Xibo 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with Xibo. If not, see <http://www.gnu.org/licenses/>.
*/
namespace Xibo\Dependencies;
use Psr\Container\ContainerInterface;
/**
* Helper class to add factories to DI.
*/
class Factories
{
/**
* Register Factories with DI
*/
public static function registerFactoriesWithDi()
{
return [
'actionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ActionFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'apiRequestsFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ApplicationRequestsFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'applicationFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ApplicationFactory(
$c->get('user'),
$c->get('applicationRedirectUriFactory'),
$c->get('applicationScopeFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'applicationRedirectUriFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ApplicationRedirectUriFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'applicationScopeFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ApplicationScopeFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'auditLogFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\AuditLogFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'bandwidthFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\BandwidthFactory(
$c->get('pool'),
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'campaignFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\CampaignFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('permissionFactory'),
$c->get('scheduleFactory'),
$c->get('displayNotifyService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'commandFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\CommandFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'connectorFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ConnectorFactory(
$c->get('pool'),
$c->get('configService'),
$c->get('jwtService'),
$c->get('playerActionService'),
$c
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dataSetColumnFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DataSetColumnFactory(
$c->get('dataTypeFactory'),
$c->get('dataSetColumnTypeFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dataSetColumnTypeFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DataSetColumnTypeFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dataSetFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DataSetFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService'),
$c->get('pool'),
$c->get('dataSetColumnFactory'),
$c->get('permissionFactory'),
$c->get('displayNotifyService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dataSetRssFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DataSetRssFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dataTypeFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DataTypeFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'dayPartFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DayPartFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'displayFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DisplayFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('displayNotifyService'),
$c->get('configService'),
$c->get('displayGroupFactory'),
$c->get('displayProfileFactory'),
$c->get('folderFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'displayEventFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DisplayEventFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'displayGroupFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DisplayGroupFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('permissionFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'displayTypeFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DisplayTypeFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'displayProfileFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\DisplayProfileFactory(
$c->get('configService'),
$c->get('commandFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'folderFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\FolderFactory(
$c->get('permissionFactory'),
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'fontFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\FontFactory(
$c->get('configService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'layoutFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\LayoutFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService'),
$c->get('permissionFactory'),
$c->get('regionFactory'),
$c->get('tagFactory'),
$c->get('campaignFactory'),
$c->get('mediaFactory'),
$c->get('moduleFactory'),
$c->get('moduleTemplateFactory'),
$c->get('resolutionFactory'),
$c->get('widgetFactory'),
$c->get('widgetOptionFactory'),
$c->get('playlistFactory'),
$c->get('widgetAudioFactory'),
$c->get('actionFactory'),
$c->get('folderFactory'),
$c->get('fontFactory'),
$c->get('widgetDataFactory'),
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
if ($c->has('pool')) {
$repository->usePool($c->get('pool'));
}
return $repository;
},
'logFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\LogFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'mediaFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\MediaFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService'),
$c->get('permissionFactory'),
$c->get('playlistFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'menuBoardCategoryFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\MenuBoardCategoryFactory(
$c->get('menuBoardProductOptionFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'menuBoardProductOptionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\MenuBoardProductOptionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'menuBoardFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\MenuBoardFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService'),
$c->get('pool'),
$c->get('permissionFactory'),
$c->get('menuBoardCategoryFactory'),
$c->get('displayNotifyService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'moduleFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ModuleFactory(
$c->get('configService')->getSetting('LIBRARY_LOCATION') . 'widget',
$c->get('pool'),
$c->get('view'),
$c->get('configService')
);
$repository
->setAclDependencies(
$c->get('user'),
$c->get('userFactory')
)
->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'moduleTemplateFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ModuleTemplateFactory(
$c->get('pool'),
$c->get('view'),
);
$repository
->setAclDependencies(
$c->get('user'),
$c->get('userFactory')
)
->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'notificationFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\NotificationFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('userGroupFactory'),
$c->get('displayGroupFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'permissionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\PermissionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'playerFaultFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\PlayerFaultFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'playerVersionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\PlayerVersionFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'playlistFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\PlaylistFactory(
$c->get('configService'),
$c->get('user'),
$c->get('userFactory'),
$c->get('permissionFactory'),
$c->get('widgetFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'regionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\RegionFactory(
$c->get('permissionFactory'),
$c->get('regionOptionFactory'),
$c->get('playlistFactory'),
$c->get('actionFactory'),
$c->get('campaignFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'regionOptionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\RegionOptionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'requiredFileFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\RequiredFileFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'reportScheduleFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ReportScheduleFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'resolutionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ResolutionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'savedReportFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\SavedReportFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService'),
$c->get('mediaFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'scheduleFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ScheduleFactory(
$c->get('configService'),
$c->get('pool'),
$c->get('displayGroupFactory'),
$c->get('dayPartFactory'),
$c->get('userFactory'),
$c->get('scheduleReminderFactory'),
$c->get('scheduleExclusionFactory'),
$c->get('user'),
$c->get('scheduleCriteriaFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'scheduleReminderFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ScheduleReminderFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('configService')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'scheduleExclusionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ScheduleExclusionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'scheduleCriteriaFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\ScheduleCriteriaFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'sessionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\SessionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'syncGroupFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\SyncGroupFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('permissionFactory'),
$c->get('displayFactory'),
$c->get('scheduleFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'tagFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\TagFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'taskFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\TaskFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'transitionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\TransitionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'userFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\UserFactory(
$c->get('configService'),
$c->get('permissionFactory'),
$c->get('userOptionFactory'),
$c->get('applicationScopeFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'userGroupFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\UserGroupFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'userNotificationFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\UserNotificationFactory(
$c->get('user'),
$c->get('userFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'userOptionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\UserOptionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'userTypeFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\UserTypeFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'widgetFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\WidgetFactory(
$c->get('user'),
$c->get('userFactory'),
$c->get('widgetOptionFactory'),
$c->get('widgetMediaFactory'),
$c->get('widgetAudioFactory'),
$c->get('permissionFactory'),
$c->get('displayNotifyService'),
$c->get('actionFactory'),
$c->get('moduleTemplateFactory')
);
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'widgetMediaFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\WidgetMediaFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'widgetAudioFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\WidgetAudioFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'widgetOptionFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\WidgetOptionFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
'widgetDataFactory' => function (ContainerInterface $c) {
$repository = new \Xibo\Factory\WidgetDataFactory();
$repository->useBaseDependenciesService($c->get('RepositoryBaseDependenciesService'));
return $repository;
},
];
}
}