Skip to content
Snippets Groups Projects
ext_localconf.php 3.34 KiB
<?php

defined('TYPO3') or die();
/***************************************************************
 *  Copyright notice
 *
 *  (c) sgalinski Internet Services (https://www.sgalinski.de)
 *
 *  All rights reserved
 *
 *  This script is part of the TYPO3 project. The TYPO3 project is
 *  free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  The GNU General Public License can be found at
 *  http://www.gnu.org/copyleft/gpl.html.
 *
 *  This script 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.
 *
 *  This copyright notice MUST APPEAR in all copies of the script!
 ***************************************************************/

call_user_func(
	static function () {
		\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTypoScriptSetup(
			'@import "EXT:sg_jobs/Configuration/TypoScript/Common/setup.typoscript"'
		);
		// Configure frontend plugins
		\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
			'SgJobs',
			'Joblist',
			[
				// Available actions
				\SGalinski\SgJobs\Controller\JoblistController::class => 'index'
			],
			[
				// Uncacheable actions
				\SGalinski\SgJobs\Controller\JoblistController::class => ''
			]
		);
		\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
			'SgJobs',
			'JobApplication',
			[
				// Available actions
				\SGalinski\SgJobs\Controller\JoblistController::class => 'applyForm, apply'
			],
			[
				// Uncacheable actions
				\SGalinski\SgJobs\Controller\JoblistController::class => 'applyForm, apply'
			]
		);
		\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
			'SgJobs',
			'JobTeaser',
			[
				// Available actions
				\SGalinski\SgJobs\Controller\JobTeaserController::class => 'index'
			],
			[
				// Uncacheable actions
				\SGalinski\SgJobs\Controller\JobTeaserController::class => ''
			]
		);
		// Backend preview for plugins
		$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php']['tt_content_drawItem']['sg_jobs']
			= \SGalinski\SgJobs\Hooks\PageLayoutView\PluginRenderer::class;

		\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTypoScriptConstants(
			'@import "EXT:sg_jobs/Configuration/TypoScript/Backend/constants.typoscript"'
		);

		\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTypoScriptSetup(
			'@import "EXT:sg_jobs/Configuration/TypoScript/Backend/setup.typoscript"'
		);

		// register mail templates
		$GLOBALS['sg_mail']['sg_jobs']['ApplicationMail'] = 'EXT:sg_jobs/Configuration/SgMail/ApplicationMail.php';


		// Register the upgrade wizard
		$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['ext/install']['update'][\SGalinski\SgJobs\Updates\DepartmentUpdateWizard::IDENTIFIER]
			= \SGalinski\SgJobs\Updates\DepartmentUpdateWizard::class;

		//include Plugin sg_jobs
		\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig(
			'@import "EXT:sg_jobs/Configuration/TsConfig/Page/NewContentElementWizard.tsconfig"'
		);

		$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['languagevisibility']['recordElementSupportedTables']['tx_sgjobs_domain_model_job'] = [];
	}
);