aboutsummaryrefslogtreecommitdiff
path: root/srcs/phpmyadmin/gis_data_editor.php
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2020-07-27 10:05:23 +0200
committerCharles Cabergs <me@cacharle.xyz>2020-07-27 10:05:23 +0200
commit5bf66662a9bdd62c5bccab15e607cd95cfb8fcab (patch)
tree39a1a4629749056191c05dfd899f931701b7acf3 /srcs/phpmyadmin/gis_data_editor.php
parent5afd237bbd22028b85532b8c0b3fcead49a00764 (diff)
downloadft_server-master.tar.gz
ft_server-master.tar.bz2
ft_server-master.zip
Removed wordpress and phpmyadmin, my server doesn't handle it well and it brings shame on my famillyHEADmaster
Diffstat (limited to 'srcs/phpmyadmin/gis_data_editor.php')
-rw-r--r--srcs/phpmyadmin/gis_data_editor.php138
1 files changed, 0 insertions, 138 deletions
diff --git a/srcs/phpmyadmin/gis_data_editor.php b/srcs/phpmyadmin/gis_data_editor.php
deleted file mode 100644
index fd4988c..0000000
--- a/srcs/phpmyadmin/gis_data_editor.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-/* vim: set expandtab sw=4 ts=4 sts=4: */
-/**
- * Editor for Geometry data types.
- *
- * @package PhpMyAdmin
- */
-declare(strict_types=1);
-
-use PhpMyAdmin\Core;
-use PhpMyAdmin\Gis\GisFactory;
-use PhpMyAdmin\Gis\GisVisualization;
-use PhpMyAdmin\Response;
-use PhpMyAdmin\Template;
-use PhpMyAdmin\Util;
-
-if (! defined('ROOT_PATH')) {
- define('ROOT_PATH', __DIR__ . DIRECTORY_SEPARATOR);
-}
-
-require_once ROOT_PATH . 'libraries/common.inc.php';
-
-/** @var Template $template */
-$template = $containerBuilder->get('template');
-
-if (! isset($_POST['field'])) {
- Util::checkParameters(['field']);
-}
-
-// Get data if any posted
-$gis_data = [];
-if (Core::isValid($_POST['gis_data'], 'array')) {
- $gis_data = $_POST['gis_data'];
-}
-
-$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 (isset($_POST['type']) && $_POST['type'] != '') {
- $gis_data['gis_type'] = mb_strtoupper($_POST['type']);
- }
- if (isset($_POST['value']) && trim($_POST['value']) != '') {
- $start = (substr($_POST['value'], 0, 1) == "'") ? 1 : 0;
- $gis_data['gis_type'] = mb_substr(
- $_POST['value'],
- $start,
- mb_strpos($_POST['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 (isset($_POST['value'])) {
- $gis_data = array_merge(
- $gis_data,
- $gis_obj->generateParams($_POST['value'])
- );
-}
-
-// Generate Well Known Text
-$srid = (isset($gis_data['srid']) && $gis_data['srid'] != '') ? $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' => $GLOBALS['dbi']->getVersion(),
-];
-$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 (isset($_POST['generate']) && $_POST['generate'] == true) {
- $extra_data = [
- 'result' => $result,
- 'visualization' => $visualization,
- 'openLayers' => $open_layers,
- ];
- $response = Response::getInstance();
- $response->addJSON($extra_data);
- exit;
-}
-
-$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 = $template->render('gis_data_editor_form', [
- 'width' => $visualizationSettings['width'],
- 'height' => $visualizationSettings['height'],
- 'pma_theme_image' => $GLOBALS['pmaThemeImage'],
- 'field' => $_POST['field'],
- 'input_name' => $_POST['input_name'],
- '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,
-]);
-Response::getInstance()->addJSON('gis_editor', $templateOutput);