Cách dùng

  • Dùng cho thời hạn 30 ngày (mặc định). Thêm vào lúc tạo trang.

{{Status | {{subst:#time: c }} }}

  • Dùng cho thời hạn khác 30 ngày (ví dụ 7 ngày). Thêm vào lúc tạo trang.

{{Status | {{subst:#time: c }} | 7 }}

  • Mã này sẽ được thêm vào tiêu đề nội dung biểu quyết, đề cử. Ví dụ:

=== [[Nấm xì gà của quỷ]] {{Status | {{subst:#time: c }} }} ===

Quy trình kiểm tra thời hạn biểu quyết, đề cử

Bước 1: Lấy đối tượng ngày tháng tại thời điểm lưu trang. Ví dụ: 2020-11-15T16:14:49+00:00

{{#time: c | 2020-11-15T16:14:49+00:00 }}

→ 2020-11-15T16:14:49+00:00

Lấy thời gian Unix của đối tượng

{{#time: U | {{#time: c | 2020-11-15T16:14:49+00:00 }} }}

→ 1605456889

Bước 2: Lấy đối tượng ngày tháng tại thời điểm hiện tại. Ví dụ: 2024-04-06T07:10:22+00:00

{{#time: c }}

→ 2024-04-06T07:10:22+00:00

Lấy thời gian Unix của đối tượng

{{#time: U | {{#time: c }} }}

→ 1712387422

Bước 3: Cộng thời gian tối đa đặc thù của biểu quyết, đề cử (ví dụ: đề cử BVCL là 30 ngày) cho đối tượng ngày tháng tại thời điểm lưu trang để có được mốc tối đa.

{{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}

→ 2020-12-15T16:14:49+00:00

Lấy thời gian Unix của đối tượng

{{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }}

→ 1608048889

Bước 4: Kiểm tra nếu mốc thời gian hiện tại mà lớn hơn so với mốc thời gian tối đa thì hiển thị ô đỏ (thông báo hết hạn), trường hợp còn lại thì hiển thị ô xanh (thông báo còn hạn).

Khi rê chuột sẽ hiển thị thông tin như sau:

  • Nếu còn hạn, hiển thị thời gian tối đa và đếm ngược còn bao nhiêu ngày trước khi hết hạn (lấy mốc Unix tối đa - mốc Unix hiện tại), ví dụ hiện tại là 2020-12-10T16:14:49+00:00.

Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Còn {{#expr: floor(({{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }} - {{#time: U | {{#time: c | 2020-12-10T16:14:49+00:00 }} }}) / 86400) }} ngày nữa đến hạn.

→ Hạn là 16:14:49 15-12-2020. Còn 5 ngày nữa đến hạn.

  • Nếu hết hạn, hiển thị thời gian tối đa và thông báo đã hết hạn.

Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Đã hết hạn.

→ Hạn là 16:14:49 15-12-2020. Đã hết hạn.


  • Ví dụ với thời điểm hiện tại thực tế là 2024-04-06T07:10:22+00:00 (quá hạn so với 2020-12-15T16:14:49+00:00)
{{#ifexpr: {{#time: U | {{#time: c }} }} > {{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }}
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Đã hết hạn." style="background: #C00; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Còn {{#expr: floor(({{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }} - {{#time: U | {{#time: c }} }}) / 86400) }} ngày nữa đến hạn." style="background: #0C0; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
}}

  • Ví dụ với thời điểm hiện tại là 2020-12-10T16:14:49+00:00 (còn hạn so với 2020-12-15T16:14:49+00:00)
{{#ifexpr: {{#time: U | {{#time: c | 2020-12-10T16:14:49+00:00 }} }} > {{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }}
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Đã hết hạn." style="background: #C00; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }}. Còn {{#expr: floor(({{#time: U | {{#time: c | {{#time: c | 2020-11-15T16:14:49+00:00 }} +30 days }} }} - {{#time: U | {{#time: c | 2020-12-10T16:14:49+00:00 }} }}) / 86400) }} ngày nữa đến hạn." style="background: #0C0; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
}}

Tham số hóa: {{{1}}} nhận vào thời điểm lưu trang, có thể là {{subst:#time: c }}, {{{2}}} nhận vào thời hạn tối đa của biểu quyết, đề cử (tính theo số ngày), mặc định là 30 ngày.

{{#ifexpr: {{#time: U | {{#time: c }} }} > {{#time: U | {{#time: c | {{#time: c | {{{1}}} }} +{{{2|30}}} days }} }}
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | {{{1}}} }} +{{{2|30}}} days }}. Đã hết hạn." style="background: #C00; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
  |<span title="Hạn là {{#time: H:i:s d-m-Y | {{#time: c | {{{1}}} }} +{{{2|30}}} days }}. Còn {{#expr: floor(({{#time: U | {{#time: c | {{#time: c | {{{1}}} }} +{{{2|30}}} days }} }} - {{#time: U | {{#time: c }} }}) / 86400) }} ngày nữa đến hạn." style="background: #0C0; float: right; width: 20px; height: 20px; user-select: none;">&emsp;</span>
}}