From 3549f7db49f94e6fd8ccadc152c7e9b546d4559e Mon Sep 17 00:00:00 2001 From: nicrausaz <n.crausaz99@gmail.com> Date: Wed, 8 May 2019 14:45:39 +0200 Subject: [PATCH] Retours & page d'erreur --- .../Http/Controllers/ApplicantsController.php | 14 +++++------ .../Http/Controllers/CommentsController.php | 8 +++--- .../app/Http/Controllers/FilesController.php | 2 +- .../Http/Controllers/MarkersController.php | 23 +++--------------- .../Http/Controllers/PositionsController.php | 12 ++++----- .../app/Http/Controllers/StatusController.php | 4 +-- canapGEST/Documentation/journal_travail.xlsx | Bin 13394 -> 13434 bytes canapGEST/Site/src/plugins/axios.js | 3 +++ canapGEST/Site/src/router/index.js | 4 +-- canapGEST/Site/src/views/ErrorView.vue | 13 +++++----- 10 files changed, 34 insertions(+), 49 deletions(-) diff --git a/canapGEST/API/app/Http/Controllers/ApplicantsController.php b/canapGEST/API/app/Http/Controllers/ApplicantsController.php index 9cd0c3e..93ad260 100644 --- a/canapGEST/API/app/Http/Controllers/ApplicantsController.php +++ b/canapGEST/API/app/Http/Controllers/ApplicantsController.php @@ -74,10 +74,10 @@ class ApplicantsController extends Controller ->get(); } } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } else { - return abort(404, lang::get('http.notfound')); + return response()->json(['error' => 404, 'message' => lang::get('http.notfound')], 404); } } @@ -90,12 +90,12 @@ class ApplicantsController extends Controller $data = AccessLevelHelper::hasPermittedRole($this->user_role, 'formateur') ? $this->getOne($id, true) : $this->getOne($id, false); if ($data['personal_data'] == null) { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } else { return response()->json($data, 200); } } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -108,7 +108,7 @@ class ApplicantsController extends Controller DB::table('applicant')->where('applicant_id', $id)->delete(); return ["message" => lang::get('http.success.deleted.application')]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -120,12 +120,12 @@ class ApplicantsController extends Controller $tmp_file_path = sys_get_temp_dir() . '\\' .$id .'-export.json'; $json = AccessLevelHelper::hasPermittedRole($this->user_role, 'formateur') ? json_encode($this->getOne($id, true)) : json_encode($this->getOne($id, false)); if (json_decode($json)->personal_data == null) { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } File::put($tmp_file_path, $json); return response()->download($tmp_file_path, $id .'-export.json', ['Content-Type' => 'application/json'])->deleteFileAfterSend(true); } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } diff --git a/canapGEST/API/app/Http/Controllers/CommentsController.php b/canapGEST/API/app/Http/Controllers/CommentsController.php index 8e93099..f47149e 100644 --- a/canapGEST/API/app/Http/Controllers/CommentsController.php +++ b/canapGEST/API/app/Http/Controllers/CommentsController.php @@ -35,7 +35,7 @@ class CommentsController extends Controller $private_comments = DB::table('comment')->where('fk_applicant_id', $id)->where('comment_is_private', 1)->where('comment_owner_sciper', $this->user_sciper)->get(); return ["public" => $public_comments, "private" => $private_comments]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -70,7 +70,7 @@ class CommentsController extends Controller ]); return ["message" => lang::get('http.success.created.comment'), "id" => $inserted_id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -81,7 +81,7 @@ class CommentsController extends Controller DB::table('comment')->where('comment_id', $id)->where('comment_owner_sciper', $this->user_sciper)->delete(); return ["message" => lang::get('http.success.deleted.comment')]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -105,7 +105,7 @@ class CommentsController extends Controller ]); return ["message" => lang::get('http.success.updated.comment'), "id" => $id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } diff --git a/canapGEST/API/app/Http/Controllers/FilesController.php b/canapGEST/API/app/Http/Controllers/FilesController.php index 803dbbe..00004d8 100644 --- a/canapGEST/API/app/Http/Controllers/FilesController.php +++ b/canapGEST/API/app/Http/Controllers/FilesController.php @@ -35,7 +35,7 @@ class FilesController extends Controller $file = DB::table('file')->where('file_id', $id)->first(); return response()->download($file->file_path); } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } } diff --git a/canapGEST/API/app/Http/Controllers/MarkersController.php b/canapGEST/API/app/Http/Controllers/MarkersController.php index 1a166d6..82b7f95 100644 --- a/canapGEST/API/app/Http/Controllers/MarkersController.php +++ b/canapGEST/API/app/Http/Controllers/MarkersController.php @@ -21,23 +21,6 @@ class MarkersController extends Controller $this->user_permissions = $this->request->get('user_permissions'); } - // public function getApplicantMarkers($id) - // { - // // Not usefull anymore - // $applicant_job = DB::table('applicant') - // ->join('position', 'applicant.fk_position', '=', 'position.position_id') - // ->join('job', 'position.fk_job', '=', 'job.job_id') - // ->where('applicant_id', $id) - // ->pluck('job_short_value')->first(); - - // $has_access = AccessLevelHelper::hasAccessToJob($applicant_job, $this->user_permissions); - // if ($has_access) { - // return DB::table('marker')->where('fk_applicant_id', $id)->get(); - // } else { - // return abort(403, lang::get('http.unauthorized')); - // } - // } - public function getUserMarkerOnApplicant($id) { $marker = DB::table('marker')->where('fk_applicant_id', $id)->where('marker_owner_sciper', $this->user_sciper)->first(); @@ -69,7 +52,7 @@ class MarkersController extends Controller ]); return ["message" => lang::get('http.success.created.marker'), "id" => $inserted_id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -85,7 +68,7 @@ class MarkersController extends Controller DB::table('marker')->where('marker_id', $id)->update(['marker_value' => $new_value]); return ["message" => lang::get('http.success.updated.marker'), "id" => $id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -96,7 +79,7 @@ class MarkersController extends Controller DB::table('marker')->where('marker_id', $id)->where('marker_owner_sciper', $this->user_sciper)->delete(); return ["message" => lang::get('http.success.deleted.marker')]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } } diff --git a/canapGEST/API/app/Http/Controllers/PositionsController.php b/canapGEST/API/app/Http/Controllers/PositionsController.php index 770f772..0ca0d8c 100644 --- a/canapGEST/API/app/Http/Controllers/PositionsController.php +++ b/canapGEST/API/app/Http/Controllers/PositionsController.php @@ -64,7 +64,7 @@ class PositionsController extends Controller ]); return ["message" => lang::get('http.success.created.position'), "id" => $inserted_id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -95,7 +95,7 @@ class PositionsController extends Controller ]); return ["message" => lang::get('http.success.updated.position'), "id" => $id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -107,13 +107,13 @@ class PositionsController extends Controller if ($wanted_position_exists && $has_permitted_role) { if ($wanted_position_in_use) { - return abort(403, lang::get('http.error.deleted.position')); + return response()->json(['error' => 403, 'message' => lang::get('http.error.deleted.position')], 403); } else { DB::table('position')->where('position_id', $id)->delete(); return ["message" => lang::get('http.success.deleted.position')]; } } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -132,7 +132,7 @@ class PositionsController extends Controller ]); return ["message" => lang::get('http.success.created.location'), "id" => $inserted_id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } @@ -153,7 +153,7 @@ class PositionsController extends Controller ]); return ["message" => lang::get('http.success.created.job'), "id" => $inserted_id]; } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } } diff --git a/canapGEST/API/app/Http/Controllers/StatusController.php b/canapGEST/API/app/Http/Controllers/StatusController.php index 81e28a2..cda9a93 100644 --- a/canapGEST/API/app/Http/Controllers/StatusController.php +++ b/canapGEST/API/app/Http/Controllers/StatusController.php @@ -45,10 +45,10 @@ class StatusController extends Controller DB::table('applicant')->where('applicant_id', $id)->update(['fk_status' => $new_status]); return ["message" => lang::get('http.success.updated.status'), "id" => $id]; } else { - return abort(404, lang::get('http.notfound')); + return response()->json(['error' => 404, 'message' => lang::get('http.notfound')], 404); } } else { - return abort(403, lang::get('http.unauthorized')); + return response()->json(['error' => 403, 'message' => lang::get('http.unauthorized')], 403); } } } \ No newline at end of file diff --git a/canapGEST/Documentation/journal_travail.xlsx b/canapGEST/Documentation/journal_travail.xlsx index c37596b56131b66192fb845f233594cb0bc6d536..7078266c97cd726736da63548b1bab511b932ef6 100644 GIT binary patch delta 4454 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 delta 4428 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 SGgJWxlTkDy2GlSB00019sxS)x diff --git a/canapGEST/Site/src/plugins/axios.js b/canapGEST/Site/src/plugins/axios.js index 927f930..660eb3b 100644 --- a/canapGEST/Site/src/plugins/axios.js +++ b/canapGEST/Site/src/plugins/axios.js @@ -1,5 +1,6 @@ import axios from 'axios' import store from '@/store/store.js' +import router from '@/router/index.js' const instance = axios.create({ headers: { 'Authorization': "Bearer " + localStorage.getItem('stored_token') }, @@ -16,6 +17,8 @@ instance.interceptors.response.use(function (response) { // Erreur de token store.commit('moduleSnackbar/toggle', { open: true, message: error.response.data.error, type: 'warning' }, { root: true }) store.dispatch('moduleUser/logout', false) + } else if (error.response.status == 403 || error.response.status == 404) { + router.push({ name: 'error', params: { status: error.response.data.error, message: error.response.data.message, route: '' } }) } else { // Affichage des erreurs (snackbar) Object.values(error.response.data).forEach(errMsg => { diff --git a/canapGEST/Site/src/router/index.js b/canapGEST/Site/src/router/index.js index 80a69e4..a3319c5 100644 --- a/canapGEST/Site/src/router/index.js +++ b/canapGEST/Site/src/router/index.js @@ -19,14 +19,14 @@ router.beforeEach((to, from, next) => { // Routes limitées aux responsables let deniedRoutes = ['/openjobs'] if (deniedRoutes.includes(to.fullPath)) { - return next({ name: 'error', params: { status: 403, route: to.path } }) + return next({ name: 'error', params: { status: 403, route: to.path, message: 'Action non autorisée' } }) } } if (routeLimitation == 'formateur' && userRole == 'responsable') { // Routes limitées aux formateurs let deniedRoutes = ['/favourites'] if (deniedRoutes.includes(to.fullPath)) { - return next({ name: 'error', params: { status: 403, route: to.path } }) + return next({ name: 'error', params: { status: 403, route: to.path, message: 'Action non autorisée' } }) } } return next() diff --git a/canapGEST/Site/src/views/ErrorView.vue b/canapGEST/Site/src/views/ErrorView.vue index d0a4dc8..a63942c 100644 --- a/canapGEST/Site/src/views/ErrorView.vue +++ b/canapGEST/Site/src/views/ErrorView.vue @@ -1,8 +1,9 @@ <template> - <div id="error-view" class="align-center"> - <h1>ERREUR !</h1> - {{status}} + <div id="error-view" class="text-xs-center"> + <h1>Erreur {{status}}</h1> {{route}} + <p>{{message}}</p> + <v-btn @click="$router.push('/')">Retour</v-btn> </div> </template> @@ -11,10 +12,8 @@ export default { name: 'error-view', props: { status: Number, - route: String + route: String, + message: String } } </script> - -<style> -</style> -- GitLab