{"id":125,"date":"2026-04-12T09:04:17","date_gmt":"2026-04-12T09:04:17","guid":{"rendered":"https:\/\/www.ti0ati.org\/?page_id=125"},"modified":"2026-04-26T14:23:35","modified_gmt":"2026-04-26T14:23:35","slug":"qsocard","status":"publish","type":"page","link":"https:\/\/www.ti0ati.org\/?page_id=125","title":{"rendered":"QSLCards"},"content":{"rendered":"\n<style>\n    \/* Estilos para asegurar visibilidad de secciones *\/\n    .seccion-evento { \n        margin-bottom: 50px; \n        padding-top: 20px; \n        clear: both; \n        display: block !important;\n    }\n    .titulo-evento { \n        color: #ffffff !important; \n        font-family: sans-serif !important; \n        text-transform: uppercase !important; \n        margin-bottom: 25px !important; \n        font-size: 22px !important; \n        font-weight: bold !important;\n        line-height: 1.4 !important;\n        display: block !important;\n        background: #0073aa; \/* Fondo s\u00f3lido para que destaque *\/\n        padding: 15px;\n        border-radius: 5px;\n    }\n    .buscador-contenedor { \n        position: sticky; \n        top: 0; \n        z-index: 999; \n        background: white; \n        padding: 15px 0; \n        border-bottom: 2px solid #0073aa;\n        margin-bottom: 20px;\n    }\n    .grid-qsl { \n        display: grid; \n        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); \n        gap: 20px; \n    }\n    .qsl-card { \n        text-align:center; \n        border:1px solid #ddd; \n        border-radius:10px; \n        padding:15px; \n        background:#fdffdf; \n        box-shadow: 0 2px 5px rgba(0,0,0,0.1);\n    }\n    .btn-download { \n        display: inline-block; \n        background-color: #28a745; \/* Verde para diferenciar la acci\u00f3n de descarga *\/\n        color: white !important; \n        padding: 8px 20px; \n        text-decoration: none !important; \n        border-radius: 4px; \n        font-size: 14px; \n        font-weight: bold;\n        margin-top: 10px;\n        transition: background 0.3s;\n    }\n    .btn-download:hover {\n        background-color: #218838;\n    }\n<\/style>\n\n<div class=\"buscador-contenedor\">\n    <input type=\"text\" id=\"qslSearch\" onkeyup=\"filterQSLs()\" placeholder=\"Escribe el indicativo aqu\u00ed...\" \n           style=\"width:100%; padding:15px; font-size:16px; border:1px solid #0073aa; border-radius:5px;\">\n<\/div>\n\n<div id=\"eventos-container\"><\/div>\n\n<script>\n    const eventos = [\n        {\n            nombre: \"Activaci\u00f3n D\u00eda del Parkinson\",\n            ruta: \"http:\/\/www.ti0ati.org\/wp-content\/uploads\/QSL\/e1\/\",\n            imagenes: [\n                \"CA3CZU.jpg\", \"TI2ABB.jpg\", \"TI2ASC.jpg\", \"TI2CJJ.jpg\", \"TI2CVJ.jpg\", \n                \"TI2EMG.jpg\", \"TI2FM.jpg\", \"TI2FRN.jpg\", \"TI2IOS.jpg\", \"TI2OFO.jpg\", \n                \"TI2OX.jpg\", \"TI2VLM.jpg\", \"TI2YO.jpg\", \"TI3DK.jpg\", \"TI3JKS.jpg\", \n                \"TI3JVH.jpg\", \"TI3RKM.jpg\", \"TI3RR.jpg\", \"TI3TBT.jpg\", \"TI3WTI.jpg\", \n                \"TI4FBL.jpg\", \"TI4HBR.jpg\", \"TI4LTC.jpg\", \"TI4MSR.jpg\", \"TI4NJ.jpg\", \n                \"TI4OVR.jpg\", \"TI5CBR.jpg\", \"TI5FSP.jpg\", \"TI5GAA.jpg\", \"TI5HCM.jpg\", \n                \"TI6ZK.jpg\", \"TI7JCC.jpg\", \"TI7JLA.jpg\", \"TI8OJQ.jpg\"\n            ]\n        },\n        {\n            nombre: \"Activaci\u00f3n D\u00eda del Radioaficionado\",\n            ruta: \"http:\/\/www.ti0ati.org\/wp-content\/uploads\/QSL\/e2\/\",\n            imagenes: [\n                \"CA3PHX_80.jpg\", \"CD4PIK_78.jpg\", \"CE3VNA_85.jpg\", \"CX4AV_97.jpg\", \"HC5RF_88.jpg\", \n                \"HJ3REM_92.jpg\", \"KQ3Q_0.jpg\", \"KQ3Q_89.jpg\", \"LU2DXB_1.jpg\", \"LW1HDI_74.jpg\", \n                \"OA4DEX_86.jpg\", \"OA4DPM_93.jpg\", \"OA4DVC_94.jpg\", \"PU1VMA_87.jpg\", \"PU1XDX_82.jpg\", \n                \"PY2KWG_75.jpg\", \"PY2MHC_96.jpg\", \"PY2YM_79.jpg\", \"TI0ARC_2.jpg\", \"TI2ACS_64.jpg\", \n                \"TI2ASC_3.jpg\", \"TI2BMT_4.jpg\", \"TI2CDC_5.jpg\", \"TI2CHJ_6.jpg\", \"TI2CLA_69.jpg\", \n                \"TI2CPU_7.jpg\", \"TI2CVJ_8.jpg\", \"TI2EMG_9.jpg\", \"TI2FM_10.jpg\", \"TI2FRN_11.jpg\", \n                \"TI2FVC_12.jpg\", \"TI2GMJ_71.jpg\", \"TI2ICE_13.jpg\", \"TI2IOS_14.jpg\", \"TI2MCS_15.jpg\", \n                \"TI2MCS_72.jpg\", \"TI2NSV_16.jpg\", \"TI2OFO_17.jpg\", \"TI2OX_18.jpg\", \"TI2RBR_19.jpg\", \n                \"TI2ROL_20.jpg\", \"TI2STB_67.jpg\", \"TI2SYS_21.jpg\", \"TI2VLM_22.jpg\", \"TI2VPC_23.jpg\", \n                \"TI2XEM_24.jpg\", \"TI3ATS_25.jpg\", \"TI3ATS_81.jpg\", \"TI3BCJ_26.jpg\", \"TI3DSA_27.jpg\", \n                \"TI3JKS_28.jpg\", \"TI3JKS_73.jpg\", \"TI3JVH_29.jpg\", \"TI3MRE_30.jpg\", \"TI3NEL_31.jpg\", \n                \"TI3OBC_32.jpg\", \"TI3OPD_33.jpg\", \"TI3RKM_34.jpg\", \"TI3WTI_35.jpg\", \"TI3YAM_36.jpg\", \n                \"TI4FVB_37.jpg\", \"TI4GO_38.jpg\", \"TI4HVD_39.jpg\", \"TI4JEV_40.jpg\", \"TI4JVC_68.jpg\", \n                \"TI4KSC_41.jpg\", \"TI4LTC_70.jpg\", \"TI4MHS_42.jpg\", \"TI4MSR_43.jpg\", \"TI4MUM_44.jpg\", \n                \"TI4NJ_45.jpg\", \"TI4WAV_46.jpg\", \"TI4WCM_47.jpg\", \"TI5CAM_48.jpg\", \"TI5CBR_49.jpg\", \n                \"TI5CDA_65.jpg\", \"TI5DLF_50.jpg\", \"TI5EHJ_51.jpg\", \"TI5FOX_52.jpg\", \"TI5FSP_53.jpg\", \n                \"TI5FVP_54.jpg\", \"TI5GAA_55.jpg\", \"TI5GAX_56.jpg\", \"TI5HCM_57.jpg\", \"TI5HCM_90.jpg\", \n                \"TI5JCJ_66.jpg\", \"TI5JSS_58.jpg\", \"TI5LEV_59.jpg\", \"TI5MAR_60.jpg\", \"TI5WLR_61.jpg\", \n                \"TI7JLA_62.jpg\", \"TI8RJA_63.jpg\", \"XE1AQY_91.jpg\", \"XE1UYS_76.jpg\", \"XE2CRM_77.jpg\", \n                \"YV4GE_95.jpg\", \"ZP1HTW_83.jpg\", \"ZP5DNB_84.jpg\"\n            ]\n        }\n    ];\n\n    const container = document.getElementById('eventos-container');\n\n    eventos.forEach(evento => {\n        const section = document.createElement('div');\n        section.className = 'seccion-evento';\n        section.innerHTML = `<h2 class=\"titulo-evento\">${evento.nombre}<\/h2>`;\n\n        const grid = document.createElement('div');\n        grid.className = 'grid-qsl';\n\n        evento.imagenes.forEach(img => {\n            let rawName = img.split('.')[0];\n            let displayCallsign = rawName.includes('_') ? rawName.split('_')[0] : rawName;\n\n            const card = document.createElement('div');\n            card.className = 'qsl-card';\n            card.setAttribute('data-callsign', displayCallsign.toUpperCase());\n            \n            card.innerHTML = `\n                <div style=\"margin-bottom:10px;\">\n                    <img decoding=\"async\" src=\"${evento.ruta}${img}\" style=\"width:100%; height:auto; border-radius:5px;\" alt=\"QSL ${displayCallsign}\">\n                <\/div>\n                <div style=\"font-weight:bold; font-family:Arial, sans-serif; color:#333; font-size:16px;\">${displayCallsign}<\/div>\n                <a href=\"${evento.ruta}${img}\" download=\"QSL_${rawName}.jpg\" class=\"btn-download\">\n                    Descargar\n                <\/a>\n            `;\n            grid.appendChild(card);\n        });\n\n        section.appendChild(grid);\n        container.appendChild(section);\n    });\n\n    function filterQSLs() {\n        let input = document.getElementById('qslSearch').value.toUpperCase().trim();\n        let cards = document.getElementsByClassName('qsl-card');\n        let sections = document.getElementsByClassName('seccion-evento');\n\n        for (let i = 0; i < cards.length; i++) {\n            let callsign = cards[i].getAttribute('data-callsign');\n            cards[i].style.display = callsign.includes(input) ? \"\" : \"none\";\n        }\n\n        for (let s = 0; s < sections.length; s++) {\n            let visibleCards = sections[s].querySelectorAll('.qsl-card:not([style*=\"display: none\"])');\n            sections[s].style.display = visibleCards.length > 0 ? \"\" : \"none\";\n        }\n    }\n<\/script>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-125","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/pages\/125","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=125"}],"version-history":[{"count":24,"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/pages\/125\/revisions"}],"predecessor-version":[{"id":156,"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=\/wp\/v2\/pages\/125\/revisions\/156"}],"wp:attachment":[{"href":"https:\/\/www.ti0ati.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=125"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}