Secondo me fai meno fatica a farlo piuttosto che a cercarlo

un piccolo DB dove le date si "autoinseriscono" per esempio con un anno di anticipo
mentre gli eventi si "autocopiano" dall'anno precedente

.