ChangeLog

Version 5.6.2, 18 May 2026
[BUGFIX]  Security Bugfix. Please update!

Version 5.6.1, 15 November 2024
[BUGFIX]  Fix regression which required a startingpoint to be always set. https://github.com/tpwd/ke_search/issues/257
[TASK]    Update non-oo zip library calls in OoxmlConversion to ZipArchive ones. Thanks to Defcon0. https://github.com/tpwd/ke_search/pull/255

Version 5.6.0, 8 November 2024
[FEATURE] Make it possible to index multiple additional tables for a content element. https://github.com/tpwd/ke_search/issues/230
[FEATURE] Allow recursive indexing of additional content

Version 5.5.3, 25 October 2024
[BUGFIX]  Undefined array key "sortByAdmin". Thanks to Simon Praetorius. https://github.com/tpwd/ke_search/issues/252
[BUGFIX]  parse_ini_string(): Passing null to parameter #1 ($ini_string) of type string is deprecated. Thanks to medarob. https://github.com/tpwd/ke_search/issues/247

Version 5.5.2, 23 August 2024
[BUGFIX]  Fix cropping if "resultChars" is empty. Thanks to Andreas Kießling. https://github.com/tpwd/ke_search/issues/242
[BUGFIX]  Fix regression in page indexer if translated page is not available. Thanks to Jens Vollmer. https://github.com/tpwd/ke_search/issues/243

Version 5.5.1, 16 August 2024
[FEATURE] Add garbage collection for statistics table
[BUGFIX]  Use correct table names for query builder or connection. Thanks to Andreas Kießling. https://github.com/tpwd/ke_search/issues/228
[BUGFIX]  Respect configured Doktypes while Auto-Tagging. Thanks to magicHatOfTYPO3. https://github.com/tpwd/ke_search/pull/235
[TASK]    Add check if MySQL indexes are enabled on the index table and show an error in the backend module if not

Version 5.5.0, 17 May 2024
[FEATURE] Add pagination in the backend module "Indexed content" function and avoid out of memory error. https://github.com/tpwd/ke_search/issues/100
[FEATURE] Remove obsolete records during incremental indexing. Records and files which should not be indexed (e.g. pages with "no_index" flag) are now removed from the index during incremental indexing. Previously only hidden and deleted pages, records and files were removed.
[BUGFIX]  Render file preview in result list only for files which are in the "imagefile_ext" list (images and PDF files). https://github.com/tpwd/ke_search/issues/60
[BUGFIX]  Don't stop indexing if a folder does not exist. Thanks to Philip Hartmann. https://github.com/tpwd/ke_search/issues/225
[TASK]    Add BEGIN and COMMIT statements needed to run ke_search in a Percona-Database-Cluster with strict-mode. Thanks to rentz-skygate. https://github.com/tpwd/ke_search/issues/222
[TASK]    Improve logging for Indexer database actions and output errors in indexing report. https://github.com/tpwd/ke_search/issues/59
[TASK]    Show name of the indexer in which an error occurred in the indexing report.

Version 5.4.1, 19 April 2024
[BUGFIX]  Always remove duplicates from tags, not only when a tag is set in the indexer configuration. https://github.com/tpwd/ke_search/issues/211
[BUGFIX]  Fix TypeError after 'RemoveLock'. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/issues/223
[BUGFIX]  Avoid PHP warning "Undefined array key" in TimeUtility. https://github.com/tpwd/ke_search/issues/221

Version 5.4.0, 12 April 2024
[!!!]     The generation of tags has been updated. If a tag is auto-generated e.g. from a category title, it will now be changed if it does not meet the requirements (length, allowed characters, not in list of stop words). If it is too short or is in the list of stop words, the character "A" will be appended automatically. That may affect your filters if you are using tags that don't meet the requirements. In that case re-index and check if the tags in filter options match the tags in the index.
[FEATURE] Make sure stop words are not used as tags, https://github.com/tpwd/ke_search/issues/81
[FEATURE] Show progress of indexing in backend module and in console command, add new console command "indexerstatus". https://github.com/tpwd/ke_search/issues/216
[TASK]    Update default pagination template, add first and last page. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/issues/219 and https://github.com/tpwd/ke_search/pull/218
[TASK]    Add "ignorePageTypeRestriction" to TCA configs, allow records on default pages and the root page in TYPO3 v12. Thanks to Dimitri König. https://github.com/tpwd/ke_search/pull/212

Version 5.3.0, 23 February 2024
[FEATURE] Make it possible to index content from additional tables in the pages and content element indexer, eg. for EXT:mask and EXT:bootstrap_package. Bootstrap package elements are pre-configured. Thanks for sponsoring to La Sierra University. https://github.com/tpwd/ke_search/issues/104
[FEATURE] Index files linked in "link" fields
[FEATURE] Add incremental indexer for tt_content records. https://github.com/tpwd/ke_search/issues/63
[BUGFIX]  Don't overwrite collected files. https://github.com/tpwd/ke_search/issues/150
[BUGFIX]  Avoid PHP warning "Undefined array key" for "alternative" and "description". Thanks to medarob. https://github.com/tpwd/ke_search/pull/215
[TASK]    Raise requirement of TYPO3 to 11.5.11. https://github.com/tpwd/ke_search/issues/208
[TASK]    Avoid instantiating of page indexer object in news indexer
[DOCS]    Add documentation about using custom labels

Version 5.2.1, 12 January 2024
[!!!]     The plugin base class has changed from Tpwd\KeSearch\Lib\Pluginbase to Tpwd\KeSearch\Plugins\PluginBase. This is a breaking change if you use the hook modifySearchWords and use typed variables. You will then have to adapt the type of that object in your hook.
[TASK]    Remove dependency to AbstractPlugin, https://github.com/tpwd/ke_search/issues/204
[TASK]    Remove usages of GeneralUtility::_GET, GeneralUtility::_GP, $_GET and $_POST, https://github.com/tpwd/ke_search/issues/205
[TASK]    Refactor id variable in BackendModuleController to make extension scanner happy
[TASK]    Add ignore annotations for extension scanner false positives
[TASK]    Replace usage of deprecated functions orX() and andX()
[TASK]    Add label to "Index Overview" widget (shown since TYPO3 12), and use only one color in the bar chart
[TASK]    Use ContextualFeedbackSeverity instead of AbstractMessage to set severity
[TASK]    Register upgrade wizards using attributes
[BUGFIX]  Don't index files from hidden file references. Thanks to Kamel Ben Yedder, https://github.com/tpwd/ke_search/issues/206

Version 5.2.0, 8 December 2023
[!!!]     The pagebrowser is now rendered in a different way (using the pagination API). If you used a custom template for the pagebrowser you will have to adopt it. Have a look at Resources/Private/Partials/PageBrowser.html
[TASK]    Use pagination API to render pagination, https://github.com/tpwd/ke_search/issues/174 and https://github.com/tpwd/ke_search/issues/154
[TASK]    Properly type-hint IndexerBase constructor, thanks to hotbytes-dev, https://github.com/tpwd/ke_search/pull/202
[BUGFIX]  Avoid undefined array key warning for "sphinxLimit"

Version 5.1.3, 10 November 2023
[BUGFIX]  Replace all occurences of additional word characters, not only the first one. Thanks to K. Quiatkowski. https://github.com/tpwd/ke_search/issues/19
[TASK]    Show hidden content in backend module "Indexed content" function
[DOCS]    Add hint about using the additional word characters feature for searching for @ when using InnoDB
[BUGFIX]  Fix regression introduced in version 5.0.0 which made empty searches slow because tags were fetched too often, thanks to Stephan Bauer, https://github.com/tpwd/ke_search/issues/4

Version 5.1.2, 27 October 2023
[BUGFIX]  Keep the original value for "loadFlexformsFromOtherCE" even if the search box plugin has an empty value in the FlexForm which lead to empty search results, thanks to Uwe Hawkeye1909, https://github.com/tpwd/ke_search/issues/142

Version 5.1.1, 27 October 2023
[BUGFIX]  Fix regression introduced in 5.1.0 (search was always empty), https://github.com/tpwd/ke_search/issues/195

Version 5.1.0, 20 October 2023
[FEATURE] Additional word characters: Allows searching for words containing e.g. dots or hyphens, https://github.com/tpwd/ke_search/issues/19
[TASK]    Exclude all parameters (including filters) from cHash calculation, thanks to Uwe Hawkeye1909, https://github.com/tpwd/ke_search/issues/187
[BUGFIX]  Allow to use 'loadFlexformsFromOtherCE' parameter for TypoScript-instantiated plugins, thanks to Garvin Hicking, https://github.com/tpwd/ke_search/pull/152
[BUGFIX]  Avoid undefined array key "sortWithoutSearchword", "resultsPerPage" and "noResultsText", https://github.com/tpwd/ke_search/issues/151
[BUGFIX]  Avoid slow TYPO3 backend list view due to missing sql index, thanks to Daniel Siepmann, https://github.com/tpwd/ke_search/issues/190
[TASK]    Pass $field to modifyContentFromContentElement hook, thanks to Marc Harding, https://github.com/tpwd/ke_search/pull/192/
[BUGFIX]  Fix encoding of spaces in file path, thanks to Jan-Claas Dirks, https://github.com/tpwd/ke_search/pull/189

Version 5.0.4, 15 September 2023
[TASK]    Exclude ke_search parameters from cacheHash validation, thanks to Andreas Mühe and schlotzz, https://github.com/tpwd/ke_search/issues/149
[BUGFIX]  Avoid undefined array key in indexer runner, thanks to ecosmox36. https://github.com/tpwd/ke_search/issues/160
[TASK]    Prevent indexing when file metadata is missing, thanks to Moritz Ngo, https://github.com/tpwd/ke_search/pull/182
[TASK]    Handle deprecation warnings with TYPO3 v12, thanks to Markus Volkmer, https://github.com/tpwd/ke_search/pull/186
[BUGFIX]  Avoid undefined array key "resultChars", thanks to Stephan Bauer, https://github.com/tpwd/ke_search/pull/185

Version 5.0.3, 18 August 2023
[BUGFIX]  Show dashboard widgets in TYPO3 12, thanks to Torben Hansen, https://github.com/tpwd/ke_search/issues/170
[BUGFIX]  Avoid undefined array key warning in doc, pdf and xls file indexers, thanks to Andreas Kessel, https://github.com/tpwd/ke_search/issues/171
[BUGFIX]  Don't use LocalizationUtility in scheduled command, thanks to kd-bin, https://github.com/tpwd/ke_search/issues/169

Version 5.0.2, 13 June 2023
[BUGFIX]  Security Bugfix. Please update!

Version 5.0.1, 2 June 2023
[BUGFIX]  Fix undefined array key issues, cherry-pick fix from https://github.com/tpwd/ke_search/commit/5a9ce7063ce89c4de249e720a91490930a885edf
[BUGFIX]  Fix regression caused by "mixed" type hint which is not available for PHP 7.4, see https://github.com/tpwd/ke_search/issues/166

Version 5.0.0, 26 May 2023
[!!!]     This version supports TYPO3 12 and 11 and drops support for TYPO3 10.
[!!!]     If you use a custom template for "SearchForm.html" please replace "{f:uri.page(pageUid: targetpage)}" with "{targetPageUrl}".
[TASK]    Mark extension as compatible with TYPO3 12 and drop support for TYPO3 10
[TASK]    Add getOptions function to widget and add type declarations.
[TASK]    Replace execute with executeQuery and executeStatement
[TASK]    Apply changes from rector v11 rules and respect protected cObj
[TASK]    Remove deprecated languageService initialization
[TASK]    Remove DBALException annotation
[TASK]    Remove obsolete icon registration
[TASK]    Use new module registration and remove CSH file registration
[TASK]    Replace be.container viewhelper
[TASK]    Refactor fetching the number of records in the index
[TASK]    Refactor searchresult class to reduce dependencies
[TASK]    Replace fetch with fetchAssociative and declare property in PluginBaseHelper
[TASK]    Avoid using f:uri viewhelper in the searchbox template because that now only works in extbase context.
[TASK]    Add property types
[TASK]    Rework backend module to work with TYPO3 12
[TASK]    Migrate outdated fetch() calls in query builder usages
[TASK]    Cleanup: Remove unused properties
[TASK]    Update PHPStan configuration
[TASK]    Migrate language specific function calls
[TASK]    Remove obsolete page access check in backend module
[TASK]    Remove obsolete ignoreErrors pattern for PHPStan
[TASK]    Apply changes from php-cs-fixer
[TASK]    Migrate fetch and fetchAll commands
[TASK]    Add ignoreErrors setting for PHPStan for backend controller for v11

Version 4.6.5, 26 May 2023
[BUGFIX]  Fix fetching tags from Sphinx

Version 4.6.4, 17 March 2023
[TASK]    Add language to groupBy in trending search phrases widget to avoid MySQL error
[TASK]    Always add TypoScript configuration for dashboard widgets. Thanks to Sven Proffe. https://github.com/tpwd/ke_search/issues/147
[BUGFIX]  Apply rawurlencode only to file title. Thanks to Muhammad Zohaib. https://github.com/tpwd/ke_search/issues/146
[BUGFIX]  Fix comparision which checks if a tag is in the result set
[BUGFIX]  Fix undefined array key issues

Version 4.6.3, 3 February 2023
[!!!]     If you use the RouteEnhancer you will need to set one character default values for list and select filters. see Documentation/Configuration/RoutingSpeakingUrls.rst or https://github.com/tpwd/ke_search/commit/add3cb93c0c570f65b27bdb6edf28aa3bdbae5f6#diff-4df14275bdd91be559ccf5c988e352bd5f89da95790065d9015f1a32e60ca97f
[BUGFIX]  Make it possible to reset preselected filters. https://github.com/tpwd/ke_search/issues/134 and https://github.com/tpwd/ke_search/issues/126

