- 0
- 아포리아
- 조회 수 142
5/15
[개선] 시험기간 출력 방식 간소화
exam.item.php
#355 getExamDate($format = 'Y.m.d H:i') 수정
function getExamDate()
{
if ( !$this->isDate() )
{
$str = Context::getLang('exam_no_end_date');
}
else
{
$start_date = $this->get('start_date');
$end_date = $this->get('end_date');
// 시작과 종료 모두 H시 정각이라면
if ( substr($start_date, 10, 2) === '00' && substr($end_date, 10, 2) === '00' )
{
// 시작 시각은 시까지만 출력
$startline = zdate($start_date, 'Y.m.d H시');
$str = $startline . ' ~ ';
// 시작과 종료가 같은 시각이라면
if ( substr($start_date, 0, 10) === substr($end_date, 0, 10) ) $str = $startline;
// 일자까지 같다면
elseif ( substr($start_date, 0, 8) === substr($end_date, 0, 8) ) $str .= zdate($end_date, 'H시');
// 년도만 같다면
else if ( substr($startline, 0, 4) === substr($end_date, 0, 4) ) $str .= zdate($end_date, 'm.d H시');
// 년도가 다르다면
else $str .= zdate($end_date, 'Y.m.d. H시');
}
else
{
// 시작 시각은 분까지 출력
$startline = zdate($start_date, 'Y.m.d H시i분');
$str = $startline . ' ~ ';
// 시작과 종료가 같은 시각이라면
if ( substr($start_date, 0, 12) === substr($end_date, 0, 12) ) $str = $startline;
// 시까지 같다면
elseif ( substr($start_date, 0, 10) === substr($end_date, 0, 10) ) $str .= zdate($end_date, 'i분');
// 일자까지 같다면
elseif ( substr($start_date, 0, 8) === substr($end_date, 0, 8) ) $str .= zdate($end_date, 'H시i분');
// 년도만 같다면
else if ( substr($startline, 0, 4) === substr($end_date, 0, 4) ) $str .= zdate($end_date, 'm.d H시i분');
// 년도가 다르다면
else $str .= zdate($end_date, 'Y.m.d. H시i분');
}
}
return $str;
}