Esempio n. 1
0
 /**
  * 휴지통 패키지에서 각 휴지통의 상태를 알 수 있도록 정보를 반환
  * 휴지통에 얼마만큼의 정보가 있는지 알려주기 위한 인터페이스
  *
  * @return string
  */
 public static function summary()
 {
     $count = BoardModel::where('status', 'trash')->where('type', BoardModule::getId())->count();
     // todo: translation
     return sprintf('휴지통에 %s건의 문서가 있습니다.', $count);
 }
Esempio n. 2
0
 /**
  * 게시판 이동
  * Document Package 에서 comment 를 지원하지 않아서 사용할 수 있는 인터페이스가 없음
  *
  * @param Board        $board  board model
  * @param ConfigEntity $config board config entity
  * @return void
  */
 public function move(Board $board, ConfigEntity $config)
 {
     $board->getConnection()->beginTransaction();
     $dstInstanceId = $config->get('boardId');
     // 덧글이 있다면 덧글들을 모두 옯긴다.
     if ($config->get('recursiveDelete') === true) {
         $query = Board::where('head', $board->head);
         if ($board->reply !== '' && $board->reply !== null) {
             $query->where('reply', 'like', $board->reply . '%');
         }
         $items = $query->get();
         foreach ($items as $item) {
             $this->setModelConfig($item, $config);
             $item->instanceId = $dstInstanceId;
             $item->save();
             $slug = $board->boardSlug;
             $slug->instanceId = $dstInstanceId;
             $slug->save();
         }
     } else {
         $board->instanceId = $dstInstanceId;
         $board->save();
         $slug = $board->boardSlug;
         $slug->instanceId = $dstInstanceId;
         $slug->save();
     }
     $board->getConnection()->commit();
 }