ChangeSet ID: 30880 CVSROOT: /opt/cvs-commit Module name: appdb Changes by: wineowner@winehq.org 2007/01/16 21:16:22
Modified files: include : downloadurl.php
Log message: Alexander Nicolaysen Sørnes alex@thehandofagony.com Add more downloadurl functions and use them in processForm()
Patch: http://cvs.winehq.org/patch.py?id=30880
Old revision New revision Changes Path 1.6 1.7 +62 -16 appdb/include/downloadurl.php
Index: appdb/include/downloadurl.php diff -u -p appdb/include/downloadurl.php:1.6 appdb/include/downloadurl.php:1.7 --- appdb/include/downloadurl.php:1.6 17 Jan 2007 3:16:22 -0000 +++ appdb/include/downloadurl.php 17 Jan 2007 3:16:22 -0000 @@ -21,7 +21,7 @@ class downloadurl { $hResult = query_parameters("SELECT id, versionId, description, url, submitTime, submitterId, queued FROM appData WHERE id = '?'", - $this->iId); + $iId);
if($hResult && mysql_num_rows($hResult)) { @@ -139,11 +139,12 @@ class downloadurl
while($oRow = mysql_fetch_object($hResult)) { + $oDownloadurl = new downloadurl($oRow->id); + /* Remove URL */ if($aValues["bRemove$oRow->id"]) { - if(!query_parameters("DELETE FROM appData WHERE id = '?'", - $oRow->id)) + if(!$oDownloadurl->delete()) return FALSE;
$sWhatChangedRemove .= "Removed\nURL: $oRow->url\n". @@ -155,10 +156,11 @@ class downloadurl $aValues["sUrl$oRow->id"] != $oRow->url) && $aValues["sDescription$oRow->id"] && $aValues["sUrl$oRow->id"]) { - if(!query_parameters("UPDATE appData SET description = '?', - url = '?' WHERE id = '?'", - $aValues["sDescription$oRow->id"], - $aValues["sUrl$oRow->id"], $oRow->id)) + $oDownloadurl->sDescription = + $aValues["sDescription$oRow->id"]; + $oDownloadurl->sUrl = $aValues["sUrl$oRow->id"]; + + if(!$oDownloadurl->update()) return FALSE;
$sWhatChangedModify .= "Modified\nOld URL: $oRow->url\nOld ". @@ -172,12 +174,12 @@ class downloadurl /* Insert new URL */ if($aValues["sDescriptionNew"] && $aValues["sUrlNew"]) { - if(!query_parameters("INSERT INTO appData (versionId, TYPE, - description, url, submitterId, queued) - VALUES('?', '?', '?', '?', '?', '?')", - $aValues["iVersionId"], "downloadurl", - $aValues["sDescriptionNew"], $aValues["sUrlNew"], - $_SESSION["current"]->iUserId, "false")) + $oDownloadurl = new downloadurl(); + $oDownloadurl->iVersionId = $aValues["iVersionId"]; + $oDownloadurl->sUrl = $aValues["sUrlNew"]; + $oDownloadurl->sDescription = $aValues["sDescriptionNew"]; + + if(!$oDownloadurl->create()) return FALSE;
$sWhatChanged = "Added\nURL: ".$aValues["sUrlNew"]."\nDescription: ". @@ -206,12 +208,12 @@ class downloadurl return TRUE; }
- function canEdit($iVersionId) + function canEdit($iVersionId = NULL) { $oUser = new User($_SESSION['current']->iUserId);
- if($oUser->hasPriv("admin") || maintainer::isUserMaintainer($oUser, - $iVersionId)) + if($oUser->hasPriv("admin") || ($iVersionId && + maintainer::isUserMaintainer($oUser, $iVersionId))) { return TRUE; } else @@ -219,6 +221,50 @@ class downloadurl return FALSE; } } + + function create() + { + if(!$this->sUrl or !$this->sDescription or !$this->iVersionId) + return FALSE; + + $hResult = query_parameters("INSERT INTO appData (versionId, type, + description, url, queued, submitterId) + VALUES('?','?','?','?','?','?')", + $this->iVersionId, "downloadurl", $this->sDescription, + $this->sUrl, downloadurl::canEdit($this->iVersionId) ? + "false" : "true", $_SESSION['current']->iUserId); + + if(!$hResult) + return FALSE; + + return TRUE; + } + + function update() + { + if(!$this->bQueued && !$this->canEdit($this->iVersionId)) + return FALSE; + + $hResult = query_parameters("UPDATE appData SET + description = '?', url = '?' WHERE id = '?'", + $this->sDescription, $this->sUrl, $this->iId); + + if(!$hResult) + return FALSE; + + return TRUE; + } + + function delete() + { + if(!downloadurl::canEdit($this->iVersionId)) + return FALSE; + + if(!query_parameters("DELETE FROM appData WHERE id = '?'", $this->iId)) + return FALSE; + + return TRUE; + } }
?>