]> git.wh0rd.org - tt-rss.git/blame - modules/pref-labels.php
pref-labels, save: do not escape unnecessary newline
[tt-rss.git] / modules / pref-labels.php
CommitLineData
ef8be8ea 1<?php
ef8be8ea 2 function module_pref_labels($link) {
ef8be8ea
AD
3
4 $subop = $_GET["subop"];
5
ceb30ba4 6 if ($subop == "save") {
071ec48f 7
ceb30ba4 8 $id = db_escape_string($_REQUEST["id"]);
9c5e85fe 9 $caption = db_escape_string(trim($_REQUEST["value"]));
071ec48f 10
ceb30ba4 11 db_query($link, "BEGIN");
10fa6615 12
ceb30ba4
AD
13 $result = db_query($link, "SELECT caption FROM ttrss_labels2
14 WHERE id = '$id' AND owner_uid = ". $_SESSION["uid"]);
ef8be8ea 15
ceb30ba4
AD
16 if (db_num_rows($result) != 0) {
17 $old_caption = db_fetch_result($result, 0, "caption");
a4919a16 18
ceb30ba4
AD
19 $result = db_query($link, "SELECT id FROM ttrss_labels2
20 WHERE caption = '$caption' AND owner_uid = ". $_SESSION["uid"]);
ef8be8ea 21
ceb30ba4
AD
22 if (db_num_rows($result) == 0) {
23 if ($caption) {
24 $result = db_query($link, "UPDATE ttrss_labels2 SET
25 caption = '$caption' WHERE id = '$id' AND
26 owner_uid = " . $_SESSION["uid"]);
ef8be8ea 27
ceb30ba4 28 /* Update filters that reference label being renamed */
ef8be8ea 29
ceb30ba4
AD
30 db_query($link, "UPDATE ttrss_filters SET
31 action_param = '$caption' WHERE action_param = '$old_caption'
32 AND action_id = 7
33 AND owner_uid = " . $_SESSION["uid"]);
ef8be8ea 34
9c5e85fe 35 print $_REQUEST["value"];
ceb30ba4
AD
36 }
37 } else {
38 print $old_caption;
ef8be8ea 39 }
ef8be8ea
AD
40 }
41
ceb30ba4 42 db_query($link, "COMMIT");
ef8be8ea
AD
43
44 return;
45 }
46
ef8be8ea
AD
47 if ($subop == "remove") {
48
ceb30ba4 49 $ids = split(",", db_escape_string($_GET["ids"]));
ef8be8ea
AD
50
51 foreach ($ids as $id) {
ceb30ba4
AD
52 db_query($link, "DELETE FROM ttrss_labels2 WHERE id = '$id'
53 AND owner_uid = " . $_SESSION["uid"]);
ef8be8ea
AD
54 }
55 }
56
57 if ($subop == "add") {
ef8be8ea 58
ceb30ba4 59 $caption = db_escape_string($_GET["caption"]);
ef8be8ea 60
ceb30ba4 61 if ($caption) {
caf1f12f 62
ceb30ba4
AD
63 $result = db_query($link, "SELECT id FROM ttrss_labels2
64 WHERE caption = '$caption' AND owner_uid = ". $_SESSION["uid"]);
ef8be8ea 65
ceb30ba4 66 if (db_num_rows($result) == 0) {
5e6f933a 67
ceb30ba4
AD
68 $result = db_query($link,
69 "INSERT INTO ttrss_labels2 (caption,owner_uid)
70 VALUES ('$caption', '".$_SESSION["uid"]."')");
71
72 if (db_affected_rows($link, $result) != 0) {
73 print T_sprintf("Created label <b>%s</b>", htmlspecialchars($caption));
74 }
75 }
5e6f933a
AD
76 }
77
78 return;
ef8be8ea
AD
79 }
80
fe8d2059
AD
81 set_pref($link, "_PREFS_ACTIVE_TAB", "labelConfig");
82
ef8be8ea
AD
83 $sort = db_escape_string($_GET["sort"]);
84
85 if (!$sort || $sort == "undefined") {
ceb30ba4 86 $sort = "caption";
ef8be8ea
AD
87 }
88
112d2aec
AD
89 $label_search = db_escape_string($_GET["search"]);
90
91 if (array_key_exists("search", $_GET)) {
92 $_SESSION["prefs_label_search"] = $label_search;
93 } else {
94 $label_search = $_SESSION["prefs_label_search"];
95 }
96
97 print "<div class=\"feedEditSearch\">
98 <input id=\"label_search\" size=\"20\" type=\"search\"
4cf6fc6a
AD
99 onfocus=\"javascript:disableHotkeys();\"
100 onblur=\"javascript:enableHotkeys();\"
112d2aec
AD
101 onchange=\"javascript:updateLabelList()\" value=\"$label_search\">
102 <input type=\"submit\" class=\"button\"
103 onclick=\"javascript:updateLabelList()\" value=\"".__('Search')."\">
112d2aec 104 </div>";
0d32b41e 105
ef8be8ea
AD
106 print "<div class=\"prefGenericAddBox\">";
107
108 print"<input type=\"submit\" class=\"button\"
109 id=\"label_create_btn\"
ceb30ba4 110 onclick=\"return addLabel()\"
a3c159c4 111 value=\"".__('Create label')."\"></div>";
ef8be8ea 112
112d2aec 113 if ($label_search) {
ceb30ba4 114 $label_search_query = "caption LIKE '%$label_search%' AND";
112d2aec
AD
115 } else {
116 $label_search_query = "";
117 }
118
ef8be8ea 119 $result = db_query($link, "SELECT
ceb30ba4 120 id,caption
ef8be8ea 121 FROM
ceb30ba4 122 ttrss_labels2
ef8be8ea 123 WHERE
112d2aec 124 $label_search_query
ef8be8ea
AD
125 owner_uid = ".$_SESSION["uid"]."
126 ORDER BY $sort");
127
128// print "<div id=\"infoBoxShadow\"><div id=\"infoBox\">PLACEHOLDER</div></div>";
129
130 if (db_num_rows($result) != 0) {
131
ef8be8ea
AD
132 print "<p><table width=\"100%\" cellspacing=\"0\"
133 class=\"prefLabelList\" id=\"prefLabelList\">";
134
135 print "<tr><td class=\"selectPrompt\" colspan=\"8\">
e8d0177d
AD
136 ".__('Select:')."
137 <a href=\"javascript:selectPrefRows('label', true)\">".__('All')."</a>,
138 <a href=\"javascript:selectPrefRows('label', false)\">".__('None')."</a>
ef8be8ea
AD
139 </td</tr>";
140
141 print "<tr class=\"title\">
142 <td width=\"5%\">&nbsp;</td>
ceb30ba4 143 <td width=\"95%\"><a href=\"javascript:updateLabelList('description')\">".__('Caption')."</a></td>
ef8be8ea
AD
144 </td>
145 </tr>";
146
147 $lnum = 0;
148
149 while ($line = db_fetch_assoc($result)) {
150
151 $class = ($lnum % 2) ? "even" : "odd";
152
153 $label_id = $line["id"];
ceb30ba4
AD
154 $this_row_id = "id=\"LILRR-$label_id\"";
155
ef8be8ea
AD
156 print "<tr class=\"$class\" $this_row_id>";
157
ceb30ba4 158 $line["caption"] = htmlspecialchars($line["caption"]);
ef8be8ea 159
ceb30ba4
AD
160 print "<td align='center'><input
161 onclick='toggleSelectPrefRow(this, \"label\");'
ef8be8ea
AD
162 type=\"checkbox\" id=\"LICHK-".$line["id"]."\"></td>";
163
ceb30ba4
AD
164 print "<td><span id=\"LILT-".$line["id"]."\">" . $line["caption"] .
165 "</span></td>";
ef8be8ea
AD
166
167 print "</tr>";
168
169 ++$lnum;
170 }
a5bd7bf0 171
ef8be8ea 172 print "</table>";
ef8be8ea
AD
173
174 print "<p id=\"labelOpToolbar\">";
a3c159c4 175 print "<input type=\"submit\" class=\"button\" disabled=\"true\"
a3c159c4 176 onclick=\"javascript:removeSelectedLabels()\" value=\"".__('Remove')."\">";
ceb30ba4 177 print "</p>";
ef8be8ea
AD
178
179 } else {
a5bd7bf0
AD
180 print "<p>";
181 if (!$label_search) {
182 print __('No labels defined.');
183 } else {
184 print __('No matching labels found.');
185 }
186 print "</p>";
187
ef8be8ea
AD
188 }
189 }
190?>