Skip to content

Commit

Permalink
amélioration : inclusion du nom du bénéficiaire extérieur dans les ra…
Browse files Browse the repository at this point in the history
…pports
  • Loading branch information
ynaessens committed Nov 28, 2019
1 parent da96a01 commit 3d5eb3e
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 13 deletions.
2 changes: 1 addition & 1 deletion include/functions.inc.php
Expand Up @@ -3813,7 +3813,7 @@ function date_time_string($t, $dformat)
$ampm = date("a",$t);
$timeformat = "%I:%M$ampm";
}
return utf8_strftime($dformat.$timeformat, $t);
return utf8_strftime($dformat." ".$timeformat, $t);
}
# Convertit un créneau de début et de fin en un tableau donnant la date de début et la durée
function describe_period_span2($starts, $ends)
Expand Down
47 changes: 35 additions & 12 deletions report.php
Expand Up @@ -87,9 +87,9 @@
else
settype($_GET["sumby"],"integer");
$sortby = isset($_GET["sortby"])? $_GET["sortby"] : "d";
// Si la table j_user_area est vide, il faut modifier la requête
// Si la table j_user_area est vide, il faut modifier la requête
$test_grr_j_user_area = grr_sql_count(grr_sql_query("SELECT * FROM ".TABLE_PREFIX."_j_user_area"));
// Report on one entry. See below for columns in $row[].
// Report on one entry. See below for columns in $row[].
function reporton(&$row, $dformat)
{
global $vocab, $enable_periods, $tablOverload;
Expand All @@ -107,7 +107,7 @@ function reporton(&$row, $dformat)
echo "<td>".$room."</td>";
// Breve description (title), avec un lien
$breve_description = affichage_lien_resa_planning($row[3],$row[0]);
$breve_description = "<a href=\"view_entry.php?id=$row[0]\">". $breve_description . "</a>";
$breve_description = "<a href=\"view_entry.php?id=$row[0]&amp;mode=page\">". $breve_description . "</a>";
echo "<td>".$breve_description."</td>\n";
// From date-time and duration:
echo "<td>";
Expand Down Expand Up @@ -135,12 +135,21 @@ function reporton(&$row, $dformat)
if ($et == -1)
$et = "?".$row[5]."?";
echo "<td>".$et."</td>\n";
//Affichage de "créée par"
//Bénéficiaire
$sql_beneficiaire = "SELECT prenom, nom FROM ".TABLE_PREFIX."_utilisateurs WHERE login = '".$row[6]."'";
$res_beneficiaire = grr_sql_query($sql_beneficiaire);
$aff_beneficiaire = " ";
if ($res_beneficiaire)
{
$row_user = grr_sql_row($res_beneficiaire, 0);
echo "<td>".htmlspecialchars($row_user[0]) ." ". htmlspecialchars($row_user[1])."</td>";
$aff_beneficiaire = htmlspecialchars($row_user[0]) ." ". htmlspecialchars($row_user[1]);
}
if ($aff_beneficiaire == " ")
{
$benef_ext = explode('|',$row[15]);
$aff_beneficiaire = htmlspecialchars($benef_ext[0]);
}
echo "<td>".$aff_beneficiaire."</td>";
//Affichage de la date de la dernière mise à jour
echo "<td>". date_time_string($row[7],$dformat) . "</td>\n";
// X Colonnes champs additionnels
Expand Down Expand Up @@ -256,7 +265,7 @@ function accumulate_periods(&$row, &$count, &$hours, $report_start, $report_end,
$room_hash[$room] = 1;
$breve_description_hash[$breve_description] = 1;
}
//Table contenant un compteur (int) et une heure (float):
//Table contenant un compteur (int) et une heure (float):
function cell($count, $hours, $csv = "n", $decompte = "heure")
{
if ($csv == "n")
Expand Down Expand Up @@ -628,20 +637,24 @@ function do_summary(&$count, &$hours, &$room_hash, &$breve_description_hash, $en
// 9 [8] Area (HTML) -> a.area_name
// 10 [9] Room (HTML) -> r.room_name
// 11 [10] Room description -> r.description
// 12 [11] id de l'area -> a.id
// 13 [12] les champs additionnels -> e.overload_desc
// Tableau des ressources invisibles pour l'utilisateur
// 12 [11] Room order display -> r.order_display
// 13 [12] Nom du type -> t.type_name
// 14 [13] id de l'area -> a.id
// 15 [14] les champs additionnels -> e.overload_desc
// 16 [15] bénéficiaire extérieur -> e.beneficiaire_ext
$sql = "SELECT distinct e.id, e.start_time, e.end_time, e.name, e.description, "
. "e.type, e.beneficiaire, "
. grr_sql_syntax_timestamp_to_unix("e.timestamp")
. ", a.area_name, r.room_name, r.description, r.order_display, t.type_name, a.id, e.overload_desc" // suggestion lenma pour compatibilité MySQL 5.7+
. ", e.beneficiaire_ext"
. " FROM ".TABLE_PREFIX."_entry e, ".TABLE_PREFIX."_area a, ".TABLE_PREFIX."_room r, ".TABLE_PREFIX."_type_area t";
// Si l'utilisateur n'est pas administrateur, seuls les domaines auxquels il a accès sont pris en compte
if (authGetUserLevel(getUserName(),-1) < 6)
if ($test_grr_j_user_area != 0)
$sql .= ", ".TABLE_PREFIX."_j_user_area j ";
$sql .= " WHERE e.room_id = r.id AND r.area_id = a.id";
// on ne cherche pas parmi les ressources invisibles pour l'utilisateur
// Tableau des ressources invisibles pour l'utilisateur
$tab_rooms_noaccess = verif_acces_ressource(getUserName(), 'all');
foreach ($tab_rooms_noaccess as $key)
{
Expand Down Expand Up @@ -708,7 +721,7 @@ function do_summary(&$count, &$hours, &$room_hash, &$breve_description_hash, $en
else if ( $sortby == "c" )
//Trié par: réservant, Area, room, debut, date/heure.
//$sql .= " ORDER BY e.beneficiaire,9,r.order_display,10,2";
$sql .= " ORDER BY e.beneficiaire,a.area_name,r.order_display,r.room_name,e.start_time";
$sql .= " ORDER BY e.beneficiaire,e.beneficiaire_ext,a.area_name,r.order_display,r.room_name,e.start_time";
else if ( $sortby == "b" )
//Trié par: breve_description, Area, room, debut, date/heure.
//$sql .= " ORDER BY e.name,9,r.order_display,10,2";
Expand Down Expand Up @@ -918,8 +931,18 @@ function do_summary(&$count, &$hours, &$room_hash, &$breve_description_hash, $en

for ($i = 0; ($row = grr_sql_row($res, $i)); $i++)
{
//Affichage de "créé par"
echo ($row[6]) . ";";
// Bénéficiaire (evt extérieur)
$aff_beneficiaire = " ";
if ($row[6] != "")
{
$aff_beneficiaire = htmlspecialchars($row[6]);
}
else
{
$benef_ext = explode('|',$row[15]);
$aff_beneficiaire = htmlspecialchars($benef_ext[0]);
}
echo ($aff_beneficiaire) . ";";
//Area
echo (removeMailUnicode($row[8])) . ";";
//Ressource
Expand Down

0 comments on commit 3d5eb3e

Please sign in to comment.