La Milicia de la Noche

José Manuel del Río

Fragmento

Los tres

Barcelona, 18 de julio de 1936

LOS TRES

«¿Has escuchado cómo rugen las calles?»

—Dar muerte es el arte más elevado.

Destellos metálicos surcan la pistola.

Él empapa la gamuza en un tampón de aceite, frota el cañón labrado y abre el tambor de seis balas. Lo gira una vuelta completa. Introduce cada proyectil en su recámara y vuelve a girarlo. La rueda suena diferente a la carga de argumentos definitivos. Es un viejo Colt Walker con empuñadura de marfil, vestigio de otra época y la misma sangre.

—Que te maten, en cambio, una necedad.

Su sonrisa centellea en el cromado.

Para disparar un arma así de pesada se ha de sujetar con las dos manos. Él siempre utiliza una. La coloca en la funda derecha de su cinturón de cuero, que muestra trazos verticales en la parte posterior, descolorida y sin agujeros por los que insertar la púa. En una mirada atenta se comprueba la equidistancia de aquellas muescas.

Rayó la primera el 2 de junio de 1929.

—¿Lo has consultado con ellos? —le pregunta el hombre al que llaman «Pep el Rata»—. Un aviso de cortesía... ¿algo? Ya nunca les damos noticia de los golpes.

Él no contesta.

Volutas de humo rompen encima de sus cabezas y empañan los siete metros cuadrados. No es un ataúd; es una vivienda en la que muchos creían ciudad prodigiosa, expositora de ingenios, cuna del modernismo y urbanidad a cartabón. Barcelona puede hablar con voz frívola, pero ya nadie vive en la barraca, ahora refugio de intrigas tras la puerta laminada de acero. Sus paredes enseñan dibujos a cuchillo de animales y tomos sin título se apilan junto a un catre. Excepto el que versa en su cubierta Non omnis moriar.

—Un día acabarás con su paciencia —advierte el hombre al que llaman «Bucanero»—. Cobrarán caro actuar por nuestra cuenta. Tan caro como que me rellenen el estómago de piedras y me tiren al mar.

Él rebota la lengua contra el paladar mientras se mira a un espejo. Cuenta y riesgo, deduce, activo y pasivo compensados no permiten reclamación en esas esquinas donde siempre inventan números pendientes. La idea de que alguna de las otras bandas les ponga un dedo encima le proyecta una sonrisa sardónica. Estallado por el lateral, el cristal devuelve la imagen de su cara en tres planos. Así fuera una aberración hecha carne, mentón, nariz y frente semejan de personas distintas.

Un retrato de aquellos que esconden multitudes.

—¿Has escuchado cómo rugen las calles? —pregunta Pep el Rata a Bucanero, acariciando la rata que duerme sobre su pecho—. Amic meu, en unos días seremos los últimos de los que se preocuparán para cobrar deudas. Y si parlotean tanto es porque ahora somos los mejores. Les guste —pasa a rascarle el lomo— o no les guste.

Hablan los dos a los que él ignora.

—¿De repente crees eso del Golpe en Barcelona? —Bucanero ajusta el parche negro sobre su cuenca orbital hueca—. Los republicanos ven golpistas en cada esquina desde hace meses, y, al final, paseíllos de ambos lados y poco más. Por mi parte solo soy leal a nosotros mismos. —Se tapa la nariz para afinar voz aguda—. Alerta antifascista: ¿el frutero ha hecho el saludo romano o ha llamado a un taxi?

—Parece que ahora únicamente hay estas formas de saludarse. —Pep el Rata alterna mano extendida y puño cerrado—. ¿Dónde ha quedado el resto?

Bucanero oculta su mano con el antebrazo contrario y la asoma, poco a poco, al plano polvoriento de luz.

—Yo intentaría hacer obligatoria una tercera.

Desliza la peineta con el dedo.

Pep el Rata carcajea hasta que sale el rictus serio de esas entrañas.

—Que los militares vuelvan de Marruecos es algo nuevo, sin duda.

—Tendrán tratos con los moros, Pep.

