Commit 9f4fdab0 authored by lasindu-nirman's avatar lasindu-nirman

Geofencig Part bugs fixed

parent 973e414a

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

......@@ -4,18 +4,20 @@ include "dbconn.php";
session_start();
if (isset($_POST['save'])) {
//$title = $_POST['title'];
$route_number = $_POST['route_number'];
$cordinates = $_POST['cordinates'];
$Vehicle_No = $_POST['Vehicle_No'];
$Route_No = $_POST['Route_No'];
$longitude = $_POST['longitude'];
$latitude = $_POST['latitude'];
$data = [
//"title" => $title,
"route_number" => $route_number,
"cordinates" => $cordinates
"Vehicle_No" => $Vehicle_No,
"Route_No" => $Route_No,
"longitude" => $longitude,
"latitude" => $latitude
];
$result = $database->getReference('products')->push($data);
$result = $database->getReference('vehicle_Data')->push($data);
if ($result) {
$_SESSION['message'] = " Add Successfully";
$_SESSION['message'] = "Added Successfully";
header("Location:index.php");
}
}
......@@ -26,21 +28,25 @@ if (isset($_POST['save'])) {
<div class="card">
<div class="card-header">
<h2>Create Product</h2>
<h2>Add Vehicle Data</h2>
</div>
<div class="card-body">
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="POST">
<!--<div class="mb-3">
<label for="" class="form-label">Product Title</label>
<input type="text" class="form-control" id="" name="title">
</div>-->
<div class="mb-3">
<label for="" class="form-label">Route Number</label>
<input type="number" class="form-control" id="" name="price">
<label for="" class="form-label">Vehicle No</label>
<input type="text" class="form-control" id="" name="Vehicle_No">
</div>
<div class="mb-3">
<label for="" class="form-label">Cordinates</label>
<input type="text" class="form-control" id="" name="content">
<label for="" class="form-label">Route No</label>
<input type="number" class="form-control" id="" name="Route_No">
</div>
<div class="mb-3">
<label for="" class="form-label">Longitude</label>
<input type="text" class="form-control" id="" name="longitude">
</div>
<div class="mb-3">
<label for="" class="form-label">Latitude</label>
<input type="text" class="form-control" id="" name="latitude">
</div>
<button type="submit" name="save" class="btn btn-primary">Save</button>
</form>
......
{
"require": {
"kreait/firebase-php": "*",
"mjaschen/phpgeo": "^4.2"
}
}
......@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "a9cfa8b5d1d5a587bb5e2355faa68ea6",
"content-hash": "97b86d959e0e7502d3b3d3a416bb9a8d",
"packages": [
{
"name": "fig/http-message-util",
......@@ -1043,6 +1043,79 @@
],
"time": "2021-09-28T19:18:28+00:00"
},
{
"name": "mjaschen/phpgeo",
"version": "4.2.0",
"source": {
"type": "git",
"url": "https://github.com/mjaschen/phpgeo.git",
"reference": "b2e593cf1e9aceea36510158ddb80c7395a80d5a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/mjaschen/phpgeo/zipball/b2e593cf1e9aceea36510158ddb80c7395a80d5a",
"reference": "b2e593cf1e9aceea36510158ddb80c7395a80d5a",
"shasum": ""
},
"require": {
"php": "^7.3 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^9.5",
"squizlabs/php_codesniffer": "^3.6",
"vimeo/psalm": "^4.13"
},
"type": "library",
"autoload": {
"psr-4": {
"Location\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marcus Jaschen",
"email": "mjaschen@gmail.com",
"homepage": "https://www.marcusjaschen.de/"
}
],
"description": "Simple Yet Powerful Geo Library",
"homepage": "https://phpgeo.marcusjaschen.de/",
"keywords": [
"Polygon",
"area",
"bearing",
"bounds",
"calculation",
"coordinate",
"distance",
"earth",
"ellipsoid",
"geo",
"geofence",
"gis",
"gps",
"haversine",
"length",
"perpendicular",
"point",
"polyline",
"projection",
"simplify",
"track",
"vincenty"
],
"support": {
"docs": "https://phpgeo.marcusjaschen.de/Installation.html",
"email": "mjaschen@gmail.com",
"issues": "https://github.com/mjaschen/phpgeo/issues",
"source": "https://github.com/mjaschen/phpgeo/tree/4.2.0"
},
"time": "2022-07-25T08:36:36+00:00"
},
{
"name": "monolog/monolog",
"version": "2.8.0",
......
......@@ -6,6 +6,6 @@ use Kreait\Firebase\Factory;
$factory = (new Factory())
->withProjectId('data.json')
->withDatabaseUri('https://travelle-99619-default-rtdb.firebaseio.com/');
->withDatabaseUri('https://gps-b123c-default-rtdb.firebaseio.com//');
$database = $factory->createDatabase();
......@@ -5,9 +5,9 @@ session_start();
if (isset($_GET['key'])) {
$key = $_GET['key'];
$products = $database->getReference('products/' . $key)->remove();
$products = $database->getReference('vehicle_Data/' . $key)->remove();
if ($products) {
$_SESSION['message'] = "Delete Successfully";
$_SESSION['message'] = "Deleted Successfully";
header('Location:index.php');
}
}
......@@ -5,13 +5,13 @@
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Travelle Dashboard</title>
<title>Travelle Geofencing Dashboard</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous">
</head>
<body>
<div class="bg-dark">
<div class="container p-5">
<h1 class="text-center text-white">Travelle Dashboard</h1>
<h1 class="text-center text-white">Travelle Geofencing Dashboard</h1>
</div>
</div>
\ No newline at end of file
<?php
include "header.php";
include "dbconn.php";
session_start();
?>
<?php
$ref = $database->getReference('latitude');
$lati = $ref->getSnapshot()->getValue();
$ref = $database->getReference('longitude');
$longi = $ref->getSnapshot()->getValue();
//echo $longi;
//echo $lati;
$ref = $database->getReference('vehicle_Data/');
$Array = $ref->getSnapshot()->getValue();
foreach ($Array as $key => $value)
$string = $value['longitude'];
$vertices_x = preg_split ("/\,/", $string);
//print_r($vertices_x);
$ref = $database->getReference('vehicle_Data/');
$Array2 = $ref->getSnapshot()->getValue();
foreach ($Array2 as $key => $value2)
$string2 = $value2['latitude'];
$vertices_y = preg_split ("/\,/", $string2);
//print_r($vertices_y);
//longi
//$vertices_x = array(79.993772, 80.005102, 80.005102, 79.993772); // x-coordinates of the vertices of the polygon
//lati
//$vertices_y = array(6.912367,6.912367,-6.922336,6.922336); // y-coordinates of the vertices of the polygon
$points_polygon = count($vertices_x) - 1; // number vertices - zero-based array
$longitude_x = $longi;
$latitude_y = $lati;
if (is_in_polygon($points_polygon, $vertices_x, $vertices_y, $longitude_x, $latitude_y)){
$status = "inside";
//$result = $database-> ('status')->push($status);
$database->getReference('status')->set($status);
//echo "Is in polygon!";
}
else{
$status = "Outside";
//echo "Is not in polygon";
$database->getReference('status')->set($status);
//$result = $database->getReference('status')->push($status);
}
function is_in_polygon($points_polygon, $vertices_x, $vertices_y, $longitude_x, $latitude_y)
{
$i = $j = $c = 0;
for ($i = 0, $j = $points_polygon ; $i < $points_polygon; $j = $i++) {
if ( (($vertices_y[$i] > $latitude_y != ($vertices_y[$j] > $latitude_y)) &&
($longitude_x < ($vertices_x[$j] - $vertices_x[$i]) * ($latitude_y - $vertices_y[$i]) / ($vertices_y[$j] - $vertices_y[$i]) + $vertices_x[$i]) ) )
$c = !$c;
}
return $c;
}
?>
<div class="container">
<div class="my-3">
<div class="card">
<div class="card-body">
<a href="/backendPHP/add_new.php" class="btn btn-primary">Add New</a>
<a href="https://geojson.io/#map=8/8.157/80.236" target="_blank" class="btn btn-success float-right">Create Geofence >>> </a>
</div>
</div>
</div>
<div class="my-3">
<?php
if (isset($_SESSION['message'])) {
?>
<div class="alert alert-primary" role="alert">
<?php
echo $_SESSION['message'];
?>
</div>
<?php
}
unset($_SESSION['message']);
?>
</div>
<table class="table">
<thead>
<tr>
<!--<th scope="col">#</th>-->
<th scope="col">Vehicle No</th>
<th scope="col">Route No</th>
<th scope="col">Longitude cordinates</th>
<th scope="col">Latitude cordinates</th>
<th scope="col">Status</th>
<th scope="col">Edit</th>
<th scope="col">Delete</th>
</tr>
</thead>
<tbody>
<?php
$ref = $database->getReference('vehicle_Data');
$vehicle_Data = $ref->getSnapshot()->getValue();
foreach ($vehicle_Data as $key => $value) {
?>
<tr>
<!--<th scope="row"><?php echo $key ?></th>-->
<td><?php echo $value['Vehicle_No'] ?></td>
<td><?php echo $value['Route_No'] ?></td>
<td><?php echo $value['longitude'] ?></td>
<td><?php echo $value['latitude'] ?></td>
<td><?php echo $status ?></td>
<td> <a href="/backendPHP/update-data.php?key=<?php echo $key ?>" class="btn btn-primary">Edit</a></td>
<td>
<a href="/backendPHP/delete-data.php?key=<?php echo $key ?>" class="btn btn-danger">Delete</a>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
<?php
include "footer.php";
?>
\ No newline at end of file
......@@ -4,25 +4,27 @@ include "dbconn.php";
session_start();
if (isset($_POST['save'])) {
$title = $_POST['title'];
$price = $_POST['price'];
$content = $_POST['content'];
$Vehicle_No = $_POST['Vehicle_No'];
$Route_No = $_POST['Route_No'];
$longitude = $_POST['longitude'];
$latitude = $_POST['latitude'];
$key = $_POST['key'];
$data = [
"title" => $title,
"price" => $price,
"content" => $content
"Vehicle_No" => $Vehicle_No,
"Route_No" => $Route_No,
"longitude" => $longitude,
"latitude" => $latitude
];
$result = $database->getReference('products/' . $key)->update($data);
$result = $database->getReference('vehicle_Data/' . $key)->update($data);
if ($result) {
$_SESSION['message'] = "Product update Successfully";
$_SESSION['message'] = "updated Successfully";
header("Location:index.php");
}
}
if (isset($_GET['key'])) {
$products = $database->getReference('products')->getChild($_GET['key'])->getValue();
$vehicle_Data = $database->getReference('vehicle_Data')->getChild($_GET['key'])->getValue();
?>
<div class="container my-4">
<div class="row d-flex justify-content-center">
......@@ -30,22 +32,26 @@ if (isset($_GET['key'])) {
<div class="card">
<div class="card-header">
<h2>Update Product</h2>
<h2>Update Vehicle Data</h2>
</div>
<div class="card-body">
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="POST">
<div class="mb-3">
<label for="" class="form-label">Product Title</label>
<input type="text" class="form-control" id="" value="<?php echo $products["title"] ?>" name="title">
<label for="" class="form-label">Vehicle No</label>
<input type="text" class="form-control" id="" value="<?php echo $vehicle_Data["Vehicle_No"] ?>" name="Vehicle_No">
<input type="hidden" class="form-control" id="" value="<?php echo $_GET['key'] ?>" name="key">
</div>
<div class="mb-3">
<label for="" class="form-label">Product Price</label>
<input type="number" class="form-control" id="" value="<?php echo $products['price'] ?>" name="price">
<label for="" class="form-label">Route No</label>
<input type="number" class="form-control" id="" value="<?php echo $vehicle_Data['Route_No'] ?>" name="Route_No">
</div>
<div class="mb-3">
<label for="" class="form-label">Product Content</label>
<input type="text" class="form-control" id="" value="<?php echo $products['content'] ?>" name="content">
<label for="" class="form-label">Longitude</label>
<input type="text" class="form-control" id="" value="<?php echo $vehicle_Data['longitude'] ?>" name="longitude">
</div>
<div class="mb-3">
<label for="" class="form-label">Latitude</label>
<input type="text" class="form-control" id="" value="<?php echo $vehicle_Data['latitude'] ?>" name="latitude">
</div>
<button type="submit" name="save" class="btn btn-primary">Update</button>
</form>
......
......@@ -4,4 +4,4 @@
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032::getLoader();
return ComposerAutoloaderInit7f11bd2b9b15d868bac750d5c1019518::getLoader();
......@@ -12,7 +12,7 @@ return array(
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
'27592325262b385204a263c2ab632d6e' => $vendorDir . '/kreait/clock/src/Clock.php',
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
'23c18046f52bef3eea034657bafda50f' => $vendorDir . '/symfony/polyfill-php81/bootstrap.php',
'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
'b067bc7112e384b61c701452d53a14a8' => $vendorDir . '/mtdowling/jmespath.php/src/JmesPath.php',
'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
'23c18046f52bef3eea034657bafda50f' => $vendorDir . '/symfony/polyfill-php81/bootstrap.php',
);
......@@ -14,10 +14,11 @@ return array(
'Riverline\\MultiPartParser\\' => array($vendorDir . '/riverline/multipart-parser/src'),
'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'),
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
'Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'),
'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
'Location\\' => array($vendorDir . '/mjaschen/phpgeo/src'),
'Lcobucci\\JWT\\' => array($vendorDir . '/lcobucci/jwt/src'),
'Lcobucci\\Clock\\' => array($vendorDir . '/lcobucci/clock/src'),
'Kreait\\Firebase\\JWT\\' => array($vendorDir . '/kreait/firebase-tokens/src/JWT'),
......
......@@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
class ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032
class ComposerAutoloaderInit7f11bd2b9b15d868bac750d5c1019518
{
private static $loader;
......@@ -24,15 +24,15 @@ class ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032
require __DIR__ . '/platform_check.php';
spl_autoload_register(array('ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit7f11bd2b9b15d868bac750d5c1019518', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
spl_autoload_unregister(array('ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit7f11bd2b9b15d868bac750d5c1019518', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit4c91719b3e03d4d65ec733c786163032::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518::getInitializer($loader));
} else {
$map = require __DIR__ . '/autoload_namespaces.php';
foreach ($map as $namespace => $path) {
......@@ -53,12 +53,12 @@ class ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032
$loader->register(true);
if ($useStaticLoader) {
$includeFiles = Composer\Autoload\ComposerStaticInit4c91719b3e03d4d65ec733c786163032::$files;
$includeFiles = Composer\Autoload\ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518::$files;
} else {
$includeFiles = require __DIR__ . '/autoload_files.php';
}
foreach ($includeFiles as $fileIdentifier => $file) {
composerRequire4c91719b3e03d4d65ec733c786163032($fileIdentifier, $file);
composerRequire7f11bd2b9b15d868bac750d5c1019518($fileIdentifier, $file);
}
return $loader;
......@@ -70,7 +70,7 @@ class ComposerAutoloaderInit4c91719b3e03d4d65ec733c786163032
* @param string $file
* @return void
*/
function composerRequire4c91719b3e03d4d65ec733c786163032($fileIdentifier, $file)
function composerRequire7f11bd2b9b15d868bac750d5c1019518($fileIdentifier, $file)
{
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
......
......@@ -4,7 +4,7 @@
namespace Composer\Autoload;
class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
class ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518
{
public static $files = array (
'7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
......@@ -13,9 +13,9 @@ class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
'27592325262b385204a263c2ab632d6e' => __DIR__ . '/..' . '/kreait/clock/src/Clock.php',
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
'23c18046f52bef3eea034657bafda50f' => __DIR__ . '/..' . '/symfony/polyfill-php81/bootstrap.php',
'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
'b067bc7112e384b61c701452d53a14a8' => __DIR__ . '/..' . '/mtdowling/jmespath.php/src/JmesPath.php',
'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
'23c18046f52bef3eea034657bafda50f' => __DIR__ . '/..' . '/symfony/polyfill-php81/bootstrap.php',
);
public static $prefixLengthsPsr4 = array (
......@@ -45,6 +45,7 @@ class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
),
'L' =>
array (
'Location\\' => 9,
'Lcobucci\\JWT\\' => 13,
'Lcobucci\\Clock\\' => 15,
),
......@@ -111,8 +112,8 @@ class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
),
'Psr\\Http\\Message\\' =>
array (
0 => __DIR__ . '/..' . '/psr/http-message/src',
1 => __DIR__ . '/..' . '/psr/http-factory/src',
0 => __DIR__ . '/..' . '/psr/http-factory/src',
1 => __DIR__ . '/..' . '/psr/http-message/src',
),
'Psr\\Http\\Client\\' =>
array (
......@@ -126,6 +127,10 @@ class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
array (
0 => __DIR__ . '/..' . '/monolog/monolog/src/Monolog',
),
'Location\\' =>
array (
0 => __DIR__ . '/..' . '/mjaschen/phpgeo/src',
),
'Lcobucci\\JWT\\' =>
array (
0 => __DIR__ . '/..' . '/lcobucci/jwt/src',
......@@ -205,9 +210,9 @@ class ComposerStaticInit4c91719b3e03d4d65ec733c786163032
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInit4c91719b3e03d4d65ec733c786163032::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit4c91719b3e03d4d65ec733c786163032::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit4c91719b3e03d4d65ec733c786163032::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit7f11bd2b9b15d868bac750d5c1019518::$classMap;
}, null, ClassLoader::class);
}
......
......@@ -1079,6 +1079,82 @@
],
"install-path": "../lcobucci/jwt"
},
{
"name": "mjaschen/phpgeo",
"version": "4.2.0",
"version_normalized": "4.2.0.0",
"source": {
"type": "git",
"url": "https://github.com/mjaschen/phpgeo.git",
"reference": "b2e593cf1e9aceea36510158ddb80c7395a80d5a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/mjaschen/phpgeo/zipball/b2e593cf1e9aceea36510158ddb80c7395a80d5a",
"reference": "b2e593cf1e9aceea36510158ddb80c7395a80d5a",
"shasum": ""
},
"require": {
"php": "^7.3 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^9.5",
"squizlabs/php_codesniffer": "^3.6",
"vimeo/psalm": "^4.13"
},
"time": "2022-07-25T08:36:36+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
"psr-4": {
"Location\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marcus Jaschen",
"email": "mjaschen@gmail.com",
"homepage": "https://www.marcusjaschen.de/"
}
],
"description": "Simple Yet Powerful Geo Library",
"homepage": "https://phpgeo.marcusjaschen.de/",
"keywords": [
"Polygon",
"area",
"bearing",
"bounds",
"calculation",
"coordinate",
"distance",
"earth",
"ellipsoid",
"geo",
"geofence",
"gis",
"gps",
"haversine",
"length",
"perpendicular",
"point",
"polyline",
"projection",
"simplify",
"track",
"vincenty"
],
"support": {
"docs": "https://phpgeo.marcusjaschen.de/Installation.html",
"email": "mjaschen@gmail.com",
"issues": "https://github.com/mjaschen/phpgeo/issues",
"source": "https://github.com/mjaschen/phpgeo/tree/4.2.0"
},
"install-path": "../mjaschen/phpgeo"
},
{
"name": "monolog/monolog",
"version": "2.8.0",
......
......@@ -145,6 +145,15 @@
'reference' => '55564265fddf810504110bd68ca311932324b0e9',
'dev_requirement' => false,
),
'mjaschen/phpgeo' => array(
'pretty_version' => '4.2.0',
'version' => '4.2.0.0',
'type' => 'library',
'install_path' => __DIR__ . '/../mjaschen/phpgeo',
'aliases' => array(),
'reference' => 'b2e593cf1e9aceea36510158ddb80c7395a80d5a',
'dev_requirement' => false,
),
'monolog/monolog' => array(
'pretty_version' => '2.8.0',
'version' => '2.8.0.0',
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment