Hallo zusammen,
bin neu hier und erst mal ein grobes Lob an das super CMS und die gute Community.
Vielleicht hab ich es ja noch nicht gesehen oder falsch gesucht.
Kann man Seiten "schützen", die gerade von einem anderen Editor/Benutzer bearbeitet werden. Wenn mehrere Benutzer/Admins eingeloggt sind und zufällig die gleiche Seite bearbeiten, werden meines Wissens die Daten überschrieben.
Kann man das irgendwie verhindern / Modul o.ä.
Eine Info wie "Seite wird bearbeitet von xx" würde ja fast schon reichen, besser wäre es den Zugriff zu sperren.
Gruß
Rainer
Seitenverwaltung / mehrere Benutzer
-
- New Member
- Posts: 4
- Joined: Tue May 04, 2010 10:35 am
Re: Seitenverwaltung / mehrere Benutzer
CMS made simple ist ein Content Management System und kein Portal.
Ein derartigen Schutz gibt es derzeit nicht.
Ein derartigen Schutz gibt es derzeit nicht.
-
- New Member
- Posts: 4
- Joined: Tue May 04, 2010 10:35 am
Re: Seitenverwaltung / mehrere Benutzer
Vielen Dank für die Info.
Mir ist schon klar, dass das CMS made simple kein Portal ist. Nur hat man aber auch "Funktionen" wie eine Benutzerverwaltung, Gruppen- und Rechtemanagement implementiert. Dabei könnte man ja auf die Idee kommen, und das Problem haben sicher einige, auch eine Funktion oder sich ein Tag zu bauen, das abklärt, ob eine Seite gerade bearbeitet wird und diese dann sperren bzw. einen Hinweis zu geben. Es muss ja nicht direkt eine Versionierung, Workflow etc. sein.
Es gibt ja auch das Systemprotokoll, das Auskunft gibt, wer was gemacht hat... dann dürfte das andere doch nicht weit entfernt sein.
Kann man kein Tag schreiben, das abprüft, ob ein User gerade eine Seite bearbeitet? Ich bin im CMSms noch nicht so fit, dass ich die Strukturen direkt durchblicke.
Und das Problem hat noch keiner gehabt bzw. für sich lösen können?
Mir ist schon klar, dass das CMS made simple kein Portal ist. Nur hat man aber auch "Funktionen" wie eine Benutzerverwaltung, Gruppen- und Rechtemanagement implementiert. Dabei könnte man ja auf die Idee kommen, und das Problem haben sicher einige, auch eine Funktion oder sich ein Tag zu bauen, das abklärt, ob eine Seite gerade bearbeitet wird und diese dann sperren bzw. einen Hinweis zu geben. Es muss ja nicht direkt eine Versionierung, Workflow etc. sein.
Es gibt ja auch das Systemprotokoll, das Auskunft gibt, wer was gemacht hat... dann dürfte das andere doch nicht weit entfernt sein.
Kann man kein Tag schreiben, das abprüft, ob ein User gerade eine Seite bearbeitet? Ich bin im CMSms noch nicht so fit, dass ich die Strukturen direkt durchblicke.
Und das Problem hat noch keiner gehabt bzw. für sich lösen können?
Re: Seitenverwaltung / mehrere Benutzer
Ja eben ... wer wann was gemacht hat - im nachhinein.RainerZufall wrote: Es gibt ja auch das Systemprotokoll, das Auskunft gibt, wer was gemacht hat... dann dürfte das andere doch nicht weit entfernt sein.
Unter dem Strich wird erst protokolliert, wenn etwas gemacht wurden (ein INSERT oder ein UPDATE etc.). Die Verbindungsdauer zur Datenbank beschränkt sich dabei auf die Ausführung dieser einzelnen Aktion. Es gibt keinen kontinuierlichen Datenstrom von der Datenbank zum CMS, der dir sagt, wer wo gerade zugreift.
Und einen LOCK kannst du nur auf eine Tabelle setzen, mit der Folge, dass die anderen gerade arbeitslos sind. Und was, wenn der Datensatz im Backend nur angesehen wird und der User ohne einen Klick auf "Abbrechen" die Seite verlässt? Genau, die Tabelle bleibt gelockt (beim CMSms Content sind es 2 Tabellen).
Wie du sicherlich meinen Ausführungen entnehmen konntest, ist es mit einem simplen Tag nicht getan.RainerZufall wrote: Kann man kein Tag schreiben, das abprüft, ob ein User gerade eine Seite bearbeitet?
Es ist sicherlich möglich, aber da musst du richtig in den Core rein - viel Spaß beim nächsten Update

