Ticket #1128 (assigned defect)

Opened 19 months ago

Last modified 7 weeks ago

Record Change Detection for CMS

Reported by: ischommer Owned by: sminnee
Priority: medium Milestone: 2.3.1
Component: CMS - General Version:
Severity: medium effort / impact Keywords:
Cc: Hours: 5

Description

When you have a facility for editing records - such as a CMS or grants processing database - there needs to be some kind of locking facility, so that people don't wind up overwriting other people's changes.

We recommend that this is implemented as a generic locking toolkit, that is first applied to the CMS, then to other edit forms in systems as required.

Note also that Versioned.php makes a call to "SELECT MAX(Version) + 1", which will break if two people are editing the same record at the same time.

Change History

Changed 18 months ago by sminnee

  • status changed from new to assigned

We should merge in the changes in this arena from NZCT - apply r35423 to branches/2.0

Changed 13 months ago by sminnee

  • harvest_task set to (Unknown)
  • component changed from Sapphire Framework to CMS - General
  • summary changed from Lack of record locking in the CMS will cause issues in certain multi-user environments to Record Change Detection for CMS
  • invoice_sent set to 0
  • milestone set to 2.2.1
  • estimated set to 5

Do we want to implement locking, or just change detection? You know, come back with an error saying "sorry, someone edited this page since you opened it" like a wiki.

Otherwise, I think that we will risk accidentally leaving pages locked when people want to edit them, since we have the page available for editing when it is first viewed in the CMS.

Including OriginalVersion? as a hidden field in the CMS, and checking that before writing, would work.

Changed 10 months ago by sminnee

  • milestone changed from 2.2.2 feature-lock to 2.3

Changed 7 weeks ago by sminnee

  • milestone changed from 2.3.0 to 2.3.1*
Note: See TracTickets for help on using tickets.