Format Timestamp ändern

Begonnen von choetzu, 14 März 2017, 19:56:49

Vorheriges Thema - Nächstes Thema

choetzu

Hallo,

im Wiki gibt es hinsichtlich der Darstellung von class="timestamp" folgende Möglichkeiten:

Mit JavaScript- und RegEx-Funktionen den Wert umwandeln in:
Tag:Monat: data-substitution="toDate().ddmm()"
Stunden:Minuten: data-substitution="toDate().hhmm()"
Stunden:Minuten:Sekunden: data-substitution="toDate().hhmmss()"
den Namen des Wochentages: data-substitution="toDate().eeee()"
einen Zeitraum (langes Format): data-substitution="toDate().ago()"
einen Zeitraum (kurzes Format):data-substitution="toDate().ago('hh:mm:ss')"
einen Zeitraum (Minuten ohne führende Nullen):data-substitution="toDate().ago('m')"
20:15 statt 20:15:00: data-substitution="s/(:00)$//g"


Das ist schon mal nicht schlecht. Wenn ich jedoch meinen Timestamp wie folgt darstellen will..

Di, 14.03, 19.37

dann komm ich nicht drum herum,  3 labels mit jeweils 1 timestamps zu erstellen: 1 Timestamp für Di, 1 Timestamp für 14.03. und 1 Timestamp für 19:37.


Oder gibt es eine andere schlankere Möglichkeit?

Danke für die Hilfe. Lg C



Raspi3, EnOcean, Zwave, Homematic

choetzu

Ich interpretiere dies als "nein, geht nicht"  :)  dann muss ich es eben mit 3labels machen...


Gesendet von iPhone mit Tapatalk Pro
Raspi3, EnOcean, Zwave, Homematic

choetzu

Es ist knapp ein Jahr her. Gibt es die Möglichkeit immer noch nicht? Im forum hab ich nix gefunden,,
Raspi3, EnOcean, Zwave, Homematic

setstate

Ich habe es heute mal eingebaut. Freie Format-Definition

myDate.format('ee, DD.MM hh:mm')

Kommt beim nächsten Update mit

choetzu

Super, perfekt. Gibt man das  auch bei data-substitution ein? Also  ,,toDate().ee, DD.MM hh:mm()"?


Gesendet von iPhone mit Tapatalk
Raspi3, EnOcean, Zwave, Homematic

setstate

eher so

toDate().format('ee, DD.MM hh:mm')

choetzu

Geht noch nicht ,richtig? Habe update all gemach und es kommt nothing to do..


Gesendet von iPhone mit Tapatalk
Raspi3, EnOcean, Zwave, Homematic

setstate

ich habe ja auch noch kein Update hochgeladen.

Für Eilige


Date.prototype.format = function (format) {
    var YYYY = this.getFullYear().toString();
    var YY = this.getYear().toString();
    var MM = (this.getMonth() + 1).toString(); // getMonth() is zero-based
    var dd = this.getDate().toString();
    var hh = this.getHours().toString();
    var mm = this.getMinutes().toString();
    var ss = this.getSeconds().toString();
    var eeee = this.eeee();
    var eee = this.eee();
    var ee = this.ee();
    var ret = format;
    ret = ret.replace('DD', (dd > 9) ? dd : '0' + dd);
    ret = ret.replace('D', dd);
    ret = ret.replace('MM', (MM > 9) ? MM : '0' + MM);
    ret = ret.replace('M', MM);
    ret = ret.replace('YYYY', YYYY);
    ret = ret.replace('YY', YY);
    ret = ret.replace('hh', (hh > 9) ? hh : '0' + hh);
    ret = ret.replace('mm', (mm > 9) ? mm : '0' + mm);
    ret = ret.replace('ss', (ss > 9) ? ss : '0' + ss);
    ret = ret.replace('h', hh);
    ret = ret.replace('m', mm);
    ret = ret.replace('s', ss);
    ret = ret.replace('eeee', eeee);
    ret = ret.replace('eee', eee);
    ret = ret.replace('ee', ee);

    return ret;
};


muss in die js/fhem-tablet-ui.js

choetzu

so geil!! Danke, klappt auf Anhieb... You make my day...Danke
Raspi3, EnOcean, Zwave, Homematic

choetzu

Hallo,
Hab heute update all gemacht.
Nun ist es wieder nicht mehr gültig. Hast du es nicht eingecheckt?
Danke. Lg c
Raspi3, EnOcean, Zwave, Homematic

setstate

nein, ich versuche gerade noch etwas am Performance-Thema und an der Änderung des Multistatebutton. Ist alles noch nicht eincheckbar

PS915

Gibt es hierzu noch Neuigkeiten? Ich würde gerne die Timestamps meiner Readings etwas anders formatieren!

Gruß,
Phil