Contenido
CDMX
Martí Batres acusa a la derecha de “fabricar” audio sobre Clara Brugada y García Harfuch
“Esto viene de fuera, de los adversarios, de los conservadores”, remarcó el jefe de Gobierno sobre la grabación en la que presuntamente busca “bajar” del proceso interno morenista al exsecretario de Seguridad, el cual, aseguró, está hecho con “inteligencia artificial”.
// ------------------------------------------------------------------------------------------------------------------------------- // PHOTOSWIPE
var initPhotoSwipeFromDOM = function(gallerySelector) {
// parse slide data (url, title, size ...) from DOM elements // (children of gallerySelector) var parseThumbnailElements = function(el) { var thumbElements = el.childNodes, numNodes = thumbElements.length, items = [], figureEl, linkEl, size, item;
for(var i = 0; i < numNodes; i++) {
figureEl = thumbElements[i]; //
// include only element nodes if(figureEl.nodeType !== 1) { continue; }
linkEl = figureEl.children[0]; // element
size = linkEl.getAttribute('data-size').split('x');
// create slide object item = { src: linkEl.getAttribute('href'), w: parseInt(size[0], 10), h: parseInt(size[1], 10) };
if(figureEl.children.length > 1) {
//
if(linkEl.children.length > 0) {
// thumbnail element, retrieving thumbnail url
item.msrc = linkEl.children[0].getAttribute('src');
}
item.el = figureEl; // save link to element for getThumbBoundsFn items.push(item); }
return items; };
// find nearest parent element var closest = function closest(el, fn) { return el && ( fn(el) ? el : closest(el.parentNode, fn) ); };
// triggers when user clicks on thumbnail var onThumbnailsClick = function(e) { e = e || window.event; e.preventDefault ? e.preventDefault() : e.returnValue = false;
var eTarget = e.target || e.srcElement;
// find root element of slide var clickedListItem = closest(eTarget, function(el) { return (el.tagName && el.tagName.toUpperCase() === 'FIGURE'); });
if(!clickedListItem) { return; }
// find index of clicked item by looping through all child nodes // alternatively, you may define index via data- attribute var clickedGallery = clickedListItem.parentNode, childNodes = clickedListItem.parentNode.childNodes, numChildNodes = childNodes.length, nodeIndex = 0, index;
for (var i = 0; i < numChildNodes; i++) { if(childNodes[i].nodeType !== 1) { continue; } if(childNodes[i] === clickedListItem) { index = nodeIndex; break; } nodeIndex++; } if(index >= 0) { // open PhotoSwipe if valid index found openPhotoSwipe( index, clickedGallery ); } return false; };
// parse picture index and gallery index from URL (#&pid=1&gid=2) var photoswipeParseHash = function() { var hash = window.location.hash.substring(1), params = {};
if(hash.length < 5) { return params; } var vars = hash.split('&'); for (var i = 0; i < vars.length; i++) { if(!vars[i]) { continue; } var pair = vars[i].split('='); if(pair.length < 2) { continue; } params[pair[0]] = pair[1]; } if(params.gid) { params.gid = parseInt(params.gid, 10); } return params; }; var openPhotoSwipe = function(index, galleryElement, disableAnimation, fromURL) { var pswpElement = document.querySelectorAll('.pswp')[0], gallery, options, items; items = parseThumbnailElements(galleryElement); // define options (if needed) options = { // define gallery index (for URL) galleryUID: galleryElement.getAttribute('data-pswp-uid'), getThumbBoundsFn: function(index) { // See Options -> getThumbBoundsFn section of documentation for more info var thumbnail = items[index].el.getElementsByTagName('img')[0], // find thumbnail pageYScroll = window.pageYOffset || document.documentElement.scrollTop, rect = thumbnail.getBoundingClientRect();
return {x:rect.left, y:rect.top + pageYScroll, w:rect.width}; }
};
// PhotoSwipe opened from URL if(fromURL) { if(options.galleryPIDs) { // parse real index when custom PIDs are used // http://photoswipe.com/documentation/faq.html#custom-pid-in-url for(var j = 0; j < items.length; j++) { if(items[j].pid == index) { options.index = j; break; } } } else { // in URL indexes start from 1 options.index = parseInt(index, 10) - 1; } } else { options.index = parseInt(index, 10); } // exit if index not found if( isNaN(options.index) ) { return; } if(disableAnimation) { options.showAnimationDuration = 0; } // Pass data to PhotoSwipe and initialize it gallery = new PhotoSwipe( pswpElement, PhotoSwipeUI_Default, items, options); gallery.init(); }; // loop through all gallery elements and bind events var galleryElements = document.querySelectorAll( gallerySelector ); for(var i = 0, l = galleryElements.length; i < l; i++) { galleryElements[i].setAttribute('data-pswp-uid', i+1); galleryElements[i].onclick = onThumbnailsClick; } // Parse URL and open gallery if it contains #&pid=3&gid=1 var hashData = photoswipeParseHash(); if(hashData.pid && hashData.gid) { openPhotoSwipe( hashData.pid , galleryElements[ hashData.gid - 1 ], true, true ); } }; // execute above function initPhotoSwipeFromDOM('.my-gallery'); // ====================================== // FIN SCRIPTS PHOTOSWIPE // ======================================
CIUDAD DE MÉXICO (apro).- El jefe de gobierno, Martí Batres, acusó a “los adversarios” y a la “derecha” como los autores del audio que ayer por la noche se difundió, presuntamente con su voz, y hablando de la contienda interna de Morena Ciudad de México para definir la candidatura a la Jefatura de Gobierno en el 2024.
“Estos son ataques de los adversarios de nuestro movimiento. Y ya lo dije ayer con toda claridad: es un video falso, es una fabricación artificial y, bueno, es muy sencillo de comprobar”, dijo.
En la conferencia convocada para hablar de la Línea 1 del Metro estaba preparada una exposición del director de Gobierno Digital de la Agencia Digital de Innovación Pública (ADIP), Eduardo Clark García Dobarganes, sobre cómo crear un mensaje de voz falso en una plataforma de internet por menos de 200 pesos y en apenas 15 minutos.
Tras la explicación, el funcionario reconoció que, hasta ahora, es muy difícil comprobar la autenticidad de este tipo de mensajes y determinar si son clonados o no.
Luego de la exposición, pero sin presentar pruebas de su acusación, Batres Guadarrama subrayó:“esto viene de fuera, de los adversarios, de la derecha, de los conservadores. Pero no nos va a afectar nuestro trabajo, nosotros vamos a seguir con nuestro trabajo”.
Se difunde un presunto audio de Martí Batres en que se rebela contra las instrucciones de "la candidata" para dejar de apoyar a Clara. pic.twitter.com/GB1hnvYFKe
— Sergio Sarmiento (@SergioSarmiento) November 1, 2023
Por último, el exsenador fue consultado sobre si tiene preferencia sobre algún aspirante a la Coordinación de la Defensa de la Transformación en la CDMX, a lo que contestó:
“No me meto en eso… Siempre me he centrado en los temas de gobierno y prefiero no opinar de los temas de nuestro movimiento, de los temas internos. Como he dicho, son procesos que conduce la Dirigencia Nacional de nuestro movimiento. Punto. No tengo nada más que agregar”.
Ayer por la noche fue difundido en redes sociales un audio presuntamente con la voz de Batres Guadarrama, en el que da indicaciones para “bajar” al exsecretario de Seguridad Ciudadana (SSC), Omar García Harfuch, de la contienda e impulsar a la exalcaldesa de Iztapalapa, Clara Brugada.
(Minuto 41)
Comentarios
Otras Noticias
// Obtener todos los elementos con clase .col-md-12 var colElements = document.querySelectorAll('.col-md-12');
// Iterar sobre cada elemento colElements.forEach(function(element) { // Verificar si tiene un hijo inmediato con clase .titulo-region var tituloRegion = element.querySelector('.titulo-region');
if (tituloRegion) { // Agregar la clase .is-sticky al elemento padre element.classList.add('is-sticky'); } });
// Obtener el elemento article dentro de .fila-especial-v2 .p50 var articleElement = document.querySelector('.home .fila-especial-v2 .p50 article');
// Obtener el texto del elemento .z-foto .bajada p var bajadaText = articleElement.querySelector('.z-foto .bajada p').textContent;
// Crear un nuevo elemento para mostrar el texto obtenido var textoElement = document.createElement('p'); textoElement.textContent = bajadaText;
// Obtener el elemento .z-txt .titulo dentro del article var tituloElement = articleElement.querySelector('.z-txt .titulo');
// Insertar el nuevo elemento al final del article articleElement.appendChild(textoElement);
Cortesía de Proceso.

Dejanos un comentario: