Easter Island winter time binding and separating of files
This commit is contained in:
		
							parent
							
								
									4df8ec6b0e
								
							
						
					
					
						commit
						745110f8c6
					
				
							
								
								
									
										10
									
								
								README.md
								
								
								
								
							
							
						
						
									
										10
									
								
								README.md
								
								
								
								
							|  | @ -1,4 +1,12 @@ | |||
| # dtime-js | ||||
| 
 | ||||
| dtime - Erisian (Discordian) time and date | ||||
| based on REAL-TIME CLOCK by Tiago Madeira | ||||
| based on REAL-TIME CLOCK by Tiago Madeira | ||||
| 
 | ||||
| Discordian date: | ||||
| https://en.wikipedia.org/wiki/Discordian_calendar | ||||
| 
 | ||||
| Discordian time is the decimal time without time zones, where the | ||||
| beginning of the day coincides with the beginning of the Christian | ||||
| winter day on Easter Island (UTC-5): | ||||
| https://en.wikipedia.org/wiki/Decimal_time | ||||
|  |  | |||
|  | @ -0,0 +1,31 @@ | |||
| * { | ||||
|     margin:0; | ||||
|     padding:0; | ||||
| } | ||||
| 
 | ||||
| html { | ||||
|     width:100%; | ||||
|     height:100%; | ||||
|     position:relative; | ||||
|     background:#f1f1f1; | ||||
|     color:#326f0c; | ||||
|     font-size: 55px; | ||||
| } | ||||
| 
 | ||||
| #wrap { | ||||
|     position:absolute; | ||||
|     text-align:center; | ||||
|     position: absolute; | ||||
|     top: 50%; | ||||
|     left: 50%; | ||||
|     margin-right: -50%; | ||||
|     transform: translate(-50%, -50%); | ||||
| } | ||||
| 
 | ||||
| #ddate { | ||||
|     text-transform:uppercase; | ||||
| } | ||||
| 
 | ||||
| #dtime { | ||||
|     font-size: 305%; | ||||
| } | ||||
|  | @ -0,0 +1,125 @@ | |||
| /* | ||||
| * https://gitlab.com/zlax/dtime-js
 | ||||
| * based on: | ||||
| * | ||||
| * REAL-TIME CLOCK (c) 2009 por Tiago Madeira (http://tiagomadeira.com/)
 | ||||
| * Idealizado por Santaum (http://santaum.org/)
 | ||||
| * | ||||
| * All Hail Eris! | ||||
| * | ||||
| * This program is free software: you can redistribute it and/or modify | ||||
| * it under the terms of the GNU General Public License as published by | ||||
| * the Free Software Foundation, either version 3 of the License, or | ||||
| * (at your option) any later version. | ||||
| * | ||||
| * This program is distributed in the hope that it will be useful, | ||||
| * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| * GNU General Public License for more details. | ||||
| * | ||||
| * You should have received a copy of the GNU General Public License | ||||
| * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||
| */ | ||||
| 
 | ||||
| function az(x) { | ||||
|     if (x < 10) | ||||
|         return "0"+x; | ||||
|     return x; | ||||
| } | ||||
| 
 | ||||
| function ly(Y) { | ||||
|     return (Y % 4 == 0 && !(Y % 100 == 0 && Y % 400 != 0)); | ||||
| } | ||||
| 
 | ||||
| function dy(D, M, Y) { | ||||
|     var dm = Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); | ||||
|     if (ly(Y)) { | ||||
|         dm[1] = 29; | ||||
|     } | ||||
|     var d = D; | ||||
|     for (var i = 0; i < M-1; i++) { | ||||
|         d+= dm[i] | ||||
|     } | ||||
|     return d; | ||||
| } | ||||
| 
 | ||||
