Esta Integração da API do Basecamp 3 com o Laravel 5 proporcionarÔ a integração da nova API do Basecamp 3, atraves da 37 Signals com a aplicação em Laravel 5., (*1)
Instalação
Nós recomendamos utilizar o composer: (após a instalação do Laravel 5):, (*2)
$ php composer.phar require cgmalaquias/basecamp3-laravel
Utilização
Para utilizar a biblioteca, serƔ necessƔrio ter uma conta criada no https://integrate.37signals.com/
Utilize a biblioteca do Laravel Socialite, (*3)
Após a autenticação pelo Socialite, utilize a configuação abaixo em um controller chamado BasecampController.php, com, (*4)
Utiize a autenticação via OAuth token
Abaixo um exemplo de como ficarĆ” seu controller com o handle e o callback:, (*5)
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Socialite;
use Basecamp;
class BasecampController extends Controller {
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function handle(Request $request) {
return Socialite::driver('Thitysevensignals')->redirect();
}
public function callback(Request $request) {
$user = Socialite::driver('Thitysevensignals')->stateless()->user();
$client = Basecamp\BasecampClient::factory(array(
'base_url' => $user->user['accounts'][1]['href'],
'auth' => 'oauth',
'username' => $user->user['identity']['email_address'],
'user_id' => $user->user['identity']['id'], //$user->user['accounts'][1]['id'],
'app_name' => $user->user['accounts'][1]['name'],
'app_contact' => $user->user['identity']['email_address'],
'token' => $user->token
));
//dd($user);
dd($client);
}
No controller, você pdoerÔ criar os métodos, para aceitar todas as reuisições compostas nesta biblioteca, podendo fazer seus testes utitÔrios:, (*6)
- updateTodo
- grantAccess
- updateCalendar
- deleteCalendar
- updateCalendarEvent
- deleteCalendarEvent
- updateProjectCalendarEvent
- deleteProjectCalendarEvent