PluginProbe
Depicter — Popup & Slider Builder / trunk
Depicter — Popup & Slider Builder vtrunk
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
depicter / app / src / Controllers / Ajax / UserAjaxController.php

UserAjaxController.php in Depicter — Popup & Slider Builder trunk, at app/src/Controllers/Ajax/UserAjaxController.php

155 lines 4.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Depicter\Controllers\Ajax;
3
4 use Averta\WordPress\Utility\Sanitize;
5 use Depicter\GuzzleHttp\Exception\GuzzleException;
6 use Depicter\Services\UserAPIService;
7 use WPEmerge\Requests\RequestInterface;
8
9 class UserAjaxController {
10
11 /**
12 * User login
13 *
14 * @param RequestInterface $request
15 * @param $view
16 *
17 * @return \Psr\Http\Message\ResponseInterface
18 */
19 public function login( RequestInterface $request, $view ) {
20 $email = $request->body( 'email' , '' );
21 $password = $request->body( 'password', '' );
22
23 if ( empty( $email ) || empty( $password ) ) {
24 return \Depicter::json([
25 'errors' => [ __( 'Both email and password required to login', 'depicter' ) ]
26 ])->withStatus(403);
27 }
28
29 try{
30 return \Depicter::json( UserAPIService::login( $email, $password ) )->withStatus( 200 );
31 } catch( GuzzleException $e ){
32 return \Depicter::json([
33 'errors' => [ $e->getMessage() ]
34 ])->withStatus( 401 );
35 } catch( \Exception $e ){
36 return \Depicter::json([
37 'errors' => [ $e->getMessage() ]
38 ])->withStatus( 401 );
39 }
40 }
41
42 /**
43 * User register
44 *
45 * @param RequestInterface $request
46 * @param $view
47 *
48 * @return \Psr\Http\Message\ResponseInterface
49 */
50 public function register( RequestInterface $request, $view ) {
51 $email = Sanitize::email( $request->body('email', '') );
52 $password = Sanitize::textfield( $request->body('password', '') );
53
54 $fields = [
55 'firstName' => Sanitize::textfield( $request->body('firstName', '') ),
56 'lastName' => Sanitize::textfield( $request->body('lastName', '') ),
57 ];
58
59 if ( empty( $email ) || empty( $password ) ) {
60 return \Depicter::json([
61 'errors' => [ __( 'Both email and password required to register', 'depicter' ) ]
62 ])->withStatus(403);
63 }
64
65 try{
66 return \Depicter::json( UserAPIService::register( $email, $password, $fields ) )->withStatus( 200 );
67 } catch( GuzzleException $e ){
68 return \Depicter::json([
69 'errors' => [ $e->getMessage() ]
70 ])->withStatus( 401 );
71 } catch( \Exception $e ){
72 return \Depicter::json([
73 'errors' => [ $e->getMessage() ]
74 ])->withStatus( 401 );
75 }
76 }
77
78 /**
79 * Get google client id
80 *
81 * @param RequestInterface $request
82 * @param $view
83 *
84 * @return \Psr\Http\Message\ResponseInterface
85 */
86 public function googleClientID( RequestInterface $request, $view ) {
87 try {
88 return \Depicter::json( UserAPIService::googleClientID() )->withStatus( 200 );
89 } catch( GuzzleException $e ){
90 return \Depicter::json([
91 'errors' => [ $e->getMessage() ]
92 ])->withStatus( 401 );
93 } catch( \Exception $e ){
94 return \Depicter::json([
95 'errors' => [ $e->getMessage() ]
96 ])->withStatus( 401 );
97 }
98
99 }
100
101 /**
102 * Login by Google
103 *
104 * @param RequestInterface $request
105 * @param $view
106 *
107 * @return \Psr\Http\Message\ResponseInterface
108 */
109 public function googleLogin( RequestInterface $request, $view ) {
110 $token = Sanitize::textfield( $request->body('accessToken', '') );
111
112 if ( !empty( $token ) ) {
113 try{
114 return \Depicter::json( UserAPIService::googleLogin( $token ) )->withStatus( 200 );
115 } catch( GuzzleException $e ){
116 return \Depicter::json([
117 'errors' => [ $e->getMessage() ]
118 ])->withStatus( 401 );
119 } catch( \Exception $e ){
120 return \Depicter::json([
121 'errors' => [ $e->getMessage() ]
122 ])->withStatus( 401 );
123 }
124 } else {
125 return \Depicter::json([
126 'errors' => [ __( 'Token required!', 'depicter' ) ]
127 ])->withStatus(400);
128 }
129 }
130
131 /**
132 * Logout a registered user
133 *
134 * @param RequestInterface $request
135 * @param $view
136 *
137 * @return \Psr\Http\Message\ResponseInterface
138 */
139 public function logout( RequestInterface $request, $view ) {
140 try {
141 UserAPIService::logout();
142 return \Depicter::json( [ "success" => true, "message" => "Logged out successfully" ] )->withStatus( 200 );
143 } catch( GuzzleException $e ){
144 return \Depicter::json([
145 'errors' => [ $e->getMessage() ]
146 ])->withStatus( 401 );
147 } catch( \Exception $e ){
148 return \Depicter::json([
149 'errors' => [ $e->getMessage() ]
150 ])->withStatus( 401 );
151 }
152
153 }
154 }
155