Yii::$app->session->setFlash('success', 'Календарь успешно загружен.');
}
- $months = ['Январь',' Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'];
- $daysInWeek = ['Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вс'];
-
$workDaysMap = ArrayHelper::map(ProductionCalendar::find()->where(['between', 'date', '2024-01-01', '2024-12-31'])->all(), 'date', 'work');
if (!$viewYear) {
}
return $this->render('index',
- compact('months', 'daysInWeek', 'workDaysMap', 'viewYear', 'years', 'workDaysInMonthCountMap'));
+ compact('workDaysMap', 'viewYear', 'years', 'workDaysInMonthCountMap'));
}
}
\ No newline at end of file
class DateHelper
{
+ const MONTH_NAMES = ['Январь',' Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'];
+ const DAYS_IN_WEEK_NAMES_SHORT = ['Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Вс'];
public static int $hourStartSmen = 8;
public static int $hourEndSmen = 20;
use yii\helpers\Html;
use yii\widgets\ActiveForm;
-/** @var $months array */
-/** @var $daysInWeek array */
+use yii_app\helpers\DateHelper;
+
/** @var $workDaysMap array */
/** @var $years array */
/** @var $viewYear string */
<div class="pcal-month-container" style="max-width: 1230px;">
- <?php foreach ($months as $monthIndex => $month): ?>
+ <?php foreach (DateHelper::MONTH_NAMES as $monthIndex => $month): ?>
<div class="pcal-month w-20" style="max-width: 250px;">
<div class="pcal-month-name"><?= $month; ?></div>
<div class="pcal-days">
<table>
<tbody>
<tr>
- <?php foreach ($daysInWeek as $dayName): ?>
+ <?php foreach (DateHelper::DAYS_IN_WEEK_NAMES_SHORT as $dayName): ?>
<td class="pcal-day-of-week1"><?= $dayName; ?></td>
<?php endforeach; ?>
</tr>
<?php $numMonth = date('t', strtotime(date($viewYear . "-" . $padMonth . "-01"))); ?>
<?php foreach (range(1, 6) as $weekNum): ?>
<tr>
- <?php foreach ($daysInWeek as $dayIndexInWeek => $dayName): ?>
+ <?php foreach (DateHelper::DAYS_IN_WEEK_NAMES_SHORT as $dayIndexInWeek => $dayName): ?>
<?php $num++; ?>
<?php $date = $viewYear . '-' . $padMonth . '-' . ($num < 10 ? '0' . $num : $num); ?>
<td class="text-center pcal-day <?= ($workDaysMap[$date] ?? -1) == 0 ? 'pcal-day-holiday' : ''?>">