Changeset 1391


Ignore:
Timestamp:
08/18/15 11:48:52 (9 years ago)
Author:
nanardon
Message:

Adding trigger on to trigger user sync on aliases update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/bin/la-sql-upgrade.in

    r1382 r1391  
    584584            FROM "user" 
    585585            WHERE ("user".expire IS NOT NULL and "user".expire <= now()) or "user".exported = false;  
    586             } 
     586            }, 
     587            q{ 
     588            CREATE OR REPLACE FUNCTION rev_tg_aliases_f() 
     589            RETURNS trigger AS 
     590            $BODY$begin 
     591 
     592            IF (TG_OP = 'DELETE') THEN 
     593            update "user" set rev = nextval('revisions_rev_seq'::regclass), "date" = now() where "name" = ANY (old.forward); 
     594            return old; 
     595            ELSE 
     596                IF (TG_OP = 'UPDATE') THEN 
     597                update "user" set rev = nextval('revisions_rev_seq'::regclass), "date" = now() where "name" = ANY (old.forward); 
     598                END IF; 
     599            update "user" set rev = nextval('revisions_rev_seq'::regclass), "date" = now() where "name" = ANY (new.forward); 
     600            return new; 
     601            END IF; 
     602 
     603            end;$BODY$ 
     604            LANGUAGE plpgsql VOLATILE 
     605            COST 100; 
     606 
     607            CREATE TRIGGER aliases_user_tg 
     608            AFTER INSERT OR UPDATE OR DELETE 
     609            ON aliases 
     610            FOR EACH ROW 
     611            EXECUTE PROCEDURE rev_tg_aliases_f(); 
     612            }, 
    587613        ], 
    588614    } 
Note: See TracChangeset for help on using the changeset viewer.