Skip to content

Commit 4f40f7c

Browse files
authored
Merge pull request #87 from alkemyTech/release_v1.1.0
Release v1.1.0
2 parents 2c547ef + 5d2dadb commit 4f40f7c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+2037
-169
lines changed

.env.example

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@ DB_USER=root
33
DB_PASSWORD=
44
DB_PORT=3306
55
SECRETORPRIVATEKEY=
6-
AUTH_ROUNDS=
6+
AUTH_ROUNDS=
7+
AWS_ACCESS_KEY_ID=
8+
AWS_SECRET_ACCESS_KEY=

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
node_modules
22
.env
3+
docker_schemas
34
docker-compose.yaml
5+
docker_schemas
6+
files

app.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@ const express = require('express');
33
const path = require('path');
44
const cookieParser = require('cookie-parser');
55
const logger = require('morgan');
6-
const cors = require('cors')
7-
require('dotenv').config()
6+
const cors = require('cors');
7+
require('dotenv').config();
88

99
const indexRouter = require('./routes/index');
1010
const usersRouter = require('./routes/users');
11+
const authRouter = require('./routes/authentication');
1112

1213
const app = express();
13-
app.use(cors())
14+
app.use(cors());
1415

1516
// view engine setup
1617
app.set('views', path.join(__dirname, 'views'));
@@ -24,14 +25,15 @@ app.use(express.static(path.join(__dirname, 'public')));
2425

2526
app.use('/', indexRouter);
2627
app.use('/users', usersRouter);
28+
app.use('/auth', authRouter);
2729

