public function star() { $fs = FileSet::createAndGetSet('Starred Files', FileSet::TYPE_STARRED); $files = $this->getRequestFiles(); $r = new FileEditResponse(); $r->setFiles($files); foreach($files as $f) { if ($f->inFileSet($fs)) { $fs->removeFileFromSet($f); $r->setAdditionalDataAttribute('star', false); } else { $fs->addFileToSet($f); $r->setAdditionalDataAttribute('star', true); } } $r->outputJSON(); }
public function update_thumbnail() { if ($this->validateAction()) { $fp = new Permissions($this->file); if ($fp->canEditFileProperties()) { $fv = $this->file->getVersionToModify(); $sr = new FileEditResponse(); $sr->setFile($this->file); $sr->setMessage(t('File updated successfully.')); $sr->setAdditionalDataAttribute('value', $value); $sr->outputJSON(); } else { throw new Exception(t('Access Denied.')); } } else { throw new Exception(t('Access Denied.')); } }
public function clearAttribute() { $fr = new FileEditResponse(); $ak = FileAttributeKey::get($_REQUEST['akID']); if ($this->validateAction()) { $this->populateFiles(); if ($this->canEdit) { foreach ($this->files as $f) { $f->clearAttribute($ak); $f->reindex(); } $fr->setFiles($this->files); $fr->setAdditionalDataAttribute('value', false); $fr->setMessage(t('Attributes cleared successfully.')); } } $fr->outputJSON(); }
public function submit() { if ($this->validateAction()) { $post = $this->request->request->all(); foreach ($post as $key => $value) { if (preg_match('/fsID:/', $key)) { $id = explode(':', $key); $fsID = $id[1]; $fs = Set::getByID($fsID); $fsp = new \Permissions($fs); foreach ($this->files as $file) { if ($fsp->canAddFile($file)) { switch ($value) { case '0': $fs->removeFileFromSet($file); break; case '1': // do nothing break; case '2': $fs->addFileToSet($file); break; } } } } } $fsNew = $this->request->request->get('fsNew'); $fsNewShare = $this->request->request->get('fsNewShare'); if (is_array($fsNew)) { foreach ($fsNew as $i => $name) { if ($name) { foreach ($this->files as $file) { $type = $fsNewShare[$i] == 1 ? Set::TYPE_PUBLIC : Set::TYPE_PRIVATE; $fs = Set::createAndGetSet($fsNew[$i], $type); $fs->addFileToSet($file); } } } } $sets = array(); foreach ($this->files as $file) { foreach ($file->getFileSets() as $set) { $o = $set->getJSONObject(); if (!in_array($o, $sets)) { $sets[] = $o; } } } $response = new EditResponse(); $response->setFiles($this->files); $response->setAdditionalDataAttribute('sets', $sets); $response->setMessage(t('File sets updated successfully.')); $response->outputJSON(); } }
public function save() { if ($this->validateAction()) { $fp = new Permissions($this->file); if ($fp->canEditFileProperties()) { $fv = $this->file->getVersionToModify(); $value = $this->request->request->get('value'); switch ($this->request->request->get('name')) { case 'fvTitle': $fv->updateTitle($value); break; case 'fvDescription': $fv->updateDescription($value); break; case 'fvTags': $fv->updateTags($value); break; } $sr = new FileEditResponse(); $sr->setFile($this->file); $sr->setMessage(t('File updated successfully.')); $sr->setAdditionalDataAttribute('value', $value); $sr->outputJSON(); } else { throw new Exception(t('Access Denied.')); } } else { throw new Exception(t('Access Denied.')); } }