public static function GetAttachmentsByArticleNumber($p_articleNumber, $p_languageId = null) { global $g_ado_db; $tmpObj = new Attachment(); $columnNames = implode(',', $tmpObj->getColumnNames()); if (is_null($p_languageId)) { $langConstraint = "FALSE"; } else { $langConstraint = "Attachments.fk_language_id = " . $g_ado_db->escape($p_languageId); } $queryStr = 'SELECT ' . $columnNames . ' FROM Attachments, ArticleAttachments' . ' WHERE ArticleAttachments.fk_article_number = ' . $g_ado_db->escape($p_articleNumber) . ' AND ArticleAttachments.fk_attachment_id=Attachments.id' . " AND (Attachments.fk_language_id IS NULL OR {$langConstraint})" . ' ORDER BY Attachments.time_created asc, Attachments.file_name asc'; $rows = $g_ado_db->GetAll($queryStr); $returnArray = array(); if (is_array($rows)) { foreach ($rows as $row) { $tmpAttachment = new Attachment(); $tmpAttachment->fetch($row); $returnArray[] = $tmpAttachment; } } return $returnArray; }
/** * Get all the files and directories of a relative path. * * @param string $p_articleId * * @return array of file and path information. * <code> * array('url'=>'full url', * 'storage'=>'full file path') * </code> */ function getFiles($p_articleId, $p_languageId = null) { $files = array(); if ($this->isValidBase() == false) { return $files; } $articleAttachments = ArticleAttachment::GetAttachmentsByArticleNumber($p_articleId, $p_languageId); foreach ($articleAttachments as $articleAttachment) { if (!$this->m_config['validate_files']) { $file['attachment'] = $articleAttachment; $file['url'] = $articleAttachment->getAttachmentUrl(); $file['storage'] = $articleAttachment->getStorageLocation(); $files[$articleAttachment->getAttachmentId()] = $file; } } ksort($files); return $files; }