/** @inheritdoc */ public function renderMetaBox(WP_Post $post) { OpeningHoursModule::setCurrentSetId($post->ID); $set = OpeningHoursModule::getCurrentSet(); if (count($set->getIrregularOpenings()) < 1) { $set->getIrregularOpenings()->append(IrregularOpening::createDummy()); } $variables = array('irregular_openings' => $set->getIrregularOpenings()); echo self::renderTemplate(static::TEMPLATE_PATH, $variables, 'once'); }
/** * Renders an Irregular Opening Item for Overview table * * @param IrregularOpening $io The Irregular Opening to show * @param array $attributes The shortcode attributes */ public static function renderIrregularOpening(IrregularOpening $io, array $attributes) { $name = $io->getName(); $date = $io->getTimeStart()->format(Dates::getDateFormat()); $heading = $attributes['hide_io_date'] ? $name : sprintf('%s (%s)', $name, $date); $now = Dates::getNow(); $highlighted = ($attributes['highlight'] == 'period' and $io->getTimeStart() <= $now and $now <= $io->getTimeEnd()) ? $attributes['highlighted_period_class'] : null; echo '<span class="op-period-time irregular-opening ' . $highlighted . '">' . $heading . '</span>'; $time_start = $io->getTimeStart()->format($attributes['time_format']); $time_end = $io->getTimeEnd()->format($attributes['time_format']); $period = sprintf('%s – %s', $time_start, $time_end); echo '<span class="op-period-time ' . $highlighted . ' ' . $attributes['span_period_classes'] . '">' . $period . '</span>'; }
/** Action: Render Single Dummy Irregular Opening */ public static function renderSingleDummyIrregularOpening() { echo self::renderTemplate(IrregularOpenings::TEMPLATE_PATH_SINGLE, array('io' => IrregularOpening::createDummy()), 'once'); die; }
public function testCreateDummy() { $io = IrregularOpening::createDummy(); $expectedDate = new DateTime('now'); $expectedDate->setTime(0, 0, 0); $this->assertEquals('', $io->getName()); $this->assertEquals($expectedDate, $io->getDate()); $this->assertEquals($expectedDate, $io->getTimeStart()); $this->assertEquals($expectedDate, $io->getTimeStart()); $this->assertTrue($io->isDummy()); }