Version 4.6.2, 13 January 2023
[BUGFIX]  Fix SQL query for assigning tags from page properties to work with sql_mode ONLY_FULL_GROUP_BY. Thanks to p-view. https://github.com/teaminmedias-pluswerk/ke_search/issues/448
[BUGFIX]  Enable creation of filter options from categories for hidden and time restricted categories. Thanks to Andreas Kessel. https://github.com/tpwd/ke_search/pull/144

Version 4.6.1, 13 January 2023
[TASK]    Respect workspace flag for content elements. Thanks to alexmari81. https://github.com/tpwd/ke_search/issues/139

Version 4.6.0, 6 January 2023
[!!!]     In this version the deprecated scheduler task is removed, use the provided schedulable console command instead.
[!!!]     To use the feature "Make search word parameter changeable" you will need to adapt the changes in the template "SearchForm.html" (line 13-17, line 31) to your own template.
[!!!]     This version changes the database structure.
[!!!]     This version does not respect the field "hidden" for disabling indexing for files anymore (not a default field for files). Use the new field "tx_kesearch_no_search" in file metadata ("Include in search" in the new tab "Search").
[FEATURE] Make search word parameter changeable to be able to track search words with GA4. Thanks to Mike Street. https://github.com/tpwd/ke_search/issues/124
[FEATURE] Create tags for assigned categories for tt_news indexer. Thanks for sponsoring to Nervenschoner Informatik GmbH.
[FEATURE] Exclude files from indexing by deactivating "Include in search" in the new tab "Search" in file metadata. https://github.com/tpwd/ke_search/issues/20
[BUGFIX]  Fix typehint and quoting for targetpid parameter from int to string. Thanks to Naderio. https://github.com/tpwd/ke_search/issues/129
[BUGFIX]  Fix undefined array key includeFilters in Pluginbase.php. Thanks to Andreas Kessel. https://github.com/tpwd/ke_search/pull/133
[BUGFIX]  Add tags only to pages which are in the list of to be indexed pages. Thanks to ped. https://github.com/tpwd/ke_search/issues/135
[TASK]    Remove deprecated scheduler task for indexing, use schedulable console command instead as explained in https://docs.typo3.org/p/tpwd/ke_search/main/en-us/Indexing/Index.html#starting-the-indexing-process-automatically
[TASK]    Add PHPStan as dev requirement
[TASK]    Add TYPO3/coding-standards as dev requirement
[TASK]    Code cleanup according to PHPStan
[TASK]    Code cleanup according to PHPStorm code inspections
[TASK]    Code cleanup according to php-cs-fixer
[TASK]    Add PHPStan check as a GitHub Action
[TASK]    Add php-cs-fixer check as a GitHub Action
[TASK]    Remove unused Behat tests for now
[TASK]    Add startingPoints public method to Filter class. Thanks to Mike Street. https://github.com/tpwd/ke_search/pull/132
[TASK]    Make sure sword parameter is a string. Thanks to Chris Müller. https://github.com/tpwd/ke_search/issues/137
[TASK]    Log errors during PDF indexing to ke_search error log. Thanks to Markus Tobler. https://github.com/tpwd/ke_search/issues/140.
[DOCS]    Fix documentation about when the conjunctions in the search phrase won't work.
[DOCS]    Add information about contributing in README.rst

Version 4.5.1, September 2022
[BUGFIX]  Fix labels for hidden_content and show hidden_content in index records (applies only when index records are made visible by Page TSconfig).
[BUGFIX]  Show images with language "All" in result list. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/issues/77
[BUGFIX]  Ignore empty values for preselected filters in order to make them work with route enhancers and pagination. Thanks to André Steiling. https://github.com/tpwd/ke_search/issues/126
[TASK]    Do not fetch page records and do not add tags to page records if no startingpoints are given to avoid SQL error. Thanks to Veljko Stefanovic. https://github.com/tpwd/ke_search/issues/117 and https://github.com/tpwd/ke_search/issues/66
[TASK]    Add static Page TSconfig file which allows to only show ke_search records in the New Record wizard. Thanks to Michael Reuber
[TASK]    Rename Page TSconfig file suffix from .txt to .tsconfig.
[DOCS]    Fix link to ke_search_hooks repository and extend documentation about custom indexers. Thanks to Luka C. https://github.com/tpwd/ke_search/issues/122
[DOCS]    Add sortdate to the routing example
[DOCS]    Add documentation about custom filter rendering

Version 4.5.0, September 2022
[!!!]     This version changes the database structure and ads an additional fulltext index. Please do a full indexing after upgrading.
[FEATURE] Index custom file references in page indexer. Thanks to Patrick Crausaz. https://github.com/tpwd/ke_search/pull/119
[FEATURE] Index custom fields in tt_content. https://github.com/tpwd/ke_search/issues/102
[FEATURE] Add column "hidden_content" in the index table which is used for searching but is not displayed in the result list, add ModifyFieldValuesBeforeStoringEvent for adding content to that column.
[BUGFIX]  Give dependencies when instantiating Db object and activate autoconfigure and auto-wiring for Db. https://github.com/tpwd/ke_search/issues/78
[BUGFIX]  Fix link to non-FAL-files in result list. https://github.com/tpwd/ke_search/issues/118
[TASK]    Remove unnecessary removing of replacement character, see https://github.com/tpwd/ke_search/commit/af9f166f241728916a726ae453a676997a0f3b7d#r76324249
[TASK]    Add MatchColumnsEvent, remove the dependency in the Db class, inject the EventDispatcher
[DOCS]    Add information about using conjunctions with partial word search. https://github.com/tpwd/ke_search/issues/121

Version 4.4.5, June 2022
[BUGFIX]  Remove unicode replacement character in PDF indexing. Thanks to Kamel Ben Yedder. https://github.com/tpwd/ke_search/pull/114
[BUGFIX]  Fix regression from version 4.4.2 which caused the search result to be empty when the search box is on a different page. https://github.com/tpwd/ke_search/issues/113

Version 4.4.4, June 2022
[TASK]    Go back to fetch() from fetchAssociative() for backwards compatibility

Version 4.4.3, June 2022
[BUGFIX]  Fix undefined array key issue
[BUGFIX]  Fix regression which threw an error when showing file results in TYPO3 10

Version 4.4.2, June 2022
[BUGFIX]  Use localized search result images. https://github.com/tpwd/ke_search/issues/77
[BUGFIX]  Fix typo in tt_content indexer file indexing. Thanks to Nimmermaer. https://github.com/tpwd/ke_search/pull/97
[BUGFIX]  Fix fetching of the FlexForm settings in the list view plugin
[TASK]    Move modifyFlexFormData before calling getFilterPreselect to make it possible to modify the preselected filters
[TASK]    Add TypoScript configuration option "additionalAllowedPiVars" which allows the usage of custom piVars, see Configuration/TypoScript/setup.typoscript
[TASK]    Group plugins in plugin selector by using addTcaSelectItemGroup. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/pull/92
[TASK]    Remove deprecated TCA configurations. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/pull/93
[TASK]    Clean up ext_emconf.php. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/94
[TASK]    Add file metadata to resultrow. https://github.com/tpwd/ke_search/issues/75
[DOCS]    Align with new TYPO3 documentation standards. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/95

Version 4.4.1, May 2022
[BUGFIX]  Add PHP version constraint. Thanks to Mathias Brodala. https://github.com/tpwd/ke_search/pull/89

Version 4.4.0, April 2022
[!!!]     For files indexed by the non-FAL-indexer the absolute path is now stored in the index instead of the relative path.
[!!!]     The file modification date is not part of the hash for indexed files anymore. That means all files have to be re-indexed after updating the extension. Please start the full indexing.
[!!!]     This version needs at least PHP 7.4, although it is not stated in the composer.json.
[FEATURE] Add incremental indexing for files. https://github.com/tpwd/ke_search/issues/64
[FEATURE] Add date range filter. https://github.com/tpwd/ke_search/issues/40
[BUGFIX]  Fix PHP8 issue with non-existing array index in file indexer. https://github.com/tpwd/ke_search/issues/84
[BUGFIX]  Avoid typo3conf path when including backend CSS file. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/80
[BUGFIX]  Unset page parameter for filter options in 'list' type filter. https://github.com/tpwd/ke_search/issues/24
[BUGFIX]  Fix PHP 8 issue: Missing extConfPremium Configuration results in Error. https://github.com/tpwd/ke_search/issues/86
[BUGFIX]  Empty search result results in many 'SELECT from tags ...'. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/pull/9
[BUGFIX]  Fix cleanup of nested piVars
[TASK]    Use dependency injection in commands. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/72
[TASK]    Use "extension configuration" over "extension manager configuration". Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/69
[TASK]    Streamline wording of "FlexForm". Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/70/
[TASK]    Simplify determining of log level in ext_localconf.php. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/71
[TASK]    Add "ext-pdo" as requirement in composer.json. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/73
[TASK]    Add log message when inserting or updating records. https://github.com/tpwd/ke_search/issues/58
[TASK]    Unset page parameter in link viewhelper if it links to the first page. https://github.com/tpwd/ke_search/issues/22
[TASK]    Remove multiple option for filter selection flexform
[DOCS]    Improve chapter about search word length. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/68
[DOCS]    Add tip for adding more search metrics to Matomo. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/76

Version 4.3.1, February 2022
[BUGFIX]  Fix bug which made filtering unusable. https://github.com/tpwd/ke_search/issues/74

Version 4.3.0, February 2022
[!!!]     This version removes the dashboard requirement introduced in the last version and makes it optional again.
[!!!]     This version makes it possible to index "shortcut" content elements. For that you need to add "shortcut" to the list "Content element types which should be indexed" in existing indexer configurations.
[FEATURE] Index shortcut content records in page indexer. Thanks to Benjamin Franzke. https://github.com/tpwd/ke_search/pull/7
[FEATURE] Add dashboard preset. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/41
[FEATURE] Switch off filter rendering in result list if not needed. Thanks to Stephan Bauer. https://github.com/tpwd/ke_search/pull/3
[BUGFIX]  Fix PHP8 issues in frontend. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/27
[BUGFIX]  Fix PHP8 issues in backend. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/28
[BUGFIX]  Fix PHP8 issues in indexers. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/26
[BUGFIX]  Fix typos. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/32
[BUGFIX]  Display hours in status widget correctly. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/38
[BUGFIX]  Avoid PHP8 errors in backend module. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/39
[BUGFIX]  Do not show preview image if the file does not exist and do not link to those files. https://github.com/tpwd/ke_search/issues/42
[BUGFIX]  Pagebrowser strips logical operators from search phrase, breaking functionality. https://github.com/tpwd/ke_search/issues/46
[BUGFIX]  Add fallback when label in TCA is not defined. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/48
[BUGFIX]  Avoid undefined array key when filter options availability is not checked. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/50
[TASK]    Avoid PHP 8.1 deprecations when indexing. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/37
[TASK]    Remove PHP 8.1 deprecations. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/31
[TASK]    Remove PHP 8.1 Deprecations. https://github.com/tpwd/ke_search/commit/bdbba5d0bac74f724f727aa5d857fb00adfa59d7
[TASK]    Allow plugins in composer 2.2. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/29
[TASK]    Make dashboard optional. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/30
[TASK]    Use .Build folder for dependencies. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/33
[TASK]    Register icons via service container. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/34
[TASK]    Move extension icon into Resources/Public/Icons folder. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/35
[TASK]    Check if content element with search configuration is accessible. https://github.com/tpwd/ke_search/commit/739eca9374bc10216c498b028bbd481a4786c993
[TASK]    Remove usage of deprecated strftime() function and use localized date format in the backend controller. https://github.com/tpwd/ke_search/commit/cfde92f32ceeac3c2d966e9c590946a8e1576654
[TASK]    Add .gitattributes files. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/44
[TASK]    Remove outdated doktypes. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/43
[TASK]    Remove superfluous condition in checkbox filter. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/49
[TASK]    Close html tag in SearchForm template. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/51
[TASK]    Optimize int cast of preselected filters. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/52
[DOCS]    Add missing documentation for hooks for indexers. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/36
[DOCS]    Revise "Translating filter". Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/45
[DOCS]    Link to TER for older versions and add a note about where the source code is managed. https://github.com/tpwd/ke_search/commit/09366b594c4ec6c338b5045ee04a5af53a270214
[DOCS]    Add description for documentation. https://github.com/tpwd/ke_search/commit/451723698b13e3ca3f68b39fc2c01ff3fa99cf6f
[DOCS]    Link to TER version of ke_search_hooks instead of GitHub
[DOCS]    Use consistent wording for ViewHelper and TypoScript
[DOCS]    Beautify documentation. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/54
[DOCS]    Add Matomo guide for statistics of search words. Thanks to Chris Müller. https://github.com/tpwd/ke_search/pull/56

Version 4.2.0, December 2021
[!!!]     This version has a new requirement (EXT:dashboard).
[FEATURE] Add cachable searchbox. Thanks to Stephan Bauer. https://github.com/teaminmedias-pluswerk/ke_search/pull/430
[BUGFIX]  Do not create preview images for files attached in the workspace version of a record. Thanks to medarob. https://github.com/teaminmedias-pluswerk/ke_search/issues/434
[BUGFIX]  Fix toggling of indexed content in the backend module for TYPO3 11 by using Bootstrap 5 data attributes.
[TASK]    Add dashboard as a requirement because it's not possible to check if dashboard is installed when the widgets are registered. https://github.com/tpwd/ke_search/issues/15

