Merge remote-tracking branch 'upstream/master'
commit
96f19f11d7
Binary file not shown.
After Width: | Height: | Size: 5.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 386 B After Width: | Height: | Size: 772 B |
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
@ -0,0 +1,13 @@
|
||||
div.cdmContentInner iframe.embeddedContent {
|
||||
overflow : hidden;
|
||||
width : 100%;
|
||||
height : 600px;
|
||||
border-width : 0px;
|
||||
}
|
||||
|
||||
div.postContent iframe.embeddedContent {
|
||||
overflow : hidden;
|
||||
width : 100%;
|
||||
height : 100%;
|
||||
border-width : 0px;
|
||||
}
|
@ -0,0 +1,69 @@
|
||||
function embedOriginalArticle(id) {
|
||||
try {
|
||||
var hasSandbox = "sandbox" in document.createElement("iframe");
|
||||
|
||||
if (!hasSandbox) {
|
||||
alert(__("Sorry, your browser does not support sandboxed iframes."));
|
||||
return;
|
||||
}
|
||||
|
||||
var query = "op=pluginhandler&plugin=embed_original&method=getUrl&id=" +
|
||||
param_escape(id);
|
||||
|
||||
var c = false;
|
||||
|
||||
if (isCdmMode()) {
|
||||
c = $$("div#RROW-" + id + " div[class=cdmContentInner]")[0];
|
||||
} else if (id == getActiveArticleId()) {
|
||||
c = $$("div[class=postContent]")[0];
|
||||
}
|
||||
|
||||
if (c) {
|
||||
var iframe = c.getElementsByClassName("embeddedContent")[0];
|
||||
|
||||
if (iframe) {
|
||||
Element.show(c.firstChild);
|
||||
c.removeChild(iframe);
|
||||
|
||||
if (isCdmMode()) {
|
||||
cdmScrollToArticleId(id, true);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
new Ajax.Request("backend.php", {
|
||||
parameters: query,
|
||||
onComplete: function(transport) {
|
||||
var ti = JSON.parse(transport.responseText);
|
||||
|
||||
if (ti) {
|
||||
|
||||
var iframe = new Element("iframe", {
|
||||
class: "embeddedContent",
|
||||
src: ti.url,
|
||||
sandbox: 'allow-scripts',
|
||||
});
|
||||
|
||||
if (c) {
|
||||
Element.hide(c.firstChild);
|
||||
|
||||
if (c.firstChild.nextSibling)
|
||||
c.insertBefore(iframe, c.firstChild.nextSibling);
|
||||
else
|
||||
c.appendChild(iframe);
|
||||
|
||||
if (isCdmMode()) {
|
||||
cdmScrollToArticleId(id, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} });
|
||||
|
||||
|
||||
} catch (e) {
|
||||
exception_error("embedOriginalArticle", e);
|
||||
}
|
||||
}
|
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
class Embed_Original extends Plugin {
|
||||
private $link;
|
||||
private $host;
|
||||
|
||||
function init($host) {
|
||||
$this->link = $host->get_link();
|
||||
$this->host = $host;
|
||||
|
||||
$host->add_hook($host::HOOK_ARTICLE_BUTTON, $this);
|
||||
}
|
||||
|
||||
function about() {
|
||||
return array(1.0,
|
||||
"Try to display original article content inside tt-rss",
|
||||
"fox");
|
||||
}
|
||||
|
||||
function get_js() {
|
||||
return file_get_contents(dirname(__FILE__) . "/init.js");
|
||||
}
|
||||
|
||||
function get_css() {
|
||||
return file_get_contents(dirname(__FILE__) . "/init.css");
|
||||
}
|
||||
|
||||
function hook_article_button($line) {
|
||||
$id = $line["id"];
|
||||
|
||||
$rv = "<img src=\"plugins/embed_original/button.png\"
|
||||
class='tagsPic' style=\"cursor : pointer\"
|
||||
onclick=\"embedOriginalArticle($id)\"
|
||||
title='".__('Toggle embed original')."'>";
|
||||
|
||||
return $rv;
|
||||
}
|
||||
|
||||
function getUrl() {
|
||||
$id = db_escape_string($_REQUEST['id']);
|
||||
|
||||
$result = db_query($this->link, "SELECT link
|
||||
FROM ttrss_entries, ttrss_user_entries
|
||||
WHERE id = '$id' AND ref_id = id AND owner_uid = " .$_SESSION['uid']);
|
||||
|
||||
$url = "";
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
$url = db_fetch_result($result, 0, "link");
|
||||
|
||||
}
|
||||
|
||||
print json_encode(array("url" => $url, "id" => $id));
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
@ -1,73 +0,0 @@
|
||||
/* fix dijit */
|
||||
:focus {
|
||||
outline: none;
|
||||
}
|
||||
input[type="search"] {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
.claro .dijitToolbar .dijitButton .dijitButtonNode,
|
||||
.claro .dijitToolbar .dijitDropDownButton .dijitButtonNode,
|
||||
.claro .dijitToolbar .dijitComboButton .dijitButtonNode,
|
||||
.claro .dijitToolbar .dijitToggleButton .dijitButtonNode,
|
||||
.claro .dijitToolbar .dijitComboBox .dijitButtonNode {
|
||||
-moz-transition: background-color, border-color, color;
|
||||
-webkit-transition-property: background-color, border-color, color;
|
||||
transition: background-color, border-color, color;
|
||||
}
|
||||
|
||||
|
||||
/* some style */
|
||||
body#ttrssMain,
|
||||
a,
|
||||
.titleWrap .title {
|
||||
color: #444;
|
||||
}
|
||||
a:hover,
|
||||
.Unread .titleWrap .title,
|
||||
.Selected .titleWrap .title,
|
||||
html div.cdmContent a {
|
||||
color: #15c;
|
||||
}
|
||||
#feeds-holder,
|
||||
#content-wrap,
|
||||
#headlines-frame {
|
||||
border: none;
|
||||
}
|
||||
#ttrssMain #headlines-toolbar,
|
||||
#ttrssMain .dijitToolbar,
|
||||
#ttrssMain .cdmHeader {
|
||||
background: #fff;
|
||||
border-color: transparent;
|
||||
}
|
||||
#ttrssMain #headlines-toolbar {
|
||||
border-color: #ebebeb;
|
||||
}
|
||||
#ttrssMain .cdm {
|
||||
margin: 5px 25px 10px 5px;
|
||||
border: 1px solid #ddd !important;
|
||||
box-shadow: 0 0 4px rgba(0,0,0,.1);
|
||||
background: #fff !important;
|
||||
}
|
||||
#ttrssMain .cdm.Selected {
|
||||
border-left-color: #4d90f0 !important;
|
||||
background: #fff !important;
|
||||
}
|
||||
#ttrssMain .cdmFeedTitle {
|
||||
border-color: #ebebeb;
|
||||
background: #fff;
|
||||
font-size: 1.2em;
|
||||
font-weight: bold;
|
||||
}
|
||||
#headlines-frame .cdmFooter {
|
||||
border-top: 1px solid #ebebeb;
|
||||
background: #fafafa;
|
||||
}
|
||||
|
||||
.titleWrap .title {
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
div.cdmHeader span.hlFeed {
|
||||
padding-top: .5em;
|
||||
}
|
||||
|
@ -1,27 +0,0 @@
|
||||
<?php
|
||||
class GoogleReaderTheme extends Plugin {
|
||||
|
||||
private $link;
|
||||
private $host;
|
||||
|
||||
function about() {
|
||||
return array(1.0,
|
||||
"Make tt-rss look similar to Google Reader",
|
||||
"levito");
|
||||
}
|
||||
|
||||
function init($host) {
|
||||
$this->link = $host->get_link();
|
||||
$this->host = $host;
|
||||
|
||||
if ($_SESSION["uid"]) {
|
||||
// force-enable combined mode
|
||||
set_pref($this->link, "COMBINED_DISPLAY_MODE", true, $_SESSION["uid"]);
|
||||
}
|
||||
}
|
||||
|
||||
function get_css() {
|
||||
return file_get_contents(dirname(__FILE__) . "/init.css");
|
||||
}
|
||||
}
|
||||
?>
|
Loading…
Reference in New Issue