auth.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. /**
  3. * Bibliotheca
  4. *
  5. * Copyright 2018-2023 Johannes Keßler
  6. *
  7. * This program is free software: you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation, either version 3 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program. If not, see http://www.gnu.org/licenses/gpl-3.0.
  19. */
  20. // passwords used here: password_hash("somePassword", PASSWORD_DEFAULT);
  21. $TemplateData['pageTitle'] = 'Auth';
  22. if(isset($_GET['m']) && !empty($_GET['m'])) {
  23. if($_GET['m'] == "logout") {
  24. $Doomguy->logOut();
  25. $TemplateData['refresh'] = 'index.php';
  26. }
  27. }
  28. elseif(isset($_POST['submitForm'])) {
  29. $fdata = $_POST['fdata'];
  30. if(!empty($fdata)) {
  31. $_username = trim($fdata['login']);
  32. $_password = trim($fdata['password']);
  33. if(!empty($_username) && !empty($_password)) {
  34. if(Summoner::validate($_username,'text') === true && Summoner::validate($_password,'text') === true) {
  35. $do = $Doomguy->authenticate($_username, $_password);
  36. if($do === true) {
  37. $TemplateData['refresh'] = 'index.php';
  38. }
  39. else {
  40. $TemplateData['message']['content'] = $I18n->t('auth.message.invalidInput');
  41. $TemplateData['message']['status'] = "error";
  42. }
  43. }
  44. else {
  45. $TemplateData['message']['content'] = $I18n->t('auth.message.missingInput');
  46. $TemplateData['message']['status'] = "error";
  47. }
  48. }
  49. }
  50. }