Version 4.1.0, October 2021
[!!!]     This version supports TYPO3 10 and 11 and drops support for TYPO3 9.
[TASK]    Remove support for TYPO3 9
[TASK]    Make extension installable with TYPO3 11
[TASK]    Switch from xml to xlf language files
[TASK]    Replace deprecated GeneralUtility::milliseconds() with native PHP function
[TASK]    Add check if static template is included
[TASK]    Adapt usage of filePathSanitizer to TYPO3 11
[TASK]    Use new namespace for PageRepository
[TASK]    Move commands registration from Commands.php to Services.yaml
[TASK]    Move dependency injection for AbstractBackendModuleController from inject annotation to constructor injection
[BUGFIX]  Fix syntax error with PHP 7.2 and 7.3. Thanks to Benjamin Franzke. https://github.com/tpwd/ke_search/pull/5
[TASK]    Remove usage of deprecated constant TYPO3_MODE, see https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/11.0/Deprecation-92947-DeprecateTYPO3_MODEAndTYPO3_REQUESTTYPEConstants.html
[BUGFIX]  Fix the check which action is currently set in the backend module, fixes error: Could not ultimately dispatch the request after 101 iterations
[TASK]    Show document header in backend module
[DOCS]    Add documentation about MySQL stopwords. Thanks to Torben Hansen. https://github.com/tpwd/ke_search/issues/13

Version 4.0.1, October 2021
[TASK]    Use new ke_search_premium 4 namespace "tpwd"

Version 4.0.0, September 2021
[!!!]     This version changes the namespace for ke_search to "twpd". If you extend or use classes of ke_search, please make sure to use the new namespace in your code.
[TASK]    Move repository and issue tracker to https://github.com/tpwd/ke_search
[TASK]    Switch namespace to tpwd
[TASK]    Remove hidden records (pages, news, tt_news, tt_address) from the index when indexer is running in incremental mode

Version 3.9.0, July 2021
[TASK]    Update label for automated_tagging, Thanks to OnyxPisces, https://github.com/teaminmedias-pluswerk/ke_search/issues/421
[TASK]    Add documentation on how to show images for custom indexers
[TASK]    Update backend module to use TYPO3 styles. Thanks to Mike Street. https://github.com/teaminmedias-pluswerk/ke_search/pull/427
[TASK]    Make pluginbase accessible in searchphrase hooks. Thanks to Philip Hartmann. https://github.com/teaminmedias-pluswerk/ke_search/pull/432
[BUGFIX]  Add missing closing p tag. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/431
[TASK]    Allow filters to be rendered in result list. Thanks to Mike Street. https://github.com/teaminmedias-pluswerk/ke_search/pull/428

Version 3.8.1, June 2021
[TASK]    Return JSON if in headless mode (ke_search_premium feature)

Version 3.8.0, May 2021
[!!!]     Scheduler task "Indexing process for ke_search" is deprecated now. Please use "Execute console commands" -> "ke_search:indexing" instead.
[FEATURE] Add incremental indexing feature
[FEATURE] Add incremental indexing support for page indexer and these extension indexers: news, tt_news, tt_address
[TASK]    Move dateformat definition from locallang_dashboard.xml to locallang.xlf
[TASK]    Use dateformat from locallang.xlf in backend module
[TASK]    Make "start indexing" console command schedulable. Make scheduler task deprecated (use console command instead).
[TASK]    Take sys_language_uid from tt_address record instead of using -1 because tt_address supports localization.

Version 3.7.2, May 2021
[TASK]    Add hook "getOrdering" to allow thirt-party extensions to modify the sorting.
[TASK]    Do not ask for confirmation in "clear index" command anymore since this breaks execution in the scheduler. Thanks to Christian Hackl. https://github.com/teaminmedias-pluswerk/ke_search/issues/419
[TASK]    Catch exception when fetching links to files in content elements. Thanks to medarob. https://github.com/teaminmedias-pluswerk/ke_search/issues/417

Version 3.7.1, May 2021
[TASK]    Provide url and label for the sorting links to the fluid template instead of a pre-rendered a-tag which cannot be customized.
[TASK]    Highlights hits inside words if ke_search_premium and "in word search" is used.

Version 3.7.0, April 2021
[!!!]     This version changes the database structure!
[TASK]    Do not index initial placeholders and other records not in the live workspace. https://github.com/teaminmedias-pluswerk/ke_search/issues/220
[TASK]    Add file information to resultrow (including filesize). Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/issues/408
[TASK]    Remove a21glossary indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/252
[TASK]    Remove unused database field tvpath
[TASK]    Remove cal indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/251
[TASK]    Support sending notification mail in TYPO3 10
[BUGFIX]  Fix Typoscript language overlay trough _LOCAL_LANG doesn't work in pi2. Thanks to Kay Röseler. https://github.com/teaminmedias-pluswerk/ke_search/issues/137

Version 3.6.1, March 2021
[TASK]    Register widgets only if EXT:dashboard is available. https://github.com/teaminmedias-pluswerk/ke_search/issues/409
[TASK]    Improve indexing time output in status widget

Version 3.6.0, March 2021
[!!!] This version adds a language detection for files. It tries to detect the language of file from metadata field 'language'. The field 'language' comes with the optional extension 'filemetadata".
      This may change the behaviour in which languages files appear. Before this version all files would appear in all languages. Now if a langauge could be dermined, the file will only appear in that language.
[!!!] The CSS file is now defined in the typoscript configuration and must be cleared via typoscript if you want to use your own. Before this version this the plugin configuration field had be cleared.
[!!!] The search box is now of type "search" instead of "text". This may affect your styling and you man need to adjust your CSS.
[TASK]    Change namespace of Fileinfo class to match with its path.
[FEATURE] Add dashboard widget which shows the indexer status. https://github.com/teaminmedias-pluswerk/ke_search/issues/346
[FEATURE] Add dashboard widget which shows the index overview. https://github.com/teaminmedias-pluswerk/ke_search/issues/346
[FEATURE] Add dashboard widget which shows the used search phrases of the last seven days. https://github.com/teaminmedias-pluswerk/ke_search/issues/346
[TASK]    Refactor indexer end time calculation and make use of the registry
[TASK]    Add section 'extra' in order to avoid of composer warning. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/400
[BUGFIX]  wordsTooShort does not show up if option 'basic.allowEmptySearch' is set to false. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/403
[TASK]    Move css file to typoscript configuration. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/404
[FEATURE] Add language detection for files. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/405
[TASK]    Use type "search" instead of "text" for the search box, activate search field validation in the browser. Thanks to ste101. https://github.com/teaminmedias-pluswerk/ke_search/pull/407

Version 3.5.0, March 2021
[TASK]    Use uri.resource viewhelper instead of direct path to load the styles for the backend module. Thanks to Mike Street. https://github.com/teaminmedias-pluswerk/ke_search/issues/227#issuecomment-777476726
[TASK]    Use resultrow.date_timestamp instead of resultrow.date in the default template. https://github.com/teaminmedias-pluswerk/ke_search/issues/44
[TASK]    Refactor file indexing methods by moving them from the news indexer to IndexerBase
[FEATURE] Add indexer for EXT:tt_news. Thanks for sponsoring to Michael Lackenberger
[DOCS]    Add documentation about the storage engine for tx_kesearch_index
[BUGFIX]  Do not use tags set in tt_content elements as tags for pages which have by accident the the same UID
[BUGFIX]  Fix missing closing li tags. Thanks to al-Iskandar. https://github.com/teaminmedias-pluswerk/ke_search/issues/398
[BUGFIX]  Fix validation error, move a tag out of ul tag.
[TASK]    Remove unnecessary script type in search form
[BUGFIX]  Replace plain URL with speaking URL only if the search is not empty to prevent cutting off parameters on every page when the search plugin is inserted on every page. Thanks to christophbee. https://github.com/teaminmedias-pluswerk/ke_search/issues/399

Version 3.4.2, February 2021
[BUGFIX]  Field orig_row in search result is never filled with row data. Thanks to hackmus. https://github.com/teaminmedias-pluswerk/ke_search/issues/392

Version 3.4.1, February 2021
[BUGFIX]  Fix ViewHelper requires $resetFilters as array. Thanks to Daniel Kruse and crealistiques. https://github.com/teaminmedias-pluswerk/ke_search/issues/391
[BUGFIX]  The page indexer does not respect 'singe_pages' in page translations. Thanks to Zellwerker and Markus Gerdes. https://github.com/teaminmedias-pluswerk/ke_search/issues/390 and https://github.com/teaminmedias-pluswerk/ke_search/issues/389.
[DOCS]    Improve labels in indexer configuration and documentation on multilingual setup.
[BUGFIX]  Linked files on excluded page get indexed. Thanks to LuxEix. https://github.com/teaminmedias-pluswerk/ke_search/issues/388

Version 3.4.0, January 2021
[!!!]     The naming convention of tags has changed. Only alphanumeric characters are now allowed (no spaces, dashes, underscore or special characters anymore).
          Please run the provided upgrade wizard "keSearchMakeTagsAlphanumericUpgradeWizard" and re-index. You may need to adjust custom scripts if they create tags.
[!!!]     Filter options now have a "slug" field. Please run the provided upgrade wizard "keSearchPopulateFilterOptionsSlugsUpgradeWizard".
[!!!]     Some templates have changed. See Configuration -> Routing in the documentation.
[TASK]    Add string as datatype to uid param for findByUidAndType(). Thanks to escapevisual. https://github.com/teaminmedias-pluswerk/ke_search/pull/381
[FEATURE] Add add allowEmptySearch setting, by deactivating no query will be executed if no searchword or filter is set. Thanks to Marcel Tams. https://github.com/teaminmedias-pluswerk/ke_search/pull/382
[TASK]    Catch error if MySQL KEYS are disabled during first indexing. https://github.com/teaminmedias-pluswerk/ke_search/issues/380
[DOCS]    Add documentation on how to override the record storage page with typoscript. https://github.com/teaminmedias-pluswerk/ke_search/issues/282
[FEATURE] Add routing for TYPO3 9 and 10 (custom routing aspects / mapper, configuration examples, template changes). https://github.com/teaminmedias-pluswerk/ke_search/issues/279
[TASK]    Add validation "alphanum" to filter option tags. Add upgrade wizard. Adjust makeTags function and documentation accordingly. https://github.com/teaminmedias-pluswerk/ke_search/issues/383
[TASK]    Flatten piVars in order make it possible to use aspects in routing and create speaking URLs.
[TASK]    Remove "redirect" parameter, there's now a history.replaceState command in the SearchForm template
[DOCS]    Add example for speaking urls for filters (see Configuration --> Routing in the documentation)
[TASK]    Add slug field and upgrade wizard for filter options.
[FEATURE] Add viewhelper to link to search result pages (see Templating --> Link ViewHelper in the documentation)

Version 3.3.1, October 2020
[BUGFIX]  Allow tags to be empty in SearchHelper::makeTags and makeSystemCategoryTags, fixes regression from last version

Version 3.3.0, October 2020
[!!!]     This version changes the database structure!
[FEATURE] Make original database row available in the result list fluid template.
[FEATURE] Allow system sub-categories to be used as a filter option. Filter options will be created, updated or deleted whenever categories with parent categories assigned to a filter are edited.
[FEATURE] Add new hook for adding third party file previews. Thanks to Jonas Esser. https://github.com/teaminmedias-pluswerk/ke_search/pull/376
[BUGFIX]  Prevent hidden files from beeing indexed. Thanks to Andreas Hager. https://github.com/teaminmedias-pluswerk/ke_search/pull/371
[BUGFIX]  Add missing parameter, fixes a error when running the indexer in debugOnly mode. Thanks to Samir Rachidi. https://github.com/teaminmedias-pluswerk/ke_search/pull/357
[TASK]    Only copy the flexform configuration, not the whole content element. Thanks to ZYZ64738. https://github.com/teaminmedias-pluswerk/ke_search/issues/155
[BUGFIX]  Fix "Only variables can be passed by reference"
[BUGFIX]  Fix undefined variable in news indexer
[BUGFIX]  Fix tt_address records are only indexed from first storage pid. Thanks to Andreas Kießling. https://github.com/teaminmedias-pluswerk/ke_search/issues/374
[BUGFIX]  Fix language overlay bug with filter options. Thanks to Andreas Hager. https://github.com/teaminmedias-pluswerk/ke_search/pull/373
[DOCS]    Add documentation on how to index custom content fields
[TASK]    Log search query to logfile if configured in plugin settings. https://github.com/teaminmedias-pluswerk/ke_search/issues/321
[TASK]    Use class name in indexer report if title is not available.
[TASK]    Show only filter option records for default language in localized pages. https://github.com/teaminmedias-pluswerk/ke_search/issues/367
[DOCS]    Add link to category filter options in news indexing. Thanks to okmiim. https://github.com/teaminmedias-pluswerk/ke_search/pull/377
[BUGFIX]  Only use single_pid of news categories as a target page for news results if the page is reachable.
[TASK]    Use file linkhandler instead of publicUrl for links to files. Thanks to phil64. https://github.com/teaminmedias-pluswerk/ke_search/issues/331
[TASK]    Remove usage of deprecated ResourceFactory::getInstance()
[TASK]    Refactor access to extension configuration
[TASK]    Add missing type declarations in SearchHelper

