]> git.wh0rd.org - tt-rss.git/blobdiff - plugins/mail/init.php
remove $link
[tt-rss.git] / plugins / mail / init.php
index 9d92781d70eda70cf30dd204033a5b1071cd4b09..7adf36fe4540121c75f5c2cb3f375185d7d08f3d 100644 (file)
@@ -1,7 +1,6 @@
 <?php
 class Mail extends Plugin {
 
-       private $link;
        private $host;
 
        function about() {
@@ -11,7 +10,6 @@ class Mail extends Plugin {
        }
 
        function init($host) {
-               $this->link = $host->get_link();
                $this->host = $host;
 
                $host->add_hook($host::HOOK_ARTICLE_BUTTON, $this);
@@ -30,18 +28,13 @@ class Mail extends Plugin {
 
        function emailArticle() {
 
-               $param = db_escape_string($_REQUEST['param']);
+               $param = db_escape_string( $_REQUEST['param']);
 
-               $secretkey = sha1(uniqid(rand(), true));
-
-               $_SESSION['email_secretkey'] = $secretkey;
-
-               print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"secretkey\" value=\"$secretkey\">";
                print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"op\" value=\"pluginhandler\">";
                print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"plugin\" value=\"mail\">";
                print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"method\" value=\"sendEmail\">";
 
-               $result = db_query($this->link, "SELECT email, full_name FROM ttrss_users WHERE
+               $result = db_query( "SELECT email, full_name FROM ttrss_users WHERE
                        id = " . $_SESSION["uid"]);
 
                $user_email = htmlspecialchars(db_fetch_result($result, 0, "email"));
@@ -49,8 +42,8 @@ class Mail extends Plugin {
 
                if (!$user_name) $user_name = $_SESSION['name'];
 
-               $_SESSION['email_replyto'] = $user_email;
-               $_SESSION['email_fromname'] = $user_name;
+               print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"from_email\" value=\"$user_email\">";
+               print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"from_name\" value=\"$user_name\">";
 
                require_once "lib/MiniTemplator.class.php";
 
@@ -63,7 +56,7 @@ class Mail extends Plugin {
                $tpl->setVariable('USER_EMAIL', $user_email, true);
                $tpl->setVariable('TTRSS_HOST', $_SERVER["HTTP_HOST"], true);
 
-               $result = db_query($this->link, "SELECT link, content, title
+               $result = db_query( "SELECT link, content, title
                        FROM ttrss_user_entries, ttrss_entries WHERE id = ref_id AND
                        id IN ($param) AND owner_uid = " . $_SESSION["uid"]);
 
@@ -135,48 +128,34 @@ class Mail extends Plugin {
        }
 
        function sendEmail() {
-               $secretkey = $_REQUEST['secretkey'];
-
                require_once 'classes/ttrssmailer.php';
 
                $reply = array();
 
-               if ($_SESSION['email_secretkey'] &&
-               $secretkey == $_SESSION['email_secretkey']) {
-
-                       $_SESSION['email_secretkey'] = '';
+               $mail = new ttrssMailer();
 
-                       $replyto = strip_tags($_SESSION['email_replyto']);
-                       $fromname = strip_tags($_SESSION['email_fromname']);
+               $mail->From = strip_tags($_REQUEST['from_email']);
+               $mail->FromName = strip_tags($_REQUEST['from_name']);
+               $mail->AddAddress($_REQUEST['destination']);
 
-                       $mail = new ttrssMailer();
+               $mail->IsHTML(false);
+               $mail->Subject = $_REQUEST['subject'];
+               $mail->Body = $_REQUEST['content'];
 
-                       $mail->From = $replyto;
-                       $mail->FromName = $fromname;
-                       $mail->AddAddress($_REQUEST['destination']);
-
-                       $mail->IsHTML(false);
-                       $mail->Subject = $_REQUEST['subject'];
-                       $mail->Body = $_REQUEST['content'];
-
-                       $rc = $mail->Send();
-
-                       if (!$rc) {
-                               $reply['error'] =  $mail->ErrorInfo;
-                       } else {
-                               save_email_address($this->link, db_escape_string($destination));
-                               $reply['message'] = "UPDATE_COUNTERS";
-                       }
+               $rc = $mail->Send();
 
+               if (!$rc) {
+                       $reply['error'] =  $mail->ErrorInfo;
                } else {
-                       $reply['error'] = "Not authorized.";
+                       save_email_address( db_escape_string($destination));
+                       $reply['message'] = "UPDATE_COUNTERS";
                }
 
                print json_encode($reply);
        }
 
        function completeEmails() {
-               $search = db_escape_string($_REQUEST["search"]);
+               $search = db_escape_string( $_REQUEST["search"]);
 
                print "<ul>";