mysql/core_translate_lookup.sql
[Pman.Core] / mysql / core_translate_lookup.sql
1
2 DROP FUNCTION IF EXISTS core_translate_lookup;
3
4 DELIMITER $$
5 CREATE FUNCTION core_translate_lookup(
6     in_ontable VARCHAR(128),
7     in_onid INT(11),
8     in_col VARCHAR(128),
9     in_lang VARCHAR(8),
10     in_default TEXT
11 )  
12 RETURNS TEXT NOT DETERMINISTIC READS SQL DATA 
13     BEGIN
14
15         DECLARE v_ret TEXT;
16         DECLARE v_id INT(11);
17         
18         SET v_id = 0;
19         
20         SELECT
21             v_id,
22             v_ret
23         FROM
24             core_templatestr
25         WHERE
26             on_id = in_onid
27             AND
28             on_table = in_ontable
29             AND
30             on_col = in_col
31             AND
32             lang = in_lang
33         LIMIT 1;
34             
35         IF v_id < 1 OR LENGTH(txt) < 1 THEN
36             RETURN in_default;
37         END IF;
38         
39         RETURN v_ret;
40
41     END $$
42
43 DELIMITER ;