Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor-stripe/vendor/stripe/stripe-php/lib/OAuth.php

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + <?php
2 +
3 + namespace Stripe;
4 +
5 + abstract class OAuth
6 + {
7 + /**
8 + * Generates a URL to Stripe's OAuth form.
9 + *
10 + * @param null|array $params
11 + * @param null|array $opts
12 + *
13 + * @return string the URL to Stripe's OAuth form
14 + */
15 + public static function authorizeUrl($params = null, $opts = null)
16 + {
17 + $params = $params ?: [];
18 +
19 + $base = ($opts && \array_key_exists('connect_base', $opts)) ? $opts['connect_base'] : Stripe::$connectBase;
20 +
21 + $params['client_id'] = self::_getClientId($params);
22 + if (!\array_key_exists('response_type', $params)) {
23 + $params['response_type'] = 'code';
24 + }
25 + $query = Util\Util::encodeParameters($params);
26 +
27 + return $base . '/oauth/authorize?' . $query;
28 + }
29 +
30 + /**
31 + * Use an authoriztion code to connect an account to your platform and
32 + * fetch the user's credentials.
33 + *
34 + * @param null|array $params
35 + * @param null|array $opts
36 + *
37 + * @return StripeObject object containing the response from the API
38 + *
39 + * @throws Exception\OAuth\OAuthErrorException if the request fails
40 + */
41 + public static function token($params = null, $opts = null)
42 + {
43 + $base = ($opts && \array_key_exists('connect_base', $opts)) ? $opts['connect_base'] : Stripe::$connectBase;
44 + $requestor = new ApiRequestor(null, $base);
45 + list($response, $apiKey) = $requestor->request(
46 + 'post',
47 + '/oauth/token',
48 + $params,
49 + null
50 + );
51 +
52 + return Util\Util::convertToStripeObject($response->json, $opts);
53 + }
54 +
55 + /**
56 + * Disconnects an account from your platform.
57 + *
58 + * @param null|array $params
59 + * @param null|array $opts
60 + *
61 + * @return StripeObject object containing the response from the API
62 + *
63 + * @throws Exception\OAuth\OAuthErrorException if the request fails
64 + */
65 + public static function deauthorize($params = null, $opts = null)
66 + {
67 + $params = $params ?: [];
68 + $base = ($opts && \array_key_exists('connect_base', $opts)) ? $opts['connect_base'] : Stripe::$connectBase;
69 + $requestor = new ApiRequestor(null, $base);
70 + $params['client_id'] = self::_getClientId($params);
71 + list($response, $apiKey) = $requestor->request(
72 + 'post',
73 + '/oauth/deauthorize',
74 + $params,
75 + null
76 + );
77 +
78 + return Util\Util::convertToStripeObject($response->json, $opts);
79 + }
80 +
81 + private static function _getClientId($params = null)
82 + {
83 + $clientId = ($params && \array_key_exists('client_id', $params)) ? $params['client_id'] : null;
84 + if (null === $clientId) {
85 + $clientId = Stripe::getClientId();
86 + }
87 + if (null === $clientId) {
88 + $msg = 'No client_id provided. (HINT: set your client_id using '
89 + . '"Stripe::setClientId(<CLIENT-ID>)". You can find your client_ids '
90 + . 'in your Stripe dashboard at '
91 + . 'https://dashboard.stripe.com/account/applications/settings, '
92 + . 'after registering your account as a platform. See '
93 + . 'https://stripe.com/docs/connect/standard-accounts for details, '
94 + . 'or email support@stripe.com if you have any questions.';
95 +
96 + throw new Exception\AuthenticationException($msg);
97 + }
98 +
99 + return $clientId;
100 + }
101 + }
102 +