Ejemplo n.º 1
0
 public static function uploadScreenshotForBuild($build, $ext, $tempPath)
 {
     $blid = $build->getBLID();
     $tempThumb = ScreenshotManager::createTempThumbnail($tempPath);
     $database = new DatabaseManager();
     ScreenshotManager::verifyTable($database);
     if (!$database->query("INSERT INTO `screenshots` (`blid`) VALUES ('" . $database->sanitize($blid) . "')")) {
         throw new Exception("Database error: " . $database->error());
     }
     $sid = $database->fetchMysqli()->insert_id;
     require_once realpath(dirname(__FILE__) . '/AWSFileManager.php');
     AWSFileManager::uploadNewScreenshot($sid, "screenshot." . $ext, $tempPath, $tempThumb);
     apc_delete('userScreenshots_' . $blid);
     if (ScreenshotManager::buildHasPrimaryScreenshot($build->getID())) {
         return ScreenshotManager::addScreenshotToBuild($sid, $build->getID());
     } else {
         return ScreenshotManager::setBuildPrimaryScreenshot($sid, $build->getID());
     }
 }