104 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/perl
 | |
| # file_clean.cgi
 | |
| # Clean files for Tarantella Services
 | |
|  
 | |
| require './tarantella-lib.pl';
 | |
| &ReadParse();
 | |
| if ( ! $access{'supervision'} )   { &redirect("index.cgi"); }
 | |
| $postform = ($in{postform}) ? $in{postform} : "cleanfile";
 | |
| $cgiPost = ($in{cgiPost}) ? $in{cgiPost} : "file";
 | |
| $cgiName = ($in{cgiName}) ? $in{cgiName} : "file_clean.cgi";
 | |
| $wkdir = ($in{wkdir}) ? $in{wkdir} : eval("\$config{'$postform"."_path'}");
 | |
| if ( ! $in{fName} )   { &redirect("index.cgi"); }
 | |
| if ( $postform eq "filemgr" ) { $postform="cleanfile"; }
 | |
| $fName=$in{fName};
 | |
| $cmd=$in{cmd};
 | |
| if ( $in{fPerm} ) {
 | |
|      if ( substr($in{fPerm},0,1) ne "-" ) {
 | |
|         @l_target = split(/,/,$text{'f_perm_value'}, -1);
 | |
|         @l_target_tit = split(/,/,$text{'f_perm_desc'}, -1);
 | |
|         $nItems=0;
 | |
|         foreach $item (@l_target) {
 | |
|                 if ( $l_target_tit[$nItems] eq $in{fPerm} ) {
 | |
|                      $fMode=$l_target_tit{$nItems};
 | |
|                      $fPerm=substr($fMode,2,1);
 | |
|                      last;
 | |
|                 }
 | |
|                 $nItems++;
 | |
|         }
 | |
|      } else {
 | |
|         $fMode=$in{fPerm};
 | |
|         $fPerm=substr($fMode,2,1);
 | |
|      }
 | |
| }
 | |
| $filePerm = ($in{filePerm}) ? $in{filePerm} : $fMode;
 | |
| $perm=$in{perm};
 | |
| if ( $perm ne "new" && substr($in{fPerm},1,3) eq "rwx" ) { $perm="all"; }
 | |
| 
 | |
| &header(eval("\$text{'index_$postform'}"), "", $postform ); 
 | |
| if ( $perm ne "read" && $fPerm eq "w" ) {
 | |
|  print "<hr>\n";
 | |
|  print "<SCRIPT SRC=\"global.js\">\n"; 
 | |
|  print "</SCRIPT>\n"; 
 | |
|  print "<SCRIPT LANGUAGE=\"JavaScript\">\n"; 
 | |
|  print "<!--\n"; 
 | |
|  print "/*  Strings for locales  */\n"; 
 | |
|  print "var msg0=\"".$text{'msg_0'},"\";\n"; 
 | |
|  print "var msg1=\"".$text{'msg_1'},"\";\n"; 
 | |
|  print "var msg2=\"".$text{'msg_2'},"\";\n"; 
 | |
|  print "var msg3=\"".$text{'msg_3'},"\";\n"; 
 | |
|  print "var msg4=\"".$text{'msg_4'},"\";\n"; 
 | |
|  print "var msg5=\"".$text{'msg_5'},"\";\n"; 
 | |
|  print "var msg6=\"".$text{'msg_6'},"\";\n"; 
 | |
|  print "var msg7=\"".$text{'msg_7'},"\";\n"; 
 | |
|  print "var ask_confadmin=true;\n"; 
 | |
|  print "var ask_confpassmon=true;\n"; 
 | |
|  print "/******************************************************************\n"; 
 | |
|  print "   Chek_fields(obj)\n"; 
 | |
|  print "*******************************************************************/\n"; 
 | |
|  print "function Chek_fields(obj) {\n"; 
 | |
|  print "     if ( emptyField(obj.fName) == true ) {\n"; 
 | |
|  print "          alert(obj.fName.name+\":\"+msg1+\"->\"+obj.fName.value+\"<-\");\n"; 
 | |
|  print "		    obj.fName.focus();\n"; 
 | |
|  print "          return false;\n"; 
 | |
|  print "     }         \n"; 
 | |
|  print "     return true;\n"; 
 | |
|  print "}\n"; 
 | |
|  print "//-->\n"; 
 | |
|  print "</SCRIPT>\n"; 
 | |
| }
 | |
| 
 | |
| print "<table width=100% border>\n";
 | |
| print "<tr $tb> <td><b>";
 | |
| if ( $postform ne "cleanfile" ) { print $text{'clean'}; }
 | |
| print " ".eval("\$text{'titidx_$postform'}")."</b></td> </tr>\n";
 | |
| print "<tr $cb> <td><table width=100%>\n";
 | |
| if ( $perm eq "read" || $fPerm ne "w" ) {
 | |
|     print "<tr><td>>";
 | |
|     print &text('file_err',$text{'clean'},$wkdir,$fName,$fMode);
 | |
|     print "</td></tr>\n";
 | |
|     &footHere;
 | |
|     exit 1;
 | |
| }
 | |
|  print "<left><form METHOD=POST name=".$postform." ACTION=\"cleanfile.cgi\" onSubmit=\"return Chek_fields(this)\">\n"; 
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"cmd\" VALUE=\"",$cmd,"\">\n";
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"postform\" VALUE=\"$postform\">\n";
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"wkdir\" VALUE=\"$wkdir\">\n";
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"perm\" VALUE=\"$perm\">\n";
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"fPerm\" VALUE=\"$fMode\">\n";
 | |
|  print "  <input TYPE=\"hidden\" NAME=\"filePerm\" VALUE=\"$filePerm\">\n";
 | |
|  
 | |
|  print "  <tr><td valign=top>",&hlink("<b>$text{'f_filelistName'}</b>","ffilelistName")," </td>\n";
 | |
|      print "  <td valign=top><input TYPE=\"text\" NAME=\"fName\" VALUE=\"$fName\" cols=\"30\" size=\"30\" ALIGN=left></td></tr>\n";
 | |
|  print "        <tr><td valign=top><input TYPE=\"submit\" NAME=\"",$text{'f_sendreq'},"\"
 | |
| VALUE=\"",$text{'f_sendreq'},"\">\n";
 | |
|  print "                </td>\n";
 | |
|  print "        <td valign=top><input TYPE=\"reset\" NAME=\"",$text{'f_cancelreq'},"\" VALUE=\"",$text{'f_cancelreq'},"\"></td></tr>\n";
 | |
|  print "        </form>\n";
 | |
|  print "<tr><tr></table></table><hr><p>\n";
 | |
|  &footer($config{'back_return'},$text{'index'});
 | |
|  do "footer.pl";
 | |
|  exit;
 | |
| 
 | |
| 
 |