Signed-off-by: Arthur DANJOU <arthurdanjou@outlook.fr>
This commit is contained in:
2021-07-01 16:13:22 +02:00
parent 084f2c2419
commit 404d193b46
20 changed files with 154 additions and 116 deletions

View File

@@ -7,24 +7,29 @@ export default class AuthController {
public async login ({ request, auth, response }: HttpContextContract) {
const email = request.input('email')
const password = request.input('password')
const infinity = request.input('infinity', false)
const token = await auth.attempt(email, password, {
expiresIn: '2 days'
expiresIn: infinity ? '' : '2 days'
})
return response.status(200).send({
token: token.toJSON()
})
return response.status(200).send(token.toJSON())
}
public async createInfiniteToken ({ request, auth, response }: HttpContextContract) {
const email = request.input('email')
const password = request.input('password')
const token = await auth.attempt(email, password)
return response.status(200).send(token.toJSON())
return response.status(200).send({
token: token.toJSON()
})
}
public async logout ({ auth, response }: HttpContextContract) {
await auth.logout()
return response.status(200).send({
message: 'You have been disconnected'
message: 'You have been disconnected!'
})
}
@@ -43,13 +48,13 @@ export default class AuthController {
if (twitter.accessDenied()) {
return response.status(403).send({
message: 'Access Denied'
message: 'Access Denied!'
})
}
if (twitter.stateMisMatch()) {
return response.status(405).send({
message: 'Request expired. Retry again'
message: 'Request expired. Retry again!'
})
}
@@ -72,13 +77,13 @@ export default class AuthController {
if (github.accessDenied()) {
return response.status(403).send({
message: 'Access Denied'
message: 'Access Denied!'
})
}
if (github.stateMisMatch()) {
return response.status(405).send({
message: 'Request expired. Retry again'
message: 'Request expired. Retry again!'
})
}
@@ -101,13 +106,13 @@ export default class AuthController {
if (google.accessDenied()) {
return response.status(403).send({
message: 'Access Denied'
message: 'Access Denied!'
})
}
if (google.stateMisMatch()) {
return response.status(405).send({
message: 'Request expired. Retry again'
message: 'Request expired. Retry again!'
})
}

View File

@@ -1,21 +1,23 @@
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import {HttpContextContract} from '@ioc:Adonis/Core/HttpContext'
import Application from "@ioc:Adonis/Core/Application";
import File from "App/Models/File";
export default class FileController {
public async index () {
return File.query()
public async index({response}: HttpContextContract) {
return response.status(200).send({
files: File.query()
})
}
public async store ({request}: HttpContextContract) {
public async store({request, response}: HttpContextContract) {
const file = await request.file('file', {
extnames: ['jpg', 'png', 'jpeg']
})
const label = request.input('label')
if (!file) {
return 'Please upload file'
return 'Please upload file!'
}
if (file.hasErrors) {
return file.errors
@@ -25,16 +27,20 @@ export default class FileController {
name: `${label}.${file.extname}`
})
return await File.create({
fileName: `${label}.${file.extname}`,
label: label
return response.status(200).send({
file: await File.create({
fileName: `${label}.${file.extname}`,
label: label
})
})
}
public async destroy({ params }: HttpContextContract) {
public async destroy({params, response}: HttpContextContract) {
const file = await File.findOrFail(params.id)
await file.delete()
return { message: "Le fichier a bien été supprimée" }
return response.status(200).send({
message: 'File successfully deleted!'
})
}
}

View File

@@ -1,4 +1,4 @@
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import {HttpContextContract} from '@ioc:Adonis/Core/HttpContext'
import FormValidator from "App/Validators/FormValidator";
import Form from "App/Models/Form";
import FormConfirmation from "App/Mailers/FormConfirmation";
@@ -7,7 +7,6 @@ export default class FormsController {
public async send({ request, response }: HttpContextContract) {
const data = await request.validate(FormValidator)
await Form.create(data)
await new FormConfirmation(data.name, data.email).preview()

View File

@@ -4,15 +4,24 @@ import GuestValidator from "App/Validators/guestbook/GuestValidator";
export default class GuestBookController {
public async get () {
return GuestBookMessage.query().orderBy('created_at', 'desc')
public async get({response}: HttpContextContract) {
return response.status(200).send({
guestbook_messages: GuestBookMessage.query().orderBy('created_at', 'desc')
})
}
public async store ({request, auth}: HttpContextContract) {
if (auth.isLoggedIn) {
const data = await request.validate(GuestValidator)
return await GuestBookMessage.create(data)
}
public async store({request, auth, response}: HttpContextContract) {
const data = await request.validate(GuestValidator)
const user = await auth.user!
const guestbook_message = user.related('guestbook_message').firstOrCreate({
userId: user.id
}, {
...data,
userId: user.id
})
return response.status(200).send({
guestbook_message
})
}
}

View File

@@ -3,7 +3,7 @@ import {HttpContextContract} from "@ioc:Adonis/Core/HttpContext";
export default class PostsController {
public async getLikes ({params}: HttpContextContract) {
public async getLikes({params, response}: HttpContextContract) {
let post = await Post.findBy('slug', params.slug)
if (!post) {
@@ -13,7 +13,9 @@ export default class PostsController {
})
}
return post.likes
return response.status(200).send({
likes: post.likes
})
}
public async like ({params, response}: HttpContextContract) {
@@ -32,7 +34,6 @@ export default class PostsController {
likes: getLikes
}).save()
return response.status(200).send({
status: 200,
post
})
}
@@ -46,7 +47,6 @@ export default class PostsController {
likes: getLikes
}).save()
return response.status(200).send({
status: 200,
post
})
}

View File

@@ -10,7 +10,8 @@ export default class ProfileController {
"Dev",
"DevOps",
"New technologies",
"Gaming"
"Gaming",
"Cloud"
],
code: [
"Javascript",
@@ -29,18 +30,18 @@ export default class ProfileController {
"Software dev"
],
technologies: {
web_app: ["VueJs", "NuxtJs", "Sass", "Tailwind"],
web_app: ["VueJs", "NuxtJs", "Sass", "Tailwind", "WindiCss"],
desktop_app: ["ElectronJs"],
mobile_app: ["React Native"],
mobile_app: ["React Native", "Vue Native"],
back_end: {
typescript: ["AdonisJs"],
java: ["Spring"]
},
databases: ["MongoDB", "MariaDB", "Redis"],
messaging: ["RabbitMq"],
messaging: ["RabbitMQ"],
other: ["Docker", "Git"],
architecture: ["microservices", "event-driven", "design system pattern"],
operating_systems: ['Windows', 'Linux']
operating_systems: ['MacOS', "Linux"]
},
})
}

View File

@@ -1,13 +1,12 @@
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import {HttpContextContract} from '@ioc:Adonis/Core/HttpContext'
import Project from "App/Models/Project";
import ProjectValidator from "App/Validators/project/ProjectValidator";
export default class ProjectsController {
public async get ({ response }: HttpContextContract) {
const projects = await Project.query().orderBy('id', 'asc')
return response.status(200).send({
projects
projects: await Project.query().orderBy('id', 'asc')
})
}

View File

@@ -4,7 +4,7 @@ import {UpdateGitHubReadme} from "App/Tasks/UpdateGithubReadme";
export default class StatesController {
public async get ({response}: HttpContextContract) {
public async get({response}: HttpContextContract) {
const is_sleeping = await Redis.get('states:sleeping')
const is_listening_music = await Redis.get('states:listening')
const is_developing = await Redis.get('states:developing')
@@ -18,7 +18,7 @@ export default class StatesController {
})
}
public async set ({request, response, params}: HttpContextContract) {
public async set({request, response, params}: HttpContextContract) {
const state = params.state
const value = await request.input('value')

View File

@@ -1,4 +1,4 @@
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import {HttpContextContract} from '@ioc:Adonis/Core/HttpContext'
import Subscriber from "App/Models/Subscriber";
import SubscriberValidator from "App/Validators/subscriber/SubscriberValidator";
@@ -10,12 +10,23 @@ export default class SubscribersController {
})
}
public async store ({ request, response }: HttpContextContract) {
public async store({request, response}: HttpContextContract) {
const data = await request.validate(SubscriberValidator)
await Subscriber.create(data)
return response.status(200).send({
message: 'Subscriber successfully registered !'
message: 'Subscriber successfully registered!'
})
}
public async delete({request, response}: HttpContextContract) {
const data = await request.validate(SubscriberValidator)
const subscriber = await Subscriber.findBy('email', data.email)
if (subscriber) {
await subscriber.delete()
return response.status(200).send({
message: 'Subscriber successfully deleted!'
})
}
}
}

View File

@@ -5,34 +5,33 @@ import UserUpdateValidator from "App/Validators/users/UserUpdateValidator";
export default class UsersController {
public async index () {
return User.query()
public async index({response}: HttpContextContract) {
return response.status(200).send({
users: User.query()
})
}
public async store ({request}: HttpContextContract) {
public async store({request, response}: HttpContextContract) {
const data = await request.validate(UserStoreValidator)
return await User.create(data)
return response.status(200).send({
user: await User.create(data)
})
}
public async show ({params}: HttpContextContract) {
return await User.findOrFail(params.id)
public async show({params, response}: HttpContextContract) {
return response.status(200).send({
user: await User.findOrFail(params.id)
})
}
public async update({ request, params, response }: HttpContextContract) {
public async update({request, params, response}: HttpContextContract) {
const user = await User.findOrFail(params.id)
const data = await request.validate(UserUpdateValidator)
const { email } = data
const user2 = await User.findBy('email', email)
if (user2 !== null && user.email !== email) {
return response.abort({
message: 'L\' adresse mail n\'est pas unique !'
})
}
await user.merge(data).save()
return { message: 'Le compte a été mis à jour' }
return response.status(200).send({
message: 'User successfully updated!'
})
}
public async destroy({ response, params, auth }: HttpContextContract) {
@@ -44,7 +43,9 @@ export default class UsersController {
}
await user.delete()
return { message: "L'utilisateur a bien été supprimé" }
return response.status(200).send({
message: 'User successfully deleted!'
})
}
}