‪TYPO3CMS  9.5
AdministrationController.php
Go to the documentation of this file.
1 <?php
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
27 use ‪TYPO3\CMS\Extbase\Mvc\Web\Request as WebRequest;
31 
37 {
42 
46  protected ‪$pageUid = 0;
47 
51  protected ‪$external_parsers = [];
52 
56  protected ‪$indexerConfig = [];
57 
61  protected ‪$enableMetaphoneSearch = false;
62 
68  protected ‪$indexer;
69 
75  protected ‪$defaultViewObjectName = BackendTemplateView::class;
76 
82  protected ‪$view;
83 
89  protected function ‪initializeView(‪ViewInterface ‪$view)
90  {
91  if (‪$view instanceof ‪BackendTemplateView) {
93  parent::initializeView(‪$view);
95  $pageRecord = ‪BackendUtility::readPageAccess($this->pageUid, $permissionClause);
96  if ($pageRecord) {
98  }
99  $this->‪generateMenu();
100  $this->view->getModuleTemplate()->setFlashMessageQueue($this->controllerContext->getFlashMessageQueue());
101  ‪$view->‪assign('extensionConfiguration', $this->indexerConfig);
102  }
103  }
104 
108  protected function ‪generateMenu()
109  {
110  $menuItems = [
111  'index' => [
112  'controller' => 'Administration',
113  'action' => 'index',
114  'label' => $this->‪getLanguageService()->‪sL('LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:administration.menu.general')
115  ],
116  'pages' => [
117  'controller' => 'Administration',
118  'action' => 'pages',
119  'label' => $this->‪getLanguageService()->‪sL('LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:administration.menu.pages')
120  ],
121  'externalDocuments' => [
122  'controller' => 'Administration',
123  'action' => 'externalDocuments',
124  'label' => $this->‪getLanguageService()->‪sL('LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:administration.menu.externalDocuments')
125  ],
126  'statistic' => [
127  'controller' => 'Administration',
128  'action' => 'statistic',
129  'label' => $this->‪getLanguageService()->‪sL('LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:administration.menu.statistic')
130  ]
131  ];
132  ‪$uriBuilder = $this->objectManager->get(UriBuilder::class);
133  ‪$uriBuilder->setRequest($this->request);
134 
135  $menu = $this->view->getModuleTemplate()->getDocHeaderComponent()->getMenuRegistry()->makeMenu();
136  $menu->setIdentifier('IndexedSearchModuleMenu');
137 
138  foreach ($menuItems as $menuItemConfig) {
139  $isActive = $this->request->getControllerActionName() === $menuItemConfig['action'];
140  $menuItem = $menu->makeMenuItem()
141  ->setTitle($menuItemConfig['label'])
142  ->setHref($this->‪getHref($menuItemConfig['controller'], $menuItemConfig['action']))
143  ->setActive($isActive);
144  $menu->addMenuItem($menuItem);
145  }
146 
147  $this->view->getModuleTemplate()->getDocHeaderComponent()->getMenuRegistry()->addMenu($menu);
148  }
149 
153  public function ‪initializeAction()
154  {
155  $this->pageUid = (int)GeneralUtility::_GET('id');
156  $this->indexerConfig = GeneralUtility::makeInstance(ExtensionConfiguration::class)->get('indexed_search');
157  $this->enableMetaphoneSearch = (bool)$this->indexerConfig['enableMetaphoneSearch'];
158  $this->indexer = GeneralUtility::makeInstance(Indexer::class);
159 
160  parent::initializeAction();
161  }
162 
170  public function ‪processRequest(\‪TYPO3\CMS\‪Extbase\Mvc\RequestInterface ‪$request, \‪TYPO3\CMS\‪Extbase\Mvc\ResponseInterface ‪$response)
171  {
172  $vars = GeneralUtility::_GET('tx_indexedsearch_web_indexedsearchisearch');
173 
174  $beUser = $this->‪getBackendUserAuthentication();
175  if (is_array($vars) && isset($vars['action']) && method_exists($this, $vars['action'] . 'Action')) {
176  $action = $vars['action'];
177 
178  switch ($action) {
179  case 'saveStopwordsKeywords':
180  $action = 'statisticDetails';
181  break;
182  case 'deleteIndexedItem':
183  $action = 'statistic';
184  break;
185  }
186 
187  $beUser->uc['indexed_search']['action'] = $action;
188  $beUser->uc['indexed_search']['arguments'] = ‪$request->‪getArguments();
189  $beUser->writeUC();
190  } elseif (isset($beUser->uc['indexed_search']['action'])) {
191  if (‪$request instanceof WebRequest) {
192  ‪$request->setControllerActionName($beUser->uc['indexed_search']['action']);
193  }
194  if (isset($beUser->uc['indexed_search']['arguments'])) {
195  ‪$request->‪setArguments($beUser->uc['indexed_search']['arguments']);
196  }
197  }
198 
199  parent::processRequest(‪$request, ‪$response);
200  }
201 
206  {
207  $this->administrationRepository = ‪$administrationRepository;
208  }
209 
213  public function ‪indexAction()
214  {
215  $this->view->assignMultiple([
216  'records' => $this->administrationRepository->getRecordsNumbers(),
217  'phash' => $this->administrationRepository->getPageHashTypes()
218  ]);
219 
220  if ($this->pageUid) {
221  $expressionBuilder = GeneralUtility::makeInstance(ConnectionPool::class)
222  ->getQueryBuilderForTable('index_stat_word')
223  ->expr();
224 
225  $last24hours = $expressionBuilder->gt('tstamp', ‪$GLOBALS['EXEC_TIME'] - 86400);
226  $last30days = $expressionBuilder->gt('tstamp', ‪$GLOBALS['EXEC_TIME'] - 30 * 86400);
227 
228  $this->view->assignMultiple([
229  'pageUid' => $this->pageUid,
230  'all' => $this->administrationRepository->getGeneralSearchStatistic('', $this->pageUid),
231  'last24hours' => $this->administrationRepository->getGeneralSearchStatistic($last24hours, $this->pageUid),
232  'last30days' => $this->administrationRepository->getGeneralSearchStatistic($last30days, $this->pageUid),
233  ]);
234  }
235  }
236 
240  public function ‪pagesAction()
241  {
242  $this->view->assign('records', $this->administrationRepository->getPageStatistic());
243  }
244 
248  public function ‪externalDocumentsAction()
249  {
250  $this->view->assign('records', $this->administrationRepository->getExternalDocumentsStatistic());
251  }
252 
258  public function ‪statisticDetailsAction($pageHash = 0)
259  {
260  $pageHash = (int)$pageHash;
261  // Set back button
262  $icon = $this->view->getModuleTemplate()->getIconFactory()->getIcon('actions-view-go-up', ‪Icon::SIZE_SMALL);
263  $backButton = $this->view->getModuleTemplate()->getDocHeaderComponent()
264  ->getButtonBar()->makeLinkButton()
265  ->setTitle($this->‪getLanguageService()->‪sL('LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:administration.back'))
266  ->setIcon($icon)
267  ->setHref($this->‪getHref('Administration', 'statistic'));
268  $this->view->getModuleTemplate()->getDocHeaderComponent()
269  ->getButtonBar()->addButton($backButton);
270 
271  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_phash');
272  $pageHashRow = $queryBuilder
273  ->select('*')
274  ->from('index_phash')
275  ->where(
276  $queryBuilder->expr()->eq(
277  'phash',
278  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
279  )
280  )
281  ->execute()
282  ->fetch();
283 
284  if (!is_array($pageHashRow)) {
285  $this->‪redirect('statistic');
286  }
287 
288  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_debug');
289  $debugRow = $queryBuilder
290  ->select('*')
291  ->from('index_debug')
292  ->where(
293  $queryBuilder->expr()->eq(
294  'phash',
295  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
296  )
297  )
298  ->execute()
299  ->fetchAll();
300  $debugInfo = [];
301  $lexer = '';
302  if (is_array($debugRow)) {
303  $debugInfo = unserialize($debugRow[0]['debuginfo']);
304  $lexer = $debugInfo['lexer'];
305  unset($debugInfo['lexer']);
306  }
307  $pageRecord = ‪BackendUtility::getRecord('pages', $pageHashRow['data_page_id']);
308  $keywords = is_array($pageRecord) ? array_flip(GeneralUtility::trimExplode(',', $pageRecord['keywords'], true)) : [];
309 
310  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_words');
311  $wordRecords = $queryBuilder
312  ->select('index_words.*', 'index_rel.*')
313  ->from('index_words')
314  ->from('index_rel')
315  ->where(
316  $queryBuilder->expr()->eq(
317  'index_rel.phash',
318  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
319  ),
320  $queryBuilder->expr()->eq(
321  'index_words.wid',
322  $queryBuilder->quoteIdentifier('index_rel.wid')
323  )
324  )
325  ->orderBy('index_words.baseword')
326  ->execute()
327  ->fetchAll();
328  foreach ($wordRecords as $id => $row) {
329  if (isset($keywords[$row['baseword']])) {
330  $wordRecords[$id]['is_keyword'] = true;
331  }
332  }
333  $metaphoneRows = $metaphone = [];
334  if ($this->enableMetaphoneSearch && is_array($wordRecords)) {
335  // Group metaphone hash
336  foreach ($wordRecords as $row) {
337  $metaphoneRows[$row['metaphone']][] = $row['baseword'];
338  }
339 
340  foreach ($metaphoneRows as $hash => $words) {
341  if (count($words) > 1) {
342  $metaphone[] = [
343  'metaphone' => $this->indexer->metaphone($words[0], 1), $hash,
344  'words' => $words,
345  'hash' => $hash
346  ];
347  }
348  }
349  }
350 
351  // sections
352  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_section');
353  $sections = $queryBuilder
354  ->select('*')
355  ->from('index_section')
356  ->where(
357  $queryBuilder->expr()->eq(
358  'phash',
359  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
360  )
361  )
362  ->execute()
363  ->fetchAll();
364 
365  // top words
366  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_words');
367  $topCountWords = $queryBuilder
368  ->select('index_words.baseword', 'index_words.metaphone', 'index_rel.*')
369  ->from('index_words')
370  ->from('index_rel')
371  ->setMaxResults(20)
372  ->where(
373  $queryBuilder->expr()->eq(
374  'index_rel.phash',
375  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
376  ),
377  $queryBuilder->expr()->eq(
378  'index_words.is_stopword',
379  $queryBuilder->createNamedParameter(0, \PDO::PARAM_INT)
380  ),
381  $queryBuilder->expr()->eq(
382  'index_words.wid',
383  $queryBuilder->quoteIdentifier('index_rel.wid')
384  )
385  )
386  ->orderBy('index_rel.count', 'DESC')
387  ->execute()
388  ->fetchAll();
389 
390  // top frequency
391  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_words');
392  $topFrequency = $queryBuilder
393  ->select('index_words.baseword', 'index_words.metaphone', 'index_rel.*')
394  ->from('index_words')
395  ->from('index_rel')
396  ->setMaxResults(20)
397  ->where(
398  $queryBuilder->expr()->eq(
399  'index_rel.phash',
400  $queryBuilder->createNamedParameter($pageHash, \PDO::PARAM_INT)
401  ),
402  $queryBuilder->expr()->eq(
403  'index_words.is_stopword',
404  $queryBuilder->createNamedParameter(0, \PDO::PARAM_INT)
405  ),
406  $queryBuilder->expr()->eq(
407  'index_words.wid',
408  $queryBuilder->quoteIdentifier('index_rel.wid')
409  )
410  )
411  ->orderBy('index_rel.freq', 'DESC')
412  ->execute()
413  ->fetchAll();
414 
415  $this->view->assignMultiple([
416  'phash' => (int)$pageHash,
417  'phashRow' => $pageHashRow,
418  'words' => $wordRecords,
419  'sections' => $sections,
420  'topCount' => $topCountWords,
421  'topFrequency' => $topFrequency,
422  'debug' => $debugInfo,
423  'lexer' => $lexer,
424  'metaphone' => $metaphone,
425  'page' => $pageRecord,
426  'keywords' => $keywords
427  ]);
428  }
429 
438  public function ‪saveStopwordsKeywordsAction($pageHash, $pageId, $stopwords = [], $keywords = [])
439  {
440  if ($this->‪getBackendUserAuthentication()->isAdmin()) {
441  if (is_array($stopwords) && !empty($stopwords)) {
442  $this->administrationRepository->saveStopWords($stopwords);
443  }
444  if (is_array($keywords) && !empty($keywords)) {
445  $this->administrationRepository->saveKeywords($keywords, $pageId);
446  }
447  }
448 
449  $this->‪redirect('statisticDetails', null, null, ['pageHash' => $pageHash]);
450  }
451 
458  public function ‪wordDetailAction($id = 0, $pageHash = 0)
459  {
460  $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('index_phash');
461  $rows = $queryBuilder
462  ->select('index_phash.*', 'index_section.*', 'index_rel.*')
463  ->from('index_rel')
464  ->from('index_section')
465  ->from('index_phash')
466  ->where(
467  $queryBuilder->expr()->eq(
468  'index_rel.wid',
469  $queryBuilder->createNamedParameter($id, \PDO::PARAM_INT)
470  ),
471  $queryBuilder->expr()->eq(
472  'index_rel.phash',
473  $queryBuilder->quoteIdentifier('index_section.phash')
474  ),
475  $queryBuilder->expr()->eq(
476  'index_section.phash',
477  $queryBuilder->quoteIdentifier('index_phash.phash')
478  )
479  )
480  ->orderBy('index_rel.freq', 'desc')
481  ->execute()
482  ->fetchAll();
483 
484  $this->view->assignMultiple([
485  'rows' => $rows,
486  'phash' => $pageHash
487  ]);
488  }
489 
496  public function ‪statisticAction($depth = 1, $mode = 'overview')
497  {
498  foreach (‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['indexed_search']['external_parsers'] ?? [] as $extension => $className) {
500  $fileContentParser = GeneralUtility::makeInstance($className);
501  if ($fileContentParser->softInit($extension)) {
502  $this->external_parsers[$extension] = $fileContentParser;
503  }
504  }
505  $this->administrationRepository->external_parsers = ‪$this->external_parsers;
506 
507  $allLines = $this->administrationRepository->getTree($this->pageUid, $depth, $mode);
508 
509  $this->view->assignMultiple([
510  'levelTranslations' => explode('|', $this->‪getLanguageService()->sL('LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:labels.enterSearchLevels')),
511  'tree' => $allLines,
512  'pageUid' => $this->pageUid,
513  'mode' => $mode,
514  'depth' => $depth
515  ]);
516  }
517 
525  public function ‪deleteIndexedItemAction($id, $depth = 1, $mode = 'overview')
526  {
527  $this->administrationRepository->removeIndexedPhashRow($id, $this->pageUid, $depth);
528  $this->‪redirect('statistic', null, null, ['depth' => $depth, 'mode' => $mode]);
529  }
530 
540  protected function ‪getHref($controller, $action, $parameters = [])
541  {
542  ‪$uriBuilder = $this->objectManager->get(UriBuilder::class);
543  ‪$uriBuilder->setRequest($this->request);
544  return ‪$uriBuilder->reset()->uriFor($action, $parameters, $controller);
545  }
546 
550  protected function ‪getBackendUserAuthentication()
551  {
552  return ‪$GLOBALS['BE_USER'];
553  }
554 
558  protected function ‪getLanguageService()
559  {
560  return ‪$GLOBALS['LANG'];
561  }
562 }
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\getHref
‪string getHref($controller, $action, $parameters=[])
Definition: AdministrationController.php:532
‪TYPO3\CMS\Backend\Template\Components\DocHeaderComponent\setMetaInformation
‪setMetaInformation(array $metaInformation)
Definition: DocHeaderComponent.php:61
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\processRequest
‪processRequest(\TYPO3\CMS\Extbase\Mvc\RequestInterface $request, \TYPO3\CMS\Extbase\Mvc\ResponseInterface $response)
Definition: AdministrationController.php:162
‪TYPO3\CMS\Core\Imaging\Icon\SIZE_SMALL
‪const SIZE_SMALL
Definition: Icon.php:29
‪TYPO3\CMS\Extbase\Annotation
Definition: IgnoreValidation.php:4
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\pagesAction
‪pagesAction()
Definition: AdministrationController.php:232
‪TYPO3\CMS\Extbase\Mvc\Cli\Request\setArguments
‪setArguments(array $arguments)
Definition: Request.php:207
‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication\getPagePermsClause
‪string getPagePermsClause($perms)
Definition: BackendUserAuthentication.php:523
‪TYPO3\CMS\Core\Configuration\ExtensionConfiguration
Definition: ExtensionConfiguration.php:42
‪TYPO3\CMS\Extbase\Mvc\Controller\AbstractController\$uriBuilder
‪TYPO3 CMS Extbase Mvc Web Routing UriBuilder $uriBuilder
Definition: AbstractController.php:37
‪TYPO3\CMS\Core\Imaging\Icon
Definition: Icon.php:25
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder
Definition: UriBuilder.php:29
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\initializeAction
‪initializeAction()
Definition: AdministrationController.php:145
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\statisticDetailsAction
‪statisticDetailsAction($pageHash=0)
Definition: AdministrationController.php:250
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$enableMetaphoneSearch
‪bool $enableMetaphoneSearch
Definition: AdministrationController.php:56
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\generateMenu
‪generateMenu()
Definition: AdministrationController.php:100
‪TYPO3
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\wordDetailAction
‪wordDetailAction($id=0, $pageHash=0)
Definition: AdministrationController.php:450
‪TYPO3\CMS\Extbase\Mvc\Cli\Request\getArguments
‪array getArguments()
Definition: Request.php:243
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$indexerConfig
‪array $indexerConfig
Definition: AdministrationController.php:52
‪TYPO3\CMS\Core\Localization\LanguageService\sL
‪string sL($input)
Definition: LanguageService.php:158
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$administrationRepository
‪AdministrationRepository $administrationRepository
Definition: AdministrationController.php:40
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\getBackendUserAuthentication
‪BackendUserAuthentication getBackendUserAuthentication()
Definition: AdministrationController.php:542
‪TYPO3\CMS\Core\Type\Bitmask\Permission
Definition: Permission.php:23
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController
Definition: AdministrationController.php:37
‪TYPO3\CMS\IndexedSearch\Domain\Repository\AdministrationRepository
Definition: AdministrationRepository.php:37
‪TYPO3\CMS\Backend\View\BackendTemplateView\assign
‪TYPO3 CMS Fluid View AbstractTemplateView assign($key, $value)
Definition: BackendTemplateView.php:93
‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController\$response
‪TYPO3 CMS Extbase Mvc Response $response
Definition: ActionController.php:93
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\statisticAction
‪statisticAction($depth=1, $mode='overview')
Definition: AdministrationController.php:488
‪TYPO3\CMS\IndexedSearch\Controller
Definition: AdministrationController.php:2
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\getLanguageService
‪LanguageService getLanguageService()
Definition: AdministrationController.php:550
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\initializeView
‪initializeView(ViewInterface $view)
Definition: AdministrationController.php:81
‪TYPO3\CMS\Extbase\Mvc\Controller\AbstractController\redirect
‪redirect($actionName, $controllerName=null, $extensionName=null, array $arguments=null, $pageUid=null, $delay=0, $statusCode=303)
Definition: AbstractController.php:284
‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
Definition: BackendUserAuthentication.php:45
‪TYPO3\CMS\Core\Type\Bitmask\Permission\PAGE_SHOW
‪const PAGE_SHOW
Definition: Permission.php:32
‪TYPO3\CMS\Extbase\Mvc\View\ViewInterface
Definition: ViewInterface.php:21
‪TYPO3\CMS\Backend\Utility\BackendUtility
Definition: BackendUtility.php:72
‪TYPO3\CMS\Extbase\Mvc\Web\Request
Definition: Request.php:21
‪TYPO3\CMS\Backend\Utility\BackendUtility\getRecord
‪static array null getRecord($table, $uid, $fields=' *', $where='', $useDeleteClause=true)
Definition: BackendUtility.php:130
‪TYPO3\CMS\Backend\View\BackendTemplateView
Definition: BackendTemplateView.php:27
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$pageUid
‪int $pageUid
Definition: AdministrationController.php:44
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:5
‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController\$request
‪TYPO3 CMS Extbase Mvc Request $request
Definition: ActionController.php:87
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\saveStopwordsKeywordsAction
‪saveStopwordsKeywordsAction($pageHash, $pageId, $stopwords=[], $keywords=[])
Definition: AdministrationController.php:430
‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController
Definition: ActionController.php:31
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$view
‪BackendTemplateView $view
Definition: AdministrationController.php:74
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getDocHeaderComponent
‪DocHeaderComponent getDocHeaderComponent()
Definition: ModuleTemplate.php:314
‪TYPO3\CMS\Backend\View\BackendTemplateView\getModuleTemplate
‪ModuleTemplate getModuleTemplate()
Definition: BackendTemplateView.php:55
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\indexAction
‪indexAction()
Definition: AdministrationController.php:205
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$external_parsers
‪array $external_parsers
Definition: AdministrationController.php:48
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\injectAdministrationRepository
‪injectAdministrationRepository(AdministrationRepository $administrationRepository)
Definition: AdministrationController.php:197
‪TYPO3\CMS\Core\Localization\LanguageService
Definition: LanguageService.php:29
‪TYPO3\CMS\Core\Database\ConnectionPool
Definition: ConnectionPool.php:44
‪TYPO3\CMS\IndexedSearch\Indexer
Definition: Indexer.php:38
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:45
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\deleteIndexedItemAction
‪deleteIndexedItemAction($id, $depth=1, $mode='overview')
Definition: AdministrationController.php:517
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$defaultViewObjectName
‪BackendTemplateView $defaultViewObjectName
Definition: AdministrationController.php:68
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\$indexer
‪TYPO3 CMS IndexedSearch Indexer $indexer
Definition: AdministrationController.php:62
‪TYPO3\CMS\Backend\Utility\BackendUtility\readPageAccess
‪static array bool readPageAccess($id, $perms_clause)
Definition: BackendUtility.php:635
‪TYPO3\CMS\IndexedSearch\Controller\AdministrationController\externalDocumentsAction
‪externalDocumentsAction()
Definition: AdministrationController.php:240