mirror of
https://github.com/haiwen/seahub.git
synced 2025-08-01 07:10:55 +00:00
encode path for using in URI
This commit is contained in:
parent
dd5128cb57
commit
9d6dfdabeb
@ -156,7 +156,7 @@
|
||||
<% } else { %>
|
||||
<a href="#<%= category %>/lib/<%= repo_id %>/" class="path-link normal"><%- repo_name %></a> /
|
||||
<% for (var i = 0,len = path_list.length - 1; i < len; i++) { %>
|
||||
<a href="#<%= category %>/lib/<%= repo_id %>/<% print(path_list.slice(0, i+1).join('/')); %>" class="path-link normal"><%- path_list[i] %></a> /
|
||||
<a href="#<%= category %>/lib/<%= repo_id %>/<% print(path_list_encoded.slice(0, i+1).join('/')); %>" class="path-link normal"><%- path_list[i] %></a> /
|
||||
<% } %>
|
||||
<%- path_list[i] + ' /' %>
|
||||
<% } %>
|
||||
@ -170,9 +170,9 @@
|
||||
<td class="dirent-icon"><img src="{{ MEDIA_URL }}img/folder-icon-24.png" alt="{% trans "Directory icon" %}" /></td>
|
||||
<td>
|
||||
<% if (category) { %>
|
||||
<span class="dirent-name"><a href="#<%= category %>/lib/<%= repo_id %><%- dirent_path %>" class="dir-link normal"><%- dirent.obj_name %></a></span>
|
||||
<span class="dirent-name"><a href="#<%= category %>/lib/<%= repo_id %><%- encoded_path %>" class="dir-link normal"><%- dirent.obj_name %></a></span>
|
||||
<% } else { %>
|
||||
<span class="dirent-name"><a href="#lib/<%= repo_id %><%- dirent_path %>" class="dir-link normal"><%- dirent.obj_name %></a></span>
|
||||
<span class="dirent-name"><a href="#lib/<%= repo_id %><%- encoded_path %>" class="dir-link normal"><%- dirent.obj_name %></a></span>
|
||||
<% } %>
|
||||
</td>
|
||||
<td class="dirent-op">
|
||||
|
@ -216,10 +216,13 @@ define([
|
||||
category: dir.category
|
||||
};
|
||||
|
||||
var path_list = path.substr(1).split('/');
|
||||
var path_list_encoded = path_list.map(function(e) { return encodeURIComponent(e); });
|
||||
if (path != '/') {
|
||||
$.extend(obj, {
|
||||
path_list: path.substr(1).split('/'),
|
||||
repo_id: dir.repo_id,
|
||||
path_list: path_list,
|
||||
path_list_encoded: path_list_encoded,
|
||||
repo_id: dir.repo_id
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -29,9 +29,11 @@ define([
|
||||
|
||||
render: function() {
|
||||
var dir = this.dir;
|
||||
var dirent_path = Common.pathJoin([dir.path, this.model.get('obj_name')]);
|
||||
this.$el.html(this.template({
|
||||
dirent: this.model.attributes,
|
||||
dirent_path: Common.pathJoin([dir.path, this.model.get('obj_name')]),
|
||||
dirent_path: dirent_path,
|
||||
encoded_path: Common.encodePath(dirent_path),
|
||||
category: dir.category,
|
||||
repo_id: dir.repo_id,
|
||||
user_perm: dir.user_perm,
|
||||
|
@ -296,6 +296,12 @@ define([
|
||||
return result;
|
||||
},
|
||||
|
||||
encodePath: function(path) {
|
||||
return path.split('/').map(function(e) {
|
||||
return encodeURIComponent(e);
|
||||
}).join('/');
|
||||
},
|
||||
|
||||
closePopup: function(e, popup, popup_switch) {
|
||||
var target = e.target || event.srcElement;
|
||||
if (!popup.hasClass('hide') && !popup.is(target) && !popup.find('*').is(target) && !popup_switch.is(target) && !popup_switch.find('*').is(target) ) {
|
||||
|
Loading…
Reference in New Issue
Block a user