{"id":2873,"date":"2026-10-28T19:39:53","date_gmt":"2026-10-28T18:39:53","guid":{"rendered":"https:\/\/onode.es\/?post_type=project&#038;p=2873"},"modified":"2026-10-28T19:57:16","modified_gmt":"2026-10-28T18:57:16","slug":"enguera","status":"publish","type":"project","link":"https:\/\/onode.es\/ca\/project\/enguera\/","title":{"rendered":"Enguera"},"content":{"rendered":"<div class=\"et_pb_section_0 et_pb_section et_section_regular et_block_section et_animated hero-manchas onode-fluid-section\">\n<div class=\"et_pb_row_0 et_pb_row et_block_row\">\n<div class=\"et_pb_column_0 et_pb_column et_pb_column_4_4 et-last-child et_block_column et_pb_css_mix_blend_mode_passthrough\">\n<div class=\"et_pb_code_0 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><!-- ============================================================\n  EFECTO MANCHAS ANIMADAS \u2014 onode.thelab.es\n  Pegar en un m\u00f3dulo \"C\u00f3digo\" de Divi dentro de la secci\u00f3n hero.\n  La secci\u00f3n debe tener la clase CSS personalizada: hero-manchas\n  ============================================================ -->\n \n<style id=\"blob-style\">\n  .hero-manchas {\n    position: fixed !important;\n    overflow: hidden !important;\n    top: 0px!important;\n  }\n  #blob-canvas-wrapper {\n    position: absolute;\n    inset: 0;\n    pointer-events: none;\n    z-index: 0;\n  }\n  \/* Degradado inferior hacia blanco *\/\n  #blob-canvas-wrapper::after {\n    content: '';\n    position: absolute;\n    bottom: 0; left: 0; right: 0;\n    height: 45%;\n    \/*background: linear-gradient(to bottom, transparent, #91C0DB);*\/\n    pointer-events: none;\n    z-index: 2;\n  }\n  #blob-canvas {\n    width: 100%;\n    height: 100%;\n    display: block;\n    filter: blur(72px) saturate(1.4);\n  }\n  .hero-manchas > *:not(#blob-canvas-wrapper) {\n    position: relative;\n    z-index: 1;\n  }\n<\/style>\n \n<script>\n(function () {\n  function initBlobs() {\n    var hero = document.querySelector('.hero-manchas');\n    if (!hero || document.getElementById('blob-canvas-wrapper')) return;\n \n    \/* --- Canvas --- *\/\n    var wrapper = document.createElement('div');\n    wrapper.id = 'blob-canvas-wrapper';\n    var canvas = document.createElement('canvas');\n    canvas.id = 'blob-canvas';\n    wrapper.appendChild(canvas);\n    hero.insertBefore(wrapper, hero.firstChild);\n \n    var ctx = canvas.getContext('2d');\n    var W, H;\n    function resize() { W = canvas.width = hero.offsetWidth; H = canvas.height = hero.offsetHeight; }\n    resize();\n    window.addEventListener('resize', resize);\n \n    \/* --- Rat\u00f3n: solo activo mientras se mueve --- *\/\n    var mouse = { x: 0, y: 0, active: false };\n    var mouseTimer = null;\n    document.addEventListener('mousemove', function (e) {\n      var rect = hero.getBoundingClientRect();\n      mouse.x = e.clientX - rect.left;\n      mouse.y = e.clientY - rect.top;\n      mouse.active = true;\n      clearTimeout(mouseTimer);\n      mouseTimer = setTimeout(function () { mouse.active = false; }, 300);\n    });\n \n    \/* --- Manchas --- *\/\n    var blobs = [\n      {\n        x: W * 0.28, y: H * 0.45,\n        vx: 1.1, vy: 0.75,\n        r: 680,\n        color: [50, 85, 114], alpha: 0.82,\n        ox: [{ a: 1.4, f: 0.009 }, { a: 0.7, f: 0.017 }],\n        oy: [{ a: 1.0, f: 0.007 }, { a: 0.8, f: 0.013 }],\n        phase: 0,\n        attract: 0.008\n      },\n      {\n        x: W * 0.68, y: H * 0.52,\n        vx: -0.9, vy: 0.85,\n        r: 600,\n        color: [145, 192, 219], alpha: 0.78,\n        ox: [{ a: 1.2, f: 0.008 }, { a: 0.7, f: 0.015 }],\n        oy: [{ a: 1.1, f: 0.011 }, { a: 0.6, f: 0.006 }],\n        phase: 2.5,\n        attract: 0.007\n      }\n    ];\n \n    function drawBlob(b) {\n      var r = b.color[0], g = b.color[1], bl = b.color[2];\n      var grad = ctx.createRadialGradient(b.x, b.y, 0, b.x, b.y, b.r);\n      grad.addColorStop(0,   'rgba('+r+','+g+','+bl+','+b.alpha+')');\n      grad.addColorStop(0.5, 'rgba('+r+','+g+','+bl+','+(b.alpha*0.45)+')');\n      grad.addColorStop(1,   'rgba('+r+','+g+','+bl+',0)');\n      ctx.beginPath();\n      ctx.arc(b.x, b.y, b.r, 0, Math.PI * 2);\n      ctx.fillStyle = grad;\n      ctx.fill();\n    }\n \n    var t = 0;\n    function animate() {\n      t++;\n      ctx.clearRect(0, 0, W, H);\n \n      blobs.forEach(function (b) {\n        \/* Movimiento aut\u00f3nomo: velocidad base + oscilaciones en capas *\/\n        var driftX = b.ox.reduce(function (s, o) { return s + Math.sin(t * o.f + b.phase) * o.a; }, 0);\n        var driftY = b.oy.reduce(function (s, o) { return s + Math.cos(t * o.f + b.phase) * o.a; }, 0);\n        b.x += b.vx + driftX;\n        b.y += b.vy + driftY;\n \n        \/* Atracci\u00f3n solo cuando el rat\u00f3n se est\u00e1 moviendo *\/\n        if (mouse.active) {\n          b.x += (mouse.x - b.x) * b.attract;\n          b.y += (mouse.y - b.y) * b.attract;\n        }\n \n        \/* Rebote suave en bordes *\/\n        var m = b.r * 0.2;\n        if (b.x < m)     { b.x = m;     b.vx =  Math.abs(b.vx); }\n        if (b.x > W - m) { b.x = W - m; b.vx = -Math.abs(b.vx); }\n        if (b.y < m)     { b.y = m;     b.vy =  Math.abs(b.vy); }\n        if (b.y > H - m) { b.y = H - m; b.vy = -Math.abs(b.vy); }\n \n        drawBlob(b);\n      });\n \n      requestAnimationFrame(animate);\n    }\n    animate();\n  }\n \n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', initBlobs);\n  } else {\n    initBlobs();\n  }\n})();\n<\/script><\/div><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_section_1 et_pb_section et_section_regular et_flex_section et_animated\">\n<div class=\"et_pb_row_1 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_1 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_0 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><h1>Ajuntament d\u2019Enguera (Val\u00e8ncia)<\/h1>\n<\/div><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_section_2 et_pb_section et_section_regular et_flex_section\">\n<div class=\"et_pb_row_2 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_2 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_1 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Seguretat i solv\u00e8ncia tecnol\u00f2gica per a processos participatius d'alta exig\u00e8ncia<\/p>\n<\/div><\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_row_3 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_3 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_12_24 et_flex_column_12_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_2 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Enguera, un municipi caracteritzat per una forta implicaci\u00f3 ve\u00efnal, fa un pas avant en el seu model de govern obert amb la implantaci\u00f3 d'Ada. L'Ajuntament ha fet la transici\u00f3 des d'un espai de participaci\u00f3 limitat cap a una plataforma robusta que prioritza la integritat dels actius digitals, garantint que cada proc\u00e9s participatiu, per complex que siga, es duga a terme amb m\u00e0xima seguretat i rigor.<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_4 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_12_24 et_flex_column_12_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_image_0 et_pb_image et_pb_module et_flex_module\"><span class=\"et_pb_image_wrap\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/onode.es\/wp-content\/uploads\/2026\/10\/enguera.jpg\" title=\"enguera\" width=\"1200\" height=\"350\" srcset=\"https:\/\/onode.es\/wp-content\/uploads\/2026\/10\/enguera.jpg 1200w, https:\/\/onode.es\/wp-content\/uploads\/2026\/10\/enguera-980x286.jpg 980w, https:\/\/onode.es\/wp-content\/uploads\/2026\/10\/enguera-480x140.jpg 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1200px, 100vw\" class=\"wp-image-2876\" \/><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_section_3 et_pb_section et_section_regular et_flex_section\">\n<div class=\"et_pb_row_4 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_5 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_8_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_3 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>El repte<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_6 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_8_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_4 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>El repte<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_7 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_18_24 et_flex_column_8_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_5 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>El municipi ja comptava amb una ciutadania molt activa i participativa, per\u00f2 les eines pr\u00e8vies presentaven limitacions t\u00e8cniques per a assumir processos m\u00e9s exigents i complexos.<\/p>\n<p>Existia la necessitat vital de blindar la seguretat en cada interacci\u00f3 per a evitar duplicitats i garantir que cada vot o proposta f\u00f3ra 100% aut\u00e8ntic i leg\u00edtim.<\/p>\n<p>L'Ajuntament buscava fer una transici\u00f3 cap a un entorn digital m\u00e9s avan\u00e7at, que permetera gestionar diferents tipus de consultes i pressupostos participatius sense perdre fiabilitat ni accessibilitat per al ve\u00efnat.<\/p>\n<\/div><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_section_4 et_pb_section et_section_regular et_flex_section\">\n<div class=\"et_pb_row_5 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_8 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_6_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_6 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>La soluci\u00f3<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_9 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_8_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_7 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>La soluci\u00f3<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_10 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_18_24 et_flex_column_18_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_8 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>Implantaci\u00f3 d'Ada com a plataforma central de participaci\u00f3 ciutadana, dissenyada per a suportar processos d'alta exig\u00e8ncia amb els m\u00e0xims est\u00e0ndards de ciberseguretat.<\/p>\n<p>Integraci\u00f3 de mecanismes de validaci\u00f3 avan\u00e7ats: verificaci\u00f3 en temps real amb el padr\u00f3 municipal i sistemes d'autenticaci\u00f3 de doble factor (2FA) per a autoritzar cada participaci\u00f3.<\/p>\n<p>Incorporaci\u00f3 d'eines visuals i interactives, com la ubicaci\u00f3 geolocalitzada de les propostes directament sobre el mapa del municipi, facilitant el context i la comprensi\u00f3 dels projectes.<\/p>\n<\/div><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<div class=\"et_pb_section_5 et_pb_section et_section_regular et_flex_section\">\n<div class=\"et_pb_row_6 et_pb_row et_flex_row\">\n<div class=\"et_pb_column_11 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_6_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_9 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>L\u2019impacte<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_12 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_6_24 et_flex_column_8_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_10 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>L\u2019impacte<\/p>\n<\/div><\/div>\n<\/div>\n\n<div class=\"et_pb_column_13 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_18_24 et_flex_column_18_24_tablet et_flex_column_24_24_phone\">\n<div class=\"et_pb_text_11 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\"><div class=\"et_pb_text_inner\"><p>L'administraci\u00f3 guanya una solv\u00e8ncia t\u00e8cnica absoluta, amb la capacitat d'abordar qualsevol tipus de proc\u00e9s participatiu en un entorn digital totalment segur i governat.<\/p>\n<p>Es legitimen els resultats de cada consulta: la ciutadania t\u00e9 la certesa que el sistema \u00e9s rigor\u00f3s, auditable i que la seua identitat est\u00e0 protegida.<\/p>\n<p>Enguera consolida el seu model de participaci\u00f3 ciutadana, combinant l'alta mobilitzaci\u00f3 del seu ve\u00efnat amb una tecnologia que aporta confian\u00e7a, transpar\u00e8ncia i seguretat jur\u00eddica a cada pas.<\/p>\n<\/div><\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":2,"featured_media":2876,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"project_category":[],"project_tag":[],"class_list":["post-2873","project","type-project","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project\/2873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project"}],"about":[{"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/types\/project"}],"author":[{"embeddable":true,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/comments?post=2873"}],"version-history":[{"count":6,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project\/2873\/revisions"}],"predecessor-version":[{"id":2889,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project\/2873\/revisions\/2889"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/media\/2876"}],"wp:attachment":[{"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/media?parent=2873"}],"wp:term":[{"taxonomy":"project_category","embeddable":true,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project_category?post=2873"},{"taxonomy":"project_tag","embeddable":true,"href":"https:\/\/onode.es\/ca\/wp-json\/wp\/v2\/project_tag?post=2873"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}