]> git.wh0rd.org Git - tt-rss.git/commitdiff
option MAIL_RESET_PASS (closes #11)
authorAndrew Dolgov <fox@madoka.spb.ru>
Tue, 20 Dec 2005 06:51:06 +0000 (07:51 +0100)
committerAndrew Dolgov <fox@madoka.spb.ru>
Tue, 20 Dec 2005 06:51:06 +0000 (07:51 +0100)
backend.php
config.php-dist
prefs.js
tt-rss.css

index e9eb718f325863a2e7882625204c481bd7cbb021..40a59afcb567e4cb478eabf4e33a960647d4197a 100644 (file)
                                $login = db_escape_string($_GET["l"]);
                                $uid = db_escape_string($_GET["id"]);
                                $access_level = sprintf("%d", $_GET["al"]);
+                               $email = db_escape_string($_GET["e"]);
 
-                               db_query($link, "UPDATE ttrss_users SET login = '$login', access_level = '$access_level' WHERE id = '$uid'");
+                               db_query($link, "UPDATE ttrss_users SET login = '$login', 
+                                       access_level = '$access_level', email = '$email' WHERE id = '$uid'");
 
                        }
                } else if ($subop == "remove") {
 
                                $uid = db_escape_string($_GET["id"]);
 
-                               $result = db_query($link, "SELECT login FROM ttrss_users WHERE id = '$uid'");
+                               $result = db_query($link, "SELECT login,email 
+                                       FROM ttrss_users WHERE id = '$uid'");
 
                                $login = db_fetch_result($result, 0, "login");
+                               $email = db_fetch_result($result, 0, "email");
                                $tmp_user_pwd = make_password(8);
                                $pwd_hash = 'SHA1:' . sha1($tmp_user_pwd);
 
                                        WHERE id = '$uid'");
 
                                print "<div class=\"notice\">Changed password of 
-                                       user <b>$login</b> to <b>$tmp_user_pwd</b>.</div>";                             
+                                       user <b>$login</b> to <b>$tmp_user_pwd</b>.";
+
+                               if (MAIL_RESET_PASS && $email) {
+                                       print " Notifying <b>$email</b>.";
+
+                                       mail("$login <$email>", "Password reset notification",
+                                               "Hi, $login.\n".
+                                               "\n".
+                                               "Your password for this TT-RSS installation was reset by".
+                                                       " an administrator.\n".
+                                               "\n".
+                                               "Your new password is $tmp_user_pwd, please remember".
+                                                       " it for later reference.\n".
+                                               "\n".
+                                               "Sincerely, TT-RSS Mail Daemon.", "From: " . MAIL_FROM);
+                               }
+                                       
+                               print "</div>";                         
 
                        }
                }
                        onclick=\"javascript:addUser()\" value=\"Add user\"></div>";
 
                $result = db_query($link, "SELECT 
-                               id,login,access_level,
+                               id,login,access_level,email,
                                SUBSTRING(last_login,1,16) as last_login
                        FROM 
                                ttrss_users
 
                print "<tr class=\"title\">
                                        <td align='center' width=\"5%\">&nbsp;</td>
-                                       <td width='30%'>Username</td>
-                                       <td width='30%'>Access Level</td>
-                                       <td width='30%'>Last login</td></tr>";
+                                       <td width='20%'>Username</td>
+                                       <td width='20%'>E-mail</td>
+                                       <td width='20%'>Access Level</td>
+                                       <td width='20%'>Last login</td></tr>";
                
                $lnum = 0;
                
                        $line["last_login"] = date(get_pref($link, 'SHORT_DATE_FORMAT'),
                                strtotime($line["last_login"]));
 
-                       if ($uid == $_SESSION["uid"]) {
+/*                     if ($uid == $_SESSION["uid"]) {
 
                                print "<td align='center'><input disabled=\"true\" type=\"checkbox\" 
                                        id=\"UMCHK-".$line["id"]."\"></td>";
 
-                               print "<td>".$line["login"]."</td>";            
-                               print "<td>".$line["access_level"]."</td>";             
+                               print "<td>".$line["login"]."</td>";
+                               print "<td>".$line["email"]."</td>";
+                               print "<td>".$line["access_level"]."</td>";
 
-                       } else if (!$edit_uid || $subop != "edit") {
+                       } else */ if (!$edit_uid || $subop != "edit") {
 
                                print "<td align='center'><input onclick='toggleSelectRow(this);' 
                                type=\"checkbox\" id=\"UMCHK-$uid\"></td>";
 
                                print "<td><a href=\"javascript:editUser($uid);\">" . 
                                        $line["login"] . "</td>";               
-                                       
+
+                               print "<td><a href=\"javascript:editUser($uid);\">" . 
+                                       $line["email"] . "</td>";                       
+
                                print "<td><a href=\"javascript:editUser($uid);\">" . 
                                        $line["access_level"] . "</td>";                        
 
                        } else if ($uid != $edit_uid) {
 
-                               print "<td><input disabled=\"true\" type=\"checkbox\" 
+                               print "<td align='center'><input disabled=\"true\" type=\"checkbox\" 
                                        id=\"UMCHK-".$line["id"]."\"></td>";
 
                                print "<td>".$line["login"]."</td>";            
+                               print "<td>".$line["email"]."</td>";            
                                print "<td>".$line["access_level"]."</td>";             
 
                        } else {
 
-                               print "<td><input disabled=\"true\" type=\"checkbox\" checked></td>";
+                               print "<td align='center'>
+                                       <input disabled=\"true\" type=\"checkbox\" checked></td>";
 
                                print "<td><input id=\"iedit_ulogin\" value=\"".$line["login"].
                                        "\"></td>";
 
+                               print "<td><input id=\"iedit_email\" value=\"".$line["email"].
+                                       "\"></td>";
+
                                print "<td><input id=\"iedit_ulevel\" value=\"".$line["access_level"].
                                        "\"></td>";
                                                
index 6ef8ee66e491cb8e3c0c1230969124205f45ca61..5935dd1261d1b7dc36de01f4ab646bd9568deb4d 100644 (file)
        define('ENABLE_LOGIN_SSL', false);
        // Redirect to SSL url for login
 
+       define('MAIL_RESET_PASS', true);
+       // Send mail to user on password reset
+       
+       define('MAIL_FROM', 'TT-RSS Daemon <noreply@ttrss.your-shiny-host.org>');
+       // Pretty obvious, I suppose.
+       
+       // vim:ft=php
 ?>
index 06092774b4e1ca2e97e834296877e99b9e1223d1..695b1abbf356c4c53ba7f36b3f85d8bf9c2b89a5 100644 (file)
--- a/prefs.js
+++ b/prefs.js
@@ -864,6 +864,7 @@ function userEditSave() {
 
        var login = document.getElementById("iedit_ulogin").value;
        var level = document.getElementById("iedit_ulevel").value;
+       var email = document.getElementById("iedit_email").value;
 
        if (login.length == 0) {
                notify("Login cannot be blank.");
@@ -880,8 +881,8 @@ function userEditSave() {
        notify("Saving user...");
 
        xmlhttp.open("GET", "backend.php?op=pref-users&subop=editSave&id=" +
-               user + "&l=" + param_escape(login) + "&al=" + param_escape(level),
-               true);
+               user + "&l=" + param_escape(login) + "&al=" + param_escape(level) +
+               "&e=" + param_escape(email), true);
                
        xmlhttp.onreadystatechange=userlist_callback;
        xmlhttp.send(null);
index d99a6308f96638c8f193cac0742c9a423b0e9195..93d04ae73b28780d133d5bf9d450409513e70503 100644 (file)
@@ -319,7 +319,7 @@ a:hover {
 
 #iedit_title, #iedit_link, #iedit_regexp, #iedit_descr, #iedit_expr, #iedit_updintl,
 #iedit_purgintl, #iedit_ulogin, #iedit_ulevel, #iedit_match, #iedit_feed,
-#iedit_fcat, #iedit_filter_action, #iedit_login, #iedit_pass {
+#iedit_fcat, #iedit_filter_action, #iedit_login, #iedit_pass, #iedit_email {
        width : 100%;
        padding-left : 2px;
 }