From Dark and Darker Wiki
(Created page with "<includeonly> <span id="timer"></span> <script> function setIntOnStart(func, interval) { func(); return setInterval(func, interval); } var countDownDate = new Date('<!--{$date|escape:'quotes'}-->').getTime(); var x = setIntOnStart( _ => { var now = new Date().getTime(); var distance = countDownDate - now; var days = Math.floor(distance / (1000 * 60 * 60 * 24)); var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes =...") |
No edit summary |
||
(29 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<includeonly> | <includeonly> | ||
<span id="timer"></span> | <span id="<!--{$uniqueId|default:'timer'|escape:'html'}-->"></span> | ||
<script> | <script> | ||
function setIntOnStart(func, interval) { | function setIntOnStart(func, interval) { | ||
Line 6: | Line 6: | ||
return setInterval(func, interval); | return setInterval(func, interval); | ||
} | } | ||
var countDownDate = new Date('<!--{$date|escape:'quotes'}-->').getTime(); | var <!--{$uniqueId|default:'timer'|escape:'html'}--> = setIntOnStart( _ => { | ||
let id = "<!--{$uniqueId|default:'timer'|escape:'html'}-->"; | |||
let timezoneOffset = new Date().getTimezoneOffset()*60*1000; | |||
let countDownDate = new Date('<!--{$date|escape:'quotes'}-->').getTime(); | |||
let now = new Date().getTime() + timezoneOffset; | |||
let distance = countDownDate - now; | |||
let days = Math.floor(distance / (1000 * 60 * 60 * 24)); | |||
let hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); | |||
let minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); | |||
let seconds = Math.floor((distance % (1000 * 60)) / 1000); | |||
document.getElementById(id).innerHTML = days + "d " + hours + "h " + minutes + "m " + seconds + "s "; | |||
if (distance < 0) { | |||
clearInterval(<!--{$uniqueId|default:'timer'|escape:'html'}-->); | |||
document.getElementById(id).innerHTML = "ENDED"; | |||
} | |||
}, 1000); | }, 1000); | ||
</script> | </script> | ||
</includeonly> | </includeonly><noinclude> | ||
==Parameters== | |||
<pre style="width:fit-content">uniqueId</pre> | |||
*Determines element id name | |||
*Name needs to be unique if multiple widgets are to be displayed on the same page. | |||
*Default: <code>timer</code> | |||
<pre style="width:fit-content">date</pre> | |||
*String of text indicating a date and time. | |||
**Example:<code>2024-12-31 23:59:59</code> | |||
==Example 1== | |||
<pre>{{#widget:Countdown|uniqueId=A|date=2025-08-26 23:59:59}}</pre> | |||
{{#widget:Countdown|uniqueId=A|date=2025-08-26 23:59:59}} | |||
==Example 2== | |||
<pre>{{#widget:Countdown|uniqueId=B|date=2024-12-10 20:00:00}}</pre> | |||
{{#widget:Countdown|uniqueId=B|date=2024-12-10 20:00:00}} | |||
==Example 3== | |||
<pre>{{#widget:Countdown|uniqueId=C|date=2024-08-24 23:59:59}}</pre> | |||
{{#widget:Countdown|uniqueId=C|date=2024-08-24 23:59:59}} | |||
</noinclude> |
Latest revision as of 18:44, 10 December 2024
Parameters
uniqueId
- Determines element id name
- Name needs to be unique if multiple widgets are to be displayed on the same page.
- Default:
timer
date
- String of text indicating a date and time.
- Example:
2024-12-31 23:59:59
- Example:
Example 1
{{#widget:Countdown|uniqueId=A|date=2025-08-26 23:59:59}}
Example 2
{{#widget:Countdown|uniqueId=B|date=2024-12-10 20:00:00}}
Example 3
{{#widget:Countdown|uniqueId=C|date=2024-08-24 23:59:59}}