feat: version tender calendar events
This commit is contained in:
@@ -29,11 +29,13 @@ export function createTenderICS(t, now = new Date()) {
|
||||
const start = tenderDeadline(t);
|
||||
const uid = encodeURIComponent(String(t.ikn || t.id || '').trim());
|
||||
if (!uid) throw new Error('İhale kimliği gerekli.');
|
||||
const rawSequence=Number(t.icsSequence ?? t.documentVersion ?? 0);
|
||||
const sequence=Number.isSafeInteger(rawSequence)&&rawSequence>=0 ? rawSequence : 0;
|
||||
return ['BEGIN:VCALENDAR','VERSION:2.0','PRODID:-//Ihaleist//Tender Calendar//TR','CALSCALE:GREGORIAN',
|
||||
'BEGIN:VEVENT',`UID:${uid}@ihaleist.com`,`DTSTAMP:${stamp(now)}`,
|
||||
`DTSTART:${stamp(start)}`,'TRANSP:TRANSPARENT',
|
||||
`SEQUENCE:${sequence}`,`DTSTART:${stamp(start)}`,'TRANSP:TRANSPARENT',
|
||||
`SUMMARY:${escapeICS('İhale son teklif: '+t.baslik)}`,
|
||||
`DESCRIPTION:${escapeICS('İKN: '+t.ikn+' — '+t.kurum+'\nBu tek seferlik takvim kaydı otomatik güncellenmez. İhale tarihini resmi kaynaktan doğrulayın; değişiklikte takviminizdeki eski kaydı güncelleyin.')}`,
|
||||
`DESCRIPTION:${escapeICS('İKN: '+t.ikn+' — '+t.kurum+'\nKaynak sürümünü ve ihale tarihini resmi kaynaktan doğrulayın; zeyilname veya tarih değişikliğinde aynı UID ve artan sürümle takvimi güncelleyin.')}`,
|
||||
'END:VEVENT','END:VCALENDAR',''].map(fold).join('\r\n');
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user