mam kalendarz na dany miesiąc
Napisałem to w taki sposób
Kontroler:
$this->view->day = $day; $this->view->month = $month; $this->view->year = $year;
Widok:
<?php $curDay =1;?> <table class="mini_calendar"> <thead class="mini_calendar_head"> <tr> </tr> <tr class="mini_calendar_head_dname"> </tr> </thead> <tfoot class="mini_calendar_foot"> <tr> <th><a href='#'></a></th> <th colspan='5' ></th> <th><a href='#'></a></th> </tr> </tfoot> <tbody id="mini_calendar_body"> <?php while($curDay <= $this->totalDay): ?> <tr> <?php for($i=0; $i<7; $i++):?> <?php if(($curDay == 1 && $i < $this->firstDayOfMonth) || ($curDay > $this->totalDay)): ?> <td class="mini_calendar_body_blank"> </td> <?php continue; ?> <?php endif; ?> <?php $curDay++; ?> <?php endfor; ?> </tr> <?php endwhile; ?> </tbody> </table>
Chcę uprościć widok w kalendarzu.
Wzorując się na mojej wcześniejszej wersji
stworzyłem model:
public function miniCalendar($totalDay, $firstDayOfMonth, $month, $year) { $curDay = 1; while($curDay <= $totalDay) { 'day' => $curDay, 'blank_day' => 0 ); $curDay++; } return $dayArray; }
W kontrolerze:
// Te parametry co wyżej w kontrolerze + $this->view->miniCalendar = $term->miniCalendar($this->view->totalDay, $this->view->firstDayOfMonth, $this->view->month, $this->view->year);
Widok(Z tym mam problem):
<table> <tr><td>Nd</td><td>Pn</td><td>Wt</td><td>Sr</td><td>Czw</td><td>Pt</td><td>Sb</td></tr> <?php foreach ($this->miniCalendar as $i=>$calendar):?> <?php if($i==6 || $i==13 || $i==20 || $i==27):?> <tr> <?php endif;?> <?php endforeach;?> </table>
Nie umiem sobie poradzić z rozpoczęciem dnia od danego dnia tygodnia.
Np w następnym miesiącu zaczynamy miesiąc od środy, czyli Nd, Pn, Wt musi być <td> </td>
Proszę o pomoc w widoku, już sam się zapętlam i nie umiem iść z tym do przodu.
Pozdrawiam,
Tomasz Solik