Module: appdb Branch: master Commit: 28b14f7beac05a1a632560c73160e22538313d3a URL: http://source.winehq.org/git/appdb.git/?a=commit;h=28b14f7beac05a1a632560c73...
Author: Alexander Nicolaysen Sørnes <alexander@linux-xqqm.(none)> Date: Thu Nov 12 18:15:38 2009 +0100
maintainer: Avoid duplicate maintainers when merging apps/versions
---
include/maintainer.php | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/include/maintainer.php b/include/maintainer.php index 3741264..5ca2751 100644 --- a/include/maintainer.php +++ b/include/maintainer.php @@ -1002,10 +1002,27 @@ class maintainer return array(); }
+ public function isDuplicate() + { + $hResult = query_parameters("SELECT COUNT(maintainerId) as count FROM appMaintainers + WHERE versionId = '?' and appId = '?' AND userId = '?' AND maintainerId != '?'", + $this->iVersionId, $this->iAppId, $this->iUserId, $this->iMaintainerId); + + if(!$hResult) + return false; + + $oRow = mysql_fetch_object($hResult); + + return $oRow->count > 0; + } + public function update() { $oMaintainer = new maintainer($this->iMaintainerId);
+ if($this->isDuplicate()) + return $this->delete(); + if($this->iVersionId && $oMaintainer->iVersionId != $this->iVersionId) { $hResult = query_parameters("UPDATE appMaintainers SET versionId = '?'