create or substitute perform expiredate(deger textual content,sayi int ,userr textual content = NULL )
RETURNS textual content AS $$
declare
user_name textual content;
BEGIN
IF userr is not null and deger =‘+’ THEN
FOR user_name IN
choose
case when valuntil is null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
when valuntil=‘infinity’
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
when valuntil is not null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(valuntil,‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
finish as expiredate
from pg_user the place usename ‘postgres’and usename=userr LOOP
EXECUTE consumer_identify ;
END LOOP;
END IF;
IF userr is not null and deger =‘-‘ THEN
FOR user_name IN
choose
case when valuntil is null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
when valuntil=‘infinity’
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
when valuntil is not null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(valuntil,‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
finish as expiredate
from pg_user the place usename ‘postgres’ and usename=userr LOOP
EXECUTE consumer_identify ;
END LOOP;
END IF;
IF userr is null and deger =‘+’ THEN
FOR user_name IN
choose
case when valuntil is null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
when valuntil=‘infinity’
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
when valuntil is not null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(valuntil,‘YYYY,MM,DD,HH24:MI’)::date+sayi ||”‘;’
finish as expiredate
from pg_user the place usename ‘postgres’ LOOP
EXECUTE consumer_identify ;
END LOOP;
END IF;
IF userr is null and deger =‘-‘ THEN
FOR user_name IN
choose
case when valuntil is null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
when valuntil=‘infinity’
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(now(),‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
when valuntil is not null
then ‘ALTER USER ‘ || usename|| ‘ VALID UNTIL ‘”|| TO_CHAR(valuntil,‘YYYY,MM,DD,HH24:MI’)::date–sayi ||”‘;’
finish as expiredate
from pg_user the place usename ‘postgres’LOOP
EXECUTE consumer_identify ;
END LOOP;
END IF;
return ‘ Expire süresi ‘ ||deger||”||sayi|| ‘ gün olarak değiştirilmiştir.’;
finish;
$$ language plpgsql VOLATILE
;