Datums Anzeige

  • Seite 1 von 2
06.09.2007 16:04
#1 Datums Anzeige
Si
Mitglied

Besteht die Möglichkeit, alternativ zu unserer Zeitrechnung alternativ auch die jid. und die arabische Zeitrechnung einzubauen? Ich denke das wäre eine nette Geste, da in einem Religionsforum nunmal nicht nur Christen verweilen...



----------------------------------------------------------------------------------------
Board Nr: 49568
http://www.dialogzwischendenreligionen.com


 Antworten

 Beitrag melden
06.09.2007 16:59 (zuletzt bearbeitet: 06.09.2007 17:06)
#2 RE: Datums Anzeige
avatar
Mitglied
Das ist grundsätzlich möglich mit Änderungen im Template. Die Zeit liegt zunächst in Sekunden seit dem 1.1.1970 (UTC) vor. Mit einer entsprechenden Umrechnungsformel lässt sich das auch in anderen Zeitrechnungen ausdrücken.
Hier gibt es recht viele Umrechnungen (Javascript): http://www.nabkal.de/umrechnung.html
Welche benötigst du?

 Antworten

 Beitrag melden
06.09.2007 17:07 (zuletzt bearbeitet: 06.09.2007 17:08)
#3 RE: Datums Anzeige
Si
Mitglied
In Antwort auf:
Welche benötigst du?


Die jüdische und die islamische

Wie und vorallem wo baut man sie dann ein?

 Antworten

 Beitrag melden
06.09.2007 19:12
#4 RE: Datums Anzeige
avatar
Mitglied

Scheint recht komplex zu sein......
Das Datum herauszufinden ist ja ok, aber die Uhrzeiten sind etwas problematisch. Gibt es 'Zeitzonen'?
Hast du ein paar Uhrzeitbeispiele, z.Bsp.

6.9.2007 19:07 (gregorianisch)
= 23.8.1428 ??? (islamisch)
= 23.13.5767 ??? (jüdisch)


 Antworten

 Beitrag melden
06.09.2007 20:05
#5 RE: Datums Anzeige
Si
Mitglied

In Antwort auf:
Hast du ein paar Uhrzeitbeispiele


6.9.2007 18:00 (gregorianisch)= 24.13.5767 0H 000P (jüdisch)
6.9.2007 19:07 (gregorianisch)= 24.13.5767 1H 126P (jüdisch)
7.9.2007 10:30 (gregorianisch)= 24.13.5767 16H 540P (jüdisch)

