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/TEST/../MCPRO/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/logmcpe/www/TEST/../MCPRO/cadabs2.php
<?php
include_once 'code/init.php' ;
print_header();

	$_POST = array_merge_recursive($_POST, $_GET) ;
$q = dbi_query("SELECT * FROM ".TABLE_CONFIG." WHERE agence_id=$agence") ;
$conf = array() ;
while($r = dbi_fetch_row($q))
	$conf[$r['key']] = $r['value'] ;
define('RIEN','FFFFFF');
define('DISPO',$conf['dispo']);
define('PONCT',$conf['prest']);
define('PONCT_HORS_DISPO',$conf['presthd']);
define('RECUR',$conf['prestr']);
define('RECUR_HORS_DISPO',$conf['prestrhd']);
define('CHEVAUCHEMENT',$conf['prestc']);
if(empty($_GET))
{
?>
<form action="cadabs2.php" method="post" name="vues">
<TABLE width="650" align="left">
<tr><td style="border-right:none" align="left">
<?=get_intervenants_drop_down('inter[]', 'multiple', @$_POST['inter'], false)?>
<a onclick="var select = document.vues.elements[0].options ; for(i = 0 ; i < select.length ; i++) select[i].selected = true; return false" href="">S&eacute;lectionner tout</a>&nbsp;|&nbsp;<a onclick="var select = document.vues.elements[0].options ; for(i = 0 ; i < select.length ; i++) select[i].selected = false; return false" href="">D&eacute;s&eacute;lectionner tout</a>
</td>
<td style="border-right:none" width="300" align="left">
Afficher :<br />
<input type="radio" name="dispo" value="1" onclick="this.form.rec.disabled = this.form.pon.disabled = this.checked ;"<?=isset($_POST['dispo']) && $_POST['dispo'] == 1 ? ' checked' : ''?>> Uniquement les disponibilit&eacute;s<br />
<input type="radio" name="dispo" value="2" onclick="this.form.rec.disabled = this.form.pon.disabled = !this.checked ;"<?=!isset($_POST['dispo']) || $_POST['dispo'] == 2 ? ' checked' : ''?>> Les disponibilit&eacute;s avec<br />
<blockquote><label for="rec"><input type="checkbox" name="rec" id="rec"<?=isset($_POST['rec']) || empty($_POST) || $_POST['dispo'] == 1 ? ' checked' : ''?><?=isset($_POST['dispo']) && $_POST['dispo'] == 1 ? ' disabled' : ''?>> Prestations r&eacute;currentes</label><br>
<label for="pon"><input type="checkbox" name="pon" id="pon"<?=isset($_POST['pon']) || empty($_POST) || $_POST['dispo'] == 1 ? ' checked' : ''?><?=isset($_POST['dispo']) && $_POST['dispo'] == 1 ? ' disabled' : ''?>>  Prestations ponctuelles</label></blockquote><br>
<select name="type">
<option value="1"<?=!isset($_POST['type']) || $_POST['type'] == 1 ? ' selected' : ''?>>Par intervenant et par jour</option>
<option value="2"<?=isset($_POST['type']) && $_POST['type'] == 2 ? ' selected' : ''?>>Par jour et par intervenant</option>
</select>
<input type="submit" class="bigbutton" value="Afficher" onClick="this.disabled=true;this.form.submit();">
</td></tr>
</TABLE>
</form>
<?php
}
?>
<style type="text/css">
<!--
td, th {
	border-right:solid 1px black;
}
-->
</style>
<?php

