277,7 → 277,6 |
// Ajout ou Mise à jour des durées de travail |
if (isset($_POST['pr'])) { |
foreach($_POST['pr'] as $projet_id => $jours) { |
//echo '<pre>'.print_r($jours, true).'</pre>'; |
foreach($jours as $jour_num => $nbr_heure) { |
if (isset($jours_w_semaine[$jour_num])) { |
$jours_w_semaine[$jour_num]['act'] += $nbr_heure; |
348,21 → 347,18 |
if ($A->getIdDateAbsence() == $aso_semaine[$num_j]['mysql']) { |
if ($A->getIdAbsenceMotif() == $ab_id) { |
$bool_ajouter = false; |
$jours_w_semaine[$num_j]['mod'] = true; |
// Gestion des heures sup en fonction du type d'absence |
if ($AbsenceMotif->getMarkHsDiminuer()) { |
$jours_w_semaine[$num_j]['pre_a'] += $A->getDuree(); |
} else { |
$jours_w_semaine[$num_j]['pre'] += $A->getDuree(); |
$jours_w_semaine[$num_j]['mod'] = true; |
} |
if ($A->getDuree() != $ab_duree) { |
if (empty($ab_duree)) { |
if ($AbsenceMotif->getMarkCpDiminuer()) { |
$cp_h_modif -= $A->getDuree(); |
$Utilisateur->augmenterCongesPayes($A->getDuree()); |
} |
if ($AbsenceMotif->getMarkHsDiminuer()) { |
$hs_h_modif -= $A->getDuree(); |
} |
// Une fois des données saisie dans un jour, on ne supprime pas la ligne mais |
// on met la durée 0 |
$A->setDuree(0); |
372,11 → 368,8 |
$A->setDuree($ab_duree); |
$A->modifier(); |
if ($AbsenceMotif->getMarkCpDiminuer()) { |
$cp_h_modif -= $ab_duree_tmp - $ab_duree; |
$Utilisateur->augmenterCongesPayes(($ab_duree_tmp - $ab_duree)); |
} |
if ($AbsenceMotif->getMarkHsDiminuer()) { |
$hs_h_modif -= $ab_duree_tmp - $ab_duree; |
} |
} |
} |
} |
391,50 → 384,32 |
$A->setIdDateAbsence((string)$aso_semaine[$num_j]['mysql']); |
$A->ajouter(); |
if ($AbsenceMotif->getMarkCpDiminuer()) { |
$cp_h_modif += $ab_duree; |
$Utilisateur->diminuerCongesPayes($ab_duree); |
} |
if ($AbsenceMotif->getMarkHsDiminuer()) { |
$hs_h_modif += $ab_duree; |
} |
} |
} |
} |
|
// Gestion de la mise à jour des congés payés |
if ($cp_h_modif > 0) { |
$Utilisateur->diminuerCongesPayes($cp_h_modif); |
} |
if ($cp_h_modif < 0) { |
$Utilisateur->augmenterCongesPayes($cp_h_modif); |
} |
// Gestion de la mise à jour des heures sup |
if ($hs_h_modif > 0) { |
$Utilisateur->diminuerQuotaHeuresSup($hs_h_modif); |
} |
if ($hs_h_modif < 0) { |
$Utilisateur->augmenterQuotaHeuresSup($hs_h_modif); |
} |
//$Utilisateur->modifier(); |
} |
|
// Gestion de la mise à jour des heures sup |
foreach ($jours_w_semaine as $c => $j) { |
if (($j['pre'] != 0 || $j['act'] != 0) ) {// Modification sur le temps travaillé pour le jour courant |
$heure_sup_pre = $j['pre'] - ($j['tdt'] - $j['pre_a']);// -7 = 0 - 7 |
$heure_sup_act = $j['act'] - ($j['tdt'] - $j['act_a']);// -5 = 2 - 7 |
$heure_sup_dif = $heure_sup_act - $heure_sup_pre ;// 2 = -5 - -7 |
// Modifications existantes pour le jour courant |
if (($j['pre'] != 0 || $j['act'] != 0) || ($j['act_a'] != 0 || $j['pre_a'] != 0)) { |
$heure_sup_pre = ($j['tdt'] - ($j['pre_a'] + $j['pre'])) + $j['pre_a']; |
$heure_sup_act = ($j['tdt'] - ($j['act_a'] + $j['act'])) + $j['act_a']; |
$heure_sup_dif = $heure_sup_act - $heure_sup_pre ; |
if ($j['mod'] == false) {// Première fois que l'on modifie le jour |
if ($heure_sup_act < 0) { |
if ($heure_sup_act > 0) { |
$Utilisateur->diminuerQuotaHeuresSup($heure_sup_act); |
} |
if ($heure_sup_act > 0) { |
if ($heure_sup_act < 0) { |
$Utilisateur->augmenterQuotaHeuresSup($heure_sup_act); |
} |
} else {// Les heures sup ont déjà été comptabilisées |
if ($heure_sup_dif < 0) { |
if ($heure_sup_dif > 0) { |
$Utilisateur->diminuerQuotaHeuresSup($heure_sup_dif); |
} |
if ($heure_sup_dif > 0) { |
if ($heure_sup_dif < 0) { |
$Utilisateur->augmenterQuotaHeuresSup($heure_sup_dif); |
} |
} |