Esempio n. 1
0
 /**
  * @param framework\Request $request
  * @param null $milestone
  * @return null|\thebuggenie\core\entities\Milestone
  * @throws \Exception
  */
 protected function _saveMilestoneDetails(framework\Request $request, $milestone = null)
 {
     if (!$request['name']) {
         throw new \Exception($this->getI18n()->__('You must provide a valid milestone name'));
     }
     if ($milestone === null) {
         $milestone = new \thebuggenie\core\entities\Milestone();
     }
     $milestone->setName($request['name']);
     $milestone->setProject($this->selected_project);
     $milestone->setStarting((bool) $request['is_starting']);
     $milestone->setScheduled((bool) $request['is_scheduled']);
     $milestone->setDescription($request['description']);
     $milestone->setVisibleRoadmap($request['visibility_roadmap']);
     $milestone->setVisibleIssues($request['visibility_issues']);
     $milestone->setType($request->getParameter('milestone_type', \thebuggenie\core\entities\Milestone::TYPE_REGULAR));
     if ($request->hasParameter('sch_month') && $request->hasParameter('sch_day') && $request->hasParameter('sch_year')) {
         $scheduled_date = mktime(23, 59, 59, framework\Context::getRequest()->getParameter('sch_month'), framework\Context::getRequest()->getParameter('sch_day'), framework\Context::getRequest()->getParameter('sch_year'));
         $milestone->setScheduledDate($scheduled_date);
     } else {
         $milestone->setScheduledDate(0);
     }
     if ($request->hasParameter('starting_month') && $request->hasParameter('starting_day') && $request->hasParameter('starting_year')) {
         $starting_date = mktime(0, 0, 1, framework\Context::getRequest()->getParameter('starting_month'), framework\Context::getRequest()->getParameter('starting_day'), framework\Context::getRequest()->getParameter('starting_year'));
         $milestone->setStartingDate($starting_date);
     } else {
         $milestone->setStartingDate(0);
     }
     $milestone->save();
     return $milestone;
 }