├── .gitignore ├── LICENSE ├── README.md ├── composer.json ├── composer.lock └── src └── Postgis.php /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /.idea -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DigitalCloud/laravel-postgis/aa23403e5daf97fd7a111558220a0d07ed73d411/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Laravel PostGIS 2 | This package implemented for calculate or check the distance between point and other database points. 3 | 4 | ## Installation 5 | 6 | [PHP](https://php.net) >=7.1.3 and [Laravel](http://laravel.com) ^5.6 are required. 7 | 8 | the package used [Laravel postgis extension](https://github.com/njbarrett/laravel-postgis) to deal with postgres database points in laravel, 9 | so if need more details or how to enable postgis extension in php see previous link. 10 | 11 | To get the latest version of Laravel PostGIS, simply require the project using [Composer](https://getcomposer.org): 12 | 13 | ```bash 14 | composer require digitalcloud/laravel-postgis 15 | ``` 16 | 17 | ## Usage 18 | 19 | 1 . First of all use `Postgis` trait in your model 20 | ```PHP 21 | with("user") 51 | ->whereIn("user_id", $users) 52 | ->get(); 53 | ``` 54 | 55 | #### 2. whereDistance 56 | check the distance between a point and other points in database 57 | ```PHP 58 | UserLocation::whereDistance(new Point($atitude,$longitude), ">", 50) 59 | ->with("user") 60 | ->whereIn("user_id", $users) 61 | ->get(); 62 | ``` 63 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "digitalcloud/laravel-postgis", 3 | "description": "", 4 | "keywords": [ 5 | "laravel", 6 | "framework", 7 | "latitude", 8 | "longitude", 9 | "postgis", 10 | "models", 11 | "Geographical", 12 | "Laravel Geographical", 13 | "Laravel-Geographical" 14 | ], 15 | "license": "MIT", 16 | "authors": [ 17 | { 18 | "name": "Yassir Awad", 19 | "email": "yassir.awad@dce.sa" 20 | } 21 | ], 22 | "require": { 23 | "php": ">=7.1.3", 24 | "laravel/framework": "^5.6", 25 | "phaza/laravel-postgis": "3.5" 26 | }, 27 | "require-dev": { 28 | }, 29 | "autoload": { 30 | "psr-4": { 31 | "Digitalcloud\\Postgis\\": "src/" 32 | } 33 | }, 34 | "autoload-dev": { 35 | }, 36 | "config": { 37 | "preferred-install": "dist" 38 | }, 39 | "minimum-stability": "dev", 40 | "prefer-stable": true 41 | } 42 | -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "96ab4c66d45026b98c58ca7d245e576c", 8 | "packages": [ 9 | { 10 | "name": "bosnadev/database", 11 | "version": "0.18.1", 12 | "source": { 13 | "type": "git", 14 | "url": "https://github.com/bosnadev/database.git", 15 | "reference": "397c0e269d4402bd95eaf99694fa8d43d05b9553" 16 | }, 17 | "dist": { 18 | "type": "zip", 19 | "url": "https://api.github.com/repos/bosnadev/database/zipball/397c0e269d4402bd95eaf99694fa8d43d05b9553", 20 | "reference": "397c0e269d4402bd95eaf99694fa8d43d05b9553", 21 | "shasum": "" 22 | }, 23 | "require": { 24 | "doctrine/dbal": "^2.5", 25 | "illuminate/database": "^5.0", 26 | "php": ">=5.5", 27 | "ramsey/uuid": "^3.0" 28 | }, 29 | "require-dev": { 30 | "codeclimate/php-test-reporter": "^0.3.2", 31 | "mockery/mockery": "0.9.*", 32 | "phpunit/phpunit": "~4.5" 33 | }, 34 | "type": "library", 35 | "autoload": { 36 | "psr-4": { 37 | "Bosnadev\\Database\\": "src/Bosnadev/Database/" 38 | } 39 | }, 40 | "notification-url": "https://packagist.org/downloads/", 41 | "license": [ 42 | "MIT" 43 | ], 44 | "authors": [ 45 | { 46 | "name": "Peter Haza", 47 | "email": "peter.haza@gmail.com" 48 | }, 49 | { 50 | "name": "Mirza Pasic", 51 | "email": "mirza@bosnadev.com" 52 | } 53 | ], 54 | "description": "Eloquent Extended, added some PostgreSQL features", 55 | "homepage": "https://bosnadev.com", 56 | "keywords": [ 57 | "database", 58 | "eloquent", 59 | "laravel", 60 | "postgresql" 61 | ], 62 | "time": "2018-06-07T07:24:36+00:00" 63 | }, 64 | { 65 | "name": "doctrine/cache", 66 | "version": "v1.8.0", 67 | "source": { 68 | "type": "git", 69 | "url": "https://github.com/doctrine/cache.git", 70 | "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57" 71 | }, 72 | "dist": { 73 | "type": "zip", 74 | "url": "https://api.github.com/repos/doctrine/cache/zipball/d768d58baee9a4862ca783840eca1b9add7a7f57", 75 | "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57", 76 | "shasum": "" 77 | }, 78 | "require": { 79 | "php": "~7.1" 80 | }, 81 | "conflict": { 82 | "doctrine/common": ">2.2,<2.4" 83 | }, 84 | "require-dev": { 85 | "alcaeus/mongo-php-adapter": "^1.1", 86 | "doctrine/coding-standard": "^4.0", 87 | "mongodb/mongodb": "^1.1", 88 | "phpunit/phpunit": "^7.0", 89 | "predis/predis": "~1.0" 90 | }, 91 | "suggest": { 92 | "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" 93 | }, 94 | "type": "library", 95 | "extra": { 96 | "branch-alias": { 97 | "dev-master": "1.8.x-dev" 98 | } 99 | }, 100 | "autoload": { 101 | "psr-4": { 102 | "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" 103 | } 104 | }, 105 | "notification-url": "https://packagist.org/downloads/", 106 | "license": [ 107 | "MIT" 108 | ], 109 | "authors": [ 110 | { 111 | "name": "Roman Borschel", 112 | "email": "roman@code-factory.org" 113 | }, 114 | { 115 | "name": "Benjamin Eberlei", 116 | "email": "kontakt@beberlei.de" 117 | }, 118 | { 119 | "name": "Guilherme Blanco", 120 | "email": "guilhermeblanco@gmail.com" 121 | }, 122 | { 123 | "name": "Jonathan Wage", 124 | "email": "jonwage@gmail.com" 125 | }, 126 | { 127 | "name": "Johannes Schmitt", 128 | "email": "schmittjoh@gmail.com" 129 | } 130 | ], 131 | "description": "Caching library offering an object-oriented API for many cache backends", 132 | "homepage": "https://www.doctrine-project.org", 133 | "keywords": [ 134 | "cache", 135 | "caching" 136 | ], 137 | "time": "2018-08-21T18:01:43+00:00" 138 | }, 139 | { 140 | "name": "doctrine/dbal", 141 | "version": "v2.8.0", 142 | "source": { 143 | "type": "git", 144 | "url": "https://github.com/doctrine/dbal.git", 145 | "reference": "5140a64c08b4b607b9bedaae0cedd26f04a0e621" 146 | }, 147 | "dist": { 148 | "type": "zip", 149 | "url": "https://api.github.com/repos/doctrine/dbal/zipball/5140a64c08b4b607b9bedaae0cedd26f04a0e621", 150 | "reference": "5140a64c08b4b607b9bedaae0cedd26f04a0e621", 151 | "shasum": "" 152 | }, 153 | "require": { 154 | "doctrine/cache": "^1.0", 155 | "doctrine/event-manager": "^1.0", 156 | "ext-pdo": "*", 157 | "php": "^7.1" 158 | }, 159 | "require-dev": { 160 | "doctrine/coding-standard": "^4.0", 161 | "jetbrains/phpstorm-stubs": "^2018.1.2", 162 | "phpstan/phpstan": "^0.10.1", 163 | "phpunit/phpunit": "^7.1.2", 164 | "phpunit/phpunit-mock-objects": "!=3.2.4,!=3.2.5", 165 | "symfony/console": "^2.0.5|^3.0|^4.0", 166 | "symfony/phpunit-bridge": "^3.4.5|^4.0.5" 167 | }, 168 | "suggest": { 169 | "symfony/console": "For helpful console commands such as SQL execution and import of files." 170 | }, 171 | "bin": [ 172 | "bin/doctrine-dbal" 173 | ], 174 | "type": "library", 175 | "extra": { 176 | "branch-alias": { 177 | "dev-master": "2.8.x-dev", 178 | "dev-develop": "3.0.x-dev" 179 | } 180 | }, 181 | "autoload": { 182 | "psr-0": { 183 | "Doctrine\\DBAL\\": "lib/" 184 | } 185 | }, 186 | "notification-url": "https://packagist.org/downloads/", 187 | "license": [ 188 | "MIT" 189 | ], 190 | "authors": [ 191 | { 192 | "name": "Roman Borschel", 193 | "email": "roman@code-factory.org" 194 | }, 195 | { 196 | "name": "Benjamin Eberlei", 197 | "email": "kontakt@beberlei.de" 198 | }, 199 | { 200 | "name": "Guilherme Blanco", 201 | "email": "guilhermeblanco@gmail.com" 202 | }, 203 | { 204 | "name": "Jonathan Wage", 205 | "email": "jonwage@gmail.com" 206 | } 207 | ], 208 | "description": "Database Abstraction Layer", 209 | "homepage": "http://www.doctrine-project.org", 210 | "keywords": [ 211 | "database", 212 | "dbal", 213 | "persistence", 214 | "queryobject" 215 | ], 216 | "time": "2018-07-13T03:16:35+00:00" 217 | }, 218 | { 219 | "name": "doctrine/event-manager", 220 | "version": "v1.0.0", 221 | "source": { 222 | "type": "git", 223 | "url": "https://github.com/doctrine/event-manager.git", 224 | "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3" 225 | }, 226 | "dist": { 227 | "type": "zip", 228 | "url": "https://api.github.com/repos/doctrine/event-manager/zipball/a520bc093a0170feeb6b14e9d83f3a14452e64b3", 229 | "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3", 230 | "shasum": "" 231 | }, 232 | "require": { 233 | "php": "^7.1" 234 | }, 235 | "conflict": { 236 | "doctrine/common": "<2.9@dev" 237 | }, 238 | "require-dev": { 239 | "doctrine/coding-standard": "^4.0", 240 | "phpunit/phpunit": "^7.0" 241 | }, 242 | "type": "library", 243 | "extra": { 244 | "branch-alias": { 245 | "dev-master": "1.0.x-dev" 246 | } 247 | }, 248 | "autoload": { 249 | "psr-4": { 250 | "Doctrine\\Common\\": "lib/Doctrine/Common" 251 | } 252 | }, 253 | "notification-url": "https://packagist.org/downloads/", 254 | "license": [ 255 | "MIT" 256 | ], 257 | "authors": [ 258 | { 259 | "name": "Roman Borschel", 260 | "email": "roman@code-factory.org" 261 | }, 262 | { 263 | "name": "Benjamin Eberlei", 264 | "email": "kontakt@beberlei.de" 265 | }, 266 | { 267 | "name": "Guilherme Blanco", 268 | "email": "guilhermeblanco@gmail.com" 269 | }, 270 | { 271 | "name": "Jonathan Wage", 272 | "email": "jonwage@gmail.com" 273 | }, 274 | { 275 | "name": "Johannes Schmitt", 276 | "email": "schmittjoh@gmail.com" 277 | }, 278 | { 279 | "name": "Marco Pivetta", 280 | "email": "ocramius@gmail.com" 281 | } 282 | ], 283 | "description": "Doctrine Event Manager component", 284 | "homepage": "https://www.doctrine-project.org/projects/event-manager.html", 285 | "keywords": [ 286 | "event", 287 | "eventdispatcher", 288 | "eventmanager" 289 | ], 290 | "time": "2018-06-11T11:59:03+00:00" 291 | }, 292 | { 293 | "name": "doctrine/inflector", 294 | "version": "v1.3.0", 295 | "source": { 296 | "type": "git", 297 | "url": "https://github.com/doctrine/inflector.git", 298 | "reference": "5527a48b7313d15261292c149e55e26eae771b0a" 299 | }, 300 | "dist": { 301 | "type": "zip", 302 | "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", 303 | "reference": "5527a48b7313d15261292c149e55e26eae771b0a", 304 | "shasum": "" 305 | }, 306 | "require": { 307 | "php": "^7.1" 308 | }, 309 | "require-dev": { 310 | "phpunit/phpunit": "^6.2" 311 | }, 312 | "type": "library", 313 | "extra": { 314 | "branch-alias": { 315 | "dev-master": "1.3.x-dev" 316 | } 317 | }, 318 | "autoload": { 319 | "psr-4": { 320 | "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" 321 | } 322 | }, 323 | "notification-url": "https://packagist.org/downloads/", 324 | "license": [ 325 | "MIT" 326 | ], 327 | "authors": [ 328 | { 329 | "name": "Roman Borschel", 330 | "email": "roman@code-factory.org" 331 | }, 332 | { 333 | "name": "Benjamin Eberlei", 334 | "email": "kontakt@beberlei.de" 335 | }, 336 | { 337 | "name": "Guilherme Blanco", 338 | "email": "guilhermeblanco@gmail.com" 339 | }, 340 | { 341 | "name": "Jonathan Wage", 342 | "email": "jonwage@gmail.com" 343 | }, 344 | { 345 | "name": "Johannes Schmitt", 346 | "email": "schmittjoh@gmail.com" 347 | } 348 | ], 349 | "description": "Common String Manipulations with regard to casing and singular/plural rules.", 350 | "homepage": "http://www.doctrine-project.org", 351 | "keywords": [ 352 | "inflection", 353 | "pluralize", 354 | "singularize", 355 | "string" 356 | ], 357 | "time": "2018-01-09T20:05:19+00:00" 358 | }, 359 | { 360 | "name": "doctrine/lexer", 361 | "version": "v1.0.1", 362 | "source": { 363 | "type": "git", 364 | "url": "https://github.com/doctrine/lexer.git", 365 | "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" 366 | }, 367 | "dist": { 368 | "type": "zip", 369 | "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", 370 | "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", 371 | "shasum": "" 372 | }, 373 | "require": { 374 | "php": ">=5.3.2" 375 | }, 376 | "type": "library", 377 | "extra": { 378 | "branch-alias": { 379 | "dev-master": "1.0.x-dev" 380 | } 381 | }, 382 | "autoload": { 383 | "psr-0": { 384 | "Doctrine\\Common\\Lexer\\": "lib/" 385 | } 386 | }, 387 | "notification-url": "https://packagist.org/downloads/", 388 | "license": [ 389 | "MIT" 390 | ], 391 | "authors": [ 392 | { 393 | "name": "Roman Borschel", 394 | "email": "roman@code-factory.org" 395 | }, 396 | { 397 | "name": "Guilherme Blanco", 398 | "email": "guilhermeblanco@gmail.com" 399 | }, 400 | { 401 | "name": "Johannes Schmitt", 402 | "email": "schmittjoh@gmail.com" 403 | } 404 | ], 405 | "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", 406 | "homepage": "http://www.doctrine-project.org", 407 | "keywords": [ 408 | "lexer", 409 | "parser" 410 | ], 411 | "time": "2014-09-09T13:34:57+00:00" 412 | }, 413 | { 414 | "name": "dragonmantank/cron-expression", 415 | "version": "v2.2.0", 416 | "source": { 417 | "type": "git", 418 | "url": "https://github.com/dragonmantank/cron-expression.git", 419 | "reference": "92a2c3768d50e21a1f26a53cb795ce72806266c5" 420 | }, 421 | "dist": { 422 | "type": "zip", 423 | "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/92a2c3768d50e21a1f26a53cb795ce72806266c5", 424 | "reference": "92a2c3768d50e21a1f26a53cb795ce72806266c5", 425 | "shasum": "" 426 | }, 427 | "require": { 428 | "php": ">=7.0.0" 429 | }, 430 | "require-dev": { 431 | "phpunit/phpunit": "~6.4" 432 | }, 433 | "type": "library", 434 | "autoload": { 435 | "psr-4": { 436 | "Cron\\": "src/Cron/" 437 | } 438 | }, 439 | "notification-url": "https://packagist.org/downloads/", 440 | "license": [ 441 | "MIT" 442 | ], 443 | "authors": [ 444 | { 445 | "name": "Michael Dowling", 446 | "email": "mtdowling@gmail.com", 447 | "homepage": "https://github.com/mtdowling" 448 | }, 449 | { 450 | "name": "Chris Tankersley", 451 | "email": "chris@ctankersley.com", 452 | "homepage": "https://github.com/dragonmantank" 453 | } 454 | ], 455 | "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", 456 | "keywords": [ 457 | "cron", 458 | "schedule" 459 | ], 460 | "time": "2018-06-06T03:12:17+00:00" 461 | }, 462 | { 463 | "name": "egulias/email-validator", 464 | "version": "2.1.6", 465 | "source": { 466 | "type": "git", 467 | "url": "https://github.com/egulias/EmailValidator.git", 468 | "reference": "0578b32b30b22de3e8664f797cf846fc9246f786" 469 | }, 470 | "dist": { 471 | "type": "zip", 472 | "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0578b32b30b22de3e8664f797cf846fc9246f786", 473 | "reference": "0578b32b30b22de3e8664f797cf846fc9246f786", 474 | "shasum": "" 475 | }, 476 | "require": { 477 | "doctrine/lexer": "^1.0.1", 478 | "php": ">= 5.5" 479 | }, 480 | "require-dev": { 481 | "dominicsayers/isemail": "dev-master", 482 | "phpunit/phpunit": "^4.8.35||^5.7||^6.0", 483 | "satooshi/php-coveralls": "^1.0.1" 484 | }, 485 | "suggest": { 486 | "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" 487 | }, 488 | "type": "library", 489 | "extra": { 490 | "branch-alias": { 491 | "dev-master": "2.0.x-dev" 492 | } 493 | }, 494 | "autoload": { 495 | "psr-4": { 496 | "Egulias\\EmailValidator\\": "EmailValidator" 497 | } 498 | }, 499 | "notification-url": "https://packagist.org/downloads/", 500 | "license": [ 501 | "MIT" 502 | ], 503 | "authors": [ 504 | { 505 | "name": "Eduardo Gulias Davis" 506 | } 507 | ], 508 | "description": "A library for validating emails against several RFCs", 509 | "homepage": "https://github.com/egulias/EmailValidator", 510 | "keywords": [ 511 | "email", 512 | "emailvalidation", 513 | "emailvalidator", 514 | "validation", 515 | "validator" 516 | ], 517 | "time": "2018-09-25T20:47:26+00:00" 518 | }, 519 | { 520 | "name": "erusev/parsedown", 521 | "version": "1.7.1", 522 | "source": { 523 | "type": "git", 524 | "url": "https://github.com/erusev/parsedown.git", 525 | "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1" 526 | }, 527 | "dist": { 528 | "type": "zip", 529 | "url": "https://api.github.com/repos/erusev/parsedown/zipball/92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", 530 | "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", 531 | "shasum": "" 532 | }, 533 | "require": { 534 | "ext-mbstring": "*", 535 | "php": ">=5.3.0" 536 | }, 537 | "require-dev": { 538 | "phpunit/phpunit": "^4.8.35" 539 | }, 540 | "type": "library", 541 | "autoload": { 542 | "psr-0": { 543 | "Parsedown": "" 544 | } 545 | }, 546 | "notification-url": "https://packagist.org/downloads/", 547 | "license": [ 548 | "MIT" 549 | ], 550 | "authors": [ 551 | { 552 | "name": "Emanuil Rusev", 553 | "email": "hello@erusev.com", 554 | "homepage": "http://erusev.com" 555 | } 556 | ], 557 | "description": "Parser for Markdown.", 558 | "homepage": "http://parsedown.org", 559 | "keywords": [ 560 | "markdown", 561 | "parser" 562 | ], 563 | "time": "2018-03-08T01:11:30+00:00" 564 | }, 565 | { 566 | "name": "geo-io/interface", 567 | "version": "v1.0.1", 568 | "source": { 569 | "type": "git", 570 | "url": "https://github.com/geo-io/interface.git", 571 | "reference": "cf46fe7b013de20ab8b601238c7d91b480810644" 572 | }, 573 | "dist": { 574 | "type": "zip", 575 | "url": "https://api.github.com/repos/geo-io/interface/zipball/cf46fe7b013de20ab8b601238c7d91b480810644", 576 | "reference": "cf46fe7b013de20ab8b601238c7d91b480810644", 577 | "shasum": "" 578 | }, 579 | "require": { 580 | "php": ">=5.3.3" 581 | }, 582 | "type": "library", 583 | "autoload": { 584 | "psr-4": { 585 | "GeoIO\\": "src/" 586 | } 587 | }, 588 | "notification-url": "https://packagist.org/downloads/", 589 | "license": [ 590 | "MIT" 591 | ], 592 | "authors": [ 593 | { 594 | "name": "Jan Sorgalla", 595 | "email": "jsorgalla@gmail.com" 596 | } 597 | ], 598 | "description": "Geo I/O base interfaces.", 599 | "keywords": [ 600 | "geo", 601 | "geometry", 602 | "io" 603 | ], 604 | "time": "2016-07-28T07:17:02+00:00" 605 | }, 606 | { 607 | "name": "geo-io/wkb-parser", 608 | "version": "v1.0.1", 609 | "source": { 610 | "type": "git", 611 | "url": "https://github.com/geo-io/wkb-parser.git", 612 | "reference": "cceee8f4e8b2058f3f1a0372c930140f23fe1ee1" 613 | }, 614 | "dist": { 615 | "type": "zip", 616 | "url": "https://api.github.com/repos/geo-io/wkb-parser/zipball/cceee8f4e8b2058f3f1a0372c930140f23fe1ee1", 617 | "reference": "cceee8f4e8b2058f3f1a0372c930140f23fe1ee1", 618 | "shasum": "" 619 | }, 620 | "require": { 621 | "geo-io/interface": "~1.0", 622 | "php": ">=5.3.3" 623 | }, 624 | "require-dev": { 625 | "mockery/mockery": "~0.9.0" 626 | }, 627 | "type": "library", 628 | "extra": { 629 | "branch-alias": { 630 | "dev-master": "1.0-dev" 631 | } 632 | }, 633 | "autoload": { 634 | "psr-4": { 635 | "GeoIO\\WKB\\Parser\\": "src/" 636 | } 637 | }, 638 | "notification-url": "https://packagist.org/downloads/", 639 | "license": [ 640 | "MIT" 641 | ], 642 | "authors": [ 643 | { 644 | "name": "Jan Sorgalla", 645 | "email": "jsorgalla@gmail.com" 646 | } 647 | ], 648 | "description": "Well-known binary (WKB) Parser.", 649 | "keywords": [ 650 | "geo", 651 | "geometry", 652 | "io", 653 | "parser", 654 | "wkb" 655 | ], 656 | "time": "2015-06-30T04:19:13+00:00" 657 | }, 658 | { 659 | "name": "jmikola/geojson", 660 | "version": "1.0.2", 661 | "source": { 662 | "type": "git", 663 | "url": "https://github.com/jmikola/geojson.git", 664 | "reference": "6ec3016cc0215667b7775f6ead7bd0337ad66eee" 665 | }, 666 | "dist": { 667 | "type": "zip", 668 | "url": "https://api.github.com/repos/jmikola/geojson/zipball/6ec3016cc0215667b7775f6ead7bd0337ad66eee", 669 | "reference": "6ec3016cc0215667b7775f6ead7bd0337ad66eee", 670 | "shasum": "" 671 | }, 672 | "require": { 673 | "php": ">=5.3.3" 674 | }, 675 | "require-dev": { 676 | "phpunit/phpunit": "~3.7" 677 | }, 678 | "type": "library", 679 | "extra": { 680 | "branch-alias": { 681 | "dev-master": "1.0-dev" 682 | } 683 | }, 684 | "autoload": { 685 | "psr-0": { 686 | "GeoJson\\": "src/" 687 | }, 688 | "classmap": [ 689 | "stubs/" 690 | ] 691 | }, 692 | "notification-url": "https://packagist.org/downloads/", 693 | "license": [ 694 | "MIT" 695 | ], 696 | "authors": [ 697 | { 698 | "name": "Jeremy Mikola", 699 | "email": "jmikola@gmail.com" 700 | } 701 | ], 702 | "description": "GeoJSON implementation for PHP", 703 | "homepage": "https://github.com/jmikola/geojson", 704 | "keywords": [ 705 | "geo", 706 | "geojson", 707 | "geospatial" 708 | ], 709 | "time": "2015-09-27T15:35:21+00:00" 710 | }, 711 | { 712 | "name": "laravel/framework", 713 | "version": "v5.7.8", 714 | "source": { 715 | "type": "git", 716 | "url": "https://github.com/laravel/framework.git", 717 | "reference": "763b64a43ebb6042e463aab4214d4cc9722147be" 718 | }, 719 | "dist": { 720 | "type": "zip", 721 | "url": "https://api.github.com/repos/laravel/framework/zipball/763b64a43ebb6042e463aab4214d4cc9722147be", 722 | "reference": "763b64a43ebb6042e463aab4214d4cc9722147be", 723 | "shasum": "" 724 | }, 725 | "require": { 726 | "doctrine/inflector": "^1.1", 727 | "dragonmantank/cron-expression": "^2.0", 728 | "erusev/parsedown": "^1.7", 729 | "ext-mbstring": "*", 730 | "ext-openssl": "*", 731 | "league/flysystem": "^1.0.8", 732 | "monolog/monolog": "^1.12", 733 | "nesbot/carbon": "^1.26.3", 734 | "opis/closure": "^3.1", 735 | "php": "^7.1.3", 736 | "psr/container": "^1.0", 737 | "psr/simple-cache": "^1.0", 738 | "ramsey/uuid": "^3.7", 739 | "swiftmailer/swiftmailer": "^6.0", 740 | "symfony/console": "^4.1", 741 | "symfony/debug": "^4.1", 742 | "symfony/finder": "^4.1", 743 | "symfony/http-foundation": "^4.1", 744 | "symfony/http-kernel": "^4.1", 745 | "symfony/process": "^4.1", 746 | "symfony/routing": "^4.1", 747 | "symfony/var-dumper": "^4.1", 748 | "tijsverkoyen/css-to-inline-styles": "^2.2.1", 749 | "vlucas/phpdotenv": "^2.2" 750 | }, 751 | "conflict": { 752 | "tightenco/collect": "<5.5.33" 753 | }, 754 | "replace": { 755 | "illuminate/auth": "self.version", 756 | "illuminate/broadcasting": "self.version", 757 | "illuminate/bus": "self.version", 758 | "illuminate/cache": "self.version", 759 | "illuminate/config": "self.version", 760 | "illuminate/console": "self.version", 761 | "illuminate/container": "self.version", 762 | "illuminate/contracts": "self.version", 763 | "illuminate/cookie": "self.version", 764 | "illuminate/database": "self.version", 765 | "illuminate/encryption": "self.version", 766 | "illuminate/events": "self.version", 767 | "illuminate/filesystem": "self.version", 768 | "illuminate/hashing": "self.version", 769 | "illuminate/http": "self.version", 770 | "illuminate/log": "self.version", 771 | "illuminate/mail": "self.version", 772 | "illuminate/notifications": "self.version", 773 | "illuminate/pagination": "self.version", 774 | "illuminate/pipeline": "self.version", 775 | "illuminate/queue": "self.version", 776 | "illuminate/redis": "self.version", 777 | "illuminate/routing": "self.version", 778 | "illuminate/session": "self.version", 779 | "illuminate/support": "self.version", 780 | "illuminate/translation": "self.version", 781 | "illuminate/validation": "self.version", 782 | "illuminate/view": "self.version" 783 | }, 784 | "require-dev": { 785 | "aws/aws-sdk-php": "^3.0", 786 | "doctrine/dbal": "^2.6", 787 | "filp/whoops": "^2.1.4", 788 | "league/flysystem-cached-adapter": "^1.0", 789 | "mockery/mockery": "^1.0", 790 | "moontoast/math": "^1.1", 791 | "orchestra/testbench-core": "3.7.*", 792 | "pda/pheanstalk": "^3.0", 793 | "phpunit/phpunit": "^7.0", 794 | "predis/predis": "^1.1.1", 795 | "symfony/css-selector": "^4.1", 796 | "symfony/dom-crawler": "^4.1", 797 | "true/punycode": "^2.1" 798 | }, 799 | "suggest": { 800 | "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (^3.0).", 801 | "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6).", 802 | "ext-pcntl": "Required to use all features of the queue worker.", 803 | "ext-posix": "Required to use all features of the queue worker.", 804 | "fzaninotto/faker": "Required to use the eloquent factory builder (^1.4).", 805 | "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (^6.0).", 806 | "laravel/tinker": "Required to use the tinker console command (^1.0).", 807 | "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", 808 | "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", 809 | "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (^1.0).", 810 | "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", 811 | "moontoast/math": "Required to use ordered UUIDs (^1.1).", 812 | "nexmo/client": "Required to use the Nexmo transport (^1.0).", 813 | "pda/pheanstalk": "Required to use the beanstalk queue driver (^3.0).", 814 | "predis/predis": "Required to use the redis cache and queue drivers (^1.0).", 815 | "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^3.0).", 816 | "symfony/css-selector": "Required to use some of the crawler integration testing tools (^4.1).", 817 | "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (^4.1).", 818 | "symfony/psr-http-message-bridge": "Required to psr7 bridging features (^1.0)." 819 | }, 820 | "type": "library", 821 | "extra": { 822 | "branch-alias": { 823 | "dev-master": "5.7-dev" 824 | } 825 | }, 826 | "autoload": { 827 | "files": [ 828 | "src/Illuminate/Foundation/helpers.php", 829 | "src/Illuminate/Support/helpers.php" 830 | ], 831 | "psr-4": { 832 | "Illuminate\\": "src/Illuminate/" 833 | } 834 | }, 835 | "notification-url": "https://packagist.org/downloads/", 836 | "license": [ 837 | "MIT" 838 | ], 839 | "authors": [ 840 | { 841 | "name": "Taylor Otwell", 842 | "email": "taylor@laravel.com" 843 | } 844 | ], 845 | "description": "The Laravel Framework.", 846 | "homepage": "https://laravel.com", 847 | "keywords": [ 848 | "framework", 849 | "laravel" 850 | ], 851 | "time": "2018-10-04T14:47:20+00:00" 852 | }, 853 | { 854 | "name": "league/flysystem", 855 | "version": "1.0.47", 856 | "source": { 857 | "type": "git", 858 | "url": "https://github.com/thephpleague/flysystem.git", 859 | "reference": "a11e4a75f256bdacf99d20780ce42d3b8272975c" 860 | }, 861 | "dist": { 862 | "type": "zip", 863 | "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/a11e4a75f256bdacf99d20780ce42d3b8272975c", 864 | "reference": "a11e4a75f256bdacf99d20780ce42d3b8272975c", 865 | "shasum": "" 866 | }, 867 | "require": { 868 | "ext-fileinfo": "*", 869 | "php": ">=5.5.9" 870 | }, 871 | "conflict": { 872 | "league/flysystem-sftp": "<1.0.6" 873 | }, 874 | "require-dev": { 875 | "phpspec/phpspec": "^3.4", 876 | "phpunit/phpunit": "^5.7.10" 877 | }, 878 | "suggest": { 879 | "ext-fileinfo": "Required for MimeType", 880 | "ext-ftp": "Allows you to use FTP server storage", 881 | "ext-openssl": "Allows you to use FTPS server storage", 882 | "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", 883 | "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", 884 | "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", 885 | "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", 886 | "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", 887 | "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", 888 | "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", 889 | "league/flysystem-webdav": "Allows you to use WebDAV storage", 890 | "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", 891 | "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", 892 | "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" 893 | }, 894 | "type": "library", 895 | "extra": { 896 | "branch-alias": { 897 | "dev-master": "1.1-dev" 898 | } 899 | }, 900 | "autoload": { 901 | "psr-4": { 902 | "League\\Flysystem\\": "src/" 903 | } 904 | }, 905 | "notification-url": "https://packagist.org/downloads/", 906 | "license": [ 907 | "MIT" 908 | ], 909 | "authors": [ 910 | { 911 | "name": "Frank de Jonge", 912 | "email": "info@frenky.net" 913 | } 914 | ], 915 | "description": "Filesystem abstraction: Many filesystems, one API.", 916 | "keywords": [ 917 | "Cloud Files", 918 | "WebDAV", 919 | "abstraction", 920 | "aws", 921 | "cloud", 922 | "copy.com", 923 | "dropbox", 924 | "file systems", 925 | "files", 926 | "filesystem", 927 | "filesystems", 928 | "ftp", 929 | "rackspace", 930 | "remote", 931 | "s3", 932 | "sftp", 933 | "storage" 934 | ], 935 | "time": "2018-09-14T15:30:29+00:00" 936 | }, 937 | { 938 | "name": "monolog/monolog", 939 | "version": "1.23.0", 940 | "source": { 941 | "type": "git", 942 | "url": "https://github.com/Seldaek/monolog.git", 943 | "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4" 944 | }, 945 | "dist": { 946 | "type": "zip", 947 | "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4", 948 | "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4", 949 | "shasum": "" 950 | }, 951 | "require": { 952 | "php": ">=5.3.0", 953 | "psr/log": "~1.0" 954 | }, 955 | "provide": { 956 | "psr/log-implementation": "1.0.0" 957 | }, 958 | "require-dev": { 959 | "aws/aws-sdk-php": "^2.4.9 || ^3.0", 960 | "doctrine/couchdb": "~1.0@dev", 961 | "graylog2/gelf-php": "~1.0", 962 | "jakub-onderka/php-parallel-lint": "0.9", 963 | "php-amqplib/php-amqplib": "~2.4", 964 | "php-console/php-console": "^3.1.3", 965 | "phpunit/phpunit": "~4.5", 966 | "phpunit/phpunit-mock-objects": "2.3.0", 967 | "ruflin/elastica": ">=0.90 <3.0", 968 | "sentry/sentry": "^0.13", 969 | "swiftmailer/swiftmailer": "^5.3|^6.0" 970 | }, 971 | "suggest": { 972 | "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", 973 | "doctrine/couchdb": "Allow sending log messages to a CouchDB server", 974 | "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", 975 | "ext-mongo": "Allow sending log messages to a MongoDB server", 976 | "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", 977 | "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", 978 | "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", 979 | "php-console/php-console": "Allow sending log messages to Google Chrome", 980 | "rollbar/rollbar": "Allow sending log messages to Rollbar", 981 | "ruflin/elastica": "Allow sending log messages to an Elastic Search server", 982 | "sentry/sentry": "Allow sending log messages to a Sentry server" 983 | }, 984 | "type": "library", 985 | "extra": { 986 | "branch-alias": { 987 | "dev-master": "2.0.x-dev" 988 | } 989 | }, 990 | "autoload": { 991 | "psr-4": { 992 | "Monolog\\": "src/Monolog" 993 | } 994 | }, 995 | "notification-url": "https://packagist.org/downloads/", 996 | "license": [ 997 | "MIT" 998 | ], 999 | "authors": [ 1000 | { 1001 | "name": "Jordi Boggiano", 1002 | "email": "j.boggiano@seld.be", 1003 | "homepage": "http://seld.be" 1004 | } 1005 | ], 1006 | "description": "Sends your logs to files, sockets, inboxes, databases and various web services", 1007 | "homepage": "http://github.com/Seldaek/monolog", 1008 | "keywords": [ 1009 | "log", 1010 | "logging", 1011 | "psr-3" 1012 | ], 1013 | "time": "2017-06-19T01:22:40+00:00" 1014 | }, 1015 | { 1016 | "name": "nesbot/carbon", 1017 | "version": "1.34.0", 1018 | "source": { 1019 | "type": "git", 1020 | "url": "https://github.com/briannesbitt/Carbon.git", 1021 | "reference": "1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33" 1022 | }, 1023 | "dist": { 1024 | "type": "zip", 1025 | "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33", 1026 | "reference": "1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33", 1027 | "shasum": "" 1028 | }, 1029 | "require": { 1030 | "php": ">=5.3.9", 1031 | "symfony/translation": "~2.6 || ~3.0 || ~4.0" 1032 | }, 1033 | "require-dev": { 1034 | "friendsofphp/php-cs-fixer": "~2", 1035 | "phpunit/phpunit": "^4.8.35 || ^5.7" 1036 | }, 1037 | "type": "library", 1038 | "extra": { 1039 | "laravel": { 1040 | "providers": [ 1041 | "Carbon\\Laravel\\ServiceProvider" 1042 | ] 1043 | } 1044 | }, 1045 | "autoload": { 1046 | "psr-4": { 1047 | "": "src/" 1048 | } 1049 | }, 1050 | "notification-url": "https://packagist.org/downloads/", 1051 | "license": [ 1052 | "MIT" 1053 | ], 1054 | "authors": [ 1055 | { 1056 | "name": "Brian Nesbitt", 1057 | "email": "brian@nesbot.com", 1058 | "homepage": "http://nesbot.com" 1059 | } 1060 | ], 1061 | "description": "A simple API extension for DateTime.", 1062 | "homepage": "http://carbon.nesbot.com", 1063 | "keywords": [ 1064 | "date", 1065 | "datetime", 1066 | "time" 1067 | ], 1068 | "time": "2018-09-20T19:36:25+00:00" 1069 | }, 1070 | { 1071 | "name": "opis/closure", 1072 | "version": "3.1.1", 1073 | "source": { 1074 | "type": "git", 1075 | "url": "https://github.com/opis/closure.git", 1076 | "reference": "d3209e46ad6c69a969b705df0738fd0dbe26ef9e" 1077 | }, 1078 | "dist": { 1079 | "type": "zip", 1080 | "url": "https://api.github.com/repos/opis/closure/zipball/d3209e46ad6c69a969b705df0738fd0dbe26ef9e", 1081 | "reference": "d3209e46ad6c69a969b705df0738fd0dbe26ef9e", 1082 | "shasum": "" 1083 | }, 1084 | "require": { 1085 | "php": "^5.4 || ^7.0" 1086 | }, 1087 | "require-dev": { 1088 | "jeremeamia/superclosure": "^2.0", 1089 | "phpunit/phpunit": "^4.0" 1090 | }, 1091 | "type": "library", 1092 | "extra": { 1093 | "branch-alias": { 1094 | "dev-master": "3.0.x-dev" 1095 | } 1096 | }, 1097 | "autoload": { 1098 | "psr-4": { 1099 | "Opis\\Closure\\": "src/" 1100 | }, 1101 | "files": [ 1102 | "functions.php" 1103 | ] 1104 | }, 1105 | "notification-url": "https://packagist.org/downloads/", 1106 | "license": [ 1107 | "MIT" 1108 | ], 1109 | "authors": [ 1110 | { 1111 | "name": "Marius Sarca", 1112 | "email": "marius.sarca@gmail.com" 1113 | }, 1114 | { 1115 | "name": "Sorin Sarca", 1116 | "email": "sarca_sorin@hotmail.com" 1117 | } 1118 | ], 1119 | "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", 1120 | "homepage": "https://opis.io/closure", 1121 | "keywords": [ 1122 | "anonymous functions", 1123 | "closure", 1124 | "function", 1125 | "serializable", 1126 | "serialization", 1127 | "serialize" 1128 | ], 1129 | "time": "2018-10-02T13:36:53+00:00" 1130 | }, 1131 | { 1132 | "name": "paragonie/random_compat", 1133 | "version": "v9.99.99", 1134 | "source": { 1135 | "type": "git", 1136 | "url": "https://github.com/paragonie/random_compat.git", 1137 | "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95" 1138 | }, 1139 | "dist": { 1140 | "type": "zip", 1141 | "url": "https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", 1142 | "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", 1143 | "shasum": "" 1144 | }, 1145 | "require": { 1146 | "php": "^7" 1147 | }, 1148 | "require-dev": { 1149 | "phpunit/phpunit": "4.*|5.*", 1150 | "vimeo/psalm": "^1" 1151 | }, 1152 | "suggest": { 1153 | "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." 1154 | }, 1155 | "type": "library", 1156 | "notification-url": "https://packagist.org/downloads/", 1157 | "license": [ 1158 | "MIT" 1159 | ], 1160 | "authors": [ 1161 | { 1162 | "name": "Paragon Initiative Enterprises", 1163 | "email": "security@paragonie.com", 1164 | "homepage": "https://paragonie.com" 1165 | } 1166 | ], 1167 | "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", 1168 | "keywords": [ 1169 | "csprng", 1170 | "polyfill", 1171 | "pseudorandom", 1172 | "random" 1173 | ], 1174 | "time": "2018-07-02T15:55:56+00:00" 1175 | }, 1176 | { 1177 | "name": "phaza/laravel-postgis", 1178 | "version": "3.5", 1179 | "source": { 1180 | "type": "git", 1181 | "url": "https://github.com/njbarrett/laravel-postgis.git", 1182 | "reference": "bc9f24be1ce2c50bbc4004d03587393ad7a1e07c" 1183 | }, 1184 | "dist": { 1185 | "type": "zip", 1186 | "url": "https://api.github.com/repos/njbarrett/laravel-postgis/zipball/bc9f24be1ce2c50bbc4004d03587393ad7a1e07c", 1187 | "reference": "bc9f24be1ce2c50bbc4004d03587393ad7a1e07c", 1188 | "shasum": "" 1189 | }, 1190 | "require": { 1191 | "bosnadev/database": "0.18.1", 1192 | "geo-io/wkb-parser": "^1.0", 1193 | "illuminate/database": "^5.2", 1194 | "jmikola/geojson": "^1.0", 1195 | "php": ">=5.5" 1196 | }, 1197 | "require-dev": { 1198 | "codeclimate/php-test-reporter": "~0.3", 1199 | "illuminate/pagination": "~5.0", 1200 | "mockery/mockery": "0.9.*", 1201 | "phpunit/phpunit": "~4.5" 1202 | }, 1203 | "type": "library", 1204 | "extra": { 1205 | "laravel": { 1206 | "providers": [ 1207 | "Phaza\\LaravelPostgis\\DatabaseServiceProvider" 1208 | ] 1209 | } 1210 | }, 1211 | "autoload": { 1212 | "psr-4": { 1213 | "Phaza\\LaravelPostgis\\": "src/" 1214 | } 1215 | }, 1216 | "notification-url": "https://packagist.org/downloads/", 1217 | "license": [ 1218 | "MIT" 1219 | ], 1220 | "authors": [ 1221 | { 1222 | "name": "Peter Haza", 1223 | "email": "peter.haza@gmail.com" 1224 | }, 1225 | { 1226 | "name": "Nicholas Barrett", 1227 | "email": "njbarrett7@gmail.com" 1228 | } 1229 | ], 1230 | "description": "Postgis extensions for laravel. Aims to make it easy to work with geometries from laravel models", 1231 | "time": "2018-08-22T09:20:12+00:00" 1232 | }, 1233 | { 1234 | "name": "psr/container", 1235 | "version": "1.0.0", 1236 | "source": { 1237 | "type": "git", 1238 | "url": "https://github.com/php-fig/container.git", 1239 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" 1240 | }, 1241 | "dist": { 1242 | "type": "zip", 1243 | "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 1244 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 1245 | "shasum": "" 1246 | }, 1247 | "require": { 1248 | "php": ">=5.3.0" 1249 | }, 1250 | "type": "library", 1251 | "extra": { 1252 | "branch-alias": { 1253 | "dev-master": "1.0.x-dev" 1254 | } 1255 | }, 1256 | "autoload": { 1257 | "psr-4": { 1258 | "Psr\\Container\\": "src/" 1259 | } 1260 | }, 1261 | "notification-url": "https://packagist.org/downloads/", 1262 | "license": [ 1263 | "MIT" 1264 | ], 1265 | "authors": [ 1266 | { 1267 | "name": "PHP-FIG", 1268 | "homepage": "http://www.php-fig.org/" 1269 | } 1270 | ], 1271 | "description": "Common Container Interface (PHP FIG PSR-11)", 1272 | "homepage": "https://github.com/php-fig/container", 1273 | "keywords": [ 1274 | "PSR-11", 1275 | "container", 1276 | "container-interface", 1277 | "container-interop", 1278 | "psr" 1279 | ], 1280 | "time": "2017-02-14T16:28:37+00:00" 1281 | }, 1282 | { 1283 | "name": "psr/log", 1284 | "version": "1.0.2", 1285 | "source": { 1286 | "type": "git", 1287 | "url": "https://github.com/php-fig/log.git", 1288 | "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" 1289 | }, 1290 | "dist": { 1291 | "type": "zip", 1292 | "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", 1293 | "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", 1294 | "shasum": "" 1295 | }, 1296 | "require": { 1297 | "php": ">=5.3.0" 1298 | }, 1299 | "type": "library", 1300 | "extra": { 1301 | "branch-alias": { 1302 | "dev-master": "1.0.x-dev" 1303 | } 1304 | }, 1305 | "autoload": { 1306 | "psr-4": { 1307 | "Psr\\Log\\": "Psr/Log/" 1308 | } 1309 | }, 1310 | "notification-url": "https://packagist.org/downloads/", 1311 | "license": [ 1312 | "MIT" 1313 | ], 1314 | "authors": [ 1315 | { 1316 | "name": "PHP-FIG", 1317 | "homepage": "http://www.php-fig.org/" 1318 | } 1319 | ], 1320 | "description": "Common interface for logging libraries", 1321 | "homepage": "https://github.com/php-fig/log", 1322 | "keywords": [ 1323 | "log", 1324 | "psr", 1325 | "psr-3" 1326 | ], 1327 | "time": "2016-10-10T12:19:37+00:00" 1328 | }, 1329 | { 1330 | "name": "psr/simple-cache", 1331 | "version": "1.0.1", 1332 | "source": { 1333 | "type": "git", 1334 | "url": "https://github.com/php-fig/simple-cache.git", 1335 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" 1336 | }, 1337 | "dist": { 1338 | "type": "zip", 1339 | "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 1340 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 1341 | "shasum": "" 1342 | }, 1343 | "require": { 1344 | "php": ">=5.3.0" 1345 | }, 1346 | "type": "library", 1347 | "extra": { 1348 | "branch-alias": { 1349 | "dev-master": "1.0.x-dev" 1350 | } 1351 | }, 1352 | "autoload": { 1353 | "psr-4": { 1354 | "Psr\\SimpleCache\\": "src/" 1355 | } 1356 | }, 1357 | "notification-url": "https://packagist.org/downloads/", 1358 | "license": [ 1359 | "MIT" 1360 | ], 1361 | "authors": [ 1362 | { 1363 | "name": "PHP-FIG", 1364 | "homepage": "http://www.php-fig.org/" 1365 | } 1366 | ], 1367 | "description": "Common interfaces for simple caching", 1368 | "keywords": [ 1369 | "cache", 1370 | "caching", 1371 | "psr", 1372 | "psr-16", 1373 | "simple-cache" 1374 | ], 1375 | "time": "2017-10-23T01:57:42+00:00" 1376 | }, 1377 | { 1378 | "name": "ramsey/uuid", 1379 | "version": "3.8.0", 1380 | "source": { 1381 | "type": "git", 1382 | "url": "https://github.com/ramsey/uuid.git", 1383 | "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3" 1384 | }, 1385 | "dist": { 1386 | "type": "zip", 1387 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/d09ea80159c1929d75b3f9c60504d613aeb4a1e3", 1388 | "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3", 1389 | "shasum": "" 1390 | }, 1391 | "require": { 1392 | "paragonie/random_compat": "^1.0|^2.0|9.99.99", 1393 | "php": "^5.4 || ^7.0", 1394 | "symfony/polyfill-ctype": "^1.8" 1395 | }, 1396 | "replace": { 1397 | "rhumsaa/uuid": "self.version" 1398 | }, 1399 | "require-dev": { 1400 | "codeception/aspect-mock": "^1.0 | ~2.0.0", 1401 | "doctrine/annotations": "~1.2.0", 1402 | "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ~2.1.0", 1403 | "ircmaxell/random-lib": "^1.1", 1404 | "jakub-onderka/php-parallel-lint": "^0.9.0", 1405 | "mockery/mockery": "^0.9.9", 1406 | "moontoast/math": "^1.1", 1407 | "php-mock/php-mock-phpunit": "^0.3|^1.1", 1408 | "phpunit/phpunit": "^4.7|^5.0|^6.5", 1409 | "squizlabs/php_codesniffer": "^2.3" 1410 | }, 1411 | "suggest": { 1412 | "ext-ctype": "Provides support for PHP Ctype functions", 1413 | "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", 1414 | "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", 1415 | "ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter", 1416 | "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", 1417 | "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", 1418 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." 1419 | }, 1420 | "type": "library", 1421 | "extra": { 1422 | "branch-alias": { 1423 | "dev-master": "3.x-dev" 1424 | } 1425 | }, 1426 | "autoload": { 1427 | "psr-4": { 1428 | "Ramsey\\Uuid\\": "src/" 1429 | } 1430 | }, 1431 | "notification-url": "https://packagist.org/downloads/", 1432 | "license": [ 1433 | "MIT" 1434 | ], 1435 | "authors": [ 1436 | { 1437 | "name": "Marijn Huizendveld", 1438 | "email": "marijn.huizendveld@gmail.com" 1439 | }, 1440 | { 1441 | "name": "Thibaud Fabre", 1442 | "email": "thibaud@aztech.io" 1443 | }, 1444 | { 1445 | "name": "Ben Ramsey", 1446 | "email": "ben@benramsey.com", 1447 | "homepage": "https://benramsey.com" 1448 | } 1449 | ], 1450 | "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", 1451 | "homepage": "https://github.com/ramsey/uuid", 1452 | "keywords": [ 1453 | "guid", 1454 | "identifier", 1455 | "uuid" 1456 | ], 1457 | "time": "2018-07-19T23:38:55+00:00" 1458 | }, 1459 | { 1460 | "name": "swiftmailer/swiftmailer", 1461 | "version": "v6.1.3", 1462 | "source": { 1463 | "type": "git", 1464 | "url": "https://github.com/swiftmailer/swiftmailer.git", 1465 | "reference": "8ddcb66ac10c392d3beb54829eef8ac1438595f4" 1466 | }, 1467 | "dist": { 1468 | "type": "zip", 1469 | "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/8ddcb66ac10c392d3beb54829eef8ac1438595f4", 1470 | "reference": "8ddcb66ac10c392d3beb54829eef8ac1438595f4", 1471 | "shasum": "" 1472 | }, 1473 | "require": { 1474 | "egulias/email-validator": "~2.0", 1475 | "php": ">=7.0.0" 1476 | }, 1477 | "require-dev": { 1478 | "mockery/mockery": "~0.9.1", 1479 | "symfony/phpunit-bridge": "~3.3@dev" 1480 | }, 1481 | "suggest": { 1482 | "ext-intl": "Needed to support internationalized email addresses", 1483 | "true/punycode": "Needed to support internationalized email addresses, if ext-intl is not installed" 1484 | }, 1485 | "type": "library", 1486 | "extra": { 1487 | "branch-alias": { 1488 | "dev-master": "6.1-dev" 1489 | } 1490 | }, 1491 | "autoload": { 1492 | "files": [ 1493 | "lib/swift_required.php" 1494 | ] 1495 | }, 1496 | "notification-url": "https://packagist.org/downloads/", 1497 | "license": [ 1498 | "MIT" 1499 | ], 1500 | "authors": [ 1501 | { 1502 | "name": "Chris Corbyn" 1503 | }, 1504 | { 1505 | "name": "Fabien Potencier", 1506 | "email": "fabien@symfony.com" 1507 | } 1508 | ], 1509 | "description": "Swiftmailer, free feature-rich PHP mailer", 1510 | "homepage": "https://swiftmailer.symfony.com", 1511 | "keywords": [ 1512 | "email", 1513 | "mail", 1514 | "mailer" 1515 | ], 1516 | "time": "2018-09-11T07:12:52+00:00" 1517 | }, 1518 | { 1519 | "name": "symfony/console", 1520 | "version": "v4.1.6", 1521 | "source": { 1522 | "type": "git", 1523 | "url": "https://github.com/symfony/console.git", 1524 | "reference": "dc7122fe5f6113cfaba3b3de575d31112c9aa60b" 1525 | }, 1526 | "dist": { 1527 | "type": "zip", 1528 | "url": "https://api.github.com/repos/symfony/console/zipball/dc7122fe5f6113cfaba3b3de575d31112c9aa60b", 1529 | "reference": "dc7122fe5f6113cfaba3b3de575d31112c9aa60b", 1530 | "shasum": "" 1531 | }, 1532 | "require": { 1533 | "php": "^7.1.3", 1534 | "symfony/polyfill-mbstring": "~1.0" 1535 | }, 1536 | "conflict": { 1537 | "symfony/dependency-injection": "<3.4", 1538 | "symfony/process": "<3.3" 1539 | }, 1540 | "require-dev": { 1541 | "psr/log": "~1.0", 1542 | "symfony/config": "~3.4|~4.0", 1543 | "symfony/dependency-injection": "~3.4|~4.0", 1544 | "symfony/event-dispatcher": "~3.4|~4.0", 1545 | "symfony/lock": "~3.4|~4.0", 1546 | "symfony/process": "~3.4|~4.0" 1547 | }, 1548 | "suggest": { 1549 | "psr/log-implementation": "For using the console logger", 1550 | "symfony/event-dispatcher": "", 1551 | "symfony/lock": "", 1552 | "symfony/process": "" 1553 | }, 1554 | "type": "library", 1555 | "extra": { 1556 | "branch-alias": { 1557 | "dev-master": "4.1-dev" 1558 | } 1559 | }, 1560 | "autoload": { 1561 | "psr-4": { 1562 | "Symfony\\Component\\Console\\": "" 1563 | }, 1564 | "exclude-from-classmap": [ 1565 | "/Tests/" 1566 | ] 1567 | }, 1568 | "notification-url": "https://packagist.org/downloads/", 1569 | "license": [ 1570 | "MIT" 1571 | ], 1572 | "authors": [ 1573 | { 1574 | "name": "Fabien Potencier", 1575 | "email": "fabien@symfony.com" 1576 | }, 1577 | { 1578 | "name": "Symfony Community", 1579 | "homepage": "https://symfony.com/contributors" 1580 | } 1581 | ], 1582 | "description": "Symfony Console Component", 1583 | "homepage": "https://symfony.com", 1584 | "time": "2018-10-03T08:15:46+00:00" 1585 | }, 1586 | { 1587 | "name": "symfony/css-selector", 1588 | "version": "v4.1.6", 1589 | "source": { 1590 | "type": "git", 1591 | "url": "https://github.com/symfony/css-selector.git", 1592 | "reference": "d67de79a70a27d93c92c47f37ece958bf8de4d8a" 1593 | }, 1594 | "dist": { 1595 | "type": "zip", 1596 | "url": "https://api.github.com/repos/symfony/css-selector/zipball/d67de79a70a27d93c92c47f37ece958bf8de4d8a", 1597 | "reference": "d67de79a70a27d93c92c47f37ece958bf8de4d8a", 1598 | "shasum": "" 1599 | }, 1600 | "require": { 1601 | "php": "^7.1.3" 1602 | }, 1603 | "type": "library", 1604 | "extra": { 1605 | "branch-alias": { 1606 | "dev-master": "4.1-dev" 1607 | } 1608 | }, 1609 | "autoload": { 1610 | "psr-4": { 1611 | "Symfony\\Component\\CssSelector\\": "" 1612 | }, 1613 | "exclude-from-classmap": [ 1614 | "/Tests/" 1615 | ] 1616 | }, 1617 | "notification-url": "https://packagist.org/downloads/", 1618 | "license": [ 1619 | "MIT" 1620 | ], 1621 | "authors": [ 1622 | { 1623 | "name": "Jean-François Simon", 1624 | "email": "jeanfrancois.simon@sensiolabs.com" 1625 | }, 1626 | { 1627 | "name": "Fabien Potencier", 1628 | "email": "fabien@symfony.com" 1629 | }, 1630 | { 1631 | "name": "Symfony Community", 1632 | "homepage": "https://symfony.com/contributors" 1633 | } 1634 | ], 1635 | "description": "Symfony CssSelector Component", 1636 | "homepage": "https://symfony.com", 1637 | "time": "2018-10-02T16:36:10+00:00" 1638 | }, 1639 | { 1640 | "name": "symfony/debug", 1641 | "version": "v4.1.6", 1642 | "source": { 1643 | "type": "git", 1644 | "url": "https://github.com/symfony/debug.git", 1645 | "reference": "e3f76ce6198f81994e019bb2b4e533e9de1b9b90" 1646 | }, 1647 | "dist": { 1648 | "type": "zip", 1649 | "url": "https://api.github.com/repos/symfony/debug/zipball/e3f76ce6198f81994e019bb2b4e533e9de1b9b90", 1650 | "reference": "e3f76ce6198f81994e019bb2b4e533e9de1b9b90", 1651 | "shasum": "" 1652 | }, 1653 | "require": { 1654 | "php": "^7.1.3", 1655 | "psr/log": "~1.0" 1656 | }, 1657 | "conflict": { 1658 | "symfony/http-kernel": "<3.4" 1659 | }, 1660 | "require-dev": { 1661 | "symfony/http-kernel": "~3.4|~4.0" 1662 | }, 1663 | "type": "library", 1664 | "extra": { 1665 | "branch-alias": { 1666 | "dev-master": "4.1-dev" 1667 | } 1668 | }, 1669 | "autoload": { 1670 | "psr-4": { 1671 | "Symfony\\Component\\Debug\\": "" 1672 | }, 1673 | "exclude-from-classmap": [ 1674 | "/Tests/" 1675 | ] 1676 | }, 1677 | "notification-url": "https://packagist.org/downloads/", 1678 | "license": [ 1679 | "MIT" 1680 | ], 1681 | "authors": [ 1682 | { 1683 | "name": "Fabien Potencier", 1684 | "email": "fabien@symfony.com" 1685 | }, 1686 | { 1687 | "name": "Symfony Community", 1688 | "homepage": "https://symfony.com/contributors" 1689 | } 1690 | ], 1691 | "description": "Symfony Debug Component", 1692 | "homepage": "https://symfony.com", 1693 | "time": "2018-10-02T16:36:10+00:00" 1694 | }, 1695 | { 1696 | "name": "symfony/event-dispatcher", 1697 | "version": "v4.1.6", 1698 | "source": { 1699 | "type": "git", 1700 | "url": "https://github.com/symfony/event-dispatcher.git", 1701 | "reference": "bfb30c2ad377615a463ebbc875eba64a99f6aa3e" 1702 | }, 1703 | "dist": { 1704 | "type": "zip", 1705 | "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/bfb30c2ad377615a463ebbc875eba64a99f6aa3e", 1706 | "reference": "bfb30c2ad377615a463ebbc875eba64a99f6aa3e", 1707 | "shasum": "" 1708 | }, 1709 | "require": { 1710 | "php": "^7.1.3" 1711 | }, 1712 | "conflict": { 1713 | "symfony/dependency-injection": "<3.4" 1714 | }, 1715 | "require-dev": { 1716 | "psr/log": "~1.0", 1717 | "symfony/config": "~3.4|~4.0", 1718 | "symfony/dependency-injection": "~3.4|~4.0", 1719 | "symfony/expression-language": "~3.4|~4.0", 1720 | "symfony/stopwatch": "~3.4|~4.0" 1721 | }, 1722 | "suggest": { 1723 | "symfony/dependency-injection": "", 1724 | "symfony/http-kernel": "" 1725 | }, 1726 | "type": "library", 1727 | "extra": { 1728 | "branch-alias": { 1729 | "dev-master": "4.1-dev" 1730 | } 1731 | }, 1732 | "autoload": { 1733 | "psr-4": { 1734 | "Symfony\\Component\\EventDispatcher\\": "" 1735 | }, 1736 | "exclude-from-classmap": [ 1737 | "/Tests/" 1738 | ] 1739 | }, 1740 | "notification-url": "https://packagist.org/downloads/", 1741 | "license": [ 1742 | "MIT" 1743 | ], 1744 | "authors": [ 1745 | { 1746 | "name": "Fabien Potencier", 1747 | "email": "fabien@symfony.com" 1748 | }, 1749 | { 1750 | "name": "Symfony Community", 1751 | "homepage": "https://symfony.com/contributors" 1752 | } 1753 | ], 1754 | "description": "Symfony EventDispatcher Component", 1755 | "homepage": "https://symfony.com", 1756 | "time": "2018-07-26T09:10:45+00:00" 1757 | }, 1758 | { 1759 | "name": "symfony/finder", 1760 | "version": "v4.1.6", 1761 | "source": { 1762 | "type": "git", 1763 | "url": "https://github.com/symfony/finder.git", 1764 | "reference": "1f17195b44543017a9c9b2d437c670627e96ad06" 1765 | }, 1766 | "dist": { 1767 | "type": "zip", 1768 | "url": "https://api.github.com/repos/symfony/finder/zipball/1f17195b44543017a9c9b2d437c670627e96ad06", 1769 | "reference": "1f17195b44543017a9c9b2d437c670627e96ad06", 1770 | "shasum": "" 1771 | }, 1772 | "require": { 1773 | "php": "^7.1.3" 1774 | }, 1775 | "type": "library", 1776 | "extra": { 1777 | "branch-alias": { 1778 | "dev-master": "4.1-dev" 1779 | } 1780 | }, 1781 | "autoload": { 1782 | "psr-4": { 1783 | "Symfony\\Component\\Finder\\": "" 1784 | }, 1785 | "exclude-from-classmap": [ 1786 | "/Tests/" 1787 | ] 1788 | }, 1789 | "notification-url": "https://packagist.org/downloads/", 1790 | "license": [ 1791 | "MIT" 1792 | ], 1793 | "authors": [ 1794 | { 1795 | "name": "Fabien Potencier", 1796 | "email": "fabien@symfony.com" 1797 | }, 1798 | { 1799 | "name": "Symfony Community", 1800 | "homepage": "https://symfony.com/contributors" 1801 | } 1802 | ], 1803 | "description": "Symfony Finder Component", 1804 | "homepage": "https://symfony.com", 1805 | "time": "2018-10-03T08:47:56+00:00" 1806 | }, 1807 | { 1808 | "name": "symfony/http-foundation", 1809 | "version": "v4.1.6", 1810 | "source": { 1811 | "type": "git", 1812 | "url": "https://github.com/symfony/http-foundation.git", 1813 | "reference": "d528136617ff24f530e70df9605acc1b788b08d4" 1814 | }, 1815 | "dist": { 1816 | "type": "zip", 1817 | "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d528136617ff24f530e70df9605acc1b788b08d4", 1818 | "reference": "d528136617ff24f530e70df9605acc1b788b08d4", 1819 | "shasum": "" 1820 | }, 1821 | "require": { 1822 | "php": "^7.1.3", 1823 | "symfony/polyfill-mbstring": "~1.1" 1824 | }, 1825 | "require-dev": { 1826 | "predis/predis": "~1.0", 1827 | "symfony/expression-language": "~3.4|~4.0" 1828 | }, 1829 | "type": "library", 1830 | "extra": { 1831 | "branch-alias": { 1832 | "dev-master": "4.1-dev" 1833 | } 1834 | }, 1835 | "autoload": { 1836 | "psr-4": { 1837 | "Symfony\\Component\\HttpFoundation\\": "" 1838 | }, 1839 | "exclude-from-classmap": [ 1840 | "/Tests/" 1841 | ] 1842 | }, 1843 | "notification-url": "https://packagist.org/downloads/", 1844 | "license": [ 1845 | "MIT" 1846 | ], 1847 | "authors": [ 1848 | { 1849 | "name": "Fabien Potencier", 1850 | "email": "fabien@symfony.com" 1851 | }, 1852 | { 1853 | "name": "Symfony Community", 1854 | "homepage": "https://symfony.com/contributors" 1855 | } 1856 | ], 1857 | "description": "Symfony HttpFoundation Component", 1858 | "homepage": "https://symfony.com", 1859 | "time": "2018-10-03T08:48:45+00:00" 1860 | }, 1861 | { 1862 | "name": "symfony/http-kernel", 1863 | "version": "v4.1.6", 1864 | "source": { 1865 | "type": "git", 1866 | "url": "https://github.com/symfony/http-kernel.git", 1867 | "reference": "f5e7c15a5d010be0e16ce798594c5960451d4220" 1868 | }, 1869 | "dist": { 1870 | "type": "zip", 1871 | "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f5e7c15a5d010be0e16ce798594c5960451d4220", 1872 | "reference": "f5e7c15a5d010be0e16ce798594c5960451d4220", 1873 | "shasum": "" 1874 | }, 1875 | "require": { 1876 | "php": "^7.1.3", 1877 | "psr/log": "~1.0", 1878 | "symfony/debug": "~3.4|~4.0", 1879 | "symfony/event-dispatcher": "~4.1", 1880 | "symfony/http-foundation": "^4.1.1", 1881 | "symfony/polyfill-ctype": "~1.8" 1882 | }, 1883 | "conflict": { 1884 | "symfony/config": "<3.4", 1885 | "symfony/dependency-injection": "<4.1", 1886 | "symfony/var-dumper": "<4.1.1", 1887 | "twig/twig": "<1.34|<2.4,>=2" 1888 | }, 1889 | "provide": { 1890 | "psr/log-implementation": "1.0" 1891 | }, 1892 | "require-dev": { 1893 | "psr/cache": "~1.0", 1894 | "symfony/browser-kit": "~3.4|~4.0", 1895 | "symfony/config": "~3.4|~4.0", 1896 | "symfony/console": "~3.4|~4.0", 1897 | "symfony/css-selector": "~3.4|~4.0", 1898 | "symfony/dependency-injection": "^4.1", 1899 | "symfony/dom-crawler": "~3.4|~4.0", 1900 | "symfony/expression-language": "~3.4|~4.0", 1901 | "symfony/finder": "~3.4|~4.0", 1902 | "symfony/process": "~3.4|~4.0", 1903 | "symfony/routing": "~3.4|~4.0", 1904 | "symfony/stopwatch": "~3.4|~4.0", 1905 | "symfony/templating": "~3.4|~4.0", 1906 | "symfony/translation": "~3.4|~4.0", 1907 | "symfony/var-dumper": "^4.1.1" 1908 | }, 1909 | "suggest": { 1910 | "symfony/browser-kit": "", 1911 | "symfony/config": "", 1912 | "symfony/console": "", 1913 | "symfony/dependency-injection": "", 1914 | "symfony/var-dumper": "" 1915 | }, 1916 | "type": "library", 1917 | "extra": { 1918 | "branch-alias": { 1919 | "dev-master": "4.1-dev" 1920 | } 1921 | }, 1922 | "autoload": { 1923 | "psr-4": { 1924 | "Symfony\\Component\\HttpKernel\\": "" 1925 | }, 1926 | "exclude-from-classmap": [ 1927 | "/Tests/" 1928 | ] 1929 | }, 1930 | "notification-url": "https://packagist.org/downloads/", 1931 | "license": [ 1932 | "MIT" 1933 | ], 1934 | "authors": [ 1935 | { 1936 | "name": "Fabien Potencier", 1937 | "email": "fabien@symfony.com" 1938 | }, 1939 | { 1940 | "name": "Symfony Community", 1941 | "homepage": "https://symfony.com/contributors" 1942 | } 1943 | ], 1944 | "description": "Symfony HttpKernel Component", 1945 | "homepage": "https://symfony.com", 1946 | "time": "2018-10-03T12:53:38+00:00" 1947 | }, 1948 | { 1949 | "name": "symfony/polyfill-ctype", 1950 | "version": "v1.9.0", 1951 | "source": { 1952 | "type": "git", 1953 | "url": "https://github.com/symfony/polyfill-ctype.git", 1954 | "reference": "e3d826245268269cd66f8326bd8bc066687b4a19" 1955 | }, 1956 | "dist": { 1957 | "type": "zip", 1958 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19", 1959 | "reference": "e3d826245268269cd66f8326bd8bc066687b4a19", 1960 | "shasum": "" 1961 | }, 1962 | "require": { 1963 | "php": ">=5.3.3" 1964 | }, 1965 | "suggest": { 1966 | "ext-ctype": "For best performance" 1967 | }, 1968 | "type": "library", 1969 | "extra": { 1970 | "branch-alias": { 1971 | "dev-master": "1.9-dev" 1972 | } 1973 | }, 1974 | "autoload": { 1975 | "psr-4": { 1976 | "Symfony\\Polyfill\\Ctype\\": "" 1977 | }, 1978 | "files": [ 1979 | "bootstrap.php" 1980 | ] 1981 | }, 1982 | "notification-url": "https://packagist.org/downloads/", 1983 | "license": [ 1984 | "MIT" 1985 | ], 1986 | "authors": [ 1987 | { 1988 | "name": "Symfony Community", 1989 | "homepage": "https://symfony.com/contributors" 1990 | }, 1991 | { 1992 | "name": "Gert de Pagter", 1993 | "email": "BackEndTea@gmail.com" 1994 | } 1995 | ], 1996 | "description": "Symfony polyfill for ctype functions", 1997 | "homepage": "https://symfony.com", 1998 | "keywords": [ 1999 | "compatibility", 2000 | "ctype", 2001 | "polyfill", 2002 | "portable" 2003 | ], 2004 | "time": "2018-08-06T14:22:27+00:00" 2005 | }, 2006 | { 2007 | "name": "symfony/polyfill-mbstring", 2008 | "version": "v1.9.0", 2009 | "source": { 2010 | "type": "git", 2011 | "url": "https://github.com/symfony/polyfill-mbstring.git", 2012 | "reference": "d0cd638f4634c16d8df4508e847f14e9e43168b8" 2013 | }, 2014 | "dist": { 2015 | "type": "zip", 2016 | "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d0cd638f4634c16d8df4508e847f14e9e43168b8", 2017 | "reference": "d0cd638f4634c16d8df4508e847f14e9e43168b8", 2018 | "shasum": "" 2019 | }, 2020 | "require": { 2021 | "php": ">=5.3.3" 2022 | }, 2023 | "suggest": { 2024 | "ext-mbstring": "For best performance" 2025 | }, 2026 | "type": "library", 2027 | "extra": { 2028 | "branch-alias": { 2029 | "dev-master": "1.9-dev" 2030 | } 2031 | }, 2032 | "autoload": { 2033 | "psr-4": { 2034 | "Symfony\\Polyfill\\Mbstring\\": "" 2035 | }, 2036 | "files": [ 2037 | "bootstrap.php" 2038 | ] 2039 | }, 2040 | "notification-url": "https://packagist.org/downloads/", 2041 | "license": [ 2042 | "MIT" 2043 | ], 2044 | "authors": [ 2045 | { 2046 | "name": "Nicolas Grekas", 2047 | "email": "p@tchwork.com" 2048 | }, 2049 | { 2050 | "name": "Symfony Community", 2051 | "homepage": "https://symfony.com/contributors" 2052 | } 2053 | ], 2054 | "description": "Symfony polyfill for the Mbstring extension", 2055 | "homepage": "https://symfony.com", 2056 | "keywords": [ 2057 | "compatibility", 2058 | "mbstring", 2059 | "polyfill", 2060 | "portable", 2061 | "shim" 2062 | ], 2063 | "time": "2018-08-06T14:22:27+00:00" 2064 | }, 2065 | { 2066 | "name": "symfony/polyfill-php72", 2067 | "version": "v1.9.0", 2068 | "source": { 2069 | "type": "git", 2070 | "url": "https://github.com/symfony/polyfill-php72.git", 2071 | "reference": "95c50420b0baed23852452a7f0c7b527303ed5ae" 2072 | }, 2073 | "dist": { 2074 | "type": "zip", 2075 | "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/95c50420b0baed23852452a7f0c7b527303ed5ae", 2076 | "reference": "95c50420b0baed23852452a7f0c7b527303ed5ae", 2077 | "shasum": "" 2078 | }, 2079 | "require": { 2080 | "php": ">=5.3.3" 2081 | }, 2082 | "type": "library", 2083 | "extra": { 2084 | "branch-alias": { 2085 | "dev-master": "1.9-dev" 2086 | } 2087 | }, 2088 | "autoload": { 2089 | "psr-4": { 2090 | "Symfony\\Polyfill\\Php72\\": "" 2091 | }, 2092 | "files": [ 2093 | "bootstrap.php" 2094 | ] 2095 | }, 2096 | "notification-url": "https://packagist.org/downloads/", 2097 | "license": [ 2098 | "MIT" 2099 | ], 2100 | "authors": [ 2101 | { 2102 | "name": "Nicolas Grekas", 2103 | "email": "p@tchwork.com" 2104 | }, 2105 | { 2106 | "name": "Symfony Community", 2107 | "homepage": "https://symfony.com/contributors" 2108 | } 2109 | ], 2110 | "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", 2111 | "homepage": "https://symfony.com", 2112 | "keywords": [ 2113 | "compatibility", 2114 | "polyfill", 2115 | "portable", 2116 | "shim" 2117 | ], 2118 | "time": "2018-08-06T14:22:27+00:00" 2119 | }, 2120 | { 2121 | "name": "symfony/process", 2122 | "version": "v4.1.6", 2123 | "source": { 2124 | "type": "git", 2125 | "url": "https://github.com/symfony/process.git", 2126 | "reference": "ee33c0322a8fee0855afcc11fff81e6b1011b529" 2127 | }, 2128 | "dist": { 2129 | "type": "zip", 2130 | "url": "https://api.github.com/repos/symfony/process/zipball/ee33c0322a8fee0855afcc11fff81e6b1011b529", 2131 | "reference": "ee33c0322a8fee0855afcc11fff81e6b1011b529", 2132 | "shasum": "" 2133 | }, 2134 | "require": { 2135 | "php": "^7.1.3" 2136 | }, 2137 | "type": "library", 2138 | "extra": { 2139 | "branch-alias": { 2140 | "dev-master": "4.1-dev" 2141 | } 2142 | }, 2143 | "autoload": { 2144 | "psr-4": { 2145 | "Symfony\\Component\\Process\\": "" 2146 | }, 2147 | "exclude-from-classmap": [ 2148 | "/Tests/" 2149 | ] 2150 | }, 2151 | "notification-url": "https://packagist.org/downloads/", 2152 | "license": [ 2153 | "MIT" 2154 | ], 2155 | "authors": [ 2156 | { 2157 | "name": "Fabien Potencier", 2158 | "email": "fabien@symfony.com" 2159 | }, 2160 | { 2161 | "name": "Symfony Community", 2162 | "homepage": "https://symfony.com/contributors" 2163 | } 2164 | ], 2165 | "description": "Symfony Process Component", 2166 | "homepage": "https://symfony.com", 2167 | "time": "2018-10-02T12:40:59+00:00" 2168 | }, 2169 | { 2170 | "name": "symfony/routing", 2171 | "version": "v4.1.6", 2172 | "source": { 2173 | "type": "git", 2174 | "url": "https://github.com/symfony/routing.git", 2175 | "reference": "537803f0bdfede36b9acef052d2e4d447d9fa0e9" 2176 | }, 2177 | "dist": { 2178 | "type": "zip", 2179 | "url": "https://api.github.com/repos/symfony/routing/zipball/537803f0bdfede36b9acef052d2e4d447d9fa0e9", 2180 | "reference": "537803f0bdfede36b9acef052d2e4d447d9fa0e9", 2181 | "shasum": "" 2182 | }, 2183 | "require": { 2184 | "php": "^7.1.3" 2185 | }, 2186 | "conflict": { 2187 | "symfony/config": "<3.4", 2188 | "symfony/dependency-injection": "<3.4", 2189 | "symfony/yaml": "<3.4" 2190 | }, 2191 | "require-dev": { 2192 | "doctrine/annotations": "~1.0", 2193 | "psr/log": "~1.0", 2194 | "symfony/config": "~3.4|~4.0", 2195 | "symfony/dependency-injection": "~3.4|~4.0", 2196 | "symfony/expression-language": "~3.4|~4.0", 2197 | "symfony/http-foundation": "~3.4|~4.0", 2198 | "symfony/yaml": "~3.4|~4.0" 2199 | }, 2200 | "suggest": { 2201 | "doctrine/annotations": "For using the annotation loader", 2202 | "symfony/config": "For using the all-in-one router or any loader", 2203 | "symfony/dependency-injection": "For loading routes from a service", 2204 | "symfony/expression-language": "For using expression matching", 2205 | "symfony/http-foundation": "For using a Symfony Request object", 2206 | "symfony/yaml": "For using the YAML loader" 2207 | }, 2208 | "type": "library", 2209 | "extra": { 2210 | "branch-alias": { 2211 | "dev-master": "4.1-dev" 2212 | } 2213 | }, 2214 | "autoload": { 2215 | "psr-4": { 2216 | "Symfony\\Component\\Routing\\": "" 2217 | }, 2218 | "exclude-from-classmap": [ 2219 | "/Tests/" 2220 | ] 2221 | }, 2222 | "notification-url": "https://packagist.org/downloads/", 2223 | "license": [ 2224 | "MIT" 2225 | ], 2226 | "authors": [ 2227 | { 2228 | "name": "Fabien Potencier", 2229 | "email": "fabien@symfony.com" 2230 | }, 2231 | { 2232 | "name": "Symfony Community", 2233 | "homepage": "https://symfony.com/contributors" 2234 | } 2235 | ], 2236 | "description": "Symfony Routing Component", 2237 | "homepage": "https://symfony.com", 2238 | "keywords": [ 2239 | "router", 2240 | "routing", 2241 | "uri", 2242 | "url" 2243 | ], 2244 | "time": "2018-10-02T12:40:59+00:00" 2245 | }, 2246 | { 2247 | "name": "symfony/translation", 2248 | "version": "v4.1.6", 2249 | "source": { 2250 | "type": "git", 2251 | "url": "https://github.com/symfony/translation.git", 2252 | "reference": "9f0b61e339160a466ebcde167a6c5521c810e304" 2253 | }, 2254 | "dist": { 2255 | "type": "zip", 2256 | "url": "https://api.github.com/repos/symfony/translation/zipball/9f0b61e339160a466ebcde167a6c5521c810e304", 2257 | "reference": "9f0b61e339160a466ebcde167a6c5521c810e304", 2258 | "shasum": "" 2259 | }, 2260 | "require": { 2261 | "php": "^7.1.3", 2262 | "symfony/polyfill-mbstring": "~1.0" 2263 | }, 2264 | "conflict": { 2265 | "symfony/config": "<3.4", 2266 | "symfony/dependency-injection": "<3.4", 2267 | "symfony/yaml": "<3.4" 2268 | }, 2269 | "require-dev": { 2270 | "psr/log": "~1.0", 2271 | "symfony/config": "~3.4|~4.0", 2272 | "symfony/console": "~3.4|~4.0", 2273 | "symfony/dependency-injection": "~3.4|~4.0", 2274 | "symfony/finder": "~2.8|~3.0|~4.0", 2275 | "symfony/intl": "~3.4|~4.0", 2276 | "symfony/yaml": "~3.4|~4.0" 2277 | }, 2278 | "suggest": { 2279 | "psr/log-implementation": "To use logging capability in translator", 2280 | "symfony/config": "", 2281 | "symfony/yaml": "" 2282 | }, 2283 | "type": "library", 2284 | "extra": { 2285 | "branch-alias": { 2286 | "dev-master": "4.1-dev" 2287 | } 2288 | }, 2289 | "autoload": { 2290 | "psr-4": { 2291 | "Symfony\\Component\\Translation\\": "" 2292 | }, 2293 | "exclude-from-classmap": [ 2294 | "/Tests/" 2295 | ] 2296 | }, 2297 | "notification-url": "https://packagist.org/downloads/", 2298 | "license": [ 2299 | "MIT" 2300 | ], 2301 | "authors": [ 2302 | { 2303 | "name": "Fabien Potencier", 2304 | "email": "fabien@symfony.com" 2305 | }, 2306 | { 2307 | "name": "Symfony Community", 2308 | "homepage": "https://symfony.com/contributors" 2309 | } 2310 | ], 2311 | "description": "Symfony Translation Component", 2312 | "homepage": "https://symfony.com", 2313 | "time": "2018-10-02T16:36:10+00:00" 2314 | }, 2315 | { 2316 | "name": "symfony/var-dumper", 2317 | "version": "v4.1.6", 2318 | "source": { 2319 | "type": "git", 2320 | "url": "https://github.com/symfony/var-dumper.git", 2321 | "reference": "60319b45653580b0cdacca499344577d87732f16" 2322 | }, 2323 | "dist": { 2324 | "type": "zip", 2325 | "url": "https://api.github.com/repos/symfony/var-dumper/zipball/60319b45653580b0cdacca499344577d87732f16", 2326 | "reference": "60319b45653580b0cdacca499344577d87732f16", 2327 | "shasum": "" 2328 | }, 2329 | "require": { 2330 | "php": "^7.1.3", 2331 | "symfony/polyfill-mbstring": "~1.0", 2332 | "symfony/polyfill-php72": "~1.5" 2333 | }, 2334 | "conflict": { 2335 | "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", 2336 | "symfony/console": "<3.4" 2337 | }, 2338 | "require-dev": { 2339 | "ext-iconv": "*", 2340 | "symfony/process": "~3.4|~4.0", 2341 | "twig/twig": "~1.34|~2.4" 2342 | }, 2343 | "suggest": { 2344 | "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", 2345 | "ext-intl": "To show region name in time zone dump", 2346 | "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" 2347 | }, 2348 | "bin": [ 2349 | "Resources/bin/var-dump-server" 2350 | ], 2351 | "type": "library", 2352 | "extra": { 2353 | "branch-alias": { 2354 | "dev-master": "4.1-dev" 2355 | } 2356 | }, 2357 | "autoload": { 2358 | "files": [ 2359 | "Resources/functions/dump.php" 2360 | ], 2361 | "psr-4": { 2362 | "Symfony\\Component\\VarDumper\\": "" 2363 | }, 2364 | "exclude-from-classmap": [ 2365 | "/Tests/" 2366 | ] 2367 | }, 2368 | "notification-url": "https://packagist.org/downloads/", 2369 | "license": [ 2370 | "MIT" 2371 | ], 2372 | "authors": [ 2373 | { 2374 | "name": "Nicolas Grekas", 2375 | "email": "p@tchwork.com" 2376 | }, 2377 | { 2378 | "name": "Symfony Community", 2379 | "homepage": "https://symfony.com/contributors" 2380 | } 2381 | ], 2382 | "description": "Symfony mechanism for exploring and dumping PHP variables", 2383 | "homepage": "https://symfony.com", 2384 | "keywords": [ 2385 | "debug", 2386 | "dump" 2387 | ], 2388 | "time": "2018-10-02T16:36:10+00:00" 2389 | }, 2390 | { 2391 | "name": "tijsverkoyen/css-to-inline-styles", 2392 | "version": "2.2.1", 2393 | "source": { 2394 | "type": "git", 2395 | "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", 2396 | "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757" 2397 | }, 2398 | "dist": { 2399 | "type": "zip", 2400 | "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", 2401 | "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", 2402 | "shasum": "" 2403 | }, 2404 | "require": { 2405 | "php": "^5.5 || ^7.0", 2406 | "symfony/css-selector": "^2.7 || ^3.0 || ^4.0" 2407 | }, 2408 | "require-dev": { 2409 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" 2410 | }, 2411 | "type": "library", 2412 | "extra": { 2413 | "branch-alias": { 2414 | "dev-master": "2.2.x-dev" 2415 | } 2416 | }, 2417 | "autoload": { 2418 | "psr-4": { 2419 | "TijsVerkoyen\\CssToInlineStyles\\": "src" 2420 | } 2421 | }, 2422 | "notification-url": "https://packagist.org/downloads/", 2423 | "license": [ 2424 | "BSD-3-Clause" 2425 | ], 2426 | "authors": [ 2427 | { 2428 | "name": "Tijs Verkoyen", 2429 | "email": "css_to_inline_styles@verkoyen.eu", 2430 | "role": "Developer" 2431 | } 2432 | ], 2433 | "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", 2434 | "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", 2435 | "time": "2017-11-27T11:13:29+00:00" 2436 | }, 2437 | { 2438 | "name": "vlucas/phpdotenv", 2439 | "version": "v2.5.1", 2440 | "source": { 2441 | "type": "git", 2442 | "url": "https://github.com/vlucas/phpdotenv.git", 2443 | "reference": "8abb4f9aa89ddea9d52112c65bbe8d0125e2fa8e" 2444 | }, 2445 | "dist": { 2446 | "type": "zip", 2447 | "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/8abb4f9aa89ddea9d52112c65bbe8d0125e2fa8e", 2448 | "reference": "8abb4f9aa89ddea9d52112c65bbe8d0125e2fa8e", 2449 | "shasum": "" 2450 | }, 2451 | "require": { 2452 | "php": ">=5.3.9" 2453 | }, 2454 | "require-dev": { 2455 | "phpunit/phpunit": "^4.8.35 || ^5.0" 2456 | }, 2457 | "type": "library", 2458 | "extra": { 2459 | "branch-alias": { 2460 | "dev-master": "2.5-dev" 2461 | } 2462 | }, 2463 | "autoload": { 2464 | "psr-4": { 2465 | "Dotenv\\": "src/" 2466 | } 2467 | }, 2468 | "notification-url": "https://packagist.org/downloads/", 2469 | "license": [ 2470 | "BSD-3-Clause" 2471 | ], 2472 | "authors": [ 2473 | { 2474 | "name": "Vance Lucas", 2475 | "email": "vance@vancelucas.com", 2476 | "homepage": "http://www.vancelucas.com" 2477 | } 2478 | ], 2479 | "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", 2480 | "keywords": [ 2481 | "dotenv", 2482 | "env", 2483 | "environment" 2484 | ], 2485 | "time": "2018-07-29T20:33:41+00:00" 2486 | } 2487 | ], 2488 | "packages-dev": [], 2489 | "aliases": [], 2490 | "minimum-stability": "dev", 2491 | "stability-flags": [], 2492 | "prefer-stable": true, 2493 | "prefer-lowest": false, 2494 | "platform": { 2495 | "php": ">=5.6.4" 2496 | }, 2497 | "platform-dev": [] 2498 | } 2499 | -------------------------------------------------------------------------------- /src/Postgis.php: -------------------------------------------------------------------------------- 1 | getQuery(); 21 | 22 | if ($classQuery && !$classQuery->columns) { 23 | $query->select([$classQuery->from . '.*']); 24 | } 25 | 26 | if ($location) { 27 | if ($location instanceof Point) { 28 | $longitude = $location->getLng(); 29 | $latitude = $location->getLat(); 30 | } else { 31 | list($longitude, $latitude) = explode(",", $location); 32 | } 33 | 34 | $division = $this->getDivisionFactor(); 35 | 36 | $q = "ST_Distance({$this->getLocationColumn()},ST_Point({$longitude},{$latitude}))/{$division}"; 37 | } else { 38 | $q = "0"; 39 | } 40 | 41 | return $query->selectSub($q, 'distance'); 42 | } 43 | 44 | /** 45 | * @param Builder $query 46 | * @param Point $location 47 | * @param float $operator 48 | * @param float $units 49 | * @return Builder 50 | */ 51 | public function scopeWhereDistance(Builder $query, $location, $operator, $units) 52 | { 53 | $classQuery = $query->getQuery(); 54 | 55 | if ($classQuery && !$classQuery->columns) { 56 | $query->select([$classQuery->from . '.*']); 57 | } 58 | 59 | if ($location) { 60 | if ($location instanceof Point) { 61 | $longitude = $location->getLng(); 62 | $latitude = $location->getLat(); 63 | } else { 64 | list($latitude, $longitude) = $location; 65 | } 66 | 67 | $q = "ST_Distance({$this->getLocationColumn()},ST_Point({$longitude},{$latitude}))"; 68 | } else { 69 | $q = "0"; 70 | } 71 | 72 | return $query->whereRaw("$q {$operator} {$units}"); 73 | } 74 | 75 | private function getLocationColumn() 76 | { 77 | $column = 'location'; 78 | 79 | if (property_exists($this, 'location') && $this->location) { 80 | $column = $this->location; 81 | } 82 | 83 | return $this->getTable() . '.' . $column; 84 | } 85 | 86 | private function getDivisionFactor() 87 | { 88 | $division = 1; 89 | 90 | if (property_exists($this, 'unit') && $this->unit == "mile") { 91 | $division = 0.000621371; 92 | } elseif (property_exists($this, 'unit') && $this->unit == "km") { 93 | $division = 1000; 94 | } 95 | 96 | return $division; 97 | } 98 | } 99 | --------------------------------------------------------------------------------