Version 3.2.0, September 2020
[!!!]     This version changes the database structure!
[FEATURE] Allow system categories to be used as a filter option in ke_search without the need of adding any custom code. Filter options will be created, updated or deleted whenever categories with an assigned filter are edited.
[BUGFIX]  Fix too few arguments to function for custom indexers. https://github.com/teaminmedias-pluswerk/ke_search_hooks/issues/13
[DOCS]    Improve documentation. Thanks to Chris Müller. https://github.com/teaminmedias-pluswerk/ke_search/pull/365
[BUGFIX]  Show option "Don't use FAL" again in file indexer configuration
[DOCS]    Improve documentation on file indexing
[BUGFIX]  Fix news indexer, category selection doesn't contain category UIDs. Thanks to Patrick Crausaz. https://github.com/teaminmedias-pluswerk/ke_search/pull/368
[BUGFIX]  Do not access protected logger in PDF indexer.
[TASK]    Show first image instead of last for news records. Thanks to Robert Wolle. https://github.com/teaminmedias-pluswerk/ke_search/issues/355

Version 3.1.6, July 2020
[FEATURE] Add support for EXT:container, https://github.com/teaminmedias-pluswerk/ke_search/issues/362
[TASK]    Add hook for check if a content element should be indexed, https://github.com/teaminmedias-pluswerk/ke_search/issues/362
[TASK]    Make it possible to override palette miscellaneous. Thanks to Jan Delius. https://github.com/teaminmedias-pluswerk/ke_search/issues/356
[TASK]    Use category selector TCA definition from news extension. Thanks to André Steiling. https://github.com/teaminmedias-pluswerk/ke_search/issues/354
[TASK]    Cleanup ext_localconf.php and ext_tables.php
[TASK]    Instanciate custom indexers the same way as default indexers, making it possible to extend IndexerBase in custom indexers. https://github.com/teaminmedias-pluswerk/ke_search/issues/358

Version 3.1.5, July 2020
[TASK]    Improve documentation about filtering
[TASK]    Add documentation on how to use system categories for filtering
[FEATURE] Allow multiple sortings for search results (setting in plugin flexform)
[BUGFIX]  Fix label for "relevance" in sorting flexform field

Version 3.1.4, July 2020
[!!!][BUGFIX] Security Bugfix. Please update!
[TASK]    Add one more parameter to hook getQueryPart in class Db. Please adopt your hooks if necessary!
[TASK]    Add more options to extension setting "multiplyValueToTitle"
[TASK]    move addPiFlexFormValue calls to TCA overrides. Thanks to Ingo Fabbri. https://github.com/teaminmedias-pluswerk/ke_search/pull/350
[BUGFIX]  Fix "Only variables can be passed by reference" in class Db and in indexer classes
[TASK]    Allow multiple sortings for search results
[BUGFIX]  Fix label for "relevance" in sorting flexform field

Version 3.1.3, April 2020
[TASK]    Set compatibility to TYPO3 10.4
[TASK]    Always Hook modifyPagesIndexEntry. Thanks to beckerr-rzht. https://github.com/teaminmedias-pluswerk/ke_search/pull/348
[BUGFIX]  Only variables can be passed by reference in Page indexer

Version 3.1.2, April 2020
[FEATURE] Add hook 'modifyFieldValuesBeforeStoring' which allows to modify data directly before storing in the database. Thanks to Velletti. https://github.com/teaminmedias-pluswerk/ke_search/issues/130
[BUGFIX]  Fix Data too long for column 'details' in sys_log. https://github.com/teaminmedias-pluswerk/ke_search/issues/342
[BUGFIX]  Only variables can be passed by reference in IndexerRunner
[BUGFIX]  Fix Textlinks filter; it did not work when checkFilterCondition was set to 'none'
[BUGFIX]  Only variables can be passed by reference in hook for modifying filter options and hook for custom filter renderer
[BUGFIX]  fix missing tablename and wrong select arguments for cal events. Thanks to Jürgen Venne. https://github.com/teaminmedias-pluswerk/ke_search/pull/345
[BUGFIX]  Do not remove field "editlock" from palette "miscellaneous" in page properties. Thanks to Naderio. https://github.com/teaminmedias-pluswerk/ke_search/pull/310
[TASK]    Do not set a cookie (a cookie has been set to store the number of search results per filter option)
[TASK]    Show number of filter options only if set (if > 0) (added check in fluid template)
[TASK]    Show number of results in filter options even if "Availability check for filter options" is set to "no check". Thanks to user igaumann. https://github.com/teaminmedias-pluswerk/ke_search/pull/318
[BUGFIX]  Searchword statistics: folder exclusion does not take effect. Thanks to Timo Schulz. https://github.com/teaminmedias-pluswerk/ke_search/pull/336
[BUGFIX]  Respect "Hide default translation of page". Thanks to Marc Lindemann. https://github.com/teaminmedias-pluswerk/ke_search/pull/347
[BUGFIX]  Page Indexer indexes "header" of "html" content element. Thanks to user r3h6. https://github.com/teaminmedias-pluswerk/ke_search/issues/338
[BUGFIX]  Use correct variable name to check if tag already exists / prevent PHP 7.3 deprecation notice. Thanks to Stefan Franke. https://github.com/teaminmedias-pluswerk/ke_search/issues/325
[TASK]    Improve message after indexing for page indexer
[TASK]    Do not add a tag more than once / Fix results counted too often in filter form. Thanks to Johannes Nielsen. https://github.com/teaminmedias-pluswerk/ke_search/issues/312
[TASK]    Remove code of obsolete filter type "textlinks". https://github.com/teaminmedias-pluswerk/ke_search/issues/269
[TASK]    Pass sword to pagination template. Thanks to user revoltek-daniel. https://github.com/teaminmedias-pluswerk/ke_search/pull/329

Version 3.1.1, January 2020
[BUGFIX]  fix regression in compatibility with TYPO3 9: getMetaData() ist not available in TYPO3 9. https://github.com/teaminmedias-pluswerk/ke_search/issues/335.
[BUGFIX]  fix regression: removing css file in typoscript results in an error in Pluginbase.php. https://github.com/teaminmedias-pluswerk/ke_search/issues/333.
[BUGFIX]  flexform sorting field misses renderingType. https://github.com/teaminmedias-pluswerk/ke_search/pull/334.
[BUGFIX]  Setting "show file preview" has no effect, file previews are always shown.https://github.com/teaminmedias-pluswerk/ke_search/issues/327.
[TASK]    Remove script and style tags. https://github.com/teaminmedias-pluswerk/ke_search/issues/317.

Version 3.1.0, January 2020
[TASK]    get sys_languages depending on siteconf from starting points
[BUGFIX]  version switch for module registration
[TASK]    remove deprecated useCacheHash param
[TASK]    move vendor name to controller when registering module
[TASK]    replace _getMetaData() on file objects
[BUGFIX]  add version switch for loglevel config
[TASK]    set general language file path
[BUGFIX]  loglevel in lowercase
[TASK]    set loglevel as string, not normalized
[TASK]    add return values to commands
[BUGFIX]  add language aspect instance
[TASK]    sanitize css path
[TASK]    replace sys_language_id with language aspect
[TASK]    replace PATH_site
[TASK]    replace _GETset() wit setArgument()
[TASK]    set general language path
[TASK]    make flexform work again
[TASK]    set extkey
[TASK]    add TYPO3 10.2 as requirement in addition to 9.5
[BUGFIX]  Fix uncaught TYPO3 Exception Class 'GeneralUtility' not found in Templavoila Indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/316
[TASK]    Add Dutch labels. https://github.com/teaminmedias-pluswerk/ke_search/pull/328
[BUGFIX]  Fix assigning of tags from system categories in file indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/326.

Version 3.0.6, November 2019
[BUGFIX]  Do not show indexed files (and all other content other than "pages") on every page in backend module "Indexed content" mode.
[BUGFIX]  Do not double-index the metadata of a file. fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/149.
[BUGFIX]  Do not double-index the metadata files attached to news records.
[BUGFIX]  Fix configuration for richtext fields in plugin flexform configuration. Fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/315.
[BUGFIX]  Show all filter options in the plugin flexform configuration at "Preselected filter options", not only one per filter. Fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/322.

Version 3.0.5, October 2019
[FEATURE] Index files attached to news. Thanks to d-mind GmbH for sponsoring this feature.
[FEATURE] Add basic behat tests.
[BUGFIX]  Missing logger instance in pdf indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/302
[BUGFIX]  Fix deprecations. https://github.com/teaminmedias-pluswerk/ke_search/issues/283
[BUGFIX]  News indexer category selection not working properly. https://github.com/teaminmedias-pluswerk/ke_search/issues/287
[FEATURE] Index tt_address records with sys_language_uid -1 (all languages). https://github.com/teaminmedias-pluswerk/ke_search/issues/87
[FEATURE] Support tt_address single view. https://github.com/teaminmedias-pluswerk/ke_search/issues/297
[BUGFIX]  "resultsPerPage" not working if >10. https://github.com/teaminmedias-pluswerk/ke_search/issues/280
[TASK]    Show titles of indexed languages in page indexer report.
[BUGFIX]  Do not rely on unifiedPageTranslationHandling feature toggle but on version check (TYPO3 9 or higher) to decide wether or not to query pages instead of pages_language_overlay. https://github.com/teaminmedias-pluswerk/ke_search/issues/305.
[BUGFIX]  Do not ignore content with sys_language_uid = -1, but add it to all language versions of the page. https://github.com/teaminmedias-pluswerk/ke_search/pull/198.

Version 3.0.4, May 2019
[BUGFIX]  Security Bugfix. Please update!
[BUGFIX]  Initialize array to avoid PHP warning. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/273.

Version 3.0.3, January 2019
[TASK]    Changes and fixes needed for TYPO3 9 compatibility of ke_search_premium. https://github.com/teaminmedias-pluswerk/ke_search/pull/270.
[TASK]    Add default type icon as fallback if no type icon was found

Version 3.0.2, January 2019
[BUGFIX]  news indexer does not respect storage folder. https://github.com/teaminmedias-pluswerk/ke_search/pull/266.
[BUGFIX]  different indexer for news has wrong target page. https://github.com/teaminmedias-pluswerk/ke_search/issues/263.
[TASK]    migrate tt_address indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/250.

Version 3.0.1, January 2019
[BUGFIX]  Exception when indexing pages with active extension Gridelements. https://github.com/teaminmedias-pluswerk/ke_search/issues/262.

Version 3.0.0, January 2019
[!!!]     This version changes the database structure!
[!!!]     This version has lots of changes regarding TYPO3 9 LTS. It is not compatible with TYPO3 8 anymore
          (at least it has not been tested). For TYPO3 8 you can still use ke_search 2.X. A lot has been refactored
          (file names, namespacing, doctrince database access) which hopefully makes the code easier to read and
          maintain. Some features have been removed like indexers for obsolete extensions like tt_news and the
          "show score" feature. New features are logging, command controllers and fluid rendered preview images.
[TASK]    Add third parameter (extension key) to addPlugin call.
[TASK]    Add dependency to TYPO3 9.5.
[TASK]    use namespaces for hooks class.
[TASK]    replace deprecated getUserObj with makeInstance.
[TASK]    Move flexform hook class to namespaces.
[TASK]    Remove wizard in flexform configuration.
[TASK]    Remove obsolete calls to marker bases functions.
[TASK]    Remove deprecated call of removeXSS.
[TASK]    Remove deprecated call of utf8_strlen.
[BUGFIX]  Fix wrong default values for additional fields. https://github.com/teaminmedias-pluswerk/ke_search/pull/225.
[TASK]    Remove support for outdated extensions comments, mmforum, t3s_content, ke_yac.
[TASK]    use namespaces for all classes.
[TASK]    Remove obsolete pi3.
[TASK]    Use nicer svg image as wizard icon.
[TASK]    Move plugin flexform configuration files to Configuration/FlexForms.
[TASK]    Move plugin locallang.xml files to Resources/Private/Language/.
[BUGFIX]  Show score when option is enabled even if showPercentalScore is not enabled.
[TASK]    Remove obsolete option showScoreScale and re-order the fields to show showScore and showPercentalScore next to each other in the flexform.
[TASK]    Move wizard icon registration to page TSconfig instead of PHP classes.
[TASK]    Move pageTSconfig to Configuration/Page/.
[TASK]    Move locallang_db.xml to Resources/Private/Language/.
[TASK]    Move ke_search_pi1.css to Resources/Public/Css/.
[TASK]    Delete obsolete file res/backendModule.css.
[TASK]    Delete obsolete file res/scripts/SVG.php.
[TASK]    Delete obsolete file res/img/kesearch_submit.png.
[TASK]    Delete obsolete file res/img/default-indexer.gif.
[TASK]    Delete obsolete file res/img/default-indexer.gif.
[TASK]    Move icons to Resources/Public/Icons and delete folder res/img/. Fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/227.
[BUGFIX]  Do not index content elements on pages set to "no_search" in tt_content-Indexer. https://github.com/teaminmedias-pluswerk/ke_search/pull/228. This fix only is relevant for the tt_content-Indexer, the pages-Indexer respects the no_index-Flag.
[TASK]    Use queryBuilder for database queries.
[FEATURE] Preview image or type icon is rendered by fluid.
[TASK]    Render statistics in fluid (instead of php) and resolve language titles.
[TASK]    Render last indexing report in fluid (instead of php).
[TASK]    Render clear search index view in fluid (instead of php).
[TASK]    Set compatibility to TYPO3 9.5 LTS in composer.json and ext_emconf.
[BUGFIX]  Fix Null pointer exception during indexing. Thanks to Sicor KDL Dev Team. https://github.com/teaminmedias-pluswerk/ke_search/issues/221.
[TASK]    Use proper setup for template, partial and layout paths. https://github.com/teaminmedias-pluswerk/ke_search/issues/240
[TASK]    Remove "Show score" and "Show percental score" feature. https://github.com/teaminmedias-pluswerk/ke_search/issues/253
[TASK]    Remove tt_news Indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/248
[TASK]    Remove Templavoila Indexer. https://github.com/teaminmedias-pluswerk/ke_search/issues/247
[BUGFIX]  TypeIcon / PreviewImage section. Thanks to David Bruchmann. https://github.com/teaminmedias-pluswerk/ke_search/issues/241
[BUGFIX]  Get starting point correct from other CE. Thanks to crealistiques. https://github.com/teaminmedias-pluswerk/ke_search/issues/258
[FEATURE] Implement proper logging. https://github.com/teaminmedias-pluswerk/ke_search/issues/255
[TASK]    Remove cli script and implement command controller. https://github.com/teaminmedias-pluswerk/ke_search/issues/229
[FEATURE] Add command controller script for "clear index"
[FEATURE] Add command controller script for "remove indexer lock"
[BUGFIX]  Make ke_search installable without composer in TYPO3 9 LTS. https://github.com/teaminmedias-pluswerk/ke_search/issues/254
[TASK]    Add documentation in Documentation/ folder. This will be the main source for the documentation. https://www.typo3-macher.de/en/facetted-search-ke-search/documentation/introduction/ is obsolete.
[TASK]    Respect cropping of images for pages. https://github.com/teaminmedias-pluswerk/ke_search/issues/206 and https://github.com/teaminmedias-pluswerk/ke_search/issues/211.
[TASK]    Change index table back to MyISAM since phrase search is not supported by InnoDB and throws an error (had been changed from "InnoDB" to "empty"/"default" in 2.6.1). https://github.com/teaminmedias-pluswerk/ke_search/issues/214.
[BUGFIX]  Fix rendering of file preview image. https://github.com/teaminmedias-pluswerk/ke_search/issues/261.
[TASK]    Remove obsolete code for ke_stats. https://github.com/teaminmedias-pluswerk/ke_search/issues/260.

