ilch Forum » Ilch CMS 2.X » Kritik und Verbesserungen » [FIXED] Modul Kasse

Geschlossen
  1. #1
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.401
    Beitragswertungen
    389 Beitragspunkte
    Moin,

    ich habe gerade mal eine Buchung eingetragen und finde, dass man die Ausgabe der Buchungen "filtern" können sollte. Damit meine ich bisschen so wie in ilch1.1. Vielleicht kann man das ja z.B. mit zwei DropDown-Listen für Jahr und Monat erledigen?

    Außerdem könnte man beim Eintragen einer Buchung den DatePicker einsetzen für das Datum der Buchung. Ich habe letztens gesehen, dass bei dem Commit von 06. August der auch eingebunden wurde. lächeln

    Oder ist das sowieso schon alles geplant?

    Grüße
    blackcoder
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    corian Entwickler
    Registriert seit
    16.06.2011
    Beiträge
    1.096
    Beitragswertungen
    122 Beitragspunkte
    Hey, ja das Kassen Modul ist noch ziemlich grob gehalten. Momentan sind einfach andere Sachen wichtiger. Ich kann es mir ja auf die Merkliste setzen.

    Mfg und danke für dein feedback
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.401
    Beitragswertungen
    389 Beitragspunkte
    Ich habe gerade hier und da im Code von Version 2 und dem Kassen-Modul gelesen, aber ich behaupte nicht, dass ich da schon den Durchblick hätte.

    Den Datepicker für "datetime" kann man ja mit zwei Zeilen hinzufügen, wenn man keine Uhrzeit braucht. Ein "TimePicker" scheint nicht Bestandteil von jquery zu sein oder ich hab ihn nicht gefunden.

    Bei "\views\admin\index\index.php" und "\views\admin\index\treatPayment.php"
    ganz unten innerhalb des "script"-tags folgende Zeile einfügen:
    $('#datetime').datepicker({ dateFormat: "yy-mm-dd" });


    Dafür wird für die Uhrzeit beim Bearbeiten einer Buchung jetzt immer "00:00:00" angezeigt. Ich habe noch nicht geguckt, ob die Spalte in der Datenbank den Datentyp Text oder DateTime hat, aber wahrscheinlich DateTime und daher die 00:00:00 Uhr?

    Kann es sein, dass zwei Datepicker "eingebaut" wurden?
    api.jqueryui.com/datepicker/
    bootstrap-datepicker.readthedocs.org/en/release/index.html
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    corian Entwickler
    Registriert seit
    16.06.2011
    Beiträge
    1.096
    Beitragswertungen
    122 Beitragspunkte
    Eigentlich kannst du mit "data-date" eine Startzeit für den Datepicker vorwählen.
    z.b. so:
    <div id="datetime" data-date="01-01-1980" data-date-format="dd-mm-yyyy"></div>


    Ich hoffe mal ich habe deine Frage richtig verstanden.
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.401
    Beitragswertungen
    389 Beitragspunkte
    Ich meinte, dass man mit dem DatePicker ja nur ein Datum wählen kann und da hatte ich das Format mit "yy-mm-dd" vorgegeben. Wenn ich die Buchung dann speichere und anschließend bearbeite (treatPayment), dann wird nicht nur mein gewähltes Datum angezeigt, sondern Datum und Uhrzeit in der Form "yy-mm-dd hh-mm-ss". Für die Uhrzeit steht dort dann "00:00:00", weil der Datepicker ja nur das Datum geliefert hat.

    Ich schätze der Teil für die Uhrzeit wird beim Speichern in der Datenbank hinzugefügt, aber ich habe das noch nicht überprüft.
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    corian Entwickler
    Registriert seit
    16.06.2011
    Beiträge
    1.096
    Beitragswertungen
    122 Beitragspunkte
    ahso, ja dann musst du da die Ausgabe anders gestalten.

    $date = new \Ilch\Date($checkout->getDate());
    
    $date->format("Y-m-d", true);


    so in etwa.


    Zuletzt modifiziert von corian am 19.08.2014 - 20:53:31
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.401
    Beitragswertungen
    389 Beitragspunkte
    Danke. War der Code für die treatPayment.php gedacht?

    Ich habe es einmal eingebaut um value für die Inputbox "datetime" zu setzen und es funktioniert:
    value="<?php $date = new \Ilch\Date($checkout->getDatetime()); echo $date->format("Y-m-d", true); ?>" />

    Die $checkout->getDate() gab es nicht.


    Außerdem habe ich das Ganze nochmal probiert, indem ich eine getDate() in checkout\models\Entry.php eingefügt habe.

        public function getDate()
        {
        	$date = new \Ilch\Date($this->getDatetime());
    
        	return $date->format("Y-m-d", true);
        }

    Oder hat das in checkout\models\Entry.php nichts zu suchen?

    Die Funktion habe ich dann in treatPayment.php genutzt:
    value="<?php echo $this->escape($checkout->getDate()); ?>" />
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    corian Entwickler
    Registriert seit
    16.06.2011
    Beiträge
    1.096
    Beitragswertungen
    122 Beitragspunkte
    Ja sorry das war mein Fehler. Das getDate kannst du wieder entfernen da ja im model schon getDatetime vorhanden ist und damit kannst du arbeiten.

    Je nach dem wo du es haben möchtest kannst du den Code in der View einsetzen.

    Das am besten zum anfang gleich nach der foreach schleife.

    <?php $date = new \Ilch\Date($checkout->getDatetime()); ?>


    Und hier die Ausgabe
    value="<?php echo $date->format("Y-m-d", true); ?>" />


    Dann sollte es eigentlich funktionieren.
    Bin gerade mit dem handy unterwegs hoffe das war jetzt richtig.

    Mfg


    Zuletzt modifiziert von corian am 20.08.2014 - 19:50:40
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Kritik und Verbesserungen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten