private function parseCalendar(HTTPRequest $request, Announcement $announce) { $dateIntervalOneDay = new DateInterval('P1D'); $dateIntervalSixMonth = new DateInterval('P2Y'); $publicationDate = new DateTime(); $publicationDate->add($dateIntervalOneDay); if ($request->postData('publication-date-radio') == 'manual') { $date = $request->postData('publication-date'); $date = DateTime::createFromFormat('j/m/Y', $date); $publicationDate = $date; } $announce->setPublicationDate($publicationDate->format('Y-m-d')); $endPublicationDate = $publicationDate; $endPublicationDate->add($dateIntervalSixMonth); if ($request->postData('end-publication-date-radio') == 'manual') { $date = $request->postData('end-publication-date'); $date = DateTime::createFromFormat('j/m/Y', $date); $endPublicationDate = $date; } $announce->setEndPublicationDate($endPublicationDate->format('Y-m-d')); }