mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-14 00:39:57 +09:00
* 첨부파일 목록 표시 미구현
* 첨부파일 활성화 트리거 추가
* 첨부파일 수 기록 필드 추가
file * 첨부파일 목록에서 업로드 타겟을 알 수 없을 경우
무조건 '대기'로 타이틀을 표시하는 문제 수정
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@6512 201d5d3c-b55e-5fd7-737f-ddc643e51545
78 lines
4.3 KiB
PHP
78 lines
4.3 KiB
PHP
<?PHP
|
|
/**
|
|
* @class issuetracker
|
|
* @author haneul (haneul0318@gmail.com)
|
|
* @brief base class for the issue tracker
|
|
**/
|
|
|
|
require_once(_XE_PATH_.'modules/issuetracker/issuetracker.item.php');
|
|
|
|
class issuetracker extends ModuleObject
|
|
{
|
|
// 검색 대상 지정
|
|
var $search_option = array('title','content','title_content','user_name','nick_name','user_id','tag');
|
|
|
|
// 이슈 목록 노출 대상
|
|
var $display_option = array('no','title','milestone','priority','type','component','status','occured_version','package','regdate','assignee', 'writer');
|
|
var $default_enable = array('no','title','status','release','regdate','assignee','writer');
|
|
|
|
function moduleInstall()
|
|
{
|
|
// 아이디 클릭시 나타나는 팝업메뉴에 작성글 보기 기능 추가
|
|
$oModuleController = &getController('module');
|
|
$oModuleController->insertTrigger('member.getMemberMenu', 'issuetracker', 'controller', 'triggerMemberMenu', 'after');
|
|
$oModuleController->insertTrigger('document.deleteDocument', 'issuetracker', 'controller', 'triggerDeleteDocument', 'after');
|
|
|
|
$oDB = &DB::getInstance();
|
|
$oDB->addIndex("issue_changesets","idx_unique_revision", array("module_srl","revision"), true);
|
|
|
|
// 히스토리(=댓글) 첨부파일 활성화 트리거
|
|
$oModuleController->insertTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentCheckAttached', 'before');
|
|
$oModuleController->insertTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentAttachFiles', 'after');
|
|
}
|
|
|
|
function checkUpdate()
|
|
{
|
|
$oModuleModel = &getModel('module');
|
|
$oDB = &DB::getInstance();
|
|
|
|
// 아이디 클릭시 나타나는 팝업메뉴에 작성글 보기 기능 추가
|
|
if(!$oModuleModel->getTrigger('member.getMemberMenu', 'issuetracker', 'controller', 'triggerMemberMenu', 'after')) return true;
|
|
if(!$oModuleModel->getTrigger('document.deleteDocument', 'issuetracker', 'controller', 'triggerDeleteDocument', 'after')) return true;
|
|
|
|
// 히스토리(=댓글) 첨부파일 활성화 트리거
|
|
if(!$oModuleModel->getTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) return true;
|
|
if(!$oModuleModel->getTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) return true;
|
|
if(!$oDB->isColumnExists('issues_history', 'uploaded_count')) return true;
|
|
|
|
return false;
|
|
}
|
|
|
|
function moduleUpdate() {
|
|
$oModuleModel = &getModel('module');
|
|
$oModuleController = &getController('module');
|
|
$oDB = &DB::getInstance();
|
|
|
|
// 아이디 클릭시 나타나는 팝업메뉴에 작성글 보기 기능 추가
|
|
if(!$oModuleModel->getTrigger('member.getMemberMenu', 'issuetracker', 'controller', 'triggerMemberMenu', 'after')) {
|
|
$oModuleController->insertTrigger('member.getMemberMenu', 'issuetracker', 'controller', 'triggerMemberMenu', 'after');
|
|
}
|
|
if(!$oModuleModel->getTrigger('document.deleteDocument', 'issuetracker', 'controller', 'triggerDeleteDocument', 'after')) {
|
|
$oModuleController->insertTrigger('document.deleteDocument', 'issuetracker', 'controller', 'triggerDeleteDocument', 'after');
|
|
}
|
|
|
|
// 히스토리(=댓글) 첨부파일 활성화 트리거
|
|
if(!$oModuleModel->getTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) {
|
|
$oModuleController->insertTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentCheckAttached', 'before');
|
|
}
|
|
if(!$oModuleModel->getTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) {
|
|
$oModuleController->insertTrigger('issuetracker.insertHistory', 'file', 'controller', 'triggerCommentAttachFiles', 'after');
|
|
}
|
|
if(!$oDB->isColumnExists('issues_history', 'uploaded_count')) {
|
|
$oDB->addColumn('issues_history', 'uploaded_count', 'number', 11, 0);
|
|
}
|
|
|
|
return new Object(0, 'success_updated');
|
|
}
|
|
}
|
|
?>
|