<?php
namespace {
// Back end modules
$GLOBALS['BE_MOD'] = array(
// Content modules
'content' => array('article' => array('tables' => array('tl_article', 'tl_content'), 'table' => array(\Contao\CoreBundle\Controller\BackendCsvImportController::class, 'importTableWizardAction'), 'list' => array(\Contao\CoreBundle\Controller\BackendCsvImportController::class, 'importListWizardAction')), 'form' => array('tables' => array('tl_form', 'tl_form_field'), 'option' => array(\Contao\CoreBundle\Controller\BackendCsvImportController::class, 'importOptionWizardAction'))),
// Design modules
'design' => array('themes' => array('tables' => array('tl_theme', 'tl_module', 'tl_style_sheet', 'tl_style', 'tl_layout', 'tl_image_size', 'tl_image_size_item'), 'importTheme' => array(\Contao\Theme::class, 'importTheme'), 'exportTheme' => array(\Contao\Theme::class, 'exportTheme'), 'import' => array(\Contao\StyleSheets::class, 'importStyleSheet'), 'export' => array(\Contao\StyleSheets::class, 'exportStyleSheet')), 'page' => array('tables' => array('tl_page')), 'tpl_editor' => array('tables' => array('tl_templates'), 'new_tpl' => array('tl_templates', 'addNewTemplate'), 'compare' => array('tl_templates', 'compareTemplate'))),
// Account modules
'accounts' => array('member' => array('tables' => array('tl_member')), 'mgroup' => array('tables' => array('tl_member_group')), 'user' => array('tables' => array('tl_user')), 'group' => array('tables' => array('tl_user_group')), 'login' => array('tables' => array('tl_user'), 'hideInNavigation' => \true, 'disablePermissionChecks' => \true), 'security' => array('callback' => \Contao\ModuleTwoFactor::class, 'hideInNavigation' => \true, 'disablePermissionChecks' => \true)),
// System modules
'system' => array('files' => array('tables' => array('tl_files')), 'settings' => array('tables' => array('tl_settings')), 'maintenance' => array('callback' => \Contao\ModuleMaintenance::class), 'log' => array('tables' => array('tl_log')), 'preview_link' => array('tables' => array('tl_preview_link'), 'javascript' => 'bundles/contaocore/clipboard.min.js'), 'opt_in' => array('tables' => array('tl_opt_in'), 'resend' => array('tl_opt_in', 'resendToken')), 'undo' => array('tables' => array('tl_undo'), 'disablePermissionChecks' => \true)),
);
// Front end modules
$GLOBALS['FE_MOD'] = array('navigationMenu' => array('navigation' => \Contao\ModuleNavigation::class, 'customnav' => \Contao\ModuleCustomnav::class, 'breadcrumb' => \Contao\ModuleBreadcrumb::class, 'quicknav' => \Contao\ModuleQuicknav::class, 'quicklink' => \Contao\ModuleQuicklink::class, 'booknav' => \Contao\ModuleBooknav::class, 'articlenav' => \Contao\ModuleArticlenav::class, 'sitemap' => \Contao\ModuleSitemap::class), 'user' => array('login' => \Contao\ModuleLogin::class, 'logout' => \Contao\ModuleLogout::class, 'personalData' => \Contao\ModulePersonalData::class, 'registration' => \Contao\ModuleRegistration::class, 'changePassword' => \Contao\ModuleChangePassword::class, 'lostPassword' => \Contao\ModulePassword::class, 'closeAccount' => \Contao\ModuleCloseAccount::class), 'application' => array('form' => \Contao\Form::class, 'search' => \Contao\ModuleSearch::class), 'miscellaneous' => array('articlelist' => \Contao\ModuleArticleList::class, 'randomImage' => \Contao\ModuleRandomImage::class, 'html' => \Contao\ModuleHtml::class, 'rssReader' => \Contao\ModuleRssReader::class));
// Content elements
$GLOBALS['TL_CTE'] = array('texts' => array('headline' => \Contao\ContentHeadline::class, 'text' => \Contao\ContentText::class, 'html' => \Contao\ContentHtml::class, 'list' => \Contao\ContentList::class, 'table' => \Contao\ContentTable::class, 'code' => \Contao\ContentCode::class), 'accordion' => array('accordionSingle' => \Contao\ContentAccordion::class, 'accordionStart' => \Contao\ContentAccordionStart::class, 'accordionStop' => \Contao\ContentAccordionStop::class), 'slider' => array('sliderStart' => \Contao\ContentSliderStart::class, 'sliderStop' => \Contao\ContentSliderStop::class), 'links' => array('hyperlink' => \Contao\ContentHyperlink::class, 'toplink' => \Contao\ContentToplink::class), 'media' => array('image' => \Contao\ContentImage::class, 'gallery' => \Contao\ContentGallery::class, 'player' => \Contao\ContentMedia::class, 'youtube' => \Contao\ContentYouTube::class, 'vimeo' => \Contao\ContentVimeo::class), 'files' => array('download' => \Contao\ContentDownload::class, 'downloads' => \Contao\ContentDownloads::class), 'includes' => array('article' => \Contao\ContentArticle::class, 'alias' => \Contao\ContentAlias::class, 'form' => \Contao\Form::class, 'module' => \Contao\ContentModule::class, 'teaser' => \Contao\ContentTeaser::class));
// Back end form fields
$GLOBALS['BE_FFL'] = array('text' => \Contao\TextField::class, 'password' => \Contao\Password::class, 'textStore' => \Contao\TextStore::class, 'textarea' => \Contao\TextArea::class, 'select' => \Contao\SelectMenu::class, 'checkbox' => \Contao\CheckBox::class, 'checkboxWizard' => \Contao\CheckBoxWizard::class, 'radio' => \Contao\RadioButton::class, 'radioTable' => \Contao\RadioTable::class, 'inputUnit' => \Contao\InputUnit::class, 'trbl' => \Contao\TrblField::class, 'chmod' => \Contao\ChmodTable::class, 'picker' => \Contao\Picker::class, 'pageTree' => \Contao\PageTree::class, 'pageSelector' => \Contao\PageSelector::class, 'fileTree' => \Contao\FileTree::class, 'fileSelector' => \Contao\FileSelector::class, 'fileUpload' => \Contao\Upload::class, 'tableWizard' => \Contao\TableWizard::class, 'listWizard' => \Contao\ListWizard::class, 'optionWizard' => \Contao\OptionWizard::class, 'moduleWizard' => \Contao\ModuleWizard::class, 'keyValueWizard' => \Contao\KeyValueWizard::class, 'imageSize' => \Contao\ImageSize::class, 'timePeriod' => \Contao\TimePeriod::class, 'metaWizard' => \Contao\MetaWizard::class, 'sectionWizard' => \Contao\SectionWizard::class, 'serpPreview' => \Contao\SerpPreview::class, 'rootPageDependentSelect' => \Contao\RootPageDependentSelect::class);
// Front end form fields
$GLOBALS['TL_FFL'] = array('explanation' => \Contao\FormExplanation::class, 'html' => \Contao\FormHtml::class, 'fieldsetStart' => \Contao\FormFieldsetStart::class, 'fieldsetStop' => \Contao\FormFieldsetStop::class, 'text' => \Contao\FormTextField::class, 'password' => \Contao\FormPassword::class, 'textarea' => \Contao\FormTextArea::class, 'select' => \Contao\FormSelectMenu::class, 'radio' => \Contao\FormRadioButton::class, 'checkbox' => \Contao\FormCheckBox::class, 'upload' => \Contao\FormFileUpload::class, 'range' => \Contao\FormRange::class, 'hidden' => \Contao\FormHidden::class, 'captcha' => \Contao\FormCaptcha::class, 'submit' => \Contao\FormSubmit::class);
// Page types
$GLOBALS['TL_PTY'] = array('regular' => \Contao\PageRegular::class, 'forward' => \Contao\PageForward::class, 'redirect' => \Contao\PageRedirect::class, 'root' => \Contao\PageRoot::class, 'logout' => \Contao\PageLogout::class, 'error_401' => \Contao\PageError401::class, 'error_403' => \Contao\PageError403::class, 'error_404' => \Contao\PageError404::class);
// Maintenance
$GLOBALS['TL_MAINTENANCE'] = array(\Contao\Crawl::class, \Contao\PurgeData::class);
// Purge jobs
$GLOBALS['TL_PURGE'] = array('tables' => array('index' => array('callback' => array(\Contao\Automator::class, 'purgeSearchTables'), 'affected' => array('tl_search', 'tl_search_index', 'tl_search_term')), 'undo' => array('callback' => array(\Contao\Automator::class, 'purgeUndoTable'), 'affected' => array('tl_undo')), 'versions' => array('callback' => array(\Contao\Automator::class, 'purgeVersionTable'), 'affected' => array('tl_version')), 'log' => array('callback' => array(\Contao\Automator::class, 'purgeSystemLog'), 'affected' => array('tl_log')), 'crawl_queue' => array('callback' => array(\Contao\Automator::class, 'purgeCrawlQueue'), 'affected' => array('tl_crawl_queue'))), 'folders' => array('images' => array('callback' => array(\Contao\Automator::class, 'purgeImageCache'), 'affected' => array(\Contao\StringUtil::stripRootDir(\Contao\System::getContainer()->getParameter('contao.image.target_dir')))), 'previews' => array('callback' => array(\Contao\Automator::class, 'purgePreviewCache'), 'affected' => array(\Contao\StringUtil::stripRootDir(\Contao\System::getContainer()->getParameter('contao.image.preview.target_dir')))), 'scripts' => array('callback' => array(\Contao\Automator::class, 'purgeScriptCache'), 'affected' => array('assets/js', 'assets/css')), 'temp' => array('callback' => array(\Contao\Automator::class, 'purgeTempFolder'), 'affected' => array('system/tmp'))), 'custom' => array('pages' => array('callback' => array(\Contao\Automator::class, 'purgePageCache')), 'xml' => array('callback' => array(\Contao\Automator::class, 'generateXmlFiles')), 'symlinks' => array('callback' => array(\Contao\Automator::class, 'generateSymlinks'))));
// Backwards compatibility
// Image crop modes
$GLOBALS['TL_CROP'] = array('image_sizes' => array(), 'relative' => array('proportional', 'box'), 'exact' => array('crop', 'left_top', 'center_top', 'right_top', 'left_center', 'center_center', 'right_center', 'left_bottom', 'center_bottom', 'right_bottom'));
// Backwards compatibility
// Cron jobs
$GLOBALS['TL_CRON'] = array('monthly' => array(), 'weekly' => array(), 'daily' => array('purgeTempFolder' => array(\Contao\Automator::class, 'purgeTempFolder'), 'purgeRegistrations' => array(\Contao\Automator::class, 'purgeRegistrations'), 'purgeOptInTokens' => array(\Contao\Automator::class, 'purgeOptInTokens')), 'hourly' => array(), 'minutely' => array());
// Hooks
$GLOBALS['TL_HOOKS'] = array('getSystemMessages' => array(array(\Contao\Messages::class, 'languageFallback')));
// Register the auto_item keywords
$GLOBALS['TL_AUTO_ITEM'] = array('items', 'events');
// Register the supported CSS units
$GLOBALS['TL_CSS_UNITS'] = array('px', '%', 'em', 'rem', 'vw', 'vh', 'vmin', 'vmax', 'ex', 'pt', 'pc', 'in', 'cm', 'mm');
// Wrapper elements
$GLOBALS['TL_WRAPPERS'] = array('start' => array('accordionStart', 'sliderStart', 'fieldsetStart'), 'stop' => array('accordionStop', 'sliderStop', 'fieldsetStop'), 'single' => array('accordionSingle'), 'separator' => array());
// Models
$GLOBALS['TL_MODELS'] = array('tl_article' => \Contao\ArticleModel::class, 'tl_content' => \Contao\ContentModel::class, 'tl_files' => \Contao\FilesModel::class, 'tl_form_field' => \Contao\FormFieldModel::class, 'tl_form' => \Contao\FormModel::class, 'tl_image_size_item' => \Contao\ImageSizeItemModel::class, 'tl_image_size' => \Contao\ImageSizeModel::class, 'tl_layout' => \Contao\LayoutModel::class, 'tl_member_group' => \Contao\MemberGroupModel::class, 'tl_member' => \Contao\MemberModel::class, 'tl_module' => \Contao\ModuleModel::class, 'tl_opt_in' => \Contao\OptInModel::class, 'tl_page' => \Contao\PageModel::class, 'tl_style' => \Contao\StyleModel::class, 'tl_style_sheet' => \Contao\StyleSheetModel::class, 'tl_theme' => \Contao\ThemeModel::class, 'tl_user_group' => \Contao\UserGroupModel::class, 'tl_user' => \Contao\UserModel::class);
// Other global arrays
$GLOBALS['TL_PERMISSIONS'] = array();
}
namespace {
// Back end modules
$GLOBALS['BE_MOD']['accounts']['debug'] = array('enable' => array(\Contao\ManagerBundle\Controller\DebugController::class, 'enableAction'), 'disable' => array(\Contao\ManagerBundle\Controller\DebugController::class, 'disableAction'), 'hideInNavigation' => \true, 'disablePermissionChecks' => \true);
}
namespace {
/*
* Copyright MADE/YOUR/DAY OG <mail@madeyourday.net>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* RockSolid Custom Elements configuration
*
* @author Martin Auswöger <martin@madeyourday.net>
*/
$GLOBALS['TL_HOOKS']['initializeSystem'][] = array('MadeYourDay\\RockSolidCustomElements\\CustomElements', 'loadConfig');
$GLOBALS['TL_HOOKS']['loadLanguageFile'][] = array('MadeYourDay\\RockSolidCustomElements\\CustomElements', 'loadLanguageFileHook');
$GLOBALS['TL_HOOKS']['exportTheme'][] = array('MadeYourDay\\RockSolidCustomElements\\CustomElements', 'exportThemeHook');
$GLOBALS['TL_HOOKS']['extractThemeFiles'][] = array('MadeYourDay\\RockSolidCustomElements\\CustomElements', 'extractThemeFilesHook');
$GLOBALS['BE_FFL']['rsce_list_start'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\ListStart';
$GLOBALS['BE_FFL']['rsce_list_stop'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\ListStop';
$GLOBALS['BE_FFL']['rsce_list_item_start'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\ListItemStart';
$GLOBALS['BE_FFL']['rsce_list_item_stop'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\ListItemStop';
$GLOBALS['BE_FFL']['rsce_group_start'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\GroupStart';
$GLOBALS['BE_FFL']['rsce_data'] = 'MadeYourDay\\RockSolidCustomElements\\Widget\\Data';
$GLOBALS['TL_MAINTENANCE'][] = 'MadeYourDay\\RockSolidCustomElements\\CustomElementsConvert';
$GLOBALS['TL_PURGE']['custom']['rocksolid_custom_elements'] = array('callback' => array('MadeYourDay\\RockSolidCustomElements\\CustomElements', 'purgeCache'));
// Insert the custom_elements category
\Contao\ArrayUtil::arrayInsert($GLOBALS['TL_CTE'], 1, array('custom_elements' => array()));
\Contao\ArrayUtil::arrayInsert($GLOBALS['FE_MOD'], 0, array('custom_elements' => array()));
}
namespace {
$GLOBALS['BE_FFL']['multiColumnWizard'] = \MenAtWork\MultiColumnWizardBundle\Contao\Widgets\MultiColumnWizard::class;
$GLOBALS['TL_HOOKS']['loadDataContainer'][] = [\MenAtWork\MultiColumnWizardBundle\EventListener\Contao\LoadDataContainer::class, 'supportModalSelector'];
$GLOBALS['TL_HOOKS']['initializeSystem'][] = [\MenAtWork\MultiColumnWizardBundle\EventListener\Contao\InitializeSystem::class, 'addSystemNecessaryThings'];
$GLOBALS['TL_HOOKS']['initializeSystem'][] = [\MenAtWork\MultiColumnWizardBundle\EventListener\Contao\InitializeSystem::class, 'changeAjaxPostActions'];
$GLOBALS['TL_HOOKS']['executePostActions'][] = [\MenAtWork\MultiColumnWizardBundle\EventListener\Contao\ExecutePostActions::class, 'executePostActions'];
$GLOBALS['TL_HOOKS']['executePostActions'][] = [\MenAtWork\MultiColumnWizardBundle\EventListener\Contao\ExecutePostActions::class, 'handleRowCreation'];
/*
* All Hooks for the BE are moved to the following function:
* \MenAtWork\MultiColumnWizardBundle\EventListener\Contao\InitializeSystem::addSystemNecessaryThings
*/
}
namespace {
$GLOBALS['BE_MOD']['content']['hc_mailchimp'] = array('tables' => array('tl_hc_mailchimp'), 'icon' => 'system/modules/hc_mailchimp/assets/images/mailchimp_icon.png');
$GLOBALS['FE_MOD']['hc_mailchimp'] = array('hc_mailchimp_subscribeFormShort' => 'ModuleHcMailchimpSubscribeFormShort', 'hc_mailchimp_subscribeForm' => 'ModuleHcMailchimpSubscribeForm', 'hc_mailchimp_unsubscribeForm' => 'ModuleHcMailchimpUnsubscribeForm', 'hc_mailchimp_archive' => 'ModuleHcMailchimpArchive');
}
namespace {
/**
* TYPOlight webCMS
*
* The TYPOlight webCMS is an accessible web content management system that
* specializes in accessibility and generates W3C-compliant HTML code. It
* provides a wide range of functionality to develop professional websites
* including a built-in search engine, form generator, file and user manager,
* CSS engine, multi-language support and many more. For more information and
* additional TYPOlight applications like the TYPOlight MVC Framework please
* visit the project website http://www.typolight.org.
*
* This is the subcolumns configuration file.
*
* PHP version 5
* @copyright Felix Pfeiffer : Neue Medien 2007 - 2012
* @author Felix Pfeiffer <info@felixpfeiffer.com>
* @package Subcolumns
* @license CC-A 2.0
* @filesource
*/
/**
* -------------------------------------------------------------------------
* CONTENT ELEMENTS
* -------------------------------------------------------------------------
*/
$GLOBALS['TL_CTE']['subcolumn'] = array('colsetStart' => 'Subcolumns\\colsetStart', 'colsetPart' => 'Subcolumns\\colsetPart', 'colsetEnd' => 'Subcolumns\\colsetEnd');
\array_insert($GLOBALS['FE_MOD']['application'], 4, array('subcolumns' => 'Subcolumns\\ModuleSubcolumns'));
/**
* Form fields
*/
$GLOBALS['TL_FFL']['formcolstart'] = 'Subcolumns\\FormColStart';
$GLOBALS['TL_FFL']['formcolpart'] = 'Subcolumns\\FormColPart';
$GLOBALS['TL_FFL']['formcolend'] = 'Subcolumns\\FormColEnd';
/**
* Hooks
*/
#$GLOBALS['TL_HOOKS']['clipboardContentTitle'][] = array('SemanticHTML5Helper', 'clipboardContentTitle');
$GLOBALS['TL_HOOKS']['clipboardCopy'][] = array('tl_content_sc', 'clipboardCopy');
$GLOBALS['TL_HOOKS']['clipboardCopyAll'][] = array('tl_subcolumnsCallback', 'clipboardCopyAll');
/**
* Einrücken von Elementen
*/
$GLOBALS['TL_WRAPPERS']['start'][] = 'colsetStart';
$GLOBALS['TL_WRAPPERS']['separator'][] = 'colsetPart';
$GLOBALS['TL_WRAPPERS']['stop'][] = 'colsetEnd';
/**
* Spaltensets
**/
$GLOBALS['TL_SUBCL'] = array('yaml3' => array(
'label' => 'YAML 3 Standard',
// Label for the selectmenu
'scclass' => 'subcolumns',
// Class for the wrapping container
'equalize' => 'equalize',
// Is a equilize heights class included and what is it's name?
'inside' => \true,
// Are inside containers used?
'gap' => \true,
// A gap between the columns can be entered in backend
'files' => array(
// Enter the location of the css files
'css' => 'system/modules/Subcolumns/assets/yaml3/subcols.css||static',
'ie' => 'system/modules/Subcolumns/assets/yaml3/subcolsIEHacks.css',
),
/*
* Define the sets that can be used as an array.
* Each array contains two or more arrays with the definition for the single columns.
* The key is used as the label in the select menu.
* Example: '50x50' => array(array([class(es) for the first column],[optional classes for the inside container]),array([class(es) for the second column],[optional classes for the inside container]))
*/
'sets' => array('20x20x20x20x20' => array(array('c20l', 'subcl'), array('c20l', 'subc'), array('c20l', 'subc'), array('c20l', 'subc'), array('c20r', 'subcr')), '25x25x25x25' => array(array('c25l', 'subcl'), array('c25l', 'subc'), array('c25l', 'subc'), array('c25r', 'subcr')), '50x16x16x16' => array(array('c50l', 'subcl'), array('c16l', 'subc'), array('c16l', 'subc'), array('c16r', 'subcr')), '33x33x33' => array(array('c33l', 'subcl'), array('c33l', 'subc'), array('c33r', 'subcr')), '50x25x25' => array(array('c50l', 'subcl'), array('c25l', 'subc'), array('c25r', 'subcr')), '25x50x25' => array(array('c25l', 'subcl'), array('c50l', 'subc'), array('c25r', 'subcr')), '25x25x50' => array(array('c25l', 'subcl'), array('c25l', 'subc'), array('c50r', 'subcr')), '40x30x30' => array(array('c40l', 'subcl'), array('c30l', 'subc'), array('c30r', 'subcr')), '30x40x30' => array(array('c30l', 'subcl'), array('c40l', 'subc'), array('c30r', 'subcr')), '30x30x40' => array(array('c30l', 'subcl'), array('c30l', 'subc'), array('c40r', 'subcr')), '20x40x40' => array(array('c20l', 'subcl'), array('c40l', 'subc'), array('c40r', 'subcr')), '40x20x40' => array(array('c40l', 'subcl'), array('c20l', 'subc'), array('c40r', 'subcr')), '40x40x20' => array(array('c40l', 'subcl'), array('c40l', 'subc'), array('c20r', 'subcr')), '85x15' => array(array('c85l', 'subcl'), array('c15r', 'subcr')), '80x20' => array(array('c80l', 'subcl'), array('c20r', 'subcr')), '75x25' => array(array('c75l', 'subcl'), array('c25r', 'subcr')), '70x30' => array(array('c70l', 'subcl'), array('c30r', 'subcr')), '66x33' => array(array('c66l', 'subcl'), array('c33r', 'subcr')), '62x38' => array(array('c62l', 'subcl'), array('c38r', 'subcr')), '60x40' => array(array('c60l', 'subcl'), array('c40r', 'subcr')), '55x45' => array(array('c55l', 'subcl'), array('c45r', 'subcr')), '50x50' => array(array('c50l', 'subcl'), array('c50r', 'subcr')), '45x55' => array(array('c45l', 'subcl'), array('c55r', 'subcr')), '40x60' => array(array('c40l', 'subcl'), array('c60r', 'subcr')), '38x62' => array(array('c38l', 'subcl'), array('c62r', 'subcr')), '33x66' => array(array('c33l', 'subcl'), array('c66r', 'subcr')), '30x70' => array(array('c30l', 'subcl'), array('c70r', 'subcr')), '25x75' => array(array('c25l', 'subcl'), array('c75r', 'subcr')), '20x80' => array(array('c20l', 'subcl'), array('c80r', 'subcr')), '15x85' => array(array('c15l', 'subcl'), array('c85r', 'subcr'))),
), 'yaml3_additional' => array('label' => 'YAML 3 Erweitert', 'scclass' => 'subcolumns', 'equalize' => 'equalize', 'inside' => \true, 'gap' => \true, 'files' => array('css' => 'system/modules/Subcolumns/assets/yaml3/subcols_extended.css||static', 'ie' => 'system/modules/Subcolumns/assets/yaml3/subcolsIEHacks_extended.css'), 'sets' => array('20x20x20x20x20' => array(array('c20l', 'subcl'), array('c20l', 'subc'), array('c20l', 'subc'), array('c20l', 'subc'), array('c20r', 'subcr')), '25x25x25x25' => array(array('c25l', 'subcl'), array('c25l', 'subc'), array('c25l', 'subc'), array('c25r', 'subcr')), '50x16x16x16' => array(array('c50l', 'subcl'), array('c16l', 'subc'), array('c16l', 'subc'), array('c16r', 'subcr')), '33x33x33' => array(array('c33l', 'subcl'), array('c33l', 'subc'), array('c33r', 'subcr')), '50x25x25' => array(array('c50l', 'subcl'), array('c25l', 'subc'), array('c25r', 'subcr')), '25x50x25' => array(array('c25l', 'subcl'), array('c50l', 'subc'), array('c25r', 'subcr')), '25x25x50' => array(array('c25l', 'subcl'), array('c25l', 'subc'), array('c50r', 'subcr')), '40x30x30' => array(array('c40l', 'subcl'), array('c30l', 'subc'), array('c30r', 'subcr')), '30x40x30' => array(array('c30l', 'subcl'), array('c40l', 'subc'), array('c30r', 'subcr')), '30x30x40' => array(array('c30l', 'subcl'), array('c30l', 'subc'), array('c40r', 'subcr')), '20x40x40' => array(array('c20l', 'subcl'), array('c40l', 'subc'), array('c40r', 'subcr')), '40x20x40' => array(array('c40l', 'subcl'), array('c20l', 'subc'), array('c40r', 'subcr')), '40x40x20' => array(array('c40l', 'subcl'), array('c40l', 'subc'), array('c20r', 'subcr')), '85x15' => array(array('c85l', 'subcl'), array('c15r', 'subcr')), '80x20' => array(array('c80l', 'subcl'), array('c20r', 'subcr')), '75x25' => array(array('c75l', 'subcl'), array('c25r', 'subcr')), '70x30' => array(array('c70l', 'subcl'), array('c30r', 'subcr')), '66x33' => array(array('c66l', 'subcl'), array('c33r', 'subcr')), '62x38' => array(array('c62l', 'subcl'), array('c38r', 'subcr')), '60x40' => array(array('c60l', 'subcl'), array('c40r', 'subcr')), '55x45' => array(array('c55l', 'subcl'), array('c45r', 'subcr')), '50x50' => array(array('c50l', 'subcl'), array('c50r', 'subcr')), '45x55' => array(array('c45l', 'subcl'), array('c55r', 'subcr')), '40x60' => array(array('c40l', 'subcl'), array('c60r', 'subcr')), '38x62' => array(array('c38l', 'subcl'), array('c62r', 'subcr')), '33x66' => array(array('c33l', 'subcl'), array('c66r', 'subcr')), '30x70' => array(array('c30l', 'subcl'), array('c70r', 'subcr')), '25x75' => array(array('c25l', 'subcl'), array('c75r', 'subcr')), '20x80' => array(array('c20l', 'subcl'), array('c80r', 'subcr')), '15x85' => array(array('c15l', 'subcl'), array('c85r', 'subcr')))), 'yaml4' => array('label' => 'YAML 4 Standard', 'scclass' => 'ym-grid', 'equalize' => 'ym-equalize', 'inside' => \true, 'gap' => \true, 'files' => array('css' => 'system/modules/Subcolumns/assets/yaml4/subcols.css||static', 'ie' => 'system/modules/Subcolumns/assets/yaml4/subcolsIEHacks.css'), 'sets' => array('20x20x20x20x20' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gr', 'ym-gbox-right')), '50x16x16x16' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g16 ym-gl', 'ym-gbox'), array('ym-g16 ym-gl', 'ym-gbox'), array('ym-g16 ym-gr', 'ym-gbox-right')), '25x25x25x25' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '25x25x50' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g50 ym-gr', 'ym-gbox-right')), '25x50x25' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g50 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '50x25x25' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '40x40x20' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gl', 'ym-gbox'), array('ym-g20 ym-gr', 'ym-gbox-right')), '40x20x40' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g40 ym-gr', 'ym-gbox-right')), '20x40x40' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gl', 'ym-gbox'), array('ym-g40 ym-gr', 'ym-gbox-right')), '33x33x33' => array(array('ym-g33 ym-gl', 'ym-gbox-left'), array('ym-g33 ym-gl', 'ym-gbox'), array('ym-g33 ym-gr', 'ym-gbox-right')), '85x15' => array(array('ym-g85 ym-gl', 'ym-gbox-left'), array('ym-g15 ym-gr', 'ym-gbox-right')), '80x20' => array(array('ym-g80 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gr', 'ym-gbox-right')), '75x25' => array(array('ym-g75 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gr', 'ym-gbox-right')), '70x30' => array(array('ym-g70 ym-gl', 'ym-gbox-left'), array('ym-g30 ym-gr', 'ym-gbox-right')), '66x33' => array(array('ym-g66 ym-gl', 'ym-gbox-left'), array('ym-g33 ym-gr', 'ym-gbox-right')), '65x35' => array(array('ym-g65 ym-gl', 'ym-gbox-left'), array('ym-g35 ym-gr', 'ym-gbox-right')), '60x40' => array(array('ym-g60 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gr', 'ym-gbox-right')), '55x45' => array(array('ym-g55 ym-gl', 'ym-gbox-left'), array('ym-g45 ym-gr', 'ym-gbox-right')), '50x50' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g50 ym-gr', 'ym-gbox-right')), '45x55' => array(array('ym-g45 ym-gl', 'ym-gbox-left'), array('ym-g55 ym-gr', 'ym-gbox-right')), '40x60' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g60 ym-gr', 'ym-gbox-right')), '35x65' => array(array('ym-g35 ym-gl', 'ym-gbox-left'), array('ym-g65 ym-gr', 'ym-gbox-right')), '33x66' => array(array('ym-g33 ym-gl', 'ym-gbox-left'), array('ym-g66 ym-gr', 'ym-gbox-right')), '30x70' => array(array('ym-g30 ym-gl', 'ym-gbox-left'), array('ym-g70 ym-gr', 'ym-gbox-right')), '25x75' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g75 ym-gr', 'ym-gbox-right')), '20x80' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g80 ym-gr', 'ym-gbox-right')), '15x85' => array(array('ym-g15 ym-gl', 'ym-gbox-left'), array('ym-g85 ym-gr', 'ym-gbox-right')))), 'yaml4_additional' => array('label' => 'YAML 4 Erweitert', 'scclass' => 'ym-grid', 'equalize' => 'ym-equalize', 'inside' => \true, 'gap' => \true, 'files' => array('css' => 'system/modules/Subcolumns/assets/yaml4/subcols_extended.css||static'), 'sets' => array('20x20x20x20x20' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g20 ym-gr', 'ym-gbox-right')), '50x16x16x16' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g16 ym-gl', 'ym-gbox'), array('ym-g16 ym-gl', 'ym-gbox'), array('ym-g16 ym-gr', 'ym-gbox-right')), '25x25x25x25' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '25x25x50' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g50 ym-gr', 'ym-gbox-right')), '25x50x25' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g50 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '50x25x25' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gl', 'ym-gbox'), array('ym-g25 ym-gr', 'ym-gbox-right')), '40x40x20' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gl', 'ym-gbox'), array('ym-g20 ym-gr', 'ym-gbox-right')), '40x20x40' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gl', 'ym-gbox'), array('ym-g40 ym-gr', 'ym-gbox-right')), '20x40x40' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gl', 'ym-gbox'), array('ym-g40 ym-gr', 'ym-gbox-right')), '33x33x33' => array(array('ym-g33 ym-gl', 'ym-gbox-left'), array('ym-g33 ym-gl', 'ym-gbox'), array('ym-g33 ym-gr', 'ym-gbox-right')), '85x15' => array(array('ym-g85 ym-gl', 'ym-gbox-left'), array('ym-g15 ym-gr', 'ym-gbox-right')), '80x20' => array(array('ym-g80 ym-gl', 'ym-gbox-left'), array('ym-g20 ym-gr', 'ym-gbox-right')), '75x25' => array(array('ym-g75 ym-gl', 'ym-gbox-left'), array('ym-g25 ym-gr', 'ym-gbox-right')), '70x30' => array(array('ym-g70 ym-gl', 'ym-gbox-left'), array('ym-g30 ym-gr', 'ym-gbox-right')), '66x33' => array(array('ym-g66 ym-gl', 'ym-gbox-left'), array('ym-g33 ym-gr', 'ym-gbox-right')), '65x35' => array(array('ym-g65 ym-gl', 'ym-gbox-left'), array('ym-g35 ym-gr', 'ym-gbox-right')), '60x40' => array(array('ym-g60 ym-gl', 'ym-gbox-left'), array('ym-g40 ym-gr', 'ym-gbox-right')), '55x45' => array(array('ym-g55 ym-gl', 'ym-gbox-left'), array('ym-g45 ym-gr', 'ym-gbox-right')), '50x50' => array(array('ym-g50 ym-gl', 'ym-gbox-left'), array('ym-g50 ym-gr', 'ym-gbox-right')), '45x55' => array(array('ym-g45 ym-gl', 'ym-gbox-left'), array('ym-g55 ym-gr', 'ym-gbox-right')), '40x60' => array(array('ym-g40 ym-gl', 'ym-gbox-left'), array('ym-g60 ym-gr', 'ym-gbox-right')), '35x65' => array(array('ym-g35 ym-gl', 'ym-gbox-left'), array('ym-g65 ym-gr', 'ym-gbox-right')), '33x66' => array(array('ym-g33 ym-gl', 'ym-gbox-left'), array('ym-g66 ym-gr', 'ym-gbox-right')), '30x70' => array(array('ym-g30 ym-gl', 'ym-gbox-left'), array('ym-g70 ym-gr', 'ym-gbox-right')), '25x75' => array(array('ym-g25 ym-gl', 'ym-gbox-left'), array('ym-g75 ym-gr', 'ym-gbox-right')), '20x80' => array(array('ym-g20 ym-gl', 'ym-gbox-left'), array('ym-g80 ym-gr', 'ym-gbox-right')), '15x85' => array(array('ym-g15 ym-gl', 'ym-gbox-left'), array('ym-g85 ym-gr', 'ym-gbox-right')))));
}
namespace {
// Add back end modules
$GLOBALS['BE_MOD']['content']['faq'] = array('tables' => array('tl_faq_category', 'tl_faq'));
// Front end modules
$GLOBALS['FE_MOD']['faq'] = array('faqlist' => \Contao\ModuleFaqList::class, 'faqreader' => \Contao\ModuleFaqReader::class, 'faqpage' => \Contao\ModuleFaqPage::class);
// Style sheet
if (\defined('TL_MODE') && \TL_MODE == 'BE') {
$GLOBALS['TL_CSS'][] = 'bundles/contaofaq/faq.min.css|static';
}
// Register hooks
$GLOBALS['TL_HOOKS']['getSearchablePages'][] = array(\Contao\ModuleFaq::class, 'getSearchablePages');
// Add permissions
$GLOBALS['TL_PERMISSIONS'][] = 'faqs';
$GLOBALS['TL_PERMISSIONS'][] = 'faqp';
// Models
$GLOBALS['TL_MODELS']['tl_faq_category'] = \Contao\FaqCategoryModel::class;
$GLOBALS['TL_MODELS']['tl_faq'] = \Contao\FaqModel::class;
}
namespace {
// Add the "haste_undo" operation to "undo" module
$GLOBALS['BE_MOD']['system']['undo']['haste_undo'] = [\Codefog\HasteBundle\UndoManager::class, 'onUndoCallback'];
}
namespace {
$GLOBALS['BE_FFL']['dcaWizard'] = \Terminal42\DcawizardBundle\Widget\DcaWizard::class;
$GLOBALS['BE_FFL']['dcaWizardMultilingual'] = \Terminal42\DcawizardBundle\Widget\DcaWizardMultilingual::class;
}
namespace {
// Add content element
$GLOBALS['TL_CTE']['includes']['comments'] = \Contao\ContentComments::class;
// Front end modules
$GLOBALS['FE_MOD']['application']['comments'] = \Contao\ModuleComments::class;
// Back end modules
$GLOBALS['BE_MOD']['content']['comments'] = array('tables' => array('tl_comments'), 'stylesheet' => 'bundles/contaocomments/comments.min.css');
// Cron jobs
$GLOBALS['TL_CRON']['daily']['purgeCommentSubscriptions'] = array(\Contao\Comments::class, 'purgeSubscriptions');
// Models
$GLOBALS['TL_MODELS']['tl_comments'] = \Contao\CommentsModel::class;
$GLOBALS['TL_MODELS']['tl_comments_notify'] = \Contao\CommentsNotifyModel::class;
}
namespace {
/**
* Contao Open Source CMS
*
* Copyright (c) 2005-2014 Leo Feyer
*
* @package novo_margin_before_after
*/
}
namespace {
// Custom backend CSS (w25, w33)
if (\TL_MODE === 'BE') {
$GLOBALS['TL_CSS'][] = 'system/modules/hideaway/assets/css/backend.css';
}
$GLOBALS['hideaway'] = array();
$GLOBALS['hideaway']['hotel_reader_id'] = 17;
$GLOBALS['hideaway']['travel_reader_id'] = 18;
$GLOBALS['hideaway']['combi_reader_id'] = 20;
$GLOBALS['hideaway']['trip_reader_id'] = 19;
$GLOBALS['hideaway']['country_reader_url'] = 'land/';
$GLOBALS['hideaway']['region_reader_url'] = 'region/';
$GLOBALS['hideaway']['types'] = array('trip' => array('title' => 'Ausflug'), 'hotel' => array('title' => 'Hotel'), 'combi' => array('title' => 'Kombinationsreise'), 'travel' => array('title' => 'Rundreise'));
/**
* Contao Open Source CMS
*
* Copyright (c) 2005-2014 Leo Feyer
*
* @package hideaway
* @author hideaway
* @license hideaway
* @copyright hideaway
*/
/**
* BACK END MODULES
*
* Back end modules are stored in a global array called "BE_MOD". You can add
* your own modules by adding them to the array.
*
* $GLOBALS['BE_MOD'] = array
* (
* 'group_1' => array
* (
* 'module_1' => array
* (
* 'tables' => array('table_1', 'table_2'),
* 'callback' => 'ClassName',
* 'key' => array('Class', 'method'),
* 'icon' => 'path/to/icon.gif',
* 'stylesheet' => 'path/to/stylesheet.css',
* 'javascript' => 'path/to/javascript.js'
* )
* )
* );
*
* Not all of the keys mentioned above (like "tables", "key", "callback" etc.)
* have to be set. Take a look at the system/modules/core/config/config.php
* file to see how back end modules are configured.
*/
$i = \array_search('design', \array_keys($GLOBALS['BE_MOD']));
$GLOBALS['BE_MOD'] = \array_merge(\array_slice($GLOBALS['BE_MOD'], 0, $i), array('Hideaway' => array('Features' => array('tables' => array('tl_hideaway_feature'), 'icon' => 'system/modules/hideaway/assets/images/features.png'), 'Zielgruppen' => array('tables' => array('tl_hideaway_target'), 'icon' => 'system/modules/hideaway/assets/images/target.png'), 'Erlebnisse' => array('tables' => array('tl_hideaway_experience'), 'icon' => 'system/modules/hideaway/assets/images/experience.png'), 'Countries' => array('tables' => array('tl_hideaway_country', 'tl_content'), 'icon' => 'system/modules/hideaway/assets/images/country.png'), 'Regions' => array('tables' => array('tl_hideaway_region', 'tl_content'), 'icon' => 'system/modules/hideaway/assets/images/region.png'), 'Hotels' => array('tables' => array('tl_hideaway_hotel'), 'icon' => 'system/modules/hideaway/assets/images/hotel.png'), 'Travels' => array('tables' => array('tl_hideaway_travel'), 'icon' => 'system/modules/hideaway/assets/images/travel.png'), 'Trips' => array('tables' => array('tl_hideaway_trip'), 'icon' => 'system/modules/hideaway/assets/images/trip.png'), 'Combis' => array('tables' => array('tl_hideaway_combis'), 'icon' => 'system/modules/hideaway/assets/images/combis.png'), 'Kundenbewertungen' => array('tables' => array('tl_hideaway_testimonial'), 'icon' => 'system/modules/hideaway/assets/images/features.png'))), \array_slice($GLOBALS['BE_MOD'], $i));
/**
* FRONT END MODULES
*
* Front end modules are stored in a global array called "FE_MOD". You can add
* your own modules by adding them to the array.
*
* $GLOBALS['FE_MOD'] = array
* (
* 'group_1' => array
* (
* 'module_1' => 'ModuleClass1',
* 'module_2' => 'ModuleClass2'
* )
* );
*
* The keys (like "module_1") are the module names, which are e.g. stored in the
* database and used to find the corresponding translations. The values (like
* "ModuleClass1") are the names of the classes, which will be loaded when the
* module is rendered. The class "ModuleClass1" has to be stored in a file
* named "ModuleClass1.php" in your module folder.
*/
$GLOBALS['FE_MOD']['Hideaway']['Navigation'] = 'CeHideawayNavigation';
$GLOBALS['FE_MOD']['Hideaway']['NavigationExperience'] = 'CeHideawayNavigationExperience';
$GLOBALS['FE_MOD']['Hideaway']['ExperienceList'] = 'CeHideawayExperienceList';
$GLOBALS['FE_MOD']['Hideaway']['CountryList'] = 'CeHideawayCountryList';
$GLOBALS['FE_MOD']['Hideaway']['TargetList'] = 'CeHideawayTargetList';
$GLOBALS['FE_MOD']['Hideaway']['Filter'] = 'CeHideawayFilter';
/**
* CONTENT ELEMENTS
*
* Content elements are stored in a global array called "TL_CTE". You can add
* your own content elements by adding them to the array.
*
* $GLOBALS['TL_CTE'] = array
* (
* 'group_1' => array
* (
* 'cte_1' => 'ContentClass1',
* 'cte_2' => 'ContentClass2'
* )
* );
*
* The keys (like "cte_1") are the element names, which are e.g. stored in the
* database and used to find the corresponding translations. The values (like
* "ContentClass1") are the names of the classes, which will be loaded when the
* element is rendered. The class "ContentClass1" has to be stored in a file
* named "ContentClass1.php" in your module folder.
*/
$GLOBALS['TL_CTE']['Hideaway']['List'] = 'CeHideawayList';
$GLOBALS['TL_CTE']['Hideaway']['ListHeader'] = 'CeHideawayListHeader';
$GLOBALS['TL_CTE']['Hideaway']['HotelReader'] = 'CeHideawayHotelReader';
$GLOBALS['TL_CTE']['Hideaway']['TravelReader'] = 'CeHideawayTravelReader';
$GLOBALS['TL_CTE']['Hideaway']['CombiReader'] = 'CeHideawayCombiReader';
$GLOBALS['TL_CTE']['Hideaway']['TripReader'] = 'CeHideawayTripReader';
$GLOBALS['TL_CTE']['Hideaway']['CountryHeaderReader'] = 'CeHideawayCountryHeaderReader';
$GLOBALS['TL_CTE']['Hideaway']['CountryContentReader'] = 'CeHideawayCountryContentReader';
$GLOBALS['TL_CTE']['Hideaway']['RegionHeaderReader'] = 'CeHideawayRegionHeaderReader';
$GLOBALS['TL_CTE']['Hideaway']['RegionContentReader'] = 'CeHideawayRegionContentReader';
$GLOBALS['TL_CTE']['Hideaway']['Watchlist'] = 'CeHideawayWatchlist';
$GLOBALS['TL_CTE']['Hideaway']['Testimonials'] = 'CeHideawayTestimonials';
/**
* BACK END FORM FIELDS
*
* Back end form fields are stored in a global array called "BE_FFL". You can
* add your own form fields by adding them to the array.
*
* $GLOBALS['BE_FFL'] = array
* (
* 'input' => 'FieldClass1',
* 'select' => 'FieldClass2'
* );
*
* The keys (like "input") are the field names, which are e.g. stored in the
* database and used to find the corresponding translations. The values (like
* "FieldClass1") are the names of the classes, which will be loaded when the
* field is rendered. The class "FieldClass1" has to be stored in a file named
* "FieldClass1.php" in your module folder.
*/
/**
* FRONT END FORM FIELDS
*
* Front end form fields are stored in a global array called "TL_FFL". You can
* add your own form fields by adding them to the array.
*
* $GLOBALS['TL_FFL'] = array
* (
* 'input' => 'FieldClass1',
* 'select' => 'FieldClass2'
* );
*
* The keys (like "input") are the field names, which are e.g. stored in the
* database and used to find the corresponding translations. The values (like
* "FieldClass1") are the names of the classes, which will be loaded when the
* field is rendered. The class "FieldClass1" has to be stored in a file named
* "FieldClass1.php" in your module folder.
*/
/**
* PAGE TYPES
*
* Page types are stored in a global array called "TL_PTY". You can add your own
* page types by adding them to the array.
*
* $GLOBALS['TL_PTY'] = array
* (
* 'type_1' => 'PageType1',
* 'type_2' => 'PageType2'
* );
*
* The keys (like "type_1") are the field names, which are e.g. stored in the
* database and used to find the corresponding translations. The values (like
* "PageType1") are the names of the classes, which will be loaded when the
* page is rendered. The class "PageType1" has to be stored in a file named
* "PageType1.php" in your module folder.
*/
/**
* MODEL MAPPINGS
*
* Model names are usually built from the table names, e.g. "tl_user_group"
* becomes "UserGroupModel". There might be situations, however, where you need
* to specify a custom mapping, e.g. when you are using nested namespaces.
*
* $GLOBALS['TL_MODELS'] = array
* (
* 'tl_user' => 'Vendor\Application\UserModel',
* 'tl_user_group' => 'Vendor\Application\UserGroupModel'
* );
*
* You can register your mappings in the config.php file of your extension.
*/
/**
* MAINTENANCE MODULES
*
* Maintenance modules are stored in a global array called "TL_MAINTENANCE". You
* can add your own maintenance modules by adding them to the array.
*
* $GLOBALS['TL_MAINTENANCE'] = array
* (
* 'ClearCache',
* 'RebuildSearchIndex'
* );
*
* Take a look at the system/modules/core/classes/PurgeData.php file to see how
* maintenance modules are set up. The class "ClearCache" has to be stored in a
* file named "ClearCache.php" in your module folder.
*/
/**
* PURGE JOBS
*
* Purge jobs are stored in a global array called "TL_PURGE". You can add your
* own purge jobs by adding them to the array.
*
* $GLOBALS['TL_PURGE'] = array
* (
* 'job_1' => array
* (
* 'tables' => array
* (
* 'index' => array
* (
* 'callback' => array('Automator', 'purgeSearchTables'),
* 'affected' => array('tl_search', 'tl_search_index')
* ),
* )
* );
*
* There are three categories: "tables" stores jobs which truncate database
* tables, "folders" stores jobs which purge folders and "custom" stores jobs
* which only trigger a callback function.
*/
/**
* CRON JOBS
*
* Cron jobs are stored in a global array called "TL_CRON". You can add your own
* cron jobs by adding them to the array.
*
* $GLOBALS['TL_CRON'] = array
* (
* 'monthly' => array
* (
* array('Automator', 'purgeImageCache')
* ),
* 'weekly' => array(),
* 'daily' => array(),
* 'hourly' => array(),
* 'minutely' => array()
* );
*
* Note that this is rather a command scheduler than a cron job, which does not
* guarantee an exact execution time. You can replace the command scheduler with
* a real cron job though.
*/
/**
* HOOKS
*
* Hooks are stored in a global array called "TL_HOOKS". You can register your
* own functions by adding them to the array.
*
* $GLOBALS['TL_HOOKS'] = array
* (
* 'hook_1' => array
* (
* array('MyClass', 'myPostLogin'),
* array('MyClass', 'myPostLogout')
* )
* );
*
* Hooks allow you to add functionality to the core without having to modify the
* source code by registering callback functions to be executed on a particular
* event. For more information see https://contao.org/manual.html.
*/
$GLOBALS['TL_HOOKS']['generateFrontendUrl'][] = array('URLBuilder', 'removeItemFromUrl');
$GLOBALS['TL_HOOKS']['getPageIdFromUrl'][] = array('URLBuilder', 'addItemToUrl');
$GLOBALS['TL_HOOKS']['replaceInsertTags'][] = array('MyInserttags', 'myReplaceInserttags');
/**
* AUTO ITEMS
*
* Auto items are stored in a global array called "TL_AUTO_ITEM". You can
* register your own auto items by adding them to the array.
*
* $GLOBALS['TL_AUTO_ITEM'] = array('items', 'events');
*
* Auto items are keywords, which are used as parameters by certain modules.
* When rebuilding the search index URLs, Contao needs to know about these
* keywords so it can handle them properly.
*/
}
namespace {
/*
* Add the backend module if allowed.
*/
if (\Contao\System::getContainer()->getParameter('terminal42_url_rewrite.backend_management')) {
$GLOBALS['BE_MOD']['system']['url_rewrites'] = ['tables' => ['tl_url_rewrite'], 'qrCode' => ['terminal42_url_rewrite.qr_code_controller', 'index']];
}
/*
* Hooks
*/
$GLOBALS['TL_HOOKS']['insertTagFlags'][] = ['terminal42_url_rewrite.listener.insert_tags', 'onInsertTagFlags'];
}
namespace {
// Back end modules
$GLOBALS['BE_MOD']['content']['news'] = array('tables' => array('tl_news_archive', 'tl_news', 'tl_news_feed', 'tl_content'), 'table' => array(\Contao\TableWizard::class, 'importTable'), 'list' => array(\Contao\ListWizard::class, 'importList'));
// Front end modules
$GLOBALS['FE_MOD']['news'] = array('newslist' => \Contao\ModuleNewsList::class, 'newsreader' => \Contao\ModuleNewsReader::class, 'newsarchive' => \Contao\ModuleNewsArchive::class, 'newsmenu' => \Contao\ModuleNewsMenu::class);
// Cron jobs
$GLOBALS['TL_CRON']['daily']['generateNewsFeeds'] = array(\Contao\News::class, 'generateFeeds');
// Style sheet
if (\defined('TL_MODE') && \TL_MODE == 'BE') {
$GLOBALS['TL_CSS'][] = 'bundles/contaonews/news.min.css|static';
}
// Register hooks
$GLOBALS['TL_HOOKS']['removeOldFeeds'][] = array(\Contao\News::class, 'purgeOldFeeds');
$GLOBALS['TL_HOOKS']['getSearchablePages'][] = array(\Contao\News::class, 'getSearchablePages');
$GLOBALS['TL_HOOKS']['generateXmlFiles'][] = array(\Contao\News::class, 'generateFeeds');
// Add permissions
$GLOBALS['TL_PERMISSIONS'][] = 'news';
$GLOBALS['TL_PERMISSIONS'][] = 'newp';
$GLOBALS['TL_PERMISSIONS'][] = 'newsfeeds';
$GLOBALS['TL_PERMISSIONS'][] = 'newsfeedp';
// Models
$GLOBALS['TL_MODELS']['tl_news_archive'] = \Contao\NewsArchiveModel::class;
$GLOBALS['TL_MODELS']['tl_news_feed'] = \Contao\NewsFeedModel::class;
$GLOBALS['TL_MODELS']['tl_news'] = \Contao\NewsModel::class;
}
namespace {
\Contao\ArrayUtil::arrayInsert($GLOBALS['BE_MOD'], 1, ['leads' => ['lead' => ['tables' => ['tl_lead', 'tl_lead_data']]]]);
$GLOBALS['BE_MOD']['content']['form']['tables'][] = 'tl_lead_export';
$GLOBALS['TL_PERMISSIONS'][] = 'leadp';
}
namespace {
// Front end module
$GLOBALS['FE_MOD']['application']['listing'] = \Contao\ModuleListing::class;
}
namespace {
$GLOBALS['BE_MOD']['notification_center'] = ['nc_notifications' => ['tables' => ['tl_nc_notification', 'tl_nc_message', 'tl_nc_language']], 'nc_gateways' => ['tables' => ['tl_nc_gateway']]];
}
namespace {
// Back end modules
$GLOBALS['BE_MOD']['content']['calendar'] = array('tables' => array('tl_calendar', 'tl_calendar_events', 'tl_calendar_feed', 'tl_content'), 'table' => array(\Contao\TableWizard::class, 'importTable'), 'list' => array(\Contao\ListWizard::class, 'importList'));
// Front end modules
$GLOBALS['FE_MOD']['events'] = array('calendar' => \Contao\ModuleCalendar::class, 'eventreader' => \Contao\ModuleEventReader::class, 'eventlist' => \Contao\ModuleEventlist::class, 'eventmenu' => \Contao\ModuleEventMenu::class);
// Cron jobs
$GLOBALS['TL_CRON']['daily']['generateCalendarFeeds'] = array(\Contao\Calendar::class, 'generateFeeds');
// Style sheet
if (\defined('TL_MODE') && \TL_MODE == 'BE') {
$GLOBALS['TL_CSS'][] = 'bundles/contaocalendar/calendar.min.css|static';
}
// Register hooks
$GLOBALS['TL_HOOKS']['removeOldFeeds'][] = array(\Contao\Calendar::class, 'purgeOldFeeds');
$GLOBALS['TL_HOOKS']['getSearchablePages'][] = array(\Contao\Calendar::class, 'getSearchablePages');
$GLOBALS['TL_HOOKS']['generateXmlFiles'][] = array(\Contao\Calendar::class, 'generateFeeds');
// Add permissions
$GLOBALS['TL_PERMISSIONS'][] = 'calendars';
$GLOBALS['TL_PERMISSIONS'][] = 'calendarp';
$GLOBALS['TL_PERMISSIONS'][] = 'calendarfeeds';
$GLOBALS['TL_PERMISSIONS'][] = 'calendarfeedp';
// Models
$GLOBALS['TL_MODELS']['tl_calendar_events'] = \Contao\CalendarEventsModel::class;
$GLOBALS['TL_MODELS']['tl_calendar_feed'] = \Contao\CalendarFeedModel::class;
$GLOBALS['TL_MODELS']['tl_calendar'] = \Contao\CalendarModel::class;
}
namespace {
// Back end modules
$GLOBALS['BE_MOD']['content']['newsletter'] = array('tables' => array('tl_newsletter_channel', 'tl_newsletter', 'tl_newsletter_recipients'), 'send' => array(\Contao\Newsletter::class, 'send'), 'import' => array(\Contao\Newsletter::class, 'importRecipients'), 'stylesheet' => 'bundles/contaonewsletter/newsletter.min.css');
// Front end modules
$GLOBALS['FE_MOD']['newsletter'] = array('subscribe' => \Contao\ModuleSubscribe::class, 'unsubscribe' => \Contao\ModuleUnsubscribe::class, 'newsletterlist' => \Contao\ModuleNewsletterList::class, 'newsletterreader' => \Contao\ModuleNewsletterReader::class);
// Register hooks
$GLOBALS['TL_HOOKS']['createNewUser'][] = array(\Contao\Newsletter::class, 'createNewUser');
$GLOBALS['TL_HOOKS']['activateAccount'][] = array(\Contao\Newsletter::class, 'activateAccount');
$GLOBALS['TL_HOOKS']['getSearchablePages'][] = array(\Contao\Newsletter::class, 'getSearchablePages');
$GLOBALS['TL_HOOKS']['closeAccount'][] = array(\Contao\Newsletter::class, 'removeSubscriptions');
// Add permissions
$GLOBALS['TL_PERMISSIONS'][] = 'newsletters';
$GLOBALS['TL_PERMISSIONS'][] = 'newsletterp';
// Cron jobs
$GLOBALS['TL_CRON']['daily']['purgeNewsletterSubscriptions'] = array(\Contao\Newsletter::class, 'purgeSubscriptions');
// Models
$GLOBALS['TL_MODELS']['tl_newsletter_channel'] = \Contao\NewsletterChannelModel::class;
$GLOBALS['TL_MODELS']['tl_newsletter_deny_list'] = \Contao\NewsletterDenyListModel::class;
$GLOBALS['TL_MODELS']['tl_newsletter'] = \Contao\NewsletterModel::class;
$GLOBALS['TL_MODELS']['tl_newsletter_recipients'] = \Contao\NewsletterRecipientsModel::class;
}
namespace {
$GLOBALS['TL_HOOKS']['parseFrontendTemplate'][] = array('SubcolumnsBootstrap', 'parseFrontendTemplateHook');
$GLOBALS['TL_SUBCL']['bootstrap'] = array('label' => 'Bootstrap', 'scclass' => 'row', 'equalize' => \false, 'inside' => \false, 'gap' => \false, 'files' => array(), 'sets' => array(
// two columns
'2/10' => array(array('col-lg-4', 'inside'), array('col-lg-10', 'inside')),
// ~15x85
'4/8' => array(array('col-lg-4', 'inside'), array('col-lg-6"', 'inside')),
// ~33x66
'6/6' => array(array('col-lg-6', 'inside'), array('col-lg-6', 'inside')),
// ~50x50
'8/4' => array(array('col-lg-8', 'inside'), array('col-lg-4', 'inside')),
// ~66x33
'10/2' => array(array('col-lg-10', 'inside'), array('col-lg-2', 'inside')),
// ~85x15
// three columns
'4/4/4' => array(array('col-lg-4', 'inside'), array('col-lg-4', 'inside'), array('col-lg-4', 'inside')),
// ~33x33x33
// four columns
'3/3/3/3' => array(array('col-lg-3', 'inside'), array('col-lg-3', 'inside'), array('col-lg-3', 'inside'), array('col-lg-3
', 'inside')),
));
}
namespace {
/**
* Contao Open Source CMS
*
* Copyright (c) 2005-2015 Leo Feyer
*
* @license LGPL-3.0+
*/
// Prefix
\define('DMA_EG_PREFIX', 'dma_eg_');
// Backend module definition
\array_insert($GLOBALS['BE_MOD']['design'], 1, array('dma_eg' => array('tables' => array('tl_dma_eg', 'tl_dma_eg_fields'), 'icon' => 'system/modules/dma_elementgenerator/html/icon.png', 'javascript' => 'system/modules/dma_elementgenerator/html/tl_dma_eg-uncompressed.js')));
// include the localconfig since Contao 3
include \TL_ROOT . '/system/config/localconfig.php';
// Get defined frontend modules from configuration
if ($GLOBALS['TL_CONFIG']['dma_eg_modules'] ?? \null) {
$arrModules = \unserialize($GLOBALS['TL_CONFIG']['dma_eg_modules']);
} else {
$arrModules = array();
}
// Get defined Contentelements from configuration
if ($GLOBALS['TL_CONFIG']['dma_eg_content'] ?? \null) {
$arrContent = \unserialize($GLOBALS['TL_CONFIG']['dma_eg_content']);
} else {
$arrContent = array();
}
// Include modules in list
foreach ($arrModules as $strCategory => $arrElements) {
foreach ($arrElements as $strElement) {
$GLOBALS['FE_MOD'][$strCategory][\DMA_EG_PREFIX . $strElement] = 'DMAElementGeneratorModule';
}
}
// Include Contentelements in list
foreach ($arrContent as $strCategory => $arrElements) {
foreach ($arrElements as $strElement) {
$GLOBALS['TL_CTE'][$strCategory][\DMA_EG_PREFIX . $strElement] = 'DMAElementGeneratorContent';
}
}
// Define dummy data widget
$GLOBALS['BE_FFL']['dma_eg_hidden'] = 'DMAElementGeneratorHiddenWidget';
$GLOBALS['BE_FFL']['dma_eg_combobox'] = 'DMAElementGeneratorComboBox';
$GLOBALS['DMA_EG']['EL_COUNT'] = array();
// Hooks
if (\version_compare(\VERSION . \BUILD, '3.10', '>=') && \version_compare(\VERSION . \BUILD, '3.20', '<')) {
$GLOBALS['TL_HOOKS']['executePostActions'][] = array('DMAElementGenerator', 'fixedAjaxRequest');
}
$GLOBALS['TL_HOOKS']['loadLanguageFile'][] = array('DMA\\DMAElementGenerator', 'dmaEgLoadLanguageFile');
}