pts/modules/event_news_mod/event_news_index22.html.erb

129 lines
3.7 KiB
Plaintext

<div class="i-annc index-eventnews-12 index-eventnews-22 {{display}}">
<h3 class="i-annc__page-title"><span>{{page-title}}</span></h3>
<ul class="i-annc__list row" data-level="0" data-list="event_news">
<li class="i-annc__item">
<div class="i-annc__content-wrap">
<div class=" row flexwrap" style="align-items: center;justify-content: space-between;">
<div class="i-annc__meta">
<div class="i-annc__event_start_date"><span class="i-annc__event_start_date-content i-annc__postdate" date-format="%Y-%m-%d">{{event_start_date}}</span></div>
</div>
<div class="i-annc__content">
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<h4 class="i-annc__entry-title">
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<p class="i-annc__subtitle">{{subtitle}}</p>
<div class="i-annc__event_end_date"><span class="i-annc__event_end_date-content" date-format="%Y-%m-%d">{{event_end_date}}</span></div>
</div>
</div>
</div>
</li>
</ul>
</div>
{{pagination_goes_here}}
<script>
function formatAnncDate() {
$('.i-annc__event_start_date-content').each(function() {
var $this = $(this);
var rawDate = $this.text().trim();
if (rawDate.indexOf('-') !== -1) {
// ✅ 替換前先存原始日期
$this.attr('data-raw-date', rawDate);
var dateParts = rawDate.split('-');
var year = dateParts[0];
var month = dateParts[1];
var day = dateParts[2];
var newHtml =
'<div class="list-news-date">' +
'<span class="year">' + year + '</span>' +
'<span class="month">' + month + '</span>' +
'<span class="day">' + day + '</span>' +
'</div>';
$this.html(newHtml);
}
});
}
function checkEventStatus() {
// ✅ 今天日期(時間歸零,只比較日期部分)
var today = new Date();
today.setHours(0, 0, 0, 0);
$('.index-eventnews-22 .i-annc__item').each(function() {
var $item = $(this);
var endDateText = $.trim($item.find('.i-annc__event_end_date-content').text());
if (endDateText.length > 0) {
var endDate = new Date(endDateText);
endDate.setHours(0, 0, 0, 0);
// ✅ 結束日期 < 今天 → 才算截標
if (endDate < today) {
$item.find('.list-news-date').css({
'background-color': '#ccc',
'background': '#ccc'
});
var $title = $item.find('.i-annc__title');
if ($title.find('.closed-title').length === 0) {
$title.prepend('<span class="closed-title">(已結束)</span>');
}
}
}
});
}
$(document).ready(function() {
formatAnncDate();
checkEventStatus();
});
</script>
<style>
.closed-title {
color: #d9534f;
font-weight: bold;
margin-right: 8px;
font-size: 0.9em;
}
.index-eventnews-22 .i-annc__item .list-news-date[style*="background-color: rgb(204, 204, 204)"] {
background: #ccc !important;
}
.list-news-date {
background: #04519c;
width: 70px;
height: 100%;
float: left;
margin-right: 20px;
padding: 5px 0;
span {
color: #fff;
font-size: 14px;
line-height: 30px;
display: block;
text-align: center;
}
.month {
font-size:2em;
font-weight: 600;
}
}
.i-annc__content-wrap {
padding: 0;
}
.i-annc__meta {
padding: 0;
}
.i-annc__title {
font-size: 1.5em!important;
color: #2f2f2f!important;
font-weight: bold!important;
}
</style>