]>
git.wh0rd.org - tt-rss.git/blob - modules/popup-dialog.php
2 function module_popup_dialog ( $link ) {
4 $param = db_escape_string ( $_REQUEST [ "param" ]);
6 print "<dlg id= \" $id\" >" ;
8 if ( $id == "importOpml" ) {
9 print "<title>" . __ ( 'OPML Import' ). "</title>" ;
10 print "<content><![CDATA[" ;
12 print "<div class= \" prefFeedCatHolder \" >" ;
14 $owner_uid = $_SESSION [ "uid" ];
16 db_query ( $link , "BEGIN" );
18 /* create Imported feeds category just in case */
20 $result = db_query ( $link , "SELECT id FROM
21 ttrss_feed_categories WHERE title = 'Imported feeds' AND
22 owner_uid = ' $owner_uid ' LIMIT 1" );
24 if ( db_num_rows ( $result ) == 0 ) {
25 db_query ( $link , "INSERT INTO ttrss_feed_categories
27 VALUES ('Imported feeds', ' $owner_uid ')" );
30 db_query ( $link , "COMMIT" );
32 /* Handle OPML import by DOMXML/DOMDocument */
34 if ( function_exists ( 'domxml_open_file' )) {
35 print "<ul class='nomarks'>" ;
36 print "<li>" . __ ( "Importing using DOMXML." ). "</li>" ;
37 require_once "opml_domxml.php" ;
38 opml_import_domxml ( $link , $owner_uid );
40 } else if ( PHP_VERSION
>= 5 ) {
41 print "<ul class='nomarks'>" ;
42 print "<li>" . __ ( "Importing using DOMDocument." ). "</li>" ;
43 require_once "opml_domdoc.php" ;
44 opml_import_domdoc ( $link , $owner_uid );
47 print_error ( __ ( "DOMXML extension is not found. It is required for PHP versions below 5." ));
52 print "<div align='center'>" ;
54 print "<button onclick= \" return opmlImportDone() \" >" .
55 __ ( 'Close this window' ). "</button>" ;
59 print "<script type= \" text/javascript \" >" ;
60 print "parent.opmlImportHandler(this)" ;
64 print "]]></content>" ;
69 if ( $id == "editPrefProfiles" ) {
71 print "<title>" . __ ( 'Settings Profiles' ). "</title>" ;
72 print "<content><![CDATA[" ;
74 print "<div><input id= \" fadd_profile \"
75 onkeypress= \" return filterCR(event, addPrefProfile) \"
77 <button onclick= \" javascript:addPrefProfile() \" >" .
78 __ ( 'Create profile' ). "</button></div>" ;
82 $result = db_query ( $link , "SELECT title,id FROM ttrss_settings_profiles
83 WHERE owner_uid = " . $_SESSION [ "uid" ]. " ORDER BY title" );
86 <a href= \" # \" onclick= \" selectTableRows('prefFeedCatList', 'all') \" >" . __ ( 'All' ). "</a>,
87 <a href= \" # \" onclick= \" selectTableRows('prefFeedCatList', 'none') \" >" . __ ( 'None' ). "</a>" ;
89 print "<div class= \" prefFeedCatHolder \" >" ;
91 print "<form id= \" profile_edit_form \" onsubmit= \" return false \" >" ;
93 print "<table width= \" 100% \" class= \" prefFeedCatList \"
94 cellspacing= \" 0 \" id= \" prefFeedCatList \" >" ;
96 print "<tr class= \" odd \" id= \" FCATR-0 \" >" ;
98 print "<td width='5%' align='center'><input
99 onclick='toggleSelectRow(this);'
100 type= \" checkbox \" id= \" FCCHK-0 \" ></td>" ;
102 if (! $_SESSION [ "profile" ]) {
103 $is_active = __ ( "(active)" );
108 print "<td><span id= \" FCATT-0 \" >" .
109 __ ( "Default profile" ) . " $is_active </span></td>" ;
115 while ( $line = db_fetch_assoc ( $result )) {
117 $class = ( $lnum %
2 ) ?
"even" : "odd" ;
119 $cat_id = $line [ "id" ];
120 $this_row_id = "id= \" FCATR- $cat_id\" " ;
122 print "<tr class= \" $class\" $this_row_id >" ;
124 $edit_title = htmlspecialchars ( $line [ "title" ]);
126 print "<td width='5%' align='center'><input
127 onclick='toggleSelectRow(this);'
128 type= \" checkbox \" id= \" FCCHK- $cat_id\" ></td>" ;
130 if ( $_SESSION [ "profile" ] == $line [ "id" ]) {
131 $is_active = __ ( "(active)" );
136 print "<td><span id= \" FCATT- $cat_id\" >" .
137 $edit_title . "</span> $is_active </td>" ;
148 print "<div class='dlgButtons'>
149 <div style='float : left'>
150 <button onclick= \" return removeSelectedPrefProfiles() \" >" .
151 __ ( 'Remove' ). "</button>
152 <button onclick= \" return activatePrefProfile() \" >" .
153 __ ( 'Activate' ). "</button>
156 print "<button onclick= \" return closeInfoBox() \" >" .
157 __ ( 'Close this window' ). "</button>" ;
160 print "]]></content>" ;
165 if ( $id == "pubOPMLUrl" ) {
167 print "<title>" . __ ( 'Public OPML URL' ). "</title>" ;
168 print "<content><![CDATA[" ;
170 $url_path = opml_publish_url ( $link );
172 print __ ( "Your Public OPML URL is:" );
174 print "<div class= \" tagCloudContainer \" >" ;
175 print "<a id='pub_opml_url' href=' $url_path ' target='_blank'> $url_path </a>" ;
178 print "<div align='center'>" ;
180 print "<button onclick= \" return opmlRegenKey() \" >" .
181 __ ( 'Generate new URL' ). "</button> " ;
183 print "<button onclick= \" return closeInfoBox() \" >" .
184 __ ( 'Close this window' ). "</button>" ;
187 print "]]></content>" ;
192 if ( $id == "explainError" ) {
194 print "<title>" . __ ( 'Notice' ). "</title>" ;
195 print "<content><![CDATA[" ;
197 print "<div class= \" errorExplained \" >" ;
200 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." );
202 $stamp = ( int ) file_get_contents ( LOCK_DIRECTORY
. "/update_daemon.stamp" );
204 print "<p>" . __ ( "Last update:" ) . " " . date ( "Y.m.d, G:i" , $stamp );
209 $msg = check_for_update ( $link );
212 print __ ( "You are running the latest version of Tiny Tiny RSS. The fact that you are seeing this dialog is probably a bug." );
220 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." );
222 $stamp = ( int ) file_get_contents ( LOCK_DIRECTORY
. "/update_daemon.stamp" );
224 print "<p>" . __ ( "Last update:" ) . " " . date ( "Y.m.d, G:i" , $stamp );
230 print "<div align='center'>" ;
232 print "<button onclick= \" return closeInfoBox() \" " .
233 __ ( 'Close this window' ). "</button>" ;
236 print "]]></content>" ;
241 if ( $id == "quickAddFeed" ) {
243 print "<title>" . __ ( 'Subscribe to Feed' ). "</title>" ;
244 print "<content><![CDATA[" ;
246 print "<form id='feed_add_form' onsubmit='return false'>" ;
248 print "<input type= \" hidden \" name= \" op \" value= \" rpc \" >" ;
249 print "<input type= \" hidden \" name= \" subop \" value= \" addfeed \" >" ;
250 //print "<input type=\"hidden\" name=\"from\" value=\"tt-rss\">";
252 print "<div class= \" dlgSec \" >" . __ ( "Feed" ). "</div>" ;
253 print "<div class= \" dlgSecCont \" >" ;
255 print __ ( "URL:" ) . " " ;
257 print "<input size= \" 40 \"
258 onkeypress= \" return filterCR(event, subscribeToFeed) \"
259 name= \" feed \" id= \" feed_url \" >" ;
263 if ( get_pref ( $link , 'ENABLE_FEED_CATS' )) {
264 print __ ( 'Place in category:' ) . " " ;
265 print_feed_cat_select ( $link , "cat" );
270 print '<div id="fadd_feeds_container" style="display:none">
272 <div class="dlgSec">' . __ ( 'Available feeds' ) . '</div>
273 <div class="dlgSecCont">'
275 . ' <select name="feed" id="faad_feeds_container_select" size="3"></select>'
278 print "<div id='fadd_login_container' style='display:none'>
280 <div class= \" dlgSec \" >" . __ ( "Authentication" ). "</div>
281 <div class= \" dlgSecCont \" >" .
283 __ ( 'Login:' ) . " <input name='login' size= \" 20 \"
284 onkeypress= \" return filterCR(event, subscribeToFeed) \" > " .
285 __ ( 'Password:' ) . "<input type='password'
286 name='pass' size= \" 20 \"
287 onkeypress= \" return filterCR(event, subscribeToFeed) \" >
291 print "<div style= \" clear : both \" >
292 <input type= \" checkbox \" id= \" fadd_login_check \"
293 onclick='checkboxToggleElement(this, \" fadd_login_container \" )'>
294 <label for= \" fadd_login_check \" >" .
295 __ ( 'This feed requires authentication.' ). "</div>" ;
299 print "<div class= \" dlgButtons \" >
300 <button class= \" button \" id= \" fadd_submit_btn \"
301 onclick= \" return subscribeToFeed() \" >" . __ ( 'Subscribe' ). "</button>
302 <button onclick= \" return displayDlg('feedBrowser') \" >" . __ ( 'More feeds' ). "</button>
303 <button onclick= \" return closeInfoBox() \" >" . __ ( 'Cancel' ). "</button></div>" ;
305 print "]]></content>" ;
310 if ( $id == "feedBrowser" ) {
312 print "<title>" . __ ( 'Feed Browser' ). "</title>" ;
314 print "<content><![CDATA[" ;
316 $browser_search = db_escape_string ( $_REQUEST [ "search" ]);
318 print "<form onsubmit='return false;' display='inline'
319 name='feed_browser' id='feed_browser'>" ;
321 print "<input type= \" hidden \" name= \" op \" value= \" rpc \" >" ;
322 print "<input type= \" hidden \" name= \" subop \" value= \" updateFeedBrowser \" >" ;
324 print "<div dojoType= \" dijit.Toolbar \" >
325 <div style='float : right'>
326 <img style='display : none'
327 id='feed_browser_spinner' src='" .
328 theme_image ( $link , 'images/indicator_white.gif' ). "'>
329 <input name= \" search \" size= \" 20 \" type= \" search \"
330 onchange= \" javascript:updateFeedBrowser() \" value= \" $browser_search\" >
331 <button onclick= \" javascript:updateFeedBrowser() \" >" . __ ( 'Search' ). "</button>
334 print " <select name= \" mode \" onchange= \" updateFeedBrowser() \" >
335 <option value='1'>" . __ ( 'Popular feeds' ) . "</option>
336 <option value='2'>" . __ ( 'Feed archive' ) . "</option>
341 print " <select name= \" limit \" onchange='updateFeedBrowser()'>" ;
343 foreach ( array ( 25 , 50 , 100 , 200 ) as $l ) {
344 $issel = ( $l == $limit ) ?
"selected" : "" ;
345 print "<option $issel > $l </option>" ;
352 $owner_uid = $_SESSION [ "uid" ];
354 print "<ul class='browseFeedList' id='browseFeedList'>" ;
355 print_feed_browser ( $link , $search , 25 );
358 print "<div align='center'>
359 <button onclick= \" feedBrowserSubscribe() \" >" . __ ( 'Subscribe' ). "</button>
360 <button style='display : none' id='feed_archive_remove' onclick= \" feedArchiveRemove() \" >" . __ ( 'Remove' ). "</button>
361 <button onclick= \" closeInfoBox() \" >" . __ ( 'Cancel' ). "</button></div>" ;
363 print "]]></content>" ;
367 if ( $id == "search" ) {
369 print "<title>" . __ ( 'Search' ). "</title>" ;
370 print "<content><![CDATA[" ;
372 print "<form id='search_form' onsubmit='return false'>" ;
374 #$active_feed_id = db_escape_string($_REQUEST["param"]);
376 $params = explode ( ":" , db_escape_string ( $_REQUEST [ "param" ]), 2 );
378 $active_feed_id = sprintf ( " %d " , $params [ 0 ]);
379 $is_cat = ( bool ) $params [ 1 ];
381 print "<div class= \" dlgSec \" >" . __ ( 'Look for' ). "</div>" ;
383 print "<div class= \" dlgSecCont \" >" ;
385 if (! SPHINX_ENABLE
) {
387 print "<input onkeypress= \" return filterCR(event, search) \"
388 name= \" query \" size= \" 20 \" type= \" search \" value=''>" ;
390 print " " . __ ( 'match on' ). " " ;
392 $search_fields = array (
393 "title" => __ ( "Title" ),
394 "content" => __ ( "Content" ),
395 "both" => __ ( "Title or content" ));
397 print_select_hash ( "match_on" , 3 , $search_fields );
399 print "<input onkeypress= \" return filterCR(event, search) \"
400 name= \" query \" size= \" 50 \" type= \" search \" value=''>" ;
404 print "<br/>" . __ ( 'Limit search to:' ). " " ;
406 print "<select name= \" search_mode \" >
407 <option value= \" all_feeds \" >" . __ ( 'All feeds' ). "</option>" ;
409 $feed_title = getFeedTitle ( $link , $active_feed_id );
412 $feed_cat_title = getFeedCatTitle ( $link , $active_feed_id );
414 $feed_cat_title = getCategoryTitle ( $link , $active_feed_id );
417 if ( $active_feed_id && ! $is_cat ) {
418 print "<option selected value= \" this_feed \" > $feed_title </option>" ;
420 print "<option disabled>" . __ ( 'This feed' ). "</option>" ;
424 $cat_preselected = "selected" ;
427 if ( get_pref ( $link , 'ENABLE_FEED_CATS' ) && ( $active_feed_id > 0 ||
$is_cat )) {
428 print "<option $cat_preselected value= \" this_cat \" > $feed_cat_title </option>" ;
430 //print "<option disabled>".__('This category')."</option>";
439 print "<div class= \" dlgButtons \" >
440 <button onclick= \" javascript:search() \" >" . __ ( 'Search' ). "</button>
441 <button onclick= \" javascript:closeInfoBox(true) \" >" . __ ( 'Cancel' ). "</button>
444 print "]]></content>" ;
450 if ( $id == "quickAddFilter" ) {
452 $active_feed_id = db_escape_string ( $_REQUEST [ "param" ]);
454 print "<title>" . __ ( 'Create Filter' ). "</title>" ;
455 print "<content><![CDATA[" ;
457 print "<form id= \" filter_add_form \" onsubmit='return false'>" ;
459 print "<input type= \" hidden \" name= \" op \" value= \" pref-filters \" >" ;
460 print "<input type= \" hidden \" name= \" quiet \" value= \" 1 \" >" ;
461 print "<input type= \" hidden \" name= \" subop \" value= \" add \" >" ;
463 $result = db_query ( $link , "SELECT id,description
464 FROM ttrss_filter_types ORDER BY description" );
466 $filter_types = array ();
468 while ( $line = db_fetch_assoc ( $result )) {
469 //array_push($filter_types, $line["description"]);
470 $filter_types [ $line [ "id" ]] = __ ( $line [ "description" ]);
473 print "<div class= \" dlgSec \" >" . __ ( "Match" ). "</div>" ;
475 print "<div class= \" dlgSecCont \" >" ;
477 print "<span id= \" filter_dlg_date_mod_box \" style= \" display : none \" >" ;
478 print __ ( "Date" ) . " " ;
480 $filter_params = array (
481 "before" => __ ( "before" ),
482 "after" => __ ( "after" ));
484 print_select_hash ( "filter_date_modifier" , "before" , $filter_params );
486 print " </span>" ;
488 print "<input onkeypress= \" return filterCR(event, createFilter) \"
489 name= \" reg_exp \" size= \" 30 \" value= \" $reg_exp\" >" ;
491 print "<span id= \" filter_dlg_date_chk_box \" style= \" display : none \" >" ;
492 print " <button onclick= \" return filterDlgCheckDate() \" >" .
493 __ ( 'Check it' ). "</button>" ;
496 print "<br/> " . __ ( "on field" ) . " " ;
497 print_select_hash ( "filter_type" , 1 , $filter_types ,
498 'onchange="filterDlgCheckType(this)"' );
502 print __ ( "in" ) . " " ;
503 print_feed_select ( $link , "feed_id" , $active_feed_id );
507 print "<div class= \" dlgSec \" >" . __ ( "Perform Action" ). "</div>" ;
509 print "<div class= \" dlgSecCont \" >" ;
511 print "<select name= \" action_id \"
512 onchange= \" filterDlgCheckAction(this) \" >" ;
514 $result = db_query ( $link , "SELECT id,description FROM ttrss_filter_actions
517 while ( $line = db_fetch_assoc ( $result )) {
518 printf ( "<option value=' %d '> %s </option>" , $line [ "id" ], __ ( $line [ "description" ]));
523 print "<span id= \" filter_dlg_param_box \" style= \" display : none \" >" ;
524 print " " . __ ( "with parameters:" ) . " " ;
525 print "<input size= \" 20 \"
526 onkeypress= \" return filterCR(event, createFilter) \"
527 name= \" action_param \" >" ;
529 print_label_select ( $link , "action_param_label" , $action_param );
533 print " " ; // tiny layout hack
537 print "<div class= \" dlgSec \" >" . __ ( "Options" ). "</div>" ;
538 print "<div class= \" dlgSecCont \" >" ;
540 print "<div style= \" line-height : 100% \" >" ;
542 print "<input type= \" checkbox \" name= \" enabled \" id= \" enabled \" checked= \" 1 \" >
543 <label for= \" enabled \" >" . __ ( 'Enabled' ). "</label><br/>" ;
545 print "<input type= \" checkbox \" name= \" inverse \" id= \" inverse \" >
546 <label for= \" inverse \" >" . __ ( 'Inverse match' ). "</label>" ;
553 print "<div class= \" dlgButtons \" >" ;
555 print "<button onclick= \" return createFilter() \" >" .
556 __ ( 'Create' ). "</button> " ;
558 print "<button onclick= \" return closeInfoBox() \" >" . __ ( 'Cancel' ).
561 print "]]></content>" ;
563 // print "</td></tr></table>";
568 if ( $id == "feedUpdateErrors" ) {
570 print "<title>" . __ ( 'Update Errors' ). "</title>" ;
571 print "<content><![CDATA[" ;
573 print __ ( "These feeds have not been updated because of errors:" );
575 $result = db_query ( $link , "SELECT id,title,feed_url,last_error
576 FROM ttrss_feeds WHERE last_error != '' AND owner_uid = " . $_SESSION [ "uid" ]);
578 print "<ul class='feedErrorsList'>" ;
580 while ( $line = db_fetch_assoc ( $result )) {
581 print "<li><b>" . $line [ "title" ] . "</b> (" . $line [ "feed_url" ] . "): " .
582 "<em>" . $line [ "last_error" ] . "</em>" ;
587 print "<div align='center'>" ;
589 print "<button onclick= \" return closeInfoBox() \" >" .
590 __ ( 'Close this window' ). "</button>" ;
592 print "]]></content>" ;
597 if ( $id == "editArticleTags" ) {
599 print "<title>" . __ ( 'Edit Tags' ). "</title>" ;
600 print "<content><![CDATA[" ;
602 print "<form id= \" tag_edit_form \" onsubmit='return false'>" ;
604 print __ ( "Tags for this article (separated by commas):" ). "<br>" ;
606 $tags = get_article_tags ( $link , $param );
608 $tags_str = join ( ", " , $tags );
610 print "<table width='100%'>" ;
612 print "<tr><td colspan='2'><input type= \" hidden \" name= \" id \" value= \" $param\" ></td></tr>" ;
614 print "<tr><td colspan='2'><textarea rows='4' class='iedit' id='tags_str'
615 name='tags_str'> $tags_str </textarea>
616 <div class= \" autocomplete \" id= \" tags_choices \"
617 style= \" display:none \" ></div>
624 print "<div align='right'>" ;
626 print "<button onclick= \" return editTagsSave() \" >" . __ ( 'Save' ). "</button> " ;
627 print "<button onclick= \" return closeInfoBox() \" >" . __ ( 'Cancel' ). "</button>" ;
629 print "]]></content>" ;
634 if ( $id == "printTagCloud" ) {
635 print "<title>" . __ ( 'Tag Cloud' ). "</title>" ;
636 print "<content><![CDATA[" ;
638 # print __("Showing most popular tags ")." (<a
639 # href='javascript:toggleTags(true)'>".__('more tags')."</a>):<br/>";
641 print "<div class= \" tagCloudContainer \" >" ;
643 printTagCloud ( $link );
647 print "<div align='center'>" ;
648 print "<button onclick= \" return closeInfoBox() \" >" .
649 __ ( 'Close this window' ). "</button>" ;
652 print "]]></content>" ;
657 if ( $id == "emailArticle" ) {
659 print "<title>" . __ ( 'Forward article by email' ). "</title>" ;
660 print "<content><![CDATA[" ;
662 print "<form id= \" article_email_form \" onsubmit='return false'>" ;
664 $secretkey = sha1 ( uniqid ( rand (), true ));
666 $_SESSION [ 'email_secretkey' ] = $secretkey ;
668 print "<input type= \" hidden \" name= \" secretkey \" value= \" $secretkey\" >" ;
669 print "<input type= \" hidden \" name= \" op \" value= \" rpc \" >" ;
670 print "<input type= \" hidden \" name= \" subop \" value= \" sendEmail \" >" ;
672 $result = db_query ( $link , "SELECT email, full_name FROM ttrss_users WHERE
673 id = " . $_SESSION [ "uid" ]);
675 $user_email = htmlspecialchars ( db_fetch_result ( $result , 0 , "email" ));
676 $user_name = htmlspecialchars ( db_fetch_result ( $result , 0 , "full_name" ));
678 if (! $user_name ) $user_name = $_SESSION [ 'name' ];
680 $_SESSION [ 'email_replyto' ] = $user_email ;
681 $_SESSION [ 'email_fromname' ] = $user_name ;
683 require_once "lib/MiniTemplator.class.php" ;
685 $tpl = new MiniTemplator
;
686 $tpl_t = new MiniTemplator
;
688 $tpl -> readTemplateFromFile ( "templates/email_article_template.txt" );
690 $tpl -> setVariable ( 'USER_NAME' , $_SESSION [ "name" ]);
691 $tpl -> setVariable ( 'USER_EMAIL' , $user_email );
692 $tpl -> setVariable ( 'TTRSS_HOST' , $_SERVER [ "HTTP_HOST" ]);
694 // $tpl->addBlock('header');
696 $result = db_query ( $link , "SELECT link, content, title
697 FROM ttrss_user_entries, ttrss_entries WHERE id = ref_id AND
698 id IN ( $param ) AND owner_uid = " . $_SESSION [ "uid" ]);
700 if ( db_num_rows ( $result ) > 1 ) {
701 $subject = __ ( "[Forwarded]" ) . " " . __ ( "Multiple articles" );
704 while ( $line = db_fetch_assoc ( $result )) {
707 $subject = __ ( "[Forwarded]" ) . " " . htmlspecialchars ( $line [ "title" ]);
709 $tpl -> setVariable ( 'ARTICLE_TITLE' , strip_tags ( $line [ "title" ]));
710 $tpl -> setVariable ( 'ARTICLE_URL' , strip_tags ( $line [ "link" ]));
712 $tpl -> addBlock ( 'article' );
715 $tpl -> addBlock ( 'email' );
718 $tpl -> generateOutputToString ( $content );
720 print "<table width='100%'><tr><td>" ;
726 print "<input size= \" 40 \" disabled
727 onkeypress= \" return filterCR(event, false) \"
728 value= \" $user_name < $user_email > \" >" ;
730 print "</td></tr><tr><td>" ;
736 print "<input size= \" 40 \"
737 onkeypress= \" return filterCR(event, false) \"
738 name= \" destination \" id= \" destination \" >" ;
740 print "<div class= \" autocomplete \" id= \" destination_choices \"
741 style= \" display:none \" ></div>" ;
743 print "</td></tr><tr><td>" ;
745 print __ ( 'Subject:' );
749 print "<input size= \" 60 \" class= \" iedit \"
750 onkeypress= \" return filterCR(event, false) \"
751 name= \" subject \" value= \" $subject\" id= \" subject \" >" ;
753 print "</td></tr></table>" ;
755 print "<textarea rows='10' class='iedit' style='font-size : small'
756 name='content'> $content </textarea>" ;
760 print "<div class='dlgButtons'>" ;
762 print "<button onclick= \" return emailArticleDo() \" >" . __ ( 'Send e-mail' ). "</button> " ;
763 print "<button onclick= \" return closeInfoBox() \" >" . __ ( 'Cancel' ). "</button>" ;
765 print "]]></content>" ;
770 if ( $id == "generatedFeed" ) {
772 print "<title>" . __ ( 'View as RSS' ). "</title>" ;
773 print "<content><![CDATA[" ;
775 $params = explode ( ":" , $param , 3 );
776 $feed_id = db_escape_string ( $params [ 0 ]);
777 $is_cat = ( bool ) $params [ 1 ];
779 $key = get_feed_access_key ( $link , $feed_id , $is_cat );
781 $url_path = htmlspecialchars ( $params [ 2 ]) . "&key=" . $key ;
783 print __ ( "You can view this feed as RSS using the following URL:" );
785 print "<div class= \" tagCloudContainer \" >" ;
786 print "<a id='gen_feed_url' href=' $url_path ' target='_blank'> $url_path </a>" ;
789 print "<div align='center'>" ;
791 print "<button onclick= \" return genUrlChangeKey(' $feed_id ', ' $is_cat ') \" >" .
792 __ ( 'Generate new URL' ). "</button> " ;
794 print "<button onclick= \" return closeInfoBox() \" >" .
795 __ ( 'Close this window' ). "</button>" ;
798 print "]]></content>" ;