first commit
This commit is contained in:
@@ -44,7 +44,7 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
|
||||
|
||||
/**
|
||||
* The AbstractQueryBuilder contains all logic to initialize solr queries independent from TYPO3.
|
||||
* The AbstractQueryBuilder contains all logic to initialize meilisearch queries independent from TYPO3.
|
||||
*/
|
||||
abstract class AbstractQueryBuilder {
|
||||
|
||||
@@ -340,7 +340,7 @@ abstract class AbstractQueryBuilder {
|
||||
}
|
||||
|
||||
/**
|
||||
* Can be used to use a specific filter string in the solr query.
|
||||
* Can be used to use a specific filter string in the meilisearch query.
|
||||
*
|
||||
* @param string $filterString
|
||||
* @param string $filterName
|
||||
|
@@ -27,7 +27,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query;
|
||||
use Solarium\QueryType\Extract\Query as SolariumExtractQuery;
|
||||
|
||||
/**
|
||||
* Specialized query for content extraction using Solr Cell
|
||||
* Specialized query for content extraction using Meilisearch Cell
|
||||
*
|
||||
*/
|
||||
class ExtractingQuery extends SolariumExtractQuery
|
||||
|
@@ -25,7 +25,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\Helper;
|
||||
***************************************************************/
|
||||
|
||||
/**
|
||||
* The EscpaeService is responsible to escape the querystring as expected for Apache Solr.
|
||||
* The EscpaeService is responsible to escape the querystring as expected for Meilisearch.
|
||||
*
|
||||
* This class should have no dependencies since it only contains static functions
|
||||
*
|
||||
|
@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
/***************************************************************
|
||||
* Copyright notice
|
||||
*
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
|
||||
* All rights reserved
|
||||
*
|
||||
* This script is part of the TYPO3 project. The TYPO3 project is
|
||||
@@ -37,7 +37,7 @@ abstract class AbstractFieldList extends AbstractDeactivatable
|
||||
protected $fieldList = [];
|
||||
|
||||
/**
|
||||
* Parameter key which should be used for Apache Solr URL query
|
||||
* Parameter key which should be used for Meilisearch URL query
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
|
@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
/***************************************************************
|
||||
* Copyright notice
|
||||
*
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
|
||||
* All rights reserved
|
||||
*
|
||||
* This script is part of the TYPO3 project. The TYPO3 project is
|
||||
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
class BigramPhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
{
|
||||
/**
|
||||
* Parameter key which should be used for Apache Solr URL query
|
||||
* Parameter key which should be used for Meilisearch URL query
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@@ -52,17 +52,17 @@ class BigramPhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return BigramPhraseFields
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getBigramPhraseSearchIsEnabled();
|
||||
$isEnabled = $meilisearchConfiguration->getBigramPhraseSearchIsEnabled();
|
||||
if (!$isEnabled) {
|
||||
return new BigramPhraseFields(false);
|
||||
}
|
||||
|
||||
return self::fromString((string)$solrConfiguration->getSearchQueryBigramPhraseFields());
|
||||
return self::fromString((string)$meilisearchConfiguration->getSearchQueryBigramPhraseFields());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The Elevation ParameterProvider is responsible to build the solr query parameters
|
||||
* The Elevation ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the elevation.
|
||||
*/
|
||||
class Elevation extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -89,18 +89,18 @@ class Elevation extends AbstractDeactivatable implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Elevation
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchElevation();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchElevation();
|
||||
if (!$isEnabled) {
|
||||
return new Elevation(false);
|
||||
}
|
||||
|
||||
$force = $solrConfiguration->getSearchElevationForceElevation();
|
||||
$markResults = $solrConfiguration->getSearchElevationMarkElevatedResults();
|
||||
$force = $meilisearchConfiguration->getSearchElevationForceElevation();
|
||||
$markResults = $meilisearchConfiguration->getSearchElevationMarkElevatedResults();
|
||||
return new Elevation(true, $force, $markResults);
|
||||
}
|
||||
|
||||
|
@@ -30,7 +30,7 @@ use WapplerSystems\Meilisearch\Domain\Search\ResultSet\Facets\SortingExpression;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The Faceting ParameterProvider is responsible to build the solr query parameters
|
||||
* The Faceting ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the highlighting.
|
||||
*/
|
||||
class Faceting extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -196,19 +196,19 @@ class Faceting extends AbstractDeactivatable implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Faceting
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchFaceting();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchFaceting();
|
||||
if (!$isEnabled) {
|
||||
return new Faceting(false);
|
||||
}
|
||||
|
||||
$minCount = $solrConfiguration->getSearchFacetingMinimumCount();
|
||||
$limit = $solrConfiguration->getSearchFacetingFacetLimit();
|
||||
$sorting = $solrConfiguration->getSearchFacetingSortBy();
|
||||
$minCount = $meilisearchConfiguration->getSearchFacetingMinimumCount();
|
||||
$limit = $meilisearchConfiguration->getSearchFacetingFacetLimit();
|
||||
$sorting = $meilisearchConfiguration->getSearchFacetingSortBy();
|
||||
|
||||
return new Faceting($isEnabled, $sorting, $minCount, $limit);
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The FieldCollapsing ParameterProvider is responsible to build the solr query parameters
|
||||
* The FieldCollapsing ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the field collapsing.
|
||||
*/
|
||||
class FieldCollapsing extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -112,19 +112,19 @@ class FieldCollapsing extends AbstractDeactivatable implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return FieldCollapsing
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchVariants();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchVariants();
|
||||
if (!$isEnabled) {
|
||||
return new FieldCollapsing(false);
|
||||
}
|
||||
|
||||
$collapseField = $solrConfiguration->getSearchVariantsField();
|
||||
$expand = (bool)$solrConfiguration->getSearchVariantsExpand();
|
||||
$expandRows = $solrConfiguration->getSearchVariantsLimit();
|
||||
$collapseField = $meilisearchConfiguration->getSearchVariantsField();
|
||||
$expand = (bool)$meilisearchConfiguration->getSearchVariantsExpand();
|
||||
$expandRows = $meilisearchConfiguration->getSearchVariantsLimit();
|
||||
|
||||
return new FieldCollapsing(true, $collapseField, $expand, $expandRows);
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The Filters ParameterProvider is responsible to build the solr query parameters
|
||||
* The Filters ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the filtering.
|
||||
*/
|
||||
class Filters
|
||||
@@ -140,10 +140,10 @@ class Filters
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Filters
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
return new Filters();
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The Grouping ParameterProvider is responsible to build the solr query parameters
|
||||
* The Grouping ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the grouping.
|
||||
*/
|
||||
class Grouping extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -185,12 +185,12 @@ class Grouping extends AbstractDeactivatable implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Grouping
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchGrouping();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchGrouping();
|
||||
if (!$isEnabled) {
|
||||
return new Grouping(false);
|
||||
}
|
||||
@@ -199,10 +199,10 @@ class Grouping extends AbstractDeactivatable implements ParameterBuilder
|
||||
$queries = [];
|
||||
$sortings = [];
|
||||
|
||||
$resultsPerGroup = $solrConfiguration->getSearchGroupingHighestGroupResultsLimit();
|
||||
$configuredGroups = $solrConfiguration->getSearchGroupingGroupsConfiguration();
|
||||
$numberOfGroups = $solrConfiguration->getSearchGroupingNumberOfGroups();
|
||||
$sortBy = $solrConfiguration->getSearchGroupingSortBy();
|
||||
$resultsPerGroup = $meilisearchConfiguration->getSearchGroupingHighestGroupResultsLimit();
|
||||
$configuredGroups = $meilisearchConfiguration->getSearchGroupingGroupsConfiguration();
|
||||
$numberOfGroups = $meilisearchConfiguration->getSearchGroupingNumberOfGroups();
|
||||
$sortBy = $meilisearchConfiguration->getSearchGroupingSortBy();
|
||||
|
||||
foreach ($configuredGroups as $groupName => $groupConfiguration) {
|
||||
if (isset($groupConfiguration['field'])) {
|
||||
|
@@ -30,7 +30,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The Highlighting ParameterProvider is responsible to build the solr query parameters
|
||||
* The Highlighting ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the highlighting.
|
||||
*/
|
||||
class Highlighting extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -147,19 +147,19 @@ class Highlighting extends AbstractDeactivatable implements ParameterBuilder
|
||||
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Highlighting
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchResultsHighlighting();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchResultsHighlighting();
|
||||
if (!$isEnabled) {
|
||||
return new Highlighting(false);
|
||||
}
|
||||
|
||||
$fragmentSize = $solrConfiguration->getSearchResultsHighlightingFragmentSize();
|
||||
$highlightingFields = $solrConfiguration->getSearchResultsHighlightingFields();
|
||||
$wrap = explode('|', $solrConfiguration->getSearchResultsHighlightingWrap());
|
||||
$fragmentSize = $meilisearchConfiguration->getSearchResultsHighlightingFragmentSize();
|
||||
$highlightingFields = $meilisearchConfiguration->getSearchResultsHighlightingFields();
|
||||
$wrap = explode('|', $meilisearchConfiguration->getSearchResultsHighlightingWrap());
|
||||
$prefix = isset($wrap[0]) ? $wrap[0] : '';
|
||||
$postfix = isset($wrap[1]) ? $wrap[1] : '';
|
||||
|
||||
|
@@ -26,7 +26,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
|
||||
|
||||
/**
|
||||
* The Operator ParameterProvider is responsible to build the solr query parameters
|
||||
* The Operator ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the operator q.op.
|
||||
*/
|
||||
class Operator extends AbstractDeactivatable
|
||||
|
@@ -29,7 +29,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
|
||||
/**
|
||||
* The implementation of ParameterBuilder is responsible to build an array with
|
||||
* the query parameter that are needed for solr
|
||||
* the query parameter that are needed for meilisearch
|
||||
*
|
||||
* Interface ParameterProvider
|
||||
*/
|
||||
|
@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
/***************************************************************
|
||||
* Copyright notice
|
||||
*
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
|
||||
* All rights reserved
|
||||
*
|
||||
* This script is part of the TYPO3 project. The TYPO3 project is
|
||||
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
class PhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
{
|
||||
/**
|
||||
* Parameter key which should be used for Apache Solr URL query
|
||||
* Parameter key which should be used for Meilisearch URL query
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@@ -52,17 +52,17 @@ class PhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return PhraseFields
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getPhraseSearchIsEnabled();
|
||||
$isEnabled = $meilisearchConfiguration->getPhraseSearchIsEnabled();
|
||||
if (!$isEnabled) {
|
||||
return new PhraseFields(false);
|
||||
}
|
||||
|
||||
return self::fromString((string)$solrConfiguration->getSearchQueryPhraseFields());
|
||||
return self::fromString((string)$meilisearchConfiguration->getSearchQueryPhraseFields());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The QueryFields class holds all information for the query which fields should be used to query (Solr qf parameter).
|
||||
* The QueryFields class holds all information for the query which fields should be used to query (Meilisearch qf parameter).
|
||||
*/
|
||||
class QueryFields implements ParameterBuilder
|
||||
{
|
||||
|
@@ -30,7 +30,7 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The ReturnFields class is responsible to hold a list of field names that should be returned from
|
||||
* solr.
|
||||
* meilisearch.
|
||||
*/
|
||||
class ReturnFields implements ParameterBuilder
|
||||
{
|
||||
|
@@ -29,7 +29,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The Slops ParameterProvider is responsible to build the solr query parameters
|
||||
* The Slops ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the several slop arguments.
|
||||
*/
|
||||
class Slops implements ParameterBuilder
|
||||
@@ -171,12 +171,12 @@ class Slops implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Slops
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$searchConfiguration = $solrConfiguration->getSearchConfiguration();
|
||||
$searchConfiguration = $meilisearchConfiguration->getSearchConfiguration();
|
||||
$querySlop = static::getQuerySlopFromConfiguration($searchConfiguration);
|
||||
$phraseSlop = static::getPhraseSlopFromConfiguration($searchConfiguration);
|
||||
$bigramPhraseSlop = static::getBigramPhraseSlopFromConfiguration($searchConfiguration);
|
||||
|
@@ -27,7 +27,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The Sorting ParameterProvider is responsible to build the solr query parameters
|
||||
* The Sorting ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the sorting.
|
||||
*/
|
||||
class Sorting extends AbstractDeactivatable
|
||||
|
@@ -27,7 +27,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
|
||||
/**
|
||||
* The Sorting ParameterProvider is responsible to build the solr query parameters
|
||||
* The Sorting ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the sorting.
|
||||
*/
|
||||
class Sortings extends AbstractDeactivatable
|
||||
|
@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
|
||||
/**
|
||||
* The Spellchecking ParameterProvider is responsible to build the solr query parameters
|
||||
* The Spellchecking ParameterProvider is responsible to build the meilisearch query parameters
|
||||
* that are needed for the spellchecking.
|
||||
*/
|
||||
class Spellchecking extends AbstractDeactivatable implements ParameterBuilder
|
||||
@@ -60,17 +60,17 @@ class Spellchecking extends AbstractDeactivatable implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return Spellchecking
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getSearchSpellchecking();
|
||||
$isEnabled = $meilisearchConfiguration->getSearchSpellchecking();
|
||||
if (!$isEnabled) {
|
||||
return new Spellchecking(false);
|
||||
}
|
||||
|
||||
$maxCollationTries = $solrConfiguration->getSearchSpellcheckingNumberOfSuggestionsToTry();
|
||||
$maxCollationTries = $meilisearchConfiguration->getSearchSpellcheckingNumberOfSuggestionsToTry();
|
||||
|
||||
return new Spellchecking($isEnabled, $maxCollationTries);
|
||||
}
|
||||
|
@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
|
||||
/***************************************************************
|
||||
* Copyright notice
|
||||
*
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
|
||||
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
|
||||
* All rights reserved
|
||||
*
|
||||
* This script is part of the TYPO3 project. The TYPO3 project is
|
||||
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
class TrigramPhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
{
|
||||
/**
|
||||
* Parameter key which should be used for Apache Solr URL query
|
||||
* Parameter key which should be used for Meilisearch URL query
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
@@ -52,17 +52,17 @@ class TrigramPhraseFields extends AbstractFieldList implements ParameterBuilder
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
* @return TrigramPhraseFields
|
||||
*/
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
|
||||
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
|
||||
{
|
||||
$isEnabled = $solrConfiguration->getTrigramPhraseSearchIsEnabled();
|
||||
$isEnabled = $meilisearchConfiguration->getTrigramPhraseSearchIsEnabled();
|
||||
if (!$isEnabled) {
|
||||
return new TrigramPhraseFields(false);
|
||||
}
|
||||
|
||||
return self::fromString((string)$solrConfiguration->getSearchQueryTrigramPhraseFields());
|
||||
return self::fromString((string)$meilisearchConfiguration->getSearchQueryTrigramPhraseFields());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -43,13 +43,13 @@ use WapplerSystems\Meilisearch\Domain\Site\SiteHashService;
|
||||
use WapplerSystems\Meilisearch\Domain\Site\SiteRepository;
|
||||
use WapplerSystems\Meilisearch\FieldProcessor\PageUidToHierarchy;
|
||||
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
|
||||
use WapplerSystems\Meilisearch\System\Logging\SolrLogManager;
|
||||
use WapplerSystems\Meilisearch\System\Logging\MeilisearchLogManager;
|
||||
use WapplerSystems\Meilisearch\Util;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
|
||||
|
||||
/**
|
||||
* The concrete QueryBuilder contains all TYPO3 specific initialization logic of solr queries, for TYPO3.
|
||||
* The concrete QueryBuilder contains all TYPO3 specific initialization logic of meilisearch queries, for TYPO3.
|
||||
*/
|
||||
class QueryBuilder extends AbstractQueryBuilder {
|
||||
|
||||
@@ -67,7 +67,7 @@ class QueryBuilder extends AbstractQueryBuilder {
|
||||
protected $typoScriptConfiguration = null;
|
||||
|
||||
/**
|
||||
* @var SolrLogManager;
|
||||
* @var MeilisearchLogManager;
|
||||
*/
|
||||
protected $logger = null;
|
||||
|
||||
@@ -79,13 +79,13 @@ class QueryBuilder extends AbstractQueryBuilder {
|
||||
/**
|
||||
* QueryBuilder constructor.
|
||||
* @param TypoScriptConfiguration|null $configuration
|
||||
* @param SolrLogManager|null $solrLogManager
|
||||
* @param MeilisearchLogManager|null $meilisearchLogManager
|
||||
* @param SiteHashService|null $siteHashService
|
||||
*/
|
||||
public function __construct(TypoScriptConfiguration $configuration = null, SolrLogManager $solrLogManager = null, SiteHashService $siteHashService = null)
|
||||
public function __construct(TypoScriptConfiguration $configuration = null, MeilisearchLogManager $meilisearchLogManager = null, SiteHashService $siteHashService = null)
|
||||
{
|
||||
$this->typoScriptConfiguration = $configuration ?? Util::getSolrConfiguration();
|
||||
$this->logger = $solrLogManager ?? GeneralUtility::makeInstance(SolrLogManager::class, /** @scrutinizer ignore-type */ __CLASS__);
|
||||
$this->typoScriptConfiguration = $configuration ?? Util::getMeilisearchConfiguration();
|
||||
$this->logger = $meilisearchLogManager ?? GeneralUtility::makeInstance(MeilisearchLogManager::class, /** @scrutinizer ignore-type */ __CLASS__);
|
||||
$this->siteHashService = $siteHashService ?? GeneralUtility::makeInstance(SiteHashService::class);
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ class QueryBuilder extends AbstractQueryBuilder {
|
||||
public function buildSearchQuery($rawQuery, $resultsPerPage = 10, array $additionalFiltersFromRequest = []) : SearchQuery
|
||||
{
|
||||
if ($this->typoScriptConfiguration->getLoggingQuerySearchWords()) {
|
||||
$this->logger->log(SolrLogManager::INFO, 'Received search query', [$rawQuery]);
|
||||
$this->logger->log(MeilisearchLogManager::INFO, 'Received search query', [$rawQuery]);
|
||||
}
|
||||
|
||||
/* @var $query SearchQuery */
|
||||
@@ -170,7 +170,7 @@ class QueryBuilder extends AbstractQueryBuilder {
|
||||
|
||||
/**
|
||||
* Returns Query for Search which finds document for given page.
|
||||
* Note: The Connection is per language as recommended in ext-solr docs.
|
||||
* Note: The Connection is per language as recommended in ext-meilisearch docs.
|
||||
*
|
||||
* @return Query
|
||||
*/
|
||||
@@ -361,7 +361,7 @@ class QueryBuilder extends AbstractQueryBuilder {
|
||||
}
|
||||
|
||||
/**
|
||||
* Applies the configured initial query settings to set the alternative query for solr as required.
|
||||
* Applies the configured initial query settings to set the alternative query for meilisearch as required.
|
||||
*
|
||||
* @return QueryBuilder
|
||||
*/
|
||||
|
@@ -50,17 +50,17 @@ class SuggestQuery extends Query
|
||||
* SuggestQuery constructor.
|
||||
*
|
||||
* @param string $keywords
|
||||
* @param TypoScriptConfiguration $solrConfiguration
|
||||
* @param TypoScriptConfiguration $meilisearchConfiguration
|
||||
*/
|
||||
public function __construct($keywords, $solrConfiguration = null)
|
||||
public function __construct($keywords, $meilisearchConfiguration = null)
|
||||
{
|
||||
parent::__construct();
|
||||
$keywords = (string)$keywords;
|
||||
|
||||
$solrConfiguration = $solrConfiguration ?? Util::getSolrConfiguration();
|
||||
$meilisearchConfiguration = $meilisearchConfiguration ?? Util::getMeilisearchConfiguration();
|
||||
|
||||
$this->setQuery($keywords);
|
||||
$this->configuration = $solrConfiguration->getObjectByPathOrDefault('plugin.tx_meilisearch.suggest.', []);
|
||||
$this->configuration = $meilisearchConfiguration->getObjectByPathOrDefault('plugin.tx_meilisearch.suggest.', []);
|
||||
|
||||
if (!empty($this->configuration['treatMultipleTermsAsSingleTerm'])) {
|
||||
$this->prefix = EscapeService::escape($keywords);
|
||||
|
Reference in New Issue
Block a user