mirror of
https://github.com/anikeen-com/id.git
synced 2026-03-13 13:46:13 +00:00
refactored code
Signed-off-by: Maurice Preuß (envoyr) <hello@envoyr.com>
This commit is contained in:
118
README.stub
118
README.stub
@@ -11,9 +11,11 @@ PHP Anikeen ID API Client for Laravel 11+
|
||||
1. [Installation](#installation)
|
||||
2. [Event Listener](#event-listener)
|
||||
3. [Configuration](#configuration)
|
||||
4. [Examples](#examples)
|
||||
5. [Documentation](#documentation)
|
||||
6. [Development](#Development)
|
||||
4. [Implementing Auth](#implementing-auth)
|
||||
5. [General](#general)
|
||||
6. [Examples](#examples)
|
||||
7. [Documentation](#documentation)
|
||||
8. [Development](#Development)
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -33,18 +35,12 @@ Event::listen(function (\SocialiteProviders\Manager\SocialiteWasCalled $event) {
|
||||
|
||||
## Configuration
|
||||
|
||||
Copy configuration to config folder:
|
||||
|
||||
```
|
||||
$ php artisan vendor:publish --provider="Anikeen\Id\Providers\AnikeenIdServiceProvider"
|
||||
```
|
||||
|
||||
Add environmental variables to your `.env`
|
||||
|
||||
```
|
||||
ANIKEEN_ID_KEY=
|
||||
ANIKEEN_ID_SECRET=
|
||||
ANIKEEN_ID_REDIRECT_URI=http://localhost
|
||||
ANIKEEN_ID_CALLBACK_URL=http://localhost/auth/callback
|
||||
```
|
||||
|
||||
You will need to add an entry to the services configuration file so that after config files are cached for usage in production environment (Laravel command `artisan config:cache`) all config is still available.
|
||||
@@ -52,13 +48,20 @@ You will need to add an entry to the services configuration file so that after c
|
||||
**Add to `config/services.php`:**
|
||||
|
||||
```php
|
||||
'anikeen-id' => [
|
||||
'anikeen' => [
|
||||
'client_id' => env('ANIKEEN_ID_KEY'),
|
||||
'client_secret' => env('ANIKEEN_ID_SECRET'),
|
||||
'redirect' => env('ANIKEEN_ID_REDIRECT_URI')
|
||||
'redirect' => env('ANIKEEN_ID_CALLBACK_URL'),
|
||||
'base_url' => env('ANIKEEN_ID_BASE_URL'),
|
||||
],
|
||||
```
|
||||
|
||||
```php
|
||||
$middleware->web(append: [
|
||||
\Anikeen\Id\Http\Middleware\CreateFreshApiToken::class,
|
||||
]);
|
||||
```
|
||||
|
||||
## Implementing Auth
|
||||
|
||||
This method should typically be called in the `boot` method of your `AuthServiceProvider` class:
|
||||
@@ -121,30 +124,9 @@ reference the provider in the `providers` configuration of your `auth.php` confi
|
||||
],
|
||||
```
|
||||
|
||||
## Examples
|
||||
## General
|
||||
|
||||
#### Basic
|
||||
|
||||
```php
|
||||
$anikeenId = new Anikeen\IdAnikeenId();
|
||||
|
||||
$anikeenId->setClientId('abc123');
|
||||
|
||||
// Get SSH Key by User ID
|
||||
$result = $anikeenId->getSshKeysByUserId(38);
|
||||
|
||||
// Check, if the query was successfull
|
||||
if ( ! $result->success()) {
|
||||
die('Ooops: ' . $result->error());
|
||||
}
|
||||
|
||||
// Shift result to get single key data
|
||||
$sshKey = $result->shift();
|
||||
|
||||
echo $sshKey->name;
|
||||
```
|
||||
|
||||
#### Setters
|
||||
#### Setters and Getters
|
||||
|
||||
```php
|
||||
$anikeenId = new Anikeen\Id\AnikeenId();
|
||||
@@ -158,6 +140,72 @@ $anikeenId = $anikeenId->withClientSecret('abc123');
|
||||
$anikeenId = $anikeenId->withToken('abcdef123456');
|
||||
```
|
||||
|
||||
#### Error handling for an unsuccessful query:
|
||||
|
||||
```php
|
||||
$result = $anikeenId->sshKeysByUserId('someInvalidId');
|
||||
|
||||
// Check, if the query was successfully
|
||||
if (!$result->success()) {
|
||||
die('Ooops: ' . $result->error());
|
||||
}
|
||||
```
|
||||
|
||||
#### Shift result to get single key data:
|
||||
|
||||
```php
|
||||
$result = $anikeenId->sshKeysByUserId('someValidId');
|
||||
|
||||
$sshKey = $result->shift();
|
||||
|
||||
echo $sshKey->name;
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
#### Get User SSH Key
|
||||
|
||||
```php
|
||||
$anikeenId = new Anikeen\IdAnikeenId();
|
||||
|
||||
$anikeenId->setClientId('abc123');
|
||||
|
||||
// Get SSH Key by User ID
|
||||
$result = $anikeenId->sshKeysByUserId('someValidId');
|
||||
|
||||
// Check, if the query was successfully
|
||||
if (!$result->success()) {
|
||||
die('Ooops: ' . $result->error());
|
||||
}
|
||||
|
||||
// Shift result to get single key data
|
||||
$sshKey = $result->shift();
|
||||
|
||||
echo $sshKey->name;
|
||||
```
|
||||
|
||||
#### Create Order Preview
|
||||
|
||||
```php
|
||||
$anikeenId = new \Anikeen\Id\AnikeenId();
|
||||
|
||||
// Create new Order Preview
|
||||
$result = $anikeenId->createOrderPreview([
|
||||
'country_iso' => 'de',
|
||||
'items' => [
|
||||
[
|
||||
'type' => 'physical',
|
||||
'name' => 'Test',
|
||||
'price' => 2.99,
|
||||
'unit' => 'onetime',
|
||||
'units' => 1,
|
||||
]
|
||||
]
|
||||
])->shift();
|
||||
|
||||
echo $preview->gross_total;
|
||||
```
|
||||
|
||||
#### OAuth Tokens
|
||||
|
||||
```php
|
||||
|
||||
Reference in New Issue
Block a user