/
com/planet_ink/coffee_mud/Abilities/Common/
com/planet_ink/coffee_mud/Abilities/Diseases/
com/planet_ink/coffee_mud/Abilities/Druid/
com/planet_ink/coffee_mud/Abilities/Fighter/
com/planet_ink/coffee_mud/Abilities/Languages/
com/planet_ink/coffee_mud/Abilities/Misc/
com/planet_ink/coffee_mud/Abilities/Prayers/
com/planet_ink/coffee_mud/Abilities/Properties/
com/planet_ink/coffee_mud/Abilities/Skills/
com/planet_ink/coffee_mud/Abilities/Songs/
com/planet_ink/coffee_mud/Abilities/Specializations/
com/planet_ink/coffee_mud/Abilities/Spells/
com/planet_ink/coffee_mud/Abilities/Thief/
com/planet_ink/coffee_mud/Abilities/Traps/
com/planet_ink/coffee_mud/Behaviors/
com/planet_ink/coffee_mud/CharClasses/
com/planet_ink/coffee_mud/CharClasses/interfaces/
com/planet_ink/coffee_mud/Commands/
com/planet_ink/coffee_mud/Commands/interfaces/
com/planet_ink/coffee_mud/Common/
com/planet_ink/coffee_mud/Common/interfaces/
com/planet_ink/coffee_mud/Exits/interfaces/
com/planet_ink/coffee_mud/Items/Armor/
com/planet_ink/coffee_mud/Items/Basic/
com/planet_ink/coffee_mud/Items/BasicTech/
com/planet_ink/coffee_mud/Items/CompTech/
com/planet_ink/coffee_mud/Items/MiscMagic/
com/planet_ink/coffee_mud/Items/Weapons/
com/planet_ink/coffee_mud/Items/interfaces/
com/planet_ink/coffee_mud/Libraries/
com/planet_ink/coffee_mud/Libraries/interfaces/
com/planet_ink/coffee_mud/Locales/
com/planet_ink/coffee_mud/MOBS/
com/planet_ink/coffee_mud/Races/
com/planet_ink/coffee_mud/Races/interfaces/
com/planet_ink/coffee_mud/WebMacros/
com/planet_ink/coffee_mud/WebMacros/interfaces/
com/planet_ink/coffee_mud/core/
com/planet_ink/coffee_mud/core/collections/
com/planet_ink/coffee_mud/core/interfaces/
com/planet_ink/coffee_mud/core/intermud/
com/planet_ink/coffee_mud/core/intermud/i3/
com/planet_ink/coffee_web/server/
com/planet_ink/siplet/applet/
lib/
resources/factions/
resources/fakedb/
resources/progs/autoplayer/
resources/quests/holidays/
web/
web/admin.templates/
web/admin/grinder/
web/admin/images/
web/clan.templates/
web/pub.templates/
web/pub/images/mxp/
web/pub/sounds/
web/pub/textedit/
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
@if?!Authenticate@ @AddFile?/grinder/failedlogin.cmvp@ @else@
@if?!CheckAuthCode?ANYFILEBROWSE=true&SYSOP=true@ @AddFile?/grinder/nopriv.cmvp@ @else@

<html>
<head>
	<title>Browsing: @RequestParameter?PATH@</title>
 	<link rel="grinder icon" href="/images/grinder.ico" >
	<script language=JavaScript>
	<!--
		function OpenFile(action)
		{
			var strFeatures="top=0,left=75,resizable=yes,scrollbars=yes,height=600,width=750,alwaysRaised=yes,dependent=yes";
			w=window.open("browsefile.cmvp?"+action,"Filer",strFeatures, false);
		}
		function NewDir(named)
		{
			var path=document.BROWSE.PATH.value;
			if((path.length>0)&&(path.lastIndexOf('/')!=path.length-1))
				path=path+'/';
			document.BROWSE.PATH.value=path+named+"/";
			document.BROWSE.submit();
		}
		function CreateDir()
		{
			var named=prompt('Enter new directory name:','');
			if((named=='')||(named==null)) return;
			document.BROWSE.FUNCTION.value="NEWDIR";
			var path=document.BROWSE.PATH.value;
			if((path.length>0)&&(path.lastIndexOf('/')!=path.length-1))
				path=path+'/';
			document.BROWSE.PATH.value=path+named+"/";
			document.BROWSE.submit();
		}
		function DeleteDir()
		{
			document.BROWSE.FUNCTION.value="DELDIR";
			var path=document.BROWSE.PATH.value;
			if((path.length>0)&&(path.lastIndexOf('/')!=path.length-1))
				path=path+'/';
			document.BROWSE.PATH.value=path;
			document.BROWSE.submit();
		}
		function RenameFile(action)
		{
			var newName = window.prompt('New name/path',action);
			if((newName != null) && (newName != action))
			{
				document.BROWSE.FILE.value=action;
				document.BROWSE.FUNCTION.value="RENAME";
				document.BROWSE.NEWFILE.value=newName;
				document.BROWSE.submit();
			}
		}
		function NewFile(action)
		{
			OpenFile(action);
		}
		function BackDir()
		{
			var l=document.BROWSE.PATH.value.length;
			if(l>1)
			{
				var x=document.BROWSE.PATH.value.substring(0,l-1).lastIndexOf('/');
				if(x>=0)
					document.BROWSE.PATH.value=document.BROWSE.PATH.value.substring(0,x+1);
				else
					return;
			}
			document.BROWSE.submit();			
		}
		function DownloadFile(action)
		{
			document.location.href='/FileData?'+action;
		}
		function RefreshDir()
		{
			document.BROWSE.FUNCTION.value='';
			document.BROWSE.FILE.value='';
			document.BROWSE.submit();
		}
		function DeleteFile(action)
		{
			if(confirm('Delete file '+action+'?'))
			{
				document.BROWSE.FUNCTION.value='DELETE';
				document.BROWSE.FILE.value=action;
				document.BROWSE.submit();
			}
		}
	//-->
	</script>
