You've already forked laravel-connect
fixes; readme
This commit is contained in:
@@ -132,30 +132,35 @@ class Connect
|
||||
return redirect()->to($url);
|
||||
}
|
||||
|
||||
public function loginFromCallback(Request $request)
|
||||
public function checkState(Request $request)
|
||||
{
|
||||
// State check
|
||||
|
||||
if (!session()->has('connect_states')) {
|
||||
Log::debug("Missing session states");
|
||||
return redirect('/');
|
||||
return false;
|
||||
}
|
||||
|
||||
$states = session()->get('connect_states');
|
||||
|
||||
if (!is_array($states)) {
|
||||
Log::debug("Invalid session state");
|
||||
return redirect('/');
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!$request->has('state') || !in_array($request->state, $states)) {
|
||||
Log::debug("Missing valid state in request");
|
||||
return redirect('/');
|
||||
return false;
|
||||
}
|
||||
|
||||
unset($states[array_search($request->state, $states)]);
|
||||
|
||||
session()->put('connect_states', $states);
|
||||
return true;
|
||||
}
|
||||
|
||||
public function loginFromCallback(Request $request, $redirect_to = '/')
|
||||
{
|
||||
if (!$this->checkState($request))
|
||||
return redirect('/');
|
||||
|
||||
// Code check
|
||||
|
||||
@@ -184,7 +189,7 @@ class Connect
|
||||
|
||||
auth()->login($user, true);
|
||||
|
||||
return redirect('/');
|
||||
return redirect($redirect_to);
|
||||
}
|
||||
|
||||
public function getAccessTokenFromAuthorizationCode($code)
|
||||
@@ -355,7 +360,7 @@ class Connect
|
||||
foreach ($model::all() as $item)
|
||||
{
|
||||
if (!in_array(intval($item->id), $identifiers))
|
||||
$item->delete();
|
||||
$model::onConnectResourceDoesNotExist($item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user