<?php /* $Id: bro_main.php,v 1.11 2004/09/06 18:14:36 anonymous Exp $ ---------------------------------------------------------------------- AlternC - Web Hosting System Copyright (C) 2002 by the AlternC Development Team. http://alternc.org/ ---------------------------------------------------------------------- Based on: Valentin Lacambre's web hosting softwares: http://altern.org/ ---------------------------------------------------------------------- LICENSE This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. To read the license please visit http://www.gnu.org/copyleft/gpl.html ---------------------------------------------------------------------- Original Author of file: Benjamin Sonntag, Remi Purpose of file: Online file Browser of AlternC TODO : Voir ??? + D�placer / Copier ---------------------------------------------------------------------- */ require_once("../class/config.php"); $p=$bro->GetPrefs(); if (!$R && $p["golastdir"]) { $R=$p["lastdir"]; } $R=$bro->convertabsolute($R,1); // on fait ? if ($formu) { switch ($formu) { case 1: // Cr�er le r�pertoire $R.$nomfich $bro->CreateDir($R,$nomfich); $p=$bro->GetPrefs(); break; case 6: // Cr�er le fichier $R.$nomfich $bro->CreateFile($R,$nomfich); $p=$bro->GetPrefs(); if ($p["createfile"]==1) { $file=$nomfich; include("bro_editor.php"); exit(); } break; case 2: // act vaut Supprimer Copier ou Renommer. if ($actdel) { if($del_confirm == "y") $bro->DeleteFile($d,$R); else{ include("head.php"); ?> </head> <body> <h3><?php printf(_("Deleting files and/or directories")); ?> : </h3> <form action="bro_main.php" method="post"> <input type="hidden" name="del_confirm" value="y" /> <input type="hidden" name="formu" value="2" /> <p class="error"><?php __("WARNING : Confirm the deletion of this files"); ?></p> <?php foreach($d as $file){ ?> <p><?php echo $file; ?></p> <input type="hidden" name="d[]" value="<?php echo $file; ?>" /> <?php } ?> <blockquote> <input type="submit" class="inb" name="actdel" value="<?php __("Yes"); ?>" /> <input type="button" class="inb" name="cancel" value="<?php __("No"); ?>" onclick="document.location='bro_main.php';" /> </blockquote> </form> </body> </html> <?php die(); } } if ($actmove) { $bro->MoveFile($d,$R,$actmoveto); } break; case 4: // Renommage Effectif... $bro->RenameFile($R,$o,$d); // Rename $R (directory) $o (old) $d (new) names break; case 3: // Upload de fichier... $bro->UploadFile($R); break; } } /* Creation de la liste des fichiers courants */ $c=$bro->filelist($R); if ($c===false) $error=$err->errstr(); include("head.php"); ?> </head> <body> <table border="0" width="100%" cellspacing="0"> <tr><td> <hr /> <table width="100%"><tr><td valign="top"> <a href="bro_main.php?R=/"><?php echo $mem->user["login"]; ?></a> / <?php echo $bro->PathList($R,"bro_main.php") ?><br /> <small> <?php if ($error) echo "<font color=\"red\">$error</font>"; ?> </td><td valign="top" align="right"> <h3><?php __("File browser"); ?></h3> <form action="bro_main.php" method="post" name="nn" id="nn"> <input type="hidden" name="R" value="<?php echo $R; ?>" /> <table><tr> <td><input type="text" class="int" name="nomfich" size="22" maxlength="255" /></td> <td><input type="submit" class="inb" value="<?php __("Create"); ?>" /></td> </tr><tr><td> <input type="radio" class="inc" id="nfile" onclick="document.nn.nomfich.focus();" name="formu" value="6" <?php if (!$p["crff"]) echo "checked=\"checked\""; ?> /><label for="nfile"> <?php __("File"); ?></label> <input type="radio" class="inc" id="nfold" onclick="document.nn.nomfich.focus();" name="formu" value="1" <?php if ($p["crff"]) echo "checked=\"checked\""; ?> /><label for="nfold"> <?php __("Folder"); ?></label> </td><td></td></tr></table> </form> </td></tr> </table> </td></tr> <tr><td valign="top"> <?php /* Renommer / Copier / D�placer les fichiers : */ if ($formu==2 && $actrename && count($d)) { echo "<table cellpadding=\"6\">\n"; echo "<form action=\"bro_main.php\" method=\"post\">\n"; echo "<input type=\"hidden\" name=\"R\" value=\"$R\" />\n"; echo "<input type=\"hidden\" name=\"formu\" value=\"4\" />\n"; echo "<tr><th colspan=\"2\">"._("Rename")."</th></tr>"; for ($i=0;$i<count($d);$i++) { $d[$i]=ssla($d[$i]); echo "<tr><td><input type=\"hidden\" name=\"o[$i]\" value=\"".$d[$i]."\" />".$d[$i]."</td>"; echo "<td><input type=\"text\" class=\"int\" name=\"d[$i]\" value=\"".$d[$i]."\" /></td></tr>"; } echo "<tr><td colspan=\"2\" align=\"center\"><input type=\"submit\" class=\"inb\" name=\"submit\" value=\""._("Rename")."\" /></td></tr>"; echo "</table></form>\n"; echo "<hr />\n"; } /* We draw the file list and button bar only if there is files here ! */ if (count($c)) { ?> <form action="bro_main.php" method="post" name="main" id="main"> <input type="hidden" name="R" value="<?php echo $R; ?>" /> <input type="hidden" name="formu" value="2" /> <hr /> <script type="text/javascript"> <!-- document.write("<input type=\"button\" value=\"<?php __("all/none"); ?>\" class=\"inb\" onclick=\"CheckAll();\" />"); // --> </script> <input type="submit" class="inb" name="actdel" value="<?php __("Delete"); ?>" /> <input type="submit" class="inb" name="actrename" value="<?php __("Rename"); ?>" /> <input type="submit" class="inb" name="actmove" value="<?php __("Move"); ?>" /> : <input type="text" class="int" name="actmoveto" value="" /> <script type="text/javascript"> <!-- document.write("<input type=\"button\" name=\"bff\" onclick=\"browseforfolder('main.actmoveto');\" value=\" ... \" class=\"inb\" />"); // --> </script> <hr /> <?php switch ($p["listmode"]) { case 0: /* AFFICHE 1 COLONNE DETAILLEE */ reset($c); echo "<table width=\"100%\" style=\"border: 0px\" cellpadding=\"0\" cellspacing=\"0\">"; $col=1; for($i=0;$i<count($c);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input type=\"checkbox\" class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\" /></td>"; if ($p["showicons"]) { echo "<td width=\"28\"><img src=\"icon/".$bro->icon($c[$i]["name"])."\" width=\"16\" height=\"16\" alt=\"\" /></td>"; } echo "<td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td>"; echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d H:i:s",$c[$i]["date"]))."<br /></td>"; if ($p["showtype"]) { echo "<td>".$bro->mime($c[$i]["name"])."</td>"; } $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("View")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { // DOSSIER : echo " <td width=\"28\"><input type=\"checkbox\" class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\" /></td>"; if ($p["showicons"]) { echo "<td width=\"28\"><img src=\"icon/folder.png\" width=\"16\" height=\"16\" alt=\"\" /></td>"; } echo "<td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td>"; echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d h:i:s",$c[$i]["date"]))."<br /></td>"; if ($p["showtype"]) { echo "<td>Dossier</td>"; } echo "<td> "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; break; case 1: /* AFFICHE 2 COLONNES COURTES */ reset($c); echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; echo "<tr><td valign=\"top\" width=\"50%\">"; echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; $col=1; for($i=0;$i<round(count($c)/2);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input type=\"checkbox\" class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\" /></td><td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("V")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; echo " "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; echo "</td><td valign=\"top\" width=\"50%\">"; echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; $col=1; for($i=round(count($c)/2);$i<count($c);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("V")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; echo " "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; echo "</td></tr>"; echo "</table>"; break; case 2: /* AFFICHE 3 COLONNES COURTES */ reset($c); echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; echo "<tr><td valign=\"top\" width=\"33%\">"; echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; $col=1; for($i=0;$i<round(count($c)/3);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("V")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; echo " "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; echo "</td><td valign=\"top\" width=\"33%\">"; echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; $col=1; for($i=round(count($c)/3);$i<round(2*count($c)/3);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("V")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; echo " "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; echo "</td><td valign=\"top\" width=\"33%\">"; echo "<table width=\"100%\" border=0 cellpadding=0 cellspacing=0>"; $col=1; for($i=round(2*count($c)/3);$i<count($c);$i++) { $col=3-$col; echo "<tr class=\"lst$col\">\n"; if ($c[$i]["type"]) { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><a href=\""; echo "bro_editor.php?file=".urlencode($c[$i]["name"])."&R=".urlencode($R); echo "\">".$c[$i]["name"]."</a></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; $vu=$bro->viewurl($R,$c[$i]["name"]); if ($vu) { echo "<td><a href=\"$vu\">"._("View")."</a>"; } else { echo "<td> "; } echo "</td>\n"; } else { echo " <td width=\"28\"><input TYPE=checkbox class=\"inc\" name=\"d[]\" value=\"".$c[$i]["name"]."\"></td><td><b><a href=\""; echo "bro_main.php?R=".urlencode($R."/".$c[$i]["name"]); echo "\">".$c[$i]["name"]."/</a></b></td>\n"; echo " <td>".format_size($c[$i]["size"])."</td><td>"; echo " "; echo "</td>\n"; } echo "</tr>\n"; } echo "</table>"; echo "</td></tr>"; echo "</table>"; break; } ?> </form> <?php } // is there any files here ? else { echo "<p class=\"error\">"._("No files in this folder")."</p>"; } ?> </td></tr> <tr><td colspan="2"> <form action="bro_main.php" enctype="multipart/form-data" method="post"> <input type="hidden" name="R" value="<?php echo $R; ?>" /> <input type="hidden" name="formu" value="3" /> <hr /> <?php __("Import this file"); ?> <input class="int" name="userfile" type="file" /> <input type="hidden" name="MAX_FILE_SIZE" value="10000000" /> <input type="submit" class="inb" value="<?php __("Send"); ?>" /> <hr /> </form> <p> </p> <?php if ($id=$ftp->is_ftp($R)) { echo _("There is an ftp account in this folder")." <a href=\"ftp_edit?id=".urlencode($id)."\">"._("Click here to edit this ftp account.")."</a><br />"; } else { echo "<a href=\"ftp_add.php?dir=".urlencode($R)."\">"._("Click here to create an ftp account in this folder.")."</a><br />"; } if ($hta->is_protected($R)) { echo "<a href=\"hta_edit?dir=$R\">"._("This folder has restricted access")."</a><br />"; } else { echo "<a href=\"hta_add.php?value=$R\">"._("Click here to protect this folder with login/password")."</a><br />"; } ?> <br /> <a href="bro_tgzdown.php?dir=<?php echo $R; ?>"><?php __("Download"); ?></a> <?php __("this folder and its subfolders as a compressed file"); ?> (<?php echo $bro->l_tgz[$p["downfmt"]]; ?>)<br /> <a href="bro_pref.php"><?php __("Configure the file browser"); ?></a><br /> </td></tr></table> </body> </html>