mirror of
https://github.com/silverstripe/silverstripe-fulltextsearch
synced 2024-10-22 12:05:29 +00:00
1728a62af5
Thanks to Marco Hermo and Brett Tasker for helping with this * Bump framework/cms to ^4.0@dev * WIP Silverstripe 4 compatibility fixes * more replacements and patches to migrate this module to 4.0 * Update composer.json * remove php <5.5 from travis.yml * WIP more SS4 compatibility fixes * WIP fix solr path to use DIR, avoid hardcoded module name * WIP respect current include path * WIP Namespacing and use on SearchIndex class * Namespacing for tests * WIP add namespaces to all classes * Second push of Test changes + namespacing * WIP split Solr files with multiple classes into single file / single class. Adjust namespaces * Fix PHP errors in test * break out search components with multiple classes into individual files and change namespaces * Update namespacing for Search indexes and variants in tests * Batch fixes for tests #2 * Update _config.php to use namespace * Use root namespace in referencing Apache_Solr_Document * Migrate task names so that the name is not fully qualified
38 lines
867 B
PHP
38 lines
867 B
PHP
<?php
|
|
/**
|
|
* Created by PhpStorm.
|
|
* User: elliot
|
|
* Date: 21/04/17
|
|
* Time: 1:13 PM
|
|
*/
|
|
|
|
namespace SilverStripe\FullTextSearch\Search\Variants;
|
|
|
|
/**
|
|
* Internal utility class used to hold the state of the SearchVariant::with call
|
|
*/
|
|
class SearchVariant_Caller
|
|
{
|
|
protected $variants = null;
|
|
|
|
public function __construct($variants)
|
|
{
|
|
$this->variants = $variants;
|
|
}
|
|
|
|
public function call($method, &$a1=null, &$a2=null, &$a3=null, &$a4=null, &$a5=null, &$a6=null, &$a7=null)
|
|
{
|
|
$values = array();
|
|
|
|
foreach ($this->variants as $variant) {
|
|
if (method_exists($variant, $method)) {
|
|
$value = $variant->$method($a1, $a2, $a3, $a4, $a5, $a6, $a7);
|
|
if ($value !== null) {
|
|
$values[] = $value;
|
|
}
|
|
}
|
|
}
|
|
|
|
return $values;
|
|
}
|
|
} |