2830
// catch 404 and forward to error handler
29-
app.use(function(req, res, next) {
31+
app.use(function (req, res, next) {
3032
next(createError(404));
3133
});
3234

3335
// error handler
34-
app.use(function(err, req, res, next) {
36+
app.use(function (err, req, res, next) {
3537
// set locals, only providing error in development
3638
res.locals.message = err.message;
3739
res.locals.error = req.app.get('env') === 'development' ? err : {};

assets/email/plantilla_email.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@
298298
<div
299299
style="font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:11px;line-height:1.5;text-align:left;color:#000000;">
300300
<p style="text-align: center;"><span
301-
style="font-size: 24px;"><strong>{{organizationName }}/strong></span></p>
301+
style="font-size: 24px;"><strong>{{organizationName}}</strong></span></p>
302302
<p style="text-align: center;">&nbsp;</p>
303303
<p style="text-align: center;"><span style="font-size: 16px;">{{welcomeText}}</span></p>
304304
</div>

config/aws-sdk.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
const AWS = require('aws-sdk');
2+
require('dotenv').config();
3+
const { AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY } = process.env;
4+
5+
AWS.config.update({
6+
accessKeyId: AWS_ACCESS_KEY_ID,
7+
secretAccessKey: AWS_SECRET_ACCESS_KEY,
8+
region: 'us-east-1',
9+
apiVersion: '2006-03-01',
10+
signatureVersion: 'v4',
11+
});
12+
13+
const s3Bucket = new AWS.S3({
14+
params: { Bucket: 'cohorte-septiembre-5efe33c6' },
15+
});
16+
17+
module.exports = s3Bucket;
18+
19+
Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,40 @@
1-
class ActivitiesController{}
1+
const { Activities } = require('../models');
22

3-
module.exports = ActivitiesController;
3+
class ActivitiesController {
4+
static async createActivities(req, res) {
5+
const { name, content, image } = req.body;
6+
7+
try {
8+
const createActivity = await Activities.create({
9+
name,
10+
content,
11+
image,
12+
});
13+
14+
return res.status(201).json({
15+
msg: 'activity created successfully',
16+
activity: createActivity,
17+
});
18+
} catch (error) {
19+
res.status(400).json(error);
20+
}
21+
}
22+
23+
static async updateActivities(req, res) {
24+
const { id } = req.params;
25+
const {name, content, image } = req.body;
26+
let updateActivities;
27+
try {
28+
[updateActivities] = await Activities.update(
29+
{name, content, image},
30+
{where:{id}}
31+
)
32+
} catch (error) {
33+
return res.status(400).json(error);
34+
}
35+
if(updateActivities) return res.status(200).json({activities:{name,content,image}})
36+
return res.status(404).json({ msg: 'could not find Activitie' });
37+
}
38+
}
39+
40+
module.exports = ActivitiesController;

controllers/authentication.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
const db = require('../models');
2+
const bcrypt = require('bcrypt');
3+
const AuthDao = require('../dao/authentication');
4+
5+
class AuthController {
6+
static async loginUser(req, res) {
7+
const { email, password } = req.body;
8+
try {
9+
const where = { email: email };
10+
const attributes = ['email', 'password'];
11+
12+
const userData = await AuthDao.findUser(where, attributes);
13+
14+
if (!userData || !bcrypt.compareSync(password, userData.password)) {
15+
throw { ok: false };
16+
}
17+
18+
res.status(200).json(userData);
19+
} catch (error) {
20+
res.status(400).json(error);
21+
}
22+
}
23+
}
24+
25+
module.exports = AuthController;

controllers/categories.js

Lines changed: 59 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,60 @@
1-
class CategoriesController {}
1+
const { Category } = require('../models');
2+
const CategoryDao = require('../dao/categorie');
23

3-
module.exports = CategoriesController;
4+
class CategoriesController {
5+
static async post(req, res, next) {
6+
try {
7+
const { name, description, image } = req.body;
8+
const category = await Category.create({
9+
name,
10+
description,
11+
image,
12+
});
13+
category
14+
? res.status(200).json({ msg: 'Category created successfully' })
15+
: res.status(404).json({ msg: 'Error. Category not created.' });
16+
} catch (error) {
17+
next(error);
18+
}
19+
}
20+
static async deleteCategory(req, res) {
21+
const { id } = req.params;
22+
try {
23+
const where = { id };
24+
const categoryDeleted = await CategoryDao.deleteCategory(where);
25+
26+
if (categoryDeleted) {
27+
res.status(200).json({ msg: 'Category deleted successfully' });
28+
} else {
29+
res.status(404).json({ msg: 'Could not find category' });
30+
}
31+
} catch (error) {
32+
res.status(400).json(error);
33+
}
34+
}
35+
static async getAll(req, res) {
36+
try {
37+
const categories = await CategoryDao.filteringCategoryResultsByField("name")
38+
const format= categories.map(category=>category.name)
39+
return res.status(200).json(format)
40+
} catch (error) {
41+
return res.status(500).send(error)
42+
}
43+
}
44+
static async updateCategory(req, res) {
45+
const { id } = req.params;
46+
const { name, description, image } = req.body;
47+
try {
48+
const categoryUpdated = await Category.findByPk(id);
49+
categoryUpdated &&
50+
(await categoryUpdated.update({ name, description, image }));
51+
categoryUpdated
52+
? res.status(200).json({ msg: 'Category updated successfully' })
53+
: res.status(404).json({ msg: 'Could not find category' });
54+
} catch (error) {
55+
res.status(400).json(error);
56+
}
57+
}
58+
}
59+
60+
module.exports = CategoriesController;

controllers/contacts.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
const ContactDao = require("../dao/contact")
2+
class ContactController {
3+
static async createContact(req, res) {
4+
try {
5+
const { name, email, phone, message } = req.body
6+
const contactData = await ContactDao.createContact({ name, email, phone: phone ?? null, message: message ?? null })
7+
return res.status(201).json(contactData)
8+
} catch (error) {
9+
return res.status(500).json(error)
10+
}
11+
12+
}
13+
}
14+
15+
module.exports = ContactController

controllers/news.js

Lines changed: 59 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,60 @@
1-
class News {};
1+
const { New } = require('../models');
2+
const NewDao = require('../dao/new');
3+
class News {
4+
static async DetailNew(req, res) {
5+
try {
6+
const { id } = req.params;
7+
const newData = await NewDao.findNewById(+id);
8+
if (!newData) return res.status(404).send("New wasn't found");
9+
return res.status(200).json(newData);
10+
} catch (error) {
11+
return res.status(500).send(error.message);
12+
}
13+
}
214

3-
module.exports = News;
15+
static async putNew(req, res) {
16+
const { id } = req.params;
17+
const { name, content, image, CategoryId } = req.body;
18+
19+
try {
20+
await NewDao.updateNew(name, image, content, CategoryId, id);
21+
22+
const response = await NewDao.findNewById(id);
23+
24+
if (!response) return res.status(404).json({ msg: 'New does not exist' });
25+
26+
return res.status(201).json(response);
27+
} catch (error) {
28+
return res.status(500).json(error.message);
29+
}
30+
}
31+
32+
static async deleteNew(req, res) {
33+
const { id } = req.params;
34+
35+
try {
36+
const newToDelete = await New.findByPk(id, {
37+
attributes: ['id'],
38+
});
39+
40+
if (!newToDelete) {
41+
return res.json({
42+
msg: 'new not found',
43+
});
44+
}
45+
46+
await newToDelete.destroy();
47+
48+
return res.json({
49+
msg: `New with ${newToDelete.id} has been deleted succesfully`,
50+
});
51+
} catch (error) {
52+
return res.status(500).json({
53+
error,
54+
msg: 'error in db',
55+
});
56+
}
57+
}
58+
}
59+
60+
module.exports = News;

0 commit comments

Comments
 (0)