. The whole DELETE mechanism became more complicated:
authorJoey Schulze <joey@infodrom.org>
Mon, 14 Apr 2003 11:06:06 +0000 (11:06 +0000)
committerJoey Schulze <joey@infodrom.org>
Mon, 14 Apr 2003 11:06:06 +0000 (11:06 +0000)
commite978ff911785dce11c0058ffdb0d9afecebf6554
treea5b0f1513907960d677e1629a97b652759dbf1ea
parent4e51009b2a14d6643cdab64c9f0e207faa203189
 . The whole DELETE mechanism became more complicated:

   1. Only delete the person record if this was the last project the
      person was a member of.

   2. If the person is a member of more than one projects, only remove
      one junction record.

   3. Take care of the case where the primary project is the one the
      person is removed from.  In this case the person record needs to
      be updated.  Here, another project, randomly choosen, will be
      used as new primary project.

 . The whole INSERT mechanism became more complicated:

   1. Only insert a new person record if the person does not exist
      already, hence, this needs to invesigated first.

   2. Only insert a new junction record if the person is not a member
      of that particular project (= Supporter) already.  This needs to
      be invesigated first as well.

   3. Insert a junction record if the person is not already a member.
      This is important since the system believes that such an item
      exists for all projects a person belongs to.
src/LinuxTag/2003/projects/update.wml