Version 2.8.0, July 2018
[!!!]     This version changes the database structure!
[TASK]    Use mb_substr and mb_stripos instead of substr() and stripos() in order to crop content in multibyte charsets correctly. Fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/212.
[FEATURE] Improve search fields for pages. Collect fields relevant for search in one tab in the page properties. Introduce two new dedicated fields for abstract and image (Resources -> Media and Metadata -> Abstract still work as fallback). Set "Show abstract" as default behaviour. https://github.com/teaminmedias-pluswerk/ke_search/pull/205
[TASK]    Change orig_uid field to varchar. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/213.
[BUGFIX]  Support files with uppercase extension. Thanks to Dennis Römmich. https://github.com/teaminmedias-pluswerk/ke_search/pull/201.
[TASK]    Hook to overwrite/extend image handling. Thanks to Simon Praetorius. https://github.com/teaminmedias-pluswerk/ke_search/pull/196.
[FEATURE] Add support for file collections. https://github.com/teaminmedias-pluswerk/ke_search/pull/192.
[TASK]    Remove magnifiying glass icon from search form template in order to make it easier to adapt it to a site layout.
[TASK]    Remove some CSS styles in order to make the default style more generic.
[TASK]    Check length of filter option tag name. It must be as long as given option "searchWordLength" indicates. Thanks to Armin Vieweg. https://github.com/teaminmedias-pluswerk/ke_search/pull/147.

Version 2.7.0, April 2018
[TASK]    Make title and and full index content available in text format in the resultrow template (resultrow.title_text and resultrow.content_text).
[FEATURE] Move pagination to Fluid to enable modification of pagination. Thanks to Dennis Römmich. https://github.com/teaminmedias-pluswerk/ke_search/pull/183.
[TASK]    Remove obsolete initTemplate function.
[FEATURE] Add template layout chooser. Thanks to tritum. https://github.com/teaminmedias-pluswerk/ke_search/pull/123.
[TASK]    Cleanup deprecated TCA configurations. Thanks to Tim Lochmüller. https://github.com/teaminmedias-pluswerk/ke_search/pull/189.
[TASK]    Check if file still exists before indexing. https://github.com/teaminmedias-pluswerk/ke_search/issues/158.

Version 2.6.3, January 2018
[BUGFIX]  Fix cli dispatcher script.
[BUGFIX]  Fix string „searchword_length_error“, show the actual setting of minium character. https://github.com/teaminmedias-pluswerk/ke_search/pull/176.
[BUGFIX]  Handle missing plugin configuration. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/185.
[BUGFIX]  Typo when reading conf for highlightedWord_stdWrap. Thanks to Dennis Römmich. https://github.com/teaminmedias-pluswerk/ke_search/pull/186.

Version 2.6.2, December 2017
[BUGFIX]  Add missing delimiter information to preg_quote usage. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/166.
[BUGFIX]  Do not query filter table if no startingpoint is set.
[BUGFIX]  Non-leading search strings should not be marked in the search results in standard edition of ke_search. https://github.com/teaminmedias-pluswerk/ke_search/issues/164.
[BUGFIX] [FEATURE] Improve permission handling, allow multiple file indexes. Thanks to Simon Praetorius. https://github.com/teaminmedias-pluswerk/ke_search/pull/173.

Version 2.6.1, October 2017
[TASK]    Remove storage engine definition in ext_tables.sql (was set to MyISAM) in order to use the default storage engine (InnoDB in MySQL 5.7). https://github.com/teaminmedias-pluswerk/ke_search/issues/159.
[TASK]    Remove method chooseBestIndex. https://github.com/teaminmedias-pluswerk/ke_search/issues/160.
[BUGFIX]  load TypoScriptService correctly depending on the TYPO3 version. https://github.com/teaminmedias-pluswerk/ke_search/issues/161.

Version 2.6.0, October 2017
[BUGFIX]  Avoid duplicate text in search result teaser, https://github.com/teaminmedias-pluswerk/ke_search/pull/141.
[BUGFIX]  Escape all PCRE characters when highlighting searchwords, thanks to Felix Jacobi, https://github.com/teaminmedias-pluswerk/ke_search/pull/119.
[BUGFIX]  Fix for Filter not available in selection with compatibility6 installed, https://github.com/teaminmedias-pluswerk/ke_search/pull/133.
[BUGFIX]  Fix translation of filter options, https://github.com/teaminmedias-pluswerk/ke_search/pull/126
[TASK]    Use correct ellipsis punctuation mark, https://github.com/teaminmedias-pluswerk/ke_search/pull/142.
[TASK]    Remove deprecated occurrences of ArrayUtility:inArray(), thanks to Stephan Salzmann, https://github.com/teaminmedias-pluswerk/ke_search/pull/138.
[BUGFIX]  Fix wrong parameter order when using in_array(). Regression was introduced with https://github.com/teaminmedias-pluswerk/ke_search/pull/138.
[BUGFIX]  Fix indexing of translated pages, https://github.com/teaminmedias-pluswerk/ke_search/pull/146.
[BUGFIX]  Allow multple preselected filter options, https://github.com/teaminmedias-pluswerk/ke_search/issues/116.
[BUGFIX]  Fix regression of searchword highlighting, highlighting did not work with searchwords containing an umlaut. https://github.com/teaminmedias-pluswerk/ke_search/commit/92002beb312ac36b13dfb009f3d8ada9acc3694f#diff-7ea6740aa98f5faef2d72bc72760be71
[FEATURE] Allow indexing of DOCX, PPTX and XLSX files. Thanks to Armin Vieweg. https://github.com/teaminmedias-pluswerk/ke_search/pull/151.
[TASK]    Use preg_quote() for regex quoting. https://github.com/teaminmedias-pluswerk/ke_search/issues/140.
[BUGFIX]  Fix size of preview image. Thanks to Arne Uplegger. https://github.com/teaminmedias-pluswerk/ke_search/pull/150.

Version 2.5.0, May 2017
[BUGFIX]  Support several pages when loading filters and options
[BUGFIX]  Fix missing icon for "list_type" in ke_search plugins
[BUGFIX]  Respect visibility of immediate parent gridelements container when indexing content elements
[BUGFIX]  Make file indexing (from RTE) work with new typolink syntax
[BUGFIX]  Register wizard icon in IconRegistry
[BUGFIX]  Add switch for core locallang files
[TASK]    Remove include of old and outdated tt_news libs
[BUGFIX]  Do not use publicUrl for file manipulation
[FEATURE] RealURL path on form submit
[BUGFIX]  Add urldecode for logging to sys_log
[BUGFIX]  Wrong parent row pages in class.user_filterlist.php
[FEATURE] Support templateRootPaths in Fluid template engine, to be able to overwrite single templates/partials/layouts. https://github.com/teaminmedias-pluswerk/ke_search/pull/96
[TASK]    adaptions to TYPO3 8.7.1.
[TASK]    Remove line indexing while indexing file content. This makes identifying additional content possible.
[BUGFIX]  Fix indexing of the metadata title.
[BUGFIX]  Fix double indexing of metadata. fixes https://github.com/teaminmedias-pluswerk/ke_search/issues/78.
[TASK]    New module and extension icon with .svg format. https://github.com/teaminmedias-pluswerk/ke_search/pull/88.
[TASK]    Add composer support for 8.7. https://github.com/teaminmedias-pluswerk/ke_search/pull/93.
[BUGFIX]  Use l10n_parent for links to translated news. https://github.com/teaminmedias-pluswerk/ke_search/pull/92.
[BUGFIX]  Fix deprecated call of FlashMessage::render()
[BUGFIX]  Make backend module accessible for non-admin users. https://github.com/teaminmedias-pluswerk/ke_search/pull/105.

Version 2.4.2, April 2017
[!!!] Security bugfix, please update!
Note: The github version differs slightly from the TER version, since the TER version contains the security bugfix only.
[TASK]    Cleanup code according to PSR-2 coding styleguide.
[TASK]    Fix minor code inspection bugs.
[BUGFIX]  security bugfix.

Version 2.4.1, October 2016
[TASK]    Set correct limit for ke_search_premium.
[BUGFIX]  Exclude options of filters from translations. Filters should have the same options in all translations. The filter options have to be translated separately. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/65.
[FEATURE] Allow multiple entry points for automated page tagging. You can now select multiple page entry points in each filter option in order to give those page branches a certain tag. Thanks to A. Kalkhoff. https://github.com/teaminmedias-pluswerk/ke_search/pull/63.
[TASK]    Remove fields automated_tagging and automated_tagging_exclude from localization view since they are empty.
[TASK]    Show only filters in default language in the backend plugin configuration. Editors should only be able to select the records in the default language since translation is done in the frontend rendering.

Version 2.4.0, September 2016
[!!!]     This version changes the database structure!
[FEATURE] Enable changing the doktypes which should be indexed in page indexer. Thanks to András Ottó. https://github.com/teaminmedias-pluswerk/ke_search/pull/42
[TASK]    Refactor tx_kesearch_indexer and remove the memory buffering because it may cause duplicate index entries. https://github.com/teaminmedias-pluswerk/ke_search/issues/50.
[TASK]    Remove legacy OpenOffice documention (doc/ folder) in favor of a simple README.rst as proposed in https://docs.typo3.org/typo3cms/CoreApiReference/ExtensionArchitecture/Documentation/Index.html.
[TASK]    Restructure the flexform plugin configuration for a better overview.
[TASK]    Add ke_search_premium fields to "not allowed fields" for ordering because they caused untitled entries in the ordering select box.
[BUGFIX]  Do not double escape html special characters in the searchword field. You have to adjust your fluid template, if you use your own and replace {searchword} with {searchword -> f:format.raw()}. https://forge.typo3.org/issues/75407.
[BUGFIX]  Make external tools work w/ UTF-8 file names by using CommandUtility::escapeShellArgument(). Thanks to Martin Voss. https://github.com/teaminmedias-pluswerk/ke_search/pull/61.
[BUGFIX]  Fix page browser issues with realurl. Thanks to Toben Schmidt. https://forge.typo3.org/issues/77454. https://github.com/teaminmedias-pluswerk/ke_search/pull/62.
[TASK]    Do not hide "layout" field in the backend. https://github.com/teaminmedias-pluswerk/ke_search/issues/60.
[TASK]    Add type, uid and pid to the overview page in the backend module and add some styling.
[TASK]    Make tx_kesearch_tags an exclude-field. https://forge.typo3.org/issues/77281

Version 2.3.1, July 2016
[TASK]    Set version to 2.3.1, just to match the TER version number.

Version 2.3.0, July 2016
[!!!]     This version requires TYPO3 7.6 and is not compatible with TYPO3 6.2 anymore.
[BUGFIX]  Overridden methods need compatible method signatures in PHP7. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/49.
[BUGFIX]  Set correct fileinfo for file references. Fixes duplicate indexing of files (if attached via content element and direct indexing). Thanks to Martin Voss. https://github.com/teaminmedias-pluswerk/ke_search/pull/36.
[FEATURE] Refactor backend module to extbase. Thanks to Bernhard Berger. https://github.com/teaminmedias-pluswerk/ke_search/pull/34.
[TASK]    Properly configure filters and filteroptions for localization. Thanks to Bernhard Berger. https://github.com/teaminmedias-pluswerk/ke_search/pull/38.
[FEATURE] Add raw links to pagebrowser fluid template in order to make it possible to create individual markup for the pagebrowser. Thanks to Andre Michaelis. https://github.com/teaminmedias-pluswerk/ke_search/pull/39.
[BUGFIX]  Fix broken "conflicts" in ext_emconf.php. https://github.com/teaminmedias-pluswerk/ke_search/pull/40.
[BUGFIX]  Fix autoloading and cleanup composer.json. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/54.
[BUGFIX]  Fix invoking the indexer via cli script in TYPO3 7.X. Task not working due to inheriting from non-existing class. https://github.com/teaminmedias-pluswerk/ke_search/issues/45.
[TASK]    Raise TYPO3 minimum version to 7.6.
[TASK]    Add PHP version requirement to composer.json.
[BUGFIX]  Set correct PHP version requirement. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/56.
[BUGFIX]  Use correct setters for Fluid root paths. Thanks to Markus Klein. https://github.com/teaminmedias-pluswerk/ke_search/pull/56.

