} else { $demi_j_fin = "aprm"; } $sql_p_nb_jours = $resultat2["p_nb_jours"]; $sql_p_commentaire = $resultat2["p_commentaire"]; //$sql_p_type = $resultat2["p_type"]; $sql_p_type = $resultat2["ta_libelle"]; $sql_p_etat = $resultat2["p_etat"]; $sql_p_motif_refus = $resultat2["p_motif_refus"]; $sql_p_date_demande = $resultat2["p_date_demande"]; $sql_p_date_traitement = $resultat2["p_date_traitement"]; echo '<tr class="' . ($i ? 'i' : 'p') . '">'; echo '<td class="histo">' . schars($sql_p_date_deb) . ' _ ' . schars($demi_j_deb) . '</td>'; echo '<td class="histo">' . schars($sql_p_date_fin) . ' _ ' . schars($demi_j_fin) . '</td>'; echo '<td class="histo">' . schars($sql_p_type) . '</td>'; echo '<td class="histo">' . affiche_decimal($sql_p_nb_jours) . '</td>'; echo '<td class="histo">' . schars($sql_p_commentaire) . '</td>'; echo "<td>"; if ($sql_p_etat == "refus") { echo _('divers_refuse'); } elseif ($sql_p_etat == "annul") { echo _('divers_annule'); } else { echo schars($sql_p_etat); } echo "</td>\n"; if ($sql_p_etat == "refus") { if ($sql_p_motif_refus == "") { $sql_p_motif_refus = _('divers_inconnu'); } echo '<td class="histo">' . schars($sql_p_motif_refus) . '</td>' . "\n";
function affiche_all_demandes_en_cours($tab_type_conges, $DEBUG = FALSE) { $PHP_SELF = $_SERVER['PHP_SELF']; $session = session_id(); $count1 = 0; $count2 = 0; $tab_type_all_abs = recup_tableau_tout_types_abs(); // recup du tableau des types de conges (seulement les conges exceptionnels) $tab_type_conges_exceptionnels = array(); if ($_SESSION['config']['gestion_conges_exceptionnels']) { $tab_type_conges_exceptionnels = recup_tableau_types_conges_exceptionnels($DEBUG); } /*********************************/ // Récupération des informations /*********************************/ // Récup dans un tableau de tableau des informations de tous les users dont $_SESSION['userlogin'] est responsable sauf lui meme $tab_all_users_du_resp = recup_infos_all_users_du_resp($_SESSION['userlogin'], $DEBUG); if ($DEBUG) { echo "tab_all_users_du_resp :<br>\n"; print_r($tab_all_users_du_resp); echo "<br><br>\n"; } // si tableau des users du resp n'est pas vide if (count($tab_all_users_du_resp) != 0) { // constitution de la liste (séparé par des virgules) des logins ... $list_users_du_resp = ""; foreach ($tab_all_users_du_resp as $current_login => $tab_current_user) { if ($list_users_du_resp == "") { $list_users_du_resp = "'{$current_login}'"; } else { $list_users_du_resp = $list_users_du_resp . ", '{$current_login}'"; } } } // Récup dans un tableau de tableau des informations de tous les users dont $_SESSION['userlogin'] est GRAND responsable if ($_SESSION['config']['double_validation_conges']) { $tab_all_users_du_grand_resp = recup_infos_all_users_du_grand_resp($_SESSION['userlogin'], $DEBUG); // si tableau des users du grand resp n'est pas vide if (count($tab_all_users_du_grand_resp) != 0) { // constitution de la liste (séparé par des virgules) des logins ... $list_users_du_grand_resp = ""; foreach ($tab_all_users_du_grand_resp as $current_login => $tab_current_user) { if ($list_users_du_grand_resp == "") { $list_users_du_grand_resp = "'{$current_login}'"; } else { $list_users_du_grand_resp = $list_users_du_grand_resp . ", '{$current_login}'"; } } } } /*********************************/ echo " <form action=\"{$PHP_SELF}?session={$session}&onglet=traitement_demandes\" method=\"POST\"> \n"; /*********************************/ /* TABLEAU DES DEMANDES DES USERS DONT ON EST LE RESP */ /*********************************/ // si tableau des users du resp n'est pas vide if (count($tab_all_users_du_resp) != 0) { // Récup des demandes en cours pour les users dont $_SESSION['userlogin'] est responsable : $sql1 = "SELECT p_num, p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_date_demande, p_date_traitement FROM conges_periode "; $sql1 = $sql1 . " WHERE p_etat =\"demande\" "; if ($_SESSION['config']['responsable_virtuel']) { $sql1 = $sql1 . " AND p_login != 'conges' "; } else { $sql1 = $sql1 . " AND p_login IN ({$list_users_du_resp}) "; } $sql1 = $sql1 . " ORDER BY p_num"; $ReqLog1 = SQL::query($sql1); $count1 = $ReqLog1->num_rows; if ($count1 != 0) { // AFFICHAGE TABLEAU DES DEMANDES EN COURS echo "<h3>" . _('resp_traite_demandes_titre_tableau_1') . "</h3>\n"; echo "<table cellpadding=\"2\" class=\"tablo\">\n"; echo '<thead>'; echo '<tr>'; echo '<th>' . _('divers_nom_maj_1') . "<br>" . _('divers_prenom_maj_1') . '</th>'; echo '<th>' . _('divers_quotite_maj_1') . '</th>'; echo '<th>' . _('divers_debut_maj_1') . '</th>'; echo '<th>' . _('divers_fin_maj_1') . '</th>'; echo '<th>' . _('divers_comment_maj_1') . '</th>'; echo '<th>' . _('resp_traite_demandes_nb_jours') . '</th>'; foreach ($tab_type_conges as $id_conges => $libelle) { echo '<th>' . _('divers_solde_maj_1') . "<br>{$libelle}</th>"; } if ($_SESSION['config']['gestion_conges_exceptionnels']) { foreach ($tab_type_conges_exceptionnels as $id_conges => $libelle) { echo '<th>' . _('divers_solde_maj_1') . "<br>{$libelle}</th>"; } } echo '<th>' . _('divers_type_maj_1') . '</th>'; echo '<th>' . _('divers_accepter_maj_1') . '</th>'; echo '<th>' . _('divers_refuser_maj_1') . '</th>'; echo '<th>' . _('resp_traite_demandes_attente') . '</th>'; echo '<th>' . _('resp_traite_demandes_motif_refus') . '</th>'; if ($_SESSION['config']['affiche_date_traitement']) { echo '<th>' . _('divers_date_traitement') . '</th>'; } echo '</tr>'; echo '</thead>'; echo '<tbody>'; $i = true; $tab_bt_radio = array(); while ($resultat1 = $ReqLog1->fetch_array()) { /** sur la ligne , **/ /** le 1er bouton radio est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--OK"> */ /** et le 2ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--not_OK"> */ /** et le 3ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--RIEN"> */ $sql_p_date_deb = $resultat1["p_date_deb"]; $sql_p_date_fin = $resultat1["p_date_fin"]; $sql_p_date_deb_fr = eng_date_to_fr($resultat1["p_date_deb"]); $sql_p_date_fin_fr = eng_date_to_fr($resultat1["p_date_fin"]); $sql_p_demi_jour_deb = $resultat1["p_demi_jour_deb"]; $sql_p_demi_jour_fin = $resultat1["p_demi_jour_fin"]; $sql_p_commentaire = $resultat1["p_commentaire"]; $sql_p_num = $resultat1["p_num"]; $sql_p_login = $resultat1["p_login"]; $sql_p_nb_jours = affiche_decimal($resultat1["p_nb_jours"]); $sql_p_type = $resultat1["p_type"]; $sql_p_date_demande = $resultat1["p_date_demande"]; $sql_p_date_traitement = $resultat1["p_date_traitement"]; if ($sql_p_demi_jour_deb == "am") { $demi_j_deb = "mat"; } else { $demi_j_deb = "aprm"; } if ($sql_p_demi_jour_fin == "am") { $demi_j_fin = "mat"; } else { $demi_j_fin = "aprm"; } // on construit la chaine qui servira de valeur à passer dans les boutons-radio $chaine_bouton_radio = "{$sql_p_login}--{$sql_p_nb_jours}--{$sql_p_type}--{$sql_p_date_deb}--{$sql_p_demi_jour_deb}--{$sql_p_date_fin}--{$sql_p_demi_jour_fin}"; // si le user fait l'objet d'une double validation on a pas le meme resultat sur le bouton ! if ($tab_all_users_du_resp[$sql_p_login]['double_valid'] == "Y") { // si on est a la fois resp et grand resp if (count($tab_all_users_du_grand_resp) != 0 && array_key_exists($sql_p_login, $tab_all_users_du_grand_resp)) { $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; } else { //on est QUe resp $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--VALID\">"; } } else { $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; } $boutonradio2 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--not_OK\">"; $boutonradio3 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--RIEN\" checked>"; $text_refus = "<input type=\"text\" name=\"tab_text_refus[{$sql_p_num}]\" size=\"20\" max=\"100\">"; echo '<tr class="' . ($i ? 'i' : 'p') . '">'; echo "<td><b>" . $tab_all_users_du_resp[$sql_p_login]['nom'] . "</b><br>" . $tab_all_users_du_resp[$sql_p_login]['prenom'] . "</td><td>" . $tab_all_users_du_resp[$sql_p_login]['quotite'] . "%</td>"; echo "<td>{$sql_p_date_deb_fr} _ {$demi_j_deb}</td><td>{$sql_p_date_fin_fr} _ {$demi_j_fin}</td><td>{$sql_p_commentaire}</td><td><b>{$sql_p_nb_jours}</b></td>"; $tab_conges = $tab_all_users_du_resp[$sql_p_login]['conges']; foreach ($tab_type_conges as $id_conges => $libelle) { echo '<td>' . $tab_conges[$libelle]['solde'] . '</td>'; } if ($_SESSION['config']['gestion_conges_exceptionnels']) { foreach ($tab_type_conges_exceptionnels as $id_conges => $libelle) { echo '<td>' . $tab_conges[$libelle]['solde'] . '</td>'; } } echo '<td>' . $tab_type_all_abs[$sql_p_type]['libelle'] . '</td>'; echo "<td>{$boutonradio1}</td><td>{$boutonradio2}</td><td>{$boutonradio3}</td><td>{$text_refus}</td>\n"; if ($_SESSION['config']['affiche_date_traitement']) { echo "<td class=\"histo-left\">" . _('divers_demande') . " : {$sql_p_date_demande}<br>" . _('divers_traitement') . " : {$sql_p_date_traitement}</td>\n"; } echo '</tr>'; $i = !$i; } // while echo '</tbody>'; echo '</table>'; } //if($count1!=0) } //if( count($tab_all_users_du_resp)!=0 ) /*********************************/ /* TABLEAU DES DEMANDES DES USERS DONT ON EST LE GRAND RESP */ /*********************************/ if ($_SESSION['config']['double_validation_conges']) { // si tableau des users du grand resp n'est pas vide if (count($tab_all_users_du_grand_resp) != 0) { // Récup des demandes en cours pour les users dont $_SESSION['userlogin'] est GRAND responsable : $sql2 = "SELECT p_num, p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_date_demande, p_date_traitement FROM conges_periode "; $sql2 = $sql2 . " WHERE p_etat =\"valid\" "; $sql2 = $sql2 . " AND p_login IN ({$list_users_du_grand_resp}) "; $sql2 = $sql2 . " ORDER BY p_num"; $ReqLog2 = SQL::query($sql2); $count2 = $ReqLog2->num_rows; if ($count2 != 0) { // AFFICHAGE TABLEAU DES DEMANDES EN COURS POUR DEUXIEME VALIDATION echo "<h3>" . _('resp_traite_demandes_titre_tableau_2') . "</h3>\n"; echo "<table cellpadding=\"2\" class=\"tablo\">\n"; echo '<thead>'; echo '<tr>'; echo "<th><b>" . _('divers_nom_maj_1') . "</b><br>" . _('divers_prenom_maj_1') . '</th>'; echo '<th>' . _('divers_quotite_maj_1') . '</th>'; echo '<th>' . _('divers_debut_maj_1') . '</th>'; echo '<th>' . _('divers_fin_maj_1') . '</th>'; echo '<th>' . _('divers_comment_maj_1') . '</th>'; echo '<th>' . _('resp_traite_demandes_nb_jours') . '</th>'; foreach ($tab_type_conges as $id_conges => $libelle) { echo '<th>' . _('divers_solde_maj_1') . "<br>{$libelle}</th>"; } echo '<th>' . _('divers_type_maj_1') . '</th>'; echo '<th>' . _('divers_accepter_maj_1') . '</th>'; echo '<th>' . _('divers_refuser_maj_1') . '</th>'; echo '<th>' . _('resp_traite_demandes_attente') . '</th>'; echo '<th>' . _('resp_traite_demandes_motif_refus') . '</th>'; if ($_SESSION['config']['affiche_date_traitement']) { echo '<th>' . _('divers_date_traitement') . '</th>'; } echo '</tr>'; echo '</thead>'; echo '<tbody>'; $tab_bt_radio = array(); $i = true; while ($resultat2 = $ReqLog2->fetch_array()) { /** sur la ligne , **/ /** le 1er bouton radio est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--OK"> */ /** et le 2ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--not_OK"> */ /** et le 3ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--RIEN"> */ $sql_p_date_deb = $resultat2["p_date_deb"]; $sql_p_date_fin = $resultat2["p_date_fin"]; $sql_p_date_deb_fr = eng_date_to_fr($resultat2["p_date_deb"]); $sql_p_date_fin_fr = eng_date_to_fr($resultat2["p_date_fin"]); $sql_p_demi_jour_deb = $resultat2["p_demi_jour_deb"]; $sql_p_demi_jour_fin = $resultat2["p_demi_jour_fin"]; $sql_p_commentaire = $resultat2["p_commentaire"]; $sql_p_num = $resultat2["p_num"]; $sql_p_login = $resultat2["p_login"]; $sql_p_nb_jours = affiche_decimal($resultat2["p_nb_jours"]); $sql_p_type = $resultat2["p_type"]; $sql_p_date_demande = $resultat2["p_date_demande"]; $sql_p_date_traitement = $resultat2["p_date_traitement"]; if ($sql_p_demi_jour_deb == "am") { $demi_j_deb = "mat"; } else { $demi_j_deb = "aprm"; } if ($sql_p_demi_jour_fin == "am") { $demi_j_fin = "mat"; } else { $demi_j_fin = "aprm"; } // on construit la chaine qui servira de valeur à passer dans les boutons-radio $chaine_bouton_radio = "{$sql_p_login}--{$sql_p_nb_jours}--{$sql_p_type}--{$sql_p_date_deb}--{$sql_p_demi_jour_deb}--{$sql_p_date_fin}--{$sql_p_demi_jour_fin}"; $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; $boutonradio2 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--not_OK\">"; $boutonradio3 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--RIEN\" checked>"; $text_refus = "<input type=\"text\" name=\"tab_text_refus[{$sql_p_num}]\" size=\"20\" max=\"100\">"; echo '<tr class="' . ($i ? 'i' : 'p') . '">'; echo "<td><b>" . $tab_all_users_du_grand_resp[$sql_p_login]['nom'] . "</b><br>" . $tab_all_users_du_grand_resp[$sql_p_login]['prenom'] . "</td><td>" . $tab_all_users_du_grand_resp[$sql_p_login]['quotite'] . "%</td>"; echo "<td>{$sql_p_date_deb_fr} _ {$demi_j_deb}</td><td>{$sql_p_date_fin_fr} _ {$demi_j_fin}</td><td>{$sql_p_commentaire}</td><td><b>{$sql_p_nb_jours}</b></td>"; $tab_conges = $tab_all_users_du_grand_resp[$sql_p_login]['conges']; foreach ($tab_type_conges as $id_conges => $libelle) { echo '<td>' . $tab_conges[$libelle]['solde'] . '</td>'; } echo '<td>' . $tab_type_all_abs[$sql_p_type]['libelle'] . '</td>'; echo "<td>{$boutonradio1}</td><td>{$boutonradio2}</td><td>{$boutonradio3}</td><td>{$text_refus}</td>\n"; if ($_SESSION['config']['affiche_date_traitement']) { echo "<td class=\"histo-left\">" . _('divers_demande') . " : {$sql_p_date_demande}<br>" . _('divers_traitement') . " : {$sql_p_date_traitement}</td>\n"; } echo '</tr>'; $i = !$i; } //while echo '</tbody>'; echo '</table>'; } //if($count2!=0) } //if( count($tab_all_users_du_grand_resp)!=0 ) } //if($_SESSION['config']['double_validation_conges']) echo "<br>\n"; if ($count1 == 0 && $count2 == 0) { echo "<b>" . _('resp_traite_demandes_aucune_demande') . "</b><br><br><br>\n"; } else { echo "<input type=\"submit\" value=\"" . _('form_submit') . "\">\n"; } echo " </form> \n"; }
function confirmer($p_num, $onglet, $DEBUG = FALSE) { $PHP_SELF = $_SERVER['PHP_SELF']; $session = session_id(); // Récupération des informations $sql1 = 'SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_etat, p_num FROM conges_periode where p_num = \'' . SQL::quote($p_num) . '\''; $ReqLog1 = SQL::query($sql1); // AFFICHAGE TABLEAU echo '<form NAME="dem_conges" action="' . $PHP_SELF . '" method="POST">'; echo "<table class=\"table table-responsive\">\n"; echo '<thead>'; // affichage première ligne : titres echo "<tr>\n"; echo "<td>" . _('divers_debut_maj_1') . "</td>\n"; echo "<td>" . _('divers_fin_maj_1') . "</td>\n"; echo "<td>" . _('divers_nb_jours_maj_1') . "</td>\n"; echo "<td>" . _('divers_comment_maj_1') . "</td>\n"; echo "</tr>\n"; echo '</thead>'; echo '<tbody>'; // affichage 2ieme ligne : valeurs actuelles echo "<tr>\n"; while ($resultat1 = $ReqLog1->fetch_array()) { $sql_date_deb = eng_date_to_fr($resultat1["p_date_deb"]); $sql_demi_jour_deb = $resultat1["p_demi_jour_deb"]; if ($sql_demi_jour_deb == "am") { $demi_j_deb = _('divers_am_short'); } else { $demi_j_deb = _('divers_pm_short'); } $sql_date_fin = eng_date_to_fr($resultat1["p_date_fin"]); $sql_demi_jour_fin = $resultat1["p_demi_jour_fin"]; if ($sql_demi_jour_fin == "am") { $demi_j_fin = _('divers_am_short'); } else { $demi_j_fin = _('divers_pm_short'); } $sql_nb_jours = $resultat1["p_nb_jours"]; $aff_nb_jours = affiche_decimal($sql_nb_jours); $sql_commentaire = $resultat1["p_commentaire"]; $sql_etat = $resultat1["p_etat"]; echo "<td>{$sql_date_deb} _ {$demi_j_deb}</td><td>{$sql_date_fin} _ {$demi_j_fin}</td><td>{$aff_nb_jours}</td><td>{$sql_commentaire}</td>\n"; $compte = ""; if ($_SESSION['config']['rempli_auto_champ_nb_jours_pris']) { $compte = 'onChange="compter_jours();return false;"'; } $text_debut = "<input class=\"form-control date\" type=\"text\" name=\"new_debut\" size=\"10\" maxlength=\"30\" value=\"" . revert_date($sql_date_deb) . "\">"; if ($sql_demi_jour_deb == "am") { $radio_deb_am = "<input type=\"radio\" {$compte} name=\"new_demi_jour_deb\" value=\"am\" checked> " . _('form_am'); $radio_deb_pm = "<input type=\"radio\" {$compte} name=\"new_demi_jour_deb\" value=\"pm\"> " . _('form_pm'); } else { $radio_deb_am = "<input type=\"radio\" {$compte} name=\"new_demi_jour_deb\" value=\"am\">" . _('form_am'); $radio_deb_pm = "<input type=\"radio\" {$compte} name=\"new_demi_jour_deb\" value=\"pm\" checked>" . _('form_pm'); } $text_fin = "<input class=\"form-control date\" type=\"text\" name=\"new_fin\" size=\"10\" maxlength=\"30\" value=\"" . revert_date($sql_date_fin) . "\">"; if ($sql_demi_jour_fin == "am") { $radio_fin_am = "<input type=\"radio\" {$compte} name=\"new_demi_jour_fin\" value=\"am\" checked>" . _('form_am'); $radio_fin_pm = "<input type=\"radio\" {$compte} name=\"new_demi_jour_fin\" value=\"pm\">" . _('form_pm'); } else { $radio_fin_am = "<input type=\"radio\" {$compte} name=\"new_demi_jour_fin\" value=\"am\">" . _('form_am'); $radio_fin_pm = "<input type=\"radio\" {$compte} name=\"new_demi_jour_fin\" value=\"pm\" checked>" . _('form_pm'); } if ($_SESSION['config']['disable_saise_champ_nb_jours_pris']) { $text_nb_jours = "<input class=\"form-control\" type=\"text\" name=\"new_nb_jours\" size=\"5\" maxlength=\"30\" value=\"{$sql_nb_jours}\" style=\"background-color: #D4D4D4; \" readonly=\"readonly\">"; } else { $text_nb_jours = "<input class=\"form-control\" type=\"text\" name=\"new_nb_jours\" size=\"5\" maxlength=\"30\" value=\"{$sql_nb_jours}\">"; } $text_commentaire = "<input class=\"form-control\" type=\"text\" name=\"new_comment\" size=\"15\" maxlength=\"30\" value=\"{$sql_commentaire}\">"; } echo "</tr>\n"; // affichage 3ieme ligne : saisie des nouvelles valeurs echo "<tr>\n"; echo "<td>{$text_debut}<br>{$radio_deb_am} / {$radio_deb_pm}</td><td>{$text_fin}<br>{$radio_fin_am} / {$radio_fin_pm}</td><td>{$text_nb_jours}</td><td>{$text_commentaire}</td>\n"; echo "</tr>\n"; echo '</tbody>'; echo "</table>\n"; echo '<hr/>'; echo "<input type=\"hidden\" name=\"p_num_to_update\" value=\"{$p_num}\">\n"; echo "<input type=\"hidden\" name=\"p_etat\" value=\"{$sql_etat}\">\n"; echo "<input type=\"hidden\" name=\"session\" value=\"{$session}\">\n"; echo '<input type="hidden" name="user_login" value="' . $_SESSION['userlogin'] . '">'; echo "<input type=\"hidden\" name=\"onglet\" value=\"{$onglet}\">\n"; echo '<p id="comment_nbj" style="color:red"> </p>'; echo "<input class=\"btn btn-success\" type=\"submit\" value=\"" . _('form_submit') . "\">\n"; echo "<a class=\"btn\" href=\"{$PHP_SELF}?session={$session}&onglet=demandes_en_cours\">" . _('form_cancel') . "</a>\n"; echo "</form>\n"; }
function recup_tableau_conges_for_users($hide_conges_exceptionnels, $logins = false) { // on pourrait tout faire en un seule select, mais cela bug si on change la prise en charge des conges exceptionnels en cours d'utilisation ... if ($logins === false) { $logins = ''; } else { $logins = ' AND su_login IN ( \'' . implode('\', \'', $logins) . '\') '; } if ($_SESSION['config']['gestion_conges_exceptionnels'] && !$hide_conges_exceptionnels) { // on prend tout les types de conges $request = 'SELECT su_login, ta_libelle, su_nb_an, su_solde, su_reliquat FROM conges_solde_user, conges_type_absence WHERE conges_type_absence.ta_id = conges_solde_user.su_abs_id ' . $logins . ' ORDER BY ta_type , su_abs_id ASC'; } else { // on prend tout les types de conges SAUF les conges exceptionnels $request = 'SELECT su_login, ta_libelle, su_nb_an, su_solde, su_reliquat FROM conges_solde_user, conges_type_absence WHERE conges_type_absence.ta_type != \'conges_exceptionnels\' AND conges_type_absence.ta_id = conges_solde_user.su_abs_id ' . $logins . ' ORDER BY su_abs_id ASC'; } $data = \includes\SQL::query($request); $result = array(); while ($l = $data->fetch_array()) { $tab = array(); $tab['nb_an'] = affiche_decimal($l['su_nb_an']); $tab['solde'] = affiche_decimal($l['su_solde']); $tab['reliquat'] = affiche_decimal($l['su_reliquat']); $result[$l['su_login']][$l['ta_libelle']] = $tab; } return $result; }
public static function affiche_all_demandes_en_cours($tab_type_conges) { $PHP_SELF = $_SERVER['PHP_SELF']; $session = session_id(); $count1 = 0; $count2 = 0; $return = ''; $tab_type_all_abs = recup_tableau_tout_types_abs(); // recup du tableau des types de conges (seulement les conges exceptionnels) $tab_type_conges_exceptionnels = array(); if ($_SESSION['config']['gestion_conges_exceptionnels']) { $tab_type_conges_exceptionnels = recup_tableau_types_conges_exceptionnels(); } /*********************************/ // Récupération des informations /*********************************/ // Récup dans un tableau de tableau des informations de tous les users dont $_SESSION['userlogin'] est responsable $tab_all_users_du_resp = recup_infos_all_users_du_resp($_SESSION['userlogin']); // si tableau des users du resp n'est pas vide if (count($tab_all_users_du_resp) != 0) { // constitution de la liste (séparé par des virgules) des logins ... $list_users_du_resp = ""; foreach ($tab_all_users_du_resp as $current_login => $tab_current_user) { if ($list_users_du_resp == "") { $list_users_du_resp = "'{$current_login}'"; } else { $list_users_du_resp = $list_users_du_resp . ", '{$current_login}'"; } } } // Récup dans un tableau de tableau des informations de tous les users dont $_SESSION['userlogin'] est GRAND responsable if ($_SESSION['config']['double_validation_conges']) { $tab_all_users_du_grand_resp = recup_infos_all_users_du_grand_resp($_SESSION['userlogin']); // si tableau des users du grand resp n'est pas vide if (count($tab_all_users_du_grand_resp) != 0) { // constitution de la liste (séparé par des virgules) des logins ... $list_users_du_grand_resp = ""; foreach ($tab_all_users_du_grand_resp as $current_login => $tab_current_user) { if ($list_users_du_grand_resp == "") { $list_users_du_grand_resp = "'{$current_login}'"; } else { $list_users_du_grand_resp = $list_users_du_grand_resp . ", '{$current_login}'"; } } } } /*********************************/ $return .= '<form action="' . $PHP_SELF . '?session=' . $session . '&onglet=traitement_demandes" method="POST">'; /*********************************/ /* TABLEAU DES DEMANDES DES USERS DONT ON EST LE RESP */ /*********************************/ // si tableau des users du resp n'est pas vide if (count($tab_all_users_du_resp) != 0) { // Récup des demandes en cours pour les users dont $_SESSION['userlogin'] est responsable : $sql1 = "SELECT p_num, p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_date_demande, p_date_traitement FROM conges_periode "; $sql1 = $sql1 . " WHERE p_etat =\"demande\" "; $sql1 = $sql1 . " AND p_login IN ({$list_users_du_resp}) "; $sql1 = $sql1 . " ORDER BY p_num"; $ReqLog1 = \includes\SQL::query($sql1); $count1 = $ReqLog1->num_rows; if ($count1 != 0) { // AFFICHAGE TABLEAU DES DEMANDES EN COURS $return .= '<h3>' . _('resp_traite_demandes_titre_tableau_1') . '</h3>'; $return .= '<table cellpadding="2" class="table table-hover table-responsive table-condensed table-striped">'; $return .= '<thead>'; $return .= '<tr>'; $return .= '<th>' . _('divers_nom_maj_1') . '<br>' . _('divers_prenom_maj_1') . '</th>'; $return .= '<th>' . _('divers_quotite_maj_1') . '</th>'; $return .= '<th>' . _('divers_type_maj_1') . '</th>'; $return .= '<th>' . _('divers_debut_maj_1') . '</th>'; $return .= '<th>' . _('divers_fin_maj_1') . '</th>'; $return .= '<th>' . _('divers_comment_maj_1') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_nb_jours') . '</th>'; // foreach($tab_type_conges as $id_conges => $libelle) // { // echo "<th>". _('divers_solde_maj_1') ."<br>$libelle</th>" ; // } // if ($_SESSION['config']['gestion_conges_exceptionnels']) // foreach($tab_type_conges_exceptionnels as $id_conges => $libelle) // { // echo "<th>". _('divers_solde_maj_1') ."<br>$libelle</th>" ; // } $return .= '<th>' . _('divers_solde') . '</th>'; $return .= '<th>' . _('divers_accepter_maj_1') . '</th>'; $return .= '<th>' . _('divers_refuser_maj_1') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_attente') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_motif_refus') . '</th>'; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<th>' . _('divers_date_traitement') . '</th>'; } $return .= '</tr>'; $return .= '</thead>'; $return .= '<tbody>'; $i = true; $tab_bt_radio = array(); while ($resultat1 = $ReqLog1->fetch_array()) { /** sur la ligne , **/ /** le 1er bouton radio est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--OK"> */ /** et le 2ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--not_OK"> */ /** et le 3ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--RIEN"> */ $sql_p_date_deb = $resultat1["p_date_deb"]; $sql_p_date_deb_fr = eng_date_to_fr($resultat1["p_date_deb"]); $sql_p_demi_jour_deb = $resultat1["p_demi_jour_deb"]; if ($sql_p_demi_jour_deb == "am") { $demi_j_deb = "matin"; } else { $demi_j_deb = "après-midi"; } $sql_p_date_fin = $resultat1["p_date_fin"]; $sql_p_date_fin_fr = eng_date_to_fr($resultat1["p_date_fin"]); $sql_p_demi_jour_fin = $resultat1["p_demi_jour_fin"]; if ($sql_p_demi_jour_fin == "am") { $demi_j_fin = "matin"; } else { $demi_j_fin = "après-midi"; } $sql_p_commentaire = $resultat1["p_commentaire"]; $sql_p_num = $resultat1["p_num"]; $sql_p_login = $resultat1["p_login"]; $sql_p_nb_jours = affiche_decimal($resultat1["p_nb_jours"]); $sql_p_type = $resultat1["p_type"]; $sql_p_date_demande = $resultat1["p_date_demande"]; $sql_p_date_traitement = $resultat1["p_date_traitement"]; // on construit la chaine qui servira de valeur à passer dans les boutons-radio $chaine_bouton_radio = "{$sql_p_login}--{$sql_p_nb_jours}--{$sql_p_type}--{$sql_p_date_deb}--{$sql_p_demi_jour_deb}--{$sql_p_date_fin}--{$sql_p_demi_jour_fin}"; // si le user fait l'objet d'une double validation on a pas le meme resultat sur le bouton ! if ($tab_all_users_du_resp[$sql_p_login]['double_valid'] == "Y") { // si on est a la fois resp et grand resp if (count($tab_all_users_du_grand_resp) != 0 && array_key_exists($sql_p_login, $tab_all_users_du_grand_resp)) { $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; } else { //on est QUe resp $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--VALID\">"; } } else { $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; } $boutonradio2 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--not_OK\">"; $boutonradio3 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--RIEN\" checked>"; $text_refus = "<input class=\"form-control\" type=\"text\" name=\"tab_text_refus[{$sql_p_num}]\" size=\"20\" max=\"100\">"; $return .= '<tr class="' . ($i ? 'i' : 'p') . '">'; $return .= '<td><b>' . $tab_all_users_du_resp[$sql_p_login]['nom'] . '</b><br>' . $tab_all_users_du_resp[$sql_p_login]['prenom'] . '</td><td>' . $tab_all_users_du_resp[$sql_p_login]['quotite'] . '%</td>'; $return .= '<td>' . $tab_type_all_abs[$sql_p_type]['libelle'] . '</td>'; $return .= '<td>' . $sql_p_date_deb_fr . '<span class="demi">' . $demi_j_deb . '</span></td><td>' . $sql_p_date_fin_fr . '<span class="demi">' . $demi_j_fin . '</span></td><td>' . $sql_p_commentaire . '</td><td><b>' . $sql_p_nb_jours . '</b></td>'; $tab_conges = $tab_all_users_du_resp[$sql_p_login]['conges']; $return .= '<td>' . $tab_conges[$tab_type_all_abs[$sql_p_type]['libelle']]['solde'] . '</td>'; // foreach($tab_type_conges as $id_conges => $libelle) // { // echo "<td>".$tab_conges[$libelle]['solde']."</td>"; // } // if ($_SESSION['config']['gestion_conges_exceptionnels']) // foreach($tab_type_conges_exceptionnels as $id_conges => $libelle) // { // echo "<td>".$tab_conges[$libelle]['solde']."</td>"; // } // echo "<td>".$tab_type_all_abs[$sql_p_type]['libelle']."</td>\n"; $return .= '<td>' . $boutonradio1 . '</td><td>' . $boutonradio2 . '</td><td>' . $boutonradio3 . '</td><td>' . $text_refus . '</td>'; if ($_SESSION['config']['affiche_date_traitement']) { if ($sql_p_date_demande == NULL) { $return .= '<td class="histo-left">' . _('divers_demande') . ' : ' . $sql_p_date_demande . '<br>' . _('divers_traitement') . ' : ' . $sql_p_date_traitement . '</td>'; } else { $return .= '<td class="histo-left">' . _('divers_demande') . ' : ' . $sql_p_date_demande . '<br>' . _('divers_traitement') . ' : pas traité</td>'; } } $return .= '</tr>'; $i = !$i; } // while $return .= '</tbody>'; $return .= '</table>'; } //if($count1!=0) } //if( count($tab_all_users_du_resp)!=0 ) /*********************************/ /* TABLEAU DES DEMANDES DES USERS DONT ON EST LE GRAND RESP */ /*********************************/ if ($_SESSION['config']['double_validation_conges']) { // si tableau des users du grand resp n'est pas vide if (count($tab_all_users_du_grand_resp) != 0) { // Récup des demandes en cours pour les users dont $_SESSION['userlogin'] est GRAND responsable : $sql2 = "SELECT p_num, p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_date_demande, p_date_traitement FROM conges_periode "; $sql2 = $sql2 . " WHERE p_etat =\"valid\" "; $sql2 = $sql2 . " AND p_login IN ({$list_users_du_grand_resp}) "; $sql2 = $sql2 . " ORDER BY p_num"; $ReqLog2 = \includes\SQL::query($sql2); $count2 = $ReqLog2->num_rows; if ($count2 != 0) { // AFFICHAGE TABLEAU DES DEMANDES EN COURS POUR DEUXIEME VALIDATION $return .= '<h3>' . _('resp_traite_demandes_titre_tableau_2') . '</h3>'; $return .= '<table class="table table-hover table-responsive table-condensed table-striped">'; $return .= '<thead>'; $return .= '<tr>'; $return .= '<th><b>' . _('divers_nom_maj_1') . '</b><br>' . _('divers_prenom_maj_1') . '</th>'; $return .= '<th>' . _('divers_quotite_maj_1') . '</th>'; $return .= '<th>' . _('divers_debut_maj_1') . '</th>'; $return .= '<th>' . _('divers_fin_maj_1') . '</th>'; $return .= '<th>' . _('divers_comment_maj_1') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_nb_jours') . '</th>'; foreach ($tab_type_conges as $id_conges => $libelle) { $return .= '<th>' . _('divers_solde_maj_1') . '<br>' . $libelle . '</th>'; } $return .= '<th>' . _('divers_type_maj_1') . '</th>'; $return .= '<th>' . _('divers_accepter_maj_1') . '</th>'; $return .= '<th>' . _('divers_refuser_maj_1') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_attente') . '</th>'; $return .= '<th>' . _('resp_traite_demandes_motif_refus') . '</th>'; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<th>' . _('divers_date_traitement') . '</th>'; } $return .= '</tr>'; $return .= '</thead>'; $return .= '<tbody>'; $i = true; $tab_bt_radio = array(); while ($resultat2 = $ReqLog2->fetch_array()) { /** sur la ligne , **/ /** le 1er bouton radio est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--OK"> */ /** et le 2ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--not_OK"> */ /** et le 3ieme est <input type="radio" name="tab_bt_radio[valeur de p_num]" value="[valeur de p_login]--[valeur p_nb_jours]--$type--RIEN"> */ $sql_p_date_deb = $resultat2["p_date_deb"]; $sql_p_date_deb_fr = eng_date_to_fr($resultat2["p_date_deb"]); $sql_p_demi_jour_deb = $resultat2["p_demi_jour_deb"]; if ($sql_p_demi_jour_deb == "am") { $demi_j_deb = "matin"; } else { $demi_j_deb = "après-midi"; } $sql_p_date_fin = $resultat2["p_date_fin"]; $sql_p_date_fin_fr = eng_date_to_fr($resultat2["p_date_fin"]); $sql_p_demi_jour_fin = $resultat2["p_demi_jour_fin"]; if ($sql_p_demi_jour_fin == "am") { $demi_j_fin = "matin"; } else { $demi_j_fin = "après-midi"; } $sql_p_commentaire = $resultat2["p_commentaire"]; $sql_p_num = $resultat2["p_num"]; $sql_p_login = $resultat2["p_login"]; $sql_p_nb_jours = affiche_decimal($resultat2["p_nb_jours"]); $sql_p_type = $resultat2["p_type"]; $sql_p_date_demande = $resultat2["p_date_demande"]; $sql_p_date_traitement = $resultat2["p_date_traitement"]; // on construit la chaine qui servira de valeur à passer dans les boutons-radio $chaine_bouton_radio = "{$sql_p_login}--{$sql_p_nb_jours}--{$sql_p_type}--{$sql_p_date_deb}--{$sql_p_demi_jour_deb}--{$sql_p_date_fin}--{$sql_p_demi_jour_fin}"; $boutonradio1 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--OK\">"; $boutonradio2 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--not_OK\">"; $boutonradio3 = "<input type=\"radio\" name=\"tab_bt_radio[{$sql_p_num}]\" value=\"{$chaine_bouton_radio}--RIEN\" checked>"; $text_refus = "<input class=\"form-control\" type=\"text\" name=\"tab_text_refus[{$sql_p_num}]\" size=\"20\" max=\"100\">"; $return .= '<tr class="' . ($i ? 'i' : 'p') . '">'; $return .= '<td><strong>' . $tab_all_users_du_grand_resp[$sql_p_login]['nom'] . '</strong><br>' . $tab_all_users_du_grand_resp[$sql_p_login]['prenom'] . '</td><td>' . $tab_all_users_du_grand_resp[$sql_p_login]['quotite'] . '%</td>'; $return .= '<td>' . $sql_p_date_deb_fr . '<span class="demi">' . $demi_j_deb . '<span></td><td>' . $sql_p_date_fin_fr . '<span class="demi">' . $demi_j_fin . '</span></td><td>' . $sql_p_commentaire . '</td><td><b>' . $sql_p_nb_jours . '</b></td>'; $tab_conges = $tab_all_users_du_grand_resp[$sql_p_login]['conges']; foreach ($tab_type_conges as $id_conges => $libelle) { $return .= '<td>' . $tab_conges[$libelle]['solde'] . '</td>'; } $return .= '<td>' . $tab_type_all_abs[$sql_p_type]['libelle'] . '</td>'; $return .= '<td>' . $boutonradio1 . '</td><td>' . $boutonradio2 . '</td><td>' . $boutonradio3 . '</td><td>' . $text_refus . '</td>'; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<td class="histo-left">' . _('divers_demande') . ' : ' . $sql_p_date_demande . '<br>' . _('divers_traitement') . ' : ' . $sql_p_date_traitement . '</td>'; } $return .= '</tr>'; $i = !$i; } //while $return .= '</tbody>'; $return .= '</table>'; } //if($count2!=0) } //if( count($tab_all_users_du_grand_resp)!=0 ) } //if($_SESSION['config']['double_validation_conges']) $return .= '<br>'; if ($count1 == 0 && $count2 == 0) { $return .= '<strong>' . _('resp_traite_demandes_aucune_demande') . '</strong>'; } else { $return .= '<hr/>'; $return .= '<input class="btn btn-success" type="submit" value="' . _('form_submit') . '">'; } $return .= '</form>'; return $return; }
function affiche_etat_conges_user_for_resp($user_login, $year_affichage, $tri_date, $onglet ,$DEBUG=FALSE) { $PHP_SELF=$_SERVER['PHP_SELF']; ; $session=session_id() ; // affichage de l'année et des boutons de défilement $year_affichage_prec = $year_affichage-1 ; $year_affichage_suiv = $year_affichage+1 ; echo "<b>"; echo "<a href=\"$PHP_SELF?session=$session&onglet=traite_user&user_login=$user_login&year_affichage=$year_affichage_prec\"><<</a>"; echo "    $year_affichage    "; echo "<a href=\"$PHP_SELF?session=$session&onglet=traite_user&user_login=$user_login&year_affichage=$year_affichage_suiv\">>></a>"; echo "</b><br><br>\n"; // Récupération des informations de speriodes de conges/absences $sql3 = "SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_etat, p_motif_refus, p_date_demande, p_date_traitement, p_num FROM conges_periode " . "WHERE p_login = '******' " . "AND p_etat !='demande' " . "AND p_etat !='valid' " . "AND (p_date_deb LIKE '$year_affichage%' OR p_date_fin LIKE '$year_affichage%') "; if($tri_date=="descendant") $sql3=$sql3." ORDER BY p_date_deb DESC "; else $sql3=$sql3." ORDER BY p_date_deb ASC "; $ReqLog3 = SQL::query($sql3); $count3=$ReqLog3->num_rows; if($count3==0) { echo "<b>". _('resp_traite_user_aucun_conges') ."</b><br><br>\n"; } else { // recup dans un tableau de tableau les infos des types de conges et absences $tab_types_abs = recup_tableau_tout_types_abs( $DEBUG) ; // AFFICHAGE TABLEAU echo "<form action=\"$PHP_SELF?session=$session&onglet=traite_user\" method=\"POST\"> \n"; //echo "<table cellpadding=\"2\" class=\"tablo\" width=\"80%\">\n"; echo "<table cellpadding=\"2\" class=\"tablo\">\n"; echo "<thead>"; echo "<tr align=\"center\">\n"; echo " <th>\n"; echo " <a href=\"$PHP_SELF?session=$session&user_login=$user_login&onglet=$onglet&tri_date=descendant\"><img src=\"". TEMPLATE_PATH ."img/1downarrow-16x16.png\" width=\"16\" height=\"16\" border=\"0\" title=\"trier\"></a>\n"; echo " ". _('divers_debut_maj_1') ." \n"; echo " <a href=\"$PHP_SELF?session=$session&user_login=$user_login&onglet=$onglet&tri_date=ascendant\"><img src=\"". TEMPLATE_PATH ."img/1uparrow-16x16.png\" width=\"16\" height=\"16\" border=\"0\" title=\"trier\"></a>\n"; echo " </th>\n"; echo " <th>". _('divers_fin_maj_1') ."</th>\n"; echo " <th>". _('divers_nb_jours_pris_maj_1') ."</th>\n"; echo " <th>". _('divers_comment_maj_1') ."<br><i>". _('resp_traite_user_motif_possible') ."</i></th>\n"; echo " <th>". _('divers_type_maj_1') ."</th>\n"; echo " <th>". _('divers_etat_maj_1') ."</th>\n"; echo " <th>". _('resp_traite_user_annul') ."</th>\n"; echo " <th>". _('resp_traite_user_motif_annul') ."</th>\n"; if($_SESSION['config']['affiche_date_traitement']) { echo "<th>". _('divers_date_traitement') ."</th>\n" ; } echo "</tr>\n"; echo "</thead>"; echo "<tbody>"; $tab_checkbox=array(); $i = true; while ($resultat3 = $ReqLog3->fetch_array()) { $sql_login=$resultat3["p_login"] ; $sql_date_deb=eng_date_to_fr($resultat3["p_date_deb"]) ; $sql_demi_jour_deb=$resultat3["p_demi_jour_deb"] ; if($sql_demi_jour_deb=="am") $demi_j_deb = _('divers_am_short') ; else $demi_j_deb = _('divers_pm_short') ; $sql_date_fin=eng_date_to_fr($resultat3["p_date_fin"]) ; $sql_demi_jour_fin=$resultat3["p_demi_jour_fin"] ; if($sql_demi_jour_fin=="am") $demi_j_fin = _('divers_am_short') ; else $demi_j_fin = _('divers_pm_short') ; $sql_nb_jours=affiche_decimal($resultat3["p_nb_jours"]) ; $sql_commentaire=$resultat3["p_commentaire"] ; $sql_type=$resultat3["p_type"] ; $sql_etat=$resultat3["p_etat"] ; $sql_motif_refus=$resultat3["p_motif_refus"] ; $sql_p_date_demande = $resultat3["p_date_demande"]; $sql_p_date_traitement = $resultat3["p_date_traitement"]; $sql_num=$resultat3["p_num"] ; if(($sql_etat=="annul") || ($sql_etat=="refus") || ($sql_etat=="ajout")) { $casecocher1=""; if($sql_etat=="refus") { if($sql_motif_refus=="") $sql_motif_refus = _('divers_inconnu') ; //$text_annul="<i>motif du refus : $sql_motif_refus</i>"; $text_annul="<i>". _('resp_traite_user_motif') ." : $sql_motif_refus</i>"; } elseif($sql_etat=="annul") { if($sql_motif_refus=="") $sql_motif_refus = _('divers_inconnu') ; //$text_annul="<i>motif de l'annulation : $sql_motif_refus</i>"; $text_annul="<i>". _('resp_traite_user_motif') ." : $sql_motif_refus</i>"; } elseif($sql_etat=="ajout") { $text_annul=" "; } } else { $casecocher1=sprintf("<input type=\"checkbox\" name=\"tab_checkbox_annule[$sql_num]\" value=\"$sql_login--$sql_nb_jours--$sql_type--ANNULE\">"); $text_annul="<input type=\"text\" name=\"tab_text_annul[$sql_num]\" size=\"20\" max=\"100\">"; } echo '<tr class="'.($i?'i':'p').'">'; echo "<td>$sql_date_deb _ $demi_j_deb</td>\n"; echo "<td>$sql_date_fin _ $demi_j_fin</td>\n"; echo "<td>$sql_nb_jours</td>\n"; echo "<td>$sql_commentaire</td>\n"; echo "<td>".$tab_types_abs[$sql_type]['libelle']."</td>\n"; echo "<td>"; if($sql_etat=="refus") echo _('divers_refuse') ; elseif($sql_etat=="annul") echo _('divers_annule') ; else echo "$sql_etat"; echo "</td>\n"; echo "<td>$casecocher1</td>\n"; echo "<td>$text_annul</td>\n"; if($_SESSION['config']['affiche_date_traitement']) { if(empty($sql_p_date_traitement)) echo "<td class=\"histo-left\">". _('divers_demande') ." : $sql_p_date_demande<br>". _('divers_traitement') ." : pas traité</td>\n" ; else echo "<td class=\"histo-left\">". _('divers_demande') ." : $sql_p_date_demande<br>". _('divers_traitement') ." : $sql_p_date_traitement</td>\n" ; } echo "</tr>\n"; $i = !$i; } echo "</tbody>"; echo "</table>\n\n"; echo "<input type=\"hidden\" name=\"user_login\" value=\"$user_login\">\n"; echo "<br><input type=\"submit\" value=\"". _('form_submit') ."\">\n"; echo " </form> \n"; } }
/** * Encapsule le comportement du module de l'historique des autres absences * * @param string $onglet Nom de l'onglet à afficher * @param string $session Clé de session * @param string $PHP_SELF * * @return void * @access public * @static */ public static function historiqueAutresAbsencesModule($onglet, $session, $PHP_SELF) { $return = ''; if ($_SESSION['config']['where_to_find_user_email'] == "ldap") { include_once CONFIG_PATH . 'config_ldap.php'; } $tri_date = getpost_variable('tri_date', "ascendant"); $year_affichage = getpost_variable('year_affichage', date("Y")); $return = '<h1>' . _('user_historique_abs') . ' :</h1>'; // affichage de l'année et des boutons de défilement $year_affichage_prec = $year_affichage - 1; $year_affichage_suiv = $year_affichage + 1; $return .= '<b>'; $return .= '<a href="' . $PHP_SELF . '?session=' . $session . '&onglet=historique_autres_absences&year_affichage=' . $year_affichage_prec . '"><<</a>'; $return .= '    ' . $year_affichage . '   '; $return .= '<a href="' . $PHP_SELF . '?session=' . $session . '&onglet=historique_autres_absences&year_affichage=' . $year_affichage_suiv . '">>></a>'; $return .= '</b><br><br>'; // Récupération des informations $sql4 = 'SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_etat, p_motif_refus, p_date_demande, p_date_traitement, p_num, ta_libelle FROM conges_periode as a, conges_type_absence as b WHERE a.p_login = "******" AND (a.p_type=b.ta_id) AND (b.ta_type=\'absences\') AND (p_date_deb LIKE \'' . intval($year_affichage) . '%\' OR p_date_fin LIKE \'' . intval($year_affichage) . '%\') '; if ($tri_date == "descendant") { $sql4 = $sql4 . " ORDER BY p_date_deb DESC "; } else { $sql4 = $sql4 . " ORDER BY p_date_deb ASC "; } $ReqLog4 = \includes\SQL::query($sql4); $count4 = $ReqLog4->num_rows; if ($count4 == 0) { $return .= '<b>' . _('user_abs_aucune_abs') . '</b><br>'; } else { // AFFICHAGE TABLEAU $return .= '<table cellpadding="2" class="tablo" width="80%">'; $return .= '<thead>'; $return .= '<tr>'; $return .= '<td>'; $return .= '<a href="' . $PHP_SELF . '?session=' . $session . '&onglet=' . $onglet . '&tri_date=descendant"><img src="' . TEMPLATE_PATH . 'img/1downarrow-16x16.png" width="16" height="16" border="0" title="trier"></a>'; $return .= _('divers_debut_maj_1'); $return .= '<a href="' . $PHP_SELF . '?session=' . $session . '&onglet=' . $onglet . '&tri_date=ascendant"><img src="' . TEMPLATE_PATH . 'img/1uparrow-16x16.png" width="16" height="16" border="0" title="trier"></a>'; $return .= '</td>'; $return .= '<td>' . _('divers_fin_maj_1') . '</td>'; $return .= '<td>' . _('user_abs_type') . '</td>'; $return .= '<td>' . _('divers_nb_jours_maj_1') . '</td>'; $return .= '<td>' . _('divers_comment_maj_1') . '</td>'; $return .= '<td>' . _('divers_etat_maj_1') . '</td>'; $return .= '<td></td><td></td>'; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<td>' . _('divers_date_traitement') . '</td>'; } $return .= '</tr>'; $return .= '</thead>'; $return .= '<tbody>'; $i = true; while ($resultat4 = $ReqLog4->fetch_array()) { $sql_login = $resultat4["p_login"]; $sql_date_deb = eng_date_to_fr($resultat4["p_date_deb"]); $sql_p_demi_jour_deb = $resultat4["p_demi_jour_deb"]; if ($sql_p_demi_jour_deb == "am") { $demi_j_deb = "mat"; } else { $demi_j_deb = "aprm"; } $sql_date_fin = eng_date_to_fr($resultat4["p_date_fin"]); $sql_p_demi_jour_fin = $resultat4["p_demi_jour_fin"]; if ($sql_p_demi_jour_fin == "am") { $demi_j_fin = "mat"; } else { $demi_j_fin = "aprm"; } $sql_nb_jours = affiche_decimal($resultat4["p_nb_jours"]); $sql_commentaire = $resultat4["p_commentaire"]; //$sql_type=$resultat4["p_type"]; $sql_type = $resultat4["ta_libelle"]; $sql_etat = $resultat4["p_etat"]; $sql_motif_refus = $resultat4["p_motif_refus"]; $sql_date_demande = $resultat4["p_date_demande"]; $sql_date_traitement = $resultat4["p_date_traitement"]; $sql_num = $resultat4["p_num"]; // si le user a le droit de saisir lui meme ses absences et qu'elle n'est pas deja annulee, on propose de modifier ou de supprimer if ($sql_etat != "annul" && $_SESSION['config']['user_saisie_mission']) { $user_modif_mission = "<a href=\"user_index.php?session={$session}&p_num={$sql_num}&onglet=modif_demande\">" . _('form_modif') . "</a>"; $user_suppr_mission = "<a href=\"user_index.php?session={$session}&p_num={$sql_num}&onglet=suppr_demande\">" . _('form_supprim') . "</a>"; } else { $user_modif_mission = " - "; $user_suppr_mission = " - "; } $return .= '<tr class="' . ($i ? 'i' : 'p') . '">'; $return .= '<td class="histo">' . schars($sql_date_deb) . ' _ ' . schars($demi_j_deb) . '</td>'; $return .= '<td class="histo">' . schars($sql_date_fin) . ' _ ' . schars($demi_j_fin) . '</td>'; $return .= '<td class="histo">' . schars($sql_type) . '</td>'; $return .= '<td class="histo">' . affiche_decimal($sql_nb_jours) . '</td>'; $return .= '<td class="histo">' . schars($sql_commentaire) . '</td>'; if ($sql_etat == "refus") { if ($sql_motif_refus == "") { $sql_motif_refus = _('divers_inconnu'); } $return .= '<br><i>".' . schars(_('divers_motif_refus')) . '." : ' . schars($sql_motif_refus) . '</i>'; } elseif ($sql_etat == "annul") { if ($sql_motif_refus == "") { $sql_motif_refus = _('divers_inconnu'); } $return .= '<br><i>".' . schars(_('divers_motif_annul')) . '." : ' . schars($sql_motif_refus) . '</i>'; } $return .= '</td>'; $return .= '<td>'; if ($sql_etat == "refus") { $return .= _('divers_refuse'); } elseif ($sql_etat == "annul") { $return .= _('divers_annule'); } else { $return .= schars($sql_etat); } $return .= '</td>'; $return .= '<td class="histo">' . $user_modif_mission . '</td>'; $return .= '<td class="histo">' . $user_suppr_mission . '</td>' . "\n"; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<td class="histo-left">' . schars(_('divers_demande')) . ' : ' . schars($sql_date_demande) . '<br>' . schars(_('divers_traitement')) . ' : ' . schars($sql_date_traitement) . '</td>'; } $return .= '</tr>'; $i = !$i; } $return .= '</tbody>'; $return .= '</table>'; } $return .= '<br><br>'; return $return; }
function confirmer($p_num, $onglet, $DEBUG=FALSE) { $PHP_SELF=$_SERVER['PHP_SELF']; $session=session_id() ; // Récupération des informations $sql1 = 'SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_num FROM conges_periode WHERE p_num = \''.SQL::quote($p_num).'\''; //printf("sql1 = %s<br>\n", $sql1); $ReqLog1 = SQL::query($sql1) ; // AFFICHAGE TABLEAU echo "<form action=\"$PHP_SELF\" method=\"POST\">\n" ; echo "<table cellpadding=\"2\" class=\"tablo\" width=\"80%\">\n"; echo "<thead>\n"; echo "<tr align=\"center\">\n"; echo "<td>". _('divers_debut_maj_1') ."</td>\n"; echo "<td>". _('divers_fin_maj_1') ."</td>\n"; echo "<td>". _('divers_nb_jours_maj_1') ."</td>\n"; echo "<td>". _('divers_comment_maj_1') ."</td>\n"; echo "<td>". _('divers_type_maj_1') ."</td>\n"; echo "</tr>\n"; echo "</thead>\n"; echo "<tbody>\n"; echo "<tr align=\"center\">\n"; while ($resultat1 = $ReqLog1->fetch_array()) { $sql_date_deb=eng_date_to_fr($resultat1["p_date_deb"]); $sql_demi_jour_deb = $resultat1["p_demi_jour_deb"]; if($sql_demi_jour_deb=="am") $demi_j_deb= _('divers_am_short') ; else $demi_j_deb= _('divers_pm_short') ; $sql_date_fin=eng_date_to_fr($resultat1["p_date_fin"]); $sql_demi_jour_fin = $resultat1["p_demi_jour_fin"]; if($sql_demi_jour_fin=="am") $demi_j_fin= _('divers_am_short') ; else $demi_j_fin= _('divers_pm_short') ; $sql_nb_jours=affiche_decimal($resultat1["p_nb_jours"]); //$sql_type=$resultat1["p_type"]; $sql_type=get_libelle_abs($resultat1["p_type"], $DEBUG); $sql_comment=$resultat1["p_commentaire"]; if( $DEBUG ) { echo "$sql_date_deb _ $demi_j_deb : $sql_date_fin _ $demi_j_fin : $sql_nb_jours : $sql_comment : $sql_type<br>\n"; } echo "<td>$sql_date_deb _ $demi_j_deb</td>\n"; echo "<td>$sql_date_fin _ $demi_j_fin</td>\n"; echo "<td>$sql_nb_jours</td>\n"; echo "<td>$sql_comment</td>\n"; echo "<td>$sql_type</td>\n"; } echo "</tr>\n"; echo "</tbody>\n"; echo "</table><br>\n\n"; echo "<input type=\"hidden\" name=\"p_num_to_delete\" value=\"$p_num\">\n"; echo "<input type=\"hidden\" name=\"session\" value=\"$session\">\n"; echo "<input type=\"hidden\" name=\"onglet\" value=\"$onglet\">\n"; echo "<input type=\"submit\" value=\"". _('form_supprim') ."\">\n"; echo "</form>\n" ; }
public static function affiche_etat_demande_user_for_resp($user_login, $tab_user, $tab_grd_resp) { $PHP_SELF = $_SERVER['PHP_SELF']; $session = session_id(); $return = ''; // Récupération des informations $sql2 = "SELECT p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_date_demande, p_date_traitement, p_num " . "FROM conges_periode " . "WHERE p_login = '******' AND p_etat ='demande' " . "ORDER BY p_date_deb"; $ReqLog2 = \includes\SQL::query($sql2); $count2 = $ReqLog2->num_rows; if ($count2 == 0) { $return .= '<b>' . _('resp_traite_user_aucune_demande') . '</b><br><br>'; } else { // recup dans un tableau des types de conges $tab_type_all_abs = recup_tableau_tout_types_abs(); // AFFICHAGE TABLEAU $return .= '<form action="' . $PHP_SELF . '?session=' . $session . '&onglet=traite_user" method="POST">'; $return .= '<table cellpadding="2" class="tablo">'; $return .= '<thead>'; $return .= '<tr>'; $return .= '<th>' . _('divers_debut_maj_1') . '</th>'; $return .= '<th>' . _('divers_fin_maj_1') . '</th>'; $return .= '<th>' . _('divers_nb_jours_pris_maj_1') . '</th>'; $return .= '<th>' . _('divers_comment_maj_1') . '</th>'; $return .= '<th>' . _('divers_type_maj_1') . '</th>'; $return .= '<th>' . _('divers_accepter_maj_1') . '</th>'; $return .= '<th>' . _('divers_refuser_maj_1') . '</th>'; $return .= '<th>' . _('resp_traite_user_motif_refus') . '</th>'; if ($_SESSION['config']['affiche_date_traitement']) { $return .= '<th>' . _('divers_date_traitement') . '</th>'; } $return .= '</tr>'; $return .= '</thead>'; $return .= '<tbody>'; $i = true; $tab_checkbox = array(); while ($resultat2 = $ReqLog2->fetch_array()) { $sql_date_deb = $resultat2["p_date_deb"]; $sql_date_fin = $resultat2["p_date_fin"]; $sql_date_deb_fr = eng_date_to_fr($resultat2["p_date_deb"]); $sql_date_fin_fr = eng_date_to_fr($resultat2["p_date_fin"]); $sql_demi_jour_deb = $resultat2["p_demi_jour_deb"]; $sql_demi_jour_fin = $resultat2["p_demi_jour_fin"]; $sql_nb_jours = affiche_decimal($resultat2["p_nb_jours"]); $sql_commentaire = $resultat2["p_commentaire"]; $sql_type = $resultat2["p_type"]; $sql_date_demande = $resultat2["p_date_demande"]; $sql_date_traitement = $resultat2["p_date_traitement"]; $sql_num = $resultat2["p_num"]; if ($sql_demi_jour_deb == "am") { $demi_j_deb = _('divers_am_short'); } else { $demi_j_deb = _('divers_pm_short'); } if ($sql_demi_jour_fin == "am") { $demi_j_fin = _('divers_am_short'); } else { $demi_j_fin = _('divers_pm_short'); } // on construit la chaine qui servira de valeur à passer dans les boutons-radio $chaine_bouton_radio = "{$user_login}--{$sql_nb_jours}--{$sql_type}--{$sql_date_deb}--{$sql_demi_jour_deb}--{$sql_date_fin}--{$sql_demi_jour_fin}"; // si le user fait l'objet d'une double validation on a pas le meme resultat sur le bouton ! if ($tab_user['double_valid'] == "Y") { /*******************************/ /* verif si le resp est grand_responsable pour ce user*/ if (in_array($_SESSION['userlogin'], $tab_grd_resp)) { // si resp_login est dans le tableau $boutonradio1 = "<input type=\"radio\" name=\"tab_radio_traite_demande[{$sql_num}]\" value=\"{$chaine_bouton_radio}--VALID\">"; } else { $boutonradio1 = "<input type=\"radio\" name=\"tab_radio_traite_demande[{$sql_num}]\" value=\"{$chaine_bouton_radio}--ACCEPTE\">"; } } else { $boutonradio1 = "<input type=\"radio\" name=\"tab_radio_traite_demande[{$sql_num}]\" value=\"{$chaine_bouton_radio}--ACCEPTE\">"; } $boutonradio2 = "<input type=\"radio\" name=\"tab_radio_traite_demande[{$sql_num}]\" value=\"{$chaine_bouton_radio}--REFUSE\">"; $text_refus = "<input type=\"text\" name=\"tab_text_refus[{$sql_num}]\" size=\"20\" max=\"100\">"; $return .= '<tr class="' . ($i ? 'i' : 'p') . '">'; $return .= '<td>' . $sql_date_deb_fr . '_' . $demi_j_deb . '</td>'; $return .= '<td>' . $sql_date_fin_fr . '_' . $demi_j_fin . '</td>'; $return .= '<td>' . $sql_nb_jours . '</td>'; $return .= '<td>' . $sql_commentaire . '</td>'; $return .= '<td>' . $tab_type_all_abs[$sql_type]['libelle'] . '</td>'; $return .= '<td>' . $boutonradio1 . '</td>'; $return .= '<td>' . $boutonradio2 . '</td>'; $return .= '<td>' . $text_refus . '</td>'; if ($_SESSION['config']['affiche_date_traitement']) { if ($sql_date_traitement == NULL) { $return .= '<td class="histo-left">' . _('divers_demande') . ' : ' . $sql_date_demande . '<br>' . _('divers_traitement') . ' : pas traité</td>'; } else { $return .= '<td class="histo-left">' . _('divers_demande') . ' : ' . $sql_date_demande . '<br>' . _('divers_traitement') . ' : ' . $sql_date_traitement . '</td>'; } } $return .= '</tr>'; $i = !$i; } $return .= '</tbody>'; $return .= '</table>'; $return .= '<input type="hidden" name="user_login" value="' . $user_login . '">'; $return .= '<br><input class="btn btn-success" type="submit" value="' . _('form_submit') . '"> <input type="reset" value="' . _('form_cancel') . '">'; $return .= '<a class="btn" href="' . $PHP_SELF . '?session=' . $session . '">' . _('form_cancel') . '</a>'; $return .= '</form>'; } return $return; }
function confirmer($p_num, $onglet, $DEBUG=FALSE) { $PHP_SELF=$_SERVER['PHP_SELF']; $session=session_id(); // Récupération des informations $sql1 = 'SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_etat, p_num FROM conges_periode where p_num = \''.SQL::quote($p_num).'\''; $ReqLog1 = SQL::query($sql1) ; // AFFICHAGE TABLEAU echo "<form action=\"$PHP_SELF\" method=\"POST\">\n" ; echo "<table cellpadding=\"2\" class=\"tablo\" width=\"80%\">\n" ; echo '<thead>'; // affichage première ligne : titres echo "<tr align=\"center\">\n"; echo "<td>". _('divers_debut_maj_1') ."</td>\n"; echo "<td>". _('divers_fin_maj_1') ."</td>\n"; echo "<td>". _('divers_nb_jours_maj_1') ."</td>\n"; echo "<td>". _('divers_comment_maj_1') ."</td>\n"; echo "</tr>\n" ; echo '</thead>'; echo '<tbody>'; // affichage 2ieme ligne : valeurs actuelles echo "<tr align=\"center\">\n" ; while ($resultat1 = $ReqLog1->fetch_array()) { $sql_date_deb=eng_date_to_fr($resultat1["p_date_deb"]); $sql_demi_jour_deb = $resultat1["p_demi_jour_deb"]; if($sql_demi_jour_deb=="am") $demi_j_deb= _('divers_am_short') ; else $demi_j_deb= _('divers_pm_short') ; $sql_date_fin=eng_date_to_fr($resultat1["p_date_fin"]); $sql_demi_jour_fin = $resultat1["p_demi_jour_fin"]; if($sql_demi_jour_fin=="am") $demi_j_fin= _('divers_am_short') ; else $demi_j_fin= _('divers_pm_short') ; $sql_nb_jours=$resultat1["p_nb_jours"]; $aff_nb_jours=affiche_decimal($sql_nb_jours); $sql_commentaire=$resultat1["p_commentaire"]; $sql_etat=$resultat1["p_etat"]; echo "<td>$sql_date_deb _ $demi_j_deb</td><td>$sql_date_fin _ $demi_j_fin</td><td>$aff_nb_jours</td><td>$sql_commentaire</td>\n" ; $text_debut="<input type=\"text\" name=\"new_debut\" size=\"10\" maxlength=\"30\" value=\"$sql_date_deb\">" ; if($sql_demi_jour_deb=="am") { $radio_deb_am="<input type=\"radio\" name=\"new_demi_jour_deb\" value=\"am\" checked>". _('form_am') ; $radio_deb_pm="<input type=\"radio\" name=\"new_demi_jour_deb\" value=\"pm\">". _('form_pm') ; } else { $radio_deb_am="<input type=\"radio\" name=\"new_demi_jour_deb\" value=\"am\">". _('form_am') ; $radio_deb_pm="<input type=\"radio\" name=\"new_demi_jour_deb\" value=\"pm\" checked>". _('form_pm') ; } $text_fin="<input type=\"text\" name=\"new_fin\" size=\"10\" maxlength=\"30\" value=\"$sql_date_fin\">" ; if($sql_demi_jour_fin=="am") { $radio_fin_am="<input type=\"radio\" name=\"new_demi_jour_fin\" value=\"am\" checked>". _('form_am') ; $radio_fin_pm="<input type=\"radio\" name=\"new_demi_jour_fin\" value=\"pm\">". _('form_pm') ; } else { $radio_fin_am="<input type=\"radio\" name=\"new_demi_jour_fin\" value=\"am\">". _('form_am') ; $radio_fin_pm="<input type=\"radio\" name=\"new_demi_jour_fin\" value=\"pm\" checked>". _('form_pm') ; } if($_SESSION['config']['disable_saise_champ_nb_jours_pris']) $text_nb_jours="<input type=\"text\" name=\"new_nb_jours\" size=\"5\" maxlength=\"30\" value=\"$sql_nb_jours\" style=\"background-color: #D4D4D4; \" readonly=\"readonly\">" ; else $text_nb_jours="<input type=\"text\" name=\"new_nb_jours\" size=\"5\" maxlength=\"30\" value=\"$sql_nb_jours\">" ; $text_commentaire="<input type=\"text\" name=\"new_comment\" size=\"15\" maxlength=\"30\" value=\"$sql_commentaire\">" ; } echo "</tr>\n"; // affichage 3ieme ligne : saisie des nouvelles valeurs echo "<tr align=\"center\">\n" ; echo "<td>$text_debut<br>$radio_deb_am / $radio_deb_pm</td><td>$text_fin<br>$radio_fin_am / $radio_fin_pm</td><td>$text_nb_jours</td><td>$text_commentaire</td>\n" ; echo "</tr>\n" ; echo '</tbody>'; echo "</table><br>\n\n" ; echo "<input type=\"hidden\" name=\"p_num_to_update\" value=\"$p_num\">\n" ; echo "<input type=\"hidden\" name=\"p_etat\" value=\"$sql_etat\">\n" ; echo "<input type=\"hidden\" name=\"session\" value=\"$session\">\n" ; echo "<input type=\"hidden\" name=\"onglet\" value=\"$onglet\">\n" ; echo "<input type=\"submit\" value=\"". _('form_submit') ."\">\n" ; echo "</form>\n" ; }
function confirmer($p_num, $onglet, $DEBUG = FALSE) { $PHP_SELF = $_SERVER['PHP_SELF']; $session = session_id(); // Récupération des informations $sql1 = 'SELECT p_login, p_date_deb, p_demi_jour_deb, p_date_fin, p_demi_jour_fin, p_nb_jours, p_commentaire, p_type, p_num FROM conges_periode WHERE p_num = \'' . SQL::quote($p_num) . '\''; //printf("sql1 = %s<br>\n", $sql1); $ReqLog1 = SQL::query($sql1); // AFFICHAGE TABLEAU echo "<form action=\"{$PHP_SELF}\" method=\"POST\">\n"; echo "<table class=\"table table-responsive table-condensed\">\n"; echo "<thead>\n"; echo "<tr>\n"; echo "<th>" . _('divers_debut_maj_1') . "</th>\n"; echo "<th>" . _('divers_fin_maj_1') . "</th>\n"; echo "<th>" . _('divers_nb_jours_maj_1') . "</th>\n"; echo "<th>" . _('divers_comment_maj_1') . "</th>\n"; echo "<th>" . _('divers_type_maj_1') . "</th>\n"; echo "</tr>\n"; echo "</thead>\n"; echo "<tbody>\n"; echo "<tr>\n"; while ($resultat1 = $ReqLog1->fetch_array()) { $sql_date_deb = eng_date_to_fr($resultat1["p_date_deb"]); $sql_demi_jour_deb = $resultat1["p_demi_jour_deb"]; if ($sql_demi_jour_deb == "am") { $demi_j_deb = _('divers_am_short'); } else { $demi_j_deb = _('divers_pm_short'); } $sql_date_fin = eng_date_to_fr($resultat1["p_date_fin"]); $sql_demi_jour_fin = $resultat1["p_demi_jour_fin"]; if ($sql_demi_jour_fin == "am") { $demi_j_fin = _('divers_am_short'); } else { $demi_j_fin = _('divers_pm_short'); } $sql_nb_jours = affiche_decimal($resultat1["p_nb_jours"]); //$sql_type=$resultat1["p_type"]; $sql_type = get_libelle_abs($resultat1["p_type"], $DEBUG); $sql_comment = $resultat1["p_commentaire"]; if ($DEBUG) { echo "{$sql_date_deb} _ {$demi_j_deb} : {$sql_date_fin} _ {$demi_j_fin} : {$sql_nb_jours} : {$sql_comment} : {$sql_type}<br>\n"; } echo "<td>{$sql_date_deb} _ {$demi_j_deb}</td>\n"; echo "<td>{$sql_date_fin} _ {$demi_j_fin}</td>\n"; echo "<td>{$sql_nb_jours}</td>\n"; echo "<td>{$sql_comment}</td>\n"; echo "<td>{$sql_type}</td>\n"; } echo "</tr>\n"; echo "</tbody>\n"; echo "</table>\n"; echo "<hr/>\n"; echo "<input type=\"hidden\" name=\"p_num_to_delete\" value=\"{$p_num}\">\n"; echo "<input type=\"hidden\" name=\"session\" value=\"{$session}\">\n"; echo "<input type=\"hidden\" name=\"onglet\" value=\"{$onglet}\">\n"; echo "<input class=\"btn btn-danger\" type=\"submit\" value=\"" . _('form_supprim') . "\">\n"; echo "<a class=\"btn\" href=\"{$PHP_SELF}?session={$session}&onglet=demandes_en_cours\">" . _('form_cancel') . "</a>\n"; echo "</form>\n"; }