—También se han amotinado en Sevilla.

Mientras fuma un puro sobre el catre, Pep el Rata desliza la petaca desde el pantalón e inclina el coñac. Rasca aquella garganta purulenta, aunque borracho no muestra el tic que lo hace parpadear como un desquiciado. Igual que muchos, bebe para plegar un trastorno sobre otro. Aquí no hay diagnóstico, no hay medicación, la consecuencia es que a efectos prácticos tampoco hay trastorno.

Feixistes fills de puta.

El alcohol desciende por el esófago hasta las úlceras. Purificadas de nuevo, ya queman como rejones. A continuación, apaga el puro contra su palma y ofrece la petaca a Bucanero, que es un tipo de tragos largos. El humo envuelve a los dialoguistas en una estola tétrica. Vuelven a cruzar el pensamiento del golpe de Estado y la reflexión demanda la pregunta definitiva para el tercero, para el gánster de las cien mil palabras.

—Tú, ¿qué opinas sobre todo esto?

Cien mil palabras calladas hasta el momento.

Él frunce el ceño mientras estira unos guantes de piel rojos en las manos. Retuerce la membrana sin cuartear y abandona la imagen en el espejo. Los tres planos desaparecen succionados, aunque la frente resiste un instante más, tal que albergase densidad diferente. Entonces sus botas pisan una madera carcomida de esa barraca de La Torrasa, suburbio en Hospitalet. Las puntas de los pies describen un giro con el crepitar y se queda observando de medio perfil, cual demiurgo demente, a los que quiere moderar tras un cabeceo. Hasta les escruta la mirada como si hubiera mucho de indescifrable detrás de ella.

—Opino que es suficiente —contesta al fin—. Incluso en un momento parecía que estabais conmigo por política.

Los dos ríen con su extraña parquedad y el hombre al que llaman «Lobo» recoge, muy serio, unas gafitas doradas de ver y un sombrero negro de la mesa. También la otra pistola gemela para la funda izquierda de su cinto.

Fidel Lobo.

Lobo es su apellido.

A esa pistola le había sacado brillo antes.

—Vámonos —ordena—. Por el callejón trasero.

—Llegaremos antes de la hora prevista.

Lobo eleva una mano, sugiriendo el magisterio menos parco.

—Cuando nos adelantamos, el ánimo de los demás ya no es el contemplativo de una agenda, sino que se ve afectado por la alternativa. ¿Hace cuánto que están donde yo acabo de llegar?, ¿qué ventaja habrán obtenido durante mi falta de reacción? y ¿cómo puedo recuperarla desde la nostalgia de lo nunca ocurrido? Mientras alguien se plantee esas preguntas no encontrará su propio lugar en el suceso. —Chasquea dedos—. En definitiva, el éxito de un atraco o de un golpe de Estado está en aparecer antes de la hora prevista.

