HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: //usr/share/phpmyadmin/libraries/classes/Controllers/SchemaExportController.php
<?php

declare(strict_types=1);

namespace PhpMyAdmin\Controllers;

use PhpMyAdmin\Export;
use PhpMyAdmin\Relation;
use PhpMyAdmin\Util;

/**
 * Schema export handler
 */
class SchemaExportController
{
    /** @var Export */
    private $export;

    /** @var Relation */
    private $relation;

    /**
     * @param Export   $export   A Export instance.
     * @param Relation $relation A Relation instance.
     */
    public function __construct(Export $export, Relation $relation)
    {
        $this->export = $export;
        $this->relation = $relation;
    }

    public function index(): void
    {
        global $cfgRelation;

        /**
         * get all variables needed for exporting relational schema
         * in $cfgRelation
         */
        $cfgRelation = $this->relation->getRelationsParam();

        if (! isset($_POST['export_type'])) {
            Util::checkParameters(['export_type']);
        }

        /**
         * Include the appropriate Schema Class depending on $export_type
         * default is PDF
         */
        $this->export->processExportSchema($_POST['export_type']);
    }
}