Latest Uploads
Extraterre ... .0.1 (zip)

dantheman363

Monty Teas ... Screenie 1

steve_ancell

Santa Clau ... ed his bag

waroffice

manic_platdude.png

spinal

Tetris Clone

steve_ancell

Super blues bros.

spinal

Forum Home

Multi-user CMS - conflicting writes?

UserMessage
Posted : Sunday, 07 August 2011, 11:27 | Permalink | Mark Here
HoboBen


WW Entries : 9
What do you do in a CMS when two (or more) people edit an article at the same time?

When the last user saves, just have a message saying "This article has been modified since you started. Do you still want to save your changes?"

That way, if a user is only changing a typo, they can decide not to overwrite the first user's major edit.

The entire page history will be saved, so things can be reverted if necessary.

Is that enough? How would you handle it?

I think a wikipedia-style diff is probably overkill for something that is going to happen fairly uncommonly (also my users aren't that great with the computer. We're talking IE6 and Windows XP with Service Pack 1 here).

I was thinking about allowing a user to lock an article while they're working on it (so nobody else can work on it) but the issue is how do you time them out after they close their browser without timing them out if they're just taking a long time? That would probably require an over-engineered ajax solution that probably won't work with IE6 (and yes I have to support IE6).

-----
github
Posted : Sunday, 07 August 2011, 15:00 | Permalink | Mark Here
CodersRule


Is it okay to use Flash/Java? It would do the same thing as ajax, but would work with IE6.
Posted : Sunday, 07 August 2011, 19:52 | Permalink | Mark Here
Scherererer


You can always do a lock or semaphore type of mechanism; basically when one user opens the article for editing then the other users are not allowed to until the original user releases (or perhaps times out).

I like your idea though as well, you could just have a time stamp for when the user opened the file, and compare that against the last write time on the server side so that you know if changes were made in between, and then a warning message could be displayed or an error or something. It's simple and works whether users disconnect/timeout in between or not.

-----
YouTube Twitter
Computer Science Series: Logic (pt1) (part 2) (part 3) 2's Complement Mathematics: Basic Differential Calculus
Posted : Monday, 08 August 2011, 00:20 | Permalink | Mark Here
Jayenkai


WW Entries : 103
Yeah, that seems the better option to me, too.
As complex as you could make it, just keeping a set of previous versions seems like it would work out fine.
If the users want to quibble over which is the more complete revision, let them fix it themselves

-----
Posted : Monday, 08 August 2011, 07:14 | Permalink | Mark Here
HoboBen


Thanks for the input, folks!
Latest Posts
Sidewalk Skiing
Jayenkai Sat 14:57
Musical Tastes
Dabz Sat 11:38
FIRST!!!
steve_ancell Sat 11:22
Coder's Block
Jayenkai Thu 09:01
Consumer Lockout
9572AD Thu 06:09
Professor Oak, Honest!!
spinal Wed 23:24
Position in Mind
steve_ancell Wed 20:11
Sonic Adventure v0.x
Jayenkai Wed 07:08
Noel's Graduation
waroffice Wed 02:55
Monkey vs iOS tweaks
spinal Tue 22:51
More

Latest Items
News : Newsletter #176
Jayenkai Sat 04:49
News : Newsletter #175
Dabz Tue 09:38
Blog : Snow: More Material Junk
Cower Sat 23:17
Dev-Diary : Mutant Monty: Amstrad CPC to Windows conversion
rockford Fri 13:14
Techy : AppleTV
Jayenkai Thu 09:40
Blog : Graphviz
steve_ancell Sat 14:17
Pets : Top-Down Shadow Hack
Jayenkai Tue 05:52
Snippet : JNKrunch v1.0
Jayenkai Sat 07:20
News : Newsletter #173
waroffice Fri 04:47
Blog : Material Loading
Cower Fri 02:08
Pets : I Done Won A Thing
shroom_monk Sun 11:31
Pets : Repurposing A Lexer
Cower Mon 22:06
Bah : Feeling a Little Angry
spinal Mon 11:26
News : Newsletter #170
Dabz Sat 00:34
Showcase : sbfgen
Cower Sat 16:57
More

Who's Online
Dabz
Sun, at 00:08
Cower
Sat, at 23:28
steve_ancell
Sat, at 21:49
blanko1324
Sat, at 20:33
9572AD
Sat, at 19:18
Evil Roy Ferguson
Sat, at 19:12
therevillsgames
Sat, at 19:08
CodersRule
Sat, at 18:37
dna
Sat, at 18:05
Jayenkai
Sat, at 16:33
Link to this page
Site : Jayenkai 2006-Infinity |
MudChat's origins, BBCode's former life, Image Scaler.