From 2cb477fd55bb44d53077627db362c317ec0240fe Mon Sep 17 00:00:00 2001 From: BJRambo Date: Wed, 11 Nov 2020 15:06:00 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=EA=B2=8C=EC=8B=9C=EA=B8=80=EA=B3=BC=20?= =?UTF-8?q?=EB=8C=93=EA=B8=80=EC=9D=84=20=20=EC=9E=91=EC=84=B1=20=EB=B0=8F?= =?UTF-8?q?=20=EC=88=98=EC=A0=95=EC=8B=9C=20=EB=8C=80=EA=B8=B0=EB=90=9C=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=EC=9D=84=20=EA=B3=B5=EA=B0=9C=ED=95=98?= =?UTF-8?q?=EB=8A=94=20=EB=B0=A9=EC=8B=9D=EC=9D=84=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 파일이 대기모드에서 공개할때 트리거에서 직접 호출 하는 방식으로 변경 --- modules/comment/comment.controller.php | 24 ++++++++++ modules/document/document.controller.php | 20 ++++++++ modules/file/file.class.php | 40 ---------------- modules/file/file.controller.php | 60 ------------------------ 4 files changed, 44 insertions(+), 100 deletions(-) diff --git a/modules/comment/comment.controller.php b/modules/comment/comment.controller.php index a1178eb89..1d4050561 100644 --- a/modules/comment/comment.controller.php +++ b/modules/comment/comment.controller.php @@ -394,6 +394,8 @@ class commentController extends comment $obj->module_srl = intval($obj->module_srl); $obj->document_srl = intval($obj->document_srl); $obj->parent_srl = intval($obj->parent_srl); + + $obj->uploaded_count = FileModel::getFilesCount($obj->comment_srl); // call a trigger (before) $output = ModuleHandler::triggerCall('comment.insertComment', 'before', $obj); @@ -596,6 +598,16 @@ class commentController extends comment $output = $oDocumentController->updateCommentCount($document_srl, $comment_count, $obj->nick_name, $update_document); } + if($obj->uploaded_count) + { + $attachOutput = getController('file')->setFilesValid($obj->comment_srl, 'com'); + if(!$attachOutput->toBool()) + { + $oDB->rollback(); + return $attachOutput; + } + } + // call a trigger(after) ModuleHandler::triggerCall('comment.insertComment', 'after', $obj); @@ -754,6 +766,8 @@ class commentController extends comment $obj->module_srl = intval($obj->module_srl); $obj->document_srl = intval($obj->document_srl); $obj->parent_srl = intval($obj->parent_srl); + + $obj->uploaded_count = FileModel::getFilesCount($obj->comment_srl); // call a trigger (before) $output = ModuleHandler::triggerCall('comment.updateComment', 'before', $obj); @@ -855,6 +869,16 @@ class commentController extends comment return $output; } + if($obj->uploaded_count) + { + $attachOutput = getController('file')->setFilesValid($obj->comment_srl, 'com'); + if(!$attachOutput->toBool()) + { + $oDB->rollback(); + return $attachOutput; + } + } + // call a trigger (after) ModuleHandler::triggerCall('comment.updateComment', 'after', $obj); diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 92512c5e1..2d3b07c7b 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -500,6 +500,8 @@ class documentController extends document // Remove manual member info to prevent forgery. This variable can be set by triggers only. unset($obj->manual_member_info); + $obj->uploaded_count = FileModel::getFilesCount($obj->document_srl); + // Call a trigger (before) $output = ModuleHandler::triggerCall('document.insertDocument', 'before', $obj); if(!$output->toBool()) @@ -647,6 +649,14 @@ class documentController extends document return $update_output; } } + + $attachOutput = getController('file')->setFilesValid($obj->document_srl, 'doc'); + if(!$attachOutput->toBool()) + { + $oDB->rollback(); + return $attachOutput; + } + ModuleHandler::triggerCall('document.insertDocument', 'after', $obj); // commit @@ -708,6 +718,8 @@ class documentController extends document // Remove manual member info to prevent forgery. This variable can be set by triggers only. unset($obj->manual_member_info); + + $obj->uploaded_count = FileModel::getFilesCount($obj->document_srl); // Call a trigger (before) $output = ModuleHandler::triggerCall('document.updateDocument', 'before', $obj); @@ -947,6 +959,14 @@ class documentController extends document return $update_output; } } + + $attachOutput = getController('file')->setFilesValid($obj->document_srl, 'doc'); + if(!$attachOutput->toBool()) + { + $oDB->rollback(); + return $attachOutput; + } + ModuleHandler::triggerCall('document.updateDocument', 'after', $obj); // commit diff --git a/modules/file/file.class.php b/modules/file/file.class.php index dfe4965a0..4041aeb12 100644 --- a/modules/file/file.class.php +++ b/modules/file/file.class.php @@ -21,15 +21,7 @@ class file extends ModuleObject FileHandler::makeDir('./files/attach/binaries'); // 2007. 10. 17 Create a trigger to insert, update, delete documents and comments - $oModuleController->insertTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); - $oModuleController->insertTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); - $oModuleController->insertTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); - $oModuleController->insertTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); $oModuleController->insertTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after'); - $oModuleController->insertTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); - $oModuleController->insertTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); - $oModuleController->insertTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); - $oModuleController->insertTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); $oModuleController->insertTrigger('comment.deleteComment', 'file', 'controller', 'triggerCommentDeleteAttached', 'after'); // 2009. 6. 9 Delete all the attachements when auto-saved document is deleted $oModuleController->insertTrigger('editor.deleteSavedDoc', 'file', 'controller', 'triggerDeleteAttached', 'after'); @@ -49,15 +41,7 @@ class file extends ModuleObject $oDB = &DB::getInstance(); $oModuleModel = getModel('module'); // 2007. 10. 17 Create a trigger to insert, update, delete documents and comments - if(!$oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) return true; - if(!$oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) return true; - if(!$oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) return true; - if(!$oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) return true; if(!$oModuleModel->getTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after')) return true; - if(!$oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) return true; - if(!$oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) return true; - if(!$oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) return true; - if(!$oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) return true; if(!$oModuleModel->getTrigger('comment.deleteComment', 'file', 'controller', 'triggerCommentDeleteAttached', 'after')) return true; // 2009. 6. 9 Delete all the attachements when auto-saved document is deleted if(!$oModuleModel->getTrigger('editor.deleteSavedDoc', 'file', 'controller', 'triggerDeleteAttached', 'after')) return true; @@ -131,33 +115,9 @@ class file extends ModuleObject $oModuleModel = getModel('module'); $oModuleController = getController('module'); // 2007. 10. 17 Create a trigger to insert, update, delete documents and comments - if(!$oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) - $oModuleController->insertTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); - - if(!$oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) - $oModuleController->insertTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); - - if(!$oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) - $oModuleController->insertTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); - - if(!$oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) - $oModuleController->insertTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); - if(!$oModuleModel->getTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after')) $oModuleController->insertTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after'); - if(!$oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) - $oModuleController->insertTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); - - if(!$oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) - $oModuleController->insertTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); - - if(!$oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) - $oModuleController->insertTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); - - if(!$oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) - $oModuleController->insertTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); - if(!$oModuleModel->getTrigger('comment.deleteComment', 'file', 'controller', 'triggerCommentDeleteAttached', 'after')) $oModuleController->insertTrigger('comment.deleteComment', 'file', 'controller', 'triggerCommentDeleteAttached', 'after'); // 2009. 6. 9 Delete all the attachements when auto-saved document is deleted diff --git a/modules/file/file.controller.php b/modules/file/file.controller.php index 9edf06888..8600207ca 100644 --- a/modules/file/file.controller.php +++ b/modules/file/file.controller.php @@ -633,36 +633,6 @@ class fileController extends file $this->add('file_size_total', $fileSizeTotal); $this->add('file_size_total_human', FileHandler::filesize($fileSizeTotal)); } - /** - * A trigger to return numbers of attachments in the upload_target_srl (document_srl) - * - * @param object $obj Trigger object - * @return Object - */ - function triggerCheckAttached(&$obj) - { - $document_srl = $obj->document_srl; - if(!$document_srl) return; - - // Get numbers of attachments - $obj->uploaded_count = FileModel::getFilesCount($document_srl); - // TODO: WTF are we doing with uploaded_count anyway? - } - - /** - * A trigger to link the attachment with the upload_target_srl (document_srl) - * - * @param object $obj Trigger object - * @return Object - */ - function triggerAttachFiles(&$obj) - { - $document_srl = $obj->document_srl; - if(!$document_srl) return; - - $output = $this->setFilesValid($document_srl, 'doc'); - if(!$output->toBool()) return $output; - } /** * A trigger to delete the attachment in the upload_target_srl (document_srl) @@ -679,36 +649,6 @@ class fileController extends file return $output; } - /** - * A trigger to return numbers of attachments in the upload_target_srl (comment_srl) - * - * @param object $obj Trigger object - * @return Object - */ - function triggerCommentCheckAttached(&$obj) - { - $comment_srl = $obj->comment_srl; - if(!$comment_srl) return; - // Get numbers of attachments - $obj->uploaded_count = FileModel::getFilesCount($comment_srl); - } - - /** - * A trigger to link the attachment with the upload_target_srl (comment_srl) - * - * @param object $obj Trigger object - * @return Object - */ - function triggerCommentAttachFiles(&$obj) - { - $comment_srl = $obj->comment_srl; - $uploaded_count = $obj->uploaded_count; - if(!$comment_srl || !$uploaded_count) return; - - $output = $this->setFilesValid($comment_srl, 'com'); - if(!$output->toBool()) return $output; - } - /** * A trigger to delete the attachment in the upload_target_srl (comment_srl) * From 55177a4021e76d3452eeb67cbb6a693d4942fe1d Mon Sep 17 00:00:00 2001 From: BJRambo Date: Wed, 11 Nov 2020 15:28:12 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=ED=8C=8C=EC=9D=BC=20=EB=AA=A8=EB=93=88?= =?UTF-8?q?=EC=97=90=EC=84=9C=20=EC=82=AC=EC=9A=A9=ED=95=98=EC=A7=80=20?= =?UTF-8?q?=EC=95=8A=EB=8A=94=20=ED=8A=B8=EB=A6=AC=EA=B1=B0=EB=A5=BC=20?= =?UTF-8?q?=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/file/file.class.php | 57 +++++++++++++++++++++++++++++++++++-- 1 file changed, 55 insertions(+), 2 deletions(-) diff --git a/modules/file/file.class.php b/modules/file/file.class.php index 4041aeb12..7bea137ce 100644 --- a/modules/file/file.class.php +++ b/modules/file/file.class.php @@ -38,8 +38,19 @@ class file extends ModuleObject */ function checkUpdate() { - $oDB = &DB::getInstance(); + $oDB = DB::getInstance(); $oModuleModel = getModel('module'); + + if($oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) return true; + if($oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) return true; + if($oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) return true; + if($oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) return true; + + if($oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) return true; + if($oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) return true; + if($oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) return true; + if($oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) return true; + // 2007. 10. 17 Create a trigger to insert, update, delete documents and comments if(!$oModuleModel->getTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after')) return true; if(!$oModuleModel->getTrigger('comment.deleteComment', 'file', 'controller', 'triggerCommentDeleteAttached', 'after')) return true; @@ -111,9 +122,51 @@ class file extends ModuleObject */ function moduleUpdate() { - $oDB = &DB::getInstance(); + $oDB = DB::getInstance(); $oModuleModel = getModel('module'); + /** @var moduleController $oModuleController */ $oModuleController = getController('module'); + + if($oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) + { + $oModuleController->deleteTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); + } + + if($oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) + { + $oModuleController->deleteTrigger('document.insertDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); + } + + if($oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before')) + { + $oModuleController->deleteTrigger('document.updateDocument', 'file', 'controller', 'triggerCheckAttached', 'before'); + } + + if($oModuleModel->getTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after')) + { + $oModuleController->deleteTrigger('document.updateDocument', 'file', 'controller', 'triggerAttachFiles', 'after'); + } + + if($oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) + { + $oModuleController->deleteTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); + } + + if($oModuleModel->getTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) + { + $oModuleController->deleteTrigger('comment.insertComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); + } + + if($oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before')) + { + $oModuleController->deleteTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentCheckAttached', 'before'); + } + + if($oModuleModel->getTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after')) + { + $oModuleController->deleteTrigger('comment.updateComment', 'file', 'controller', 'triggerCommentAttachFiles', 'after'); + } + // 2007. 10. 17 Create a trigger to insert, update, delete documents and comments if(!$oModuleModel->getTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after')) $oModuleController->insertTrigger('document.deleteDocument', 'file', 'controller', 'triggerDeleteAttached', 'after'); From 29608ca6cd542c8bbf140b25df7df9001fa8c5cd Mon Sep 17 00:00:00 2001 From: BJRambo Date: Wed, 11 Nov 2020 20:29:50 +0900 Subject: [PATCH 3/3] Deleted comment for phpstorm --- modules/file/file.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/file/file.class.php b/modules/file/file.class.php index 7bea137ce..0b4b8a122 100644 --- a/modules/file/file.class.php +++ b/modules/file/file.class.php @@ -124,7 +124,6 @@ class file extends ModuleObject { $oDB = DB::getInstance(); $oModuleModel = getModel('module'); - /** @var moduleController $oModuleController */ $oModuleController = getController('module'); if($oModuleModel->getTrigger('document.insertDocument', 'file', 'controller', 'triggerCheckAttached', 'before'))