/** * @param int $uploadId * @return Package|null */ public function findPackageForUpload($uploadId) { $statementName = __METHOD__; $this->dbManager->prepare($statementName, "\nSELECT p.*, u.*\nFROM package p\n INNER JOIN upload_packages up ON p.package_pk = up.package_fk\n INNER JOIN upload_packages up2 ON p.package_pk = up2.package_fk\n INNER JOIN upload u ON up2.upload_fk = u.upload_pk\nWHERE up.upload_fk = \$1\nORDER BY up2.upload_fk ASC"); $res = $this->dbManager->execute($statementName, array($uploadId)); $packageId = 0; $packageName = ""; $uploads = array(); while ($row = $this->dbManager->fetchArray($res)) { $packageId = intval($row['package_pk']); $packageName = $row['package_name']; $uploads[] = Upload::createFromTable($row); } $this->dbManager->freeResult($res); return $packageId > 0 ? new Package($packageId, $packageName, $uploads) : null; }
/** * @param int $uploadId * @return Upload|null */ public function getUpload($uploadId) { $stmt = __METHOD__; $row = $this->dbManager->getSingleRow("SELECT * FROM upload WHERE upload_pk = \$1", array($uploadId), $stmt); return $row ? Upload::createFromTable($row) : null; }