check fo special char

pull/1/head
yann300 7 years ago
parent 924f28c793
commit 63a878eb36
  1. 7
      src/app.js
  2. 4
      src/app/files/browser-files.js
  3. 6
      src/app/files/file-explorer.js
  4. 4
      src/app/files/shared-folder.js

@ -369,7 +369,12 @@ function run () {
// Add files received from remote instance (i.e. another browser-solidity)
function loadFiles (filesSet) {
for (var f in filesSet) {
filesProviders['browser'].set(helper.createNonClashingName(f, filesProviders['browser']), filesSet[f].content)
var name = helper.createNonClashingName(f, filesProviders['browser'])
if (filesProviders['browser'].checkSpecialChars(name)) {
modalDialogCustom.alert('Special characters are not allowed')
return
}
filesProviders['browser'].set(name, filesSet[f].content)
}
fileManager.switchFile()
}

@ -22,6 +22,10 @@ function Files (storage) {
cb()
}
this.checkSpecialChars = function (name) {
return name.match(/(\/|:|\*|\?|"|<|>|\\|\||')/) != null
}
this.get = function (path, cb) {
var unprefixedpath = this.removePrefix(path)
// NOTE: ignore the config file

@ -137,6 +137,10 @@ function fileExplorer (appAPI, files) {
function loadFile () {
var fileReader = new FileReader()
fileReader.onload = function (event) {
if (files.checkSpecialChars(name)) {
modalDialogCustom.alert('Special characters are not allowed')
return
}
var success = files.set(name, event.target.result)
if (!success) modalDialogCustom.alert('Failed to create file ' + name)
else events.trigger('focus', [name])
@ -228,7 +232,7 @@ function fileExplorer (appAPI, files) {
if (label.innerText === '') {
modalDialogCustom.alert('File name cannot be empty')
label.innerText = textUnderEdit
} else if (label.innerText.match(/(\/|:|\*|\?|"|<|>|\\|\||')/) !== null) {
} else if (files.checkSpecialChars(label.innerText)) {
modalDialogCustom.alert('Special characters are not allowed')
label.innerText = textUnderEdit
} else if (!files.exists(newPath)) {

@ -45,6 +45,10 @@ class SharedFolder {
cb()
}
checkSpecialChars (name) {
return name.match(/(\/|:|\*|\?|"|<|>|\\|\||')/) != null
}
init (cb) {
this.remixd.call('sharedfolder', 'list', {}, (error, filesList) => {
if (error) {

Loading…
Cancel
Save