From eed0a5bf73ca0a3f94ed1e7b996ae286bdd9b10f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=81=A5=E8=BE=89?= Date: Wed, 29 May 2019 14:06:13 +0800 Subject: [PATCH] add has_index --- frontend/src/utils/constants.js | 1 + frontend/src/wiki.js | 2 +- seahub/templates/wiki/wiki.html | 1 + seahub/wiki/views.py | 8 ++++++++ 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/frontend/src/utils/constants.js b/frontend/src/utils/constants.js index 5b542eae52..8c8d693725 100644 --- a/frontend/src/utils/constants.js +++ b/frontend/src/utils/constants.js @@ -64,6 +64,7 @@ export const serviceUrl = window.wiki ? window.wiki.config.serviceUrl : ''; export const isPublicWiki = window.wiki ? window.wiki.config.isPublicWiki === 'True': ''; export const sharedToken = window.wiki ? window.wiki.config.sharedToken : ''; export const sharedType = window.wiki ? window.wiki.config.sharedType : ''; +export const hasIndex = window.wiki ? window.wiki.config.hasIndex : ''; // file history export const PER_PAGE = 25; diff --git a/frontend/src/wiki.js b/frontend/src/wiki.js index 107fff9a2b..7365811606 100644 --- a/frontend/src/wiki.js +++ b/frontend/src/wiki.js @@ -3,7 +3,7 @@ import ReactDOM from 'react-dom'; import moment from 'moment'; import MediaQuery from 'react-responsive'; import { Modal } from 'reactstrap'; -import { slug, repoID, siteRoot, initialPath, isDir, sharedToken } from './utils/constants'; +import { slug, repoID, siteRoot, initialPath, isDir, sharedToken, hasIndex } from './utils/constants'; import { Utils } from './utils/utils'; import { seafileAPI } from './utils/seafile-api'; import Dirent from './models/dirent'; diff --git a/seahub/templates/wiki/wiki.html b/seahub/templates/wiki/wiki.html index d1b7bc79b6..0298e77d56 100644 --- a/seahub/templates/wiki/wiki.html +++ b/seahub/templates/wiki/wiki.html @@ -16,6 +16,7 @@ permission: "{{ user_can_write }}", isPublicWiki: "{{ is_public_wiki }}", isDir: "{{ is_dir }}", + hasIndex: {% if has_index %} true {% else %} false {% endif %}, } }; diff --git a/seahub/wiki/views.py b/seahub/wiki/views.py index 7bd6cb8727..710a3901d1 100644 --- a/seahub/wiki/views.py +++ b/seahub/wiki/views.py @@ -89,6 +89,13 @@ def slug(request, slug, file_path="home.md"): if wiki.permission == 'public': is_public_wiki = True + has_index = False + dirs = seafile_api.list_dir_by_path(wiki.repo_id, '/') + for dir_obj in dirs: + if dir_obj.obj_name == 'index.md': + has_index = True + break + try: fs = FileShare.objects.get(repo_id=wiki.repo_id, path='/') except FileShare.DoesNotExist: @@ -110,6 +117,7 @@ def slug(request, slug, file_path="home.md"): "search_wiki": True, "is_public_wiki": is_public_wiki, "is_dir": is_dir, + "has_index": has_index, })