protected function populateFiles() { if (is_array($_REQUEST['fID'])) { foreach ($_REQUEST['fID'] as $fID) { $f = File::getByID($fID); if (is_object($f)) { $this->files[] = $f; } } } if (count($this->files) > 0) { $this->canEdit = true; foreach ($this->files as $f) { $fp = new \Permissions($f); if (!$fp->canViewFileInFileManager()) { $this->canEdit = false; } } } else { $this->canEdit = false; } return $this->canEdit; }
public function __construct(FileEntity $file) { parent::__construct(); $this->setAttribute('data-search-file-menu', $file->getFileID()); $this->addItem(new LinkItem('#', t('Clear'), ['data-file-manager-action' => 'clear'])); $this->addItem(new DividerItem()); $fp = new \Permissions($file); if ($fp->canViewFile() && $file->canView()) { $this->addItem(new DialogLinkItem(REL_DIR_FILES_TOOLS_REQUIRED . '/files/view?fID=' . $file->getFileID(), t('View'), t('View'), '90%', '75%')); } if ($fp->canViewFile() && $file->canView()) { $this->addItem(new LinkItem('#', t('Download'), ['data-file-manager-action' => 'download', 'data-file-id' => $file->getFileID()])); } if ($file->canEdit() && $fp->canEditFileContents()) { $this->addItem(new DialogLinkItem(REL_DIR_FILES_TOOLS_REQUIRED . '/files/edit?fID=' . $file->getFileID(), t('Edit'), t('Edit'), '90%', '75%')); $this->addItem(new DialogLinkItem(\URL::to('/ccm/system/dialogs/file/thumbnails?fID=' . $file->getFileID()), t('Thumbnails'), t('Thumbnails'), '90%', '75%')); } if ($fp->canViewFileInFileManager()) { $this->addItem(new DialogLinkItem(\URL::to('/ccm/system/dialogs/file/properties?fID=' . $file->getFileID()), t('Properties'), t('Properties'), '850', '450')); } if ($fp->canEditFileContents()) { $this->addItem(new DialogLinkItem(REL_DIR_FILES_TOOLS_REQUIRED . '/files/replace?fID=' . $file->getFileID(), t('Replace'), t('Replace'), '500', '200')); } if ($fp->canCopyFile()) { $this->addItem(new LinkItem('#', t('Duplicate'), ['data-file-manager-action' => 'duplicate', 'data-file-id' => $file->getFileID()])); } if ($fp->canViewFileInFileManager()) { $this->addItem(new DialogLinkItem(\URL::to('/ccm/system/dialogs/file/sets?fID=' . $file->getFileID()), t('Sets'), t('File Sets'), '500', '400')); } if ($fp->canEditFilePermissions() || $fp->canDeleteFile()) { $this->addItem(new DividerItem()); } if ($fp->canEditFilePermissions()) { $this->addItem(new DialogLinkItem(REL_DIR_FILES_TOOLS_REQUIRED . '/files/permissions?fID=' . $file->getFileID(), t('Permissions'), t('Permissions & Access'), '520', '450')); } $this->addItem(new DialogLinkItem(\URL::to('/ccm/system/dialogs/file/usage', $file->getFileID()), t('File Usage'), t('File Usage'), '90%', '75%')); if ($fp->canDeleteFile()) { $this->addItem(new DeleteItem($file->getFileNodeObject())); } }
<?php defined('C5_EXECUTE') or die("Access Denied."); $u = new User(); $form = Loader::helper('form'); Loader::model("file_attributes"); $previewMode = false; $f = File::getByID($_REQUEST['fID']); $fp = new Permissions($f); if (!$fp->canViewFileInFileManager()) { die(t("Access Denied.")); } if (isset($_REQUEST['fvID'])) { $fv = $f->getVersion($_REQUEST['fvID']); } else { $fv = $f->getApprovedVersion(); } if ($_REQUEST['task'] == 'preview_version') { $previewMode = true; } if ($_POST['task'] == 'approve_version' && $fp->canEditFileProperties() && !$previewMode) { $fv->approve(); exit; } if ($_POST['task'] == 'delete_version' && $fp->canEditFileContents() && !$previewMode) { $fv->delete(); exit; } if ($_POST['task'] == 'update_core' && $fp->canEditFileProperties() && !$previewMode) { $fv = $f->getVersionToModify(); switch ($_POST['attributeField']) {