3 Fehler bei Terminen, und 2 Fragen
-
- Beiträge: 135
- Registriert: 1. Mär 2011, 22:46
3 Fehler bei Terminen, und 2 Fragen
Das Terminmodul zeigt aktuell 3x Fehler:
1.) Der RSS-Feed bietet an, den Termin in den Kalender zu übernehmen. Wenn man den Link verwendet, erscheint die Meldung, man habe sich vom Termin abgemeldet.
2.) Wenn man Termine löscht, ploppt vor schwarzem Hintergrund eine Sicherheitsnachfrage auf. Die ist aber unter Opera 11.11 leer, d.h. der Termin lässt sich nicht löschen. Das scheint ein generelles Problem mit diesen schwarz hinterlegten Boxen und Opera ab 11.10 zu sein.
3.) Mit dem IE kann man die Sicherheitsabfrage beantworten, nur dann erscheint eine Fehlermeldung. Aus der Terminübersicht verschwindet der Termin trotzdem, nach Aktualisierung, in der Datenbank existiert er aber noch.
Die ersten beiden Fehler sind auch in der Demo-Umgebung reproduzierbar, der letzte nicht. Es scheint also an unserer leicht modifizierten Admidio 2.2.6 zu liegen, oder am Zusammenspiel mit Calendar 1.7.0. Meine Modifikationen betreffen das Terminmodul eigentlich nicht.
Zu den Fragen:
1.) Terminzusagen sind über Mitgliedschaften in Rollen (Terminen) aus der Kategorie "Terminbestätigung" realisiert. Diese Kategorie ist auch in "Kategorien pflegen" und in "Rollen verwalten" sichtbar. Soll das so sein?
2.) Wenn man den RSS-Feed abonniert hat, und den ganzen Ordner beim Versionsupdate (z.B. gerade von 2.2.5 auf 2.2.6) überschreibt, kann man ihn nachher neu abonnieren. Würde man ohne Neuabo neue Termine trotzdem zugestellt bekommen?
1.) Der RSS-Feed bietet an, den Termin in den Kalender zu übernehmen. Wenn man den Link verwendet, erscheint die Meldung, man habe sich vom Termin abgemeldet.
2.) Wenn man Termine löscht, ploppt vor schwarzem Hintergrund eine Sicherheitsnachfrage auf. Die ist aber unter Opera 11.11 leer, d.h. der Termin lässt sich nicht löschen. Das scheint ein generelles Problem mit diesen schwarz hinterlegten Boxen und Opera ab 11.10 zu sein.
3.) Mit dem IE kann man die Sicherheitsabfrage beantworten, nur dann erscheint eine Fehlermeldung. Aus der Terminübersicht verschwindet der Termin trotzdem, nach Aktualisierung, in der Datenbank existiert er aber noch.
Die ersten beiden Fehler sind auch in der Demo-Umgebung reproduzierbar, der letzte nicht. Es scheint also an unserer leicht modifizierten Admidio 2.2.6 zu liegen, oder am Zusammenspiel mit Calendar 1.7.0. Meine Modifikationen betreffen das Terminmodul eigentlich nicht.
Zu den Fragen:
1.) Terminzusagen sind über Mitgliedschaften in Rollen (Terminen) aus der Kategorie "Terminbestätigung" realisiert. Diese Kategorie ist auch in "Kategorien pflegen" und in "Rollen verwalten" sichtbar. Soll das so sein?
2.) Wenn man den RSS-Feed abonniert hat, und den ganzen Ordner beim Versionsupdate (z.B. gerade von 2.2.5 auf 2.2.6) überschreibt, kann man ihn nachher neu abonnieren. Würde man ohne Neuabo neue Termine trotzdem zugestellt bekommen?
Hallo Jo,
der erste Fehler ist ein falscher Funktionsaufruf im RSS-Feed. Du kannst den Fehler jetzt schon selbst beheben, indem du in der Datei adm_program/modules/dates/rss_dates.php mal nach folgendem Abschnitt suchst: und hier die 4 durch eine 6 ersetzt :
Bei dem Opera-Fehler bin ich mir nicht sicher, ob es evtl. auch ein Fehler von Opera sein könnte. Ich werde mal intern auf die neue Version dieser PopupBox updaten und mir das damit mal anschauen.
Zu deinen Fragen:
Ja, die Terminbestätigungen sollen erst einmal bei den Rollen sichtbar bleiben. Hierdurch könnte man dann auch noch eine Funktionen an die Terminzusagen hängen. Evtl. könnte man aber auch noch die Kategorie "Terminbestätigung" aus der allgemeinen Kategorieübersicht verstecken.
Den RSS-Feed musst du nach einem Update i.d.R. nicht neu abonnieren. Im jetzigen Update hat sich der Feed leicht verändert, allerdings sollte der Zugriff weiterhin mit der "alten" URL funktionieren.
Viele Grüße
Fasse
der erste Fehler ist ein falscher Funktionsaufruf im RSS-Feed. Du kannst den Fehler jetzt schon selbst beheben, indem du in der Datei adm_program/modules/dates/rss_dates.php mal nach folgendem Abschnitt suchst:
Code: Alles auswählen
dat_id='.$date->getValue('dat_id').'&mode=4"
Code: Alles auswählen
dat_id='.$date->getValue('dat_id').'&mode=6"
Zu deinen Fragen:
Ja, die Terminbestätigungen sollen erst einmal bei den Rollen sichtbar bleiben. Hierdurch könnte man dann auch noch eine Funktionen an die Terminzusagen hängen. Evtl. könnte man aber auch noch die Kategorie "Terminbestätigung" aus der allgemeinen Kategorieübersicht verstecken.
Den RSS-Feed musst du nach einem Update i.d.R. nicht neu abonnieren. Im jetzigen Update hat sich der Feed leicht verändert, allerdings sollte der Zugriff weiterhin mit der "alten" URL funktionieren.
Viele Grüße
Fasse
-
- Beiträge: 135
- Registriert: 1. Mär 2011, 22:46
Hallo JoDomoWorx,
das Problem mit Opera wird in der nächsten Version auch behoben sein. Hab jetzt noch mal die Colorbox aktualisiert und eine kleine Anpassung vorgenommen, dann funktioniert die Anzeige auch unter Opera.
Dein IE-Problem muss ich mir bei Gelegenheit mal anschauen. Hab gerade keine IE zur Verfügung :/
Gruß
Fasse
das Problem mit Opera wird in der nächsten Version auch behoben sein. Hab jetzt noch mal die Colorbox aktualisiert und eine kleine Anpassung vorgenommen, dann funktioniert die Anzeige auch unter Opera.
Dein IE-Problem muss ich mir bei Gelegenheit mal anschauen. Hab gerade keine IE zur Verfügung :/
Gruß
Fasse
-
- Beiträge: 135
- Registriert: 1. Mär 2011, 22:46
Fehler gefunden, aber immer noch unklar
So, der Fehler beim Löschen bestand in der Reihenfolge - die delete()-Function von TableDate löscht
- date_role (sichtbar für)
- member (zugesagt)
- roles (Rollennummer des Termins)
- parent = date
Beim Löschen des roles-Eintrag wird bei mir ein ForeignKey-Constraint verletzt. Wenn man dates_function statt über die ColorBox direkt annavigiert, erhält man den Fehler auch. Es scheint durch Drehen der beiden letzten Punkte behoben zu sein. Code s.u.
Nur: Wieso passiert das im Demo-Bereich nicht? Es muss ja was mit meinen Änderungen an Admidio zu tun haben.
- date_role (sichtbar für)
- member (zugesagt)
- roles (Rollennummer des Termins)
- parent = date
Beim Löschen des roles-Eintrag wird bei mir ein ForeignKey-Constraint verletzt. Wenn man dates_function statt über die ColorBox direkt annavigiert, erhält man den Fehler auch. Es scheint durch Drehen der beiden letzten Punkte behoben zu sein. Code s.u.
Nur: Wieso passiert das im Demo-Bereich nicht? Es muss ja was mit meinen Änderungen an Admidio zu tun haben.
Code: Alles auswählen
// haben diesem Termin Mitglieder zugesagt, so muessen diese Zusagen noch geloescht werden
if($this->getValue('dat_rol_id') > 0)
{
$temp = $this->getValue('dat_rol_id');
$sql = 'DELETE FROM '.TBL_MEMBERS.' WHERE mem_rol_id = '.$temp;
$this->db->query($sql);
parent::delete();
$sql = 'DELETE FROM '.TBL_ROLES.' WHERE rol_id = '.$temp;
$this->db->query($sql);
}
else
{
parent::delete();
}
-
- Beiträge: 135
- Registriert: 1. Mär 2011, 22:46
Es hat nichts mit meinen Änderungen zu tun!
Ich habe im Demo-Bereich ein Datenbank-Backup durchgeführt und die Datenbank bei mir aufgespielt, so dass ich in die Constraints Einsicht habe:
Es gibt in meiner Datenbank 2 zusätzliche Constraints, die die Problematik ausgelöst haben:
adm_FK_DAT_ROL
adm_FK_DAT_ROOM
außerdem fehlt:
ak_name_intern
Wie kann das passieren? Die Updates hab ich alle ganz normal durchlaufen lassen seit 2.1.10.
Und vor allem, wie ändere ich das? Das PHPMyAdmin-Tool lässt mich die Constraints nicht bearbeiten!
Ich habe im Demo-Bereich ein Datenbank-Backup durchgeführt und die Datenbank bei mir aufgespielt, so dass ich in die Constraints Einsicht habe:
Es gibt in meiner Datenbank 2 zusätzliche Constraints, die die Problematik ausgelöst haben:
adm_FK_DAT_ROL
adm_FK_DAT_ROOM
außerdem fehlt:
ak_name_intern
Wie kann das passieren? Die Updates hab ich alle ganz normal durchlaufen lassen seit 2.1.10.
Und vor allem, wie ändere ich das? Das PHPMyAdmin-Tool lässt mich die Constraints nicht bearbeiten!
Ah, das erklärt einiges.
Diese beiden Foreign-Keys sind erst mit der 2.2.6 eingebaut worden, da wir sie vorher vergessen hatten. Leider lösen diese jetzt den Fehler aus. Dies ist aber eigentlich auch gut so, da die Löschreihenfolge eigentlich falsch war. Mit deiner Korrektur geht es dann.
Wir werden das dann so für die nächste Version anpassen. Vielen Dank für den Hinweis.
Viele Grüße
Fasse
PS: im Demobereich gab es diese Keys noch nicht. Dort wird immer ein Dump eingespielt und den hatte ich noch nicht angepasst.
Diese beiden Foreign-Keys sind erst mit der 2.2.6 eingebaut worden, da wir sie vorher vergessen hatten. Leider lösen diese jetzt den Fehler aus. Dies ist aber eigentlich auch gut so, da die Löschreihenfolge eigentlich falsch war. Mit deiner Korrektur geht es dann.
Wir werden das dann so für die nächste Version anpassen. Vielen Dank für den Hinweis.
Viele Grüße
Fasse
PS: im Demobereich gab es diese Keys noch nicht. Dort wird immer ein Dump eingespielt und den hatte ich noch nicht angepasst.
-
- Beiträge: 135
- Registriert: 1. Mär 2011, 22:46
Das ist eigentlich auch noch ein Fehler. Den Index haben wir in der 2.2 hinzugeügt, allerdings nicht im Updatescript.
Es ist allerdings wie mit den Foreign-Keys, ohne diese funktioniert Admidio auch fehlerfrei, allerdings fehlt so eine zusätzliche mögliche Prüfung durch die Datenbank.
Den werden wir dann nachliefern.
Viele Grüße
Fasse
Es ist allerdings wie mit den Foreign-Keys, ohne diese funktioniert Admidio auch fehlerfrei, allerdings fehlt so eine zusätzliche mögliche Prüfung durch die Datenbank.
Den werden wir dann nachliefern.
Viele Grüße
Fasse