Pārbaudi etiķeti un reālos apstākļus. Prognoze neparāda legingu ūdensnecaurlaidību vai siltumizolāciju.
Izpēti laika apstākļus detalizēti
Skati stundas prognozes, praktisku apģērbu sarakstu un ASV oficiālos brīdinājumus. Mēs ielādējam tikai to, ko tu pieprasi.
📈 Stundas un nākamās 7 dienas
Temperatūra, mitrums, lietus, UV starojums skaidrā laikā un vējš.
🎒 Saraksts iziešanai atbilstoši laikam
Sagatavo sarakstu, izmantojot saglabāto prognozi, bez papildu pirkumiem vai zvaniem.
⚠️ ASV oficiālie brīdinājumi
Spēkā esošie National Weather Service brīdinājumi ASV pilsētām.
Avoti: MET Norway, PlaceDB (CC0) un NWS. Saraksts izmanto kešotās prognozes, nevis apģērbu testus.
Kā tiek sagatavots ieteikums
Mēs apvienojam prognozi ar tavām izvēlēm, neizdomājot apģērba īpašības.
Reāla laika prognoze
Temperatūra, pieejamā jūtamā temperatūra, vējš un nokrišņi no MET Norway.
Tavi legingi
Norādi, vai tie ir viegli, parasti vai termoveļas. Tas nav laboratorijas tests.
Tava aktivitāte
Pilsētas pārvietošanās un gara pastaiga prasa dažādas kārtas.
Ko vilkt kopā ar legingiem, kad ir auksti, līst vai pūš vējš
Vispirms pārbaudi reālo prognozi. Pielāgo kārtas temperatūrai, lietum, vējam un laikapstākļiem ārā. Šķiedru procentuālais daudzums neparāda, cik silti tie ir.
❄️
Legingu komplekti aukstam laikam
Īsā maršrutā var derēt parasti legingi, džemperis un virsjaka. Pie nulles grādiem vai garā pastaigā apsver īstu siltumu un ārējo kārtu. Valkā slēgtus apavus ar labu saķeri.
🌧️
Ko vilkt kopā ar legingiem, ja līst
Lielākā daļa legingu nav ūdensnecaurlaidīgi. Pievieno ūdensizturīgu ārējo kārtu, slēgtus apavus ar labu zoli un drēbes, ko vari novilkt telpās.
🌬️
Vēja vai mērena laika dienas
Vējā svarīgāka var būt vēju necaurlaidīga jaka nekā šķiedru nosaukums. Mērenā laikā izvēlies ērtu topu un vieglas kārtas, ko viegli novilkt.
Seši komplekti reālām situācijām
Prognoze ir atsauce, nevis vienveidīgs tērps. Pielāgo kārtas savam maršrutam, aktivitātei un jau esošajām drēbēm.
🌧️
Lietus pilsētā
Sakombinē necaurspīdīgus legingus ar džemperi, ūdensizturīgu virsjaku un apaviem ar labu saķeri.
Pirms došanās ārā: Mitrs asfalts un siltas telpas prasa dažādas kārtas.
Papildu vietas un aptuvenās koordinātas: GeoNames, CC BY 4.0; redakcionāla atlase. GeoNames.
(function(){
"use strict";
var root=document.querySelector('[data-tool=weather]');if(!root)return;
var L={"find":"Meklēt citas pilsētas","hint":"Nevari atrast savu vietu? Meklē izvēlētajā valstī vai ielādē vairāk valstu. Nav GPS vai IP meklēšanas.","lookup":"Vietas nosaukums","search":"Meklēt vietas","countries":"Vairāk valstu","empty":"Nav rezultātu.","loading":"Meklē vietas…","choose":"Izvēlēties šo vietu","intro":"Izpēti laika apstākļus detalizēti","lead":"Skati stundas prognozes, praktisku apģērba sarakstu un ASV oficiālos brīdinājumus. Mēs ielādējam tikai to, ko tu pieprasi.","forecast":"Stundas un nākamās 7 dienas","forecastDesc":"Temperatūra, mitrums, lietus, UV starojums, skaidrs debess un vējš.","alerts":"ASV oficiālie brīdinājumi","alertsDesc":"Nacionālā laika dienesta spēkā esošie brīdinājumi ASV vietām.","go":"Pārbaudīt","hour":"Nākamās stundas (UTC)","days":"Nākamās dienas (UTC datumi)","unavailable":"Avots pagaidām nav pieejams.","nothing":"Nav saderīgu vērtību.","notUS":"NWS brīdinājumi pieejami tikai ASV.","noAlerts":"Nav aktīvu oficiālu brīdinājumu.","countryReady":"Valstu saraksts ielādēts.","source":"Avoti: MET Norway, PlaceDB (CC0) un NWS. Saraksts izmanto kešatmiņā saglabātu prognozi, nevis apģērba testus.","pack":"Iziet gatavs atbilstoši laikapstākļiem","packDesc":"Sagatavo sarakstu, izmantojot saglabāto prognozi, bez papildu pirkumiem vai zvaniem.","packItems":["Tavi legingi","Silta apģērba kārta vai virsjaka","Ārējā kārta pret lietu","Vēja necaurlaidīga jaka","Siltas zeķes un aizvērtas kurpes","Ērti apavi ar labu saķeri"],"packCopy":"Kopēt sarakstu","packSaved":"Saraksts nokopēts"},country=root.querySelector('#wa-country'),city=root.querySelector('#wa-city');
var input=root.querySelector('#wa-place-query'),matches=root.querySelector('.wa-place-matches'),status=root.querySelector('.wa-place-status-text');
function item(tag,value){var e=document.createElement(tag);e.textContent=String(value);return e;}
function query(){
var opt=city.selectedOptions[0],p=new URLSearchParams();
if(opt&&opt.dataset.placeId){p.set('country',country.value);p.set('place',opt.dataset.placeId);p.set('q',opt.dataset.query);}
else if(city.value)p.set('city',city.value);
return p;
}
var placeEpoch=0,panelEpoch={forecast:0,pack:0,alerts:0};
function clear(){placeEpoch++;for(var mode in panelEpoch)panelEpoch[mode]++;matches.replaceChildren();status.textContent='';for(var e of root.querySelectorAll('.wa-deep-output'))e.replaceChildren();}
country.addEventListener('change',clear);city.addEventListener('change',clear);
var find=root.querySelector('.wa-place-find');
find.addEventListener('click',async function(){
var value=input.value.trim();if(value.length<2){input.focus();return;}
var findIntent=++placeEpoch,chosenCountry=country.value;
status.textContent=L.loading;matches.replaceChildren();find.disabled=true;
try{
var r=await fetch('/api/weather-places?country='+encodeURIComponent(country.value)+'&q='+encodeURIComponent(value));
if(!r.ok)throw Error('places');var d=await r.json();if(findIntent!==placeEpoch||country.value!==chosenCountry)return;if(!d.places||!d.places.length)status.textContent=L.empty;
else status.textContent=d.places.length+' · '+L.choose;
for(const p of d.places||[]){
var li=item('li',''),b=item('button',p.name);
b.type='button';b.addEventListener('click',function(){
if(findIntent!==placeEpoch||country.value!==chosenCountry)return;
var opt=document.createElement('option');opt.value='p-'+p.country+'-'+p.id;opt.textContent=p.name;
opt.dataset.placeId=String(p.id);opt.dataset.query=value;city.append(opt);city.disabled=false;city.value=opt.value;
city.dispatchEvent(new Event('change',{bubbles:true}));status.textContent=p.name+' ✓';matches.replaceChildren();
});li.append(b);matches.append(li);
}
}catch{if(findIntent===placeEpoch)status.textContent=L.unavailable;}finally{find.disabled=false;}
});
input.addEventListener('keydown',function(e){if(e.key==='Enter'){e.preventDefault();find.click();}});
root.querySelector('.wa-all-countries').addEventListener('click',async function(){
var button=this;button.disabled=true;status.textContent=L.loading;
try{
var r=await fetch('/api/weather-countries');if(!r.ok)throw Error('countries');
var d=await r.json(),already=new Set(Array.from(country.options,x=>x.value)),extra=[];
var fmt=new Intl.DisplayNames([document.documentElement.lang||'en'],{type:'region'});
for(var c of d.countries||[]){if(!/^[A-Z]{2}$/.test(c.code)||already.has(c.code))continue;
var o=document.createElement('option');o.value=c.code;o.textContent=fmt.of(c.code)||c.name;
country.append(o);extra.push(c.code);}
window.__leggicMoreCountries=[...new Set([...(window.__leggicMoreCountries||[]),...extra])];
status.textContent=L.countryReady;button.hidden=true;
}catch{status.textContent=L.unavailable;button.disabled=false;}
});
function line(box,name,value){var row=item('div','');row.className='wa-deep-line';row.append(item('span',name),item('strong',value));box.append(row);}
for(const btn of root.querySelectorAll('.wa-deep-fetch')){
btn.addEventListener('click',async function(){
var mode=btn.dataset.mode,box=root.querySelector('.wa-deep-output[data-mode="'+mode+'"]');
var intent=++panelEpoch[mode],selectedCountry=country.value,selectedCity=city.value;
if(!city.value){box.textContent=L.empty;return;}
box.textContent=L.loading;btn.disabled=true;
var p=query(),url=mode==='alerts'?'/api/weather-alerts':'/api/weather-advice';
if(mode==='forecast'||mode==='pack')p.set('view','extended');
try{
var r=await fetch(url+'?'+p.toString());if(!r.ok)throw Error('source');
var d=await r.json();if(intent!==panelEpoch[mode]||city.value!==selectedCity||country.value!==selectedCountry)return;box.replaceChildren();
if(mode==='forecast'){
var a=item('div','');a.className='wa-deep-lines';
if(Number.isFinite(d.humidity))line(a,'💧',d.humidity+'%');
if(Number.isFinite(d.uvClearSky))line(a,'UV (clear sky)',d.uvClearSky);
if(Number.isFinite(d.windGustMs))line(a,'Wind gust',d.windGustMs+' m/s');
for(var h of (d.hourly||[]).slice(0,18))line(a,h.time.slice(5,16).replace('T',' ')+' UTC',h.temperatureC+' °C'+(Number.isFinite(h.precipChance)?' · '+h.precipChance+'%':''));
box.append(a);
var b=item('div','');b.className='wa-deep-lines';
for(var day of d.daily||[])line(b,day.dayUTC,day.lowC+' / '+day.highC+' °C');
box.append(item('h4',L.days),b);
}else if(mode==='pack'){
if(!Number.isFinite(d.temperatureC))throw Error('missing temperature');
var items=[L.packItems[0]];
if(d.temperatureC<10)items.push(L.packItems[1]);
if((Number.isFinite(d.precipMm)&&d.precipMm>=0.2)||/rain|snow|sleet/i.test(d.symbol||''))items.push(L.packItems[2]);
if(d.windMs>=8)items.push(L.packItems[3]);
items.push(d.temperatureC<5?L.packItems[4]:L.packItems[5]);
var list=item('ul','');list.className='wa-packing-list';
for(const label of [...new Set(items)]){var li=item('li',label);list.append(li);}
box.append(list);
var copy=item('button',L.packCopy);copy.type='button';copy.className='wa-pack-copy';
copy.addEventListener('click',async function(){try{
await navigator.clipboard.writeText(items.join('\n'));copy.textContent=L.packSaved;
}catch{copy.textContent=L.unavailable;}});
box.append(copy);
}else{
if(!d.supported){box.textContent=L.notUS;return;}
if(!d.alerts?.length){box.textContent=L.noAlerts;return;}
for(var a of d.alerts)line(box,a.severity,a.event+': '+a.headline);
var link=item('a','National Weather Service');link.href='https://www.weather.gov/';link.rel='noopener noreferrer';box.append(link);
}
}catch{if(intent===panelEpoch[mode])box.textContent=L.unavailable;}finally{btn.disabled=false;}
});
}
})();document.addEventListener('DOMContentLoaded',()=>{setTimeout(()=>{
// The deferred app.js initializes its tool on DOMContentLoaded; run just after it.
const button=document.getElementById('buildLook');if(!button)return;
const labels={it:'Abbinamento',de:'Outfit',es:'Conjunto',fr:'Tenue',en:'Look'};
const enhance=()=>{
const result=document.querySelector('#lookResult .result');
if(!result||result.querySelector('.style-look-grid'))return;
const items=[...result.querySelectorAll('ol li')].slice(0,3);
if(!items.length)return;
const selectedText=id=>{
const element=document.getElementById(id);
return element?.selectedOptions?.[0]?.textContent?.trim()||element?.value||'';
};
const metaText=[selectedText('color'),selectedText('season'),selectedText('shoes')].filter(Boolean).join(' · ');
const grid=document.createElement('div');grid.className='style-look-grid';
items.forEach((item,index)=>{
const card=document.createElement('article');card.className='style-look';
const meta=document.createElement('span');meta.className='style-look-meta';meta.textContent=metaText;
const content=document.createElement('div'),title=document.createElement('b'),copy=document.createElement('p');
title.textContent=(labels[document.documentElement.lang]||labels.en)+' '+(index+1);
copy.innerHTML=item.innerHTML;
content.append(title,copy);card.append(meta,content);grid.append(card);
});
result.querySelector('ol')?.replaceWith(grid);
};
const next=()=>setTimeout(enhance,0);
button.addEventListener('click',next);
for(const id of ['color','season','occasion','shoes','finish'])document.getElementById(id)?.addEventListener('change',next);
next();
},0);});(()=>{const root=document.querySelector('header.site-header [data-lp]');if(!root)return;const t=root.querySelector('.lp-trigger'),d=root.querySelector('.lp-dialog');if(!d||typeof d.showModal!=='function')return;const f=d.querySelector('.lp-filter'),items=[...d.querySelectorAll('.lp-item')],groups=[...d.querySelectorAll('.lp-group')],empty=d.querySelector('.lp-empty');const norm=s=>s.toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g,'');const apply=()=>{const q=norm(f.value.trim());let shown=0;items.forEach(a=>{const ok=!q||norm(a.dataset.names+' '+a.textContent).includes(q);a.parentElement.hidden=!ok;if(ok)shown++;});groups.forEach(g=>{g.hidden=![...g.querySelectorAll('li')].some(li=>!li.hidden)});empty.hidden=shown>0;};t.addEventListener('click',e=>{if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;e.preventDefault();d.showModal();f.value='';apply();if(window.matchMedia('(pointer:fine)').matches)f.focus();else d.querySelector('.lp-item.is-current')?.scrollIntoView({block:'center'});});d.querySelector('.lp-close').addEventListener('click',()=>d.close());d.addEventListener('click',e=>{if(e.target===d)d.close()});f.addEventListener('input',apply);f.addEventListener('keydown',e=>{if(e.key==='Enter'){const first=items.find(a=>!a.parentElement.hidden);if(first){e.preventDefault();first.click();}}});d.addEventListener('close',()=>t.focus());})();