]> git.wh0rd.org - tt-rss.git/blame - db-prefs.php
misc exception handling improvements
[tt-rss.git] / db-prefs.php
CommitLineData
3bac89ad 1<?
75c56ed7 2 // TODO cache last query results
3bac89ad
AD
3
4 require_once "config.php";
5 require_once "db.php";
6
a2770077 7 function get_pref($link, $pref_name, $user_id = false) {
3bac89ad
AD
8
9 $pref_name = db_escape_string($pref_name);
10
a2770077
AD
11 if (!$user_id) {
12 $user_id = $_SESSION["uid"];
13 } else {
14 $user_id = sprintf("%d", $user_id);
15 }
16
4062022e
AD
17 $result = db_query($link, "SELECT
18 value,ttrss_prefs_types.type_name as type_name
ff485f1d
AD
19 FROM
20 ttrss_user_prefs,ttrss_prefs,ttrss_prefs_types
21 WHERE
22 ttrss_user_prefs.pref_name = '$pref_name' AND
23 ttrss_prefs_types.id = type_id AND
a2770077 24 owner_uid = '$user_id' AND
ff485f1d 25 ttrss_user_prefs.pref_name = ttrss_prefs.pref_name");
3bac89ad
AD
26
27 if (db_num_rows($result) > 0) {
28 $value = db_fetch_result($result, 0, "value");
4062022e
AD
29 $type_name = db_fetch_result($result, 0, "type_name");
30
31 if ($type_name == "bool") {
32 return $value == "true";
33 } else if ($type_name == "integer") {
34 return sprintf("%d", $value);
35 } else {
36 return $value;
37 }
38
3bac89ad
AD
39 } else {
40 die("Fatal error, unknown preferences key: $pref_name");
41 }
42 }
43
44?>