</head>
<body BGCOLOR=BLACK>
<FORM  ACCEPT-CHARSET="UTF-8" NAME=BROWSE TARGET=_top METHOD=POST ACTION="browse.cmvp">
@if?CheckReqParm?FUNCTION=DELDIR@<FONT COLOR=RED>@FileMgr?DELETEDIR@</FONT><BR>@endif@
<INPUT TYPE=HIDDEN NAME=AUTH VALUE="@Authenticate?AUTH@">
<INPUT TYPE=HIDDEN NAME=PATH VALUE="@RequestParameter?PATH@">
<INPUT TYPE=HIDDEN NAME=FUNCTION VALUE="">
<INPUT TYPE=HIDDEN NAME=FILE VALUE="">
<INPUT TYPE=HIDDEN NAME=NEWFILE VALUE="">
@if?CheckReqParm?FUNCTION=DELETE@<FONT COLOR=RED>@FileMgr?DELETE@</FONT><BR>@endif@
@if?CheckReqParm?FUNCTION=RENAME@<FONT COLOR=RED>@FileMgr?RENAME@</FONT><BR>@endif@
@if?CheckReqParm?FUNCTION=NEWDIR@<FONT COLOR=RED>@FileMgr?CREATEDIR@</FONT><BR>@endif@
@if?CheckReqParm?FUNCTION=UPLOAD@<FONT COLOR=RED>@FileMgr?UPLOAD@</FONT><BR>@endif@
@if?CheckReqParm?FUNCTION=SEARCH@<FONT COLOR=RED>@FileMgr?SEARCH&STR=@@RequestParameter?SEARCHSTR@@ @</FONT><BR>@endif@
@if?CheckReqParm?FUNCTION=NAMESEARCH@<FONT COLOR=RED>@FileMgr?NAMESEARCH&STR=@@RequestParameter?SEARCHSTR@@ @</FONT><BR>@endif@
<TABLE WIDTH=100% CELLPADDING=0 CELLSPACING=0>
<TR><TD ALIGN=LEFT WIDTH=75%>
<a href="javascript:BackDir()"><FONT COLOR=YELLOW>..</FONT><IMG BORDER=0 SRC=images/folder_up.gif alt="Back" title="Back"></a>
</TD><TD WIDTH=5%>
<a href="javascript:RefreshDir();"><IMG BORDER=0 SRC=images/folder_refresh.gif alt="Refresh directory" title="Refresh directory"></a>
</TD><TD COLSPAN=2 ALIGN=RIGHT>
<a href="javascript:CreateDir();"><IMG BORDER=0 SRC=images/folder_add.gif alt="Add a new directory" title="Add a new directory"></a>
</TD><TD COLSPAN=2>
<a href="javascript:DeleteDir();"><IMG BORDER=0 SRC=images/folder_delete.gif alt="Delete this directory" title="Delete this directory"></a>
</TD></TR>
@FileNext?RESET@
@loop@
@FileNext@
	@if?FileInfo?ISDIRECTORY@
		<TR bgcolor="#@RequestParameter?BGCOL@"><TD COLSPAN=7>
		<a href="javascript:NewDir('@RequestParameter?FILE@')"  style="text-decoration:none">
		@if?FileInfo?ISBOTH@<B>@else@ @if?!FileInfo?ISLOCAL@<I>@endif@ @endif@
		<FONT COLOR=YELLOW>@RequestParameter?FILE@</FONT>
		@if?FileInfo?ISBOTH@</B>@else@ @if?!FileInfo?ISLOCAL@</I>@endif@ @endif@
		</a>
		</TD></TR>
	@endif@
