sektaolga-fodmapcommits9061423
Analyzing diff...
index.html+8 −1
index ed02791..3c92ba8 100644 @@ -455,8 +455,15 @@ function exportEntries(period){ if(period==='yesterday'){from.setDate(from.getDate()-1);until=new Date(today)}else if(period==='week')from.setDate(from.getDate()-6); return entries.filter(e=>{let date=mealDateTime(e);return date>=from&&date<until}) } +function reportPeriodLabel(period,entries){ + let format=d=>d.toLocaleDateString('ru-RU',{day:'2-digit',month:'2-digit',year:'numeric'}); + if(period==='today')return format(new Date()); + if(period==='yesterday'){let d=new Date();d.setDate(d.getDate()-1);return format(d)} + if(entries.length){let first=mealDateTime(entries[0]),last=mealDateTime(entries[entries.length-1]);return format(first)===format(last)?format(first):`${format(first)}–${format(last)}`} + return period==='week'?'последние 7 дней':'весь дневник' +} function journalReport(period){ - let labels={today:'сегодня',yesterday:'вчера',week:'последние 7 дней',all:'весь дневник'},entries=exportEntries(period),lines=[`Дневник питания — ${labels[period]||labels.all}`,`Сформирован: ${new Date().toLocaleString('ru-RU')}`,`Приёмов пищи: ${entries.length}`,'']; + let entries=exportEntries(period),lines=[`Дневник питания — ${reportPeriodLabel(period,entries)}`,`Сформирован: ${new Date().toLocaleString('ru-RU')}`,`Приёмов пищи: ${entries.length}`,'']; if(!entries.length)return lines.concat('За выбранный период записей нет.').join('\n'); entries.forEach((e,i)=>{lines.push(`${i+1}. ${mealDateLabel(e)}`);lines.push('Состав: '+(e.meal||[]).map(m=>`${m.name} — ${m.g} г`).join(', '));let rs=e.reactions||[]; if(!rs.length)lines.push('Реакции: не отмечены.');else{lines.push(`Реакции (${rs.length}):`);rs.forEach((r,j)=>{let details=[`${r.severity}/10 — ${r.severityLabel||severityText[r.severity]||'без описания'}`,r.delay];if(r.types&&r.types.length)details.push(r.types.join(', '));lines.push(` ${j+1}) ${new Date(r.createdAt).toLocaleString('ru-RU')}: ${details.filter(Boolean).join(' • ')}`);if(r.comment)lines.push(` Комментарий: ${r.comment}`)})}lines.push('')});return lines.join('\n').trim()