Segue o código para o adicionar métodos, que é o que a insturtora chamou de Docente.js. O arquivo de User.js permance idêntico ao dela, mas fiz mudanças no Admin.js e Docente.js. Queria autenticar o User a partir de seu role. No Docengte.js, também queria autenticar os cursos em si com um exemplo. Seguem as mudanças:
import User from "./User.js"
class Admin extends User {
constructor(nome, email, nascimento, role = "admin", ativo = true) {
super(nome, email, nascimento, role, ativo)
}
isAdmin() {
return this.role === "admin"
}
criarCurso(nomeDoCurso, vagas) {
return this.isAdmin()
? `Curso de ${nomeDoCurso} criado com ${vagas} vagas.`
: "Acesso negado. Jogue dum penhasco"
}
}
const novoAdmin = new Admin("Rodrigo", "r@r.com", "2021-01-01")
const novoAdmin2 = new Admin("Alan", "a@a.com", "2021-01-01", "estudante")
console.log(novoAdmin.criarCurso("JS", "20"))
console.log(novoAdmin2)
console.log(novoAdmin2.criarCurso("Python", "20"))
import User from "./User.js"
class Docente extends User {
constructor(nome, email, nascimento, role = "docente", ativo = true) {
super(nome, email, nascimento, role, ativo)
}
isDocente() {
return this.role === "docente"
}
aprovaEstudante(estudante, curso) {
if (curso === "Língua da Chacota") {
return `Não trabalhamos com o curso de ${curso}, man.`
}
return this.isDocente()
? `Estudante ${estudante} aprovado no curso de ${curso}.`
: `Rápido! Leve ${this.nome} aos leões, é impostor!`
}
}
const novoDocente = new Docente("Mariana", "m@m.com", "2021-01-01")
console.log(novoDocente)
console.log(novoDocente.exibirInfos())
console.log(novoDocente.aprovaEstudante("Juliana", "Ruby"))
const novoDocente2 = new Docente("Thiago", "t@t.com", "2000-09-09", "aluno")
console.log(novoDocente2)
console.log(novoDocente2.exibirInfos())
console.log(novoDocente2.aprovaEstudante("Juliana", "Ruby"))
const novoDocente3 = new Docente("Monja", "monga@cohen.com", "893-08-18")
console.log(novoDocente3)
console.log(novoDocente3.exibirInfos())
console.log(novoDocente3.aprovaEstudante("Claudia", "Scala"))
const novoDocente4 = new Docente("Mano", "mano@brown", "1974-05-05")
console.log(novoDocente4)
console.log(novoDocente4.exibirInfos())
console.log(novoDocente4.aprovaEstudante("Fulano", "Língua da Chacota"))