La farmacia</tit </div> <div id="div_newsletter" class=""> <h3 id="h3_news">Suscríbete para continuar leyendo y recibir nuestras novedades editoriales</h3> <h3 id="h3_OK">¡Ya estás apuntado/a! Gracias.<span id="close_news">X</span></h3> <div class="row" id="row_input"> <div class="col-xs-12 col-md-12"> <button type="button" class="btn btn-primary margin-center hidden-sm-up subscription-categories-btn modalSubscriptionForm btnsn" data-toggle="modal" data-target="#modalSubscriptionForm"> ME APUNTO </button> <button type="button" class="btn btn-primary hidden-xs-down subscription-categories-btn margin-center modalSubscriptionForm btnsn" data-toggle="modal" data-target="#modalSubscriptionForm"> ME APUNTO </button> </div> </div> </div> </div> <div class="modal fade" id="modalSubscriptionConfirm" tabindex="-1" role="dialog" aria-labelledby="modalSubscriptionConfirm" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <span class="modal-title">Gracias</span> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> ¡Apuntada tu nueva preferencia! Muchas Gracias </div> <div class="modal-footer"> <button type="button" class="btn btn-primary margin-center subscription-categories-btn btnsnc" data-dismiss="modal">Cerrar</button> </div> </div> </div> </div> <div class="modal fade" id="modalSubscriptionForm" tabindex="-1" role="dialog" aria-labelledby="modalSubscriptionForm" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <form action="//www.penguinlibros.com/es/module/lblusersubscription/miscelania?action=setTematicaModal&ajax=1" method="post" id="submitNewsletterModal-form" class="pl-3 pr-3"> <div class="modal-header"> <span class="modal-title">Rellena tus datos</span> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div class="col-xs-12 alert alert-success alert-warning hidden-xs-up" id="iqitreviews-productreview-form-alert"></div> <div class="form-fields" id="iqitreviews-productreview-fields"> <input type="hidden" name="autor" value="116122"> <input type="hidden" name="editorial" value="948380"> <input type="hidden" name="tematicas" value="20"> <input type="hidden" name="origen" value="subscripcionFragmento"> <input type="hidden" name="suscribeNewsletter" value="1"> <div class="form-group row"> <label class="col-md-3 form-control-label">Nombre</label> <div class="col-md-9"> <input type="text" class="form-control" name="name" id="name" value="" placeholder="Tu nombre"/> </div> </div> <div class="form-group row"> <label class="col-md-3 form-control-label">Apellidos</label> <div class="col-md-9"> <input type="text" class="form-control" name="surname" id="surname" value="" placeholder="Tu apellido"/> </div> </div> <div class="form-group row"> <label class="col-md-3 form-control-label">Email</label> <div class="col-md-9"> <input type="email" class="form-control" name="email" id="email" value="" placeholder="Tu email"/> </div> </div> <div class="form-group row"> <label class="col-md-3 form-control-label">Catálogo de interés</label> <div class="col-md-9"> <select name="shop" id="shop"> <option selected value="1">Penguinlibros España</option> <option value="4">Penguinlibros Argentina</option> <option value="14">Penguinlibros Colombia</option> <option value="15">Penguinlibros México</option> <option value="16">Penguinlibros Chile</option> <option value="17">Penguinlibros Perú</option> <option value="18">Penguinlibros Uruguay</option> <option value="19">Penguinlibros Miami</option> </select> </div> </div> <div class="mt-2 text-muted"> <div id="gdpr_consent_153" class="gdpr_module gdpr_module_153"> <div class="custom-checkbox" style="display: flex;"> <input id="psgdpr_consent_checkbox_153" name="psgdpr_consent_checkbox" type="checkbox" value="1"> <span class="psgdpr_consent_checkbox_span mr-2"><i class="fa fa-check rtl-no-flip checkbox-checked psgdpr_consent_icon" aria-hidden="true"></i></span> <div class="p_leer_mas p_leer_mas_prod" style="overflow: hidden; text-overflow: ellipsis;"> <span style="text-align: justify;">He leído y acepto las <a href="https://www.penguinlibros.com/es/content/10-proteccion-de-datos">Condiciones del Servicio y la política de protección de datos</a>, incluyendo la política de cookies para darme de alta en Penguinlibros.<br /><br...></b></b></a></s> <a href="#" class="l_leer_mas" onclick="$('.p_leer_mas').hide();$('.p_leer_menos').show();$('.l_leer_menos').show();" style="text-decoration: underline !important;">Leer más</a> </div> <div class="p_leer_menos"><span><span style="text-align: justify;">He leído y acepto las <a href="https://www.penguinlibros.com/es/content/10-proteccion-de-datos">Condiciones del Servicio y la política de protección de datos</a>, incluyendo la política de cookies para darme de alta en Penguinlibros.<br /><br /></span><span style="font-size: 10px;">Responsable: Penguin Random House Grupo Editorial,S.A.U. (Penguinlibros) con domicilio social en Travessera de Gràcia, 47-49 08021 Barcelona NIF: A 08116147 contacto: lopd@penguinrandomhouse.com. Finalidad: tratará sus datos personales para informarte sobre nuestros productos, servicios, novedades, sorteos, concursos y eventos. Puede ver más detalles </span><a href="https://www.penguinlibros.com/es/content/10-proteccion-de-datos" style="text-align: justify; font-size: 10px;">aquí</a><span style="text-align: justify; font-size: 10px;">. Legitimación: Ejecución del contrato y consentimiento del interesado. Destinatario: cedemos tus datos a las empresas de nuestro grupo para poder mostrar el catálogo disponible. Puede ver más detalles </span><a href="https://www.penguinlibros.com/es/content/10-proteccion-de-datos" style="text-align: justify; font-size: 10px;">aquí</a><span style="text-align: justify; font-size: 10px;">. </span><span style="text-align: justify; font-size: 10px;">Derechos: Acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en nuestra política que puede consultar en el siguiente </span><a href="https://www.penguinlibros.com/es/content/10-proteccion-de-datos" style="text-align: justify; font-size: 10px;"><u>enlace.</u></a></span> <a class="l_leer_menos" onclick="$('.p_leer_menos').hide();$('.p_leer_mas').show();$('.l_leer_mas').show();">Leer menos</a> </div> </div> </div> <script type="text/javascript"> var psgdpr_front_controller = "https://www.penguinlibros.com/es/module/psgdpr/FrontAjaxGdpr"; psgdpr_front_controller = psgdpr_front_controller.replace(/\amp;/g,''); var psgdpr_id_customer = "0"; var psgdpr_customer_token = "da39a3ee5e6b4b0d3255bfef95601890afd80709"; var psgdpr_id_guest = "0"; var psgdpr_guest_token = "90f3318a80b19c408b7042f4fa7883cfb07d7b39"; document.addEventListener('DOMContentLoaded', function() { let psgdpr_id_module = "153"; let parentForm = $('.gdpr_module_' + psgdpr_id_module).closest('form'); let toggleFormActive = function() { let checkbox = $('#psgdpr_consent_checkbox_' + psgdpr_id_module); let element = $('.gdpr_module_' + psgdpr_id_module); let iLoopLimit = 0; // Look for parent elements until we find a submit button, or reach a limit while(0 === element.nextAll('[type="submit"]').length && // Is there any submit type ? element.get(0) !== parentForm.get(0) && // the limit is the form element.length && iLoopLimit != 1000) { // element must exit element = element.parent(); iLoopLimit++; } if (checkbox.prop('checked') === true) { if (element.find('[type="submit"]').length > 0) { element.find('[type="submit"]').removeAttr('disabled'); } else { element.nextAll('[type="submit"]').removeAttr('disabled'); } } else { if (element.find('[type="submit"]').length > 0) { element.find('[type="submit"]').attr('disabled', 'disabled'); } else { element.nextAll('[type="submit"]').attr('disabled', 'disabled'); } } } // Triggered on page loading toggleFormActive(); $('body').on('change', function(){ // Triggered after the dom might change after being loaded toggleFormActive(); // Listener ion the checkbox click $(document).on("click" , "#psgdpr_consent_checkbox_"+psgdpr_id_module, function() { toggleFormActive(); }); $(document).on('submit', parentForm, function(event) { $.ajax({ data: 'POST', //dataType: 'JSON', url: psgdpr_front_controller, data: { ajax: true, action: 'AddLog', id_customer: psgdpr_id_customer, customer_token: psgdpr_customer_token, id_guest: psgdpr_id_guest, guest_token: psgdpr_guest_token, id_module: psgdpr_id_module, }, success: function (data) { // parentForm.submit(); }, error: function (err) { console.log(err); } }); }); }); }); </script> </div> </div> </div> <div class="modal-footer"> <input class="btn btn-primary margin-center hidden-sm-up subscription-categories-btn btnsns" data-id_product=11207 type="submit" value=" OK"> <input class="btn btn-primary hidden-xs-down subscription-categories-btn margin-center modal-newsletter btnsns" data-id_product=11207 type="submit" value=" Apuntate"> </div> </form> </div> </div> </div> </div> </section> <footer id="footer"> <div class="preview-footer"> <div class="container content row col-12 col-md-10 col-sm-8 overflow-hidden m-auto content row "> <div class="col-12"> <p class="product_name" style="font-size: 27px;font-family: 'montserrat';margin:0 auto;text-align:center;">La Milicia de la Noche</p> </div> <div id="textoRelated" class="col-lg-12 col-md-12 col-sm-10 col-xs-12"> <h2>¡Disfruta del libro entero!</h2> <p style="font-weight: bold;padding:0px;margin:0px;">Elige tu formato favorito y empieza tu próxima lectura</p> </div> <div class="col-lg-12 col-md-12 col-xs-12"> <div class="info-libro row" style="padding:0px;"> <div class="precios-libro row"> <div class="col-xl-3 col-lg-4 libroRelated selected" style="display:inline-block;"> <a href="//www.penguinlibros.com/es/novela-negra-misterio-y-thriller/11207-libro-la-milicia-de-la-noche-9788466668385 "> <picture class="lazy"> <source data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.webp" type="image/webp"> <source data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.jpg"> <img data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.jpg" alt="La Milicia de la Noche" class="img-fluid photo"> </picture> <span class="formato">Tapa blanda con solapas</span> <div class="row"> <span class="col precio">18,91 € <span>19,90 €</span> </span> </div> </a> </div> <div class="col-xl-3 col-lg-4 libroRelated" style="display:inline-block;"> <a href="//www.penguinlibros.com/es/novela-negra-misterio-y-thriller/11207-libro-la-milicia-de-la-noche-9788466668385 "> <picture class="lazy"> <source data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.webp" type="image/webp"> <source data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.jpg"> <img data-srcset="https://www.penguinlibros.com/es/1470661-home_default/la-milicia-de-la-noche.jpg" alt="La Milicia de la Noche" class="img-fluid photo"> </picture> <span class="formato">eBook</span> <div class="row"> <span class="col precio">18,91 € <span>19,90 €</span> </span> </div> </a> </div> </div> </div> </div> <div class="clearfix"></div> </div> </div> </footer> </main> <script type="text/javascript" src="https://www.penguinlibros.com/es/themes/megustaleer/assets/cache/bottom-89dc912191.js" data-cookieconsent="ignore" ></script> <script type="text/javascript" src="/es/modules/motive/views/js/front.js?v=2.26.0" data-cookieconsent="ignore" ></script> <div id="iqitwishlist-modal" class="modal fade" tabindex="-1" role="dialog" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <span class="modal-title">Necesitas iniciar sesión o crear una cuenta</span> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <section class="login-form"> <p> Guarda productos en tu lista de deseos para comprarlos más tarde o compartirlos con tus amigos.</p> <div class="blocklogin-content-mobile"> <ul class="nav-tabs" id="tabs-login" role="tablist"> <li class="nav-item"> <a class="nav-link active" id="login-tab" href="https://www.penguinlibros.com/es/datos-personales" >Inicia sesión</a> </li> <li class="nav-item"> <a class="nav-link" id="registro-tab" href="https://www.penguinlibros.com/es/iniciar-sesion?create_account=1" >Regístrate</a> </li> </ul> </div> <form id="login-form" action="index.php?controller=authentication&back=my-account" method="post"> <section class="row"> <input type="hidden" name="back" value=""> <div class="form-group align-items-center "> <label class="col-md-2 col-form-label required"> Dirección de correo electrónico </label> <div class="col-md-8"> <input class="form-control" name="email" type="email" value="" required > </div> <div class="col-md-2 form-control-comment"> </div> </div> <div class="form-group align-items-center "> <label class="col-md-2 col-form-label required"> Contraseña </label> <div class="col-md-8"> <div class="input-group js-parent-focus"> <input class="form-control js-child-focus js-visible-password" name="password" title="Longitud de al menos 5 caracteres" autocomplete="new-password" type="password" value="" pattern=".{5,}" required > <span class="input-group-append"> <button class="btn btn-outline-secondary" type="button" data-action="show-password" > <i class="fa fa-eye-slash" aria-hidden="true"></i> </button> </span> </div> </div> <div class="col-md-2 form-control-comment"> </div> </div> <div class="form-group align-items-center "> <label class="col-md-2 col-form-label"> </label> <div class="col-md-8"> <span class="custom-checkbox"> <input name="remember" id="ff_remember" type="checkbox" value="1" > <span><i class="fa fa-check rtl-no-flip checkbox-checked" aria-hidden="true"></i></span> <label for="ff_remember">Recuérdame</label > </span> </div> <div class="col-md-2 form-control-comment"> </div> </div> <div class="forgot-password col-md-12"> <a href="https://www.penguinlibros.com/es/recuperar-contraseña" rel="nofollow"> ¿Has olvidado tu contraseña? </a> </div> </section> <footer class="form-footer text-center clearfix"> <input type="hidden" name="submitLogin" value="1"> <button id="submit-login" class="loginPresta btn btn-primary form-control-submit" data-link-action="sign-in" type="submit"> Iniciar sesión </button> </footer> </form> <div class="espacio"> <span>o</span> </div> </section> <hr/> <div class="no-account"> <a href="https://www.penguinlibros.com/es/iniciar-sesion?create_account=1" data-link-action="display-register-form"> ¿Sin cuenta? Crea uno aquí </a> </div> </div> </div> </div> </div> <div id="iqitwishlist-notification" class="ns-box ns-effect-thumbslider ns-text-only"> <div class="ns-box-inner"> <div class="ns-content"> <span class="ns-title"><i class="fa fa-check" aria-hidden="true"></i> <strong>Añadido a tu lista de deseos</strong></span> </div> </div> </div><script data-cfasync="false" type="text/javascript"> 'use strict'; // Instantiate the tracking class var rcTagManagerLib = new RcTagManagerLib(); // Init page values var controllerName = 'Fragmento'; var compliantModules = {"default":"order","supercheckout":"supercheckout","onepagecheckoutps":"order","sveacheckout":"sveapaypage","thecheckout":"order","steasycheckout":"default"}; var compliantModuleName = 'default'; var skipCartStep = ''; var isOrder = ''; var isCheckout = ''; var isClientId = 0; var gtmProducts; var gtmOrderComplete; //////////////////////////// // set tracking features rcTagManagerLib.trackingFeatures = gtmTrackingFeatures; // set checkout values rcTagManagerLib.controllerName = controllerName; rcTagManagerLib.isCheckout = isCheckout; rcTagManagerLib.compliantModuleName = compliantModuleName; rcTagManagerLib.skipCartStep = skipCartStep; // list names rcTagManagerLib.lists = {"default":"Fragmento","filter":"filtered_results"}; // Google remarketing - page type rcTagManagerLib.ecommPageType = 'other'; // get products list to cache rcTagManagerLib.productsListCache = []; // Listing products /////////////////////////////////////////////// if (!disableInternalTracking) { // Initialize all user events when DOM ready document.addEventListener('DOMContentLoaded', initGtmEvents, false); window.addEventListener('pageshow', fireEventsOnPageShow, false); } function initGtmEvents() { // Events binded on all pages // Events binded to document.body to avoid firefox fire events on right/central click document.body.addEventListener('click', rcTagManagerLib.eventClickPromotionItem, false); //Botones Newsletters var btnNewsletter = document.querySelectorAll('.modalSubscriptionForm'); btnNewsletter.forEach((btn) => btn.addEventListener('click', rcTagManagerLib.eventClickNewsletter, false)); //Botones Menu var Menu = document.getElementById("iqitmegamenu-horizontal"); Menu.addEventListener('click', rcTagManagerLib.eventNavegacionMenu, false); //Menu Movil var MenuMovil = document.getElementById("iqitmegamenu-mobile"); MenuMovil.addEventListener('click', rcTagManagerLib.eventNavegacionMenuMovil, false) if (rcTagManagerLib.trackingFeatures.goals.socialAction) { // bind event on like/follow action rcTagManagerLib.eventSocialFollow(); } //////////////////////// // ALL PAGES EXCEPT CHECKOUT OR ORDER if (!isCheckout && !isOrder) { // bind prestashop events with tracking events prestashop.on( 'updateCart', function (event) { rcTagManagerLib.eventAddCartProduct(event); rcTagManagerLib.eventCartUpdate(event); } ); prestashop.on( 'clickQuickView', function (event) { rcTagManagerLib.eventProductView(event) } ); prestashop.on( 'updatedProduct', function (event) { rcTagManagerLib.eventProductView(event) } ); prestashop.on( 'clickIqitWishlistAdd', function (event) { rcTagManagerLib.eventWishlistProduct() } ); // init first scroll action for those products all ready visible on screen setTimeout(()=>{ rcTagManagerLib.eventScrollList(); // bind event to scroll window.addEventListener('scroll', rcTagManagerLib.eventScrollList.bind(rcTagManagerLib), false); },3000); // init Event Listeners document.body.addEventListener('click', rcTagManagerLib.eventClickProductList, false); document.body.addEventListener('click', rcTagManagerLib.eventGetAddCartQuantity, false); document.body.addEventListener('click', rcTagManagerLib.eventCartQuantityDelete, false); document.body.addEventListener('click', rcTagManagerLib.eventLogin, false); document.body.addEventListener('click', rcTagManagerLib.eventLogout, false); document.body.addEventListener('click', rcTagManagerLib.eventCreateAccount, false); document.body.addEventListener('click', rcTagManagerLib.eventNewsletter, false); document.body.addEventListener('click', rcTagManagerLib.eventUpdateAccount, false); //Sliders setTimeout(()=>{ let Sliders = document.body.querySelectorAll(".slick-slider"); Sliders.forEach((slider)=>{ slider.addEventListener('click', rcTagManagerLib.eventClickCarousel,false); slider.addEventListener('touchstart', rcTagManagerLib.eventTouchStartCarousel,false); slider.addEventListener('touchmove', rcTagManagerLib.eventTouchMoveCarousel,false); slider.addEventListener('touchend', rcTagManagerLib.eventTouchEndCarousel,false); }), 2000 }) if (rcTagManagerLib.trackingFeatures.goals.socialAction) { // bind event to allow track social action on document.body.addEventListener('click', rcTagManagerLib.eventSocialShareProductView, false); } //////////////////////// // SEARCH PAGE if (controllerName === 'search') { rcTagManagerLib.eventSearchResult(); } //////////////////////// // PRODUCT PAGE if (controllerName === 'product') { // send product detail view rcTagManagerLib.eventProductView(); rcTagManagerLib.eventProductPreview(); rcTagManagerLib.eventProductReview(); //Nuevos DataLayer Ficha Producto var btnCompraDirecta = document.querySelector('.add-to-cart.direct'), btnCambioIdioma = document.querySelector('.link_relacionado_manuscrito'), tags = document.querySelectorAll('.tag_lvl2'), descripcion = document.getElementById('product-descripcion'), detalles = document.getElementById('product-details-tab-nav'), btnVerAutor = document.querySelectorAll("#author-follow"), btnResena = document.querySelector(".boton-review"); if(btnCambioIdioma != null) btnCambioIdioma.addEventListener('click', rcTagManagerLib.eventCambioIdioma,false); if(btnCompraDirecta != null) btnCompraDirecta.addEventListener('click', rcTagManagerLib.eventCompraDirecta,false); tags.forEach((tag)=> tag.addEventListener('click', rcTagManagerLib.eventBotonTematicas, false)); btnVerAutor.forEach((btn)=> btn.addEventListener('click', rcTagManagerLib.onVerAutor, false)); descripcion.addEventListener('click', rcTagManagerLib.onVerDescripcion, false); detalles.addEventListener('click', rcTagManagerLib.onVerDetalles, false); btnResena.addEventListener('click', rcTagManagerLib.onClickResena, false); } ////////////////////// //BLOGS if (controllerName == 'single'){ let linkFicha = document.getElementsByClassName('linkFicha'); if(linkFicha !== null){ //Convertimos la Html List a Array let enlaces = [...linkFicha]; enlaces.forEach((lf) => lf.addEventListener('click', rcTagManagerLib.eventLinkFicha, false)); } } } //////////////////////// // CHECKOUT PROCESS if (isCheckout) { // SUMMARY CART if (controllerName === 'cart') { // events on summary Cart document.body.addEventListener('click', rcTagManagerLib.eventCartQuantityDelete, false); document.body.addEventListener('click', rcTagManagerLib.eventCartQuantityUp, false); document.body.addEventListener('click', rcTagManagerLib.eventCartQuantityDown, false); } //////////////////////// // CHECKOUT if (compliantModuleName === 'default' && controllerName === 'order') { // Events on Checkout Process document.body.addEventListener('click', rcTagManagerLib.eventPrestashopCheckout, false); } else if ( compliantModuleName === 'supercheckout' && controllerName === compliantModules[compliantModuleName] ) { // Compatible with super-checkout by Knowband document.body.addEventListener('click', rcTagManagerLib.eventOpcSuperCheckout, false); document.body.addEventListener('click', rcTagManagerLib.eventCartOpcSuperCheckout, false); } else if ( compliantModuleName === 'onepagecheckoutps' && controllerName === compliantModules[compliantModuleName] ) { // compatible with OPC by PrestaTeamShop document.body.addEventListener('click', rcTagManagerLib.eventOpcPrestaTeam, false); document.body.addEventListener('click', rcTagManagerLib.eventCartOpcPrestaTeam, false); } else if ( compliantModuleName === 'thecheckout' && controllerName === compliantModules[compliantModuleName] ) { // Compatible with thecheckout by Zelarg document.body.addEventListener('click', rcTagManagerLib.eventOpcTheCheckout, false); document.body.addEventListener('click', rcTagManagerLib.eventCartOpcTheCheckout, false); } else if ( compliantModuleName === 'steasycheckout' && controllerName === compliantModules[compliantModuleName] ) { // Events for steasycheckout document.body.addEventListener('click', rcTagManagerLib.eventOpcStEasyCheckout, false); document.body.addEventListener('click', rcTagManagerLib.eventCartOpcStEasyCheckout, false); } } } function fireEventsOnPageShow(event){ //rcTagManagerLib.eventPageType(); // rcTagManagerLib.eventUserInfo(); // fixes safari back cache button if (event.persisted) { window.location.reload() } if(window.location.pathname.substring(4) == 'module/lblemailactivation/activation'){ rcTagManagerLib.onConfirmarCuenta(); } // Sign up feature if (rcTagManagerLib.trackingFeatures.goals.signUp && rcTagManagerLib.trackingFeatures.common.isNewSignUp) { rcTagManagerLib.onSignUp(); } if (rcTagManagerLib.trackingFeatures.gua.trackingId && isClientId) { rcTagManagerLib.setClientId(); } // Checkout and order complete if (isCheckout && gtmProducts) { rcTagManagerLib.onCheckoutProducts(gtmProducts); } else if (isOrder && gtmOrderComplete) { rcTagManagerLib.onOrderComplete(gtmOrderComplete); } } </script><script type="text/javascript"> var time_start; $(window).on("load", function (e) { time_start = new Date(); }); $(window).on("unload", function (e) { var time_end = new Date(); var pagetime = new FormData(); pagetime.append("type", "pagetime"); pagetime.append("id_connections", "42938203"); pagetime.append("id_page", "15"); pagetime.append("time_start", "2024-04-26 00:12:30"); pagetime.append("token", "bfca8cc5ac01234f923070e49085c31816224385"); pagetime.append("time", time_end-time_start); pagetime.append("ajax", "1"); navigator.sendBeacon("https://www.penguinlibros.com/es/index.php?controller=statistics", pagetime); }); </script> <button id="back-to-top"> <i class="fa fa-angle-up" aria-hidden="true"></i> </button> <script type="text/javascript" src="/_Incapsula_Resource?SWJIYLWA=719d34d31c8e3a6e6fffd425f7e032f3&ns=2&cb=438157446" async></script></body> </html>