unsubscribe.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. /* GNU FM -- a free network service for sharing your music listening habits
  3. Copyright (C) 2009 Free Software Foundation, Inc
  4. This program is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU Affero General Public License as published by
  6. the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU Affero General Public License for more details.
  12. You should have received a copy of the GNU Affero General Public License
  13. along with this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. require_once('database.php');
  16. require_once('templating.php');
  17. require_once('data/User.php');
  18. if (isset($_GET['id']) && strlen($_GET['id']) == 32) {
  19. $res = $adodb->GetAll('SELECT username FROM Users WHERE MD5(MD5(email) || MD5(password)) = ' . $adodb->qstr($_GET['id']));
  20. if(count($res) == 0) {
  21. $smarty->assign('error', true);
  22. }
  23. foreach($res as &$row) {
  24. $user = new User($row['username']);
  25. $user->receive_emails = 0;
  26. $user->save();
  27. }
  28. } else {
  29. $smarty->assign('error', true);
  30. }
  31. $smarty->assign('pageheading', _('Unsubscribe'));
  32. $smarty->assign('errors', $errors);
  33. $smarty->display('unsubscribe.tpl');