aboutsummaryrefslogtreecommitdiff
path: root/srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-09 10:55:03 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-09 13:09:38 +0100
commit04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa (patch)
tree5c691241355c943a3c68ddb06b8cf8c60aa11319 /srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php
parent7e0d85db834d6351ed85d01e5126ac31dc510b86 (diff)
downloadft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.tar.gz
ft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.tar.bz2
ft_server-04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa.zip
phpmyadmin working
Diffstat (limited to 'srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php')
-rw-r--r--srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php80
1 files changed, 80 insertions, 0 deletions
diff --git a/srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php b/srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php
new file mode 100644
index 0000000..621961f
--- /dev/null
+++ b/srcs/phpmyadmin/libraries/classes/Controllers/TransformationOverviewController.php
@@ -0,0 +1,80 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * Holds the PhpMyAdmin\Controllers\TransformationOverviewController
+ *
+ * @package PhpMyAdmin\Controllers
+ */
+declare(strict_types=1);
+
+namespace PhpMyAdmin\Controllers;
+
+use PhpMyAdmin\DatabaseInterface;
+use PhpMyAdmin\Response;
+use PhpMyAdmin\Template;
+use PhpMyAdmin\Transformations;
+
+/**
+ * Lists available transformation plugins
+ *
+ * @package PhpMyAdmin\Controllers
+ */
+class TransformationOverviewController extends AbstractController
+{
+ /**
+ * @var Transformations
+ */
+ private $transformations;
+
+ /**
+ * TransformationOverviewController constructor.
+ *
+ * @param Response $response Response object
+ * @param DatabaseInterface $dbi DatabaseInterface object
+ * @param Template $template Template object
+ * @param Transformations $transformations Transformations object
+ */
+ public function __construct($response, $dbi, Template $template, $transformations)
+ {
+ parent::__construct($response, $dbi, $template);
+
+ $this->transformations = $transformations;
+ }
+
+ /**
+ * @return string HTML
+ */
+ public function indexAction(): string
+ {
+ $types = $this->transformations->getAvailableMimeTypes();
+
+ $mimeTypes = [];
+ foreach ($types['mimetype'] as $mimeType) {
+ $mimeTypes[] = [
+ 'name' => $mimeType,
+ 'is_empty' => isset($types['empty_mimetype'][$mimeType]),
+ ];
+ }
+
+ $transformations = [
+ 'transformation' => [],
+ 'input_transformation' => [],
+ ];
+
+ foreach (array_keys($transformations) as $type) {
+ foreach ($types[$type] as $key => $transformation) {
+ $transformations[$type][] = [
+ 'name' => $transformation,
+ 'description' => $this->transformations->getDescription(
+ $types[$type . '_file'][$key]
+ ),
+ ];
+ }
+ }
+
+ return $this->template->render('transformation_overview', [
+ 'mime_types' => $mimeTypes,
+ 'transformations' => $transformations,
+ ]);
+ }
+}