jcadima
8/29/2018 - 6:46 PM

Geocode


https://www.geocod.io/docs/?php#introduction

https://github.com/Geocodio/geocodio-php

1)  composer require stanley/geocodio-php:~1.0
in .env:
GEOCODIO_KEY=51f4b66166da0866baa5087b81f6f8d51d6f660

2) open config/app.php

in providers array:
 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider',

in aliases array:
'Geocodio' => 'Stanley\Geocodio\Geocodio'


3) in Controller top use:
<?php
use Geocodio; 


/*===============================================
    GET LATITUDE / LONGITUDE
==============================================*/  
    public function getLatitudeLongitude( $location ) {
        $fields = [];
        $key = env('GEOCODIO_KEY') ;
        $data = Geocodio::get( $location, $fields, $key);
        return $data;
    }


/*===============================================
    STORE NEW PROPERTY
===============================================*/
    public function store( Request $request ) {

        $loc = $this->getLatitudeLongitude( $request->location ) ;

        $property = Property::create([
            'location'         => $request->location,
            'latitude'         => $loc->response->results[0]->location->lat,
            'longitude'        => $loc->response->results[0]->location->lng,
        ]);

        if( $request->hasFile('image') ) 
            $this->StoreFile( $request->file('image'), $member, '/properties', 'image' ) ;              

        Session::flash('success', 'Property created succesfully.');
        return redirect()->route('property.index');  

    }