41 lines
856 B
PHP
41 lines
856 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Traits;
|
||
|
|
||
|
trait SearchString
|
||
|
{
|
||
|
/**
|
||
|
* Get the value of a name in search string
|
||
|
* Example: search=type:customer year:2020 account_id:20
|
||
|
*
|
||
|
* @return string
|
||
|
*/
|
||
|
public function getSearchStringValue($name, $default = '', $input = null)
|
||
|
{
|
||
|
$value = $default;
|
||
|
|
||
|
if (is_null($input)) {
|
||
|
$input = request('search');
|
||
|
}
|
||
|
|
||
|
//$manager = $this->getSearchStringManager();
|
||
|
//$parsed = $manager->parse($input);
|
||
|
|
||
|
$columns = explode(' ', $input);
|
||
|
|
||
|
foreach ($columns as $column) {
|
||
|
$variable = explode(':', $column);
|
||
|
|
||
|
if (empty($variable[0]) || ($variable[0] != $name) || empty($variable[1])) {
|
||
|
continue;
|
||
|
}
|
||
|
|
||
|
$value = $variable[1];
|
||
|
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
return $value;
|
||
|
}
|
||
|
}
|