host = $host;
$host->add_hook($host::HOOK_ARTICLE_BUTTON, $this);
$host->add_hook($host::HOOK_PREFS_TAB, $this);
}
function get_js() {
return file_get_contents(dirname(__FILE__) . "/mail.js");
}
function save() {
$addresslist = db_escape_string($_POST["addresslist"]);
$this->host->set($this, "addresslist", $addresslist);
echo __("Mail addresses saved.");
}
function hook_prefs_tab($args) {
if ($args != "prefPrefs") return;
print "
";
print "
" . __("You can set predefined email addressed here (comma-separated list):") . "
";
print "
";
print "
";
}
function hook_article_button($line) {
return "";
}
function emailArticle() {
$param = db_escape_string($_REQUEST['param']);
print_hidden("op", "pluginhandler");
print_hidden("plugin", "mail");
print_hidden("method", "sendEmail");
$result = db_query("SELECT email, full_name FROM ttrss_users WHERE
id = " . $_SESSION["uid"]);
$user_email = htmlspecialchars(db_fetch_result($result, 0, "email"));
$user_name = htmlspecialchars(db_fetch_result($result, 0, "full_name"));
if (!$user_name) $user_name = $_SESSION['name'];
print_hidden("from_email", "$user_email");
print_hidden("from_name", "$user_name");
require_once "lib/MiniTemplator.class.php";
$tpl = new MiniTemplator;
$tpl->readTemplateFromFile("templates/email_article_template.txt");
$tpl->setVariable('USER_NAME', $_SESSION["name"], true);
$tpl->setVariable('USER_EMAIL', $user_email, true);
$tpl->setVariable('TTRSS_HOST', $_SERVER["HTTP_HOST"], true);
$result = db_query("SELECT DISTINCT link, content, title, note
FROM ttrss_user_entries, ttrss_entries WHERE id = ref_id AND
id IN ($param) AND owner_uid = " . $_SESSION["uid"]);
if (db_num_rows($result) > 1) {
$subject = __("[Forwarded]") . " " . __("Multiple articles");
}
while ($line = db_fetch_assoc($result)) {
if (!$subject)
$subject = __("[Forwarded]") . " " . htmlspecialchars($line["title"]);
$tpl->setVariable('ARTICLE_TITLE', strip_tags($line["title"]));
$tnote = strip_tags($line["note"]);
if( $tnote != ''){
$tpl->setVariable('ARTICLE_NOTE', $tnote, true);
$tpl->addBlock('note');
}
$tpl->setVariable('ARTICLE_URL', strip_tags($line["link"]));
$tpl->addBlock('article');
}
$tpl->addBlock('email');
$content = "";
$tpl->generateOutputToString($content);
print "";
print "";
print " ";
print "";
print "
";
//return;
}
function sendEmail() {
require_once 'classes/ttrssmailer.php';
$reply = array();
$mail = new ttrssMailer();
$mail->AddReplyTo(strip_tags($_REQUEST['from_email']),
strip_tags($_REQUEST['from_name']));
//$mail->AddAddress($_REQUEST['destination']);
$addresses = explode(';', $_REQUEST['destination']);
foreach($addresses as $nextaddr)
$mail->AddAddress($nextaddr);
$mail->IsHTML(false);
$mail->Subject = $_REQUEST['subject'];
$mail->Body = $_REQUEST['content'];
$rc = $mail->Send();
if (!$rc) {
$reply['error'] = $mail->ErrorInfo;
} else {
//save_email_address(db_escape_string($destination));
$reply['message'] = "UPDATE_COUNTERS";
}
print json_encode($reply);
}
/* function completeEmails() {
$search = db_escape_string($_REQUEST["search"]);
print "";
foreach ($_SESSION['stored_emails'] as $email) {
if (strpos($email, $search) !== false) {
print "- $email
";
}
}
print "
";
} */
function api_version() {
return 2;
}
}
?>