Re: Seitenverwaltung / mehrere Benutzer
Das Problem hast Du bei jedem CMS/ Portal. Ein vernünftig eingestellter Time-out hilft hier erst einmal grob weiter.cyberman wrote: Und was, wenn der Datensatz im Backend nur angesehen wird und der User ohne einen Klick auf "Abbrechen" die Seite verlässt? Genau, die Tabelle bleibt gelockt (beim CMSms Content sind es 2 Tabellen).
Ein m.E. einfach zu implementierender Kompromiss wäre, das wie bei Wordpress zu tun. Man muss ja die Daten nicht unbedingt sperren. Ein ordinärer Hinweis würde hier schon sehr viel weiterhelfen: "UserXY bearbeitet die Seite seit 10. 00"
Je nachdem, wie genau und wie idiotensicher* man das machen will kann man hier vom System prüfen lassen, ob er noch eingeloggt oder aktiv ist usw.
* Ganz idiotensicher geht sowas natürlich nie, aber ein einfacher Hinweis wäre schon ein Anfang.
P.s. ich weiss, dass das Protokoll erst einträgt, wenn eine Seite gespeichert wird. Es kann aber meines bescheidenen Verständnisses nach eigentlich kein allzugrosses Problem sein das mit "Seite zum Bearbeiten geöffnet" zu erweitern. Oder doch?
-
- New Member
- Posts: 4
- Joined: Tue May 04, 2010 10:35 am
Re: Seitenverwaltung / mehrere Benutzer
Genau in diese Richtung überlege/bastele ich gerade.
Es reicht ja, wenn z.B. in einer Tabelle mitgeloggt wird, wer welche Seiten geöffnet hat und wiederum ein Eintrag wer Cancel/Submit gesendet hat. Beim Apply bleibt es offen.
Die Benutzer werden angewiesen immer über die Tasten zu schließen bzw. könnte man über den Hinweis "User x bearbeitet seit 10:00 Uhr" Kontakt mit dem User aufnehmen. Es müsste noch nicht mal gesperrt werden, aber man erkennt wer eventuell die Seite o.ä. geöffnet hat.
Ich hab gesehen, dass es ja die Ereignisverwaltung gibt, aber leider dort kein Ereignis für "Seite geöffnet" gibt. Sonst wäre es damit ja sofort lösbar.
Ich denke, ich werde behelfsmäßig die editcontent.php anpassen.
Denn zu meinem Fall, und ich denke, der kommt öfter vor, arbeiten derzeit 2 Redakteure, ein Designer und ein Programmierer gleichzeitig an der Seite.... es ist eine Frage der Zeit, dass wir uns gegenseitig die Sachen überschreiben.
Es reicht ja, wenn z.B. in einer Tabelle mitgeloggt wird, wer welche Seiten geöffnet hat und wiederum ein Eintrag wer Cancel/Submit gesendet hat. Beim Apply bleibt es offen.
Die Benutzer werden angewiesen immer über die Tasten zu schließen bzw. könnte man über den Hinweis "User x bearbeitet seit 10:00 Uhr" Kontakt mit dem User aufnehmen. Es müsste noch nicht mal gesperrt werden, aber man erkennt wer eventuell die Seite o.ä. geöffnet hat.
Ich hab gesehen, dass es ja die Ereignisverwaltung gibt, aber leider dort kein Ereignis für "Seite geöffnet" gibt. Sonst wäre es damit ja sofort lösbar.
Ich denke, ich werde behelfsmäßig die editcontent.php anpassen.
Denn zu meinem Fall, und ich denke, der kommt öfter vor, arbeiten derzeit 2 Redakteure, ein Designer und ein Programmierer gleichzeitig an der Seite.... es ist eine Frage der Zeit, dass wir uns gegenseitig die Sachen überschreiben.
Re: Seitenverwaltung / mehrere Benutzer
Wenn du deine Mitarbeiter so konkret unter der Fuchtel hast ... prima.
Ansonsten sind es komplexe Änderungen am Core, die ich bei meinen Installationen möglichst vermeide, da ich mir damit die Möglichkeit auf ein schnelles Update verbaue ...
Ansonsten sind es komplexe Änderungen am Core, die ich bei meinen Installationen möglichst vermeide, da ich mir damit die Möglichkeit auf ein schnelles Update verbaue ...