summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2008-09-05 08:36:57 +0100
committerAndrew Dolgov <[email protected]>2008-09-05 08:36:57 +0100
commiteedfb635ddde041201c6b5cd683c60cd6ba2ad12 (patch)
treeae9df70c2a9f1d5fea0cf35e785509cdec5e9378
parentf200179d15e29f063fd0107b3b4496964e9e95ee (diff)
add function to open article summary in a popup window
-rw-r--r--backend.php2
-rw-r--r--functions.php55
-rw-r--r--images/art-zoom.pngbin0 -> 229 bytes
-rw-r--r--viewfeed.js11
4 files changed, 60 insertions, 8 deletions
diff --git a/backend.php b/backend.php
index 116b04b54..a632fafad 100644
--- a/backend.php
+++ b/backend.php
@@ -227,6 +227,8 @@
if ($mode == "") {
outputArticleXML($link, $id, $feed_id);
+ } else if ($mode == "zoom") {
+ outputArticleXML($link, $id, $feed_id, true, true);
} else {
catchupArticleById($link, $id, 0);
}
diff --git a/functions.php b/functions.php
index 0e34af34e..701d3ec57 100644
--- a/functions.php
+++ b/functions.php
@@ -4533,7 +4533,8 @@
return vsprintf(__(array_shift($args)), $args);
}
- function outputArticleXML($link, $id, $feed_id, $mark_as_read = true) {
+ function outputArticleXML($link, $id, $feed_id, $mark_as_read = true,
+ $zoom_mode = false) {
/* we can figure out feed_id from article id anyway, why do we
* pass feed_id here? */
@@ -4543,7 +4544,7 @@
$feed_id = db_fetch_result($result, 0, "feed_id");
- print "<article id='$id'><![CDATA[";
+ if (!$zoom_mode) { print "<article id='$id'><![CDATA["; };
$result = db_query($link, "SELECT rtl_content FROM ttrss_feeds
WHERE id = '$feed_id' AND owner_uid = " . $_SESSION["uid"]);
@@ -4614,6 +4615,15 @@
}
}
+ if ($zoom_mode) {
+ header("Content-Type: text/html");
+ print "<html><head>
+ <title>Tiny Tiny RSS - ".$line["title"]."</title>
+ <link rel=\"stylesheet\" type=\"text/css\" href=\"tt-rss.css\">
+ </head><body>";
+ }
+
+
print "<div class=\"postReply\">";
print "<div class=\"postHeader\" onmouseover=\"enable_resize(true)\"
@@ -4644,6 +4654,7 @@
$tags = get_article_tags($link, $id);
$tags_str = "";
+ $tags_nolinks_str = "";
$f_tags_str = "";
$num_tags = 0;
@@ -4662,14 +4673,17 @@
if ($num_tags == $tag_limit) {
$tags_str .= "&hellip;";
+ $tags_nolinks_str .= "&hellip;";
} else if ($num_tags < $tag_limit) {
$tags_str .= $tag_str;
+ $tags_nolinks_str .= "$tag, ";
}
$f_tags_str .= $tag_str;
}
$tags_str = preg_replace("/, $/", "", $tags_str);
+ $tags_nolinks_str = preg_replace("/, $/", "", $tags_nolinks_str);
$f_tags_str = preg_replace("/, $/", "", $f_tags_str);
$all_tags_div = "<span class='cdmAllTagsCtr'>&hellip;<div class='cdmAllTags'>All Tags: $f_tags_str</div></span>";
@@ -4678,13 +4692,24 @@
if (!$entry_comments) $entry_comments = "&nbsp;"; # placeholder
if (!$tags_str) $tags_str = '<span class="tagList">'.__('no tags').'</span>';
+ if (!$tags_nolinks_str) $tags_nolinks_str = '<span class="tagList">'.__('no tags').'</span>';
print "<div style='float : right'>
- <img src='images/tag.png' class='tagsPic' alt='Tags' title='Tags'>
- $tags_str
- <a title=\"Edit tags for this article\"
- href=\"javascript:editArticleTags($id, $feed_id)\">(+)</a></div>
- <div clear='both'>$entry_comments</div>";
+ <img src='images/tag.png' class='tagsPic' alt='Tags' title='Tags'>";
+
+ if (!$zoom_mode) {
+ print "$tags_str
+ <a title=\"".__('Edit tags for this article')."\"
+ href=\"javascript:editArticleTags($id, $feed_id)\">(+)</a>
+ <img src=\"images/art-zoom.png\" class='tagsPic'
+ style=\"cursor : pointer\"
+ onclick=\"zoomToArticle($id)\"
+ alt='Zoom' title='".__('Show article summary in new window')."'>";
+ } else {
+ print "$tags_nolinks_str";
+ }
+ print "</div>";
+ print "<div clear='both'>$entry_comments</div>";
print "</div>";
@@ -4750,7 +4775,16 @@
}
- print "]]></article>";
+ if (!$zoom_mode) {
+ print "]]></article>";
+ } else {
+ print "
+ <div style=\"text-align : center\">
+ <input type=\"submit\" onclick=\"return window.close()\"
+ value=\"".__("Close this window")."\"></div>";
+ print "</body></html>";
+
+ }
}
@@ -5258,6 +5292,11 @@
print "</span><span class='s1'>$marked_pic</span> ";
print "<span class='s1'>$published_pic</span> ";
+ print "<span class='s1'><img src=\"images/art-zoom.png\" class='tagsPic'
+ onclick=\"zoomToArticle($id)\"
+ style=\"cursor : pointer\"
+ alt='Zoom'
+ title='".__('Show article summary in new window')."'></span>";
$tags = get_article_tags($link, $id);
diff --git a/images/art-zoom.png b/images/art-zoom.png
new file mode 100644
index 000000000..5f7c80955
--- /dev/null
+++ b/images/art-zoom.png
Binary files differ
diff --git a/viewfeed.js b/viewfeed.js
index e14911a2c..5813f4135 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -1892,3 +1892,14 @@ function invertHeadlineSelection() {
function getArticleUnderPointer() {
return post_under_pointer;
}
+
+function zoomToArticle(id) {
+ try {
+ var w = window.open("backend.php?op=view&mode=zoom&id=" + param_escape(id),
+ "ttrss_zoom_" + id,
+ "status=0,toolbar=0,location=0,width=450,height=300,scrollbars=1,menubar=0");
+
+ } catch (e) {
+ exception_error("zoomToArticle", e);
+ }
+}