diff options
Diffstat (limited to 'apps/settings/src/utils/validate.js')
-rw-r--r-- | apps/settings/src/utils/validate.js | 63 |
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 |