| function dtime(gregorianDate) { | ||||
|     // Easter Island Winter Time Zone offset (-5*60*60*1000)
 | ||||
|     var date = new Date(gregorianDate.getTime()-18000000); | ||||
| 
 | ||||
|     var D = date.getUTCDate(); | ||||
|     var M = date.getUTCMonth()+1; | ||||
|     var Y = date.getUTCFullYear(); | ||||
|     var d = dy(D, M, Y); | ||||
|     var sttiby = 0; | ||||
|     if (ly(Y)) { | ||||
|         if (d == 60) { | ||||
|             sttiby = 1; | ||||
|         } else if (d > 60) { | ||||
|             d--; | ||||
|         } | ||||
|     } | ||||
|     M = Math.floor(d/73); | ||||
|     D = d % 73; | ||||
|     if (D == 0) { | ||||
|         M--; | ||||
|         D = 73; | ||||
|     } | ||||
|     switch (M) { | ||||
|         case 0: | ||||
|             M = "Chaos"; | ||||
|             break; | ||||
|         case 1: | ||||
|             M = "Discord"; | ||||
|             break; | ||||
|         case 2: | ||||
|             M = "Confusion"; | ||||
|             break; | ||||
|         case 3: | ||||
|             M = "Bureaucracy"; | ||||
|             break; | ||||
|         case 4: | ||||
|             M = "Aftermath"; | ||||
|             break; | ||||
|         default: | ||||
|             M = "fnord"; | ||||
|     } | ||||
|     Y+= 1166; | ||||
|     if (sttiby) { | ||||
|         var ddatestr = "St. Tib's Day, "+Y+" YOLD"; | ||||
|     } else { | ||||
|         var ddatestr = M+" "+az(D)+", "+Y+" YOLD"; | ||||
|     } | ||||
| 
 | ||||
|     var h = date.getUTCHours(); | ||||
|     var m = date.getUTCMinutes(); | ||||
|     var s = date.getUTCSeconds(); | ||||
|     var ms = date.getUTCMilliseconds(); | ||||
|     var e = h*3600000+m*60000+s*1000+ms; | ||||
|     var ds = Math.round(e/864); | ||||
| 
 | ||||
|     h = Math.floor(ds/10000); | ||||
|     ds%= 10000; | ||||
|     m = Math.floor(ds/100); | ||||
|     ds%= 100; | ||||
|     s = ds; | ||||
|     var dtimestr = az(h)+":"+az(m)+":"+az(s); | ||||
| 
 | ||||
|     return [ddatestr, dtimestr]; | ||||
| } | ||||
| 
 | ||||
| function go() { | ||||
|     var iddate = document.getElementById("ddate"); | ||||
|     var idtime = document.getElementById("dtime"); | ||||
|     // Current date-time with any time zone offset
 | ||||
|     var ddatetime = new Date(); | ||||
|     ddatetime = dtime(ddatetime); | ||||
|     iddate.innerHTML = ddatetime[0]; | ||||
|     idtime.innerHTML = ddatetime[1]; | ||||
| } | ||||
| 
 | ||||
| window.onload = function() { | ||||
|     go(); | ||||
|     // 1 discordian decimal second = 864 christian milliseconds
 | ||||
|     setInterval(go, 864); | ||||
| } | ||||
							
								
								
									
										185
									
								
								index.html
								
								
								
								
							
							
						
						
									
										185
									
								
								index.html
								
								
								
								
							|  | @ -1,174 +1,11 @@ | |||
| <!doctype html public "-//W3C//DTD XHTML 1.0 Strict//EN" | ||||
|     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | ||||
| 
 | ||||
