Contenido
Apple
Apple sufre revés en disputa por impuestos con la UE
El fallo de una corte inferior de que la gran empresa tecnológica estadunidense no tiene que pagar 13 mil millones de euros (13 mil 900 millones de dólares) “debería ser desestimado”, dijo el abogado general del Tribunal Europeo de Justicia.
// ------------------------------------------------------------------------------------------------------------------------------- // 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 // ======================================
LONDRES (AP) — Apple podría verse obligada a pagar miles de millones de euros en impuestos atrasados a Irlanda, tras una opinión legal presentada el jueves por un asesor del alto tribunal de la Unión Europea.
El fallo de una corte inferior de que la gran empresa tecnológica estadunidense no tiene que pagar 13 mil millones de euros (13 mil 900 millones de dólares) “debería ser desestimado”, dijo el abogado general del Tribunal Europeo de Justicia, Giovanni Pitruzzella, según un comunicado de prensa que resume su opinión.
La causa enfureció a Apple cuando se inició en 2016, y su director general Tim Cook la calificó de “basura política total”. El entonces presidente estadounidense Donald Trump dijo que la comisionada europea Margrethe Vestager, quien encabezó la campaña para anular los acuerdos impositivos especiales y encausar a las grandes tecnológicas estadounidenses, era la “dama cobradora de impuestos” que “realmente odia a Estados Unidos”.
En su fallo de 2020, el Tribunal General de la Unión Europea disintió con la Comisión Europea, el ejecutivo del bloque, que había acusado a Apple de lograr un acuerdo impositivo ilegal con las autoridades irlandesas para pagar tasas extremadamente bajas.
Pitruzzella sostuvo que el Tribunal Europeo de Justicia debe “desestimar el fallo y remitirlo nuevamente al Tribunal General para una nueva decisión sobre los méritos”.
El Tribunal General “cometió una serie de errores de derecho” y debe “realizar una nueva evaluación”, según el comunicado de prensa.
Las opiniones del Tribunal General de la Unión Europea no son vinculantes, pero el tribunal de justicia suele acatarlas. Se prevé que habrá una decisión vinculante el año próximo.
“Agradecemos al tribunal por dedicarnos su tiempo y seguir considerando el caso”, dijo Apple en un comunicado. “El fallo del Tribunal General fue muy claro en el sentido de que Apple no recibió una ventaja selectiva ni ayuda del Estado, y creemos que debe ser ratificado”.
La Comisión Europea no hizo declaraciones. Su ofensiva contra las tecnológicas se ha ampliado para abarcar investigaciones antimonopolio de la plataforma de pagos de Apple y su tienda de aplicaciones, así como una vigilancia más estricta bajo las nuevas normas digitales destinadas a una competencia más equitativa.
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: