From: Reini U. <ru...@x-...> - 2001-09-18 22:59:43
|
Steve Wainstead schrieb: > On Tue, 18 Sep 2001, Adam Shand wrote: > > > I've noticed that the page-edit lock frustrates users, when they do a > > > long edit and it fails. > > > > i've never understood this. why don't wiki's tell you when you *try* to > > edit a page that someone else is already editing it? that seems more > > sensible to me then after a page has been being edited for X amount of > > time user should have the option of waiting or breaking the lock. > > HTTP is a stateless protocol. That is, you make a connection, get the > page, and disconnect. Compare this to a telnet session, which is stateful. if we use php4 and sessions or the session support from the phplib we can add state. I do support something like "who's online" and "who's looking at that". timeout is usually 30 minutes. every hit has to update the session state (either memory, file or database), propagating the session id via url params or cookies. and every hit has to purge old sessions. no big deal. this way I propagate the user_name and more without cookies. anyway, just to solve the problem to know if someone else is editing the same page, adding session support for phpwiki is probably overkill. we could get rid of cookies. cookies could be made optional. if none are supported, the session is transported via url or hidden inputs in post forms. > If you think the current situation is frustrating, the previous situation > was far far worse: you'd spend a long time making changes to a page, save > those changes, and then come back an hour later and find someone > accidentally saved *their* copy over yours, and all your changes are not > only lost, they are irrecoverable! This is the Lost Update Problem. > > Now, at least you can pull your copy from the archive. The irritating > page-edit lock, as it exists now, at least prevents you from losing > everything. -- Reini Urban http://xarch.tu-graz.ac.at/home/rurban/ |