public function upload() { $web = \Web::instance(); $overwrite = true; // set to true, to overwrite an existing file; Default: false //$slug = true; // rename file to filesystem-friendly version self::$uploadTypes = array("cover" => "album", "track" => "album"); self::$uploadType = $this->f3->get('POST.uploadType'); self::$uploadGroup = self::$uploadTypes[self::$uploadType]; self::$id = $this->f3->get('POST.id'); self::$uploadDir = $this->getUploadPath(self::$uploadGroup, self::$id); $this->f3->set('UPLOADS', self::$uploadDir); // Execute callback handleUpload on successful upload $files = $web->receive(function ($file) { $this->handleUpload($file, self::$uploadDir, self::$uploadType, self::$id); return true; }, $overwrite, function ($fileBaseName, $formFieldName) { return $this->generateSlug($fileBaseName); }); foreach ($files as $key => $val) { if (!$val) { $error = array('code' => "101", 'message' => "Failed to upload " . pathinfo($key, PATHINFO_FILENAME)); echo $this->utils->errorResponse($error); } } }