Skip to content

Commit e5e8820

Browse files
committed
Accept invitation completed
1 parent f9e01ef commit e5e8820

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

app/Http/Controllers/CourseController.php

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,4 +162,31 @@ function inviteUsers(Request $request, $username, $courseId){
162162

163163
}
164164

165+
function acceptInvite( Request $request, $course_id ){
166+
try {
167+
168+
$course_id = intval($course_id);
169+
$course = Course::findOrFail($course_id);
170+
171+
$user = $course->users->find($request["current_user"]);
172+
173+
// Comprueba que el usuario haya sido invitado al curso
174+
if ( !$user ) {
175+
return response()->json(["Message" => 'Sorry, you have not been invited to this course'], 404);
176+
}
177+
178+
// Actualizamos el atributo confirmed para que el usuario pase a ser miembro del curso
179+
$user->pivot["confirmed"] = 1;
180+
$user->pivot->save();
181+
182+
return response()->json(["Message" => 'Invitation accepted successfully'], 200);
183+
184+
} catch( ModelNotFoundException $e ) {
185+
return response()->json(["Message" => 'Course not found or does not exist'], 404);
186+
}
187+
188+
189+
190+
}
191+
165192
}

routes/web.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@
4141

4242
/* $router->get('/courses/{id}/users', 'CourseController@getMembers'); */ // Listar todos los usuarios de un curso
4343

44-
$router->post('/courses/{course_id}/invite/{username}', 'CourseController@inviteUsers'); // Listar todos los usuarios de un curso
44+
$router->post('/courses/{course_id}/invite/{username}', 'CourseController@inviteUsers'); // Invitar un unico usuario al curso.
45+
46+
$router->post('/courses/{course_id}/accept_invite/', 'CourseController@acceptInvite'); // Invitar un unico usuario al curso.
4547

4648
//Ruta para comprobar el estado de la api y si estas autenticado
4749

0 commit comments

Comments
 (0)