public function showFileAction() { $commentMapper = new CommentMapper(); $fileMapper = new FileMapper(); $downloadsMapper = new DownloadsMapper(); $id = $this->getRequest()->getParam('id'); $downloadsId = $this->getRequest()->getParam('downloads'); if ($this->getRequest()->getPost('downloads_comment_text')) { $commentModel = new CommentModel(); $commentModel->setKey('downloads/index/showfile/downloads/' . $downloadsId . '/id/' . $id); $commentModel->setText($this->getRequest()->getPost('downloads_comment_text')); $date = new \Ilch\Date(); $commentModel->setDateCreated($date); $commentModel->setUserId($this->getUser()->getId()); $commentMapper->save($commentModel); } $downloads = $downloadsMapper->getDownloadsById($downloadsId); $comments = $commentMapper->getCommentsByKey('downloads/index/showfile/downloads/' . $downloadsId . '/id/' . $id); $file = $fileMapper->getFileById($id); $model = new FileModel(); $model->setFileId($file->getFileId()); $model->setVisits($file->getVisits() + 1); $fileMapper->saveVisits($model); $this->getLayout()->set('metaTitle', $this->getTranslator()->trans('downloads') . ' - ' . $this->getTranslator()->trans('file') . ' - ' . $file->getFileTitle()); $this->getLayout()->set('metaDescription', $this->getTranslator()->trans('downloads') . ' - ' . $file->getFileDesc()); $this->getLayout()->getHmenu()->add($this->getTranslator()->trans('menuDownloadsOverview'), array('action' => 'index'))->add($downloads->getTitle(), array('action' => 'show', 'id' => $downloadsId))->add($file->getFileTitle(), array('action' => 'showfile', 'downloads' => $downloadsId, 'id' => $id)); $this->getView()->set('file', $fileMapper->getFileById($id)); $this->getView()->set('comments', $comments); }
public function getLastFileByDownloadsId($id) { $sql = 'SELECT g.file_id,g.cat,g.id as fileid,g.visits,g.file_title,g.file_image,g.file_description, m.url, m.id, m.url_thumb FROM `[prefix]_downloads_files` AS g LEFT JOIN `[prefix]_media` m ON g.file_id = m.id WHERE g.cat = ' . $id . ' ORDER by g.id DESC LIMIT 1'; $fileRow = $this->db()->queryRow($sql); $entryModel = new FileModel(); $entryModel->setFileId($fileRow['file_id']); $entryModel->setFileUrl($fileRow['url']); $entryModel->setFileTitle($fileRow['file_title']); $entryModel->setFileImage($fileRow['file_image']); $entryModel->setFileDesc($fileRow['file_description']); $entryModel->setVisits($fileRow['visits']); return $entryModel; }