Version 2.2.1, May 2016
[TASK]    remove &-character from automatically generated tags since tags with & lead to "no search results".
[FEATURE] Speed up file indexing process. Check if a file already has been indexed and in that case fetch the file content directly from the index without invoking external tools like pdf2text. Speeds upd the indexing process a lot if you have lots of indexed files.
[TASK]    Improve call to sphinx indexer (ke_search_premium function).
[TASK]    Do not escape pipe character for sphinx queries (ke_search_premium function).
[TASK]    Re-Implement hook modifyResultList (parameters have changed since the rendering is done by fluid).
[TASK]    Make hook customFilterRenderer work again (parameters have changed since the rendering is done by fluid).

Version 2.2.0, April 2016
[!!!]     In order to restrict the filter options in the backend to those on a certain page, please use the page TSconfig option tx_kesearch.filterStorage = 123 (formerly: kesearch.filterStorage = 123). The syntax has been adopted to the official guidelines.
[!!!]     This version changes the database structure!
[BUGFIX]  Fix fetching the right page uid in class user_filterlist, follow up to https://github.com/teaminmedias-pluswerk/ke_search/pull/9.
[TASK]    cleanup user_filterlist
[FEATURE] Add system categories as tags to indexed pages. That makes it possible to create filters for pages based on system categories.
[BUGFIX]  Fix obsolete calls and missing variable declarations/initializations. Thanks to Bernhard Berger. https://github.com/teaminmedias-pluswerk/ke_search/pull/33.
[FEATURE] Add Suggest Wizard to Flexforms and TCA. Thanks to Bernhard Berger. https://github.com/teaminmedias-pluswerk/ke_search/pull/31.
[TASK]    Render pagebrowser as a html list. Thanks to Fernando Arconada. https://github.com/teaminmedias-pluswerk/ke_search/pull/32.
[TASK]    Remove marker based template.
[TASK]    Remove obsolete images and CSS code.
[BUGFIX]  Fix missing locallang values in the frontend. Use pi1 locallang values for pi1, pi2 and pi3. https://github.com/teaminmedias-pluswerk/ke_search/issues/28.
[FEATURE] Change contenttypes to text to allow a greater list of content elements. Thanks to Felix Jacobi. https://github.com/teaminmedias-pluswerk/ke_search/pull/29.
[BUGFIX]  Fix marker in Checkbox.html. Thanks to Markus Klein. https://forge.typo3.org/issues/75398.

Version 2.1.0, March 2016
[!!!] This version changes the database structure!
[BUGFIX]  Remove obsolete javascript code from searchbox. Thanks to Olaf Döring. https://forge.typo3.org/issues/75134.
[BUGFIX]  Do not index files found on hidden pages. Thanks to Olaf Döring. https://forge.typo3.org/issues/75125.
[FEATURE] Add indexer for extension Calendar Base (cal). Thanks to Andreas Kiefer.
[BUGFIX]  Prevent error in result list when file is missing.
[FEATURE] Add hook for getListOfAvailableFilteroptions. Thanks to Kevin Purrmann. https://github.com/teaminmedias-pluswerk/ke_search/pull/27.

Version 2.0.4
[BUGFIX]  Do not index content elements with colPos -2 which is set by GridElements when you unlink the item from the grid. Thanks to Bernhard Berger. Fixes #21.
[BUGFIX]  Wrong preselectedFilter access in tx_kesearch_filters. Thanks to  Tim Lochmüller. https://forge.typo3.org/issues/73535.
[BUGFIX]  Search word is replaced with placeholder value but shouldn't. https://forge.typo3.org/issues/70026.
[TASK]    Remove marker based template and obsolete code. Fixes #23.

Version 2.0.3
[BUGFIX]  do not add stdWrap properties to arrays in typoscript.

Version 2.0.2
[BUGFIX]  RTE will not be loaded for 7 LTS. Thanks to Johannes Steu.
[BUGFIX]  Initialize local variable $content. Thanks to Armin Vieweg.

Version 2.0.1
[TASK]    index new content elements of type "textmedia" coming with fluid_styled_content. IMPORTANT: Re-Create your page / content element indexer configurations or add "textmedia" manually to the list of content element types which should be indexed.
[FEATURE] Add orig_uid/orig_pid to template at resultrow in order to give more possibilites for conditions.
[FEATURE] Add date as timestamp to template at resultrow in order to make it easier to generate custom date formats.
[TASK]    Make hook for additional markers for the pagebrowser usable in fluid template. Thanks to Tim Lochmüller. https://forge.typo3.org/issues/72562.

Version 2.0.0
This version features fluid templating, composer support and 7LTS compatibility.
*IMPORTANT* This version has breaking changes: Marker based templating has been deprecated and will be
dropped completely, support for TYPO 4.5 has been dropped, parameters of hook calls have changed!
There may be some minor incompatibilities with 6.2 (eg. the icons in the backend) since this versions is mainly
developed for TYPO3 7.

[BUGFIX]  [BREAKING] Fix icon registration for indexer type icons for TYPO3 7.6. Since this is not compatible with 6.2, Icons will not be shown in the backend anymore.
[FEATURE] News indexer should be able to differentiate between active and archived news. Thanks to Felix Jacobi.
[BUGFIX]  Fix if-condition to not show results on empty search but show a custom message. Thanks to Marc Neuhaus.
[BUGFIX]  Fix selection of tags in page properties. Thanks to Martin Voss. https://github.com/teaminmedias-pluswerk/ke_search/issues/14

Version 1.99.7
[BUGFIX]  Fix flexform userfunc for TYPO3 7.6 breaking change #70132. Thanks to Kevin Purrmann.
[TASK]    Refactored TCA definition. Removed tca.php and established Configuration/TCA. Thanks to Kevin Purrmann.
[TASK]    Moved typoscript to Configuration/TypoScript. Thanks to Kevin Purrmann.
[TASK]    Remove locallang_csh.xml since it contained only labels for the 'wrap' function which has been removed.
[TASK]    set version to 1.99.7

Version 1.99.6
[BUGFIX]  Fix TCA for "select"-Type. Add "renderType" option. Thanks to Kevin Purrmann.

Version 1.99.5
[BUGFIX]  [BREAKING] Fix icon file registration for TYPO3 7.6. Since this is not compatible with 6.2, Icons will not be shown in the backend anymore.

Version 1.99.4
[BUGFIX]  Declare makeSystemCategoryTags in tx_kesearch_helper as static. Thanks to Johannes Steu.
[BUGFIX]  Add classmap to composer.json in order to fix autoloading in composer mode. Thanks to Johannes Steu.

Version 1.99.3
[FEATURE] index content elements attached to news (ext:news). Thanks to TRITUM GmbH for sponsoring.

Version 1.99.2
[TASK]    move code hosting to github.com
[FEATURE] add fluid based templating.
[TASK]    raise minimum requirement to TYPO3 version 6.2
[TASK]    remove all checks for TYPO3 version.
[TASK]    add default typoscript template ext_typoscript_setup.txt containing paths for fluid templates.
[TASK]    remove "wrap" option for filter rendering, this can be done in the fluid template.
[TASK]    remove ajax based rendering option in flexform.
[FEATURE] make content types which should be indexed configurable. https://forge.typo3.org/issues/58631. (This can now be done as a comma separated list in the indexer configuration record in the backend.)
[FEATURE] add system categories as generic tags for pages, content elements and files (eg. "syscat123").
[BUGFIX]  fix path information for indexed files, remove the filename from the path, eg. "fileadmin/user_upload/test.pdf" should be "fileadmin/user_upload/".
[FEATURE] add indexer object to hook modifyPagesIndexEntry in pages indexer. Thanks To Ricky Bohse. https://forge.typo3.org/issues/69835.
[CLEANUP] Remove xclassdefintion and php close tags. Thanks to Ruud Silvrants.
[BUGFIX]  Fix invoking cObj $this->$cObj to $this->CObj. Thanks to Ruud Silvrants.
[FEATURE] add hook modifyContentFromContentElement which allows to restructure a content elements bodytext. Thanks to Felix Jacobi. See https://github.com/teaminmedias-pluswerk/ke_search/pull/3 for usage.
[CLEANUP] Use usestatement + adjust deprecated methods to new one. Thanks to Ruud Silvrants.
[BUGFIX]  Fix invoking cObj $this->$cObj to $this->CObj. Thanks to Ruud Silvrants.
[TASK]    add composer.json
[TASK]    remove indexer for DAM since that extension is not available for 6.2 and above.
[TASK]    change TCA for indexer configuration so that dependencies to tt_news and news are only set when these extensions are installed.

Version 1.10.2
* bugfix: add langDisable in flexform, https://forge.typo3.org/issues/64579
* bugfix: fix check for templvoila in templavoila indexer.
* bugfix: remove debug output. Thanks to Felix Jacobi. https://forge.typo3.org/issues/69616
* bugfix: do not try to index folders, only files can be indexed. Thanks to Ricky Bohse. https://forge.typo3.org/issues/68156
* task: add hint to backend form for file indexer that _cli_scheduler must have access rights to file mounts. Thanks to Urs Braem. https://forge.typo3.org/issues/67983

Version 1.10.1
* task: Output error message if PDF file is encrypted but return empty content instead of false.
* bugfix: InWord Search does not work with enableExplicitAnd on Sphinx. Thanks to Marc Bauer. https://forge.typo3.org/issues/67280
* task: remove RemoveXSS.php from res/scripts since it is not needed anymore. https://forge.typo3.org/issues/67602
* task: save page id with indexed files instead of hardcoded "1". https://forge.typo3.org/issues/68723, thanks to Stefan Franke.
* task: remove calls to t3lib_extMgm for 7.4 compatibility.
* bugfix: fix german label for backend module function 5.

Version 1.10.0
* Note: This version updates the database structure!
* task: remove calls to deprecated image functions.
* task: remove deprecated feInterface usage.
* task: add error message if sphinx reports a warning.
* bugfix: checkIfFileWasIndexed not working correctly, https://forge.typo3.org/issues/67169, thanks to Stefan Terborg and Benjamin Schreiber.
* feature: add new hook for cleanup process.
* feature: log indexing report to sys_log and add an option to show the last indexing report in the backend module.

Version 1.9.3
* task: do some cleanup in backend module.
* task: make backend module compatible with TYPO3 7.2.

Version 1.9.2
* bugfix: fix naming for comments indexer hook.
* bugfix: fix comments indexer, set orig_uid and orig_pid.
* task: add information about number of records in index per type and last indexing time in backend module.

Version 1.9.1
* task: fix position of message "searchword too short"
* bugfix: check if array exists in checkbox rendering
* task: do not call CharsetConverter function statically but instantiate the class first.
* bugfix: create correct links to ext:tt_news and ext:news records of type "internal page" and "external link"
* bugfix: respect extendToSubpages not only for fe_group but also for hidden, starttime and endtime. https://forge.typo3.org/issues/45235
* bugfix: ke_search stops because file not found, https://forge.typo3.org/issues/66256

Version 1.9.0
* task: make ke_search compatible with TYPO3 version 7. Adjust class names and use namespaces.
* task: adjust backend module layout to TYPO3 7.
* task: add information about indexer configurations in backend module "start indexing" and show button only if configurations exist.
* task: set default number of filters to show to 10 instead of 0.
* task: change check if external system tools exist (eg. pdfinfo), remove check for PHP safeMode since there's no API for that in TYPO3 version 7 and PHP safeMode is deprecated since PHP 5.3.
* bugfix: fix problem with path to tempory file. For example path contains spaces. Thanks to Nikolay Orlenko.
* task: change default template (slightly) and default css in order to make the appearance more subtile and more suitable to wide range of websites out of the box.

Version 1.8.5, March 2015
* feature: show preview images for results of ext:news. Thanks to designverign GmbH for sponsoring this feature.
* feature: show alternative texts in preview images.
* task: use FAL API for finding preview images.

Version 1.8.4
* bugfix: do not create language overlay for pages for language 0, that creates infinite loops while indexing. https://forge.typo3.org/issues/58427
* bugfix: add hidden pages and pages with no_index flag to the cached pages array, otherwise "extend to subpages" flag has no effect on their subpages and fe_groups are not set.
* bugfix: add pages with all doktypes to the cached pages array, otherwise "extend to subpages" flag has no effect on their subpages and fe_groups are not set.
* bugfix: make target pid changeable via hook in tt_address indexer. Thanks to Nikolay Orlenko. https://forge.typo3.org/issues/63662
* bugfix: allow more than one backend group in access field for index table. Thanks to Frans Saris. https://forge.typo3.org/issues/64860
* bugfix: fix compatibility with version 4.5: dont' render page preview images.
* bugfix: File indexing (FAL enabled) only support public local storages. Thanks to Frans Saris. https://forge.typo3.org/issues/64861
* bugfix: fix compatibility with version 4.5: remove relation to sys_file_storage in TCA for TYPO3 versions below 6.
* bugfix: CLI not possible with TYPO3 6.2.x. Thanks to Ricky Bohse. https://forge.typo3.org/issues/64947

