equal
deleted
inserted
replaced
574 AND address = localpart |
574 AND address = localpart |
575 LOOP |
575 LOOP |
576 RETURN NEXT record; |
576 RETURN NEXT record; |
577 END LOOP; |
577 END LOOP; |
578 IF NOT FOUND THEN |
578 IF NOT FOUND THEN |
|
579 -- First, we have to check existing mailboxes and |
|
580 -- return identity if one exists |
579 FOR record IN |
581 FOR record IN |
580 SELECT recipient, destination |
582 SELECT recipient, recipient as destination |
581 FROM catchall |
583 FROM users |
582 WHERE gid = did |
584 WHERE gid = did |
|
585 AND local_part = localpart |
|
586 UNION SELECT recipient, recipient as destination |
|
587 FROM relocated |
|
588 WHERE gid = did |
|
589 AND address = localpart |
583 LOOP |
590 LOOP |
584 RETURN NEXT record; |
591 RETURN NEXT record; |
585 END LOOP; |
592 END LOOP; |
|
593 -- Only now can we think about catchalls... |
|
594 IF NOT FOUND THEN |
|
595 FOR record IN |
|
596 SELECT recipient, destination |
|
597 FROM catchall |
|
598 WHERE gid = did |
|
599 LOOP |
|
600 RETURN NEXT record; |
|
601 END LOOP; |
|
602 END IF; |
586 END IF; |
603 END IF; |
587 RETURN; |
604 RETURN; |
588 END; |
605 END; |
589 $$ LANGUAGE plpgsql STABLE |
606 $$ LANGUAGE plpgsql STABLE |
590 RETURNS NULL ON NULL INPUT |
607 RETURNS NULL ON NULL INPUT |