Removing need for register_globals
[adorno.git] / debian / procedures.sql
blob8c69e8405a4be9dfd13dbf76f193681ada661506
2 -- Update some information about the track having been played.
3 -- This is kind of trivial for now, but we expect to see more logic in
4 -- here eventually.
5 CREATE or REPLACE FUNCTION track_played( TEXT ) RETURNS TEXT AS '
6   DECLARE
7     in_hash ALIAS FOR $1;
8   BEGIN
9     INSERT INTO played ( hash_key, req_at ) VALUES( in_hash , current_timestamp );
10     RETURN  in_hash;
11   END;
12 ' LANGUAGE 'plpgsql';
15 CREATE or REPLACE FUNCTION translation_of( TEXT ) RETURNS TEXT AS '
16   DECLARE
17     in_text ALIAS FOR $1;
18     out_text TEXT;
19   BEGIN
20     SELECT translated INTO out_text FROM translations WHERE in_text ~* original ;
21     IF NOT FOUND THEN
22       RETURN in_text;
23     END IF;
24     RETURN out_text;
25   END;
26 ' LANGUAGE 'plpgsql';
28 CREATE or REPLACE FUNCTION fix_artists() RETURNS INT AS '
29              update tracks set artist = translation_of(artist) where artist != translation_of(artist);
30              SELECT 1;
31 ' LANGUAGE sql;