public function handle(ProviderProvider $providerProvider, AclContract $acl) { $selfClient = Client::where(['name' => 'Provider Hub'])->first(); if (empty($selfClient)) { $selfClient = new Client(); $selfClient->name = 'Provider Hub'; $selfClient->secret = 'foobar'; $selfClient->type = 'provider_hub'; $selfClient->save(); } \dump(['provider hub', 'client_id' => $selfClient->id, 'client_secret' => 'foobar']); \dump(['role setup', $acl->setupRoles()]); $provider = $providerProvider->find(['name' => 'Test Provider', 'slug' => 'test']); if (empty($provider)) { $provider = $providerProvider->create(['name' => 'Test Provider', 'slug' => 'test']); } \dump(['provider', 'id' => $provider->id, 'slug' => $provider->slug]); }
public function post(Request $request) { $providerHub = Client::where(['type' => 'provider_hub'])->first(); if (empty($providerHub)) { return $this->respond(['error' => 'not_set_up'], 400); } $registerRequest = $request->json()->all(); if (empty($registerRequest['token']) || !$this->validateToken($registerRequest['token']) || empty($registerRequest['base_url']) || empty($registerRequest['secret']) || empty($registerRequest['id'])) { return $this->respond(['error' => 'Bad Request'], 400); } $client = new Client(); $client->id = $registerRequest['id']; $client->name = 'Central Hub'; $client->type = 'central_hub'; $client->base_url = $registerRequest['base_url']; $client->secret = $registerRequest['secret']; if ($client->save()) { return $this->respond(['message' => 'Handshake Complete!', 'provider_hub_id' => $providerHub->id], 200); } return $this->respond(['error' => 'Error Saving Client'], 500); }