private function get_event()
 {
     if ($this->event === null) {
         $request = AppContext::get_request();
         $id = $request->get_getint('id', 0);
         if (!empty($id)) {
             try {
                 $this->event = CalendarService::get_event('WHERE id_event = :id', array('id' => $id));
             } catch (RowNotFoundException $e) {
                 $error_controller = PHPBoostErrors::unexisting_page();
                 DispatchManager::redirect($error_controller);
             }
         } else {
             $this->is_new_event = true;
             $this->event = new CalendarEvent();
             $this->event->init_default_properties($request->get_getint('year', date('Y')), $request->get_getint('month', date('n')), $request->get_getint('day', date('j')));
             $event_content = new CalendarEventContent();
             $event_content->init_default_properties($request->get_getint('id_category', Category::ROOT_CATEGORY));
             $this->event->set_content($event_content);
         }
     }
     return $this->event;
 }