fix: reframe greeting as a heartfelt birthday encore
Validate and publish Pages / pages (push) Failing after 6s
Validate and publish Pages / pages (push) Failing after 6s
This commit is contained in:
+28
-28
@@ -4,9 +4,9 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="theme-color" content="#ef2b2d">
|
||||
<meta name="description" content="2026 metų gimtadienio sveikinimas Donatui Šimkui – DŪMUI. Šiandien mikrofoną perduok mums!">
|
||||
<meta name="description" content="Netikėtas 2026 metų gimtadienio sveikinimo bisas Donatui Šimkui – DŪMUI.">
|
||||
<meta property="og:title" content="Su gimtadieniu, Donatai!">
|
||||
<meta property="og:description" content="Kur DŪMAS, ten ir gera nuotaika. Šiandien visa scena – tau.">
|
||||
<meta property="og:description" content="Gimtadienis praėjo. Geras sveikinimas – dar ne. Bisui kviečiamas Donatas!">
|
||||
<meta property="og:image" content="assets/donatas-gitara.jpg">
|
||||
<title>Donatas Šimkus — 2026 gimtadienio sveikinimas</title>
|
||||
<link rel="preload" href="assets/donatas-hero.jpg" as="image">
|
||||
@@ -24,32 +24,32 @@
|
||||
<main id="top">
|
||||
<section class="hero" aria-labelledby="heroTitle">
|
||||
<div class="hero-copy">
|
||||
<p class="kicker">VIENAS VAKARAS / VIENAS JUBILIATAS / NULIS NUOBODULIO</p>
|
||||
<h1 id="heroTitle">DONATAI,<br><em>MIKROFONĄ</em><br>PERDUOK MUMS!</h1>
|
||||
<p class="lead">15+ metų kuri kitų žmonių šventes. Šiandien visa scena, muzika ir garsiausi aplodismentai — <strong>tau.</strong></p>
|
||||
<button class="start" id="startButton" type="button"><span>DAVAI DAVAI — ŠVENČIAM!</span><b aria-hidden="true">▶</b></button>
|
||||
<small>Paspausk. Programa suderinta, tortas patvirtintas.</small>
|
||||
<p class="kicker">GIMTADIENIS PRAĖJO / SVEIKINIMAS ATVYKO BISUI / NULIS NUOBODULIO</p>
|
||||
<h1 id="heroTitle">DONATAI,<br>GIMTADIENIS PRAĖJO.<br><em>BISAS — NE.</em></h1>
|
||||
<p class="lead">Kalendorius sako, kad data jau praėjo. Mes sakome: geri sveikinimai nevėluoja — jie tiesiog <strong>ateina bisui.</strong></p>
|
||||
<button class="start" id="startButton" type="button"><span>ATIDARYTI SVEIKINIMO BISĄ</span><b aria-hidden="true">▶</b></button>
|
||||
<small>Paspausk. Torto gal ir neliko, bet plojimų — sočiai.</small>
|
||||
</div>
|
||||
<figure class="hero-photo">
|
||||
<img src="assets/donatas-hero.jpg" width="1344" height="1344" alt="Donatas Šimkus – DŪMAS, pasipuošęs kostiumu">
|
||||
<figcaption><span>VAKARO ŽVAIGŽDĖ</span><span>DONATAS ŠIMKUS</span></figcaption>
|
||||
<figcaption><span>ŠIO PUSLAPIO ŽVAIGŽDĖ</span><span>DONATAS ŠIMKUS</span></figcaption>
|
||||
</figure>
|
||||
</section>
|
||||
|
||||
<div class="marquee" aria-label="Šventės programa">
|
||||
<div class="marquee-track">
|
||||
<span>KUR DŪMAS — TEN GERA NUOTAIKA</span><b>★</b><span>700+ RENGINIŲ APŠILIMAS BAIGTAS</span><b>★</b><span>PLANAS D: DONATAS</span><b>★</b><span>ŠIANDIEN SCENARIJŲ RAŠOME MES</span><b>★</b>
|
||||
<span>KUR DŪMAS — TEN GERA NUOTAIKA</span><b>★</b><span>700+ RENGINIŲ APŠILIMAS BAIGTAS</span><b>★</b><span>PLANAS D: DONATAS</span><b>★</b><span>ŠIANDIEN SCENARIJŲ RAŠOME MES</span><b>★</b>
|
||||
<span>KUR DŪMAS — TEN GERA NUOTAIKA</span><b>★</b><span>700+ RENGINIŲ APŠILIMAS BAIGTAS</span><b>★</b><span>PLANAS D: DONATAS</span><b>★</b><span>GERI SVEIKINIMAI TURI BISĄ</span><b>★</b>
|
||||
<span>KUR DŪMAS — TEN GERA NUOTAIKA</span><b>★</b><span>700+ RENGINIŲ APŠILIMAS BAIGTAS</span><b>★</b><span>PLANAS D: DONATAS</span><b>★</b><span>GERI SVEIKINIMAI TURI BISĄ</span><b>★</b>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="numbers" aria-labelledby="numbersTitle">
|
||||
<div class="section-label">DONATO LIVE STATISTICS*</div>
|
||||
<div class="section-label">DONATO SCENINĖ MATEMATIKA*</div>
|
||||
<h2 id="numbersTitle">SCENA KALBA<br>PATI UŽ SAVE.</h2>
|
||||
<div class="number-grid">
|
||||
<article><span>01</span><strong data-count="15">0</strong><b>+ METŲ</b><p>Kuriant šventės atmosferą</p></article>
|
||||
<article><span>02</span><strong data-count="700">0</strong><b>+ RENGINIŲ</b><p>Ir nė vienas nebuvo kaip šis</p></article>
|
||||
<article><span>03</span><strong>1</strong><b>JUBILIATAS</b><p>Šiandien svarbesnis už programą</p></article>
|
||||
<article><span>03</span><strong>1</strong><b>DONATAS</b><p>Vertas atskiro interneto puslapio</p></article>
|
||||
<article><span>04</span><strong>∞</strong><b>ENERGIJOS</b><p>Oficialiai neišmatuojama</p></article>
|
||||
</div>
|
||||
<small>* Faktai apie patirtį — iš viešo Donato profilio. Šventiniai matavimo vienetai — mūsų.</small>
|
||||
@@ -58,24 +58,24 @@
|
||||
<section class="switch" aria-labelledby="switchTitle">
|
||||
<div class="switch-photo"><img src="assets/donatas-gitara.jpg" width="600" height="600" alt="Donatas su raudona gitara ir žvaigždės formos akiniais"></div>
|
||||
<div class="switch-copy">
|
||||
<p class="kicker">TONIGHT'S HEADLINER</p>
|
||||
<h2 id="switchTitle">700+ RENGINIŲ.<br>ŠIANDIEN —<br><em>PAČIAM ŠVĘSTI.</em></h2>
|
||||
<p>Pagaliau renginys, kuriame vedėjui leidžiama atsisėsti. Nebent publika paprašys biso. O publika, žinoma, paprašys.</p>
|
||||
<p class="kicker">THE ENCORE HEADLINER</p>
|
||||
<h2 id="switchTitle">700+ RENGINIŲ.<br>DABAR —<br><em>SVEIKINIMAS TAU.</em></h2>
|
||||
<p>Tiek kartų kūrei progą šypsotis kitiems, kad vieno sveikinimo dieną mums pasirodė per maža. Todėl štai — papildomas numeris programoje.</p>
|
||||
<a class="video-link" href="https://www.youtube.com/watch?v=lBpCDIzYkSA" target="_blank" rel="noreferrer">PALEISTI „DAVAI DAVAI“ ↗</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="package" aria-labelledby="packageTitle">
|
||||
<div class="package-heading">
|
||||
<p class="kicker">PREMIUM BIRTHDAY PACKAGE</p>
|
||||
<h2 id="packageTitle">ŠIANDIENOS<br>PASLAUGOS</h2>
|
||||
<p class="kicker">PREMIUM GREETING ENCORE</p>
|
||||
<h2 id="packageTitle">PAVĖLUOTAS? NE.<br>PRATĘSTAS.</h2>
|
||||
</div>
|
||||
<ol>
|
||||
<li><b>01</b><span>Priimti sveikinimus</span><i>ĮSKAIČIUOTA</i></li>
|
||||
<li><b>02</b><span>Nesirūpinti scenarijumi</span><i>PRIVALOMA</i></li>
|
||||
<li><b>02</b><span>Nesirūpinti sveikinimo data</span><i>PRIVALOMA</i></li>
|
||||
<li><b>03</b><span>Patikrinti torto kokybę</span><i>NERIBOTA</i></li>
|
||||
<li><b>04</b><span>Atlikti dainą tik publikos prašymu</span><i>BISAS GALIMAS</i></li>
|
||||
<li><b>05</b><span>Švęsti nuo pirmos iki paskutinės minutės</span><i>100 %</i></li>
|
||||
<li><b>05</b><span>Priimti netikėtą sveikinimo bisą</span><i>100 %</i></li>
|
||||
</ol>
|
||||
</section>
|
||||
|
||||
@@ -87,11 +87,11 @@
|
||||
<section class="rap" aria-labelledby="rapTitle">
|
||||
<div>
|
||||
<p class="kicker">SPECIAL BIRTHDAY FREESTYLE</p>
|
||||
<h2 id="rapTitle">APIE SVEČIUS REPAVAI.<br><em>ŠIANDIEN REPAS — APIE TAVE.</em></h2>
|
||||
<h2 id="rapTitle">APIE SVEČIUS REPAVAI.<br><em>O DABAR REPAS — APIE TAVE.</em></h2>
|
||||
</div>
|
||||
<blockquote id="rapText">
|
||||
<span>Septyni šimtai švenčių — visur gera banga,</span>
|
||||
<span>Bet šiandien, Donatai, svarbiausia tik viena:</span>
|
||||
<span>Nors data praėjo, svarbiausia tik viena:</span>
|
||||
<span>Mikrofoną padėk, tegul draugai garsiai taria —</span>
|
||||
<span>Su gimtadieniu, DŪMAI, tegu scena tau dar žaria!</span>
|
||||
</blockquote>
|
||||
@@ -99,20 +99,20 @@
|
||||
</section>
|
||||
|
||||
<section class="wish" id="sveikinimas" aria-labelledby="wishTitle">
|
||||
<p class="kicker">O DABAR — BE SCENARIJAUS</p>
|
||||
<p class="kicker">O DABAR — NUOŠIRDŽIAI, BE TELEPROMPTERIO</p>
|
||||
<h2 id="wishTitle">SU GIMTADIENIU,<br><em>DONATAI!</em></h2>
|
||||
<div class="wish-grid">
|
||||
<p>Linkime, kad gyvenime netrūktų tos pačios šilumos, energijos ir gero humoro, kuriuos daliji kitų žmonių šventėse.</p>
|
||||
<p>Tegul kiekviena nauja diena būna dar vienas puikus renginys — tik šįkart be būtinybės pačiam rašyti visą scenarijų.</p>
|
||||
<p>Daug sveikatos, stiprių žmonių šalia, garsaus juoko, geros muzikos ir istorijų, vertų ne vieno biso.</p>
|
||||
<p>Donatai, gimtadienis gal ir praėjo, bet geri žmonės ir geri palinkėjimai į vieną kalendoriaus langelį netelpa. Linkime, kad šiluma, energija ir humoras, kuriuos taip dosniai daliji kitiems, visada sugrįžtų su kaupu.</p>
|
||||
<p>Tegul sveikata laiko tvirčiau už geriausią scenos konstrukciją, šalia būna žmonės, su kuriais gera ir per garsiausią vakarėlį, ir visiškoje tyloje, o darbai palieka ne tik pilnas sales, bet ir pilną širdį.</p>
|
||||
<p>Ir tegul gyvenimas kuo dažniau maloniai sulaužo scenarijų: atneša netikėtų kelionių, skambių dainų, gardžių rytų be žadintuvo ir progų, kuriose tau pačiam nieko nereikia vesti — tik būti, juoktis ir mėgautis.</p>
|
||||
</div>
|
||||
<div class="signature"><strong>SU GIMTADIENIU!</strong><span>2026 / MADE WITH RESPECT + APPLAUSE</span></div>
|
||||
</section>
|
||||
|
||||
<section class="encore" aria-label="Pakartoti sveikinimą">
|
||||
<p>AR DONATAS VERTAS BISO?</p>
|
||||
<p>AR GERAS SVEIKINIMAS VERTAS BISO?</p>
|
||||
<h2 id="encoreTitle">PUBLIKA SAKO:<br><em>TAIP!</em></h2>
|
||||
<button class="encore-button" id="encoreButton" type="button">DAR KARTĄ KONFETI ↗</button>
|
||||
<button class="encore-button" id="encoreButton" type="button">PALEISTI BISĄ DAR KARTĄ ↗</button>
|
||||
</section>
|
||||
</main>
|
||||
|
||||
@@ -121,7 +121,7 @@
|
||||
<p>Viešų faktų ir nuotraukų šaltinis: <a href="https://vedejasdumas.lt/" rel="noreferrer">vedejasdumas.lt</a></p>
|
||||
<p>Nuotraukų teisės priklauso jų autoriams / savininkams.</p>
|
||||
</footer>
|
||||
<div class="toast" id="toast" role="status" aria-live="polite">ŠVENTĖ PALEISTA — PLOJIMAI DONATUI!</div>
|
||||
<div class="toast" id="toast" role="status" aria-live="polite">SVEIKINIMO BISAS PARUOŠTAS</div>
|
||||
<script src="script.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -4,7 +4,7 @@ function piece(x,y,i){const a=-Math.PI*.9+(i%50)/49*Math.PI*.8,s=7+Math.random()
|
||||
function burst(x=innerWidth/2,y=innerHeight*.7){if(reduced.matches)return;for(let i=0;i<220;i++)pieces.push(piece(x,y,i));if(!frame)animate()}
|
||||
function animate(){ctx.clearRect(0,0,innerWidth,innerHeight);pieces=pieces.filter(p=>p.life>0&&p.y<innerHeight+90);pieces.forEach(p=>{p.vx*=p.d;p.vy=p.vy*p.d+p.g;p.x+=p.vx;p.y+=p.vy;p.r+=p.spin;p.life--;ctx.save();ctx.translate(p.x,p.y);ctx.rotate(p.r);ctx.fillStyle=p.color;ctx.strokeStyle='#080808';ctx.lineWidth=1;if(p.shape===0){ctx.fillRect(-p.size/2,-p.size/4,p.size,p.size/2);ctx.strokeRect(-p.size/2,-p.size/4,p.size,p.size/2)}else if(p.shape===1){ctx.beginPath();ctx.moveTo(0,-p.size/2);ctx.lineTo(p.size/2,p.size/2);ctx.lineTo(-p.size/2,p.size/2);ctx.closePath();ctx.fill();ctx.stroke()}else{ctx.fillRect(-p.size/3,-p.size/2,p.size*.66,p.size)}ctx.restore()});if(pieces.length)frame=requestAnimationFrame(animate);else{frame=null;ctx.clearRect(0,0,innerWidth,innerHeight)}}
|
||||
function count(){document.querySelectorAll('[data-count]').forEach(el=>{const target=+el.dataset.count;if(+el.textContent===target)return;let v=0,step=Math.max(1,Math.ceil(target/55));function tick(){v=Math.min(target,v+step);el.textContent=v;if(v<target)requestAnimationFrame(tick)}tick()})}
|
||||
function showToast(text='ŠVENTĖ PALEISTA — PLOJIMAI DONATUI!'){clearTimeout(toastTimer);toast.textContent=text;toast.classList.add('visible');toastTimer=setTimeout(()=>toast.classList.remove('visible'),3200)}
|
||||
function launch(e){document.body.classList.add('started');liveText.textContent='TIESIOGINIS ETERIS';start.querySelector('span').textContent='ŠVENTĖ PALEISTA!';const r=e?.currentTarget?.getBoundingClientRect();burst(r?r.left+r.width/2:innerWidth/2,r?r.top:innerHeight*.7);count();showToast()}
|
||||
function showToast(text='SVEIKINIMO BISAS PALEISTAS — PLOJIMAI DONATUI!'){clearTimeout(toastTimer);toast.textContent=text;toast.classList.add('visible');toastTimer=setTimeout(()=>toast.classList.remove('visible'),3200)}
|
||||
function launch(e){document.body.classList.add('started');liveText.textContent='BISAS PALEISTAS';start.querySelector('span').textContent='SVEIKINIMO BISAS ATIDARYTAS!';const r=e?.currentTarget?.getBoundingClientRect();burst(r?r.left+r.width/2:innerWidth/2,r?r.top:innerHeight*.7);count();showToast()}
|
||||
function rap(){clearInterval(rapTimer);const lines=[...document.querySelectorAll('#rapText span')];lines.forEach(x=>x.classList.remove('active'));let i=0;const next=()=>{if(i<lines.length)lines[i++].classList.add('active');else clearInterval(rapTimer)};next();rapTimer=setInterval(next,650);showToast('REPAS DONATUI — PUBLIKA PRAŠO BISO!')}
|
||||
start.addEventListener('click',launch);encore.addEventListener('click',launch);rapButton.addEventListener('click',e=>{rap();const r=e.currentTarget.getBoundingClientRect();burst(r.left+r.width/2,r.top)});addEventListener('resize',resize,{passive:true});resize();const observer=new IntersectionObserver(entries=>{if(entries.some(x=>x.isIntersecting)){count();observer.disconnect()}},{threshold:.3});observer.observe(document.querySelector('.numbers'));})();
|
||||
|
||||
Reference in New Issue
Block a user