1. Go to this page and download the library: Download upcoach/upstart-for-laravel library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
Route::group(['middleware' => [EnsureUpcoachRequestIsValid::class]], function () {
Route::get('/your-block-connector-path', YourBlockController::class);
});
class YourBlockController extends Controller
{
public function __invoke(Request $request)
{
/**
* Parameters coming from the upcoach
* app_id
* organization_id
* program_id
* block_id
* program_block_id
* user_id
* user_role
*/
// You can access the installation via the request object.
$installation = $request->installation;
// You can use the installation to query the upcoach API if needed.
$client = app(Upcoach\UpstartForLaravel\Api\Client::class, [$installation]);
$programInfo = $client->getProgramInfo($request->program_id);
// Your code here.
}
}
/**
* Create a new "XSRF-TOKEN" cookie that contains the CSRF token.
*
* @param \Illuminate\Http\Request $request
* @param array $config
* @return \Symfony\Component\HttpFoundation\Cookie
*/
protected function newCookie($request, $config)
{
return new Cookie(
name: 'XSRF-TOKEN',
value: $request->session()->token(),
expire: $this->availableAt(60 * $config['lifetime']),
path: $config['path'],
domain: $config['domain'],
secure: true,
httpOnly: false,
raw: false,
sameSite: Cookie::SAMESITE_NONE
);
}