/** * Constructor * * @param Request $request * @return FilesController */ function __construct($request) { parent::__construct($request); if ($this->logged_user->getProjectPermission('file', $this->active_project) < PROJECT_PERMISSION_ACCESS) { $this->httpError(HTTP_ERR_FORBIDDEN); } // if $files_url = files_module_url($this->active_project); $attachments_url = files_module_url($this->active_project, array('show_attachments' => true)); $this->wireframe->addBreadCrumb(lang('Files'), $files_url); $upload_url = false; if (File::canAdd($this->logged_user, $this->active_project)) { if ($this->active_category->isLoaded()) { $upload_url = files_module_upload_url($this->active_project, array('category_id' => $this->active_category->getId())); } else { $upload_url = files_module_upload_url($this->active_project); } // if $this->wireframe->addPageAction(lang('Upload Files'), $upload_url); } // if $file_id = $this->request->getId('file_id'); if ($file_id) { $this->active_file = ProjectObjects::findById($file_id); } // if if (instance_of($this->active_file, 'File')) { $this->wireframe->addBreadCrumb($this->active_file->getName(), $this->active_file->getViewUrl()); } else { $this->active_file = new File(); } // if $this->smarty->assign(array('active_file' => $this->active_file, 'files_url' => $files_url, 'attachments_url' => $attachments_url, 'upload_url' => $upload_url, 'page_tab' => 'files')); }
/** * Handle on_milestone_add_links event * * @param Milestone $milestone * @param User $user * @param array $links * @return null */ function files_handle_on_milestone_add_links($milestone, $user, &$links) { if ($user->getProjectPermission('file', $milestone->getProject()) >= PROJECT_PERMISSION_CREATE) { $links[lang('File')] = files_module_upload_url($milestone->getProject(), array('milestone_id' => $milestone->getId())); } // if }