From 6c0ae834de472226001ea38ce224cde1fed197e1 Mon Sep 17 00:00:00 2001 From: BryanHeYang <59769290+BryanHeYang@users.noreply.github.com> Date: Sun, 2 Feb 2020 06:19:15 -0500 Subject: [PATCH] GOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO --- backend/index.js | 36 ++++++++++-------------------------- mclet/src/subletForm.js | 27 ++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 27 deletions(-) diff --git a/backend/index.js b/backend/index.js index 679a403..88d2af7 100644 --- a/backend/index.js +++ b/backend/index.js @@ -3,8 +3,6 @@ const express = require('express') const bodyParser = require('body-parser') const app = express() const Listing = require('./models/listing') -const axios = require('axios') -const req = require('request'); app.use(express.static('build')) @@ -44,33 +42,19 @@ app.delete('/api/listings/:id', (req, res, next) => { }) -setTimeout(app.post('/api/listings', (request, response) => { +app.post('/api/listings', (request, response) => { const body = request.body - - const key = process.env.REACT_APP_GEOCODE_KEY - const address = body.window.address.split("+") + ",+Montreal,+QC" - req(`https://maps.googleapis.com/maps/api/geocode/json?address=${address}}&key=${key}`, { json: true }, (err, res, coords) => { - if (err) { return console.log(err); } - - const nlat = toString(coords["geometry"].location.lat) - const nlng = toString(coords["geometry"].location.lng) - const listing = new Listing({ - posn: { lat:nlat, - lng: nlng, - }, - window: body.window, - posting: body.posting, - }) - listing.save().then(savedListing => { - response.json(savedListing.toJSON()) - }) - console.log(coords.url); - console.log(coords.explanation); - }); + const listing = new Listing({ + posn: body.posn, + window: body.window, + posting: body.posting, + }) - -}), 10000); + listing.save().then(savedListing => { + response.json(savedListing.toJSON()) + }) +}) const PORT = 3001 app.listen(PORT, () => { diff --git a/mclet/src/subletForm.js b/mclet/src/subletForm.js index 6d32981..6ed0d1e 100644 --- a/mclet/src/subletForm.js +++ b/mclet/src/subletForm.js @@ -1,5 +1,28 @@ import React from 'react'; - +const getCoords = async (addy) => { + const key = process.env.REACT_APP_GEOCODE_KEY + const address = addy.split("+") + ",+Montreal,+QC" + try{ + const response = await fetch(`https://maps.googleapis.com/maps/api/geocode/json?address=${address}}&key=${key}`); + if(response.ok){ + const coords = await response.json(); + const nlat = toString(coords["geometry"].location.lat) + const nlng = toString(coords["geometry"].location.lng) + //const parsedData = JSON.parse(jsonResponse); + + + return { + lat : nlat, + lng : nlng + }; + + } + throw new Error("Request failed!"); + } + catch(error){ + console.log(error); + } +} const sendData = async (data) => { console.log(data); try { @@ -46,7 +69,9 @@ export class SubletForm extends React.Component{ } handleClick(){ + let newObject = { + posn: getCoords(this.state.addy), window: { address: this.state.addy, nRooms: this.state.nRooms