PROJET-WEB_STRI1A/WEB/ressources/user.php

133 lines
3.7 KiB
PHP
Raw Normal View History

<?php
function loginChange($user, $login)
{
return strcmp($user['login'], $login);
}
function isLoginUniqueModifier($db, $mail, $login)
{
$result = pg_query_params($db, "SELECT login FROM Utilisateur WHERE login = $1 AND mail != $2;", array($login, $mail));
if ($result) {
$row = pg_fetch_array($result);
return (strcmp($row['login'], $login) != 0);
}
return false;
}
function modifierLogin($db, $mail, $login)
{
$result = pg_query_params($db, "UPDATE Utilisateur SET login = $1 WHERE mail = $2;", array($login, $mail));
return $result;
}
function modifierUtilisateur($db, $mail, $prenom, $nom, $password, $phone)
{
$result = pg_query_params($db, "UPDATE Utilisateur SET prenom = $1, nom = $2, telephone = $3 , passwd = $4 WHERE mail = $5;", array($prenom, $nom, $phone, $password, $mail));
return $result;
}
function getUser($db, $mail)
{
$result = pg_query_params($db, "SELECT * FROM Utilisateur WHERE mail = $1;", array($mail));
return pg_fetch_array($result);
}
function getPrenom($db, $mail)
{
$result = pg_query_params($db, "SELECT prenom from Utilisateur WHERE mail = $1;", array($mail));
if ($result) {
$row = pg_fetch_array($result);
$prenom = $row[0];
return $prenom;
}
return false;
}
function getLogin($db, $mail)
{
$result = pg_query_params($db, "SELECT login from Utilisateur WHERE mail = $1;", array($mail));
if ($result) {
$row = pg_fetch_array($result);
$login = $row[0];
return $login;
}
return false;
}
function getPathImgProfilTableau($mail)
{
$list = scandir($_SERVER['DOCUMENT_ROOT'] . "/imageProfil");
foreach ($list as $entry) {
if (strpos($entry, $mail) !== false) {
return "../imageProfil/$entry";
}
}
return "../imageProfil/default.svg";
}
function getPathImgProfil($mail)
{
$list = scandir($_SERVER['DOCUMENT_ROOT'] . "/imageProfil");
foreach ($list as $entry) {
if (strpos($entry, $mail) !== false) {
return "./imageProfil/$entry";
}
}
return "./imageProfil/default.svg";
}
function supprimerAvatar($mail)
{
$list = scandir($_SERVER['DOCUMENT_ROOT'] . "/imageProfil");
foreach ($list as $entry) {
if (strpos($entry, $mail) !== false) {
unlink($_SERVER['DOCUMENT_ROOT'] . "/imageProfil/$entry");
}
}
}
function isMailUnique($db, $mail)
{
$result = pg_query_params($db, "SELECT * FROM Utilisateur WHERE mail = $1;", array($mail));
if ($result) {
$row = pg_fetch_array($result);
return (strcmp($row['mail'], $mail) != 0);
}
return false;
}
function isLoginUnique($db, $login)
{
$result = pg_query_params($db, "SELECT * FROM Utilisateur WHERE login = $1;", array($login));
if ($result) {
$row = pg_fetch_array($result);
return (strcmp($row['login'], $login) != 0);
}
return false;
}
function creerUtilisateur($db, $mail, $password, $prenom, $nom, $login, $phone, $dateN)
{
$result = pg_query_params($db, "INSERT INTO Utilisateur VALUES ($1, $2, $3, $4, $5, $6, to_date($7, 'YYYY/MM/DD'), false);", array($mail, $password, $prenom, $nom, $login, $phone, $dateN));
return $result;
}
function uploadAvatar($mail, $fic)
{
$tmp = explode('.', $fic['name']);
$extension = end($tmp);
$target_file = "./imageProfil/$mail.$extension";
$file_tmp = $fic['tmp_name'];
$check = getimagesize($file_tmp);
if ($check === false or !in_array($extension, array('png', 'jpg', 'jpeg', 'pjpeg', 'jfif', 'pjp'))) {
return -1;
} else if ($fic['size'] > 2 * 1024 * 1024) {
return -2;
} else {
if(!move_uploaded_file($file_tmp, $target_file)){
return -3;
}
}
return 0;
}