{
 
$datz = date("Ymd");
	$disp = dbi_query("SELECT i.inter_id, inter_genre, inter_nom, inter_pnom, inter_candidature FROM ".TABLE_INTERV." i where i.agence_id=$agence ".( $_SESSION['inter_actif']=='off' ? "" : "AND inter_actif='0'")." AND i.inter_id IN (SELECT inter_id FROM ".TABLE_DISPO." ) AND i.inter_id NOT IN (SELECT inter_id FROM ".TABLE_ABSENCES." a WHERE a.date_fin>=$datz OR a.date_fin is null  ) order by inter_candidature, inter_nom, inter_pnom") ;
$ta=mysql_num_rows($disp);

while ($s = dbi_fetch_row($disp) )
{
 $inter=$s['inter_id'];

	define('HSTART', substr($conf['hstart'], 0, 2)*4+substr($conf['hstart'], 2, 2)/15) ;
	define('HEND', substr($conf['hend'], 0, 2)*4+substr($conf['hend'], 2, 2)/15) ;
	$tab = array() ;

	{
	$info="PAS DE DISPONIBILITE";
	$col='#FFFF66';
		list($tab[$inter]['nom']) = dbi_fetch_row(dbi_query("SELECT concat_ws(' ', inter_genre, inter_nom, inter_pnom) FROM ".TABLE_INTERV." WHERE inter_id = $inter")) ;
		$tab[$inter]['jours'] = array_fill(0, 7, array_fill(HSTART, HEND-HSTART, 0)) ;
		$dispo = dbi_query("SELECT * FROM ".TABLE_DISPO." WHERE inter_id=$inter AND agence_id=$agence order by dispo_hdeb") ;
		while ($d = dbi_fetch_row($dispo))
		{
			$from = isset($_POST['dat']) ? $_POST['dat'] : time2int(time()-(date('w')-1)*24*3600) ;
	$to = int2time($from)+6*24*3600 ;
		if(date('H', $to) == 23)
			$to += 3600 ;
		if(date('H', $to) == 1)
			$to -= 3600 ;
		$to = time2int($to);
		


	

			sscanf(sprintf("%06d", $d['dispo_Hdeb']), "%02d%02d00", $h, $m) ;
			$deb = $h*4+$m/15 ;
			for ($i = 0 ; $i < $d['dispo_Hduree']/15 && $deb+$i <= HEND; $i++)
				$tab[$inter]['jours'][$d['dispo_jour']][$deb+$i] = 1 ;
		}
		if(isset($_POST['dispo']) && $_POST['dispo'] == 2)
		{

//BBBBBBBBBBBBBBBBB		
$datz = date("Ymd");

 $d = date('d', strtotime($_POST['dat']));
 $m = date('m', strtotime($_POST['dat']));
 $y = date('Y', strtotime($_POST['dat']));

$db=debutsem($y,$m,$d);
$from = isset($db) ? $db : time2int(time()-(date('w')-1)*24*3600) ;
$to = time2int(int2time($from)+6*24*3600) ;
$plng = dbi_query("SELECT * FROM ".TABLE_PLNG." WHERE date_debutpln=$from AND date_finpln=$to AND inter_id=$inter ");
$l=1;
$plngq = dbi_query("SELECT * FROM ".TABLE_PLNG." WHERE date_debutpln=$from AND date_finpln=$to AND inter_id=$inter ");
$sem='';
$total=0;
list($heures_contra)=dbi_fetch_row(dbi_query("SELECT contrat_heure FROM ".TABLE_CONTRAT." WHERE inter_id = ".$inter." AND agence_id = ".$agence." AND contrat_debut<=".$from." AND ( contrat_fin IS NULL OR contrat_fin >".$from." ) ORDER BY contrat_debut DESC"));

while ($gf = dbi_fetch_row($plngq)){
$total=$total+$gf['presta_Hduree'];
}
$sem=$total/=60;
if ($d = dbi_fetch_row($plng))
         {
		 
	$plng1 = dbi_query("SELECT * FROM ".TABLE_PLNG." WHERE date_debutpln=$from AND date_finpln=$to AND presta_jour <>0 AND inter_id=$inter ");
$offset = 0 ;
$indic=0;
while ($p = dbi_fetch_row($plng1))
{
//qq
if (($heures_contra != "") and $sem != 0 )
{

$info= " : ".$sem." HT ".$heures_contra.".HC";
        if ( $sem<$heures_contra)
$col='#FF0000';
else
$col='#0000FF';

}
else 
{
	if(($sem != 0) and ($heures_contra == ""))
	{
		$info= " ".$sem." HT NC! ";
	$col='#0000FF';	
	}
	else if (($sem == 0) and ($heures_contra != ""))
	{
		$info= " : ".$sem." HT ".$heures_contra.".HC";
	$col='#FF0000';
	
	}
	else{
	$info= " ".$sem." HT  NC! ";
	$col='#66FF99';
	}
}
//qq
	if($p['inter_id'] == $inter)
		{
          sscanf(sprintf("%06d", $p['presta_Hdeb']), "%02d%02d00", $h, $m) ;
				$deb = $h*4+$m/15 ;
				$jour = $p['presta_recur'] ? $p['presta_jour'] : date('w', int2time($p['presta_date_debut'])) ;
				for ($i = 0 ; $i < $p['presta_Hduree']/15 && $deb+$i <= HEND ; $i++)
				{
					switch ($tab[$inter]['jours'][$jour][$deb+$i])
					{
						case 0 :	$tab[$inter]['jours'][$jour][$deb+$i] = ($p['presta_recur']+1)*2 ;
									break ;
						case 1 :	$tab[$inter]['jours'][$jour][$deb+$i] = ($p['presta_recur']+1)*2+1;
									break ;
						case 2 :
						case 3 :
						case 4 :
						case 5 :	$tab[$inter]['jours'][$jour][$deb+$i] = 6 ;
					}
				}

		}
	

//}
//sssssssssssssssssssss
}	 
		 
         } 
else {
	
$dispo = dbi_query("SELECT * FROM ".TABLE_PREST." p, ".TABLE_CLIENT." c WHERE p.client_id=c.client_id  AND (p.presta_date_fin >= $dat OR p.presta_date_fin is null) AND p.agence_id=$agence AND (p.inter_id=$inter OR EXISTS(SELECT * FROM ".TABLE_PRESTA_MODIF." pm WHERE pm.inter_id is not null AND p.presta_id = pm.presta_id AND inter_id = $inter)) AND p.presta_id NOT IN (SELECT DISTINCT new_presta_id FROM ".TABLE_EXCEPT." e, ".TABLE_PREST." p WHERE e.new_presta_id is not null AND e.presta_id=p.presta_id AND (inter_id = $inter OR EXISTS(SELECT * FROM ".TABLE_PRESTA_MODIF." pm WHERE pm.inter_id is not null AND p.presta_id = pm.presta_id AND inter_id = $inter)))") ;



$offset = 0 ;
$indic=0;
while ($d = dbi_fetch_row($dispo))
{
 
	$date = get_occurence($d['presta_id'], 0, $from,0,"plan") ;
	$last = 0 ;
	//echo "<br>///////////////////////////////////////".$indic;
	$indic++;
	while ($date && $date['date'] <= $to && $date['date'] >= $from)
	{
		if($date['inter'] == $inter)
		{
		//aaa
 $j = date('d', strtotime($date['date']));
 $m = date('m', strtotime($date['date']));
 $a = date('Y', strtotime($date['date']));
$dayOfWeek = date("l",mktime(0,0,0, $m, $j,$a));
if ($dayOfWeek=="Sunday") $presjour=0;
if ($dayOfWeek=="Monday") $presjour=1;
if ($dayOfWeek=="Tuesday") $presjour=2;
if ($dayOfWeek=="Wednesday") $presjour=3;
if ($dayOfWeek=="Thursday") $presjour=4;
if ($dayOfWeek=="Friday") $presjour=5;
if ($dayOfWeek=="Saturday") $presjour=6;
          sscanf(sprintf("%06d", $date['deb']), "%02d%02d00", $h, $m) ;
				$deb = $h*4+$m/15 ;
				$jour = $date['recurrente'] ? $presjour : date('w', int2time($date['date'])) ;
				for ($i = 0 ; $i < $date['duree']/15 && $deb+$i <= HEND ; $i++)
				{
					switch ($tab[$inter]['jours'][$jour][$deb+$i])
					{
						case 0 :	$tab[$inter]['jours'][$jour][$deb+$i] = ($date['recurrente']+1)*2 ;
									break ;
						case 1 :	$tab[$inter]['jours'][$jour][$deb+$i] = ($date['recurrente']+1)*2+1;
									break ;
						case 2 :
						case 3 :
						case 4 :
						case 5 :	$tab[$inter]['jours'][$jour][$deb+$i] = 6 ;
					}
				}
		//aaa
//enregistre dans le planinge
  if ($date['deb']==null){
	               $prestdebut=$d['presta_Hdeb'];
	                   $prestfin=$d['presta_Hduree'];
	                                   }
	             else {
	                    	$prestdebut=$date['deb'];
	                        $prestfin=$date['duree'];
	                  }
	$dat = date("Ymd");
$timestamp =  date('His');
$reqint = dbi_query("SELECT * FROM ".TABLE_INTERV." WHERE  inter_id=$inter ");
if ($int = dbi_fetch_row($reqint)){
$inter_genre=$int['inter_genre'];
$inter_nom=addslashes($int['inter_nom']);
$inter_pnom=addslashes($int['inter_pnom']);
$inter_adr1=addslashes($int['inter_adr1']);
$inter_cp=$int['inter_cp'];
$inter_ville=addslashes($int['inter_ville']);
$inter_teldomi=$int['inter_teldomi'];
$inter_telport=$int['inter_telport'];
$inter_zones_id=$int['inter_zones_id'];
$inter_chien=$int['inter_chien'];
$inter_chat=$int['inter_chat'];
$inter_vehicule=$int['inter_vehicule'];
$inter_repass=$int['inter_repass'];
$inter_menage=$int['inter_menage'];
}
$client_adr1=addslashes($d['client_adr1']);
$client_nom=addslashes($d['client_nom']);
$client_pnom=addslashes($d['client_pnom']);
$client_ville=addslashes($d['client_ville']);
	//,`inter_genre`,`inter_nom`,`inter_pnom`,`inter_adr1`,`inter_cp`,`inter_ville`,`inter_teldomi`,`inter_telport`,`inter_zones_id`,`inter_chien`,`inter_chat`,`inter_vehicule`,`inter_repass`,`inter_menage`
// enregistrement dans planning
	$sql = "INSERT INTO ".TABLE_PLNG." ( `client_id`,`client_nom` , `client_pnom` , `client_adr1` , `client_cp` , `client_ville`, `client_teldom` , `client_telport1` , `client_telport2` , `client_telpro`, `client_zones_id` , agence_id,`presta_id`,`presta_date_debut`,`presta_Hdeb`,`presta_Hduree`,`presta_recur`, `presta_date_fin`,`presta_jour`,`presta_forfait`,`presta_forfaitHT`,`inter_id`,`date_debutpln`,`date_finpln`,`date_pln`,`pln_Hdeb`,`inter_genre`,`inter_nom`,`inter_pnom`,`inter_adr1`,`inter_cp`,`inter_ville`,`inter_teldomi`,`inter_telport`,`inter_zones_id`,`inter_chien`,`inter_chat`,`inter_vehicule`,`inter_repass`,`inter_menage`) 
	VALUES (
	'".$d['client_id']."','$client_nom', '$client_pnom', '$client_adr1', '".$d['client_cp']."', '$client_ville', '".$d['client_teldom']."', '".$d['client_telport1']."', '".$d['client_telport2']."', '".$d['$client_telpro']."', '".$d['client_zones_id']."', '$agence','".$d['presta_id']."','".$d['presta_date_debut']."','".$prestdebut."','".$prestfin."','".$d['presta_recur']."','".$d['presta_date_fin']."','$jour','".$d['presta_forfait']."','".$d['presta_forfaitHT']."','$inter','$from','$to','$dat','$timestamp','$inter_genre','$inter_nom','$inter_pnom','$inter_adr1','$inter_cp','$inter_ville','$inter_teldomi','$inter_telport','$inter_zones_id','$inter_chien','$inter_chat','$inter_vehicule','$inter_repass','$inter_menage')";
		
	dbi_query ( $sql );
//enregistre dans le planinge
        }
		
		if($last == $date['date'])
			$offset ++ ;
		else
			$offset = 0 ;
		$last = $date['date'] ;
		$date = get_occurence($d['presta_id'], 1+$offset, $date['date'],0,"plan") ;
		
		//echo "<br> // date=".$date['date']." last=".$last;
		//echo "<br> test date=<pre>".print_r($date)."</pre>";
	}

}
    //qq

list($heures_contrat)=dbi_fetch_row(dbi_query("SELECT contrat_heure FROM ".TABLE_CONTRAT." WHERE inter_id = ".$inter." AND agence_id = ".$agence." AND contrat_debut<=".$from." AND ( contrat_fin IS NULL OR contrat_fin >".$from." ) ORDER BY contrat_debut DESC"));

$plngq = dbi_query("SELECT * FROM ".TABLE_PLNG." WHERE date_debutpln=$from AND date_finpln=$to AND presta_jour <>0 AND inter_id=$inter ");
$sem='';
$total=0;
while ($gf = dbi_fetch_row($plngq)){
$total=$total+$gf['presta_Hduree'];
}
$sem=$total/=60;
if (($heures_contrat != "") and $sem != 0 )
{

$info= " : ".$sem." HT ".$heures_contrat.".HC";
        if ( $sem<$heures_contrat)
$col='#FF0000';
else
$col='#0000FF';

}
else 
{
	if(($sem != 0) and ($heures_contrat == ""))
	{
		$info= " ".$sem." HT NC! ";
	$col='#0000FF';	
	}
	else if (($sem == 0) and ($heures_contrat != ""))
	{
		$info= " : ".$sem." HT ".$heures_contrat.".HC";
	$col='#FF0000';
	
	}
	else{
	$info= " ".$sem." HT  NC! ";
	$col='#66FF99';
	}
}
//qq 
	}
//BBBBBBBBBBBBBBBBBBBB
			
			for ($i = 0 ; $i < 7 ; $i++)
				for ($j = HSTART ; $j < HEND ; $j++)
					if((in_array($tab[$inter]['jours'][$i][$j], array(4,5)) && !isset($_POST['rec'])) || (in_array($tab[$inter]['jours'][$i][$j], array(2,3)) && !isset($_POST['pon'])) || ($tab[$inter]['jours'][$i][$j] == 6 && !isset($_POST['rec']) && !isset($_POST['pon'])))
						$tab[$inter]['jours'][$i][$j] = 0 ;
		}
	}
?>
<table  bgcolor=<?=$col?> cellspacing="0" cellpadding="0" width="100%" border="0" class="cal" align="left">
<?php
$heures = '	<tr class="tr_cal1">
		<th colspan="2">' ;
	for($i = HSTART ; $i < HEND ; $i++)
		if ($i%2 == 0)
			$heures .= sprintf('<th class="cal" colspan="2" nowrap style="font-size:9px">&nbsp;%02dh%02d&nbsp;</th>', intval($i/4), ($i%4)*15) ;
$heures .= '	</tr>' ;
?>
<?php

	$sem = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi') ;

$colors = array(RIEN, DISPO, PONCT_HORS_DISPO, PONCT, RECUR_HORS_DISPO, RECUR, CHEVAUCHEMENT) ;
	switch($_POST['type'])
	{
	
		case 1 :
			$i = 0 ;
			foreach($tab as $int)
			{
			
				echo $heures ;
				printf('<td   class="td_cal%2$d">%1$s</td>', $info, $i%2) ; 
				printf('<tr><td width="240" rowspan="'.strlen($conf['jour']).'" class="td_cal%2$d">%1$s</td>', $int['nom'], $i%2) ;
				for($jour = 1 ; $jour <= 7 ; $jour++)
				{
					if(substr_count($conf['jour'], $jour%7))
					{
						$j = $int['jours'][$jour%7] ;
						printf('<td class="td_cal%2$d">%1$s</td>', $sem[$jour%7], $i%2) ; 
						foreach($j as $h)
							printf('<td '.($h ? 'style="background-color:#%1$s !important;" ' : '').'class="td_cal%2$d"></td>', $colors[$h], $i%2) ;
						echo "</tr><tr>" ;
						$i++;
					}
				}
				echo '</tr>' ;
			}
			break;
		case 2 :
			$i = 0 ;
			$j = 0 ;
			for($jour = 1 ; $jour <= 7 ; $jour++, $j++)
			{
				if(substr_count($conf['jour'], $jour%7))
				{
					echo $heures ;
					printf('<tr><td rowspan="%3$d" class="td_cal%2$d">%1$s</td>', $sem[$jour%7], $j%2, count($tab)) ;
					foreach($tab as $int)
					{
						printf('<td class="td_cal%2$d">%1$s</td>', $int['nom'], $i%2) ; 
						foreach($int['jours'][$jour%7] as $h)
							printf('<td '.($h ? 'style="background-color:#%1$s !important;" ' : '').'class="td_cal%2$d"></td>', $colors[$h], $i%2) ;
						echo "</tr><tr>" ;
						$i++;
					}
					echo '</tr>' ;
				}
			}
			break;
	}
	echo $heures ;
		 



 }

	   
	

}
	//TERMINE 

	if ($ta==0 and $tb==0)
		printf('<td   class="td_cal%2$d">%1$s</td>', "PAS DE DISPONIBILITE", $i%2) ; 

?>
</body>
</html>

AnonSec - 2021