Files
duty-schedule-api/app/Policies/EmployeesPolicy.ts
2021-11-15 16:48:20 +01:00

29 lines
877 B
TypeScript

import { BasePolicy } from '@ioc:Adonis/Addons/Bouncer'
import Employee from 'App/Models/Employee'
import Logger from '@ioc:Adonis/Core/Logger'
export default class EmployeesPolicy extends BasePolicy {
public async index(employee: Employee) {
return employee.isAdmin()
}
public async show(employee: Employee, query: Employee) {
return employee.isAdmin() || employee.id === query.id
}
public async store(employee: Employee) {
return employee.isAdmin()
}
public async update(employee: Employee, editContractHours: boolean, query: Employee) {
Logger.info("Is Admin? "+employee.isAdmin())
Logger.info("Same ids? "+(employee.id === query.id))
Logger.info("Edit contract Hours? "+editContractHours)
return employee.isAdmin() || (employee.id === query.id && !editContractHours)
}
public async destroy(employee: Employee) {
return employee.isAdmin()
}
}