Gente, boa tarde!
Estou com um problema no meu código pro projeto AluGames, o primeiro desafio. Eu consegui fazer a troca de 'status' dos botões funcionarem separadamente, mas nunca juntas. Ou seja, dependendo de como monto o código ele consegue mudar de 'Alugar' pra 'Devolver' mas não o contrário. Ou ainda, mexendo um pouco na lógica eu consegui fazer funcionar de 'Devolver' pra 'Alugar'. Mas não consigo os dois juntos. Como estou há alguns dias olhando pro código e tentando coisas diferentes sem resultados, decidi pedir ajuda.
function alterarStatus(id){
let gameClicado = document.getElementById('game-' + id);
let status = gameClicado.querySelector('.dashboard__item__img');
let botao = gameClicado.querySelector('.dashboard__item__button');
if(status.classList.contains('dashboard__item__img') && (botao).classList.contains('dashboard__item__button')){
status.setAttribute('class' , 'dashboard__item__img dashboard__item__img--rented')
botao.setAttribute('class' , 'dashboard__item__button dashboard__item__button--return')
exibirTextoNaTela(id , 'a' , 'Devolver');
} else {
status.setAttribute('class' , 'dashboard__item__img')
botao.setAttribute('class' , 'dashboard__item__button')
exibirTextoNaTela(id , 'a' , 'Alugar');
}
}
Dessa forma, funciona apena de 'Alugar' pra 'Devolver'.
function alterarStatus(id){
let gameClicado = document.getElementById('game-' + id);
let status = gameClicado.querySelector('.dashboard__item__img');
let botao = gameClicado.querySelector('.dashboard__item__button');
if(status.classList.contains('dashboard__item__img') && (botao).classList.contains('dashboard__item__button')){
status.setAttribute('class' , 'dashboard__item__img dashboard__item__img--rented')
botao.setAttribute('class' , 'dashboard__item__button dashboard__item__button--return')
exibirTextoNaTela(id , 'a' , 'Devolver');
}
if (status.classList.contains('dashboard__item__img--rented') && (botao).classList.contains('dashboard__item__button--return')){
status.setAttribute('class' , 'dashboard__item__img')
botao.setAttribute('class' , 'dashboard__item__button')
exibirTextoNaTela(id , 'a' , 'Alugar');
}
}
Já dessa forma, funciona só a parte de baixo do código, de 'Devolver' pra 'Alugar'. Eu imaginei que ambas as formas funcionariam uma vez que as condições seriam avaliadas na ordem que são dispostas, mas não consigo fazer as duas funcionarem ao mesmo tempo.
Vocês podem dar uma olhadinha e me ajudar? Muito obrigado!
Felipe