New: Show user status in user lists.

This commit is contained in:
Laurent Destailleur 2011-04-06 19:54:06 +00:00
parent b90f539243
commit b8c4359961
4 changed files with 39 additions and 26 deletions

View File

@ -5,6 +5,7 @@ $Id$
***** ChangeLog for 3.1 compared to 3.0 ***** ***** ChangeLog for 3.1 compared to 3.0 *****
For users: For users:
- New: Status is visible into user list.
- New: Support BSB code for bank account in australia. - New: Support BSB code for bank account in australia.
- New: Can set date of payment for autocreate invoice/payment when - New: Can set date of payment for autocreate invoice/payment when
creating a foundation subscription. creating a foundation subscription.

View File

@ -1591,9 +1591,9 @@ class User extends CommonObject
/** /**
* \brief Retourne le libelle du statut d'un user (actif, inactif) * Retourne le libelle du statut d'un user (actif, inactif)
* \param mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long * @param mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long
* \return string Libelle * @return string Label of status
*/ */
function getLibStatut($mode=0) function getLibStatut($mode=0)
{ {
@ -1601,10 +1601,10 @@ class User extends CommonObject
} }
/** /**
* \brief Renvoi le libelle d'un statut donne * Renvoi le libelle d'un statut donne
* \param statut Id statut * @param statut Id statut
* \param mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto * @param mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto
* \return string Libelle du statut * @return string Label of status
*/ */
function LibStatut($statut,$mode=0) function LibStatut($statut,$mode=0)
{ {

View File

@ -220,7 +220,7 @@ if ($_POST["action"] == 'update')
llxHeader('',$langs->trans("GroupCard")); llxHeader('',$langs->trans("GroupCard"));
$html = new Form($db); $html = new Form($db);
$fuserstatic = new User($db);
if ($action == 'create') if ($action == 'create')
{ {
@ -377,7 +377,7 @@ else
if (!empty($idList)) if (!empty($idList))
{ {
$sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin"; $sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin, u.statut";
$sql.= " FROM ".MAIN_DB_PREFIX."user as u"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u";
$sql.= " WHERE u.entity IN (0,".$conf->entity.")"; $sql.= " WHERE u.entity IN (0,".$conf->entity.")";
$sql.= " AND u.rowid NOT IN (".$idList.")"; $sql.= " AND u.rowid NOT IN (".$idList.")";
@ -404,7 +404,7 @@ else
} }
else else
{ {
$sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin"; $sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin, u.statut";
$sql.= " FROM ".MAIN_DB_PREFIX."user as u"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u";
$sql.= " WHERE u.entity IN (0,".$conf->entity.")"; $sql.= " WHERE u.entity IN (0,".$conf->entity.")";
$sql.= " ORDER BY u.name"; $sql.= " ORDER BY u.name";
@ -450,7 +450,7 @@ else
/* /*
* Membres du groupe * Membres du groupe
*/ */
$sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin, u.entity"; $sql = "SELECT u.rowid, u.login, u.name, u.firstname, u.admin, u.entity, u.statut";
$sql.= " FROM ".MAIN_DB_PREFIX."user as u"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u";
$sql.= ", ".MAIN_DB_PREFIX."usergroup_user as ug"; $sql.= ", ".MAIN_DB_PREFIX."usergroup_user as ug";
$sql.= " WHERE ug.fk_user = u.rowid"; $sql.= " WHERE ug.fk_user = u.rowid";
@ -468,8 +468,10 @@ else
print '<td class="liste_titre" width="25%">'.$langs->trans("Login").'</td>'; print '<td class="liste_titre" width="25%">'.$langs->trans("Login").'</td>';
print '<td class="liste_titre" width="25%">'.$langs->trans("Lastname").'</td>'; print '<td class="liste_titre" width="25%">'.$langs->trans("Lastname").'</td>';
print '<td class="liste_titre" width="25%">'.$langs->trans("Firstname").'</td>'; print '<td class="liste_titre" width="25%">'.$langs->trans("Firstname").'</td>';
print '<td class="liste_titre" align="right">'.$langs->trans("Status").'</td>';
print '<td>&nbsp;</td>'; print '<td>&nbsp;</td>';
print "<td>&nbsp;</td></tr>\n"; print "<td>&nbsp;</td>";
print "</tr>\n";
if ($num) { if ($num) {
$var=True; $var=True;
while ($i < $num) while ($i < $num)
@ -491,11 +493,13 @@ else
print '</td>'; print '</td>';
print '<td>'.ucfirst(stripslashes($obj->name)).'</td>'; print '<td>'.ucfirst(stripslashes($obj->name)).'</td>';
print '<td>'.ucfirst(stripslashes($obj->firstname)).'</td>'; print '<td>'.ucfirst(stripslashes($obj->firstname)).'</td>';
print '<td>&nbsp;</td><td>'; $fuserstatic->id=$obj->id;
$fuserstatic->statut=$obj->statut;
print '<td align="right">'.$fuserstatic->getLibStatut(5).'</td>';
print '<td>&nbsp;</td>';
print '<td align="right">';
if ($user->admin) if ($user->admin)
{ {
print '<a href="fiche.php?id='.$group->id.'&amp;action=removeuser&amp;user='.$obj->rowid.'">'; print '<a href="fiche.php?id='.$group->id.'&amp;action=removeuser&amp;user='.$obj->rowid.'">';
print img_delete($langs->trans("RemoveFromGroup")); print img_delete($langs->trans("RemoveFromGroup"));
} }

View File

@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net> /* Copyright (C) 2005-2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2010 Regis Houssin <regis@dolibarr.fr> * Copyright (C) 2005-2010 Regis Houssin <regis@dolibarr.fr>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
@ -25,10 +25,11 @@
require("../main.inc.php"); require("../main.inc.php");
if (! $user->rights->user->user->lire && !$user->admin) if (! $user->rights->user->user->lire && ! $user->admin)
{ {
// Redirection vers la page de l'utilisateur // Redirection vers la page de l'utilisateur
Header("Location: fiche.php?id=".$user->id); Header("Location: fiche.php?id=".$user->id);
exit;
} }
$langs->load("users"); $langs->load("users");
@ -44,6 +45,8 @@ $socid=0;
if ($user->societe_id > 0) $socid = $user->societe_id; if ($user->societe_id > 0) $socid = $user->societe_id;
$companystatic = new Societe($db); $companystatic = new Societe($db);
$fuserstatic = new User($db);
/* /*
* View * View
@ -90,12 +93,11 @@ print '</td><td valign="top" width="70%" class="notopnoleftnoright">';
/* /*
* Derniers utilisateurs crees * Last created users
*/ */
$max=10; $max=10;
$sql = "SELECT u.rowid, u.name, u.firstname, u.admin, u.login, u.fk_societe, u.datec,"; $sql = "SELECT u.rowid, u.name, u.firstname, u.admin, u.login, u.fk_societe, u.datec, u.statut, u.entity, u.ldap_sid,";
$sql.= " u.entity, u.ldap_sid,";
$sql.= " s.nom, s.canvas"; $sql.= " s.nom, s.canvas";
$sql.= " FROM ".MAIN_DB_PREFIX."user as u"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON u.fk_societe = s.rowid"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON u.fk_societe = s.rowid";
@ -109,7 +111,7 @@ if ($resql)
{ {
$num = $db->num_rows($resql); $num = $db->num_rows($resql);
print '<table class="noborder" width="100%">'; print '<table class="noborder" width="100%">';
print '<tr class="liste_titre"><td colspan="4">'.$langs->trans("LastUsersCreated",min($num,$max)).'</td></tr>'; print '<tr class="liste_titre"><td colspan="5">'.$langs->trans("LastUsersCreated",min($num,$max)).'</td></tr>';
$var = true; $var = true;
$i = 0; $i = 0;
@ -145,6 +147,12 @@ if ($resql)
else print $langs->trans("InternalUser"); else print $langs->trans("InternalUser");
print '</td>'; print '</td>';
print '<td align="right">'.dol_print_date($db->jdate($obj->datec),'dayhour').'</td>'; print '<td align="right">'.dol_print_date($db->jdate($obj->datec),'dayhour').'</td>';
print '<td align="right">';
$fuserstatic->id=$obj->id;
$fuserstatic->statut=$obj->statut;
print $fuserstatic->getLibStatut(3);
print '</td>';
print '</tr>'; print '</tr>';
$i++; $i++;
} }
@ -164,13 +172,13 @@ else
if ($canreadperms) if ($canreadperms)
{ {
$max=5; $max=5;
$sql = "SELECT g.rowid, g.nom, g.note, g.entity, g.datec"; $sql = "SELECT g.rowid, g.nom, g.note, g.entity, g.datec";
$sql.= " FROM ".MAIN_DB_PREFIX."usergroup as g"; $sql.= " FROM ".MAIN_DB_PREFIX."usergroup as g";
$sql.= " WHERE g.entity IN (0,".$conf->entity.")"; $sql.= " WHERE g.entity IN (0,".$conf->entity.")";
$sql.= $db->order("g.datec","DESC"); $sql.= $db->order("g.datec","DESC");
$sql.= $db->plimit($max); $sql.= $db->plimit($max);
$resql=$db->query($sql); $resql=$db->query($sql);
if ($resql) if ($resql)
{ {
@ -179,12 +187,12 @@ if ($canreadperms)
print '<tr class="liste_titre"><td colspan="2">'.$langs->trans("LastGroupsCreated",($num ? $num : $max)).'</td></tr>'; print '<tr class="liste_titre"><td colspan="2">'.$langs->trans("LastGroupsCreated",($num ? $num : $max)).'</td></tr>';
$var = true; $var = true;
$i = 0; $i = 0;
while ($i < $num && (! $max || $i < $max)) while ($i < $num && (! $max || $i < $max))
{ {
$obj = $db->fetch_object($resql); $obj = $db->fetch_object($resql);
$var=!$var; $var=!$var;
print "<tr $bc[$var]>"; print "<tr $bc[$var]>";
print '<td><a href="'.DOL_URL_ROOT.'/user/group/fiche.php?id='.$obj->rowid.'">'.img_object($langs->trans("ShowGroup"),"group").' '.$obj->nom.'</a>'; print '<td><a href="'.DOL_URL_ROOT.'/user/group/fiche.php?id='.$obj->rowid.'">'.img_object($langs->trans("ShowGroup"),"group").' '.$obj->nom.'</a>';
if (!$obj->entity) if (!$obj->entity)
@ -197,7 +205,7 @@ if ($canreadperms)
$i++; $i++;
} }
print "</table><br>"; print "</table><br>";
$db->free($resql); $db->free($resql);
} }
else else