Huhu
Vorab: Ich habe das News-System völlig zweckentfremdet zu einem Online-Kurs-Plugin.
Es klappt auch soweit alles super Nur ein Wunsch ist noch offen und ich hoffe, dass jemand mir auf die Sprünge helfen kann.
Folgendes Szenario:
Die News sollen solange für einen registrierten Nutzer ungelesen bleiben, bis er sie angeklickt hat. So sieht jemand, ob er eine Lektion bereits gelesen hat oder nicht.
Problem:
Leider markiert das WBB ja von Haus aus alles, was älter als 7 Tage ist, als gelesen. Daher mogel ich über die Datenbank in der News-Tabelle, in dem ich das Datum der Erstellung jeder News per SQL-Abfrage auf den jeweiligen Tag setze.
Zweites Problem: Dadurch werden die News als neu markiert für alle, die sie vor dem gemogelten Erstelldatum gelesen haben. Ich hab inzwischen rausgefunden, dass ich in der Tabelle wcf1_tracked_visit auch das Datum aller letzten Besuche auf den Zeitpunkt der Erstellung der News setzen muss - dann geht es wieder.
Nun meine Fragen:
- Geht das irgendwie eleganter? Ich hab Angst, dass durch die Wuselei in der wcf1_tracked_visit-Tabelle auch andere Dinge wie Artikel, Forum etc. betroffen sind - was auch höchstwahrscheinlich so ist. Nachtrag dazu: Wahoo hat mir grad verraten, wie ich den Timestamp nur für eine ObjectTypeID hinbekomme - damit sollten die Artikel etc. ja nicht mehr betroffen sein - das weiß ich aber erst morgen. *grins*
- Gibt es irgendwelche doofen Konsequenzen aus dem Vorgehen, die ich noch gar nicht gesehen hab?
- Kann man die Funktion vom WBB irgendwie aushebeln? Ich dachte zuerst das sei ein Cronjob, aber da habe ich nichts gefunden. Es würde auch keinen Sinn ergeben, da eine Änderung des Timestamps in der Datenbank direkt beeinflusst, ob eine News als gelesen oder ungelesen markiert wird. Hat jemand hier eine Idee?
- Falls das nicht möglich ist, kann ich einen Cronjob für diese Datenbank-Abfragen erstellen, die ich bislang manuell auslöse?
Da das Extra-Wünsche sind, bezahl ich natürlich auch gern für die Anpassung Cyperghost.
Liebe Grüße,
Katja (& Wahooka )