Merge pull request #480 from owncloud/fix_435_and_437

Also reject names with \ in the name
This commit is contained in:
Thomas Müller 2012-11-23 03:05:52 -08:00
commit b5b7a67f8a
2 changed files with 16 additions and 3 deletions

View File

@ -151,6 +151,9 @@ var FileList={
event.stopPropagation();
event.preventDefault();
var newname=input.val();
if (Files.containsInvalidCharacters(newname)) {
return false;
}
if (newname != name) {
if (FileList.checkName(name, newname, false)) {
newname = name;

View File

@ -25,6 +25,18 @@ Files={
delete uploadingFiles[index];
});
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() {
@ -505,9 +517,7 @@ $(document).ready(function() {
$(this).append(input);
input.focus();
input.change(function(){
if(type != 'web' && $(this).val().indexOf('/')!=-1){
$('#notification').text(t('files','Invalid name, \'/\' is not allowed.'));
$('#notification').fadeIn();
if (type != 'web' && Files.containsInvalidCharacters($(this).val())) {
return;
} else if( type == 'folder' && $('#dir').val() == '/' && $(this).val() == 'Shared') {
$('#notification').text(t('files','Invalid folder name. Usage of "Shared" is reserved by Owncloud'));