Version 1.8.3
* feature: Show images from pages (field "media" in page properties) in search result list. Activate this function in plugin configuration. Relies on FAL and therefore needs 6.X to work.
* bugfix: Don't combine groups of subpages with groups of parent pages. https://forge.typo3.org/issues/61966
* bugfix: escpape search strings for sphinx search (ke_search_premium).
* bugfix: fix setLimit call for ke_search_premium
* bugfix: fix compatibility to TYPO3 6.1 (FAL _getMetaData function is not available).
* bugfix: fix default value from no_fal to -1 in indexerconfig TCA.
* task: remove field "targetpid" from configuration for "remote" indexer type (needed for ke_search_premium).
* task: add type "external" to result link rendering
* task: add result list icons for external results

Version 1.8.2
* bugfix: Fix tag generation for news categories. fixes regression introduced in 1.8.0.

Version 1.8.1
* task: Move getResultLinkConfiguration to a static function in helper class, this makes it possible to call it from out of ke_search (needed for ke_search_premium).
* bugfix (IMPORTANT): Fix regression introduced in 1.7.2: fronted user group set in page properties should be taken to the corresponding index entry, otherwise protected pages will show up in the search results even if the user is not logged in.

Version 1.8.0, October 2014
* Thanks to swm medienproduktion for sponsoring this version.
* Note: This version updates the database!
* task: Extend hook 'modifyFileIndexEntry' in file indexer. Note: Needs adjustment in your code if you use that hook!
* feature: Index FAL metadata. Index metadata and categories, translate assigned categories to tags. This makes it possible to filter files by assigning system categories to them.
* feature: Show Fal metadata. In result list use title from FAL if a FAL file is indexed.
* feature: Show file thumbnails. Option to show file preview in result list (for pdf and files).
* feature: Index images. When indexing files and there's no indexer for a certain file type, fallback to FAL meta data indexing. This makes it possible to index images with the standalone file indexer.
* feature: allow other image types than .gif for type icons in result list. Icons can be configured like this (Template Setup): plugin.tx_kesearch_pi2.resultListTypeIcon.file_doc.file = fileadmin/img/doc.png (where file_doc stands for file formats like file_xls, file_docx etc. or indexer types like page, news etc.). Image configuration can be used like plugin.tx_kesearch_pi2.resultListTypeIcon.file_doc.file.maxW = 25

Version 1.7.3
* feature: Make it possible to override extension configuration set in extension manager with page typoscript for ke_search and ke_search_premium (Example: ke_search_premium.extconf.override.enableSphinxSearch = 0).

Version 1.7.2
* feature: extend page indexer hook. This makes it possible to modify all values written to the indexer. IMPORTANT: Needs adjustent to your page indexer hooks, add the parameter $indexEntryDefaultValues as last parameter to your modifyPagesIndexEntry function!

Version 1.7.1, September 2014
* feature: new hook modifyFilters in class tx_kesearch_filters.

Version 1.7.0, September 2014
* Note: This version updates the database!
* feature: Show number of results per filter option. Configurable in the filter configuration: Activate "Show number of results for each filter option?" in the filter settings.
* feature: Allow alphabetical sorting for filter options. Can be set in the filter settings by activating the checkbox "Sort filteroptions alphabetically?".
* feature: save language to statistic table. Thanks to Frans Saris, https://forge.typo3.org/issues/59596.
* feature: Improve statistic backend module by show 30 instead of 10 days statistical data and by showing searchphrases additionally to the searchwords. Show statistic for each language.
* feature: add HTML5 placeholder for searchword and new marker searchbox_default_value. Thanks to Frans Saris, https://forge.typo3.org/issues/59474.
* task: After selecting one or more filter options in a certain filter, don't display the other filter options anymore. This was a behaviour which lead to some irritations. Now, after selecting a filter option, you will have to reset this certain filter in order to see all the available filter options. This should be much clearer for the user.
* bugfix: fix "Illegal string offset 'langChildren'" error in backend when inserting pi3 (textlinks multiselection).
* task: show path in backend module in mode "show indexed content".
* bugfix: files indexed by the standalone file indexer can't be tagged. Thanks to Felix Jacobi, https://forge.typo3.org/issues/59543.
* bugfix: after the searchword is removed, sorting for "score" is not possible anymore. So remove this sorting and put it back to default.
* bugfix: fetch search results early in lib, that's needed for calculating the filter options to display in pi1.
* task: cache tags in result list for performance reasons.
* bugfix: show correct number of results per filter option when using sphinx (included in ke_search_premium).

Version 1.6.11
* feature: indexer for extension a21glossary.
* bugfix: Using tx_news with sys categories in the indexer does not always return the right category. Thanks to Sebastian Haak, https://forge.typo3.org/issues/61072.
* bugfix: Don't index non-FAL-files, otherwise error "uid of file has to be numeric" may appear when indexing pages. Thanks to Frans Saris, https://forge.typo3.org/issues/60883.
* bugfix: exception in backend module because of missing second parameter for "funcMenu". https://forge.typo3.org/issues/60485.
* bugfix: error thrown when indexing FAL files (incorrect arguments to EXECUTE when there are files to be indexed). https://forge.typo3.org/issues/58774.
* bugfix: make files from explicit (non-FAL) indexer searchable for all languages, not only the default language. https://forge.typo3.org/issues/60377.

Version 1.6.10, July 2014
* task: make file indexer work again. Implement workaround for core bug. Directories must now typed in comma-separated and cannot be selected via element browser, http://forge.typo3.org/issues/59261 and http://forge.typo3.org/issues/49082.
* bugfix: file indexer throwed an error in the backend module because of a not correct initialized array, thanks to Claudio Kressibucher.

Version 1.6.9, July 2014
* task: improve backend module rendering (adjust to TYPO3 6.2), add more information in "show indexed content" mode.
* task: add hook for modifiying the tags to filter for ('modifyTagsAgainst').
* task: add hook for third party applications to manipulate last part of query building. Thanks to Bastian Bringenberg and Felix Jacobi, http://forge.typo3.org/issues/58285.

Version 1.6.8, June 2014
* bugfix: fix ext:news indexer compatibility with news 3.0 in the backend (fix in last version was not correct).
* bugfix: tx_kesearch_stat_search.searchphrase and tx_kesearch_stat_word.word double escaped and kesearch_stat_word is filled with the complete searchphrase instead of separate words. Thanks to Frans Saris, http://forge.typo3.org/issues/59595

Version 1.6.7, June 2014
* bugfix: fix ext:news indexer compatibility with news 3.0 in the backend (was introduced in last version).

Version 1.6.6, June 2014
* bugfix: use mb_strtolower to convert strings saved to the statistic table. This words are also used for the autocomplete function with ke_search_premium. Attention: The function is called with "UTF-8" as charset parameter, so if you have the mbstring PHP extension installed but use another charset than UTF-8 this will possibly lead to problems.
* bugfix: fix PHP warning in scheduler for file indexer in TYPO3 >= 6.2.
* task: make ext:news indexer with ext:news version 3.0. This version features system categories instead of extension specific categories, http://forge.typo3.org/issues/58759

Version 1.6.5, March 2014
* bugfix: fix regression in backend module for TYPO3 versions 4.7 and below. http://forge.typo3.org/issues/57349

Verison 1.6.4, March 2014
* bugfix: use API function getModuleUrl for link generation. http://forge.typo3.org/issues/56719
* task: add default value for $fe_group parameter. http://forge.typo3.org/issues/56563
* task: added labels for next/previous navigation in search result list. Thanks to Frank Gerards, http://forge.typo3.org/issues/53044

Version 1.6.3, January 2014
* bugfix: Custom indexer throws errors. http://forge.typo3.org/issues/54398
* feature: Enable stdWrap for highlighted word. Thanks to Dan Untenzu, http://forge.typo3.org/issues/54515
* bugfix: don't call htmlspecialchars with NULL parameter.
* feature: improve memory consumption drastically. Thanks to Morton Jonuschat, http://forge.typo3.org/issues/53946
* feature: improve search speed, do not calculate percentage scores unless required, Thanks to Morton Jonuschat, http://forge.typo3.org/issues/53979
* bugfix: check if filter is set before building the link to reset the filter.

Version 1.6.2, December 2013
* bugfix: Fix pagebrowser which is not working in static mode (first 10 results are shown on every page). Thanks to Morton Jonuschat, http://forge.typo3.org/issues/54352

Version 1.6.1, December 2013
* bugfix: missing class error when editing the plugin in backend, http://forge.typo3.org/issues/54297
* bugfix: fixed XCLASS calls (classes were moved in version 1.6.0).

Version 1.6.0, December 2013
* feature: FAL based file indexer, indexes files linked in content element "uploads" (file links) and files linked in RTE text (needs at least TYPO3 6.0.0), access restrictions will be taken into account, combined from page and content element.
* new icons: added icons for result list in the frontend depending on file type
* removed "index content elements with restrictions" option from tt_content indexer, fix permission check for content element. So every content element will be indexed and the correct fe_group setting will be used for the index entry.
* feature: select link target for files seperately from normal links.
* changed default behaviour: set "index content elements with restrictions" in page indexer to "no" by default
* bugfix: fixed check if an index already exists, was false always
* feature: allow to override startingpoint in search plugin via typoscript like this: plugin.tx_kesearch_pi1.overrideStartingPoint = 123 / plugin.tx_kesearch_pi1.overrideStartingPointRecursive = 1 / plugin.tx_kesearch_pi2.overrideStartingPoint = 123 / plugin.tx_kesearch_pi2.overrideStartingPointRecursive = 1
* bugfix: jump to page one after starting a new search and using the submit button in static mode
* bugfix: add tags also to subpages of sysfolders (254), since we don't want them to be excluded, http://forge.typo3.org/issues/49435
* bugfix: fix the inheritage of frontend groups, was not working correctly with "hide at login" page
* bugfix: inherit frontend groups also on shortcut pages
* changed default behaviour: set sorting for relevance by default after a user enters a searchword if sorting is changeable in the frontend
* feature: new indexer configuration option for FAL based file indexer: add tags from linking pages to indexed files?
* bugfix ke_search_premium: take pid into account when using sphinx
* feature: add search fields: search for filters, indexer configurations and filter options in the backend is now possible
* bugfix: remove cHash in sorting link
* bugfix: init "config" array and basic rootLine for templavoila indexer, in order to prevent fatal errors while indexing certain kind of content elements
* bugfix: while indexing use the fe_groups restriction of the current page OR use the inherited groups, do not combine them
* task: remove ( and ) and _ when generating tags from news categories (ext:news indexer)
* task: index FAL files even if they are attached to a access protected content element, the index entry for that file itself will be access protected in that case.
* bugfix: fix indexing of files protected by naw_securedl extension by using the getForLocalProcessing property, not the publicUri property.
* feature: add error reporting for indexer (use $this->addError() function to add errors).
* bugfix: fixed typo in template (diY --> div), thanks to Jano
* bugfix: in tt_news indexer message print the number of really indexed news, not the totally available news in the system
* task: move code for setting the sortdate and other additional fields from hook to indexer itself. delete the hook.
* bugfix: Cronjob Error after Update of tt_news: Call to a member function exec_SELECTquery, http://forge.typo3.org/issues/52038
* task: move class files to Classes/ directory.
* task: Prepare ke_search for TYPO3 CMS 6.2: remove require_once calls where possible. Change calls to t3lib_div::makeInstance to \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance.

Version 1.5.0, September 2013
* feature: indexer for ext:news
* feature: create filter options from ext:news categories automatically while indexing
* feature: hidden filters. Set hidden filters together with preselected filter options in plugin configuration in order to have preselected filters which are not shown in the frontend.
* feature: tt_address indexer: allow modification of starttime, endtime, fe_group and sys_languge_uid by hook
* feature: added onblur function for search word input field
* cleanup: tt_address indexer: remove adding of orig_uid and orig_pid from hook and put it in the indexer itself
* bugfix: fixed use of tagChar for ke_search_premium
* Increased max. directories to 100 for file indexer.
* Removed "Show query" Debug option (was not functional anyway anymore), added "Log query" option in plugin configuration (needs devLog extension).
* changed default setting: static mode is now default instead of ajax_after_reload since this mode needs no additional extension
* cleanup: moved backend images from extension root folder to subfolder

Version 1.4.1, July 2013
* security bugfix

Version 1.4, January 2013
* Feature: Now you can add multiple TV-fields divided by comma
* Feature: Added indexer for extension "comments".

Version 1.3.1, December 2012
* Bugfix: Search for words with umlauts failed on some installations. http://forge.typo3.org/issues/42345
* Feature: Fixed fieldname 'main_content' für TemplaVoila indexer. Thanks to Christian Ducrot. http://forge.typo3.org/issues/43078
* Feature: Add new indexer for mm_forum. Thanks to Jan Bartels
* Bugfix: Changed TYPO3_CONF_VARS to globals scope

