./migrations/7a4d728_to_c19a46b.sql
This commit is contained in:
parent
fa5869f986
commit
476b6bb850
59
7a4d728_to_c19a46b.sql
Normal file
59
7a4d728_to_c19a46b.sql
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
drop function if exists "public"."hashed_text_string"(hashed hashed_text);
|
||||||
|
|
||||||
|
drop type "public"."email";
|
||||||
|
|
||||||
|
drop type "public"."hashed_text";
|
||||||
|
|
||||||
|
set check_function_bodies = off;
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.email_of_string(val text)
|
||||||
|
RETURNS email
|
||||||
|
LANGUAGE sql
|
||||||
|
AS $function$select row(val);$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.email_to_string(val email)
|
||||||
|
RETURNS text
|
||||||
|
LANGUAGE sql
|
||||||
|
AS $function$select (val.str);$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.hashed_text_of_string(val text)
|
||||||
|
RETURNS hashed_text
|
||||||
|
LANGUAGE sql
|
||||||
|
AS $function$select row(val);$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.hashed_text_to_string(val hashed_text)
|
||||||
|
RETURNS text
|
||||||
|
LANGUAGE sql
|
||||||
|
AS $function$select (val.str);$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
create type "public"."email" as ("str" text);
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.hash_text(plain text)
|
||||||
|
RETURNS hashed_text
|
||||||
|
LANGUAGE plpgsql
|
||||||
|
IMMUTABLE
|
||||||
|
AS $function$
|
||||||
|
begin
|
||||||
|
return hashed_text_of_string(crypt(plain, gen_salt('bf')));
|
||||||
|
end;
|
||||||
|
$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
create type "public"."hashed_text" as ("str" text);
|
||||||
|
|
||||||
|
CREATE OR REPLACE FUNCTION public.hashed_text_matches(plain text, hashed hashed_text)
|
||||||
|
RETURNS boolean
|
||||||
|
LANGUAGE plpgsql
|
||||||
|
IMMUTABLE
|
||||||
|
AS $function$
|
||||||
|
begin
|
||||||
|
return hashed_text_to_string(hashed) = crypt(plain, hashed_text_to_string(hashed));
|
||||||
|
end;
|
||||||
|
$function$
|
||||||
|
;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user