Merge pull request #71 from ThomasRubini/manage-users-view
This commit is contained in:
commit
d0648e30d0
@ -20,19 +20,19 @@ final class ManageUserController
|
||||
|
||||
private function searchViewAction(Array $A_urlParams = null, Array $A_postParams = null, Array $A_getParams = null)
|
||||
{
|
||||
View::show("manageUser/search");
|
||||
View::show("manageUser/manage_users", array("QUERY" => null));
|
||||
}
|
||||
|
||||
private function searchQueryViewAction(Array $A_urlParams = null, Array $A_postParams = null, Array $A_getParams = null)
|
||||
{
|
||||
$S_query = $A_getParams["query"];
|
||||
|
||||
$A_results = UserModel::searchUsers($S_query);
|
||||
var_dump($A_results);
|
||||
|
||||
echo "Terme de recherche choisi: $S_query";
|
||||
|
||||
View::show("manageUser/search");
|
||||
$A_results = UserModel::searchUsers($S_query);
|
||||
|
||||
View::show("manageUser/manage_users", array(
|
||||
"QUERY" => $S_query,
|
||||
"RESULTS" => $A_results)
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -66,6 +66,12 @@ final class UserModel extends UserSessionModel
|
||||
$stmt->execute();
|
||||
}
|
||||
|
||||
private static function createFromRow($A_row, $I_ID){
|
||||
$O_user = new UserModel($A_row["EMAIL"],$A_row["USERNAME"],$A_row["PASS_HASH"],$A_row["LAST_SEEN"],$A_row["FIRST_SEEN"],$A_row["ADMIN"],$A_row["DISABLED"]);
|
||||
$O_user->I_ID = $I_ID;
|
||||
return $O_user;
|
||||
}
|
||||
|
||||
public static function getByID($I_id){
|
||||
$O_model = Model::get();
|
||||
$stmt = $O_model->prepare("SELECT * FROM USER WHERE ID=:id");
|
||||
@ -75,9 +81,7 @@ final class UserModel extends UserSessionModel
|
||||
$row = $stmt->fetch();
|
||||
if ($row === false) return null;
|
||||
|
||||
$O_user = new UserModel($row["EMAIL"],$row["USERNAME"],$row["PASS_HASH"],$row["LAST_SEEN"],$row["FIRST_SEEN"],$row["ADMIN"],$row["DISABLED"]);
|
||||
$O_user->I_ID = $I_id;
|
||||
return $O_user;
|
||||
return self::createFromRow($row, $I_id);
|
||||
}
|
||||
|
||||
public static function isEmailInDatabase($S_email){
|
||||
@ -117,11 +121,15 @@ final class UserModel extends UserSessionModel
|
||||
return $row["PROFILE_PIC"];
|
||||
}
|
||||
|
||||
public function getProfilePicLink(){
|
||||
return "/user/profilePic/".$this->I_ID;
|
||||
}
|
||||
|
||||
public static function searchUsers($S_query)
|
||||
{
|
||||
$O_model = Model::get();
|
||||
$stmt = $O_model->prepare("
|
||||
SELECT ID, EMAIL, USERNAME
|
||||
SELECT *
|
||||
FROM USER
|
||||
WHERE USER.USERNAME LIKE :full_query
|
||||
OR USER.EMAIL LIKE :full_query
|
||||
@ -130,8 +138,13 @@ final class UserModel extends UserSessionModel
|
||||
$S_full_query = "%".$S_query."%";
|
||||
$stmt->bindParam("full_query", $S_full_query);
|
||||
$stmt->execute();
|
||||
$rows = $stmt->fetchAll();
|
||||
return $rows;
|
||||
|
||||
$A_users = array();
|
||||
foreach($stmt->fetchAll() as $row){
|
||||
array_push($A_users, self::createFromRow($row, $row["ID"]));
|
||||
}
|
||||
|
||||
return $A_users;
|
||||
}
|
||||
|
||||
public static function anonymiseByID($I_id){
|
||||
|
40
Views/manageUser/manage_users.php
Normal file
40
Views/manageUser/manage_users.php
Normal file
@ -0,0 +1,40 @@
|
||||
<main>
|
||||
<h1 class="accounts_management_title">Gestion de comptes</h1>
|
||||
<form method="GET" action="/manageUser/search">
|
||||
<label for="username">Saisissez un nom d'utilisateur</label>
|
||||
<input type="search" id="username" name="query" placeholder="Nom de l'utilisateur">
|
||||
</form>
|
||||
<section>
|
||||
<?php
|
||||
$S_query = $A_view["QUERY"];
|
||||
if ($S_query === null) {
|
||||
echo '<h2 class="username_required_title">Nom d\'utilisateur requis</h2>
|
||||
<p class="username_required_description">Un nom d\'utilisateur est requis pour gérer des utilisateurs.</p>';
|
||||
} else {
|
||||
$A_results = $A_view["RESULTS"];
|
||||
echo '<h3 class="username_searched">' . $S_query . '</h3>';
|
||||
if (empty($A_results)) {
|
||||
echo '<h2 class="no_user_results_title">Aucun résultat</h2>
|
||||
<p class="no_user_results_description">Vérifiez l\'orthographe et la casse de votre saisie.</p>';
|
||||
} else {
|
||||
echo '<ul class="user_account_list">';
|
||||
|
||||
foreach ($A_results as $O_user) {
|
||||
echo '<li class="user_account" data-id="' . $O_user->I_ID . '">
|
||||
<img class="user_acccount_picture" src=' . $O_user->getProfilePicLink() . ' alt="Photo de profil de ' . $O_user->S_USERNAME . '">
|
||||
<h3 class="user_account_name">' . $O_user->S_USERNAME . '</h3>
|
||||
</li>';
|
||||
}
|
||||
|
||||
echo '</ul>
|
||||
<form method="POST" action="manage_users">
|
||||
<input id="accounts_to_manage" type="text" hidden>
|
||||
<input type="submit" name="enable" value="Activer">
|
||||
<input type="submit" name="disable" value="Désactiver">
|
||||
<input type="submit" value="Supprimer">
|
||||
</form>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</section>
|
||||
</main>
|
@ -1,7 +0,0 @@
|
||||
<p> Default view </p>
|
||||
|
||||
<p> Please search : </p>
|
||||
<form action="/manageUser/search" method="GET">
|
||||
<input name="query">
|
||||
<input type="submit" value="Chercher">
|
||||
</form>
|
Loading…
Reference in New Issue
Block a user