/**
  * @see	\wcf\system\attachment\IAttachmentObjectType::canDelete()
  */
 public function canDelete($objectID)
 {
     if ($objectID) {
         $news = new News($objectID);
         return $news->isEditable();
     }
     return false;
 }
 /**
  * @see	\wcf\system\comment\manager\ICommentManager::isAccessible()
  */
 public function isAccessible($objectID, $validateWritePermission = false)
 {
     // Make sure, that the current news is accessible
     $news = new News($objectID);
     if (!$news->newsID || !$news->canRead()) {
         return false;
     }
     return true;
 }
 /**
  * @see	\wcf\data\IDeleteAction::delete()
  */
 public function delete()
 {
     // delete news update
     parent::delete();
     foreach ($this->objects as $newsUpdate) {
         $news = new News($newsUpdate->newsID);
         $news->updateNewsUpdates();
     }
 }
 /**
  * Sets the breadcrumbs.
  * 
  * @param	\news\data\category\NewsCategory	$category
  * @param	\news\data\news\News			$news
  */
 public function setBreadcrumbs(array $parentCategories = array(), NewsCategory $category = null, News $news = null)
 {
     if (PageMenu::getInstance()->getLandingPage()->menuItem != 'news.header.menu.news') {
         WCF::getBreadcrumbs()->add(new Breadcrumb(WCF::getLanguage()->get('news.header.menu.news'), LinkHandler::getInstance()->getLink('NewsOverview', array('application' => 'news'))));
     }
     foreach ($parentCategories as $parentCategory) {
         WCF::getBreadcrumbs()->add($parentCategory->getBreadcrumb());
     }
     if ($category !== null) {
         WCF::getBreadcrumbs()->add($category->getBreadcrumb());
     }
     if ($news !== null) {
         if ($news->isArchived) {
             WCF::getBreadcrumbs()->add(new Breadcrumb(WCF::getLanguage()->get('news.header.menu.news.archive'), LinkHandler::getInstance()->getLink('NewsArchive', array('application' => 'news'))));
         }
         WCF::getBreadcrumbs()->add($news->getBreadcrumb());
     }
 }