| | 13 | |
| | 14 | == Чекор 3 |
| | 15 | Корисникот ја пополнува формата со емаил и лозинка кои биле дефинирани за време на процесот на регистрација. |
| | 16 | |
| | 17 | == Чекор 4 |
| | 18 | Корисникот кликнува на копчето „Login“. |
| | 19 | |
| | 20 | == Чекор 5 |
| | 21 | Системот ги проверува внесените податоци со податоците во базата. |
| | 22 | Се извршува пребарување по внесениот емаил: |
| | 23 | |
| | 24 | {{{ |
| | 25 | SELECT user_id, full_name, email, phone, password_hash, created_at |
| | 26 | FROM "User" |
| | 27 | WHERE email = $1; |
| | 28 | }}} |
| | 29 | |
| | 30 | * Ако не постои корисник со таков емаил, системот прикажува порака: |
| | 31 | |
| | 32 | {{{ |
| | 33 | Invalid email or password |
| | 34 | }}} |
| | 35 | |
| | 36 | * Ако постои корисник, системот ја проверува точноста на лозинката со споредување на внесената вредност со хешираната лозинка во базата: |
| | 37 | |
| | 38 | {{{ |
| | 39 | bcrypt.compare(password, password_hash) |
| | 40 | }}} |
| | 41 | |
| | 42 | * Ако лозинката не е точна, системот повторно прикажува: |
| | 43 | |
| | 44 | {{{ |
| | 45 | Invalid email or password |
| | 46 | }}} |
| | 47 | |
| | 48 | == Чекор 6 |
| | 49 | По успешна валидација на креденцијалите, системот ги вчитува улогите на корисникот: |
| | 50 | |
| | 51 | {{{ |
| | 52 | SELECT r.name |
| | 53 | FROM UserRole ur |
| | 54 | JOIN Role r ON ur.role_id = r.role_id |
| | 55 | WHERE ur.user_id = $1; |
| | 56 | }}} |
| | 57 | |
| | 58 | == Чекор 7 |
| | 59 | Корисникот добива порака за успешна најава и е автоматски пренасочен кон страницата „Профил“, каде што има преглед на сопствените информации. |
| | 60 | [[Image(login-3.jpg, width=600px)]] |