diff --git a/seahub/templates/base.html b/seahub/templates/base.html
index df6d549c50..88f3c4f36f 100644
--- a/seahub/templates/base.html
+++ b/seahub/templates/base.html
@@ -158,7 +158,7 @@
$.jstree._themes = '{{ MEDIA_URL }}js/themes/';
function ajaxErrorHandler(xhr, textStatus, errorThrown) {
if (xhr.responseText) {
- feedback($.parseJSON(xhr.responseText).error, 'error');
+ feedback($.parseJSON(xhr.responseText).error||$.parseJSON(xhr.responseText).error_msg, 'error');
} else {
feedback("{% trans "Failed. Please check the network." %}", 'error');
}
diff --git a/seahub/templates/view_file_base.html b/seahub/templates/view_file_base.html
index f447b5155f..f7abdc3d41 100644
--- a/seahub/templates/view_file_base.html
+++ b/seahub/templates/view_file_base.html
@@ -151,20 +151,19 @@ $('#file-star').click(function() {
{% if can_lock_unlock_file %}
// lock/unlock file
$('#lock-file, #unlock-file').click(function() {
- var op = $(this).attr('id') == 'lock-file' ? 'lock' : 'unlock';
+ var op = $(this).attr('id') == 'lock-file' ? 'lock' : 'unlock',
+ path = '{{path|escapejs}}';
$.ajax({
- url: '{% url 'FileView' repo.id %}',
+ url: '{% url 'api-v2.1-file-view' repo.id %}' + '?p=' + encodeURIComponent(path),
type: 'PUT',
dataType: 'json',
cache: 'false',
beforeSend: prepareCSRFToken,
- data: {'operation': op, 'p': '{{path|escapejs}}'},
+ data: {'operation': op},
success: function() {
$('#lock-file, #unlock-file, .file-locked-icon').toggleClass('hide');
},
- error: function () {
- feedback("{% trans "Failed" %}", 'error');
- }
+ error: ajaxErrorHandler
});
});
{% endif %}
diff --git a/static/scripts/app/models/dirent.js b/static/scripts/app/models/dirent.js
index 4b9399534f..92b007b00c 100644
--- a/static/scripts/app/models/dirent.js
+++ b/static/scripts/app/models/dirent.js
@@ -138,7 +138,7 @@ define([
url: Common.getUrl({
name: 'lock_or_unlock_file',
repo_id: dir.repo_id
- }),
+ }) + '?p=' + encodeURIComponent((filepath)),
type: 'PUT',
dataType: 'json',
data: {
diff --git a/static/scripts/app/views/dirent.js b/static/scripts/app/views/dirent.js
index dda2bf1b83..dc7c552d32 100644
--- a/static/scripts/app/views/dirent.js
+++ b/static/scripts/app/views/dirent.js
@@ -259,7 +259,7 @@ define([
var after_op_error = function(xhr) {
var err_msg;
if (xhr.responseText) {
- err_msg = $.parseJSON(xhr.responseText).error;
+ err_msg = $.parseJSON(xhr.responseText).error_msg;
} else {
err_msg = gettext("Failed. Please check the network.");
}
diff --git a/static/scripts/common.js b/static/scripts/common.js
index 59af472c11..4776fa7003 100644
--- a/static/scripts/common.js
+++ b/static/scripts/common.js
@@ -71,14 +71,14 @@ define([
case 'star_file': return siteRoot + 'ajax/repo/' + options.repo_id + '/file/star/';
case 'unstar_file': return siteRoot + 'ajax/repo/' + options.repo_id + '/file/unstar/';
case 'del_dir': return siteRoot + 'api2/repos/' + options.repo_id + '/dir/';
- case 'del_file': return siteRoot + 'api2/repos/' + options.repo_id + '/file/';
+ case 'del_file': return siteRoot + 'api/v2.1/repos/' + options.repo_id + '/file/';
case 'rename_dir': return siteRoot + 'api2/repos/' + options.repo_id + '/dir/';
- case 'rename_file': return siteRoot + 'api2/repos/' + options.repo_id + '/file/';
+ case 'rename_file': return siteRoot + 'api/v2.1/repos/' + options.repo_id + '/file/';
case 'mv_dir': return siteRoot + 'ajax/repo/' + options.repo_id + '/dir/mv/';
case 'cp_dir': return siteRoot + 'ajax/repo/' + options.repo_id + '/dir/cp/';
case 'mv_file': return siteRoot + 'ajax/repo/' + options.repo_id + '/file/mv/';
case 'cp_file': return siteRoot + 'ajax/repo/' + options.repo_id + '/file/cp/';
- case 'lock_or_unlock_file': return siteRoot + 'api2/repos/' + options.repo_id + '/file/';
+ case 'lock_or_unlock_file': return siteRoot + 'api/v2.1/repos/' + options.repo_id + '/file/';
case 'new_dir': return siteRoot + 'ajax/repo/' + options.repo_id + '/dir/new/';
case 'new_file': return siteRoot + 'ajax/repo/' + options.repo_id + '/file/new/';
case 'del_dirents': return siteRoot + 'ajax/repo/' + options.repo_id + '/dirents/delete/';