웹마스터 팁

삭제 버튼은 있는데 삭제할 수 없는 그 모듈;;

삭제버튼을 눌렀는데 왜 삭제를 못하니!! 어쩐지 오늘은 운수가 좋더라니..

 

별로 제대로 작동되는 것 같지는 않고..

서버는 자주 죽어서 댓글이나 글을 쓰는데 기다려달라는 메시지만 빙글빙글 도는..;

 

modules/nspam/nspam.class.php를 열어서

 

class nspam extends ModuleObject {

 

밑에 아래 소스를 넣어주시면 됩니다....

XE에 설치된 모듈들은 삭제할때 모듈 설정을 자동으로 삭제해 주지 않으므로 숙련자분들은 DB에서 직접 삭제해주셔도 되고... 그렇지 않으면반드시 모듈 작동을 끄고 삭제를 하셔야 합니다....

 

 

  function moduleUninstall() {
  $oModuleModel = &getModel('module');
  $oModuleController = &getController('module');

  // 트리거 삭제
  if($oModuleModel->getTrigger('comment.deleteComment', 'nspam', 'controller', 'triggerCommentDelete', 'after'))
   $oModuleController->deleteTrigger('comment.deleteComment', 'nspam', 'controller', 'triggerCommentDelete', 'after');

  if($oModuleModel->getTrigger('comment.insertComment', 'nspam', 'controller', 'triggerInsertComment', 'before'))
   $oModuleController->deleteTrigger('comment.insertComment', 'nspam', 'controller', 'triggerInsertComment', 'before');

  if($oModuleModel->getTrigger('comment.updateComment', 'nspam', 'controller', 'triggerInsertComment', 'before'))
   $oModuleController->deleteTrigger('comment.updateComment', 'nspam', 'controller', 'triggerInsertComment', 'before');

  if($oModuleModel->getTrigger('document.deleteDocument', 'nspam', 'controller', 'triggerDocumentDelete', 'after'))
   $oModuleController->deleteTrigger('document.deleteDocument', 'nspam', 'controller', 'triggerDocumentDelete', 'after');

  if($oModuleModel->getTrigger('document.insertComment', 'nspam', 'controller', 'triggerInsertItemAfter', 'after'))
   $oModuleController->deleteTrigger('document.insertComment', 'nspam', 'controller', 'triggerInsertItemAfter', 'after');

  if($oModuleModel->getTrigger('document.insertDocument', 'nspam', 'controller', 'triggerInsertItemAfter', 'after'))
   $oModuleController->deleteTrigger('document.insertDocument', 'nspam', 'controller', 'triggerInsertItemAfter', 'after');

  if($oModuleModel->getTrigger('document.insertDocument', 'nspam', 'controller', 'triggerInsertDocument', 'before'))
   $oModuleController->deleteTrigger('document.insertDocument', 'nspam', 'controller', 'triggerInsertDocument', 'before');

  if($oModuleModel->getTrigger('document.insertTrackback', 'nspam', 'controller', 'triggerInsertItemAfter', 'after'))
   $oModuleController->deleteTrigger('document.insertTrackback', 'nspam', 'controller', 'triggerInsertItemAfter', 'after');

  if($oModuleModel->getTrigger('document.updateDocument', 'nspam', 'controller', 'triggerInsertDocument', 'before'))
   $oModuleController->deleteTrigger('document.updateDocument', 'nspam', 'controller', 'triggerInsertDocument', 'before');

  if($oModuleModel->getTrigger('trackback.deleteTrackback', 'nspam', 'controller', 'triggerDeleteTrackback', 'after'))
   $oModuleController->deleteTrigger('trackback.deleteTrackback', 'nspam', 'controller', 'triggerDeleteTrackback', 'after');

  if($oModuleModel->getTrigger('trackback.insertTrackback', 'nspam', 'controller', 'triggerInsertTrackback', 'before'))
   $oModuleController->deleteTrigger('trackback.insertTrackback', 'nspam', 'controller', 'triggerInsertTrackback', 'before');

  return new Object();
 }

 

 

깨끗하게 날려버리고 싶으신 분들은..

xe_module_config

에서 module가 nspam인 레코드를 지워주시면 됩니다.

 

 

스팸모듈은 kisa에서 만들어서 배포하고 있는 걸 사용하시면 됩니다.

http://spam.kisa.or.kr/kor/down/down03.html