main.php 4.6 KB
<!DOCTYPE html>
<html>
	<head>
		<title>Commande Appareil</title>
		<link 	href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" 
			rel="stylesheet"
		      	integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" 
		      	crossorigin="anonymous">
		<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/js/bootstrap.bundle.min.js" 
			integrity="sha384-gtEjrD/SeCtmISkJkNUaaKMoLD0//ElJ19smozuHV6z3Iehds+3Ulb9Bn9Plx0x4" 
			crossorigin="anonymous">
		</script>
	</head>

	<body style="background-color:grey;">
		<!--Retour page d'accueil -->
		<form method="post" action="index.html">
			<input type="submit" value="Retour a l'accueil" class="btn btn-secondary"/>
		</form>
		<br/>
		<!-- Lancement nouvelle recherche -->
		<form method="post" action="decouvre.php">
			<input type="button" id="recherche" value="Retourner à la recherche d'appareil" class="btn btn-success" onclick="Loading(); this.form.submit();"/>
		</form>
		<br/>
		<div class="spinner-border text-primary" id="load" role="status" style="display:none"></div>
		<div id="text-load" style="display:none">Veuillez patienter pendant la recherche d'appareil...<br/>Cette operation peut prendre quelques secondes</div>
		<br/>
		<div class="text-white">
		<?php	
			/* Recuperation de l'adresse IP, du type et du nom de l'appareil choisi */
			session_start();
			if(isset($_POST['App'])){
				/* Methode POST (quand on vient de la page de recherche/choix d'appareils */
				$number = 0;
				$App = $_POST['App']; /* App correspond au tableau d'appareil sélectionné de la page précédente */
				$_SESSION['App']=$App;
				foreach($App as $element){
					$number++;
					$donnees=explode("$",$element);
					$nom = $donnees[0];
					$type = $donnees[1];
					$adresse = $donnees[2];
					$Appareil[$number-1]['nom'] = $nom;
					$Appareil[$number-1]['type'] = $type;
					$Appareil[$number-1]['adresse'] = $adresse;
				}
			}else if(isset($_SESSION['App'])){
				/* Session (quand on vient de la page main) */
				$number = 0;
				$App = $_SESSION['App'];
				foreach($App as $element){
					$number++;
					$donnees=explode("$",$element);
					$nom = $donnees[0];
					$type = $donnees[1];
					$adresse = $donnees[2];		
					$Appareil[$number-1]['nom'] = $nom;
					$Appareil[$number-1]['type'] = $type;
					$Appareil[$number-1]['adresse'] = $adresse;
				}
			}else{
				/* Si par erreur on arrive sur cette page : redirection vers la page principale */
				echo "Pas de sélection réalisée, vous allez être redirigé";
				echo "<meta http-equiv=\"refresh\" content=\"0;URL=index.html\">";
			}

			/* DEBUG */
			/* Affichage des données de l'appareil (nom,type et adresse IP) */	
			/*for($i=1;$i<=count($Appareil);$i++){
				echo "Données de l'appareil $i choisi : <br/>";
				echo "Nom : ".$nom."<br/>";
				echo "Adresse : ".$adresse."<br/>";
				echo 'Type : '.$type.'<br/>';
				echo "<br/>";
			}*/

			/* Recherche des fichiers 'commandes_type.php' dans les dossiers des types d'appareils sélectionnés 
			 * Ces fichiers vont effectuer les commandes de l'appareil si un bouton est utilisé */
			for($i=0;$i<count($Appareil);$i++){
				$chemin = $Appareil[$i]['type'];
				$adresse = $Appareil[$i]['adresse'];
				$files = array_diff(scandir($chemin),array('..','.'));
				foreach($files as $type_cmd){
					$cmd_path = $chemin.'/'.$type_cmd;
					if(is_file($cmd_path) and strpos($cmd_path,"/commandes")!=false){
						include($cmd_path);
					}
				}	
			}
		?>
		</div>
		<br/>
		<?php
			/* Recherche des fichiers 'main_type.php' dans les dossiers des types d'appareils sélectionnés 
			 * Ces fichiers vont afficher une capture de l'appareil et les commandes que l'utilisateur peut utiliser */
			for($i=0;$i<count($Appareil);$i++){
				$chemin = getcwd().'/'.$Appareil[$i]['type'];
				$adresse = $Appareil[$i]['adresse'];
				$files = array_diff(scandir($chemin),array('..','.'));
				foreach($files as $type_form){
					$form_path = $chemin.'/'.$type_form;
					if(is_file($form_path) and strpos($form_path,"/main")!=false){
						echo '<div>';
						include($form_path);
						echo '</div>';
					}
				}	
			}
			/* Appel du script du rafraichissement des images, un script par appareil */
			for($i=0;$i<count($Appareil);$i++){
				include('Scripts/refresh_img.php');
			}
		?>
		<script type="text/javascript">
			/* Affichage du chargement */
			function Loading(){
				var spin = document.getElementById("load");
				spin.style= "";
				var recherche = document.getElementById("recherche");
				recherche.value = "Recherche en cours...";
				var txt = document.getElementById("text-load");
				txt.style= "";
			}
		</script>
	</body>
</html>