Time Server – Documentation

      No Comments on Time Server – Documentation
Intro | Documentation  | Code Snippets Form

The URL is http://www.lashtal.com/thelemic_date/date.php, and the current URL parameters as described here are fixed, although additional options may be provided without loss of functionality.  Accessing the URL without specifying any parameters will give a transparent PNG image of the current date as calculated according to Universal Time.  The optional parameters are as follows:

Parameter Values/Description Default
cedate Any valid UT date from Sol in Aries 1904 to Sol in Aries 2388 inc., in the format yyyymmddhhmmss. Current UTC date.
output image|html|html-unicode|xml image
timezone Minutes + or -, East is positive.  This is the negative of the peculiar JavaScript getTimezoneOffset() method. 0
showdegrees 0|1 0
weekday 0|1 0
yeardisplay long|medium|short|number|none long
yeartype roman|indian roman
language pseudo-latin|true-latin true-latin
request complete|sun|moon|sun_sign|moon_sign|weekday|year complete
For HTML output:    
class 0|1 0
linkback 0|1 1
For image output:    
astrofont niocs|astrofont|starfontsans|starfontserif niocs
textfont times|verdana|georgia|arial|trebuchet|courier times
astrosize Font pitch, in points. 12
textsize Font pitch, in points. 12
colour|color Hexadecimal font colour, without leading ‘#’.  (Applies to both fonts.) 000000
matte Hexadecimal font colour, without leading ‘#’.  (Applies to both fonts.) FFFFFF
opaque 0|1 0
Reverse date lookup:    
tdate Any valid New Æon date from Oo to XXIxxi inc., in the format Atu-Atu-degreesSunSign or decimalyear-degreesSunSign. None.

The first parameter must be preceded by a question mark, and any others by an ampersand.  Parameters can be given in any order. e.g.,


If any parameters are entered incorrectly, there will be no output.  All parameters must be entered in lower case, but the values are case-insensitive.


Any valid UT date from Sol in Aries 1904 to Sol in Aries 2388 inc., in the format yyyymmddhhmmss.

This should be unspecified if the current Thelemic date is required.  When specified, this option will display a past or future Thelemic date.  The format is identical to the PHP gmdate('YmdHis') function, e.g. “20051231095907” (always 14 characters, with leading zeros, and with hours given according to the 24-hour clock).  Valid dates are in the range 19040321005023 to 23880320080919 inclusive.  It should be noted that non-existent dates and times such as, e.g., the 31st of April, will be automatically converted to a valid date – in this example, to the 1st of May.  The timezone parameter will still be taken into account even if cedate is specified.


[ image | html | html-unicode | xml ]

The default output format is “image”, which serves a PNG image and can be used as part of an <img> tag.
e.g., <img src="http://www.lashtal.com/thelemic_date/date.php" alt="" title="Thelemic Date" />
N.B. The vertical alignment of the image relative to the surrounding text will probably have to be adjusted to suit, which can be done via the “style” attribute or the [deprecated] “align” attribute of the <img> tag, or as part of a CSS stylesheet.  Be aware that some browsers can be configured not to display offsite images.

The minimal output format is “html”, which returns a string of HTML with the text/html; charset=iso-8859-1 MIME type.  An example of the HTML output:
Sol in Sagittario : Luna in Leone : Anno IVxiii &aelig;r&aelig; nov&aelig;
This displays as follows in a web-browser:
Sol in Sagittario : Luna in Leone : Anno IVxiii æræ novæ
This sort of output can be embedded using either an <object> tag or an <iframe> tag (depending on the type of HTML you are using); or alternatively read directly into a server-side script.
e.g., <object codebase="http://www.lashtal.com/thelemic_date/" data="http://www.lashtal.com/thelemic_date/date.php?output=html" type="text/html" style="width: 100%"></object>
or <iframe src="http://www.lashtal.com/thelemic_date/date.php?output=html" width="100%" frameborder="0"></iframe>

