Update website

This commit is contained in:
Guilhem Lavaux 2024-11-23 20:45:29 +01:00
parent 41ce1aa076
commit ea0eb1c6e0
4222 changed files with 721797 additions and 14 deletions

View file

@ -0,0 +1,43 @@
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Providers\ServerVariables;
use Williamdes\MariaDBMySQLKBS\KBException;
use Williamdes\MariaDBMySQLKBS\Search as KBSearch;
class MariaDbMySqlKbsProvider implements ServerVariablesProviderInterface
{
public function getVariableType(string $name): ?string
{
try {
return KBSearch::getVariableType($name);
} catch (KBException $e) {
return null;
}
}
public function getStaticVariables(): array
{
return [];
}
public function getDocLinkByNameMariaDb(string $name): ?string
{
try {
return KBSearch::getByName($name, KBSearch::MARIADB);
} catch (KBException $e) {
return null;
}
}
public function getDocLinkByNameMysql(string $name): ?string
{
try {
return KBSearch::getByName($name, KBSearch::MYSQL);
} catch (KBException $e) {
return null;
}
}
}

View file

@ -0,0 +1,37 @@
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Providers\ServerVariables;
use Williamdes\MariaDBMySQLKBS\Search;
use function class_exists;
class ServerVariablesProvider
{
/** @var ServerVariablesProviderInterface|null */
private static $instance = null;
public static function getImplementation(): ServerVariablesProviderInterface
{
if (self::$instance !== null) {
return self::$instance;
}
if (self::mariaDbMySqlKbsExists()) {
self::$instance = new MariaDbMySqlKbsProvider();
return self::$instance;
}
self::$instance = new VoidProvider();
return self::$instance;
}
public static function mariaDbMySqlKbsExists(): bool
{
return class_exists(Search::class);
}
}

View file

@ -0,0 +1,16 @@
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Providers\ServerVariables;
interface ServerVariablesProviderInterface
{
public function getVariableType(string $name): ?string;
public function getStaticVariables(): array;
public function getDocLinkByNameMariaDb(string $name): ?string;
public function getDocLinkByNameMysql(string $name): ?string;
}

View file

@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Providers\ServerVariables;
class VoidProvider implements ServerVariablesProviderInterface
{
public function getVariableType(string $name): ?string
{
return null;
}
public function getStaticVariables(): array
{
return [];
}
public function getDocLinkByNameMariaDb(string $name): ?string
{
return null;
}
public function getDocLinkByNameMysql(string $name): ?string
{
return null;
}
}