<?php
//  Copyright 2000 by Olivier Ravard (GPL) ravard@univ-rennes1.fr
// Version 1.0
function  authenticate()  {
    Header( "WWW-authenticate:  basic  realm='Abilene Guide'");
    Header( "HTTP/1.0  401  Unauthorized");
    exit;
  } 
if (isset($PHP_AUTH_USER)) {
	$db=mysql_connect("localhost","upload","2/mv4");
	mysql_select_db("auth",$db);
	$result = mysql_query("select * from users where user='$PHP_AUTH_USER'",$db);
	$auth = 0;
	if ($result != 0) {
		while ($row=mysql_fetch_array($result)) {
			if ($row["PW"]==$PHP_AUTH_PW && $row[expiration] > date("Y-m-d")) {
				$auth = 1;
			}
		}
	}
}
while(!isset($PHP_AUTH_USER)||  $auth==0 ) {
	authenticate();
	$db=mysql_connect("localhost","upload","2/mv4");
	mysql_select_db("auth",$db);
	$result = mysql_query("select * from users where user='$PHP_AUTH_USER'",$db);
	$auth = 0;
	if ($result != 0) {
		while ($row=mysql_fetch_array($result)) {
			if ($row["PW"]==$PHP_AUTH_PW && $row[expiration] > date("Y-m-d")) {
				$auth = 1;
			}
		}
	}
}


?>
<html>
<head>
<title> Site manager by Olivier Ravard</title>
</head>
<body bgcolor=#ffffff>

<?php  
function listrep ($base,$rep,$reste) {
	if (ereg("^/.*",$dir)) {
		$dir = substr($dir,1);
	}
	$pos = strpos($rep,"/");
	$rep1 = substr($rep,$pos+1);
	$token = strtok($rep,"/");	
	$d = dir("$base");
	$ancrep = exec("pwd");
	exec ("cd $base");
	chdir("$base");
	$res = "";
	while($entry=$d->read()) {
		if ($entry == $token) {
			$res = $res."<A href=filemanager.php3?dir=$reste/$entry><img src=\"folder_open.gif\" border=0>".str_replace("_"," ",$entry)."</A><br>\n";
			$res = $res."<table width=100%><tr><td width=5%>&nbsp;</td><td>".listrep("$base/$token","$rep1","$reste/$token")."</td></tr></table>";
		} else {
	         	if (is_dir($entry) && $entry != "." && $entry != "..") {
	                  	$res = $res . "<A href=filemanager.php3?dir=$reste/$entry><img src=\"folder.gif\" border=0>".str_replace("_"," ",$entry)."</A><br>\n";
			}
	        }
	}
	$d->close();
	exec ("cd $ancrep");
	chdir ($ancrep);
	return($res);	
}
//------------------------------------------------
//		 Name of directory
//------------------------------------------------
	$baserep = exec("pwd");
	if (ereg("^/.*",$dir)) {
		$dir = substr($dir,1);
	}
	echo "<H1>DIRECTORY \"$baserep/$dir\"</H1><BR>";

//------------------------------------------------
//		 What kind of action ?
//------------------------------------------------

if ($action=="Delete") {
	chdir ("$baserep/$dir");
	exec ("cd $baserep/$dir");
	if (is_file($file)) {
		exec ("rm $baserep/$dir/$file");
	} elseif (is_dir($file)) {
		exec ("rm -r $baserep/$dir/$file");
	}
}

if ($action=="Rename") {
	chdir ("$baserep/$dir");
	exec ("cd $baserep/$dir");
	if (is_file($file) || is_dir($file)) {
		exec ("mv $baserep/$dir/$file $baserep/$dir/$newfile");
	}
}

if ($action=="Create") {
	chdir ("$baserep/$dir");
	exec ("cd $baserep/$dir");
	if (!is_file($file) || !is_dir($file)) {
		exec ("mkdir $baserep/$dir/$file");
	}
}

if ($action=="upload") {
	exec ("cp $userfile $baserep/$dir/$userfile_name");
}

?>
	<form method=post enctype="multipart/form-data" action=filemanager.php3>
        <small>Upload a file in the open directory:</small>
        <input type=hidden name="dir" value=<? echo $dir; ?>>
        <input type=hidden name="action" value=upload>
        <input type=file name=userfile size=40 value=toto>
        <input name=upload value=" Upload " type=submit>
        </form>
  	<table width=100% border=1>
		<TR><TH>Dossiers</TH><TH>Possible actions on the selected file:</TH></TR>
		<TR><TD valign=top>
<?
		echo listrep($baserep,$dir,"");
?>
	<form method=post action=filemanager.php3>
	Create a new directory: <input type=text name=file><input type=submit name=action value="Create">
  	&nbsp;</TD>
		<TD valign=top>
		
			<input type=submit name=action value=Delete>  <BR>
			<input type=submit name=action value=Rename> en <input type=text name=newfile><BR>
			<input type=hidden name=dir value="<? echo $dir; ?>"><BR>
			<HR>
		<B><div align=center>Files list in the open directory:</div></B><HR>
<?
      $d = dir("$baserep/$dir");
  		exec ("cd $baserep/$dir");
			chdir("$baserep/$dir");
	    while($entry=$d->read()) {
	        if ($entry != "." && $entry != "..") {
	            	echo "&nbsp;<input type=radio name=file value=\"$entry\"> ";
			if (is_dir($entry)) {
				echo "<img src=folder.gif> ";
			}
			echo $entry."<BR>\n";
	       	}
      }
                  $d->close();

?>
		&nbsp;</form></TD></TR>
		</table>
</body>
</html>