The “html-unicode” output is the same as the “html” output except that it supplies Unicode HTML entities for the zodiacal and planetary signs, e.g.
&#9737; in &#9808; : &#9789; in &#9804;
These will only display properly if the user has a font that can display astrological characters (and IE users are spiflicated either way; but see the notes to the class parameter).  You may or may not be able to see this example in your browser:
☉ in ♐ : ☽ in ♌

The raw XML (which is served in UTF-8 character encoding) is potentially the most powerful output type, but although the output is human-readable it really requires a server-side script to process the data.  In order to take advantage of the client-side JavaScript timezone setting, and noting that JavaScript cannot load off-site XML data, the best way to do this is to set up a little script on the host domain to load the XML data from lashtal.com over what will probably be a very high-speed internet connection (the delay will probably be under 0.1 seconds, but if an <object> or <img> tag is used then the rest of the page will continue to load without interruption).  The XML file can then be parsed by the script and delivered to the browser in whatever date format is required.  Here is an example of the first stage of that process; but cf. both the JavaScript and PHP code snippets.

In JavaScript:
document.write('<object codebase="http://www.yourdomain.org/" data="XMLproxy.php?timezone='+timezone+'" type="text/html" style="width: 100%"></object>')

And the equivalent HTML:
<object codebase="http://www.yourdomain.org/" data="XMLproxy.php" type="text/html" style="width: 100%"><object>

A sample of the XML output can be seen here.  Note that such things as the language, weekday and showdegrees options affect only the children of the FullDate element, whilst being included in the standard XML elements even if those options are unspecified or negated.


Minutes + or −, East is positive.  Default is 0.

N.B. Due to the negligible differences of Solar/Lunar positions around the globe, this parameter will only affect the output if common-era specific data is being requested, such as when the weekday option is specified, or when requesting XML data, or using a tdate query.
he timezone parameter specifies the number of whole minutes of time West or East of Greenwich, where East is positive and West is negative.  E.g., Baghdad is 180 or +180, whilst Caracas is −240 (assuming no daylight savings time).  If used, this parameter should be sent via the client-side, i.e. the web-browser in most cases, and it will then account for local timezone settings on the user’s machine (including daylight savings time) so long as the user’s clock is set correctly.  This can be done with JavaScript, as in the JS code snippet.


[ 0 | 1 ]

This allows for the display of the number of degrees that the planet has passed within the zodiacal sign, e.g. 29° Sagittarius.  With respect to Our Lady of the Night, a single degree averages about 109 minutes, more or less, so there is the likelihood that this will not correspond exactly to Cynthia’s actual position with reference to the user’s geographical location within any given time zone, and should therefore be used with discretion.


[ 0 | 1 ]

This toggles the display of the Latin weekdays (“dies Jovis”, “dies Saturni”, etc.).
e.g., Sol in Capricorno : Luna in Scorpio : dies Martis : Anno IVxiii æræ novæ
This option is not automatically applied by request=complete, and must be specified separately.


[ long | medium | short | number | none ]

This is only applicable when request=complete or request=year.
“long” format, e.g. Anno IVxiii æræ novæ
“medium” format, e.g. Anno IVxiii a.n.
“short” format, e.g. An. IVxiii a.n.
“number” format, e.g. IVxiii


[ roman | indian ]

Displays either roman numerals, e.g. IVxiii, or the denary “Arabic” or Indian representation, e.g. 101.


[ pseudo-latin | true-latin ]

When set to “pseudo-latin”, the output is given according to the more recognizable type, e.g.
Sol in Virgo : Luna in Aries : Anno IIx era novis
However, when set to “true-latin” the output is given with the correct Latin case-endings and spellings, e.g.
Sol in Virgine : Luna in Ariete : Anno IIx æræ novæ
Because of the nature of Latin, the output is also modified by the showdegrees parameter, e.g.
Sol in 11° Virginis : Luna in 8° Arietis : Anno IIx æræ novæ