| <!-- | ||||
| REAL-TIME CLOCK (c) 2009 por Tiago Madeira (http://tiagomadeira.com/) | ||||
| Idealizado por Santaum (http://santaum.org/) | ||||
| 
 | ||||
| All Hail Eris! | ||||
| 
 | ||||
| This program is free software: you can redistribute it and/or modify | ||||
| it under the terms of the GNU General Public License as published by | ||||
| the Free Software Foundation, either version 3 of the License, or | ||||
| (at your option) any later version. | ||||
| 
 | ||||
| This program is distributed in the hope that it will be useful, | ||||
| but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| GNU General Public License for more details. | ||||
| 
 | ||||
| You should have received a copy of the GNU General Public License | ||||
| along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
| --> | ||||
| 
 | ||||
|     <script type="text/javascript"> | ||||
|     function az(x) { | ||||
|         if (x < 10) | ||||
|             return "0"+x; | ||||
|         return x; | ||||
|     } | ||||
| 
 | ||||
|     function ly(Y) { | ||||
|         return (Y % 4 == 0 && !(Y % 100 == 0 && Y % 400 != 0)); | ||||
|     } | ||||
| 
 | ||||
|     function dy(D, M, Y) { | ||||
|         var dm = Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); | ||||
|         if (ly(Y)) { | ||||
|             dm[1] = 29; | ||||
|         } | ||||
|         var d = D; | ||||
|         for (var i = 0; i < M-1; i++) { | ||||
|             d+= dm[i] | ||||
|         } | ||||
|         return d; | ||||
|     } | ||||
| 
 | ||||
|     function go() { | ||||
|         var iddate = document.getElementById("ddate"); | ||||
|         var idtime = document.getElementById("dtime"); | ||||
|         var date = new Date(); | ||||
| 
 | ||||
|         var D = date.getDate(); | ||||
|         var M = date.getMonth()+1; | ||||
|         var Y = date.getFullYear(); | ||||
|         var d = dy(D, M, Y); | ||||
|         var sttiby = 0; | ||||
|         if (ly(Y)) { | ||||
|             if (d == 60) { | ||||
|                 sttiby = 1; | ||||
|             } else if (d > 60) { | ||||
|                 d--; | ||||
|             } | ||||
|         } | ||||
|         M = Math.floor(d/73); | ||||
|         D = d % 73; | ||||
|         if (D == 0) { | ||||
|             M--; | ||||
|             D = 73; | ||||
|         } | ||||
|         switch (M) { | ||||
|             case 0: | ||||
|                 M = "Caos"; | ||||
|                 break; | ||||
|             case 1: | ||||
|                 M = "Discórdia"; | ||||
|                 break; | ||||
|             case 2: | ||||
|                 M = "Confusão"; | ||||
|                 break; | ||||
|             case 3: | ||||
|                 M = "Burocracia"; | ||||
|                 break; | ||||
|             case 4: | ||||
|                 M = "Consequências"; | ||||
|                 break; | ||||
|             default: | ||||
|                 M = "fnord"; | ||||
|         } | ||||
|         Y+= 1166; | ||||
|         if (sttiby) { | ||||
|             iddate.innerHTML = "Dia de São Tiby, "+Y+" YOLD"; | ||||
|         } else { | ||||
|             iddate.innerHTML = az(D)+" de "+M+" de "+Y+" YOLD"; | ||||
|         } | ||||
| 
 | ||||
|         var h = date.getHours(); | ||||
|         var m = date.getMinutes(); | ||||
|         var s = date.getSeconds(); | ||||
|         var e = h*3600+m*60+s; | ||||
|         var ds = Math.round(e*1000/864); | ||||
|         h = Math.floor(ds/10000); | ||||
|         ds%= 10000; | ||||
|         m = Math.floor(ds/100); | ||||
|         ds%= 100; | ||||
|         s = ds; | ||||
|         idtime.innerHTML = az(h)+":"+az(m)+":"+az(s); | ||||
|     } | ||||
| 
 | ||||
|     window.onload = function() { | ||||
|         go(); | ||||
|         setInterval(go, 100); | ||||
|     } | ||||
|     </script> | ||||
|     <style type="text/css"> | ||||
|         * { | ||||
|             margin:0; | ||||
|             padding:0; | ||||
|         } | ||||
| 
 | ||||
|         html { | ||||
|             width:100%; | ||||
|             height:100%; | ||||
|             position:relative; | ||||
|             background:#f1f1f1; | ||||
|             color:#326f0c; | ||||
|             font:14px "Luxi Sans", "Lucida Sans", "Trebuchet MS", "Bitstream Vera Sans", serif; | ||||
|         } | ||||
| 
 | ||||
|         #wrap { | ||||
|             position:absolute; | ||||
|             width:240px; | ||||
|             height:100px; | ||||
| /*          left:50%; */ | ||||
| /*          top:50%; */ | ||||
|             margin-top:5px; | ||||
|             text-align:center; | ||||
|         } | ||||
| 
 | ||||
|         #ddate { | ||||
|             text-transform:uppercase; | ||||
|         } | ||||
| 
 | ||||
|         #dtime { | ||||
|             font:40px "Bitstream Vera Sans Mono", "Courier New", monospace; | ||||
|         } | ||||
| 
 | ||||
|         #license { | ||||
|             position:absolute; | ||||
|             bottom:5px; | ||||
|             left:50%; | ||||
|             margin-left:-300px; | ||||
|             width:600px; | ||||
|             text-align:center; | ||||
|             font-size:0.8em; | ||||
|             line-height:1.4em; | ||||
|         } | ||||
| 
 | ||||
|         a { | ||||
|             color:#aaa; | ||||
|             text-decoration:underline; | ||||
|         } | ||||
| 
 | ||||
|         a:hover { | ||||
|             text-decoration:none; | ||||
|         } | ||||
|     </style> | ||||
| 
 | ||||
|     <div id="wrap"> | ||||
|         <p id="ddate">Ative o JavaScript.</p> | ||||
|         <p id="dtime">00:00:00</p> | ||||
|     </div> | ||||
| <br /><br /><br /><br /><br /> | ||||
| 
 | ||||
| </!doctype> | ||||
| <!doctype html public "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | ||||
| <html><head> | ||||
|     <!-- https://gitlab.com/zlax/dtime-js discrodian date and time --> | ||||
|     <link rel="stylesheet" type="text/css" href="dtime.css"> | ||||
|     <script type="text/javascript" src="dtime.js"></script> | ||||
| </head> | ||||
| <div id="wrap"> | ||||
|     <p id="ddate">Need javascript enabled</p> | ||||
|     <p id="dtime">00:00:00</p> | ||||
| </div> | ||||
| </html> | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue