public function actionEdit($id, $day) { try { $this->listing = $this->listingFacade->getListingByID($id); $this->date = TimeUtils::getDateTimeFromParameters($this->listing->year, $this->listing->month, $day); if ($this->date === false) { $this->redirect('Listing:detail', ['id' => $this->listing->listingID]); } $this->listingItem = $this->itemFacade->getListingItemByDay($day, $this->listing); } catch (Runtime\ListingNotFoundException $l) { $this->flashMessage('Výčetka nebyla nalezena.', 'error'); $this->redirect('Listing:overview', ['year' => $this->currentDate->format('Y'), 'month' => $this->currentDate->format('n')]); } catch (Runtime\ListingItemNotFoundException $li) { $this->listingItem = null; } if ($this->listingItem instanceof Entities\ListingItem and !$this->listing->isDetached()) { $formData['lunch'] = $this->listingItem->workedHours->lunch->toTimeWithComma(); $formData['workEnd'] = $this->listingItem->workedHours->workEnd->toHoursAndMinutes(true); $formData['workStart'] = $this->listingItem->workedHours->workStart->toHoursAndMinutes(true); $formData['otherHours'] = $this->listingItem->workedHours->otherHours->toTimeWithComma(); $formData['locality'] = $this->listingItem->locality->name; $formData['description'] = $this->listingItem->description; $formData['descOtherHours'] = $this->listingItem->descOtherHours; $this['itemForm']->setDefaults($formData); } }
public function __construct(ListingItem $listingItem) { $listingItem->checkEntityState(); $this->listingItem = $listingItem; $year = $listingItem->listing->year; $month = $listingItem->listing->month; $this->date = TimeUtils::getDateTimeFromParameters($year, $month, $listingItem->day); }
public function actionEdit($id, $day) { $this->listingResult = $this->getListingByID($id); $this->listing = $this->listingResult->getListing(); $date = TimeUtils::getDateTimeFromParameters($this->listing->year, $this->listing->month, $day); if ($date === false) { $this->redirect('Listing:detail', ['id' => $this->listing->getId()]); } }
/** * @return bool|DateTime */ public function getPeriod() { return TimeUtils::getDateTimeFromParameters($this->year, $this->month); }
/** * @param ListingItemDecorator[] $listingItemsDecorators * @param \DateTime $period * @return array */ public function generateListingItemDecoratorsForEntireTable(array $listingItemsDecorators, \DateTime $period) { $year = $period->format('Y'); $month = $period->format('n'); $daysInMonth = TimeUtils::getNumberOfDaysInMonth($year, $month); $list = []; for ($day = 1; $day <= $daysInMonth; $day++) { if (array_key_exists($day, $listingItemsDecorators)) { if (!$listingItemsDecorators[$day] instanceof IDisplayableItem) { throw new InvalidArgumentException('Only instances of ' . ListingItemDecorator::class . ' can pass.'); } $list[$day] = $listingItemsDecorators[$day]; } else { $list[$day] = new FillingItem(TimeUtils::getDateTimeFromParameters($year, $month, $day)); } } return $list; }
public function getDate() { if ($this->date === null) { $this->date = TimeUtils::getDateTimeFromParameters($this->listing->year, $this->listing->month, $this->day); } return $this->date; }
/** * @param Listing $listing * @param int $day * @return bool|\DateTime */ private function prepareDateTime(Listing $listing, $day) { return TimeUtils::getDateTimeFromParameters($listing->year, $listing->month, $day); }