Luego del incendio que afectó gravemente las instalaciones del frigorífico Corina en Melchor Romero, se han iniciado una serie de despidos que han generado preocupación y malestar entre los trabajadores.
El siniestro, ocurrido la semana pasada, consumió gran parte de los galpones y dejó severos daños en la infraestructura del establecimiento. Aunque la empresa aún no ha emitido un comunicado oficial sobre las causas del incendio ni sobre el plan de recuperación, empleados denunciaron que varios compañeros han sido desvinculados en los últimos días.
1800 ? ' warning' : '');
});
}
function cargarComentarios() {
var xhr = new XMLHttpRequest();
xhr.open('GET', baseUrl + 'ajax-comentarios.php?accion=listar&id_noticia=' + idNoticia, true);
xhr.onload = function () {
document.getElementById('comments-loading').style.display = 'none';
try {
var data = JSON.parse(xhr.responseText);
if (data.ok) {
document.getElementById('comments-count').textContent = data.total;
if (data.comentarios.length === 0) {
document.getElementById('comments-empty').style.display = 'block';
document.getElementById('comments-list').style.display = 'none';
} else {
document.getElementById('comments-empty').style.display = 'none';
document.getElementById('comments-list').style.display = 'block';
renderComentarios(data.comentarios);
}
}
} catch (e) { console.error('Error parsing comments', e); }
};
xhr.send();
}
function renderComentarios(comentarios) {
var html = '';
for (var i = 0; i < comentarios.length; i++) {
html += renderComentario(comentarios[i]);
}
document.getElementById('comments-list').innerHTML = html;
}
function renderComentario(c) {
var html = '
';
return html;
}
// Publicar comentario principal
window.publicarComentario = function (idPadre) {
var textarea = idPadre ? document.querySelector('#reply-form-' + idPadre + ' textarea') : document.getElementById('comentario-texto');
var texto = textarea ? textarea.value.trim() : '';
if (!texto) { mostrarToast('Escribí un comentario', 'error'); return; }
var btn = idPadre ? document.querySelector('#reply-form-' + idPadre + ' .btn-publicar-reply') : document.getElementById('btn-publicar');
btn.disabled = true;
btn.textContent = 'Publicando...';
var formData = new FormData();
formData.append('accion', 'publicar');
formData.append('id_noticia', idNoticia);
formData.append('comentario', texto);
if (idPadre) formData.append('id_padre', idPadre);
var xhr = new XMLHttpRequest();
xhr.open('POST', baseUrl + 'ajax-comentarios.php', true);
xhr.onload = function () {
btn.disabled = false;
btn.textContent = idPadre ? 'Responder' : 'Publicar';
try {
var data = JSON.parse(xhr.responseText);
if (data.ok) {
mostrarToast('Comentario publicado', 'success');
if (!idPadre && textarea) textarea.value = '';
var counter = document.getElementById('char-count');
if (counter) counter.textContent = '0 / 2000';
cargarComentarios();
} else {
mostrarToast(data.error || 'Error al publicar', 'error');
}
} catch (e) { mostrarToast('Error de conexión', 'error'); }
};
xhr.onerror = function () {
btn.disabled = false;
btn.textContent = idPadre ? 'Responder' : 'Publicar';
mostrarToast('Error de conexión', 'error');
};
xhr.send(formData);
};
// Responder
window.responderA = function (idComentario) {
// Cerrar otros reply forms
var existentes = document.querySelectorAll('.reply-form-inline');
for (var k = 0; k < existentes.length; k++) existentes[k].remove();
var container = document.getElementById('reply-form-' + idComentario);
if (!container) return;
container.innerHTML = '
';
container.querySelector('textarea').focus();
};
// Like / Dislike
var reaccionando = false;
window.reaccionar = function (idComentario, tipo) {
if (reaccionando) return;
var btn = event.currentTarget;
reaccionando = true;
var formData = new FormData();
formData.append('accion', tipo);
formData.append('id_comentario', idComentario);
var xhr = new XMLHttpRequest();
xhr.open('POST', baseUrl + 'ajax-comentarios.php', true);
xhr.onload = function () {
reaccionando = false;
try {
var data = JSON.parse(xhr.responseText);
if (data.ok) {
var elLikes = document.getElementById('likes-' + idComentario);
var elDislikes = document.getElementById('dislikes-' + idComentario);
if (elLikes) elLikes.textContent = data.likes;
if (elDislikes) elDislikes.textContent = data.dislikes;
// Cambiar color
var container = btn.closest('.comment-actions');
var btnLike = container.querySelector('button[onclick*="\'like\'"]');
var btnDislike = container.querySelector('button[onclick*="\'dislike\'"]');
if (data.revertido) {
btnLike.classList.remove('active-like');
btnDislike.classList.remove('active-dislike');
} else {
if (tipo === 'like') {
btnLike.classList.add('active-like');
btnDislike.classList.remove('active-dislike');
} else {
btnDislike.classList.add('active-dislike');
btnLike.classList.remove('active-like');
}
}
} else {
mostrarToast(data.error || 'Error', 'error');
}
} catch (e) { }
};
xhr.onerror = function () {
reaccionando = false;
};
xhr.send(formData);
};
// Denunciar
var idDenunciaPendiente = null;
window.denunciar = function (idComentario) {
idDenunciaPendiente = idComentario;
document.getElementById('modal-denunciar').classList.add('active');
};
window.cerrarModalDenuncia = function () {
document.getElementById('modal-denunciar').classList.remove('active');
idDenunciaPendiente = null;
};
document.getElementById('btn-confirmar-denuncia').onclick = function () {
if (!idDenunciaPendiente) return;
var idComentario = idDenunciaPendiente;
cerrarModalDenuncia();
var formData = new FormData();
formData.append('accion', 'denunciar');
formData.append('id_comentario', idComentario);
var xhr = new XMLHttpRequest();
xhr.open('POST', baseUrl + 'ajax-comentarios.php', true);
xhr.onload = function () {
try {
var data = JSON.parse(xhr.responseText);
mostrarToast(data.ok ? (data.mensaje || 'Denunciado') : (data.error || 'Error'), data.ok ? 'success' : 'error');
} catch (e) { }
};
xhr.send(formData);
};
document.getElementById('modal-denunciar').onclick = function (e) {
if (e.target === this) cerrarModalDenuncia();
};
// Toast
function mostrarToast(msg, tipo) {
var existing = document.querySelector('.comment-toast');
if (existing) existing.remove();
var toast = document.createElement('div');
toast.className = 'comment-toast ' + (tipo || '');
toast.textContent = msg;
document.body.appendChild(toast);
setTimeout(function () { toast.remove(); }, 3500);
}
function escapeHtml(text) {
if (!text) return '';
var d = document.createElement('div');
d.textContent = text;
return d.innerHTML;
}
})();