260 lines
26 KiB
HTML
260 lines
26 KiB
HTML
<!DOCTYPE html>
|
|
<!-- https://gitlab.com/zlax/solarwheeloftheyear -->
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head>
|
|
<head>
|
|
<!--
|
|
Image: https://gitlab.com/DougInAMug/octosol
|
|
;
|
|
;=
|
|
.=; .X
|
|
... ;;.
|
|
; .; ;.=
|
|
== =. = . ;
|
|
. X=. ;. = = ;.
|
|
+ .;;; .. .; .. .
|
|
+. ;..; . = =
|
|
X; .; .= = .; = =. .
|
|
=;; ;. .+. = = ; . .=
|
|
; ; = =. = X = ; ;;
|
|
.;.; ;. ;. = .. ; = ;;
|
|
= = ; =. = ; ;. = = ;
|
|
+ .= = =. = ;; ; . .. ;
|
|
; .; = =. = = .; . = .;
|
|
; = = .= = ; ; .; .. ;=
|
|
;. = ;. ; . .= ; .; = ;.
|
|
= .= .= .; .. ; = .+ ; ;
|
|
= .; ; ;; .. ;. .; .X ;.
|
|
; ;. =. = ;. .; ;. .X ;; ;
|
|
. =. .; .. .= =. + = = .; +
|
|
+. .. .; ; . ; + ;. ; .= =
|
|
.+. = .; = ; ; ; = + ;. .
|
|
;; + .; X .; ; = = .X ;. =
|
|
;... .. .+ ; = ; X . .+ =. X
|
|
; .. = + . .. ; ; + .; ;. ;
|
|
.; .; ; .; ; X ; ; ; .; ; ..
|
|
.. ... ;. .; + .;; . . . ; =. .;;
|
|
; ;; ; ;; ; ==. ;=; = = ; ;;.;=.
|
|
;. ;; = = ;. =;. ;= X ;. .; .+. =.
|
|
; .=. ;. ;.; .=. ;= ;.. . ..; =
|
|
.. =+ = .;; +. ;= ..= = ... =
|
|
; .=; ; .+. ;. ;= += .. .=. =.
|
|
;. =; ; X. + ;= =; = .;. .;
|
|
; .= ; ;+ + ;. ;+ ;. =. =
|
|
= .. + ; = ; ;. ;= ; = =
|
|
;; ; =.; = .; = .; .. =
|
|
.; ; ;.; ; .X = + =; .;
|
|
; =. .. ;=. .= + ; .. .+
|
|
; ;. = =X =. ; .=; +
|
|
. .= ;. ;; . X; ;.
|
|
.; ;;. ; =. ;+ =
|
|
; ; ; ; =. .+ = ==;;;
|
|
= ;.=. .; = ;;;;; + =. ;;+=; ;;;..=.
|
|
.. == . .. = .;+M##########M;;. + .. .;;X=. .=;
|
|
;. ;=.; ; .= ;X###M++++==++++M##M+;.==. ;. .= ..=.. ;=
|
|
= ..=. ; . =M##X=;...........;==+M#M##= = .= . .;.
|
|
; .;. ; =##M+.................;M#####+ .= .;= ;=
|
|
; .;.. ;M##+.................=X########+ .=; ; .=.
|
|
; .+= =M#M;.................X###########M. .X.. .;
|
|
; =+ X#M=.................+#############M#= =X. =;
|
|
; .+. X#M;................=M##############=M#; =; .;.
|
|
= == M#M................;X################X;MM; .+. .=
|
|
=. . X#M................+###M#=############X..M#; .= .=
|
|
.= +#M................X###MM#+#############..;M#. .=
|
|
=; ;##;...............+####=#M=#############...;#M ;;
|
|
.= M#=................X###.;#==#############;...;#+ ;.
|
|
=; +#X.................###X X#=X#############.....X#. =.
|
|
.== .MM=................X###M.## X############M.....;#+ .;
|
|
.;. M#X..........;=;.;X######X#X X############X......X#. ;.
|
|
.. ;;;;=+X;;====.. .##........;XM###M##########X X############+......;#X ;= ...=;;;;.....
|
|
;..=;; .=+. X#X......;X##################.X############........M#. ;;=; ;==;.. ..;.+=;.;;
|
|
;= ;. .##;.....XM###################XM###########=........;#= .++.; ;;.;=+=;.
|
|
.+;. =#M....=M############;+#M#################X..........MX .;X.. ... .;+X=
|
|
..=. X#+..;M##############X;#XX###############X=..........=#. .= ;;;
|
|
;=. .M#.;M################M.X#==#############X;X..........;#= .+..
|
|
= .##X###################;;#X.;XM########M=.=+...........MX .;;
|
|
.=. .#####M#M##############=.X#+...=X##XXX=...==...........X#. .;.
|
|
;.;. .=X;. M####+MM+##############X.;#MX+...;X;......=+...........X#; .=.
|
|
==.. X####M;#=X##############X..;++XX...X;......;+.......+...X#; ..X
|
|
.=.;; =#####=;#.M##############+......=.;+=........X=.....+=...X#; ;.;
|
|
.; .;;;;;;;;;;;+=; .M####.+M ###############=........X=.......;M#M+=;=X=....X#; ==.
|
|
..==. M###+X= ##############M........=M......;+M+#;;+==......X#; ..;=+
|
|
..;. +#####= ##############X.......;X+....;+#M=+#;..........X#; ;;.;==;;. ;==.
|
|
;.; +#####X ##############;..XX+=+M+...;X##M=;+M...........X#; ...=;
|
|
.=. =######;#############MM+X;;XMX...=M###+=;;MM...........X#; .=..
|
|
;.; .#XX###M############+.+=........=###M+;;;=#+...........XM ;;.
|
|
.;. .##.=##############+.........=XX###M=;;;;+#+...........MX ..;.
|
|
;. M#;.=M##########M=........;X#####X=;;;;;M#=..........=#= .;
|
|
;; =#+...+X######M+.........;M####M+;;;;;;+##...........+#. ..;
|
|
=. ;#M.....;=======........+M###X+;;;;;;;=M#M...........MM ..==
|
|
;= .;+ M#=.........=;=X=....;M##M==;;;;;;;;=MM#X..........;#= .=+. ... ....
|
|
.=. ;== =#X.............+X.;+#MX=;;;;;;;;;;+#= M+..........M#. ..=+==;=++;
|
|
.+ =X= M#;.............XXX+=;;;;;;;;;;;=X#= =#..........;#X == .;.
|
|
;; .. ;;;= =#X.............=#M+=;;;;;;;;;=+MX. =#;..........X#. ;X;. ..=
|
|
=. .;===;.==;; .;;. .= M#;............;X+M#XX+=;;=+X#X= +M=..........;#X =;== ;=.;
|
|
=. ;X=..;;;;;;;;;;. ;; ;#M............;=..=M##MMMM#+. ;MM;...........MM. .==.;+; .=+; ;
|
|
+=.;. ;. X#=...........+;...;=M####; .+MX;...........=#+ .=. .;;. ..;; ;;;
|
|
. ;; .MM;.........;M.......;=XMM+MMX;........=...;MX .=
|
|
=. ;MM;......;+M;...........;==...........=..;M# =;
|
|
;. ;#M;....++=..........................;;..X#; .=
|
|
.= =#M.................................X.;M#= ; ;.
|
|
.; .= =MM;..............................===##= ;= ;.
|
|
;; =; ;#M=.............................X+##; =. ..
|
|
.. = ;M#X;................+;.......;M##M; ;; ..
|
|
;; ;; +##X;...............++=...=X##M= =. ..
|
|
;. .+. ;X##X=..............;=+MM###+. =; .;
|
|
= ;+. .XM#MX;;;.........;;XM#MX. ;.=. .;
|
|
; ..;+ +X####M+====+MM###X= ; ;;; ;.
|
|
;. ... ; +. .;;XX######MX;;. . ; ..=. ;
|
|
;. ;. ; =. ...... = ;; == =
|
|
.= ..=. ; .+ .= ;. =;; ..
|
|
.. ;; ; ; X. .; ; ..; ;.
|
|
+. . ;=+ ; ++ ;; . + ;
|
|
;. .;;;; ; ..= . . += . =. ..
|
|
;;=;=. ;; ;. . ;. .; ; .;; ; .; ;
|
|
. ; ; ; X + ; ;;= = .; ..
|
|
= .; ; .= .= ; ; = =. .. .= ;
|
|
;. ;; ; == .; + ;. . .. ; ==.
|
|
= .; = ..; =; X + ; .= . ;=
|
|
; . . ; ; =; = =; ; =. = =
|
|
.. .;. ; ..; .; =; .; . .= ;
|
|
; .; ; . + ;.; . ;. ; =. .
|
|
.. . ; = + . . .; .; ; ... ;
|
|
; .; ; ; ; . . . . . .. ;; ..
|
|
.. = .. . ; . . ; ;; = ; ;. =
|
|
;.= = ;. ; = . ; . .; . ;; =
|
|
.+. ; ;. .. + ; . ;. . ;; .
|
|
. = ;. ; ; ; . = ; = ;.=
|
|
; ;. .. . ; ;. ;. ; ; .=.
|
|
; .. ; + ; .. . .; .+
|
|
; ; .; ; ; ; . . +
|
|
= = ; .; ; ;. ; . ;
|
|
. ; = . ; ; . .
|
|
.; =. ; = . = ; ; ;. .
|
|
= .. ; ; ; = ; ; ; =
|
|
; .; + + =. . ; + ; ;
|
|
.. ;; ; . . .. ; X
|
|
.==. . . ; ; = ;
|
|
.+. . = ; = ; . +
|
|
= . + .; .. ; ; .
|
|
; . = . ; ; ;
|
|
; ; ; = ;..
|
|
. ; .. .. ;.=
|
|
. ; . =.. =.
|
|
. ;; .;
|
|
;.; = .; +
|
|
.; ..
|
|
+X = ;=
|
|
+ . .;
|
|
. .
|
|
=;
|
|
.
|
|
-->
|
|
<link rel="icon" href="favicon.ico" type="image/x-icon"><link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<link rel="stylesheet" type="text/css" href="anthrstlsht.css">
|
|
<title>solar wheel of the year</title>
|
|
</head>
|
|
<body>
|
|
<br><p align="center"><input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-11, 'UTC-11');" value="UTC-11"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-10, 'UTC-10');" value="UTC-10"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-9, 'UTC-9');" value="UTC-9"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-8, 'UTC-8');" value="UTC-8"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-7, 'UTC-7');" value="UTC-7"/><br>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-6, 'UTC-6');" value="UTC-6"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-5, 'UTC-5');" value="UTC-5"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-4, 'UTC-4');" value="UTC-4"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-3.5, 'UTC-3:30');" value="UTC-3:30"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(-3, 'UTC-3');" value="UTC-3"/><br>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(0, 'UTC-0');" value="UTC-0"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(1, 'UTC+1');" value="UTC+1"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(2, 'UTC+2');" value="UTC+2"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(3, 'UTC+3');" value="UTC+3"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(3.5, 'UTC+3:30');" value="UTC+3:30"/><br>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(5, 'UTC+5');" value="UTC+5"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(5.5, 'UTC+5:30');" value="UTC+5:30"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(6, 'UTC+6');" value="UTC+6"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(6.5, 'UTC+6:30');" value="UTC+6:30"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(7, 'UTC+7');" value="UTC+7"/><br>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(8, 'UTC+8');" value="UTC+8"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(9, 'UTC+9');" value="UTC+9"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(9.5, 'UTC+9:30');" value="UTC+9:30"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(10, 'UTC+10');" value="UTC+10"/>
|
|
<input type="button" onclick="document.getElementById('soltable').innerHTML = makeTable(11, 'UTC+11');" value="UTC+11"/></p>
|
|
|
|
<div align = "center" id="soltable"></div>
|
|
|
|
<script type="text/javascript">
|
|
|
|
// The exact reference year is only 2021. The dates of the others are calculate according to this model.
|
|
|
|
var VernalEquinox2021 = new Date('Sat Mar 20 2021 09:37:27 GMT+0000');
|
|
var NorthernSolstice2021 = new Date('Mon Jun 21 2021 03:32:08 GMT+0000');
|
|
var AutumnalEquinox2021 = new Date('Wed Sep 22 2021 19:21:03 GMT+0000');
|
|
var SouthernSolstice2021 = new Date('Tue Dec 21 2021 15:59:16 GMT+0000');
|
|
var VernalEquinox2022 = new Date('Sun Mar 20 2022 15:33:23 GMT+0000');
|
|
|
|
function formatedDate(datein) {
|
|
var dateout = "" + ("0" + ( datein.getUTCDate())).slice(-2) + "." + ("0" + ( datein.getUTCMonth() + 1)).slice(-2) + " " + ("0" + datein.getUTCHours()).slice(-2) + ":" + ("0" + datein.getUTCMinutes()).slice(-2);
|
|
return dateout;
|
|
}
|
|
|
|
function tableRow(vernalequinox) {
|
|
var stringout = "<td>";
|
|
if (vernalequinox.getYear() == VernalEquinox2021.getYear()) stringout += "<b>";
|
|
stringout += vernalequinox.getFullYear();
|
|
if (vernalequinox.getYear() == VernalEquinox2021.getYear()) stringout += "</b>";
|
|
var Imbolc = new Date(vernalequinox.getTime() - ((VernalEquinox2022.getTime() - SouthernSolstice2021.getTime()) / 2));
|
|
stringout += '<td class = "even">' + formatedDate(Imbolc) + "</td>";
|
|
stringout += "</td><td>" + formatedDate(vernalequinox) + "</td>";
|
|
var Beltane = new Date(vernalequinox.getTime() + ((NorthernSolstice2021.getTime() - VernalEquinox2021.getTime()) / 2));
|
|
stringout += '<td class = "even">' + formatedDate(Beltane) + "</td>";
|
|
var Midsummer = new Date(vernalequinox.getTime() + (NorthernSolstice2021.getTime() - VernalEquinox2021.getTime()));
|
|
stringout += "<td>" + formatedDate(Midsummer) + "</td>";
|
|
var Lughnasadh = new Date(vernalequinox.getTime() + ((NorthernSolstice2021.getTime() - VernalEquinox2021.getTime()) + (AutumnalEquinox2021.getTime() - NorthernSolstice2021.getTime()) / 2));
|
|
stringout += '<td class = "even">' + formatedDate(Lughnasadh) + "</td>";
|
|
var Mabon = new Date(vernalequinox.getTime() + (AutumnalEquinox2021.getTime() - VernalEquinox2021.getTime()));
|
|
stringout += "<td>" + formatedDate(Mabon) + "</td>";
|
|
var Samhain = new Date(vernalequinox.getTime() + ((AutumnalEquinox2021.getTime() - VernalEquinox2021.getTime()) + (SouthernSolstice2021.getTime() - AutumnalEquinox2021.getTime()) / 2));
|
|
stringout += '<td class = "even">' + formatedDate(Samhain) + "</td>";
|
|
var Yule = new Date(vernalequinox.getTime() + (SouthernSolstice2021.getTime() - VernalEquinox2021.getTime()));
|
|
stringout += "<td>" + formatedDate(Yule) + "</td>";
|
|
return stringout;
|
|
}
|
|
|
|
function makeTable(UTC, UTCstr) {
|
|
|
|
var fulltable = "<table><caption>";
|
|
now = new Date();
|
|
fulltable += 'Approximate astronomical <a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year">Wheel of the Year</a> - ' + '<a href="https://en.wikipedia.org/wiki/Coordinated_Universal_Time"><b>' + UTCstr + "</b></a><br>";
|
|
fulltable += 'Model: 2021 <a href="https://en.wikipedia.org/wiki/Tropical_year">Tropical year</a> - ' + ( ( VernalEquinox2022 - VernalEquinox2021 ) / 1000 / 60 / 60 / 24 ) + " days (view source for details)</caption>";
|
|
fulltable += '<tr><th>Gregorian Year</th><th><a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year#Imbolc">Imbolc</a></th><th><a';
|
|
fulltable += ' href="https://en.wikipedia.org/wiki/Wheel_of_the_Year#Vernal_Equinox_.28Ostara.29">Ostara</a></th><th>';
|
|
fulltable += '<a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year#Beltane">Beltane</a></th><th><a href="https://en.wikipedia.org/wiki/';
|
|
fulltable += 'Wheel_of_the_Year#Midsummer_.28Litha.29">Midsummer</a></th><th><a href="https://en.wikipedia.org/wiki/';
|
|
fulltable += 'Wheel_of_the_Year#Lammas.2FLughnasadh">Lughnasadh</a></th><th><a href="https://en.wikipedia.org/wiki/';
|
|
fulltable += 'Wheel_of_the_Year#Autumnal_equinox_.28Mabon.29">Mabon</a></th><th><a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year#Samhain">';
|
|
fulltable += 'Samhain</a></th><th><a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year#Midwinter_.28Yule.29">Yule</a></th></tr>';
|
|
|
|
for (var i = 1; i <= 17; i++) {
|
|
var current = new Date ( VernalEquinox2021.getTime() + ( UTC * 60 * 60 * 1000 ) - ( ( VernalEquinox2022.getTime() - VernalEquinox2021.getTime() ) * (7 - i) ) );
|
|
if (current.getYear() == now.getYear()) fulltable += '<tr class = "currentyear">';
|
|
else if (i % 2 == 0 ) fulltable += '<tr class = "even">';
|
|
else fulltable += '<tr>'
|
|
fulltable += tableRow(current) + "</tr>";
|
|
}
|
|
|
|
fulltable += "</table>";
|
|
return fulltable;
|
|
}
|
|
|
|
var defaultTable = makeTable(0, "UTC-0");
|
|
document.getElementById("soltable").innerHTML = defaultTable;
|
|
|
|
</script>
|
|
|
|
<br><p align="center"><a href="https://gitlab.com/zlax/solarwheeloftheyear">source code</a></p>
|
|
<br><p align="center"><a href="https://en.wikipedia.org/wiki/Wheel_of_the_Year"><img src="0.1.0_octosol.png" alt="Octosol by DougInAMug"></a></p>
|
|
|
|
</body>
|
|
</html>
|