@@ -32,7 +32,7 @@ |
||
32 | 32 | $report_end_date = $request->report_end_date ? Carbon::parse($request->report_end_date) : Carbon::parse($period->end); |
33 | 33 | |
34 | 34 | // if we are dealing with a complete period, add theoretical volumes |
35 | - if (! $request->report_start_date && ! $request->report_end_date) { |
|
35 | + if (!$request->report_start_date && !$request->report_end_date) { |
|
36 | 36 | // ensure the report end date is not before the end date to avoid inconsistent results. |
37 | 37 | $report_end_date = $report_start_date->max($report_end_date); |
38 | 38 |
@@ -24,6 +24,6 @@ |
||
24 | 24 | |
25 | 25 | public function build() |
26 | 26 | { |
27 | - return $this->subject('Facturation ' . $this->data['partner_name'])->view('emails.external_courses_report'); |
|
27 | + return $this->subject('Facturation '.$this->data['partner_name'])->view('emails.external_courses_report'); |
|
28 | 28 | } |
29 | 29 | } |
@@ -32,7 +32,7 @@ |
||
32 | 32 | // foreach partner with an alert set for this day of month |
33 | 33 | foreach (Partner::where('send_report_on', Carbon::now()->day)->get() as $partner) { |
34 | 34 | // get all courses |
35 | - $courses = $partner->courses()->whereHas('events', function (Builder $query) use ($period_start, $period_end) { |
|
35 | + $courses = $partner->courses()->whereHas('events', function(Builder $query) use ($period_start, $period_end) { |
|
36 | 36 | $query->where('start', '>=', $period_start->toDateString())->where('end', '<=', $period_end->toDateString()); |
37 | 37 | }) |
38 | 38 | ->with('events')->withCount('events') |
@@ -20,7 +20,7 @@ discard block |
||
20 | 20 | |
21 | 21 | $this->hideSensitiveRequestDetails(); |
22 | 22 | |
23 | - Telescope::filter(function (IncomingEntry $entry) { |
|
23 | + Telescope::filter(function(IncomingEntry $entry) { |
|
24 | 24 | if ($this->app->isLocal()) { |
25 | 25 | return true; |
26 | 26 | } |
@@ -61,7 +61,7 @@ discard block |
||
61 | 61 | */ |
62 | 62 | protected function gate() |
63 | 63 | { |
64 | - Gate::define('viewTelescope', function ($user = null) { |
|
64 | + Gate::define('viewTelescope', function($user = null) { |
|
65 | 65 | return backpack_user() && backpack_user()->email === config('app.admin_email'); |
66 | 66 | }); |
67 | 67 | } |
@@ -46,8 +46,7 @@ discard block |
||
46 | 46 | 'preciototal' => $product->final_price, |
47 | 47 | 'valoriva' => 0, |
48 | 48 | ]; |
49 | - } |
|
50 | - elseif ($product->product instanceof Fee) |
|
49 | + } elseif ($product->product instanceof Fee) |
|
51 | 50 | { |
52 | 51 | $ivkardex[] = [ |
53 | 52 | 'codinventario' => $product->product_code, |
@@ -58,8 +57,7 @@ discard block |
||
58 | 57 | 'preciototal' => $product->final_price, |
59 | 58 | 'valoriva' => 0, |
60 | 59 | ]; |
61 | - } |
|
62 | - elseif ($product->product instanceof Book) |
|
60 | + } elseif ($product->product instanceof Book) |
|
63 | 61 | { |
64 | 62 | $ivkardex[] = [ |
65 | 63 | 'codinventario' => $product->product_code, |
@@ -27,9 +27,9 @@ |
||
27 | 27 | { |
28 | 28 | Log::info('launching API'); |
29 | 29 | $response = Http::post(config('lms.apolearn.url') . '/auth.gettoken', [ |
30 | - 'api_key' => $this->apiKey, |
|
31 | - 'username' => config('lms.apolearn.username'), |
|
32 | - 'password' => config('lms.apolearn.password'), |
|
30 | + 'api_key' => $this->apiKey, |
|
31 | + 'username' => config('lms.apolearn.username'), |
|
32 | + 'password' => config('lms.apolearn.password'), |
|
33 | 33 | ]); |
34 | 34 | |
35 | 35 | return $response['result'] ?? ""; |
@@ -26,7 +26,7 @@ discard block |
||
26 | 26 | public function authenticate() : string |
27 | 27 | { |
28 | 28 | Log::info('launching API'); |
29 | - $response = Http::post(config('lms.apolearn.url') . '/auth.gettoken', [ |
|
29 | + $response = Http::post(config('lms.apolearn.url').'/auth.gettoken', [ |
|
30 | 30 | 'api_key' => $this->apiKey, |
31 | 31 | 'username' => config('lms.apolearn.username'), |
32 | 32 | 'password' => config('lms.apolearn.password'), |
@@ -37,9 +37,9 @@ discard block |
||
37 | 37 | |
38 | 38 | public function createUser(User $user, ?string $password = null) : void |
39 | 39 | { |
40 | - Log::info('checking if user exists for local ID ' . $user->id); |
|
40 | + Log::info('checking if user exists for local ID '.$user->id); |
|
41 | 41 | // first check if the user already exists (email) |
42 | - $response = Http::get(config('lms.apolearn.url') . "/users/getbyemail/$user->email", [ |
|
42 | + $response = Http::get(config('lms.apolearn.url')."/users/getbyemail/$user->email", [ |
|
43 | 43 | 'auth_token' => $this->token, |
44 | 44 | 'api_key' => $this->apiKey, |
45 | 45 | ]); |
@@ -63,7 +63,7 @@ discard block |
||
63 | 63 | $data = Arr::add($data, 'password', $password); |
64 | 64 | } |
65 | 65 | |
66 | - $response = Http::post(config('lms.apolearn.url') . '/users', $data); |
|
66 | + $response = Http::post(config('lms.apolearn.url').'/users', $data); |
|
67 | 67 | |
68 | 68 | if ($this->actionSucceeded($response)) { |
69 | 69 | $user->update(['lms_id' => $response->json()['result']['id']]); |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | $data = Arr::add($data, 'password', $password); |
92 | 92 | } |
93 | 93 | |
94 | - $response = Http::put(config('lms.apolearn.url') . '/users/' . $user->lms_id, $data); |
|
94 | + $response = Http::put(config('lms.apolearn.url').'/users/'.$user->lms_id, $data); |
|
95 | 95 | } |
96 | 96 | } |
97 | 97 | |
@@ -102,8 +102,8 @@ discard block |
||
102 | 102 | abort(422, 'This course already exists on the remote platform'); |
103 | 103 | } |
104 | 104 | |
105 | - Log::info('pushing local course ' . $course->id . ' to API'); |
|
106 | - $response = Http::post(config('lms.apolearn.url') . '/classrooms', [ |
|
105 | + Log::info('pushing local course '.$course->id.' to API'); |
|
106 | + $response = Http::post(config('lms.apolearn.url').'/classrooms', [ |
|
107 | 107 | "name" => $course->name, |
108 | 108 | "shortname" => $course->shortname, |
109 | 109 | "description" => $course->description, |
@@ -121,7 +121,7 @@ discard block |
||
121 | 121 | $course->update(['lms_id' => $courseId]); |
122 | 122 | |
123 | 123 | // assign an admin to the new class |
124 | - $response = Http::post(config('lms.apolearn.url') . "/classrooms/addadmin/$courseId", [ |
|
124 | + $response = Http::post(config('lms.apolearn.url')."/classrooms/addadmin/$courseId", [ |
|
125 | 125 | 'user_id' => config('lms.apolearn.admin_user_id'), |
126 | 126 | 'auth_token' => $this->token, |
127 | 127 | 'api_key' => $this->apiKey, |
@@ -137,8 +137,8 @@ discard block |
||
137 | 137 | $this->createCourse($course); |
138 | 138 | } |
139 | 139 | |
140 | - Log::info('updating course with locale ID' . $course->id); |
|
141 | - $response = Http::put(config('lms.apolearn.url') . "/classrooms/$course->lms_id", [ |
|
140 | + Log::info('updating course with locale ID'.$course->id); |
|
141 | + $response = Http::put(config('lms.apolearn.url')."/classrooms/$course->lms_id", [ |
|
142 | 142 | "name" => $course->name, |
143 | 143 | "shortname" => $course->shortname, |
144 | 144 | "description" => $course->description, |
@@ -153,14 +153,14 @@ discard block |
||
153 | 153 | |
154 | 154 | Log::info('updating the course teacher'); |
155 | 155 | // ensure the teacher is up to date |
156 | - $response = Http::get(config('lms.apolearn.url') . "/classrooms/teachers/$course->lms_id", [ |
|
156 | + $response = Http::get(config('lms.apolearn.url')."/classrooms/teachers/$course->lms_id", [ |
|
157 | 157 | 'auth_token' => $this->token, |
158 | 158 | 'api_key' => $this->apiKey, |
159 | 159 | ]); |
160 | 160 | |
161 | 161 | if ($this->actionSucceeded($response)) { |
162 | 162 | $teachers = collect($response->json()['result']['users']); |
163 | - Log::info('found these teachers IDs on LMS:' . implode(', ', $teachers->pluck('id')->toArray())); |
|
163 | + Log::info('found these teachers IDs on LMS:'.implode(', ', $teachers->pluck('id')->toArray())); |
|
164 | 164 | |
165 | 165 | // if the course has no teacher, stop |
166 | 166 | if (!$course->teacher) { |
@@ -171,9 +171,9 @@ discard block |
||
171 | 171 | } else { |
172 | 172 | // check if remote course teachers are still valid |
173 | 173 | foreach ($teachers as $teacher) { |
174 | - Log::info('comparing ' . $teacher['id'] . ' and ' . $course->teacher->user->lms_id); |
|
174 | + Log::info('comparing '.$teacher['id'].' and '.$course->teacher->user->lms_id); |
|
175 | 175 | if ($teacher['id'] !== $course->teacher->user->lms_id) { |
176 | - Log::info('Removing teacher ' . $teacher['id'] . ' from course'); |
|
176 | + Log::info('Removing teacher '.$teacher['id'].' from course'); |
|
177 | 177 | $this->removeTeacher($course->lms_id, $teacher['id']); |
178 | 178 | } |
179 | 179 | } |
@@ -199,7 +199,7 @@ discard block |
||
199 | 199 | $this->createUser($student->user); |
200 | 200 | } |
201 | 201 | |
202 | - $response = Http::post(config('lms.apolearn.url') . "/classrooms/addstudent/$courseId", [ |
|
202 | + $response = Http::post(config('lms.apolearn.url')."/classrooms/addstudent/$courseId", [ |
|
203 | 203 | 'user_id' => $student->user->lms_id, |
204 | 204 | 'auth_token' => $this->token, |
205 | 205 | 'api_key' => $this->apiKey, |
@@ -219,7 +219,7 @@ discard block |
||
219 | 219 | if ($course->teacher_id) |
220 | 220 | { |
221 | 221 | // if the teacher doesn't exist on LMS, create them |
222 | - if (! $course->teacher->user->lms_id) { |
|
222 | + if (!$course->teacher->user->lms_id) { |
|
223 | 223 | Log::info('creating user now'); |
224 | 224 | $this->createUser($course->teacher->user); |
225 | 225 | } |
@@ -236,7 +236,7 @@ discard block |
||
236 | 236 | |
237 | 237 | protected function removeTeacher($courseId, $teacherId): void |
238 | 238 | { |
239 | - Log::info('Removing teacher ' . $teacherId . ' from course ' . $courseId); |
|
239 | + Log::info('Removing teacher '.$teacherId.' from course '.$courseId); |
|
240 | 240 | $response = Http::put(config('lms.apolearn.url')."/classrooms/removeteacher/$courseId", [ |
241 | 241 | 'user_id' => $teacherId, |
242 | 242 | 'auth_token' => $this->token, |
@@ -249,7 +249,7 @@ discard block |
||
249 | 249 | |
250 | 250 | public function removeStudent($courseId, $userId): void |
251 | 251 | { |
252 | - Log::info('removing user id ' . $userId . ' from course ' . $courseId); |
|
252 | + Log::info('removing user id '.$userId.' from course '.$courseId); |
|
253 | 253 | $response = Http::put(config('lms.apolearn.url')."/classrooms/removestudent/$courseId", [ |
254 | 254 | 'user_id' => $userId, |
255 | 255 | 'auth_token' => $this->token, |
@@ -25,7 +25,7 @@ |
||
25 | 25 | $subscriberGroups = $this->subscribersApi->getGroups($email); // returns array of group objects subscriber belongs to |
26 | 26 | |
27 | 27 | foreach ($subscriberGroups as $group) { |
28 | - $groupId = $array = json_decode(json_encode($group),true); |
|
28 | + $groupId = $array = json_decode(json_encode($group), true); |
|
29 | 29 | $this->groupsApi->removeSubscriber($groupId['id'], $email); // returns empty response |
30 | 30 | } |
31 | 31 |
@@ -34,12 +34,12 @@ discard block |
||
34 | 34 | */ |
35 | 35 | protected function schedule(Schedule $schedule) |
36 | 36 | { |
37 | - $schedule->call(function () { |
|
37 | + $schedule->call(function() { |
|
38 | 38 | Log::info('Sending attendance reminders'); |
39 | 39 | $this->remindPendingAttendance(); |
40 | 40 | })->dailyAt('08:15'); |
41 | 41 | |
42 | - $schedule->call(function () { |
|
42 | + $schedule->call(function() { |
|
43 | 43 | Log::info('Checking default periods'); |
44 | 44 | |
45 | 45 | // when we finish the current period; remove the manual override to automatically fallbackto the next one |
@@ -57,14 +57,14 @@ discard block |
||
57 | 57 | })->dailyAt('00:00'); |
58 | 58 | |
59 | 59 | if (config('settings.partnership_alerts')) { |
60 | - $schedule->call(function () { |
|
60 | + $schedule->call(function() { |
|
61 | 61 | Log::info('Checking expired partnerships'); |
62 | 62 | |
63 | 63 | // if one of the partnerships is expiring soon, send an email |
64 | - $partners = Partner::where(function ($query) { |
|
64 | + $partners = Partner::where(function($query) { |
|
65 | 65 | $query->whereNotNull('expired_on')->where('expired_on', '<', Carbon::now()->addDays(28)); |
66 | 66 | }) |
67 | - ->where(function ($query) { |
|
67 | + ->where(function($query) { |
|
68 | 68 | $query->whereNull('last_alert_sent_at')->orWhere('last_alert_sent_at', '>', Carbon::now()->subDays(28))->get(); |
69 | 69 | }); |
70 | 70 | |
@@ -75,14 +75,14 @@ discard block |
||
75 | 75 | } |
76 | 76 | |
77 | 77 | if (config('settings.external_courses_report')) { |
78 | - $schedule->call(function () { |
|
78 | + $schedule->call(function() { |
|
79 | 79 | Log::info('Sending external courses reports'); |
80 | 80 | event(new ExternalCoursesReportEvent()); |
81 | 81 | })->dailyAt('02:10'); |
82 | 82 | } |
83 | 83 | |
84 | 84 | if (config('settings.monthly_report')) { |
85 | - $schedule->call(function () { |
|
85 | + $schedule->call(function() { |
|
86 | 86 | Log::info('Sending monthly hours report'); |
87 | 87 | event(new MonthlyReportEvent()); |
88 | 88 | })->monthlyOn(20); |
@@ -45,14 +45,14 @@ discard block |
||
45 | 45 | $course = Course::find($entry->course_id); |
46 | 46 | $matchFound = false; |
47 | 47 | |
48 | - echo "\nMigrating grades from course " . $course->id; |
|
48 | + echo "\nMigrating grades from course ".$course->id; |
|
49 | 49 | |
50 | 50 | // collect all grade types associated to this course. |
51 | 51 | $courseGradeTypes = DB::table('course_grade_type')->where('course_id', $entry->course_id)->pluck('grade_type_id'); |
52 | 52 | // if this configuration matches an evaluation type, use it, otherwise create it |
53 | 53 | foreach (EvaluationType::has('gradeTypes')->get() as $evaluationType) { |
54 | 54 | if ($courseGradeTypes->diff($evaluationType->gradeTypes->pluck('id'))->count() == 0) { |
55 | - echo "match with eval type " . $evaluationType->id; |
|
55 | + echo "match with eval type ".$evaluationType->id; |
|
56 | 56 | $course->update(['evaluation_type_id' => $evaluationType->id]); |
57 | 57 | $matchFound = true; |
58 | 58 | } |
@@ -61,7 +61,7 @@ discard block |
||
61 | 61 | // if no match has been found |
62 | 62 | if (!$matchFound) { |
63 | 63 | echo "no match; creating new eval type"; |
64 | - $evalType = EvaluationType::create(['name' => 'cours ' . $entry->course_id]); |
|
64 | + $evalType = EvaluationType::create(['name' => 'cours '.$entry->course_id]); |
|
65 | 65 | $evalType->gradeTypes()->sync($courseGradeTypes); |
66 | 66 | } |
67 | 67 | |
@@ -74,7 +74,7 @@ discard block |
||
74 | 74 | $course = Course::find($entry->course_id); |
75 | 75 | $matchFound = false; |
76 | 76 | |
77 | - echo "\nMigrating skills from course " . $course->id; |
|
77 | + echo "\nMigrating skills from course ".$course->id; |
|
78 | 78 | |
79 | 79 | // collect all grade types associated to this course. |
80 | 80 | $courseSkills = DB::table('course_skill')->where('course_id', $entry->course_id)->pluck('skill_id'); |
@@ -90,7 +90,7 @@ discard block |
||
90 | 90 | // if no match has been found |
91 | 91 | if (!$matchFound) { |
92 | 92 | $levelName = isset($course->level) ? $course->level->name : $course->id; |
93 | - $evalType = EvaluationType::create(['name' => 'Niveau ' . $levelName]); |
|
93 | + $evalType = EvaluationType::create(['name' => 'Niveau '.$levelName]); |
|
94 | 94 | $evalType->skills()->sync($courseSkills); |
95 | 95 | } |
96 | 96 | } |