Merge pull request #480 from owncloud/fix_435_and_437
Also reject names with \ in the name
This commit is contained in:
commit
b5b7a67f8a
|
@ -151,6 +151,9 @@ var FileList={
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
var newname=input.val();
|
var newname=input.val();
|
||||||
|
if (Files.containsInvalidCharacters(newname)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (newname != name) {
|
if (newname != name) {
|
||||||
if (FileList.checkName(name, newname, false)) {
|
if (FileList.checkName(name, newname, false)) {
|
||||||
newname = name;
|
newname = name;
|
||||||
|
|
|
@ -25,6 +25,18 @@ Files={
|
||||||
delete uploadingFiles[index];
|
delete uploadingFiles[index];
|
||||||
});
|
});
|
||||||
procesSelection();
|
procesSelection();
|
||||||
|
},
|
||||||
|
containsInvalidCharacters:function (name) {
|
||||||
|
var invalid_characters = ['\\', '/', '<', '>', ':', '"', '|', '?', '*'];
|
||||||
|
for (var i = 0; i < invalid_characters.length; i++) {
|
||||||
|
if (name.indexOf(invalid_characters[i]) != -1) {
|
||||||
|
$('#notification').text(t('files', "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed."));
|
||||||
|
$('#notification').fadeIn();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$('#notification').fadeOut();
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
@ -505,9 +517,7 @@ $(document).ready(function() {
|
||||||
$(this).append(input);
|
$(this).append(input);
|
||||||
input.focus();
|
input.focus();
|
||||||
input.change(function(){
|
input.change(function(){
|
||||||
if(type != 'web' && $(this).val().indexOf('/')!=-1){
|
if (type != 'web' && Files.containsInvalidCharacters($(this).val())) {
|
||||||
$('#notification').text(t('files','Invalid name, \'/\' is not allowed.'));
|
|
||||||
$('#notification').fadeIn();
|
|
||||||
return;
|
return;
|
||||||
} else if( type == 'folder' && $('#dir').val() == '/' && $(this).val() == 'Shared') {
|
} else if( type == 'folder' && $('#dir').val() == '/' && $(this).val() == 'Shared') {
|
||||||
$('#notification').text(t('files','Invalid folder name. Usage of "Shared" is reserved by Owncloud'));
|
$('#notification').text(t('files','Invalid folder name. Usage of "Shared" is reserved by Owncloud'));
|
||||||
|
|
Loading…
Reference in New Issue