aboutsummaryrefslogtreecommitdiffstats
path: root/apps/settings/src/utils/validate.js
diff options
context:
space:
mode:
Diffstat (limited to 'apps/settings/src/utils/validate.js')
-rw-r--r--apps/settings/src/utils/validate.js63
1 files changed, 31 insertions, 32 deletions
diff --git a/apps/settings/src/utils/validate.js b/apps/settings/src/utils/validate.js
index 58d42863f4e..0f76f4e6dc5 100644
--- a/apps/settings/src/utils/validate.js
+++ b/apps/settings/src/utils/validate.js
@@ -1,23 +1,6 @@
/**
- * @copyright 2021, Christopher Ng <chrng8@gmail.com>
- *
- * @author Christopher Ng <chrng8@gmail.com>
- *
- * @license AGPL-3.0-or-later
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
+ * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
*/
/*
@@ -26,19 +9,7 @@
* TODO add nice validation errors for Profile page settings modal
*/
-import { VALIDATE_EMAIL_REGEX } from '../constants/AccountPropertyConstants'
-
-/**
- * Validate the string input
- *
- * Generic validator just to check that input is not an empty string*
- *
- * @param {string} input the input
- * @return {boolean}
- */
-export function validateStringInput(input) {
- return input !== ''
-}
+import { VALIDATE_EMAIL_REGEX } from '../constants/AccountPropertyConstants.ts'
/**
* Validate the email input
@@ -59,6 +30,22 @@ export function validateEmail(input) {
}
/**
+ * Validate the URL input
+ *
+ * @param {string} input the input
+ * @return {boolean}
+ */
+export function validateUrl(input) {
+ try {
+ // eslint-disable-next-line no-new
+ new URL(input)
+ return true
+ } catch (e) {
+ return false
+ }
+}
+
+/**
* Validate the language input
*
* @param {object} input the input
@@ -71,6 +58,18 @@ export function validateLanguage(input) {
}
/**
+ * Validate the locale input
+ *
+ * @param {object} input the input
+ * @return {boolean}
+ */
+export function validateLocale(input) {
+ return input.code !== ''
+ && input.name !== ''
+ && input.name !== undefined
+}
+
+/**
* Validate boolean input
*
* @param {boolean} input the input