wende60 / myevents

Redaxo 5 AddOn to manage events
7 stars 1 forks source link

Termine am "heutigen" Tag werden nicht angezeigt #10

Closed Kucki2 closed 7 years ago

Kucki2 commented 7 years ago

Hi,

aktuell werden Termine, die am "heutigen" Tag statt finden, schon nicht mehr in der Eventliste angezeigt. Die Uhrzeit ist hier nicht relevant, wird also ignoriert. Es wäre schön, wenn diese Termine zumindest bis zur angegebenen Uhrzeit oder alternativ bis 23:59 Uhr sichtbar sind.

Ist es möglich, dass zu ändern?

Grüße, Antje.

wende60 commented 7 years ago

hi Antje,

aus historischen Gründen stehen Anfangs und Enddatum eines Events nur als date-field, nicht aber als datetime-field in der db, auch wenn die einzelnen Termine durchaus mit der Zeit abgelegt sind. Dadurch fallen Termine zum aktuellen Datum schon bei der Datenbankanfrage raus.

Es gibt eine einfache Lösung, die ich auch implementieren werde: in der Beispieldatei myeventLatest musst Du auf Zeile 99 die Mysql-Query anpassen:

$sql->setQuery( "select * from `" . $tableDates . "` " .
        "a left join `" . $tableContent . "` b on a.id = b.event_id " .
        "where (a.enddate >= \"" . $myeventsStartDate . "\" and a.startdate <= \"" . $myeventsEndDate . "\") " .
        "and b.clang = " . $languageId . " order by a.startdate"); 

Geändert hat sich hier lediglich > zu >= und < zu <=, also grösser zu grösser oder gleich und kleiner zu kleiner oder gleich.

Alle Termine innerhalb des ausgewählten Zeitraumes durchlaufen noch eine PHP-Prüfung, hier wird dann auch die Uhrzeit berücksichtigt. Damit sollte das von Dir gewünschte Verhalten erreicht werden.

Gib Bescheid, ob das hilft...

Grüsse, Jo

Kucki2 commented 7 years ago

Hi Jo,

sehr genial, genau, wie ich es mir vorgestellt habe :-) Tausend Dank...

Grüße, Antje.

wende60 commented 7 years ago

Bitte gerne :)