@back@
@FileNext?RESET@
@AddRequestParameter?BGCOL=000000@
@loop@
@FileNext@
	@if?!FileInfo?ISDIRECTORY@ @if?FileInfo?ISFILE@
		@if?CheckReqParm?BGCOL=404040@ @AddRequestParameter?BGCOL=000000@ @else@ @AddRequestParameter?BGCOL=404040@ @endif@
		<TR bgcolor="#@RequestParameter?BGCOL@"><TD COLSPAN=2>
		@if?FileInfo?ISVFS@<I>@endif@ 	@if?FileInfo?ISBOTH@<B>@endif@
		<FONT COLOR=WHITE>@RequestParameter?FILE@</FONT>
		@if?FileInfo?ISVFS@</I>@endif@ 	@if?FileInfo?ISBOTH@</B>@endif@
		</TD><TD>
		<a href="javascript:OpenFile('@RequestParametersEncoded@')"><IMG BORDER=0 SRC=images/edit.gif alt="Edit" title="Edit"></a>
		</TD><TD>
		<a href="javascript:RenameFile('@RequestParameter?FILE@')"><IMG BORDER=0 SRC=images/rename.gif alt="Rename/Move" title="Rename/Move"></a>
		</TD><TD>
		<a href="javascript:DownloadFile('@RequestParametersEncoded@')"><IMG BORDER=0 SRC=images/download.gif alt="Download" title="Download"></a>
		</TD><TD>
		<a href="javascript:DeleteFile('@RequestParameter?FILE@')"><IMG BORDER=0 SRC=images/delete.gif alt="Delete" title="Delete"></a>
		</TD></TR>
	@endif@ @endif@
@back@
</TABLE>
<a href="javascript:NewFile('@RequestParametersEncoded@');"><IMG BORDER=0 SRC=images/document_new.gif alt="Create New File" title="Create New File"><FONT COLOR=AQUA>*new file*</FONT></a><BR>
</FORM>
<HR>
<FORM  ACCEPT-CHARSET="UTF-8" NAME=UPLOADNAMESEARCH TARGET=_top ENCTYPE="multipart/form-data" ACTION=/grinder/browse.cmvp METHOD=POST>
<FONT COLOR=CYAN>*search for filenames (reg. exp.)*</FONT>
<INPUT TYPE=HIDDEN NAME=AUTH VALUE="@Authenticate?AUTH@">
<INPUT TYPE=HIDDEN NAME=PATH VALUE="@RequestParameter?PATH@">
<INPUT TYPE=HIDDEN NAME=FUNCTION VALUE="NAMESEARCH">
<INPUT TYPE=TEXT NAME=SEARCHSTR VALUE="" SIZE=30><BR>
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=SUBMIT>
</FORM>
<HR>
<FORM  ACCEPT-CHARSET="UTF-8" NAME=UPLOADSEARCH TARGET=_top ENCTYPE="multipart/form-data" ACTION=/grinder/browse.cmvp METHOD=POST>
<FONT COLOR=CYAN>*search inside files (reg. exp.)*</FONT>
<INPUT TYPE=HIDDEN NAME=AUTH VALUE="@Authenticate?AUTH@">
<INPUT TYPE=HIDDEN NAME=PATH VALUE="@RequestParameter?PATH@">
<INPUT TYPE=HIDDEN NAME=FUNCTION VALUE="SEARCH">
<INPUT TYPE=TEXT NAME=SEARCHSTR VALUE="" SIZE=30><BR>
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=SUBMIT>
</FORM>
<HR>
<FORM  ACCEPT-CHARSET="UTF-8" NAME=UPLOADUPLOAD TARGET=_top ENCTYPE="multipart/form-data" ACTION=/grinder/browse.cmvp METHOD=POST>
<FONT COLOR=CYAN>*upload a file*</FONT>
<INPUT TYPE=HIDDEN NAME=AUTH VALUE="@Authenticate?AUTH@">
<INPUT TYPE=HIDDEN NAME=PATH VALUE="@RequestParameter?PATH@">
<INPUT TYPE=HIDDEN NAME=FUNCTION VALUE="UPLOAD">
<FONT COLOR=WHITE><INPUT TYPE=FILE NAME=FILE></FONT><BR>
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=SUBMIT>
</FORM>
</BODY>
</HTML>
@endif@
@endif@