]>
Commit | Line | Data |
---|---|---|
1 | <?php | |
2 | function module_popup_dialog($link) { | |
3 | $id = $_GET["id"]; | |
4 | $param = db_escape_string($_GET["param"]); | |
5 | ||
6 | if ($id == "explainError") { | |
7 | ||
8 | print "<div id=\"infoBoxTitle\">".__('Notice')."</div>"; | |
9 | print "<div class=\"infoBoxContents\">"; | |
10 | ||
11 | print "<div class=\"errorExplained\">"; | |
12 | ||
13 | if ($param == 1) { | |
14 | print __("Update daemon is enabled in configuration, but daemon process is not running, which prevents all feeds from updating. Please start the daemon process or contact instance owner."); | |
15 | ||
16 | $stamp = (int)read_stampfile("update_daemon.stamp"); | |
17 | ||
18 | print "<p>" . __("Last update:") . " " . date("Y.m.d, G:i", $stamp); | |
19 | ||
20 | } | |
21 | ||
22 | if ($param == 2) { | |
23 | $msg = check_for_update($link); | |
24 | ||
25 | if (!$msg) { | |
26 | print __("You are running the latest version of Tiny Tiny RSS. The fact that you are seeing this dialog is probably a bug."); | |
27 | } else { | |
28 | print $msg; | |
29 | } | |
30 | ||
31 | } | |
32 | ||
33 | if ($param == 3) { | |
34 | print __("Update daemon is taking too long to perform a feed update. This could indicate a problem like crash or a hang. Please check the daemon process or contact instance owner."); | |
35 | ||
36 | $stamp = (int)read_stampfile("update_daemon.stamp"); | |
37 | ||
38 | print "<p>" . __("Last update:") . " " . date("Y.m.d, G:i", $stamp); | |
39 | ||
40 | } | |
41 | ||
42 | print "</div>"; | |
43 | ||
44 | print "<div align='center'>"; | |
45 | ||
46 | print "<input class=\"button\" | |
47 | type=\"submit\" onclick=\"return visitOfficialSite()\" | |
48 | value=\"".__('Visit official site')."\"> "; | |
49 | ||
50 | print "<input class=\"button\" | |
51 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
52 | value=\"".__('Close this window')."\">"; | |
53 | ||
54 | print "</div></div>"; | |
55 | ||
56 | return; | |
57 | } | |
58 | ||
59 | if ($id == "quickAddFeed") { | |
60 | ||
61 | print "<div id=\"infoBoxTitle\">".__('Subscribe to Feed')."</div>"; | |
62 | print "<div class=\"infoBoxContents\">"; | |
63 | ||
64 | print "<form id='feed_add_form' onsubmit='return false'>"; | |
65 | ||
66 | print "<input type=\"hidden\" name=\"op\" value=\"pref-feeds\">"; | |
67 | print "<input type=\"hidden\" name=\"subop\" value=\"add\">"; | |
68 | print "<input type=\"hidden\" name=\"from\" value=\"tt-rss\">"; | |
69 | ||
70 | print "<div class=\"dlgSec\">".__("Feed")."</div>"; | |
71 | print "<div class=\"dlgSecCont\">"; | |
72 | ||
73 | print __("URL:") . " "; | |
74 | ||
75 | print "<input size=\"40\" onblur=\"javascript:enableHotkeys()\" | |
76 | onkeypress=\"return filterCR(event, subscribeToFeed)\" | |
77 | onkeyup=\"toggleSubmitNotEmpty(this, 'fadd_submit_btn')\" | |
78 | onchange=\"toggleSubmitNotEmpty(this, 'fadd_submit_btn')\" | |
79 | onfocus=\"javascript:disableHotkeys()\" name=\"feed_url\"></td></tr>"; | |
80 | ||
81 | print "<br/>"; | |
82 | ||
83 | if (get_pref($link, 'ENABLE_FEED_CATS')) { | |
84 | print __('Place in category:') . " "; | |
85 | print_feed_cat_select($link, "cat_id"); | |
86 | } | |
87 | ||
88 | print "</div>"; | |
89 | ||
90 | ||
91 | /* print "<tr><td colspan='2'><div class='insensitive'>"; | |
92 | ||
93 | print __("Some feeds require authentication. If you subscribe to such | |
94 | feed, you will have to enter your login and password in Feed Editor"); | |
95 | ||
96 | print "</div></td></tr>"; */ | |
97 | ||
98 | /* print "<div id='fadd_login_prompt'><br/> | |
99 | <a href='javascript:appearBlockElement(\"fadd_login_container\", | |
100 | \"fadd_login_prompt\")'>".__('Click here if this feed requires authentication.')."</a></div>"; */ | |
101 | ||
102 | print "<div id='fadd_login_container' style='display:none'> | |
103 | ||
104 | <div class=\"dlgSec\">".__("Authentication")."</div> | |
105 | <div class=\"dlgSecCont\">". | |
106 | ||
107 | __('Login:') . " <input name='auth_login' size=\"20\" | |
108 | onfocus=\"javascript:disableHotkeys()\" | |
109 | onfocus=\"javascript:disableHotkeys()\" | |
110 | onkeypress=\"return filterCR(event, subscribeToFeed)\"> ". | |
111 | __('Password:') . "<input type='password' | |
112 | name='auth_pass' size=\"20\" | |
113 | onfocus=\"javascript:disableHotkeys()\" | |
114 | onfocus=\"javascript:disableHotkeys()\" | |
115 | onkeypress=\"return filterCR(event, subscribeToFeed)\"> | |
116 | </div></div>"; | |
117 | ||
118 | ||
119 | print "<div style=\"clear : both\"> | |
120 | <input type=\"checkbox\" id=\"fadd_login_check\" | |
121 | onclick='checkboxToggleElement(this, \"fadd_login_container\")'> | |
122 | <label for=\"fadd_login_check\">". | |
123 | __('This feed requires authentication.')."</div>"; | |
124 | ||
125 | print "</form>"; | |
126 | ||
127 | print "<div class=\"dlgButtons\"> | |
128 | <input class=\"button\" | |
129 | id=\"fadd_submit_btn\" disabled=\"true\" | |
130 | type=\"submit\" onclick=\"return subscribeToFeed()\" value=\"".__('Subscribe')."\"> | |
131 | <input class=\"button\" | |
132 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
133 | value=\"".__('Cancel')."\"></div>"; | |
134 | ||
135 | return; | |
136 | } | |
137 | ||
138 | if ($id == "search") { | |
139 | ||
140 | print "<div id=\"infoBoxTitle\">".__('Search')."</div>"; | |
141 | print "<div class=\"infoBoxContents\">"; | |
142 | ||
143 | print "<form id='search_form' onsubmit='return false'>"; | |
144 | ||
145 | #$active_feed_id = db_escape_string($_GET["param"]); | |
146 | ||
147 | $params = split(":", db_escape_string($_GET["param"])); | |
148 | ||
149 | $active_feed_id = sprintf("%d", $params[0]); | |
150 | $is_cat = $params[1] == "true"; | |
151 | ||
152 | print "<div class=\"dlgSec\">".__('Look for')."</div>"; | |
153 | ||
154 | print "<div class=\"dlgSecCont\">"; | |
155 | ||
156 | print "<input name=\"query\" size=\"20\" type=\"search\" | |
157 | onkeypress=\"return filterCR(event, search)\" | |
158 | onchange=\"toggleSubmitNotEmpty(this, 'search_submit_btn')\" | |
159 | onkeyup=\"toggleSubmitNotEmpty(this, 'search_submit_btn')\" | |
160 | value=\"\">"; | |
161 | ||
162 | print " " . __('match on')." "; | |
163 | ||
164 | $search_fields = array( | |
165 | "title" => __("Title"), | |
166 | "content" => __("Content"), | |
167 | "both" => __("Title or content")); | |
168 | ||
169 | print_select_hash("match_on", 3, $search_fields); | |
170 | ||
171 | ||
172 | print "<br/>".__('Limit search to:')." "; | |
173 | ||
174 | print "<select name=\"search_mode\"> | |
175 | <option value=\"all_feeds\">".__('All feeds')."</option>"; | |
176 | ||
177 | $feed_title = getFeedTitle($link, $active_feed_id); | |
178 | ||
179 | if (!$is_cat) { | |
180 | $feed_cat_title = getFeedCatTitle($link, $active_feed_id); | |
181 | } else { | |
182 | $feed_cat_title = getCategoryTitle($link, $active_feed_id); | |
183 | } | |
184 | ||
185 | if ($active_feed_id && !$is_cat) { | |
186 | print "<option selected value=\"this_feed\">$feed_title</option>"; | |
187 | } else { | |
188 | print "<option disabled>".__('This feed')."</option>"; | |
189 | } | |
190 | ||
191 | if ($is_cat) { | |
192 | $cat_preselected = "selected"; | |
193 | } | |
194 | ||
195 | if (get_pref($link, 'ENABLE_FEED_CATS') && ($active_feed_id > 0 || $is_cat)) { | |
196 | print "<option $cat_preselected value=\"this_cat\">$feed_cat_title</option>"; | |
197 | } else { | |
198 | //print "<option disabled>".__('This category')."</option>"; | |
199 | } | |
200 | ||
201 | print "</select>"; | |
202 | ||
203 | print "</div>"; | |
204 | ||
205 | print "</form>"; | |
206 | ||
207 | print "<div class=\"dlgButtons\"> | |
208 | <input type=\"submit\" | |
209 | class=\"button\" onclick=\"javascript:search()\" | |
210 | id=\"search_submit_btn\" disabled=\"true\" | |
211 | value=\"".__('Search')."\"> | |
212 | <input class=\"button\" | |
213 | type=\"submit\" onclick=\"javascript:searchCancel()\" | |
214 | value=\"".__('Cancel')."\"></div>"; | |
215 | ||
216 | print "</div>"; | |
217 | ||
218 | return; | |
219 | ||
220 | } | |
221 | ||
222 | if ($id == "quickAddFilter") { | |
223 | ||
224 | $active_feed_id = db_escape_string($_GET["param"]); | |
225 | ||
226 | print "<div id=\"infoBoxTitle\">".__('Create Filter')."</div>"; | |
227 | print "<div class=\"infoBoxContents\">"; | |
228 | ||
229 | print "<form id=\"filter_add_form\" onsubmit='return false'>"; | |
230 | ||
231 | print "<input type=\"hidden\" name=\"op\" value=\"pref-filters\">"; | |
232 | print "<input type=\"hidden\" name=\"quiet\" value=\"1\">"; | |
233 | print "<input type=\"hidden\" name=\"subop\" value=\"add\">"; | |
234 | ||
235 | $result = db_query($link, "SELECT id,description | |
236 | FROM ttrss_filter_types ORDER BY description"); | |
237 | ||
238 | $filter_types = array(); | |
239 | ||
240 | while ($line = db_fetch_assoc($result)) { | |
241 | //array_push($filter_types, $line["description"]); | |
242 | $filter_types[$line["id"]] = __($line["description"]); | |
243 | } | |
244 | ||
245 | print "<div class=\"dlgSec\">".__("Match")."</div>"; | |
246 | ||
247 | print "<div class=\"dlgSecCont\">"; | |
248 | ||
249 | print "<span id=\"filter_dlg_date_mod_box\" style=\"display : none\">"; | |
250 | print __("Date") . " "; | |
251 | ||
252 | $filter_params = array( | |
253 | "before" => __("before"), | |
254 | "after" => __("after")); | |
255 | ||
256 | print_select_hash("filter_date_modifier", "before", $filter_params); | |
257 | ||
258 | print " </span>"; | |
259 | ||
260 | print "<input onkeypress=\"return filterCR(event, createFilter)\" | |
261 | onkeyup=\"toggleSubmitNotEmpty(this, 'infobox_submit')\" | |
262 | onchange=\"toggleSubmitNotEmpty(this, 'infobox_submit')\" | |
263 | name=\"reg_exp\" size=\"30\" value=\"$reg_exp\">"; | |
264 | ||
265 | print "<span id=\"filter_dlg_date_chk_box\" style=\"display : none\">"; | |
266 | print " <input class=\"button\" | |
267 | type=\"submit\" onclick=\"return filterDlgCheckDate()\" | |
268 | value=\"".__('Check it')."\">"; | |
269 | print "</span>"; | |
270 | ||
271 | print "<br/> " . __("on field") . " "; | |
272 | print_select_hash("filter_type", 1, $filter_types, | |
273 | 'onchange="filterDlgCheckType(this)"'); | |
274 | ||
275 | print "<br/>"; | |
276 | ||
277 | print __("in") . " "; | |
278 | print_feed_select($link, "feed_id", $active_feed_id); | |
279 | ||
280 | print "</div>"; | |
281 | ||
282 | print "<div class=\"dlgSec\">".__("Perform Action")."</div>"; | |
283 | ||
284 | print "<div class=\"dlgSecCont\">"; | |
285 | ||
286 | print "<select name=\"action_id\" | |
287 | onchange=\"filterDlgCheckAction(this)\">"; | |
288 | ||
289 | $result = db_query($link, "SELECT id,description FROM ttrss_filter_actions | |
290 | ORDER BY name"); | |
291 | ||
292 | while ($line = db_fetch_assoc($result)) { | |
293 | printf("<option value='%d'>%s</option>", $line["id"], __($line["description"])); | |
294 | } | |
295 | ||
296 | print "</select>"; | |
297 | ||
298 | print "<span id=\"filter_dlg_param_box\" style=\"display : none\">"; | |
299 | print " " . __("with parameters:") . " "; | |
300 | print "<input size=\"20\" | |
301 | onkeypress=\"return filterCR(event, createFilter)\" | |
302 | name=\"action_param\">"; | |
303 | ||
304 | print_label_select($link, "action_param_label", $action_param); | |
305 | ||
306 | print "</span>"; | |
307 | ||
308 | print " "; // tiny layout hack | |
309 | ||
310 | print "</div>"; | |
311 | ||
312 | print "<div class=\"dlgSec\">".__("Options")."</div>"; | |
313 | print "<div class=\"dlgSecCont\">"; | |
314 | ||
315 | print "<div style=\"line-height : 100%\">"; | |
316 | ||
317 | print "<input type=\"checkbox\" name=\"enabled\" id=\"enabled\" checked=\"1\"> | |
318 | <label for=\"enabled\">".__('Enabled')."</label><br/>"; | |
319 | ||
320 | print "<input type=\"checkbox\" name=\"inverse\" id=\"inverse\"> | |
321 | <label for=\"inverse\">".__('Inverse match')."</label>"; | |
322 | ||
323 | print "</div>"; | |
324 | print "</div>"; | |
325 | ||
326 | print "</form>"; | |
327 | ||
328 | print "<div class=\"dlgButtons\">"; | |
329 | ||
330 | print "<input type=\"submit\" | |
331 | id=\"infobox_submit\" | |
332 | class=\"button\" onclick=\"return createFilter()\" | |
333 | disabled=\"true\" value=\"".__('Create')."\"> "; | |
334 | ||
335 | print "<input class=\"button\" | |
336 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
337 | value=\"".__('Cancel')."\">"; | |
338 | ||
339 | print "</div>"; | |
340 | ||
341 | // print "</td></tr></table>"; | |
342 | ||
343 | return; | |
344 | } | |
345 | ||
346 | if ($id == "feedUpdateErrors") { | |
347 | ||
348 | print "<div id=\"infoBoxTitle\">".__('Update Errors')."</div>"; | |
349 | print "<div class=\"infoBoxContents\">"; | |
350 | ||
351 | print __("These feeds have not been updated because of errors:"); | |
352 | ||
353 | $result = db_query($link, "SELECT id,title,feed_url,last_error | |
354 | FROM ttrss_feeds WHERE last_error != '' AND owner_uid = ".$_SESSION["uid"]); | |
355 | ||
356 | print "<ul class='feedErrorsList'>"; | |
357 | ||
358 | while ($line = db_fetch_assoc($result)) { | |
359 | print "<li><b>" . $line["title"] . "</b> (" . $line["feed_url"] . "): " . | |
360 | "<em>" . $line["last_error"] . "</em>"; | |
361 | } | |
362 | ||
363 | print "</ul>"; | |
364 | ||
365 | print "<div align='center'>"; | |
366 | ||
367 | print "<input class=\"button\" | |
368 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
369 | value=\"".__('Close')."\">"; | |
370 | ||
371 | print "</div>"; | |
372 | ||
373 | return; | |
374 | } | |
375 | ||
376 | if ($id == "editArticleTags") { | |
377 | ||
378 | print "<div id=\"infoBoxTitle\">".__('Edit Tags')."</div>"; | |
379 | print "<div class=\"infoBoxContents\">"; | |
380 | ||
381 | print "<form id=\"tag_edit_form\" onsubmit='return false'>"; | |
382 | ||
383 | print __("Tags for this article (separated by commas):")."<br>"; | |
384 | ||
385 | $tags = get_article_tags($link, $param); | |
386 | ||
387 | $tags_str = join(", ", $tags); | |
388 | ||
389 | print "<table width='100%'>"; | |
390 | ||
391 | print "<tr><td colspan='2'><input type=\"hidden\" name=\"id\" value=\"$param\"></td></tr>"; | |
392 | ||
393 | print "<tr><td colspan='2'><textarea rows='4' class='iedit' id='tags_str' | |
394 | name='tags_str'>$tags_str</textarea> | |
395 | <div class=\"autocomplete\" id=\"tags_choices\" | |
396 | style=\"display:none\"></div> | |
397 | </td></tr>"; | |
398 | ||
399 | /* print "<tr><td>".__('Add existing tag:')."</td>"; | |
400 | ||
401 | $result = db_query($link, "SELECT DISTINCT tag_name FROM ttrss_tags | |
402 | WHERE owner_uid = '".$_SESSION["uid"]."' ORDER BY tag_name"); | |
403 | ||
404 | $found_tags = array(); | |
405 | ||
406 | array_push($found_tags, ''); | |
407 | ||
408 | while ($line = db_fetch_assoc($result)) { | |
409 | array_push($found_tags, truncate_string($line["tag_name"], 20)); | |
410 | } | |
411 | ||
412 | print "<td align='right'>"; | |
413 | ||
414 | print_select("found_tags", '', $found_tags, "onchange=\"javascript:editTagsInsert()\""); | |
415 | ||
416 | print "</td>"; | |
417 | ||
418 | print "</tr>"; */ | |
419 | ||
420 | print "</table>"; | |
421 | ||
422 | print "</form>"; | |
423 | ||
424 | print "<div align='right'>"; | |
425 | ||
426 | print "<input class=\"button\" | |
427 | type=\"submit\" onclick=\"return editTagsSave()\" | |
428 | value=\"".__('Save')."\"> "; | |
429 | ||
430 | print "<input class=\"button\" | |
431 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
432 | value=\"".__('Cancel')."\">"; | |
433 | ||
434 | ||
435 | print "</div>"; | |
436 | ||
437 | return; | |
438 | } | |
439 | ||
440 | if ($id == "printTagCloud") { | |
441 | print "<div id=\"infoBoxTitle\">".__('Tag cloud')."</div>"; | |
442 | print "<div class=\"infoBoxContents\">"; | |
443 | ||
444 | print __("Showing most popular tags ")." (<a | |
445 | href='javascript:toggleTags(true)'>".__('browse more')."</a>):<br/>"; | |
446 | ||
447 | print "<div class=\"tagCloudContainer\">"; | |
448 | ||
449 | printTagCloud($link); | |
450 | ||
451 | print "</div>"; | |
452 | ||
453 | print "<div align='center'>"; | |
454 | print "<input class=\"button\" | |
455 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
456 | value=\"".__('Close this window')."\">"; | |
457 | print "</div>"; | |
458 | ||
459 | print "</div>"; | |
460 | ||
461 | return; | |
462 | } | |
463 | ||
464 | /* if ($id == "offlineDownload") { | |
465 | print "<div id=\"infoBoxTitle\">".__('Download articles')."</div>"; | |
466 | print "<div class=\"infoBoxContents\">"; | |
467 | ||
468 | print "<form name='download_ops_form' id='download_ops_form'>"; | |
469 | ||
470 | print "<div class=\"dlgSec\">".__("Download")."</div>"; | |
471 | ||
472 | print "<div class=\"dlgSecCont\">"; | |
473 | ||
474 | $amount = array( | |
475 | 50 => 50, | |
476 | 100 => 100, | |
477 | 250 => 250, | |
478 | 500 => 500); | |
479 | ||
480 | print_select_hash("amount", 50, $amount); | |
481 | ||
482 | print " " . __("latest articles for offline reading."); | |
483 | ||
484 | print "<br/>"; | |
485 | ||
486 | print "<input checked='yes' type='checkbox' name='unread_only' id='unread_only'>"; | |
487 | print "<label for='unread_only'>".__('Only include unread articles')."</label>"; | |
488 | ||
489 | print "</div>"; | |
490 | ||
491 | print "</form>"; | |
492 | ||
493 | print "<div class=\"dlgButtons\"> | |
494 | <input class=\"button\" | |
495 | type=\"submit\" onclick=\"return initiate_offline_download(0, this)\" value=\"".__('Download')."\"> | |
496 | <input class=\"button\" | |
497 | type=\"submit\" onclick=\"return closeInfoBox()\" | |
498 | value=\"".__('Cancel')."\"></div>"; | |
499 | ||
500 | print "</div>"; | |
501 | ||
502 | return; | |
503 | } */ | |
504 | ||
505 | ||
506 | print "<div id='infoBoxTitle'>Internal Error</div> | |
507 | <div id='infoBoxContents'> | |
508 | <p>Unknown dialog <b>$id</b></p> | |
509 | </div></div>"; | |
510 | ||
511 | } | |
512 | ?> |