diff --git a/README.md b/README.md index b35ce40..0c19539 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,15 @@ The purpose of this project is to build a web application that enables subscribing to notifications when new products are published on various ad based marketplaces. The MVP will be only based on OLX.ba +Create postgres docker image +docker build -t marketalerts . + Run postgres image with: docker run --name pg_test -d -p 5432:5432 marketalerts -Run with: +Run migrations in app folder +npx sequelize db:migrate + +Run app with: +$ npm install $ npm start diff --git a/app/controllers/grad.js b/app/controllers/city.js similarity index 68% rename from app/controllers/grad.js rename to app/controllers/city.js index b3f6294..0be41f4 100644 --- a/app/controllers/grad.js +++ b/app/controllers/city.js @@ -2,26 +2,26 @@ const db = require('../models/index'); const { currentRERequest } = require('../helpers/url'); const { regions } = require('../helpers/codes'); -const gradovi = regions(); +const cities = regions(); -const getGrad = (req,res) => { +const getCity = (req,res) => { const nextStep = req.query.nextStep || '/'; - res.render('grad', { + res.render('city', { nextStep, - gradovi + cities }); } -const postGrad = async (req, res) => { +const postCity = async (req, res) => { const request = await currentRERequest(req); const nextStep = req.query.nextStep || `/mjesto/${request.uniqueId}`; - request.city = req.body.grad; + request.city = req.body.city; await request.save(); res.redirect(nextStep) } module.exports = { - getGrad, - postGrad + getCity, + postCity }; diff --git a/app/controllers/dobrodosli.js b/app/controllers/dobrodosli.js deleted file mode 100644 index 499fa72..0000000 --- a/app/controllers/dobrodosli.js +++ /dev/null @@ -1,7 +0,0 @@ -const getDobrodosli = (req,res) => { - res.render('dobrodosli', { nextStep: '/vrstanekretnine' } ); -} - -module.exports = { - getDobrodosli -}; diff --git a/app/controllers/mjesto.js b/app/controllers/neighborhoods.js similarity index 59% rename from app/controllers/mjesto.js rename to app/controllers/neighborhoods.js index e281fb4..031a120 100644 --- a/app/controllers/mjesto.js +++ b/app/controllers/neighborhoods.js @@ -2,25 +2,24 @@ const db = require('../models/index'); const { currentRERequest } = require('../helpers/url'); const { places } = require('../helpers/codes'); -const getMjesto = async (req,res) => { +const getNeighborhood = async (req,res) => { let request = await currentRERequest(req); - const mjesta = places(request.city); + const neighborhoods = places(request.city); const nextStep = req.query.nextStep || '/'; - res.render('mjesto', { + res.render('neighborhood', { nextStep, - mjesta + neighborhoods }); } -const postMjesto = async (req, res) => { +const postgNeighborhood = async (req, res) => { let request = await currentRERequest(req); - request.place = req.body.mjesto; - console.log("AAA ", req.body); + request.neighborhood = req.body.neighborhood; await request.save(); res.send("Result is " + JSON.stringify(request)); } module.exports = { - getMjesto, - postMjesto + getNeighborhood, + postgNeighborhood }; diff --git a/app/controllers/vrsta_nekretnine.js b/app/controllers/real_estate_types.js similarity index 62% rename from app/controllers/vrsta_nekretnine.js rename to app/controllers/real_estate_types.js index 1bc6ab8..40f5d6e 100644 --- a/app/controllers/vrsta_nekretnine.js +++ b/app/controllers/real_estate_types.js @@ -1,25 +1,24 @@ const db = require('../models/index'); -const vrsteNekretnina = [ +const realEstateTypes = [ { ime: "Kuća", id: "kuca" }, { ime: "Stan", id: "stan" }, { ime: "Vikendica", id: "vikendica" } ]; -const getVrstaNekretnine = (req,res) => { +const getRealEstateTypes = (req,res) => { const nextStep = req.query.nextStep; - res.render('vrsta_nekretnine', { + res.render('real_estate_type', { nextStep, - vrste: vrsteNekretnina + realEstateTypes: realEstateTypes }); } -const postVrstaNekretnine = (req, res) => { +const postRealEstateTypes = (req, res) => { let nextStep = req.query.nextStep; - db.RealEstateRequest.create({ - realEstateType: req.body.vrsta + realEstateType: req.body.realestatetype }).then( (result) => { nextStep = nextStep || `/grad/${result.uniqueId}`; res.redirect(nextStep); @@ -30,6 +29,6 @@ const postVrstaNekretnine = (req, res) => { } module.exports = { - getVrstaNekretnine, - postVrstaNekretnine + getRealEstateTypes, + postRealEstateTypes }; diff --git a/app/controllers/welcome.js b/app/controllers/welcome.js new file mode 100644 index 0000000..0c638ad --- /dev/null +++ b/app/controllers/welcome.js @@ -0,0 +1,7 @@ +const getWelcome = (req,res) => { + res.render('welcome', { nextStep: '/vrstanekretnine' } ); +} + +module.exports = { + getWelcome +}; diff --git a/app/helpers/url.js b/app/helpers/url.js index 7cde84a..9c685dd 100644 --- a/app/helpers/url.js +++ b/app/helpers/url.js @@ -5,7 +5,6 @@ const currentRERequest = async (req) => { if(!uniqueId) return null; const request = await db.RealEstateRequest.findOne({ where: {uniqueId} }); - console.log("Request ", request); return request; } diff --git a/app/public/main.css b/app/public/main.css index 2278871..5653fe5 100644 --- a/app/public/main.css +++ b/app/public/main.css @@ -1,8 +1,8 @@ -.dobrodosli-center-button { +.welcome-center-button { width: 100%; } -.dobrodosli-big-logo { +.welcome-big-logo { font-size: 200pt; background-image: url(./images/logo.png); background-size: contain; diff --git a/app/views/city.ejs b/app/views/city.ejs new file mode 100644 index 0000000..65fe696 --- /dev/null +++ b/app/views/city.ejs @@ -0,0 +1,31 @@ +