aboutsummaryrefslogtreecommitdiff
path: root/srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php
diff options
context:
space:
mode:
Diffstat (limited to 'srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php')
-rw-r--r--srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php51
1 files changed, 51 insertions, 0 deletions
diff --git a/srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php b/srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php
new file mode 100644
index 0000000..0a1363c
--- /dev/null
+++ b/srcs/phpmyadmin/libraries/classes/Twig/ServerPrivilegesExtension.php
@@ -0,0 +1,51 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * hold PhpMyAdmin\Twig\ServerPrivilegesExtension class
+ *
+ * @package PhpMyAdmin\Twig
+ */
+declare(strict_types=1);
+
+namespace PhpMyAdmin\Twig;
+
+use PhpMyAdmin\Relation;
+use PhpMyAdmin\RelationCleanup;
+use PhpMyAdmin\Server\Privileges;
+use PhpMyAdmin\Template;
+use Twig\Extension\AbstractExtension;
+use Twig\TwigFunction;
+
+/**
+ * Class ServerPrivilegesExtension
+ *
+ * @package PhpMyAdmin\Twig
+ */
+class ServerPrivilegesExtension extends AbstractExtension
+{
+ /**
+ * Returns a list of functions to add to the existing list.
+ *
+ * @return TwigFunction[]
+ */
+ public function getFunctions()
+ {
+ $relation = new Relation($GLOBALS['dbi']);
+ $serverPrivileges = new Privileges(
+ new Template(),
+ $GLOBALS['dbi'],
+ $relation,
+ new RelationCleanup($GLOBALS['dbi'], $relation)
+ );
+ return [
+ new TwigFunction(
+ 'format_privilege',
+ [
+ $serverPrivileges,
+ 'formatPrivilege',
+ ],
+ ['is_safe' => ['html']]
+ ),
+ ];
+ }
+}