8 | | Корисниците се најавуваат со внесување на својата е-пошта. Системот проверува дали внесената е-пошта постои во базата на податоци. Доколку постои, корисникот добива пристап до својот профил и услугите. Ако не постои, системот го информира дека внесената е-пошта не е регистрирана. |
| 8 | Корисникот се најавува со внесување на својата е-пошта. Системот врши валидација: |
| 9 | 1. Проверува дали е внесена е-пошта (полето не смее да е празно). |
| 10 | 2. Проверува дали внесениот податок е валидна е-пошта. |
| 11 | 3. Проверува дали внесената е-пошта постои во базата на податоци. |
| 12 | {{{ |
| 13 | SELECT id_user, email |
| 14 | FROM travel_sage.users |
| 15 | WHERE email = 'vlatko.todorov@mail.com'; |
| 16 | }}} |
| 17 | Доколку корисникот постои во база му овозможува пристап кон preferences. |
| 18 | |
10 | | 1. Корисникот ја отвора страницата за најава. Се прикажува формата за најава со следното поле: Е-пошта (name="eposhta") |
11 | | 2. Корисникот притиска на копчето „Најави се“. |
12 | | 3. Системот ги верификува внесените податоци: |
13 | | 4. Дали полето за е-пошта е пополнето (required) |
14 | | 5. Дали е внесена валидна е-пошта (email) |
15 | | 6. Дали е-поштата постои во базата на податоци (преку exists:korisnici,eposhta) |
16 | | {{{ |
17 | | SELECT * FROM korisnici WHERE ePoshta = 'john@example.com'; |
18 | | }}} |
19 | | * Ако е-поштата постои: |
20 | | Корисникот се пренасочува на preferences |
| 20 | Ако не врати ништо, системот прикажува порака:Е-поштата не е регистрирана. Ве молиме регистрирајте се прво. |
26 | | {{{ |
27 | | public function login(Request $request): \Illuminate\Http\RedirectResponse |
28 | | { |
29 | | $request->validate([ |
30 | | 'eposhta' => 'required|email|exists:travel_sage_users,eposhta', |
31 | | ]); |
32 | | |
33 | | $korisnik = TravelSageUser::where('eposhta', $request->eposhta)->first(); |
34 | | |
35 | | session(['korisnik_id' => $korisnik->id]); |
36 | | |
37 | | return redirect()->route('preferences')->with('success', 'Успешно најавување!'); |
38 | | } |
39 | | |
40 | | }}} |
41 | | === Алтернативен тек |
42 | | Ако не е внесена е-пошта, системот прикажува порака за грешка: |
43 | | „Ве молиме внесете ја е-поштата.“ |
44 | | Корисникот ја пополнува и повторно клика „Најави се“ |
| 26 | Корисникот го пополнува полето и повторно се обидува за најава. |