Version 1.3.0, October 2012
* feature: output of additional information (size of index, deleted entries) after indexer ran. Thanks to Jan Bartels, http://forge.typo3.org/issues/40067
* feature: Search for phrases using "", example: "french cuisine".
* feature: Search parameters, you can use + and - in order include or exclude search words explicitly.
* feature: Partial word searching can be enabled/disabled in the extension manager.
* feature: "AND"-linking of words can explicitly enabled in the extension manager, otherwise "OR" ist used to link more than one word in the search string.
* feature: Make new HRDate-option for tt_news-indexer configurable, Thanks to Jan Bartels, http://forge.typo3.org/issues/40068
* template change: added <fieldset> tag to search form in order to make the html code compatible to XHTML 1.1, http://forge.typo3.org/issues/40431
* feature: File indexer now indexes doc and xls files (in addition to pdf and ppt). Thanks to Lukas Kamber. http://forge.typo3.org/issues/39636
* bugfix: Indexer did not recognize file type correctly, so it could happen that after the first indexing, files were deleted from the index in the second run. See also http://forge.typo3.org/issues/41423.
* configuration change: changed "pathCatppt" to "pathCatdoc". Please update your configuration in the extension manager!
* bugfix: fixed charset setting for ppt file indexer. Thanks to Lukas Kamber. http://forge.typo3.org/issues/39635
* bugfix: "AND" combination does not work properly
* bugfix: changed some wordings
* removed deprecated function: Check for version number in class.tx_kesearch_indexer.php, http://forge.typo3.org/issues/41036, Thanks to Tim Wendisch
* made ke_search compatible with TYPO3 6.0. Tested against TYPO3 6.0 Beta2.
* bugfix: updated all XCLASS declarations
* bugfix: make use of extendToSubpages while searching for parent fe_group.
* added dependency PHP 5.3 (namespace feature is now used)
* bugfix: keep ordering of filters in plugin also in FE

Version 1.2.0, August 2012
* bugfix: Function checkIfTagMatchesRecords didn't work properly with all filter types. Please note: Due to a complete rewrite of this functionality your hooks may need adjustments if they call functions which do not exist anymore.
* Many filter methods were collected in one new filter class now.
* Many changes in db-Object to reduce queries to the database.
* Fixed javascript function "enable/disable all checkboxes" for checkbox filter, was broken since last version
* make ke_search TYPO3 6.0 compatible by removing deprecated translation functions.
* new feature in tt_news indexer: respect the useHRDatesSingle feature of tt_news and add month, year and day params to the news link. Right now, this feature is always turned on.
* Feature: Add phrase searching
* Feature: exclude words from search results with -
* Feature: explicit include words in search results with +
* Feature: lower the weight of words with ~

Version 1.1.1, July 2012
* bugfix: ke_yac indexer: store additional fields in db
* bugfix: In dropdown filters the preselected filter options (via backend flexform) haven been added to search even if the user selected a different filter option of the same filter in the frontend. That lead to empty search result lists.
* bugfix: Preselected filters in checkbox filter have not been displayed correctly.
* added better integration for ke_search_premium
* added showTime call for tt_news indexer, indexer now shows the time needed for indexing.
* css modification for autocomplete in premium version
* bugfix: double errormessages regarding too small words in AJAX-Mode
* bugfix: ke_search does not work in TYPO3 4.7
* feature: delete index LOCK entry in sys_registry if it's older than 12 hours
* bugfix: make template w3c compatible

Version 1.1.0, June 2012
* bugfix: Error-handling for Ajax-FE missing / Remove invalid characters. Thanks to Jan Bartels, http://forge.typo3.org/issues/34808
* feature: tt-news-indexer: Add tags of SysFolder. Thanks to Jan Bartels, http://forge.typo3.org/issues/34080
* feature: Assign tags to indexer. Thanks to Jan Bartels, http://forge.typo3.org/issues/34081
* bugfix: not valid html code. http://forge.typo3.org/issues/35229
* new hook: modifySearchWords
* bugfix: corrected locallang values, thanks to Jan Bartes, http://forge.typo3.org/issues/37582
* feature: added new indexer for TemplaVoila, http://forge.typo3.org/issues/31208
* bug: mark all checkboxes doen not work in IE8/9, http://www.keworks.de/kunden/kesearch/ticket/14283.html
* feature: Index only news of the following categories, http://www.keworks.de/kunden/kesearch/ticket/14264.html
* feature: get abstract of pageproperties, http://www.keworks.de/kunden/kesearch/ticket/14328.html
* bugfix: content error in templavoila indexer, thanks to Bernhard Eckl, http://forge.typo3.org/issues/38017

Version 1.0.2, May 2012
* bugfix: wrong rendering of the abstract
* bugfix: Installation of tt_news was required for ke_search, http://forge.typo3.org/issues/37133
* feature: Enable recursive search for tt_news and tt_address, too. Thanks to Jan Bartels, http://forge.typo3.org/issues/34077
* feature: #20885: Add a possibility to exclude pages from tagging. Thanks to Jan Bartels, http://forge.typo3.org/issues/34495
* new language: Dutch (nl), Thanks to Otto van Bruggen
* new hook: modifyResultList

Version 1.0.1, May 2012
* bugfix: don't skip "shortcut" pages, thanks to Jan Bartels
* bugfix: remove unused code in tt_address indexer, http://forge.typo3.org/issues/36493, thanks to Jan Bartels
* New feature: tt_news indexer targetpage is provided by tt_news category, thanks for sponsoring to Otto van Bruggen, http://forge.typo3.org/issues/33701
* new hooks: renderPagebrowserInit, pagebrowseAdditionalMarker, thanks to Krystian Szymukowicz, http://forge.typo3.org/issues/35646
* new hook: getLimit, thanks to Krystian Szymukowicz, http://forge.typo3.org/issues/35652
* bugfix: Tags from preselected filters result in invalid query, thanks to Morton Jonuschat, http://forge.typo3.org/issues/36556

Version 1.0.0, March 2012
* changed default values in searchbox plugin: don't allow sorting by visitor, sorting with searchword is now relevance descending (score desc), click on result link does not open an new window
* removed plugin flexform option "showResultsPerFilter" since it had no effect
* added "apply filter" link to checkbox filters in ajax mode
* bugfix: checkbox filter functions "reset" and "select / deselect all" removed for static mode, this needs javascript
* bugfix: javascript for resetting of checkbox filters fixed
* Indexer "DAM" was edited for common usage
* Filter type "list" implemented for static mode
* notifications: switched to swiftmailer for notification for version 4.5 and above
* notifications: added sender email configuration option in extension manager (needed for swiftmailer)
* notifications: renamed extension manager configuration option for notification mail
* notifications: removed periodic notifications since they weren't working properly.
* notifications: Detached periodicNotification configuration from amountOfRecordsToSaveInMem, two different things have been mixed up here.
* Set default value for amountOfRecordsToSaveInMem to 500.
* New feature: BE function "start indexing" now checks if there is a LOCK for the indexing process. If so it will print a warning message for non-admins and the "start indexer" button is not shown. Admin users can remove the LOCK by clicking a button. This means no more manual editing of database table "sys_registry" if an index process fails. In addition, a LOCK that is older than 12 hours will be removed automatically.
* Added patch for additionalPathForTypeIcons, http://forge.typo3.org/issues/28496, thanks to Morton Jonuschat
* New feature: added CSS class per type to result list item, eg. class="result-list-item result-list-item-type-tt_news", thanks to Dominik Hahn
* bugfix: calculation of percental score (thanks to Morton Jonuschat)
* bugfix: CSS for score scale
* page and content element indexer index now the Ctype  "header"
* bugfix: headers set to "hidden" are not indexed anymore (page indexer and content element indexer)
* new feature in backend module: clear search index button, only for admins
* bugfix: filext was not taken into account in file indexer
* bugfix and improvement regarding indexing time information in indexing process finish notification mail
* bugfix: config value "sortWithoutSearchword" was not processed, this leaded to empty result lists in some cases because sorting by relevance was used instead
* Changed default values for options "showPercentalScore" and "showScoreScale" to 0
* Removed dependency on "xajax". If render method "ajax after load" is used and xajax is not installed, you will receive an error message in frontend
* bugfix: removal of indexer "xtypocommerce" - this is a very special extension that should not be interesting for most users
* bugfix: highlighting of searchword in result title
* bugfix: show indexer configuration field "filetypes" only for type "files"
* More flexible rendering of results count by using sprintf
* New config: set template and css file by flexform; overwrites the setup and default value
* bugfix: default flexforms value for "sortWithoutSearchword" changed
* Indexing process time information added to notifications
* bugfix: reset pagenumber when submitting new search params
* bugfix: show correct error message when a searchword is too short
* bugfix: set page=1 when clicking an option from a a filter list
* bugfix: On low performance servers it happened that an event was fired before the content was loaded, so a js error was thrown and the processing stopped. This is resolved by using a domReady event.
* bugfix: no htmlspecialchars() for field "params" in indexer
* bugfix: correct XCLASS params in pi2
* bugfix: no more multiple index entries for dam records that are assigned to several dam categories
* tt_news keywords are now indexed in content field
* Better output for error messages while indexing process
* New feature: TYPO3 scheduler task for indexing process added
* New feature in ext-conf. Now you can give title a higher relevance.
* bugfix: check if hook entry is available before calling "modifyFlexFormData"
* New marker "NUMBER_OF_RESULTS" added to result list subpart, independent of pagebrowser subpart
* amount of results for each filter will be displayed now
* each flexform value is configurable by TS
* each TS property has stdWrap properties
* add init() method for initialization of plugin
* getter for flexform values completely rewritten
* bugfix: Filters aren't shown in static mode
* added for-attribute for checkbox labels
* bug: wrong checkboxes are selected after search in "no validation to other filter"-mode
* hide sorting links in FE if there are no search results
* new option to mark all checkboxes as default
* ajax render method has been removed. Remaining render methods are "static" and "ajax after reload". It has been removed since it hasn't been used very much and raised maintenance. In this case we also deleted following two options of FlexForm-Configuration:
* redirectOnFilterChange
* resetFiltersOnSubmit
* better index choosing, increases performance
* sorting in frontend not activated by default
* Deleted the "plugin mode". We have two seperate plugins instead. Each plugin has its own flexform and locallang file. So you have to insert all resultlists again as pi2.
* Both plugins extend the same parent object
* Created a new DB Object for generating the search results
* Many calles to getSearchResults have been deleted
* Removed possibility to get maxScore. This is implemented in Select-Query directly in order to reduce mysql calls
* fixed fixed_lgd_pre --> fixed_lgd_cs
* Selectquery generates the percentage value for results automatically
* The function for counting the results has been completely rewritten
* Many variables are declared as global now for faster access and less calls to functions
* reduced the function calls in general
* better init() function
* better code comments
* searching is a little bit faster
* seperated each indexer into its own class
* child pages of sysfolders, shortcuts are indexed, too
* added additionalPathForTypeIcons

Version 0.3.0
* new option in ext-conf to speed up INSERTqueries up to 35% with help of DELAYED
* repaired customIndexer hook and added a new code sample to documentationdelete interval setting from ext conf
* modified cleanup process. All records before starting timestamp of indexing will be deleted
* speed up indexing with help of PREPARED-Statements
* New feature: Show text instead of searchresults when no filter or searchword was given.
* New feature: Multi-select filters. The user can now select two or more options of a filter, they will be "OR" connected. In the frontend this filter type will be rendered as checkboxes.
* New feature: set individual text in RTE for "no results found"
* New feature: a default text is shown in searchbox; it will be hidden on focus
* Notification functions for a better monitoring of the indexing process (in CLI mode) added
* Example configuration for use of danp_tagcloud with ke_search statistics data added to documentation
* New feature: Sorting. Can be set in the backend and in the frontend. Available options are relevance, title and date. See documentation for details.
* Cleanup for javascript inclusion
* moved all tag indexing into indexer class
* removed getRootlineTags
* repaired searching for filters
* better indexing of restricted content
* added multilingual support for filteroptions
* added orig_uid and orig_pid to inder-table and added them into the indexer process
* removed utf-8 quirx-mode
* delete all conf of pi1 completely before it was filled with data of pi2
* added content indexer
* added text link feature
* changed content field in indexer table to mediumtext
* added new plugin wizards for our new two plugins
* fixed a problem with pagebrowser and multiselection
* if you have configured MySQL to search for 3 digit words, you can configure ke_search to the same value now in extension configuration.

Version 0.2.0
* Huge performance optimizations!
* New feature: Count search words and phrases with ke_stats
* New feature: search words and phrases are counted in statistic tables (optional by flexforms), simple statistic function for last 10 days added to backend module
* Cleanup: Some methods removed from pi1 to new library class
* bugfix: correct highlighting of search word in result titles
* Cleanup: removed methods that are not needed any longer
* bugfix: correct limit for pagebrowser
* bugfix: checking of matching tags
* bugfix: correct whitespace cropping; old procedure generated endless loops in some cases
* bugfix: AND relation for several search words
* Cleanup for search word creation, use one central function

Version 0.1.1
* XSS removal improvements
* New: render mode selectable: ajax, static, ajax after page reload
* Several bugfixes and optimizations
* New filter render type added: "list"
* New indexer type included: ke_yac records
* Icon artwork for database tables added
* New feature: tags can be set automated for all childs of defined page
* bugfix: Indexer took all pages if no recursive page was set for indexing
* Added CLI-script for indexing process
* New indexer type included: tt_news records
* New feature: supporting multiple words as searchphrase (treated as conjunction)
* Filter select boxes that have no options but "all" get HTML-Tag "disabled"
* New indexer configuration option for indexing of pages: index content elements that have got restricted usergroup permissions?
* Javascript is minified (if TYPO3 version >= 4.2 )
* Flexform options regarding debugging are available for admins only
* New feature: consecutive numbering (optional by flexforms)
* New feature: reset filters when submitting search word (optional by flexforms)
* New feature: availability check mode is configurable now
* New feature: show search query time (optional by flexforms)
* initial version
