diff --git a/app/controllers/gardenSizes.js b/app/controllers/gardenSizes.js new file mode 100644 index 0000000..d7477f9 --- /dev/null +++ b/app/controllers/gardenSizes.js @@ -0,0 +1,30 @@ +const { currentRERequest } = require('../helpers/url'); + +const gardenSizes = [ + { name: "do 100 m2", id: "100m2" }, + { name: "do 500 m2", id: "500m2" }, + { name: "do 1 dunum", id: "1000m2" }, + { name: "do 2 dunuma", id: "2000m2" }, + { name: "do 3 dunuma", id: "3000m2" }, + { name: "preko 3 dunuma", id: "moreThan3000m2" } +]; + +const getGardenSize = (req,res) => { + const nextStep = req.query.nextStep; + res.render('gardenSize', { + nextStep, + gardenSizes + }); +}; + +const postGardenSize = async (req, res) => { + const request = await currentRERequest(req); + request.gardenSize = req.body.gardensize; + await request.save(); + res.send("Result is " + JSON.stringify(request)); +}; + +module.exports = { + getGardenSize, + postGardenSize +}; diff --git a/app/controllers/sizes.js b/app/controllers/sizes.js index 812c887..66a47bd 100644 --- a/app/controllers/sizes.js +++ b/app/controllers/sizes.js @@ -19,9 +19,10 @@ const getSize = (req,res) => { const postSize = async (req, res) => { const request = await currentRERequest(req); + const nextStep = req.query.nextStep || `/okucnica/${request.uniqueId}`; request.size = req.body.size; await request.save(); - res.send("Result is " + JSON.stringify(request)); + res.redirect(nextStep); }; module.exports = { diff --git a/app/migrations/20190517090015-add-gardenSize-to-real-estate-request.js b/app/migrations/20190517090015-add-gardenSize-to-real-estate-request.js new file mode 100644 index 0000000..e65f9d5 --- /dev/null +++ b/app/migrations/20190517090015-add-gardenSize-to-real-estate-request.js @@ -0,0 +1,21 @@ +'use strict'; + +module.exports = { + up: (queryInterface, Sequelize) => { + return queryInterface.addColumn( + 'RealEstateRequests', + 'gardenSize', + { + type: Sequelize.ENUM, + values: ['100m2', '500m2', '1000m2', '2000m2', '3000m2', 'moreThan3000m2'] + } + ); + }, + + down: (queryInterface, Sequelize) => { + return queryInterface.removeColumn( + 'RealEstateRequests', + 'gardenSize' + ); + } +}; diff --git a/app/models/realestaterequest.js b/app/models/realestaterequest.js index 2b1b584..0ecf69f 100644 --- a/app/models/realestaterequest.js +++ b/app/models/realestaterequest.js @@ -16,6 +16,10 @@ module.exports = (sequelize, DataTypes) => { size: { type: DataTypes.ENUM, values: ['50m2', '70m2', '100m2', '150m2', '200m2', 'moreThan200m2'] + }, + gardenSize: { + type: DataTypes.ENUM, + values: ['100m2', '500m2', '1000m2', '2000m2', '3000m2', 'moreThan3000m2'] } }, {}); RealEstateRequest.associate = function(models) { diff --git a/app/views/gardenSize.ejs b/app/views/gardenSize.ejs new file mode 100644 index 0000000..7404bd2 --- /dev/null +++ b/app/views/gardenSize.ejs @@ -0,0 +1,32 @@ + +