Login.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. namespace Passport\Src;
  3. use Dever;
  4. use Passport\Lib\Base;
  5. class Login extends Base
  6. {
  7. public function test()
  8. {
  9. return Dever::login(-1);
  10. }
  11. public function quit()
  12. {
  13. if ($this->info()) {
  14. $this->save->un(self::NAME);
  15. }
  16. $refer = Dever::input('refer', 1);
  17. $home = Dever::url('home', 'main');
  18. if ($refer == 2) {
  19. $refer = $home;
  20. } else {
  21. $refer = isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] ? $_SERVER['HTTP_REFERER'] : Dever::url('home', 'main');
  22. }
  23. Dever::location($refer);
  24. }
  25. public function action()
  26. {
  27. $account = Dever::config('base', 'project')->account;
  28. $param['option_' . $account] = Dever::input($account);
  29. $password = sha1(Dever::input('password'));
  30. $user = Dever::load('passport/user-login', $param);
  31. if ($user && $password == $user['password']) {
  32. $this->save($user);
  33. $this->refer();
  34. } else {
  35. Dever::alert('您的账号或密码错误');
  36. }
  37. }
  38. public function get()
  39. {
  40. return $this->info();
  41. }
  42. public function url()
  43. {
  44. return Dever::url('login?' . $this->createRefer(), 'main');
  45. }
  46. public function location()
  47. {
  48. return Dever::location($this->url());
  49. }
  50. public function oauth($url = false)
  51. {
  52. if (!$url) {
  53. $url = Dever::url();
  54. }
  55. $link = Dever::url('get.request?refer=' . urlencode($url), 'oauth');
  56. return $link;
  57. }
  58. }