本文整理汇总了PHP中TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj方法的典型用法代码示例。如果您正苦于以下问题:PHP GeneralUtility::getUserObj方法的具体用法?PHP GeneralUtility::getUserObj怎么用?PHP GeneralUtility::getUserObj使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Core\Utility\GeneralUtility
的用法示例。
在下文中一共展示了GeneralUtility::getUserObj方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: main
/**
* The main method of the PlugIn
*
* @param string $content: The PlugIn content
* @param array $conf: The PlugIn configuration
* @return string The content that is displayed on the website
*/
function main($content, $conf)
{
$this->ms = GeneralUtility::milliseconds();
$this->conf = $conf;
$this->pi_setPiVarDefaults();
$this->pi_loadLL();
// Configuring so caching is not expected. This value means that no cHash params are ever set.
// We do this, because it's a USER_INT object!
$this->pi_USER_INT_obj = 1;
// initializes plugin configuration
$this->init();
// init template for pi1
$this->initFluidTemplate();
// hook for initials
if (is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['ke_search']['initials'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['ke_search']['initials'] as $_classRef) {
$_procObj =& GeneralUtility::getUserObj($_classRef);
$_procObj->addInitials($this);
}
}
// get content for searchbox
$this->getSearchboxContent();
// assign variables and do the rendering
$this->searchFormView->assignMultiple($this->fluidTemplateVariables);
$htmlOutput = $this->searchFormView->render();
return $htmlOutput;
}
示例2: __construct
/**
* Constructor
*
* @param \TYPO3\CMS\Backend\Controller\BackendController $backendReference TYPO3 backend object reference
* @throws \UnexpectedValueException
*/
public function __construct(\TYPO3\CMS\Backend\Controller\BackendController &$backendReference = NULL)
{
$this->backendReference = $backendReference;
$this->cacheActions = array();
$this->optionValues = array();
$backendUser = $this->getBackendUser();
// Clear all page-related caches
if ($backendUser->isAdmin() || $backendUser->getTSConfigVal('options.clearCache.pages')) {
$this->cacheActions[] = array('id' => 'pages', 'title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushPageCachesTitle', TRUE), 'description' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushPageCachesDescription', TRUE), 'href' => $this->backPath . 'tce_db.php?vC=' . $backendUser->veriCode() . '&cacheCmd=pages&ajaxCall=1' . BackendUtility::getUrlToken('tceAction'), 'icon' => IconUtility::getSpriteIcon('actions-system-cache-clear-impact-low'));
$this->optionValues[] = 'pages';
}
// Clear cache for ALL tables!
if ($backendUser->isAdmin() || $backendUser->getTSConfigVal('options.clearCache.all')) {
$this->cacheActions[] = array('id' => 'all', 'title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushGeneralCachesTitle', TRUE), 'description' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushGeneralCachesDescription', TRUE), 'href' => $this->backPath . 'tce_db.php?vC=' . $backendUser->veriCode() . '&cacheCmd=all&ajaxCall=1' . BackendUtility::getUrlToken('tceAction'), 'icon' => IconUtility::getSpriteIcon('actions-system-cache-clear-impact-medium'));
$this->optionValues[] = 'all';
}
// Clearing of system cache (core cache, class cache etc)
// is only shown explicitly if activated for a BE-user (not activated for admins by default)
// or if the system runs in development mode
// or if $GLOBALS['TYPO3_CONF_VARS']['SYS']['clearCacheSystem'] is set (only for admins)
if ($backendUser->getTSConfigVal('options.clearCache.system') || GeneralUtility::getApplicationContext()->isDevelopment() || (bool) $GLOBALS['TYPO3_CONF_VARS']['SYS']['clearCacheSystem'] === TRUE && $backendUser->isAdmin()) {
$this->cacheActions[] = array('id' => 'system', 'title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushSystemCachesTitle', TRUE), 'description' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:flushSystemCachesDescription', TRUE), 'href' => $this->backPath . 'tce_db.php?vC=' . $backendUser->veriCode() . '&cacheCmd=system&ajaxCall=1' . BackendUtility::getUrlToken('tceAction'), 'icon' => IconUtility::getSpriteIcon('actions-system-cache-clear-impact-high'));
$this->optionValues[] = 'system';
}
// Hook for manipulating cacheActions
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'] as $cacheAction) {
$hookObject = GeneralUtility::getUserObj($cacheAction);
if (!$hookObject instanceof \TYPO3\CMS\Backend\Toolbar\ClearCacheActionsHookInterface) {
throw new \UnexpectedValueException('$hookObject must implement interface TYPO3\\CMS\\Backend\\Toolbar\\ClearCacheActionsHookInterface', 1228262000);
}
$hookObject->manipulateCacheActions($this->cacheActions, $this->optionValues);
}
}
}
示例3: getStorage
/**
* Obtains a storage. This function will return a non-abstract class, which
* is derieved from the tx_rsaauth_abstract_storage. Applications should
* not use anoy methods that are not declared in the tx_rsaauth_abstract_storage.
*
* @return \TYPO3\CMS\Rsaauth\Storage\AbstractStorage A storage
*/
public static function getStorage()
{
if (is_null(self::$storageInstance)) {
self::$storageInstance = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj(self::$preferredStorage);
}
return self::$storageInstance;
}
示例4: main
/**
* Main function, rendering the element browser in RTE mode.
*
* @return void
* @todo Define visibility
*/
public function main()
{
// Setting alternative browsing mounts (ONLY local to browse_links.php this script so they stay "read-only")
$altMountPoints = trim($GLOBALS['BE_USER']->getTSConfigVal('options.folderTree.altElementBrowserMountPoints'));
if ($altMountPoints) {
$altMountPoints = \TYPO3\CMS\Core\Utility\GeneralUtility::trimExplode(',', $altMountPoints);
foreach ($altMountPoints as $filePathRelativeToFileadmindir) {
$GLOBALS['BE_USER']->addFileMount('', $filePathRelativeToFileadmindir, $filePathRelativeToFileadmindir, 1, 'readonly');
}
$GLOBALS['FILEMOUNTS'] = $GLOBALS['BE_USER']->returnFilemounts();
}
// Rendering type by user function
$browserRendered = FALSE;
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/TYPO3\\CMS\\Recordlist\\Browser\\ElementBrowser.php']['browserRendering'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/TYPO3\\CMS\\Recordlist\\Browser\\ElementBrowser.php']['browserRendering'] as $classRef) {
$browserRenderObj = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
if (is_object($browserRenderObj) && method_exists($browserRenderObj, 'isValid') && method_exists($browserRenderObj, 'render')) {
if ($browserRenderObj->isValid($this->mode, $this)) {
$this->content .= $browserRenderObj->render($this->mode, $this);
$browserRendered = TRUE;
break;
}
}
}
}
// If type was not rendered, use default rendering functions
if (!$browserRendered) {
$GLOBALS['SOBE']->browser = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Rtehtmlarea\\SelectImage');
$GLOBALS['SOBE']->browser->init();
$modData = $GLOBALS['BE_USER']->getModuleData('select_image.php', 'ses');
list($modData, $store) = $GLOBALS['SOBE']->browser->processSessionData($modData);
$GLOBALS['BE_USER']->pushModuleData('select_image.php', $modData);
$this->content = $GLOBALS['SOBE']->browser->main_rte();
}
}
示例5: __construct
/**
* Constructor
*
* @throws \UnexpectedValueException
*/
public function __construct()
{
$backendUser = $this->getBackendUser();
$languageService = $this->getLanguageService();
$this->iconFactory = GeneralUtility::makeInstance(IconFactory::class);
$this->getPageRenderer()->loadRequireJsModule('TYPO3/CMS/Backend/Toolbar/ClearCacheMenu');
// Clear all page-related caches
if ($backendUser->isAdmin() || $backendUser->getTSConfigVal('options.clearCache.pages')) {
$this->cacheActions[] = array('id' => 'pages', 'title' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushPageCachesTitle', true), 'description' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushPageCachesDescription', true), 'href' => BackendUtility::getModuleUrl('tce_db', ['vC' => $backendUser->veriCode(), 'cacheCmd' => 'pages', 'ajaxCall' => 1]), 'icon' => $this->iconFactory->getIcon('actions-system-cache-clear-impact-low', Icon::SIZE_SMALL)->render());
$this->optionValues[] = 'pages';
}
// Clear cache for ALL tables!
if ($backendUser->isAdmin() || $backendUser->getTSConfigVal('options.clearCache.all')) {
$this->cacheActions[] = array('id' => 'all', 'title' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushGeneralCachesTitle', true), 'description' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushGeneralCachesDescription', true), 'href' => BackendUtility::getModuleUrl('tce_db', ['vC' => $backendUser->veriCode(), 'cacheCmd' => 'all', 'ajaxCall' => 1]), 'icon' => $this->iconFactory->getIcon('actions-system-cache-clear-impact-medium', Icon::SIZE_SMALL)->render());
$this->optionValues[] = 'all';
}
// Clearing of system cache (core cache, class cache etc)
// is only shown explicitly if activated for a BE-user (not activated for admins by default)
// or if the system runs in development mode
// or if $GLOBALS['TYPO3_CONF_VARS']['SYS']['clearCacheSystem'] is set (only for admins)
if ($backendUser->getTSConfigVal('options.clearCache.system') || GeneralUtility::getApplicationContext()->isDevelopment() || (bool) $GLOBALS['TYPO3_CONF_VARS']['SYS']['clearCacheSystem'] === true && $backendUser->isAdmin()) {
$this->cacheActions[] = array('id' => 'system', 'title' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushSystemCachesTitle', true), 'description' => $languageService->sL('LLL:EXT:lang/locallang_core.xlf:flushSystemCachesDescription', true), 'href' => BackendUtility::getModuleUrl('tce_db', ['vC' => $backendUser->veriCode(), 'cacheCmd' => 'system', 'ajaxCall' => 1]), 'icon' => $this->iconFactory->getIcon('actions-system-cache-clear-impact-high', Icon::SIZE_SMALL)->render());
$this->optionValues[] = 'system';
}
// Hook for manipulating cacheActions
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'] as $cacheAction) {
$hookObject = GeneralUtility::getUserObj($cacheAction);
if (!$hookObject instanceof ClearCacheActionsHookInterface) {
throw new \UnexpectedValueException('$hookObject must implement interface ' . ClearCacheActionsHookInterface::class, 1228262000);
}
$hookObject->manipulateCacheActions($this->cacheActions, $this->optionValues);
}
}
}
示例6: __construct
/**
* Constructor
*
* @param \TYPO3\CMS\Backend\Controller\BackendController $backendReference TYPO3 backend object reference
*/
public function __construct(\TYPO3\CMS\Backend\Controller\BackendController &$backendReference = NULL)
{
$this->backendReference = $backendReference;
$this->cacheActions = array();
$this->optionValues = array('all', 'pages');
// Clear cache for ALL tables!
if ($GLOBALS['BE_USER']->isAdmin() || $GLOBALS['BE_USER']->getTSConfigVal('options.clearCache.all')) {
$title = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xml:rm.clearCacheMenu_all', TRUE);
$this->cacheActions[] = array('id' => 'all', 'title' => $title, 'href' => $this->backPath . 'tce_db.php?vC=' . $GLOBALS['BE_USER']->veriCode() . '&cacheCmd=all&ajaxCall=1' . \TYPO3\CMS\Backend\Utility\BackendUtility::getUrlToken('tceAction'), 'icon' => \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-system-cache-clear-impact-high'));
}
// Clear cache for either ALL pages
if ($GLOBALS['BE_USER']->isAdmin() || $GLOBALS['BE_USER']->getTSConfigVal('options.clearCache.pages')) {
$title = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xml:rm.clearCacheMenu_pages', TRUE);
$this->cacheActions[] = array('id' => 'pages', 'title' => $title, 'href' => $this->backPath . 'tce_db.php?vC=' . $GLOBALS['BE_USER']->veriCode() . '&cacheCmd=pages&ajaxCall=1' . \TYPO3\CMS\Backend\Utility\BackendUtility::getUrlToken('tceAction'), 'icon' => \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-system-cache-clear-impact-medium'));
}
// Clearing of cache-files in typo3conf/ + menu
if ($GLOBALS['BE_USER']->isAdmin()) {
$title = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xml:rm.clearCacheMenu_allTypo3Conf', TRUE);
$this->cacheActions[] = array('id' => 'temp_CACHED', 'title' => $title, 'href' => $this->backPath . 'tce_db.php?vC=' . $GLOBALS['BE_USER']->veriCode() . '&cacheCmd=temp_CACHED&ajaxCall=1' . \TYPO3\CMS\Backend\Utility\BackendUtility::getUrlToken('tceAction'), 'icon' => \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-system-cache-clear-impact-low'));
}
// Hook for manipulate cacheActions
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions'] as $cacheAction) {
$hookObject = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($cacheAction);
if (!$hookObject instanceof \TYPO3\CMS\Backend\Toolbar\ClearCacheActionsHookInterface) {
throw new \UnexpectedValueException('$hookObject must implement interface TYPO3\\CMS\\Backend\\Toolbar\\ClearCacheActionsHookInterface', 1228262000);
}
$hookObject->manipulateCacheActions($this->cacheActions, $this->optionValues);
}
}
}
示例7: indexAction
/**
* Show general information and the installed modules
*
* @return void
*/
public function indexAction()
{
$warnings = array();
$contentWarnings = '';
// Hook for additional warnings
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_befunc.php']['displayWarningMessages'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_befunc.php']['displayWarningMessages'] as $classRef) {
$hookObj = GeneralUtility::getUserObj($classRef);
if (method_exists($hookObj, 'displayWarningMessages_postProcess')) {
$hookObj->displayWarningMessages_postProcess($warnings);
}
}
}
if (!empty($warnings)) {
if (count($warnings) > 1) {
$securityWarnings = '<ul><li>' . implode('</li><li>', $warnings) . '</li></ul>';
} else {
$securityWarnings = '<p>' . implode('', $warnings) . '</p>';
}
$securityMessage = GeneralUtility::makeInstance(FlashMessage::class, $securityWarnings, $this->languageService->sL('LLL:EXT:lang/locallang_core.xlf:warning.header'), FlashMessage::ERROR);
$contentWarnings = '<div style="margin: 20px 0;">' . $securityMessage->render() . '</div>';
unset($warnings);
}
$this->view->assignMultiple(array('TYPO3Version' => TYPO3_version, 'copyRightNotice' => BackendUtility::TYPO3_copyRightNotice(), 'warningMessages' => $contentWarnings, 'modules' => $this->getModulesData()));
}
示例8: customMediaParams
/**
* Load extra predefined media params if they exist
*
* @param array $params Existing types by reference
* @param array $conf Config array
* @return void
*/
public function customMediaParams(&$params, $conf)
{
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/hooks/class.tx_cms_mediaitems.php']['customMediaParams'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/hooks/class.tx_cms_mediaitems.php']['customMediaParams'] as $classRef) {
$hookObj = GeneralUtility::getUserObj($classRef);
$hookObj->customMediaParams($params, $conf);
}
}
}
示例9: __construct
/**
* Constructor
*/
public function __construct(\TYPO3\CMS\Taskcenter\Controller\TaskModuleController $taskObject)
{
$this->taskObject = $taskObject;
$GLOBALS['LANG']->includeLLFile('EXT:sys_action/locallang.xml');
if (is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['sys_action']['tx_sysaction_task'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['sys_action']['tx_sysaction_task'] as $classRef) {
$this->hookObjects[] = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
}
}
}
示例10: assureLabel
/**
* Assure the translation for the given key.
* If not exists create the label in the xml/xlf file.
* Returns the localization.
*
* Use the Slot to handle the label
*
* @see LocalizationUtility::translate
*
* @param string $key key in the localization file
* @param string $extensionName
* @param string $default default value of the label
* @param array $arguments arguments are being passed over to vsprintf
*
* @return string
*/
public static function assureLabel($key, $extensionName, $default = null, $arguments = null)
{
if (is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['autoloader']['assureLabel'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['autoloader']['assureLabel'] as $classConfig) {
$className = GeneralUtility::getUserObj($classConfig);
if (is_object($className) && method_exists($className, 'assureLabel')) {
$className->assureLabel($key, $extensionName, $default, $arguments);
}
}
}
return (string) $default;
}
示例11: __construct
/**
* The __constructor is private because the dispatcher is a singleton
*
* @param void
* @return void
*/
protected function __construct()
{
$this->observers = array();
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['crawler/domain/events/class.tx_crawler_domain_events_dispatcher.php']['registerObservers'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['crawler/domain/events/class.tx_crawler_domain_events_dispatcher.php']['registerObservers'] as $classRef) {
$hookObj =& \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
if (method_exists($hookObj, 'registerObservers')) {
$hookObj->registerObservers($this);
}
}
}
}
示例12: main
/**
* Main function, rendering the element browser in RTE mode.
*
* @return void
*/
public function main()
{
// Setting alternative web browsing mounts (ONLY local to browse_links.php this script so they stay "read-only")
$altMountPoints = trim($GLOBALS['BE_USER']->getTSConfigVal('options.pageTree.altElementBrowserMountPoints'));
$appendAltMountPoints = $GLOBALS['BE_USER']->getTSConfigVal('options.pageTree.altElementBrowserMountPoints.append');
// Clear temporary DB mounts
$tmpMount = \TYPO3\CMS\Core\Utility\GeneralUtility::_GET('setTempDBmount');
if (isset($tmpMount)) {
$GLOBALS['BE_USER']->setAndSaveSessionData('pageTree_temporaryMountPoint', (int) $tmpMount);
}
// Set temporary DB mounts
$tempDBmount = (int) $GLOBALS['BE_USER']->getSessionData('pageTree_temporaryMountPoint');
if ($tempDBmount) {
$altMountPoints = $tempDBmount;
$appendAltMountPoints = FALSE;
}
if ($altMountPoints) {
$alternativeMountPoints = \TYPO3\CMS\Core\Utility\GeneralUtility::intExplode(',', $altMountPoints);
$GLOBALS['BE_USER']->setWebmounts($alternativeMountPoints, $appendAltMountPoints);
}
// Setting alternative file browsing mounts (ONLY local to browse_links.php this script so they stay "read-only")
$altMountPoints = trim($GLOBALS['BE_USER']->getTSConfigVal('options.folderTree.altElementBrowserMountPoints'));
if ($altMountPoints) {
$altMountPoints = \TYPO3\CMS\Core\Utility\GeneralUtility::trimExplode(',', $altMountPoints);
foreach ($altMountPoints as $filePathRelativeToFileadmindir) {
// @todo: add this feature for FAL and TYPO3 6.2
}
}
// Render type by user function
$browserRendered = FALSE;
if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/browse_links.php']['browserRendering'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/browse_links.php']['browserRendering'] as $classRef) {
$browserRenderObj = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
if (is_object($browserRenderObj) && method_exists($browserRenderObj, 'isValid') && method_exists($browserRenderObj, 'render')) {
if ($browserRenderObj->isValid($this->mode, $this)) {
$this->content .= $browserRenderObj->render($this->mode, $this);
$browserRendered = TRUE;
break;
}
}
}
}
// If type was not rendered, use default rendering functions
if (!$browserRendered) {
$GLOBALS['SOBE']->browser = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Rtehtmlarea\BrowseLinks::class);
$GLOBALS['SOBE']->browser->init();
$modData = $GLOBALS['BE_USER']->getModuleData('browse_links.php', 'ses');
list($modData, $store) = $GLOBALS['SOBE']->browser->processSessionData($modData);
$GLOBALS['BE_USER']->pushModuleData('browse_links.php', $modData);
$this->content = $GLOBALS['SOBE']->browser->main_rte();
}
}
示例13: init
function init($conf)
{
$this->conf = $conf;
$this->pi_setPiVarDefaults();
$this->pi_loadLL();
$this->pi_initPIflexForm();
// Init FlexForm configuration for plugin
$this->pi_USER_INT_obj = 1;
// Make the plugin not cachable
$this->hooks = array();
if (is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF'][$this->extKey][$this->scriptRelPath])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF'][$this->extKey][$this->scriptRelPath] as $classRef) {
$this->hooks[] =& \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
}
}
/* --------------------------------------------------
Configuration (order of priority)
- FlexForm
- TypoScript
-------------------------------------------------- */
$conf['use_mailer'] = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('direct_mail') ? 'direct_mail' : '';
$flex = array();
$options = array('default_group' => 'sDEF', 'default_type' => 'sDEF', 'mail_from' => 'sDEF', 'mail_from_name' => 'sDEF', 'mail_notify' => 'sDEF', 'mail_reply' => 'sDEF', 'mail_reply_name' => 'sDEF', 'mail_return' => 'sDEF', 'page_edit' => 'sDEF', 'page_redirect_unsubscribe' => 'sDEF', 'show_default' => 'sDEF', 'template' => 'sDEF');
foreach ($options as $option => $sheet) {
$value = $this->pi_getFFvalue($this->cObj->data['pi_flexform'], $option, $sheet);
if ($value) {
switch ($option) {
case 'template':
$flex[$option] = 'uploads/tx_odsajaxmailsubscription/' . $value;
break;
default:
$flex[$option] = $value;
break;
}
}
}
$this->config = array_merge($conf, $flex);
if ($this->cObj->data['pages']) {
$this->config['page_records'] = $this->cObj->data['pages'];
}
if ($this->cObj->data['recursive']) {
$this->config['page_records_recursive'] = $this->cObj->data['recursive'];
}
$this->config['mail_from'] = strtr($this->config['mail_from'], array('###DOMAIN###' => $_SERVER['HTTP_HOST']));
if (empty($this->config['page_edit'])) {
$this->config['page_edit'] = $GLOBALS['TSFE']->id;
}
// Backward compatibility to 0.2.x
if (is_numeric($this->config['default_group'])) {
$this->config['default_group'] = 'sys_dmail_group_' . $this->config['default_group'];
}
}
示例14: getConfiguredMailer
/**
* Create a configured mailer from a newsletter page record.
* This mailer will have both plain and html content applied as well as files attached.
*
* @param \Ecodev\Newsletter\Domain\Model\Newsletter The newsletter
* @param int $language
* @return \Ecodev\Newsletter\Mailer preconfigured mailer for sending
*/
public static function getConfiguredMailer(Newsletter $newsletter, $language = null)
{
// Configure the mailer
$mailer = new Mailer();
$mailer->setNewsletter($newsletter, $language);
// hook for modifying the mailer before finish preconfiguring
if (is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['newsletter']['getConfiguredMailerHook'])) {
foreach ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['newsletter']['getConfiguredMailerHook'] as $_classRef) {
$_procObj = GeneralUtility::getUserObj($_classRef);
$mailer = $_procObj->getConfiguredMailerHook($mailer, $newsletter);
}
}
return $mailer;
}
示例15: getHooks
/**
* Get hook objects.
*
* @param string $className Class name
* @param string $hookName Hook name
*
* @return array
*/
public static function getHooks($className, $hookName)
{
$className = 'commerce/' . $className;
$result = array();
static::mapClassName($className);
static::mapHookName($className, $hookName);
$extConf =& $GLOBALS['TYPO3_CONF_VARS']['EXTCONF'];
if (is_array($extConf[$className][$hookName])) {
foreach ($extConf[$className][$hookName] as $classRef) {
$result[] = \TYPO3\CMS\Core\Utility\GeneralUtility::getUserObj($classRef);
}
}
return $result;
}