]>
git.wh0rd.org - tt-rss.git/blob - plugins/owncloud/init.php
48377e9d97cfa48525a64e5b29eecb9996fa886f
2 require_once "config.php";
4 class OwnCloud
extends Plugin
{
10 "Adds support for OwnCloud ReadLater",
14 function init($host) {
15 $this->link
= $host->get_link();
18 $host->add_hook($host::HOOK_ARTICLE_BUTTON
, $this);
19 $host->add_hook($host::HOOK_PREFS_TAB
, $this);
23 $owncloud_url = db_escape_string($_POST["owncloud_url"]);
24 $this->host
->set($this, "owncloud", $owncloud_url);
25 echo "Value set to $owncloud_url";
29 return file_get_contents(dirname(__FILE__
) . "/owncloud.js");
32 function hook_prefs_tab($args) {
33 if ($args != "prefPrefs") return;
35 print "<div dojoType=\"dijit.layout.AccordionPane\" title=\"".__("Owncloud")."\">";
39 $value = $this->host
->get($this, "owncloud");
40 print "<form dojoType=\"dijit.form.Form\">";
42 print "<script type=\"dojo/method\" event=\"onSubmit\" args=\"evt\">
44 if (this.validate()) {
45 console.log(dojo.objectToQuery(this.getValues()));
46 new Ajax.Request('backend.php', {
47 parameters: dojo.objectToQuery(this.getValues()),
48 onComplete: function(transport) {
49 notify_info(transport.responseText);
55 print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"op\" value=\"pluginhandler\">";
56 print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"method\" value=\"save\">";
57 print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"plugin\" value=\"owncloud\">";
58 print "<table width=\"100%\" class=\"prefPrefsList\">";
59 print "<tr><td width=\"40%\">".__("Owncloud url")."</td>";
60 print "<td class=\"prefValue\"><input dojoType=\"dijit.form.ValidationTextBox\" required=\"1\" name=\"owncloud_url\" regExp='^(http|https)://.*' value=\"$value\"></td></tr>";
62 print "<p><button dojoType=\"dijit.form.Button\" type=\"submit\">".__("Save")."</button>";
70 function hook_article_button($line) {
71 return "<img src=\"plugins/owncloud/owncloud.png\"
72 style=\"cursor : pointer\" style=\"cursor : pointer\"
73 onclick=\"ownArticle(".$line["id"].")\"
74 class='tagsPic' title='".__('Bookmark on OwnCloud ')."'>";
77 function getOwnCloud() {
78 $id = db_escape_string($_REQUEST['id']);
80 $result = db_query($this->link
, "SELECT title, link
81 FROM ttrss_entries, ttrss_user_entries
82 WHERE id = '$id' AND ref_id = id AND owner_uid = " .$_SESSION['uid']);
84 if (db_num_rows($result) != 0) {
85 $title = truncate_string(strip_tags(db_fetch_result($result, 0, 'title')),
87 $article_link = db_fetch_result($result, 0, 'link');
90 $own_url = $this->host
->get($this, "owncloud");
92 print json_encode(array("title" => $title, "link" => $article_link,
93 "id" => $id, "ownurl" => $own_url));