summaryrefslogtreecommitdiff
path: root/db/rest/util/_api_validate_text.sql
diff options
context:
space:
mode:
Diffstat (limited to 'db/rest/util/_api_validate_text.sql')
-rw-r--r--db/rest/util/_api_validate_text.sql53
1 files changed, 0 insertions, 53 deletions
diff --git a/db/rest/util/_api_validate_text.sql b/db/rest/util/_api_validate_text.sql
deleted file mode 100644
index ff3a227..0000000
--- a/db/rest/util/_api_validate_text.sql
+++ /dev/null
@@ -1,53 +0,0 @@
-CREATE FUNCTION _api.validate_text(
- _column TEXT DEFAULT '',
- _text TEXT DEFAULT NULL,
- _min INTEGER DEFAULT NULL,
- _max INTEGER DEFAULT NULL,
- _nullable BOOLEAN DEFAULT FALSE
-)
-RETURNS BOOLEAN
-LANGUAGE plpgsql VOLATILE
-AS $BODY$
-DECLARE
- _length INTEGER;
-BEGIN
-
- -- make sure that text can only be null
- -- when we allow it
- IF _text IS NULL AND NOT _nullable THEN
- PERFORM _api.raise(
- _msg => 'api_null_value',
- _detail => _column
- );
- END IF;
-
- IF _text IS NULL THEN
- RETURN TRUE;
- END IF;
-
- _length = LENGTH(_text);
-
- IF _min IS NOT NULL AND _length < _min THEN
- PERFORM _api.raise(
- _msg => 'api_min_value',
- _detail => _column,
- _hint => _min || ''
- );
- RETURN FALSE;
- END IF;
-
- IF _max IS NOT NULL AND _length > _max THEN
- PERFORM _api.raise(
- _msg => 'api_max_value',
- _detail => _column,
- _hint => _max || ''
- );
- RETURN FALSE;
- END IF;
-
- RETURN TRUE;
-END
-$BODY$;
-
-GRANT EXECUTE ON FUNCTION _api.validate_text(TEXT, TEXT, INTEGER, INTEGER, BOOLEAN)
- TO rest_anon, rest_user;