/** * Update node meta after uploading file * @param $fileInfo InputFile * @return mixed */ public function add($fileInfo) { $node = $this->model->ofId($fileInfo->nodeId); if ($node) { return $this->model->updateOne($fileInfo->nodeId, ['fileCount' => $node->fileCount + 1, 'volume' => $node->volume + $fileInfo->size / 1024]); } return $this->model->insert(['_id' => $fileInfo->nodeId, 'fileCount' => 1, 'volume' => $fileInfo->size / 1024]); }
/** * @param $file InputFile * @param $refTo InputFile */ public function setFileReference($file, $refTo) { $file = $file->toArray(); $file[$this->model->getKeyName()] = $file['id']; $file['reference'] = $refTo->id; $file['nodeId'] = $refTo->nodeId; // unset checksum unset($file['checksum']); return $this->model->insert($this->filterAttributes($file, $this->columns)); }
/** * @param $chunkId string * @param $content string * @return mixed */ public function add($chunkId, $content) { return $this->model->insert(['_id' => $chunkId, 'content' => $content]); }