diff --git a/zefie_wtvp_minisrv/includes/ServiceVault/wtv-favorite/commit-add-folder.js b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-favorite/commit-add-folder.js index 2a139bd8..ca18aae1 100644 --- a/zefie_wtvp_minisrv/includes/ServiceVault/wtv-favorite/commit-add-folder.js +++ b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-favorite/commit-add-folder.js @@ -2,20 +2,21 @@ var minisrv_service_file = true; var foldername = request_headers.query.new_folder_name; var favstore_exists = session_data.favstore.favstoreExists(); -var folder_exists = session_data.favstore.folderExists(foldername); -var folder_array = session_data.favstore.getFolders(); +var valid_foldername = session_data.favstore.checkFolderName(foldername); -if (foldername) -{ - if (favstore_exists != true) - session_data.favstore.createFavstore(); - - if (folder_exists != true) - { - if (folder_array.length < minisrv_config.services[service_name].max_folders) - { - if (session_data.favstore.checkFolderName(foldername) == true) - { + +if (!valid_foldername) { + headers = `400 That folder name is not valid. Choose a different name and try again.` +} else { + var folder_exists = session_data.favstore.folderExists(foldername); + var folder_array = session_data.favstore.getFolders(); + + if (foldername) { + if (favstore_exists === false) + session_data.favstore.createFavstore(); + + if (folder_exists === false) { + if (folder_array.length < minisrv_config.services[service_name].max_folders) { session_data.favstore.createFolder(foldername); headers = `300 OK Connection: Keep-Alive @@ -23,14 +24,12 @@ Content-Type: text/html Location: wtv-favorite:/favorite wtv-expire-all: wtv-favorite:` } else { - headers = `400 That folder name is not valid. Choose a different name and try again.` + headers = `400 You can only have ${minisrv_config.services[service_name].max_folders} folders at one time. Delete some folders and try again.` } } else { - headers = `400 You can only have ${minisrv_config.services[service_name].max_folders} folders at one time. Delete some folders and try again.` + headers = `400 That folder already exists. Choose a different name and try again.` } } else { - headers = `400 That folder already exists. Choose a different name and try again.` + headers = `400 Please type a folder name.` } -} else { - headers = `400 Please type a folder name.` -} +} \ No newline at end of file diff --git a/zefie_wtvp_minisrv/includes/classes/WTVFavorites.js b/zefie_wtvp_minisrv/includes/classes/WTVFavorites.js index 20b536fe..04bbcb2d 100644 --- a/zefie_wtvp_minisrv/includes/classes/WTVFavorites.js +++ b/zefie_wtvp_minisrv/includes/classes/WTVFavorites.js @@ -74,14 +74,6 @@ class WTVFavorites { } return store_dir; } - - - checkFolderName(foldername) { - var regex_str = "^([A-Za-z0-9\-\_]{1,}$"; - var regex = new RegExp(regex_str); - return regex.test(foldername); - } - createTemplateFolder(folder) { // create emply folder @@ -231,9 +223,7 @@ class WTVFavorites { } checkFolderName(folder) { - var check1 = /^([A-Za-z0-9\-\_])$/.test(folder); - var check2 = /^[A-Za-z]/.test(folder); - return (check1 && check2); + return /^([a-z0-9\-\_\ ]{3,})$/i.test(folder); } deleteFavorite(favoriteid, folder) {