mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig-portal.git
synced 2025-12-11 06:46:47 +00:00
Shift automatically applies the Laravel coding style - which uses the PSR-12 coding style as a base with some minor additions. You may customize the code style applied by configuring [Pint](https://laravel.com/docs/pint), [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer), or [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) for your project root. For more information on customizing the code style applied by Shift, [watch this short video](https://laravelshift.com/videos/shift-code-style).
42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Traits;
|
|
|
|
use App\Models\TwitterAccount;
|
|
use Illuminate\Support\Facades\Http;
|
|
|
|
trait TwitterTrait
|
|
{
|
|
public function setNewAccessToken($accountId)
|
|
{
|
|
$twitterAccount = TwitterAccount::find($accountId);
|
|
|
|
$response = Http::acceptJson()
|
|
->post('https://api.twitter.com/2/oauth2/token', [
|
|
'grant_type' => 'refresh_token',
|
|
'refresh_token' => $twitterAccount->refresh_token,
|
|
'client_id' => 'a0I1Nnp4YmMzZzdtRzFod1ZWT2c6MTpjaQ',
|
|
]);
|
|
$json = $response->json();
|
|
\Log::info($json);
|
|
|
|
TwitterAccount::find($accountId)
|
|
->update([
|
|
'token' => $json['access_token'],
|
|
'refresh_token' => $json['refresh_token'],
|
|
]);
|
|
}
|
|
|
|
public function postTweet($text)
|
|
{
|
|
$twitterAccount = TwitterAccount::find(1);
|
|
$response = Http::acceptJson()
|
|
->withToken($twitterAccount->token)
|
|
->post('https://api.twitter.com/2/tweets', [
|
|
'text' => $text,
|
|
]);
|
|
|
|
\Log::info($response->json());
|
|
}
|
|
}
|