Teme proiect Programare Web

Proiectați un site Web cu minim 4 pagini. Dintre acestea, minim două vor avea acces restricționat cu user și parolă. Utilizatorii și parolele lor vor fi stocate într-o tabela MySQL cu numele x_utilizatori, unde x este numele contului de utilizator de pe severul ie.usv.ro, de ex: romascana_utilizatori.

Autentificarea se va face cu cookies sau sesiuni, la alegere. Trimiterea datelor de autentificare din formularul de autentificare se va face cu AJAX, pur JavaScript sau cu jQuery, de asemenea la alegere. După autentificare, pe site va apărea un link de dezautentificare, vizibil din orice pagină. Suplimentar se va afișa, la loc vizibil, mesajul „Logged as username”, unde username este numele cu care utilizatorul s-a autentificat.
Utilizatorii cu drept de acces la paginile protejate sunt de doua tipuri: utilizatori obișnuiți și administratori. Când un utilizator se autentifică ca administrator, va fi direcționat pe o pagină de administrare de unde, printr-un formular, va putea:

  • Adăuga noi utilizatori,
  • Vizualiza utilizatorii existenți,
  • Edita utilizatorii existenți (modifica drepturile și șterge).

Utilizatorii vor fi notificați, printr-un banner, că site-ul utilizează cookies. Bannerul va conține un buton „Accept”, care va ascunde bannerul. Acest banner este afișat o singură dată: după ce utilizatorul apasă „Accept”, el nu va mai fi afișat, indiferent în ce pagina navighează utilizatorul, cel puțin până la închiderea navigatorului. După dezautentificare, link-ul de dezautentificare, ca și mesajul „Logged as username” vor dispărea.

Cerințe particularizate

Studenții din Clasa A (Petriceanu, Pricop, Marian, Brutaru, Candrea Marta, Sajin, Miron), vor respecta următoarele cerințe:

  • meniul de navigare va afișa, în mod permanent, butoane către paginile protejate. Când oricare dintre aceste butoane este acționat, se va afișa o fereastră modală de autentificare unde, după caz, se vor afișa și erorile de autentificare. Dacă autentificarea este reușită, fereastra modală se închide și utilizatorul va fi direcționat către pagina corespunzătoare butonului apăsat.
  • În pagina de administrare, lista utilizatorilor va conține, în dreptul fiecărui utilizator, pictograme pentru editarea sau ștergerea acestora.

Studenții din clasa B (ceilalți), vor respecta următoarele cerințe:

  • Meniul de navigare nu va afișa decât butoanele pentru paginile neprotejate. Pentru autentificare va fi afișat un link „Login”, vizibil din orice pagină. La acționarea lui se va deschide o fereastră modală pentru introducerea datelor de autentificare, cu afișarea erorilor, după caz. Dacă autentificarea reușește, fereastra se închide iar link-ul se transformă din „Login” în „Logout”. Suplimentar, se vor afișa în meniul de navigare butoanele de acces la paginile care necesită autentificare. Dacă utilizatorul este autentificat ca administrator, va apărea și butonul „Administrare”, care conduce la pagina de administrare.
  • Lista utilizatorilor va conține instrumente pentru schimbarea rolului utilizatorului sau ștergerea acestuia (de exemplu, doua butoane radio pe coloana „Rol”, din care este „checked” cel corespunzător rolului curent. Prin apăsarea celuilalt buton se schimbă rolul, prin modificarea înregistrării din tabela x_utilizatori. Pentru ștergere poate fi folosit un simplu link cu text sau un simbol ❌ sau 🗑