mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-18 08:16:07 +00:00
ADD: /via-repo-token/repo-info/ (#4248)
* ADD: /via-repo-token/repo-info/ * MOD: remove `via_repo_url` in GET /via-repo-token/repo-info/'s response
This commit is contained in:
@@ -67,8 +67,8 @@ class ViaRepoDirView(APIView):
|
||||
|
||||
return dir_info
|
||||
|
||||
def get(self, request, repo_id, format=None):
|
||||
|
||||
def get(self, request, format=None):
|
||||
repo_id = request.repo_api_token_obj.repo_id
|
||||
# argument check
|
||||
recursive = request.GET.get('recursive', '0')
|
||||
if recursive not in ('1', '0'):
|
||||
@@ -194,7 +194,8 @@ class ViaRepoDirView(APIView):
|
||||
|
||||
return Response(response_dict)
|
||||
|
||||
def post(self, request, repo_id, format=None):
|
||||
def post(self, request, format=None):
|
||||
repo_id = request.repo_api_token_obj.repo_id
|
||||
# argument check
|
||||
path = request.GET.get('path', None)
|
||||
if not path or path[0] != '/':
|
||||
@@ -341,7 +342,8 @@ class ViaRepoUploadLinkView(APIView):
|
||||
permission_classes = (IsAuthenticated,)
|
||||
throttle_classes = (UserRateThrottle,)
|
||||
|
||||
def get(self, request, repo_id, format=None):
|
||||
def get(self, request, format=None):
|
||||
repo_id = request.repo_api_token_obj.repo_id
|
||||
# recourse check
|
||||
repo = seafile_api.get_repo(repo_id)
|
||||
if not repo:
|
||||
@@ -383,3 +385,21 @@ class ViaRepoUploadLinkView(APIView):
|
||||
return api_error(status.HTTP_400_BAD_REQUEST, error_msg)
|
||||
|
||||
return Response(url)
|
||||
|
||||
|
||||
class RepoInfoView(APIView):
|
||||
authentication_classes = (RepoAPITokenAuthentication, SessionAuthentication)
|
||||
permission_classes = (IsAuthenticated,)
|
||||
throttle_classes = (UserRateThrottle,)
|
||||
|
||||
def get(self, request):
|
||||
repo_id = request.repo_api_token_obj.repo_id
|
||||
repo = seafile_api.get_repo(repo_id)
|
||||
if not repo:
|
||||
error_msg = _('Library %(repo_id)s not found.' % {'repo_id': repo_id})
|
||||
return api_error(status.HTTP_404_NOT_FOUND, error_msg)
|
||||
data = {
|
||||
'repo_id': repo.id,
|
||||
'repo_name': repo.name,
|
||||
}
|
||||
return Response(data)
|
||||
|
@@ -88,7 +88,7 @@ from seahub.api2.endpoints.markdown_lint import MarkdownLintView
|
||||
from seahub.api2.endpoints.public_repos_search import PublishedRepoSearchView
|
||||
from seahub.api2.endpoints.recent_added_files import RecentAddedFilesView
|
||||
from seahub.api2.endpoints.repo_api_tokens import RepoAPITokensView, RepoAPITokenView
|
||||
from seahub.api2.endpoints.via_repo_token import ViaRepoDirView, ViaRepoUploadLinkView
|
||||
from seahub.api2.endpoints.via_repo_token import ViaRepoDirView, ViaRepoUploadLinkView, RepoInfoView
|
||||
from seahub.api2.endpoints.abuse_reports import AbuseReportsView
|
||||
|
||||
# Admin
|
||||
@@ -368,8 +368,9 @@ urlpatterns = [
|
||||
url(r'^api/v2.1/repos/(?P<repo_id>[-0-9a-f]{36})/repo-api-tokens/(?P<app_name>.*)/$', RepoAPITokenView.as_view(), name='api-v2.1-repo-api-token'),
|
||||
|
||||
## access repo from repo_api_tokens
|
||||
url(r'^api/v2.1/via-repo-token/(?P<repo_id>[-0-9a-f]{36})/dir/$', ViaRepoDirView.as_view(), name='via-repo-dir'),
|
||||
url(r'^api/v2.1/via-repo-token/(?P<repo_id>[-0-9a-f]{36})/upload-link/$', ViaRepoUploadLinkView.as_view(), name='via-upload-link'),
|
||||
url(r'^api/v2.1/via-repo-token/dir/$', ViaRepoDirView.as_view(), name='via-repo-dir'),
|
||||
url(r'^api/v2.1/via-repo-token/upload-link/$', ViaRepoUploadLinkView.as_view(), name='via-upload-link'),
|
||||
url(r'^api/v2.1/via-repo-token/repo-info/$', RepoInfoView.as_view(), name='via-fetch-repo'),
|
||||
|
||||
# user::related-files
|
||||
url(r'^api/v2.1/related-files/$', RelatedFilesView.as_view(), name='api-v2.1-related-files'),
|
||||
|
Reference in New Issue
Block a user