I.wp-block-home-link .wp-element-caption,.wp-block-home-link .wp-block-audio figcaption,.wp-block-home-link .wp-block-embed figcaption,.wp-block-home-link .wp-block-gallery figcaption,.wp-block-home-link .wp-block-image figcaption,.wp-block-home-link .wp-block-table figcaption,.wp-block-home-link .wp-block-video figcaption-.wp-block-image .wp-element-caption,.wp-block-image .wp-block-audio figcaption,.wp-block-image .wp-block-embed figcaption,.wp-block-image .wp-block-gallery figcaption,.wp-block-image .wp-block-image figcaption,.wp-block-image .wp-block-table figcaption,.wp-block-image .wp-block-video figcaption^.wp-block-latest-posts .wp-element-caption,.wp-block-latest-posts .wp-block-audio figcaption,.wp-block-latest-posts .wp-block-embed figcaption,.wp-block-latest-posts .wp-block-gallery figcaption,.wp-block-latest-posts .wp-block-image figcaption,.wp-block-latest-posts .wp-block-table figcaption,.wp-block-latest-posts .wp-block-video figcaptionB.wp-block-loginout .wp-element-caption,.wp-block-loginout .wp-block-audio figcaption,.wp-block-loginout .wp-block-embed figcaption,.wp-block-loginout .wp-block-gallery figcaption,.wp-block-loginout .wp-block-image figcaption,.wp-block-loginout .wp-block-table figcaption,.wp-block-loginout .wp-block-video figcaptionP.wp-block-navigation .wp-element-caption,.wp-block-navigation .wp-block-audio figcaption,.wp-block-navigation .wp-block-embed figcaption,.wp-block-navigation .wp-block-gallery figcaption,.wp-block-navigation .wp-block-image figcaption,.wp-block-navigation .wp-block-table figcaption,.wp-block-navigation .wp-block-video figcaptionI.wp-block-page-list .wp-element-caption,.wp-block-page-list .wp-block-audio figcaption,.wp-block-page-list .wp-block-embed figcaption,.wp-block-page-list .wp-block-gallery figcaption,.wp-block-page-list .wp-block-image figcaption,.wp-block-page-list .wp-block-table figcaption,.wp-block-page-list .wp-block-video figcaption;.wp-block-pattern .wp-element-caption,.wp-block-pattern .wp-block-audio figcaption,.wp-block-pattern .wp-block-embed figcaption,.wp-block-pattern .wp-block-gallery figcaption,.wp-block-pattern .wp-block-image figcaption,.wp-block-pattern .wp-block-table figcaption,.wp-block-pattern .wp-block-video figcaptionW.wp-block-post-author .wp-element-caption,.wp-block-post-author .wp-block-audio figcaption,.wp-block-post-author .wp-block-embed figcaption,.wp-block-post-author .wp-block-gallery figcaption,.wp-block-post-author .wp-block-image figcaption,.wp-block-post-author .wp-block-table figcaption,.wp-block-post-author .wp-block-video figcaption^.wp-block-post-content .wp-element-caption,.wp-block-post-content .wp-block-audio figcaption,.wp-block-post-content .wp-block-embed figcaption,.wp-block-post-content .wp-block-gallery figcaption,.wp-block-post-content .wp-block-image figcaption,.wp-block-post-content .wp-block-table figcaption,.wp-block-post-content .wp-block-video figcaptionI.wp-block-post-date .wp-element-caption,.wp-block-post-date .wp-block-audio figcaption,.wp-block-post-date .wp-block-embed figcaption,.wp-block-post-date .wp-block-gallery figcaption,.wp-block-post-date .wp-block-image figcaption,.wp-block-post-date .wp-block-table figcaption,.wp-block-post-date .wp-block-video figcaption^.wp-block-post-excerpt .wp-element-caption,.wp-block-post-excerpt .wp-block-audio figcaption,.wp-block-post-excerpt .wp-block-embed figcaption,.wp-block-post-excerpt .wp-block-gallery figcaption,.wp-block-post-excerpt .wp-block-lass, '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 * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ /** * RockSolid Antispam configuration * * @author Martin Auswöger */ $GLOBALS['TL_FFL']['rocksolid_antispam'] = 'MadeYourDay\\RockSolidAntispam\\Form\\Captcha'; $GLOBALS['TL_HOOKS']['loadFormField'][] = array('MadeYourDay\\RockSolidAntispam\\Form\\Antispam', 'loadFormField'); } namespace { /** * Owlcarousel Extension for Contao Open Source CMS * * @copyright Copyright (c) 2017, Respinar * @author Respinar * @license http://opensource.org/licenses/lgpl-3.0.html LGPL * @link https://respinar.com/ */ \array_insert($GLOBALS['BE_MOD']['content'], 1, array('owlcarousel' => array('tables' => array('tl_owlcarousel', 'tl_owlcarousel_slide', 'tl_content'), 'icon' => 'system/modules/owlcarousel/assets/icon.png'))); /** * Register models */ $GLOBALS['TL_MODELS']['tl_owlcarousel'] = 'Respinar\\OwlCarousel\\Model\\OwlCarouselModel'; $GLOBALS['TL_MODELS']['tl_owlcarousel_slide'] = 'Respinar\\OwlCarousel\\Model\\OwlCarouselSlideModel'; /** * Front end modules */ $GLOBALS['FE_MOD']['application']['owlcarousel'] = 'Respinar\\OwlCarousel\\Frontend\\Module\\ModuleOwlCarousel'; /** * Content elements */ $GLOBALS['TL_CTE']['miscellaneous']['owlcarousel'] = 'Respinar\\OwlCarousel\\Frontend\\Element\\ContentOwlCarousel'; } namespace { /* * Cookiebar extension for Contao Open Source CMS * * Copyright (C) 2011-2018 Codefog * * @author Codefog * @author Kamil Kuzminski * @license MIT */ /** * Hooks. */ $GLOBALS['TL_HOOKS']['outputFrontendTemplate'][] = ['Codefog\\Cookiebar\\EventListener\\TemplateListener', 'onOutputFrontendTemplate']; } namespace { /** * Contao Open Source CMS */ /** * @file config.php * @author Sascha Weidner * @package sioweb.dsgvo * @copyright Sioweb, Sascha Weidner */ $GLOBALS['TL_FFL']['dsgvo'] = 'Sioweb\\Dsgvo\\Forms\\FormDsgvo'; $GLOBALS['TL_CSS'][] = 'bundles/siowebdsgvo/css/jquery.confirm.css|static'; $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/siowebdsgvo/js/jquery.confirm.js|static'; $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/siowebdsgvo/js/dsgvo.confirm.js|static'; $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/siowebdsgvo/js/loadDsgvo.js|static'; $GLOBALS['EFG']['storable_fields'][] = 'dsgvo'; } namespace { /** * bxslider Extension for Contao Open Source CMS * * @copyright Copyright (c) 2017, Respinar * @author Respinar * @license https://opensource.org/licenses/lgpl-3.0.html LGPL * @link https://respinar.com/ */ \array_insert($GLOBALS['BE_MOD']['content'], 1, array('bxslider' => array('tables' => array('tl_bxslider', 'tl_bxslider_slide'), 'icon' => 'system/modules/bxslider/assets/bxSlider.svg'))); /** * Register models */ $GLOBALS['TL_MODELS']['tl_bxslider'] = 'Respinar\\BxSlider\\Model\\BxSliderModel'; $GLOBALS['TL_MODELS']['tl_bxslider_slide'] = 'Respinar\\BxSlider\\Model\\BxSliderSlideModel'; /** * Front end modules */ $GLOBALS['FE_MOD']['miscellaneous']['bxslider'] = 'Respinar\\BxSlider\\Frontend\\Module\\ModuleBxSlider'; /** * Front end modules */ $GLOBALS['TL_CTE']['miscellaneous']['bxslider'] = 'Respinar\\BxSlider\\Frontend\\Element\\ContentBxSlider'; } 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-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package Contao Themes-Shop * @filesource config.php * @version 1.0.0 * @since 12.10.15 - 17:19 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['ctsvegasslider']['ctsvegassliderstart'] = '\\esit\\ctsvegasslider\\classes\\contao\\elements\\ContentCtsVegasSliderStart'; $GLOBALS['TL_CTE']['ctsvegasslider']['ctsvegassliderstop'] = '\\esit\\ctsvegasslider\\classes\\contao\\elements\\ContentCtsVegasSliderStop'; /** * 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. */ /** * 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. */ /** * CTS */ // Zuordnung der Umschläge für den Cts-Slider $GLOBALS['TL_WRAPPERS']['start'][] = 'ctsvegassliderstart'; $GLOBALS['TL_WRAPPERS']['stop'][] = 'ctsvegassliderstop'; // Zuordnung des JS-Templates zum öffnenden Slider-Inhaltselement. // $GLOBALS['CTS']['templats']['js']['ctssliderstart'] = 'js_ctsslider'; } 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 Open Source CMS * Copyright (C) 2005-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package Contao Themes-Shop * @filesource config.php * @version 1.0.0 * @since 21.09.15 - 15:44 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['cts']['ctsheaderimage'] = '\\esit\\ctsheaderimage\\classes\\contao\\elements\\ContentCtsHeaderimage'; /** * 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. */ /** * 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. */ /** * ================================= * Einstellungen: Contao Themes-Shop * ================================= */ $GLOBALS['CTS']['ctsheaderimage']['verticalalign']['options'] = array('texttop' => 'Text links oben', 'textmittig' => 'Text links mittig', 'textunten' => 'Text links unten', 'zentriert' => 'Text mittig zentriert'); $GLOBALS['CTS']['ctsheaderimage']['ctshlanimation']['options'] = array('noanimation' => 'No animation', 'bounce' => 'bounce', 'flash' => 'flash', 'pulse' => 'pulse', 'rubberBand' => 'rubberBand', 'shake' => 'shake', 'headShake' => 'headShake', 'swing' => 'swing', 'tada' => 'tada', 'wobble' => 'wobble', 'jello' => 'jello', 'bounceIn' => 'bounceIn', 'bounceInDown' => 'bounceInDown', 'bounceInLeft' => 'bounceInLeft', 'bounceInRight' => 'bounceInRight', 'bounceInUp' => 'bounceInUp', 'bounceOut' => 'bounceOut', 'bounceOutDown' => 'bounceOutDown', 'bounceOutLeft' => 'bounceOutLeft', 'bounceOutRight' => 'bounceOutRight', 'bounceOutUp' => 'bounceOutUp', 'fadeIn' => 'fadeIn', 'fadeInDown' => 'fadeInDown', 'fadeInDownBig' => 'fadeInDownBig', 'fadeInLeft' => 'fadeInLeft', 'fadeInLeftBig' => 'fadeInLeftBig', 'fadeInRight' => 'fadeInRight', 'fadeInRightBig' => 'fadeInRightBig', 'fadeInUp' => 'fadeInUp', 'fadeInUpBig' => 'fadeInUpBig', 'fadeOut' => 'fadeOut', 'fadeOutDown' => 'fadeOutDown', 'fadeOutDownBig' => 'fadeOutDownBig', 'fadeOutLeft' => 'fadeOutLeft', 'fadeOutLeftBig' => 'fadeOutLeftBig', 'fadeOutRight' => 'fadeOutRight', 'fadeOutRightBig' => 'fadeOutRightBig', 'fadeOutUp' => 'fadeOutUp', 'fadeOutUpBig' => 'fadeOutUpBig', 'flipInX' => 'flipInX', 'flipInY' => 'flipInY', 'flipOutX' => 'flipOutX', 'flipOutY' => 'flipOutY', 'lightSpeedIn' => 'lightSpeedIn', 'lightSpeedOut' => 'lightSpeedOut', 'rotateIn' => 'rotateIn', 'rotateInDownLeft' => 'rotateInDownLeft', 'rotateInDownRight' => 'rotateInDownRight', 'rotateInUpLeft' => 'rotateInUpLeft', 'rotateInUpRight' => 'rotateInUpRight', 'rotateOut' => 'rotateOut', 'rotateOutDownLeft' => 'rotateOutDownLeft', 'rotateOutDownRight' => 'rotateOutDownRight', 'rotateOutUpLeft' => 'rotateOutUpLeft', 'rotateOutUpRight' => 'rotateOutUpRight', 'hinge' => 'hinge', 'rollIn' => 'rollIn', 'rollOut' => 'rollOut', 'zoomIn' => 'zoomIn', 'zoomInDown' => 'zoomInDown', 'zoomInLeft' => 'zoomInLeft', 'zoomInRight' => 'zoomInRight', 'zoomInUp' => 'zoomInUp', 'zoomOut' => 'zoomOut', 'zoomOutDown' => 'zoomOutDown', 'zoomOutLeft' => 'zoomOutLeft', 'zoomOutRight' => 'zoomOutRight', 'zoomOutUp' => 'zoomOutUp', 'slideInDown' => 'slideInDown', 'slideInLeft' => 'slideInLeft', 'slideInRight' => 'slideInRight', 'slideInUp' => 'slideInUp', 'slideOutDown' => 'slideOutDown', 'slideOutLeft' => 'slideOutLeft', 'slideOutRight' => 'slideOutRight', 'slideOutUp' => 'slideOutUp'); $GLOBALS['CTS']['ctsheaderimage']['ctstxtanimation']['options'] = array('noanimation' => 'No animation', 'bounce' => 'bounce', 'flash' => 'flash', 'pulse' => 'pulse', 'rubberBand' => 'rubberBand', 'shake' => 'shake', 'headShake' => 'headShake', 'swing' => 'swing', 'tada' => 'tada', 'wobble' => 'wobble', 'jello' => 'jello', 'bounceIn' => 'bounceIn', 'bounceInDown' => 'bounceInDown', 'bounceInLeft' => 'bounceInLeft', 'bounceInRight' => 'bounceInRight', 'bounceInUp' => 'bounceInUp', 'bounceOut' => 'bounceOut', 'bounceOutDown' => 'bounceOutDown', 'bounceOutLeft' => 'bounceOutLeft', 'bounceOutRight' => 'bounceOutRight', 'bounceOutUp' => 'bounceOutUp', 'fadeIn' => 'fadeIn', 'fadeInDown' => 'fadeInDown', 'fadeInDownBig' => 'fadeInDownBig', 'fadeInLeft' => 'fadeInLeft', 'fadeInLeftBig' => 'fadeInLeftBig', 'fadeInRight' => 'fadeInRight', 'fadeInRightBig' => 'fadeInRightBig', 'fadeInUp' => 'fadeInUp', 'fadeInUpBig' => 'fadeInUpBig', 'fadeOut' => 'fadeOut', 'fadeOutDown' => 'fadeOutDown', 'fadeOutDownBig' => 'fadeOutDownBig', 'fadeOutLeft' => 'fadeOutLeft', 'fadeOutLeftBig' => 'fadeOutLeftBig', 'fadeOutRight' => 'fadeOutRight', 'fadeOutRightBig' => 'fadeOutRightBig', 'fadeOutUp' => 'fadeOutUp', 'fadeOutUpBig' => 'fadeOutUpBig', 'flipInX' => 'flipInX', 'flipInY' => 'flipInY', 'flipOutX' => 'flipOutX', 'flipOutY' => 'flipOutY', 'lightSpeedIn' => 'lightSpeedIn', 'lightSpeedOut' => 'lightSpeedOut', 'rotateIn' => 'rotateIn', 'rotateInDownLeft' => 'rotateInDownLeft', 'rotateInDownRight' => 'rotateInDownRight', 'rotateInUpLeft' => 'rotateInUpLeft', 'rotateInUpRight' => 'rotateInUpRight', 'rotateOut' => 'rotateOut', 'rotateOutDownLeft' => 'rotateOutDownLeft', 'rotateOutDownRight' => 'rotateOutDownRight', 'rotateOutUpLeft' => 'rotateOutUpLeft', 'rotateOutUpRight' => 'rotateOutUpRight', 'hinge' => 'hinge', 'rollIn' => 'rollIn', 'rollOut' => 'rollOut', 'zoomIn' => 'zoomIn', 'zoomInDown' => 'zoomInDown', 'zoomInLeft' => 'zoomInLeft', 'zoomInRight' => 'zoomInRight', 'zoomInUp' => 'zoomInUp', 'zoomOut' => 'zoomOut', 'zoomOutDown' => 'zoomOutDown', 'zoomOutLeft' => 'zoomOutLeft', 'zoomOutRight' => 'zoomOutRight', 'zoomOutUp' => 'zoomOutUp', 'slideInDown' => 'slideInDown', 'slideInLeft' => 'slideInLeft', 'slideInRight' => 'slideInRight', 'slideInUp' => 'slideInUp', 'slideOutDown' => 'slideOutDown', 'slideOutLeft' => 'slideOutLeft', 'slideOutRight' => 'slideOutRight', 'slideOutUp' => 'slideOutUp'); $GLOBALS['CTS']['ctsheaderimage']['ctslinkanimation']['options'] = array('noanimation' => 'No animation', 'bounce' => 'bounce', 'flash' => 'flash', 'pulse' => 'pulse', 'rubberBand' => 'rubberBand', 'shake' => 'shake', 'headShake' => 'headShake', 'swing' => 'swing', 'tada' => 'tada', 'wobble' => 'wobble', 'jello' => 'jello', 'bounceIn' => 'bounceIn', 'bounceInDown' => 'bounceInDown', 'bounceInLeft' => 'bounceInLeft', 'bounceInRight' => 'bounceInRight', 'bounceInUp' => 'bounceInUp', 'bounceOut' => 'bounceOut', 'bounceOutDown' => 'bounceOutDown', 'bounceOutLeft' => 'bounceOutLeft', 'bounceOutRight' => 'bounceOutRight', 'bounceOutUp' => 'bounceOutUp', 'fadeIn' => 'fadeIn', 'fadeInDown' => 'fadeInDown', 'fadeInDownBig' => 'fadeInDownBig', 'fadeInLeft' => 'fadeInLeft', 'fadeInLeftBig' => 'fadeInLeftBig', 'fadeInRight' => 'fadeInRight', 'fadeInRightBig' => 'fadeInRightBig', 'fadeInUp' => 'fadeInUp', 'fadeInUpBig' => 'fadeInUpBig', 'fadeOut' => 'fadeOut', 'fadeOutDown' => 'fadeOutDown', 'fadeOutDownBig' => 'fadeOutDownBig', 'fadeOutLeft' => 'fadeOutLeft', 'fadeOutLeftBig' => 'fadeOutLeftBig', 'fadeOutRight' => 'fadeOutRight', 'fadeOutRightBig' => 'fadeOutRightBig', 'fadeOutUp' => 'fadeOutUp', 'fadeOutUpBig' => 'fadeOutUpBig', 'flipInX' => 'flipInX', 'flipInY' => 'flipInY', 'flipOutX' => 'flipOutX', 'flipOutY' => 'flipOutY', 'lightSpeedIn' => 'lightSpeedIn', 'lightSpeedOut' => 'lightSpeedOut', 'rotateIn' => 'rotateIn', 'rotateInDownLeft' => 'rotateInDownLeft', 'rotateInDownRight' => 'rotateInDownRight', 'rotateInUpLeft' => 'rotateInUpLeft', 'rotateInUpRight' => 'rotateInUpRight', 'rotateOut' => 'rotateOut', 'rotateOutDownLeft' => 'rotateOutDownLeft', 'rotateOutDownRight' => 'rotateOutDownRight', 'rotateOutUpLeft' => 'rotateOutUpLeft', 'rotateOutUpRight' => 'rotateOutUpRight', 'hinge' => 'hinge', 'rollIn' => 'rollIn', 'rollOut' => 'rollOut', 'zoomIn' => 'zoomIn', 'zoomInDown' => 'zoomInDown', 'zoomInLeft' => 'zoomInLeft', 'zoomInRight' => 'zoomInRight', 'zoomInUp' => 'zoomInUp', 'zoomOut' => 'zoomOut', 'zoomOutDown' => 'zoomOutDown', 'zoomOutLeft' => 'zoomOutLeft', 'zoomOutRight' => 'zoomOutRight', 'zoomOutUp' => 'zoomOutUp', 'slideInDown' => 'slideInDown', 'slideInLeft' => 'slideInLeft', 'slideInRight' => 'slideInRight', 'slideInUp' => 'slideInUp', 'slideOutDown' => 'slideOutDown', 'slideOutLeft' => 'slideOutLeft', 'slideOutRight' => 'slideOutRight', 'slideOutUp' => 'slideOutUp'); } namespace { /** * Contao Open Source CMS * Copyright (C) 2005-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package Contao Themes-Shop * @filesource config.php * @version 1.0.0 * @since 12.10.15 - 17:19 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['ctsslider']['ctssliderstart'] = '\\esit\\ctsslider\\classes\\contao\\elements\\ContentCtsSliderStart'; $GLOBALS['TL_CTE']['ctsslider']['ctssliderstop'] = '\\esit\\ctsslider\\classes\\contao\\elements\\ContentCtsSliderStop'; /** * 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. */ /** * 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. */ /** * CTS */ // Zuordnung der Umschläge für den Cts-Slider $GLOBALS['TL_WRAPPERS']['start'][] = 'ctssliderstart'; $GLOBALS['TL_WRAPPERS']['stop'][] = 'ctssliderstop'; // Zuordnung des JS-Templates zum öffnenden Slider-Inhaltselement. $GLOBALS['CTS']['templats']['js']['ctssliderstart'] = 'js_ctsslider'; } namespace { // Front end module $GLOBALS['FE_MOD']['application']['listing'] = \Contao\ModuleListing::class; } 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 { /** * notification_center extension for Contao Open Source CMS * * @copyright Copyright (c) 2008-2015, terminal42 * @author terminal42 gmbh * @license LGPL */ /** * Back end modules */ \Contao\ArrayUtil::arrayInsert($GLOBALS['BE_MOD'], 1, array('notification_center' => array('nc_notifications' => array('tables' => array('tl_nc_notification', 'tl_nc_message', 'tl_nc_language')), 'nc_queue' => array('tables' => array('tl_nc_queue'), 're-queue' => array('NotificationCenter\\tl_nc_queue', 'reQueue')), 'nc_gateways' => array('tables' => array('tl_nc_gateway'))))); // Load icon in Contao 4.2 backend if (\defined('TL_MODE') && 'BE' === \TL_MODE) { $GLOBALS['TL_CSS'][] = 'system/modules/notification_center/assets/backend.css'; } /** * Front end modules */ $GLOBALS['FE_MOD']['user']['lostPasswordNotificationCenter'] = 'ModulePasswordNotificationCenter'; if (\class_exists(\Contao\NewsletterBundle\ContaoNewsletterBundle::class)) { $GLOBALS['FE_MOD']['newsletter']['newsletterSubscribeNotificationCenter'] = 'ModuleNewsletterSubscribeNotificationCenter'; $GLOBALS['FE_MOD']['newsletter']['newsletterActivateNotificationCenter'] = 'ModuleNewsletterActivateNotificationCenter'; $GLOBALS['FE_MOD']['newsletter']['newsletterUnsubscribeNotificationCenter'] = 'ModuleNewsletterUnsubscribeNotificationCenter'; } /** * Models */ $GLOBALS['TL_MODELS']['tl_nc_notification'] = 'NotificationCenter\\Model\\Notification'; $GLOBALS['TL_MODELS']['tl_nc_gateway'] = 'NotificationCenter\\Model\\Gateway'; $GLOBALS['TL_MODELS']['tl_nc_language'] = 'NotificationCenter\\Model\\Language'; $GLOBALS['TL_MODELS']['tl_nc_message'] = 'NotificationCenter\\Model\\Message'; $GLOBALS['TL_MODELS']['tl_nc_queue'] = 'NotificationCenter\\Model\\QueuedMessage'; /** * Cron jobs */ $GLOBALS['TL_CRON']['minutely'][] = array('NotificationCenter\\Frontend\\PoorMansCron', 'minutely'); $GLOBALS['TL_CRON']['hourly'][] = array('NotificationCenter\\Frontend\\PoorMansCron', 'hourly'); $GLOBALS['TL_CRON']['daily'][] = array('NotificationCenter\\Frontend\\PoorMansCron', 'daily'); $GLOBALS['TL_CRON']['weekly'][] = array('NotificationCenter\\Frontend\\PoorMansCron', 'weekly'); $GLOBALS['TL_CRON']['monthly'][] = array('NotificationCenter\\Frontend\\PoorMansCron', 'monthly'); /** * Hooks */ $GLOBALS['TL_HOOKS']['addCustomRegexp'][] = array('NotificationCenter\\AutoSuggester', 'verifyTokens'); $GLOBALS['TL_HOOKS']['processFormData'][] = array('NotificationCenter\\tl_form', 'sendFormNotification'); $GLOBALS['TL_HOOKS']['createNewUser'][] = array('NotificationCenter\\ContaoHelper', 'sendRegistrationEmail'); $GLOBALS['TL_HOOKS']['updatePersonalData'][] = array('NotificationCenter\\ContaoHelper', 'sendPersonalDataEmail'); $GLOBALS['TL_HOOKS']['getUserNavigation'][] = array('NotificationCenter\\ContaoHelper', 'addQueueToUserNavigation'); $GLOBALS['TL_HOOKS']['activateAccount'][] = array('NotificationCenter\\ContaoHelper', 'sendActivationEmail'); $GLOBALS['TL_HOOKS']['getSystemMessages'][] = array('NotificationCenter\\ContaoHelper', 'alertLegacySmtpSetting'); /** * Queue manager */ $GLOBALS['NOTIFICATION_CENTER']['QUEUE_MANAGER'] = new \NotificationCenter\Queue\QueueManager(); /** * Notification Center Gateways */ $GLOBALS['NOTIFICATION_CENTER']['GATEWAY'] = \array_merge((array) ($GLOBALS['NOTIFICATION_CENTER']['GATEWAY'] ?? []), array('queue' => 'NotificationCenter\\Gateway\\Queue', 'email' => 'NotificationCenter\\Gateway\\Email', 'file' => 'NotificationCenter\\Gateway\\File', 'postmark' => 'NotificationCenter\\Gateway\\Postmark')); /** * Notification Center Notification Types */ $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE'] = \array_merge_recursive((array) ($GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE'] ?? []), array('contao' => array('core_form' => array('recipients' => array('admin_email', 'form_*', 'formconfig_*'), 'email_subject' => array('form_*', 'formconfig_*', 'admin_email'), 'email_text' => array('form_*', 'formconfig_*', 'formlabel_*', 'raw_data', 'raw_data_filled', 'admin_email', 'filenames'), 'email_html' => array('form_*', 'formconfig_*', 'formlabel_*', 'raw_data', 'raw_data_filled', 'admin_email', 'filenames'), 'file_name' => array('form_*', 'formconfig_*', 'admin_email'), 'file_content' => array('form_*', 'formconfig_*', 'formlabel_*', 'raw_data', 'raw_data_filled', 'admin_email'), 'email_sender_name' => array('admin_email', 'form_*', 'formconfig_*'), 'email_sender_address' => array('admin_email', 'form_*', 'formconfig_*'), 'email_recipient_cc' => array('admin_email', 'form_*', 'formconfig_*'), 'email_recipient_bcc' => array('admin_email', 'form_*', 'formconfig_*'), 'email_replyTo' => array('admin_email', 'form_*', 'formconfig_*'), 'attachment_tokens' => array('form_*', 'formconfig_*')), 'member_activation' => array('recipients' => array('member_email', 'admin_email'), 'email_subject' => array('domain', 'member_*', 'admin_email'), 'email_text' => array('domain', 'member_*', 'admin_email'), 'email_html' => array('domain', 'member_*', 'admin_email'), 'file_name' => array('domain', 'member_*', 'admin_email'), 'file_content' => array('domain', 'member_*', 'admin_email'), 'email_sender_name' => array('admin_email', 'form_*'), 'email_sender_address' => array('admin_email', 'form_*'), 'email_recipient_cc' => array('admin_email', 'member_*'), 'email_recipient_bcc' => array('admin_email', 'member_*'), 'email_replyTo' => array('admin_email', 'member_*')), 'member_registration' => array('recipients' => array('member_email', 'admin_email'), 'email_subject' => array('domain', 'link', 'member_*', 'admin_email'), 'email_text' => array('domain', 'link', 'member_*', 'admin_email'), 'email_html' => array('domain', 'link', 'member_*', 'admin_email'), 'file_name' => array('domain', 'link', 'member_*', 'admin_email'), 'file_content' => array('domain', 'link', 'member_*', 'admin_email'), 'email_sender_name' => array('admin_email', 'member_*'), 'email_sender_address' => array('admin_email', 'member_*'), 'email_recipient_cc' => array('admin_email', 'member_*'), 'email_recipient_bcc' => array('admin_email', 'member_*'), 'email_replyTo' => array('admin_email', 'member_*')), 'member_personaldata' => array('recipients' => array('member_email', 'admin_email'), 'email_subject' => array('domain', 'member_*', 'member_old_*', 'changed_*', 'admin_email'), 'email_text' => array('domain', 'member_*', 'member_old_*', 'changed_*', 'admin_email'), 'email_html' => array('domain', 'member_*', 'member_old_*', 'changed_*', 'admin_email'), 'email_sender_name' => array('member_*'), 'email_sender_address' => array('member_email', 'admin_email'), 'email_recipient_cc' => array('member_email', 'admin_email'), 'email_recipient_bcc' => array('member_email', 'admin_email'), 'email_replyTo' => array('member_email', 'admin_email')), 'member_password' => array('recipients' => array('recipient_email'), 'email_subject' => array('domain', 'link', 'member_*', 'recipient_email'), 'email_text' => array('domain', 'link', 'member_*', 'recipient_email'), 'email_html' => array('domain', 'link', 'member_*', 'recipient_email'), 'file_name' => array('domain', 'link', 'member_*', 'recipient_email'), 'file_content' => array('domain', 'link', 'member_*', 'recipient_email'), 'email_sender_name' => array('recipient_email'), 'email_sender_address' => array('recipient_email'), 'email_recipient_cc' => array('recipient_email'), 'email_recipient_bcc' => array('recipient_email'), 'email_replyTo' => array('recipient_email'))))); // Add the newsletter tokens only if the extension is active if (\class_exists(\Contao\NewsletterBundle\ContaoNewsletterBundle::class)) { $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE']['contao']['newsletter_subscribe'] = array('recipients' => array('recipient_email', 'admin_email'), 'email_subject' => array('domain', 'link', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'subject'), 'email_text' => array('domain', 'link', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'token'), 'email_html' => array('domain', 'link', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'token'), 'file_name' => array('domain', 'link', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'file_content' => array('domain', 'link', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'token'), 'email_sender_name' => array('recipient_email', 'admin_email', 'admin_name'), 'email_sender_address' => array('recipient_email', 'admin_email'), 'email_recipient_cc' => array('recipient_email', 'admin_email'), 'email_recipient_bcc' => array('recipient_email', 'admin_email'), 'email_replyTo' => array('recipient_email', 'admin_email')); $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE']['contao']['newsletter_activate'] = array('recipients' => array('recipient_email', 'admin_email'), 'email_subject' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'subject'), 'email_text' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'email_html' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'file_name' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'file_content' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'email_sender_name' => array('recipient_email', 'admin_email', 'admin_name'), 'email_sender_address' => array('recipient_email', 'admin_email'), 'email_recipient_cc' => array('recipient_email', 'admin_email'), 'email_recipient_bcc' => array('recipient_email', 'admin_email'), 'email_replyTo' => array('recipient_email', 'admin_email')); $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE']['contao']['newsletter_unsubscribe'] = array('recipients' => array('recipient_email', 'admin_email'), 'email_subject' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids', 'subject'), 'email_text' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'email_html' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'file_name' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'file_content' => array('domain', 'recipient_email', 'admin_email', 'channels', 'channel_ids'), 'email_sender_name' => array('recipient_email', 'admin_email', 'admin_name'), 'email_sender_address' => array('recipient_email', 'admin_email'), 'email_recipient_cc' => array('recipient_email', 'admin_email'), 'email_recipient_bcc' => array('recipient_email', 'admin_email'), 'email_replyTo' => array('recipient_email', 'admin_email')); } } namespace { require_once \TL_ROOT . '/vendor/numero2/contao-marketing-suite/src/Resources/contao/config/constants.php'; /** * MODELS */ $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\TagModel::getTable()] = \numero2\MarketingSuite\TagModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\LinkShortenerModel::getTable()] = \numero2\MarketingSuite\LinkShortenerModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\LinkShortenerStatisticsModel::getTable()] = \numero2\MarketingSuite\LinkShortenerStatisticsModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\ContentGroupModel::getTable()] = \numero2\MarketingSuite\ContentGroupModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\ConversionItemModel::getTable()] = \numero2\MarketingSuite\ConversionItemModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\MarketingItemModel::getTable()] = \numero2\MarketingSuite\MarketingItemModel::class; $GLOBALS['TL_MODELS'][\numero2\MarketingSuite\StatisticModel::getTable()] = \numero2\MarketingSuite\StatisticModel::class; /** * BACK END MODULES */ if (!empty($GLOBALS['BE_MOD']['content']['news'])) { $GLOBALS['BE_MOD']['content']['news']['cms_schedule'] = [\numero2\MarketingSuite\BackendModule\NewsSchedule::class, 'generate']; } \array_insert($GLOBALS['BE_MOD'], 1, ['marketing_suite' => ['cms_dashboard' => ['callback' => \numero2\MarketingSuite\BackendModule\Dashboard::class], 'cms_marketing' => ['tables' => ['tl_cms_marketing_item', 'tl_cms_content_group', 'tl_content']], 'cms_conversion' => ['tables' => ['tl_cms_conversion_item', 'tl_content']], 'cms_health_check' => ['callback' => \numero2\MarketingSuite\BackendModule\HealthCheck::class], 'cms_tools' => ['callback' => \numero2\MarketingSuite\BackendModule\Module::class], 'cms_settings' => ['callback' => \numero2\MarketingSuite\BackendModule\Module::class]]]); /** * MARKETING SUITE BACK END MODULES */ $GLOBALS['CMS_MOD'] = ['tools' => ['link_shortener' => ['tables' => ['tl_cms_link_shortener', 'tl_cms_link_shortener_statistics'], 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_link_shortener.svg', 'link_shortener_statistics' => [\numero2\MarketingSuite\DCAHelper\LinkShortenerStatistics::class, 'generate']], 'search_statistic' => ['tables' => [\numero2\MarketingSuite\StatisticModel::getTable()], 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_search_statistic.svg']], 'settings' => ['settings' => ['tables' => ['tl_cms_settings'], 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_settings.svg'], 'tags' => ['tables' => ['tl_cms_tag', 'tl_cms_tag_settings'], 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_tags.svg'], 'avalex' => ['callback' => \numero2\MarketingSuite\BackendModule\Avalex::class, 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_avalex.svg'], 'facebook' => ['tables' => ['tl_cms_facebook'], 'icon' => 'bundles/marketingsuite/img/backend/icons/icon_facebook.svg', 'pre_form_callback' => [\numero2\MarketingSuite\BackendModule\Facebook::class, 'generatePreForm']]]]; if (!\class_exists('Facebook\\Facebook')) { unset($GLOBALS['CMS_MOD']['settings']['facebook']); } /** * BACK END STYLESHEET */ if (\TL_MODE === 'BE') { $GLOBALS['TL_CSS'][] = 'bundles/marketingsuite/css/backend/backend.css'; } /** * BACK END JAVASCRIPT */ if (\TL_MODE === 'BE') { $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/marketingsuite/js/backend.js'; } /** * BACK END FORM FIELDS */ $GLOBALS['BE_FFL']['cmsLayoutSelector'] = \numero2\MarketingSuite\Widget\LayoutSelector::class; /** * FRONT END MODULES */ $GLOBALS['FE_MOD']['marketing_suite'] = ['cms_marketing_item' => \numero2\MarketingSuite\ModuleMarketingItem::class, 'cms_conversion_item' => \numero2\MarketingSuite\ModuleConversionItem::class, 'cms_cookie_bar' => \numero2\MarketingSuite\ModuleCookieBar::class, 'cms_accept_tags' => \numero2\MarketingSuite\ModuleAcceptTags::class]; /** * CONTENT ELEMENTS */ \array_insert($GLOBALS['TL_CTE']['texts'], \array_search('text', \array_keys($GLOBALS['TL_CTE']['texts'])), ['text_cms' => 'ContentText']); $GLOBALS['TL_CTE']['marketing_suite'] = ['cms_marketing_item' => \numero2\MarketingSuite\ContentMarketingItem::class, 'cms_conversion_item' => \numero2\MarketingSuite\ContentConversionItem::class]; $GLOBALS['TL_CTE']['conversion_elements'] = ['text_cms_cta' => \numero2\MarketingSuite\ContentTextCMSCTA::class, 'cms_hyperlink' => \numero2\MarketingSuite\ContentHyperlink::class, 'cms_button' => \numero2\MarketingSuite\ContentButton::class, 'cms_form' => $GLOBALS['TL_CTE']['includes']['form'], 'cms_overlay' => \numero2\MarketingSuite\ContentOverlay::class]; /** * REGISTER HOOKS */ if (\Contao\Config::getInstance()->isComplete()) { $GLOBALS['TL_HOOKS']['addCustomRegexp'][] = [\numero2\MarketingSuite\Hooks\Hooks::class, 'validateRgxp']; $GLOBALS['TL_HOOKS']['cmsBeHelperParseSimpleTokens']['cms_settings_facebook'][] = [\numero2\MarketingSuite\BackendModule\Facebook::class, 'parseSimpleTokens']; $GLOBALS['TL_HOOKS']['compileFormFields'][] = [\numero2\MarketingSuite\Tracking\ClickAndViews::class, 'increaseViewOnForm']; $GLOBALS['TL_HOOKS']['executePostActions'][] = [\numero2\MarketingSuite\Hooks\Hooks::class, 'postActionHookForDC_CMSFile']; $GLOBALS['TL_HOOKS']['executePreActions'][] = [\numero2\MarketingSuite\Hooks\Hooks::class, 'executePreActions']; $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Hooks\Tags::class, 'generateEUConsent']; $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Hooks\Tags::class, 'generateScripts']; $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Hooks\ConversionItem::class, 'generateGlobalConversionItems']; $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Tracking\Session::class, 'storeVisitedPage']; $GLOBALS['TL_HOOKS']['getSystemMessages'][] = [\numero2\MarketingSuite\Backend\Messages::class, 'testModeCheck']; $GLOBALS['TL_HOOKS']['getSystemMessages'][] = [\numero2\MarketingSuite\Backend\License::class, 'getSystemMessages']; $GLOBALS['TL_HOOKS']['getSystemMessages'][] = [\numero2\MarketingSuite\Backend\Messages::class, 'legacyRoutingCheck']; $GLOBALS['TL_HOOKS']['getUserNavigation'][] = [\numero2\MarketingSuite\BackendModule\Feedback::class, 'setNavigationLink']; $GLOBALS['TL_HOOKS']['initializeSystem'][] = [\numero2\MarketingSuite\Hooks\Hooks::class, 'initializeSystem']; $GLOBALS['TL_HOOKS']['loadDataContainer'][] = [\numero2\MarketingSuite\Hooks\DCA::class, 'addStylingFields']; $GLOBALS['TL_HOOKS']['processFormData'][] = [\numero2\MarketingSuite\Tracking\ClickAndViews::class, 'increaseClickOnForm']; $GLOBALS['TL_HOOKS']['replaceInsertTags'][] = [\numero2\MarketingSuite\Hooks\Tags::class, 'replaceTagInsertTags']; $GLOBALS['TL_HOOKS']['getContentElement'][] = [\numero2\MarketingSuite\Hooks\Tags::class, 'replaceTagContentModuleElement']; $GLOBALS['TL_HOOKS']['getFrontendModule'][] = [\numero2\MarketingSuite\Hooks\Tags::class, 'replaceTagContentModuleElement']; $GLOBALS['TL_HOOKS']['replaceInsertTags'][] = [\numero2\MarketingSuite\Hooks\LinkShortener::class, 'replaceLinkShortenerInsertTags']; $GLOBALS['TL_HOOKS']['insertTagFlags'][] = [\numero2\MarketingSuite\Hooks\LinkShortener::class, 'replaceLinkShortenerInsertTagFlags']; $GLOBALS['TL_HOOKS']['loadDataContainer'][] = [\numero2\MarketingSuite\DCAHelper\Module::class, 'addSQLDefinitionForTagSettings']; if (\Contao\System::getContainer()->getParameter('contao.legacy_routing')) { $GLOBALS['TL_HOOKS']['getPageIdFromUrl'][] = [\numero2\MarketingSuite\MarketingItem\ABTestPage::class, 'selectAorBPage']; } if (\TL_MODE === 'BE') { $GLOBALS['TL_HOOKS']['initializeSystem'][] = [\numero2\MarketingSuite\BackendModule\Module::class, 'initializeBackendModuleTables']; } /** * CUSTOM CRONJOBS */ $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Backend\License::class, 'dailyCron']; $GLOBALS['TL_HOOKS']['generatePage'][] = [\numero2\MarketingSuite\Backend\License::class, 'weeklyCron']; } } namespace { /* * Copyright MADE/YOUR/DAY OG * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ /** * RockSolid Slider back end modules configuration * * @author Martin Auswöger */ $GLOBALS['TL_MODELS']['tl_rocksolid_slider'] = 'MadeYourDay\\RockSolidSlider\\Model\\SliderModel'; $GLOBALS['TL_MODELS']['tl_rocksolid_slide'] = 'MadeYourDay\\RockSolidSlider\\Model\\SlideModel'; $GLOBALS['TL_CTE']['includes']['rocksolid_slider'] = 'MadeYourDay\\RockSolidSlider\\Module\\Slider'; $GLOBALS['BE_MOD']['content']['rocksolid_slider'] = array('tables' => array('tl_rocksolid_slider', 'tl_rocksolid_slide', 'tl_content', 'tl_rocksolid_slider_license'), 'icon' => 'bundles/rocksolidslider/img/icon.png'); \Contao\ArrayUtil::arrayInsert($GLOBALS['FE_MOD'], 2, array('miscellaneous' => array('rocksolid_slider' => 'MadeYourDay\\RockSolidSlider\\Module\\Slider'))); $GLOBALS['TL_PERMISSIONS'][] = 'rsts_sliders'; $GLOBALS['TL_PERMISSIONS'][] = 'rsts_permissions'; } namespace { /** * Contao Open Source CMS * Copyright (C) 2005-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package Contao Themes-Shop * @filesource config.php * @version 1.0.0 * @since 21.09.15 - 15:44 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['cts']['ctsimage'] = '\\esit\\ctsimage\\classes\\contao\\elements\\ContentCtsImage'; /** * 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. */ /** * 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 { /** * Contao Open Source CMS * Copyright (C) 2005-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package htdocs * @filesource config.php * @version 1.0.0 * @since 19.09.15 - 09:13 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['cts']['ctscontentbox'] = '\\esit\\ctscontentbox\\classes\\contao\\elements\\ContentCtsContentbox'; /** * 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. */ /** * 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. */ /** * ================================= * Einstellungen: Contao Themes-Shop * ================================= */ $GLOBALS['CTS']['ctscontentbox']['variant']['options'] = array('variant1' => 'Grün', 'variant2' => 'Blau', 'variant3' => 'Rot', 'variant4' => 'Grau', 'variant5' => 'Grauer Rahmen'); } namespace { /** * Contao Open Source CMS * Copyright (C) 2005-2011 Leo Feyer * * Formerly known as TYPOlight Open Source CMS. * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, either * version 3 of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, please visit the Free * Software Foundation website at . * * * @package Contao Themes-Shop * @filesource config.php * @version 1.0.0 * @since 21.09.15 - 15:44 * @author Patrick Froch * @link http://easySolutionsIT.de * @copyright e@sy Solutions IT 2015 * @license EULA */ /** * 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. */ /** * 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. */ /** * 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']['cts']['ctshoverbox'] = '\\esit\\ctshoverbox\\classes\\contao\\elements\\ContentCtsHoverbox'; /** * 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. */ /** * 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. */ /** * ================================= * Einstellungen: Contao Themes-Shop * ================================= */ $GLOBALS['CTS']['ctshoverbox']['variant']['options'] = array('effectlily' => 'Lily', 'effectsadie' => 'Sadie', 'effectlayla' => 'Layla', 'effectoscar' => 'Oscar', 'effectmarley' => 'Marley', 'effectruby' => 'Ruby', 'effectroxy' => 'Roxy', 'effectbubba' => 'Bubba', 'effectromeo' => 'Romeo', 'effectdexter' => 'Dexter', 'effectsarah' => 'Sarah', 'effectchico' => 'Chico', 'effectmilo' => 'Milo', 'effectmilo' => 'Milo', 'effectjulia' => 'Julia', 'effectgoliath' => 'Goliath', 'effectselena' => 'Selena', 'effectapollo' => 'Apollo', 'effectsteve' => 'Steve', 'effectmoses' => 'Moses', 'effectjazz' => 'Jazz', 'effectming' => 'Ming', 'effectlexi' => 'Lexi', 'effectduke' => 'Duke'); } 404 - Webpräsenz des Musikvereins Stadtkapelle Horb e.V.