Der jüdische Tag beginnt mit dem Sonnenuntergang und wurde auf 18:00 festgelegt.
Der Tag unterteilt sich in 24H (Sha'a) und jede Stunde in 1080 Teile = 1080 P (Halakim)

Der islamische Tag beginnt auch am Abend mit dem Sonnenuntergang. Heute ist laut der islamischen Zeitrechnung der 24.8.1428


 Antworten

 Beitrag melden
07.09.2007 14:32
#6 RE: Datums Anzeige
avatar
Mitglied


ausgehend vom 06.09.2007 17:07 (UTC) komme ich auf

Gregorianisch, MEZ: 06.09.2007 19:07
Islamisch: 24.08.1428 01:07
Jüdisch: 24.12.5767 1H 126P

Sind die Daten und das Format korrekt?


 Antworten

 Beitrag melden
07.09.2007 14:46
#7 RE: Datums Anzeige
Si
Mitglied

Richtig


 Antworten

 Beitrag melden
08.09.2007 18:15
#8 RE: Datums Anzeige
avatar
Mitglied

Hier ist mal ein Versuch. Eine paar Warnungen vorweg: Unter Umständen kann die Geschwindigkeit des Forums beinträchtigt werden, da für die Anzeige JEDES Datums mehr oder weniger viel umgerechnet werden muss!!
Des weiteren müssen einige Template-Elemente geändert werden, was recht aufwendig ist und unter Umständen zu Problemen führen kann bei z.Bsp. Softwareupdates des Forums. Alle Anweisungen sind daher ohne Gewähr....

Zur Sicherheit solltest du vorher von allen geänderten Templates eine Sicherheitskopie machen, um sie schnell wieder herstellen zu können.

Einfügen der Skripte
Zunächst wird das auf http://www.nabkal.de beschriebene Skript benötigt (http://www.nabkal.de/datrech.js). Eventuell solltest du den Autor fragen ob du es übernehmen darfst.

Java-Skripte kannst du folgendermaßen in den Header des Forums einfügen (Admin -> Layout -> Header/Footer):
<script type="text/javascript">
/*Hier komme das Skript rein!*/
</script>

Zweitens muss folgendes ebenfalls in den Header

<script type="text/javascript">
function timezone(sec) {
return (new Date(sec*1000)).getTimezoneOffset()*60;
}
function sec2julian(sec) {
return sec/86400 + 2440587;
}
function day2sec(day) {
return Math.round(day*86400);
}
function day2halakim(day) {
/*25920 = 1080 * 24*/
return Math.round(day*25920);
}
function datestring(dt) {
var day = dt.Tag;
var month = dt.Monat;
var year = dt.Jahr;
if(day < 10)
day = '0' + day;
if(month < 10)
month = '0' + month;
return day + '.' + month + '.' + year;
}
function sec2time(sec) {
var tsec = mod(sec, 60);
var tmin = mod(sec-tsec, 3600)/60;
var thour = mod(sec-tsec-tmin*60, 86400)/3600;

if(tmin < 10)
tmin = '0' + tmin;
if(thour < 10)
thour = '0' + thour;

return thour + ':' + tmin;
}
function sec2greg(sec) {
var sec = sec - timezone(sec);
var jd = sec2julian(sec);
var jdday = floor(jd) + 1;
var jdrest = day2sec(jd - jdday + 1);

var dt = makeDateGreg(jdday);
return datestring(dt) + ' ' + sec2time(jdrest);
}
function sec2islam(sec) {
/*21600 = 6 * 3600 (6 Stunden Zeitversatz)*/
var sec = sec - timezone(sec) + 21600;
var jd = sec2julian(sec);
var jdday = floor(jd) + 1;
var jdrest = day2sec(jd - jdday + 1);

var dt = makeDateIslam(jdday);
return datestring(dt) + ' ' + sec2time(jdrest);
}
function sec2jew(sec) {
/*21600 = 6 * 3600 (6 Stunden Zeitversatz)*/
var sec = sec - timezone(sec) + 21600;
var jd = sec2julian(sec);
var jdday = floor(jd) + 1;
var jdrest = day2halakim(jd - jdday + 1);

var dt = makeDateYud(jdday);

var thalakim = mod(jdrest, 1080);
var tshaa = mod(jdrest-thalakim, 25920)/1080;

return datestring(dt) + ' ' + tshaa + 'H ' + thalakim + 'P';
}

function printDate(sec, type) {
if(type == 1)
document.write(sec2greg(sec))
else if(type == 2)
document.write(sec2islam(sec))
else if(type == 3)
document.write(sec2jew(sec))
}
</script>


Änderungen im Template

Am besten ist wohl das Datumsformat als Sprache anzubieten. Dazu musst du in Admin - Template - Sprache drei eigene Sprachen anlegen (für jedes Datumformat eine). Dort müssen zusätzliche Sprachvariablen (für jedes im Template auftauchende Datum) eingefügt werden. Außerdem müssen im Template alle Stellen wo das entsprechende Datum auftaucht editiert werden. Dazu muss zunächst ein eigenes Template aktiviert werden (mit Sprachunterstützung!). Das geht hier Admin -> Templates -> Kopie des Standard Layout anlegen -> mit Sprachunterstützung. Sprachen anlegen und editieren geht in Admin -> Template -> Sprachen

Beispiel für das Template 'Forum Übersicht'

1. Neue Sprachvariable einfügen mit dem Namen {[date_forum_lastchange]}
In der Sprache Deutsch (Gregorianisch) wird sie belegt mit
{{forum:lastchange|dateformat}}

in Deutsch (Islamisch)
<script language="javascript">
printDate({{forum:lastchange}},2)</script>
<noscript>{{forum:lastchange|dateformat}}</noscript>

in Deutsch (Jüdisch) mit
<script language="javascript">
printDate({{forum:lastchange}},3)</script>
<noscript>{{forum:lastchange|dateformat}}</noscript>


2. Im Template 'Forum Übersicht' wird folgendes
{{forum:lastchange|dateformat}}


ausgetauscht gegen
{[date_forum_lastchange]}


Das gleiche wiederholen für die anderen Templates

Im Template 'Forum Ansicht' heißen die Variablen in denen ein Datum steht {{subforum:lastchange}} und {{thread:messagetime}}. Daher werden analog zum obigen Beispiel Sprachvariable mit Namen {[date_subforum_lastchange]} und {[date_thread_messagetime]} erzeugt wobei das forum:lastchange entsprechend ersetzt wird. Auch die Ersetzungen im Template sind analog zum obigen Beispiel.

Im Template 'Thread' heißt die Variable {{message:messagetime}}


 Antworten

 Beitrag melden
11.09.2007 09:00
#9 RE: Datums Anzeige
Si
Mitglied

hmmm...
Danke erstmals für Deine Hilfe.
Aber ich habe ein problem ich kann das script nicht öffnen, mein Compi weigert sich hartnäckik :'(


 Antworten

 Beitrag melden
11.09.2007 22:36
#10 RE: Datums Anzeige
avatar
Mitglied

Schick ich dir per PM


 Antworten

 Beitrag melden
12.09.2007 14:09
#11 RE: Datums Anzeige
Si
Mitglied

Danke, ich habe es eingefügt, aber ich habe, glaube ich, etwas falsch gemacht.
es funktioniert nicht, und bei den Sprachen (im Adminbereich) ist ein durcheineânder von Zeichen. Wie kann ich die Sprachen wieder löschen?


 Antworten

 Beitrag melden
12.09.2007 22:33
#12 RE: Datums Anzeige
avatar
Mitglied

Kannst du eine etwas genauere Fehlerbeschreibung geben, vielleicht mit Screenshot?
Mir ist keine Möglichkeit bekannt eine Sprache wieder zu löschen. Unter 'Bearbeiten' kann aber alles editiert werden, inklusive der Name der Sprache.


 Antworten

 Beitrag melden
17.09.2007 14:29
#13 RE: Datums Anzeige
Si
Mitglied

In Antwort auf:
vielleicht mit Screenshot

Gerne, aber wie stellt man einen solchen her?
Tut mir leid aber in solchen Dingen bin ich leider ein DAU


 Antworten

 Beitrag melden
18.09.2007 03:41
#14 RE: Datums Anzeige
Si
Mitglied

Kommt schon Leute...
Bitte erklärt mir, wie man einen Screenshot macht, ich weiss es wirklich nicht...


 Antworten

 Beitrag melden
18.09.2007 08:17
avatar  ( Gast )
#15 RE: Datums Anzeige
Gast
( Gast )
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!