| | 1 | = Регистрација на Корисник |
| | 2 | |
| | 3 | == Актери |
| | 4 | * Нерегистриран корисник |
| | 5 | |
| | 6 | == Чекор 1 |
| | 7 | Корисникот кликнува на копчето „Register“. |
| | 8 | [[Image(register-1.jpg, width=600px)]] |
| | 9 | |
| | 10 | == Чекор 2 |
| | 11 | Системот прикажува форма за регистрација |
| | 12 | [[Image(register-2.jpg, width=600px)]] |
| | 13 | |
| | 14 | == Чекор 3 |
| | 15 | Корисникот ги внесува бараните податоци во формата и кликнува на копчето „Register“. |
| | 16 | [[Image(register-3.jpg, width=600px)]] |
| | 17 | |
| | 18 | |
| | 19 | == Чекор 4 |
| | 20 | Системот ги проверува внесените податоци и проверува дали веќе постои корисник со истиот емаил во базата. |
| | 21 | |
| | 22 | {{{ |
| | 23 | SELECT user_id |
| | 24 | FROM "User" |
| | 25 | WHERE email = $1; |
| | 26 | }}} |
| | 27 | |
| | 28 | * Ако постои корисник со истиот емаил, системот ја прикажува пораката: |
| | 29 | |
| | 30 | {{{ |
| | 31 | Email already registered |
| | 32 | }}} |
| | 33 | |
| | 34 | и процесот на регистрација се прекинува. |
| | 35 | |
| | 36 | == Чекор 5 |
| | 37 | Доколку емаил адресата не постои во базата, системот ја хешира лозинката и креира нов запис во табелата `User`. |
| | 38 | |
| | 39 | {{{ |
| | 40 | INSERT INTO "User" (full_name, email, phone, password_hash) |
| | 41 | VALUES ($1, $2, $3, $4) |
| | 42 | RETURNING user_id, full_name, email, phone; |
| | 43 | }}} |
| | 44 | |
| | 45 | == Чекор 6 |
| | 46 | Системот му доделува основна улога на корисникот: |
| | 47 | |
| | 48 | {{{ |
| | 49 | INSERT INTO UserRole (user_id, role_id) |
| | 50 | VALUES ($1, 1); |
| | 51 | }}} |
| | 52 | |
| | 53 | == Чекор 7 |
| | 54 | Системот креира лојалти картичка за корисникот со почетни поени 0: |
| | 55 | |
| | 56 | {{{ |
| | 57 | INSERT INTO LoyaltyCard (user_id, points) |
| | 58 | VALUES ($1, 0); |
| | 59 | }}} |
| | 60 | |
| | 61 | == Чекор 8 |
| | 62 | Системот прикажува порака дека регистрацијата е успешна и го проследува корисникот. |