Guest User

Untitled

a guest
Aug 23rd, 2018
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.49 KB | None | 0 0
  1. - app
  2. -- controllers
  3. -- models
  4. -- views
  5. - public
  6.  
  7. class Users extends Model {
  8. // ...
  9. protected $id;
  10. protected $username;
  11. protected $email;
  12. // setters and getters, validation
  13. }
  14.  
  15. class UserController extends ControllerBase {
  16. // ...
  17. public function loginAction() {
  18. if ($this->request->isPost()) {
  19. // ... get post
  20. // check login is correct
  21. // create session
  22. // redirect
  23. }
  24. $this->view->var = $var;
  25. }
  26. }
  27.  
  28. class ApiController extends ControllerBase {
  29. // ...
  30. public function loginAction() {
  31. if ($this->request->isPost() //or put) {
  32. $json = $this->request->getJsonRawBody();
  33. // ... get json
  34. // check login is correct
  35. // create session
  36. }
  37. $response->setStatusCode('2xx/4xx', 'msg');
  38. $response->setJsonContent([
  39. 'status' => 'OK / ERROR',
  40. 'message' => '$msg / $ex->getMessage()'
  41. ]);
  42. }
  43. }
  44.  
  45. class MyClass extends ParentClass {
  46. public function login($username, $password) {
  47. $user = Users::findFirstByEmail($email);
  48. if ($user->password === hash($password)) {
  49. $successLogin = new UserSuccessLogins();
  50. $successLogin ->setId('id');
  51. $successLogin ->setIpAddress('ip');
  52. $successLogin ->save();
  53. } else {
  54. $failedLogin = new UserFailedLogins();
  55. $failedLogin->setId('id');
  56. $failedLogin->setIpAddress('ip');
  57. $failedLogin->save();
  58. }
  59. }
  60. }
  61.  
  62. class UserController extends ControllerBase {
  63. public function loginAction() {
  64. if ($this->request->isPost()) {
  65. $c = new MyClass();
  66. if ($c->login($username, $password)) {
  67. // redirect
  68. }
  69. }
  70. $this->view->var = $var;
  71. }
  72. }
  73.  
  74. class ApiController extends ControllerBase {
  75. public function loginAction() {
  76. if ($this->request->isPost() //or put) {
  77. $c = new MyClass();
  78. if ($c->login($username, $password)) {
  79. // send json OK
  80. } else {
  81. // send json Error
  82. }
  83. }
  84. }
  85. }
  86.  
  87. -app
  88. --components
  89. --controllers
  90. --models
  91. --views
  92. -public
  93.  
  94. use PhalconMvcModel;
  95. class Users extends Model {
  96. // ...
  97. protected $id;
  98. protected $username;
  99. protected $email;
  100. // setters and getters, validation
  101. }
  102.  
  103. use PhalconMvcUserComponent;
  104. class UserComponent extends Component {
  105. // class with access to dependecy injector
  106. public login ($email, $password) {
  107. $user = Users::findFirstByEmail($email);
  108. // logic with setting session in $di
  109. }
  110. }
  111.  
  112. class UserController extends ControllerBase {
  113. public function loginAction() {
  114. if ($this->request->isPost()) {
  115. $userComponent = new UserComponent();
  116. if ($userComponent ->login($username, $password)) {
  117. return $this->response->redirect($this->url->getBaseUri(), false, 301);
  118. } else {
  119. $this->flash->error('message');
  120. }
  121. }
  122. // setting view variables if not post or login filed
  123. $this->view->var = $var;
  124. }
  125. }
  126.  
  127.  
  128. class ApiController extends ControllerBase {
  129. public function loginAction() {
  130. if ($this->request->isPost()) {
  131. $userComponent = new UserComponent();
  132. if ($userComponent ->login($username, $password)) {
  133. //json OK
  134. } else {
  135. //json Error
  136. }
  137. }
  138. }
  139. }
Add Comment
Please, Sign In to add comment