diff --git a/group/templates/group/group_wiki.html b/group/templates/group/group_wiki.html index 8f4d72e451..1e55e3c4d2 100644 --- a/group/templates/group/group_wiki.html +++ b/group/templates/group/group_wiki.html @@ -103,7 +103,7 @@ $('#page-list').click(function () { }); $('#page-history').click(function () { - window.open("{% url 'file_revisions' repo_id %}" + "?p=" + "{{path}}"); + window.open("{% url 'file_revisions' repo_id %}" + "?p=" + "{{path|urlencode}}"); }); addConfirmTo($('#page-delete'), { diff --git a/group/views.py b/group/views.py index 9a7882d0fe..1a4f36a536 100644 --- a/group/views.py +++ b/group/views.py @@ -1338,7 +1338,7 @@ def group_wiki_page_new(request, group, page_name="home"): repo = find_wiki_repo(request, group) if not repo: return render_error(request, _('Wiki is not found.')) - + filename = page_name + ".md" filepath = "/" + page_name + ".md" @@ -1349,8 +1349,9 @@ def group_wiki_page_new(request, group, page_name="home"): if not post_empty_file(repo.id, "/", filename, request.user.username): return render_error(request, _('Failed to create wiki page. Please retry later.')) - url = "%srepo/%s/file/edit/?p=%s&from=wiki_page_new&gid=%s" % \ - (SITE_ROOT, repo.id, filepath, group.id) + url = "%s?p=%s&from=wiki_page_new&gid=%s" % ( + reverse('file_edit', args=[repo.id]), + urllib2.quote(filepath.encode('utf-8')), group.id) return HttpResponseRedirect(url) @@ -1364,8 +1365,10 @@ def group_wiki_page_edit(request, group, page_name="home"): return render_error(request, _('Wiki is not found.')) filepath = "/" + page_name + ".md" - url = "%srepo/%s/file/edit/?p=%s&from=wiki_page_edit&gid=%s" % \ - (SITE_ROOT, repo.id, filepath, group.id) + url = "%s?p=%s&from=wiki_page_edit&gid=%s" % ( + reverse('file_edit', args=[repo.id]), + urllib2.quote(filepath.encode('utf-8')), group.id) + return HttpResponseRedirect(url) diff --git a/urls.py b/urls.py index 225ba2e0c0..a0d3354191 100644 --- a/urls.py +++ b/urls.py @@ -60,7 +60,7 @@ urlpatterns = patterns('', url(r'^repo/(?P[-0-9a-f]{36})/history/files/$', view_history_file, name="view_history_file"), url(r'^repo/(?P[-0-9a-f]{36})/trash/files/$', view_trash_file, name="view_trash_file"), url(r'^repo/(?P[-0-9a-f]{36})/snapshot/files/$', view_snapshot_file, name="view_snapshot_file"), - (r'^repo/(?P[-0-9a-f]{36})/file/edit/$', file_edit), + url(r'^repo/(?P[-0-9a-f]{36})/file/edit/$', file_edit, name='file_edit'), url(r'^repo/(?P[-0-9a-f]{36})/(?P[^/]+)/$', repo_access_file, name='repo_access_file'), (r'^repo/save_settings$', repo_save_settings),