diff --git a/src/main/scala/gitbucket/core/service/WikiService.scala b/src/main/scala/gitbucket/core/service/WikiService.scala index 4a8d1eb..b6a0c46 100644 --- a/src/main/scala/gitbucket/core/service/WikiService.scala +++ b/src/main/scala/gitbucket/core/service/WikiService.scala @@ -72,6 +72,20 @@ } /** + * Returns the wiki sidebar page. + */ + def getWikiSideBar(owner: String, repository: String): Option[WikiPageInfo] = { + using(Git.open(Directory.getWikiRepositoryDir(owner, repository))){ git => + if(!JGitUtil.isEmpty(git)){ + JGitUtil.getFileList(git, "master", ".").find(_.name == "_Sidebar.md").map { file => + WikiPageInfo(file.name, StringUtil.convertFromByteArray(git.getRepository.open(file.id).getBytes), + file.author, file.time, file.commitId) + } + } else None + } + } + + /** * Returns the content of the specified file. */ def getFileContent(owner: String, repository: String, path: String): Option[Array[Byte]] = @@ -93,7 +107,7 @@ def getWikiPageList(owner: String, repository: String): List[String] = { using(Git.open(Directory.getWikiRepositoryDir(owner, repository))){ git => JGitUtil.getFileList(git, "master", ".") - .filter(_.name.endsWith(".md")) + .filter(_.name.endsWith(".md")).filterNot(_.name.startsWith("_")) .map(_.name.stripSuffix(".md")) .sortBy(x => x) }