PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / trunk
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments vtrunk
4.5.1 4.5.0 4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / Controllers / Rest / LoginController.php
surecart / app / src / Controllers / Rest Last commit date
AbandonedCheckoutProtocolController.php 2 years ago AbandonedCheckoutsController.php 3 years ago AccountController.php 2 years ago ActivationsController.php 3 years ago AffiliationProductsController.php 2 years ago AffiliationProtocolController.php 2 years ago AffiliationRequestsController.php 2 years ago AffiliationsController.php 2 years ago AutoFeeProtocolController.php 5 months ago AutoFeesController.php 5 months ago BalanceTransactionsController.php 3 years ago BatchesController.php 6 days ago BrandController.php 4 months ago BumpsController.php 3 years ago CancellationActsController.php 3 years ago CancellationReasonsController.php 3 years ago ChargesController.php 2 years ago CheckEmailController.php 11 months ago CheckoutsController.php 5 months ago ClicksController.php 2 years ago CouponsController.php 3 years ago CustomerController.php 1 month ago CustomerNotificationProtocolController.php 2 years ago CustomerPortalProtocolController.php 1 year ago DisplayCurrencyController.php 1 year ago DisputesController.php 9 months ago DownloadsController.php 3 years ago DraftCheckoutsController.php 2 years ago ExportsController.php 2 years ago FulfillmentsController.php 3 years ago ImportRowsController.php 2 months ago IncomingWebhooksController.php 2 months ago IntegrationCatalogController.php 1 year ago IntegrationProvidersController.php 3 years ago IntegrationsController.php 2 months ago InvoicesController.php 1 year ago LicensesController.php 3 years ago LineItemsController.php 1 year ago LoginController.php 1 month ago ManualPaymentMethodsController.php 3 years ago MediasController.php 3 years ago OrderController.php 1 year ago OrderProtocolController.php 2 years ago ParcelTemplateController.php 3 months ago PaymentIntentsController.php 2 years ago PaymentMethodsController.php 2 years ago PayoutGroupsController.php 2 years ago PayoutsController.php 2 years ago PeriodsController.php 3 years ago PluginInstallerController.php 6 days ago PricesController.php 1 year ago ProcessorController.php 3 years ago ProductCollectionsController.php 6 days ago ProductGroupsController.php 3 years ago ProductMediaController.php 1 year ago ProductsController.php 6 days ago PromotionsController.php 3 years ago ProvisionalAccountController.php 3 years ago PurchasesController.php 3 years ago ReferralItemsController.php 2 years ago ReferralsController.php 2 years ago RefundsController.php 3 years ago RegisteredWebhookController.php 2 years ago RestController.php 6 days ago ReturnItemsController.php 2 years ago ReturnReasonsController.php 2 years ago ReturnRequestsController.php 2 years ago ReviewProtocolController.php 4 months ago ReviewsController.php 6 days ago RuleSchemaController.php 5 months ago SettingsController.php 1 month ago ShippingMethodController.php 3 years ago ShippingProfileController.php 3 years ago ShippingProtocolController.php 3 years ago ShippingRateController.php 3 years ago ShippingZoneController.php 3 years ago StatisticsController.php 2 years ago SubscriptionProtocolController.php 2 years ago SubscriptionsController.php 2 years ago SwapsController.php 1 year ago TaxOverrideController.php 2 years ago TaxProtocolController.php 2 years ago TaxRegistrationController.php 3 years ago TaxZoneController.php 3 years ago UploadsController.php 3 years ago UpsellFunnelsController.php 2 years ago UpsellsController.php 2 years ago VariantOptionsController.php 2 years ago VariantValuesController.php 2 years ago VariantsController.php 2 years ago VerificationCodeController.php 1 month ago WebhookController.php 3 years ago
LoginController.php
55 lines
1 <?php
2
3 namespace SureCart\Controllers\Rest;
4
5 use SureCart\Models\User;
6
7 /**
8 * Handle coupon requests through the REST API
9 */
10 class LoginController extends RestController {
11 /**
12 * Login user.
13 *
14 * @param \WP_REST_Request $request The REST request object.
15 *
16 * @return array|\WP_Error Returns an array with user details on success, or WP_Error on failure.
17 */
18 public function authenticate( \WP_REST_Request $request ) {
19 // Authenticate the user.
20 $user = wp_authenticate( $request->get_param( 'login' ), $request->get_param( 'password' ) );
21
22 if ( is_wp_error( $user ) ) {
23 return $user;
24 }
25
26 User::find( $user->ID )->login();
27
28 $redirect_to = $request->get_param( 'redirect_to' );
29 $redirect_url = ! empty( $redirect_to ) ? wp_validate_redirect( $redirect_to, false ) : null;
30
31 return [
32 'name' => $user->display_name,
33 'email' => $user->user_email,
34 'avatar_url' => get_avatar_url( $user->user_email, [ 'size' => 48 ] ),
35 'redirect_url' => apply_filters( 'sc_login_redirect_url', $redirect_url ),
36 'nonce' => ( wp_installing() && ! is_multisite() ) ? '' : wp_create_nonce( 'wp_rest' ),
37 ];
38 }
39
40 /**
41 * Logout user
42 *
43 * @param \WP_REST_Request $request Request object.
44 *
45 * @return array Returns an array with a new nonce for future requests.
46 */
47 public function logout( \WP_REST_Request $request ) {
48 wp_logout();
49
50 return [
51 'nonce' => ( wp_installing() && ! is_multisite() ) ? '' : wp_create_nonce( 'wp_rest' ),
52 ];
53 }
54 }
55