This is all rather irrelevant so far as the vast majority are concerned, I’m sure; but for what it’s worth, the “pseudo-latin’ setting produces gibberish.  For example, Era (the Goddess Hera, or the mistress [of a house]) is not the same as aera (an age), though it is pronounced the same, and might be argued; but crucially novis is in the wrong gender, case and number (here, the full sense is something like “the mistress in the new things”).  The inflection of Latin depends upon context, which is why “the moon inof Aries” is inflected differently to “the moon in Aries”.  In the case of the Thelemic year, normally it should be as given for the “true-latin” setting, where the full sense reads “in the Nth year of the new era; but when alone (without Anno) it should be, e.g., IIIiv aerâ novâ, meaning “IIIiv in the new era”.


[ 0 | 1 ]

This option causes the output to include a CSS <span> tag.
e.g., <span class="LAShTALThelemicDate">Sol in Sagittarius : Luna in Leo : Anno IVxiii era novis</span>
With CSS, one can style the text by referring to the class name.
e.g., span.LAShTALThelemicDate { color: red; margin: 0.5ex 0 0 0; }
As well as ordinary styling, this accommodates Dynamic Text Replacement, where the UTF-8 astrological symbols could be replaced with images based on any given font.  However, Dynamic Text Replacement requires JavaScript on the client side.


[ 0 | 1 ]

This will insert an <a> tag inside the span tag.  The link points to http://www.lashtal.com/thelemic_date/, and the hyperlink can be styled using the following CSS:
e.g., span.LAShTALThelemicDate a { text-decoration: none; }


[ complete | sun | moon | sun_sign | moon_sign | weekday | year ]

This specifies the particular element of the Thelemic date that is required.  It should be noted that sending several requests to the time server will be slower than getting the whole output at once.  If request=sun_sign or request=moon_sign, the output is given in English, not Latin.


[ niocs | astrofont | starfontsans | starfontserif ]


[ times | verdana | georgia | arial | trebuchet | courier ]

These parameters can be used to specify how the astrological and textual portions of the output should be presented when the output is an image.  The Nu Isis Occult Symbols font (“niocs”) was designed by the Nu Isis Working Group, AstroFont by Astrolars and the two StarFonts by Anthony Owen.


Default is 12.


Default is 12.

These specify the size of the respective fonts in points.


Any hexadecimal colour, 000000 to FFFFFF.  Default is 000000, black.

This sets the colour for both fonts.  Either the colour or color spelling is acceptable.


Any hexadecimal colour, 000000 to FFFFFF.  Default is FFFFFF, white.

This is important for both transparent and opaque image formats.  If the image is transparent, this setting will be used to blend the edges of the font into the page background, and if the image is opaque it will provide the background colour.


[ 0 | 1 ]

Normally, the image is served as a transparent PNG; but it may be preferable to specify a background when one is certain of one’s ground.


Any valid New Æon date from Oo to XXIxxi inc., in the format Atu-atu-degreesSunSign or decimalyear-degreesSunSign.


This function will give the date and time on which the Sun enters the given sign and degree.  The parameter accepts two values: the Thelemic year, and optionally also the sun sign (with or without intra-sign degrees), separated by dashes.
e.g., tdate=iv-xiii-sagittarius  (gives the date for 0° Sagittarius, Anno IVxiii)
X-xxi-15aries  (15° Aries, Anno Xxxi)
93  (0° Aries, Anno IVv)
483-23Capricorn  (23° Capricorn, Anno XXIxxi)

Roman numerals must be given as IV, IX, etc., not using the older IIII/VIIII/etc. forms, and using the letter “o” or “O” (not the numeral 0, zero) to represent Atu O.  Valid years are Oo thru XXIxxi, or 0 to 483 inc.  As may be seen from the examples, the sun sign defaults to Aries, just as the intra-sign degrees will default to zero.  The spellings of the zodiacal signs are, as normal, case-insensitive; and can be given according to either the English or Latin [nominative case] spellings:
Aries, Taurus, Gemini, Cancer, Leo, Virgo, Libra, Scorpio/Scorpius, Sagittarius, Capricorn/Capricornus, Aquarius, Pisces.

N.B. The reverse lookup output options are limited to “html” and “image”.  The date is given according to the RFC 2822 format.
e.g., Thu, 20 Mar 1997 13:46:23 +0000

See also the Reverse Lookup code snippet for using the output of this function in PHP/Javascript.

Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments