#!/usr/bin/perl
use strict;
use warnings;
use CGI qw(:standard);
use Switch;
my @config_files;
my $out;
writepage();
sub writepage{
@config_files=("title","body","index.cgi");
print "Content-type: text/html\n\n",
"\n\t
\n\t\n\t\n\t\t",
"\n\t\t\tSort: ",weblink("index.cgi?sort=none","None"),
weblink("index.cgi?sort=date","Date"),"\n\t\t\t",weblink("index.cgi?sort=size","Size"),"\n\t\t",
weblink("index.cgi?sort=mode","Extension"),"
";
if (param("sort")){
switch (param("sort")){
case ("none"){
$out=`ls -alh`;
} case ("size") {
$out=`ls -alhS`;
} case ("date") {
$out=`ls -alht`;
} case ("mode") {
$out=`ls -alhX`;
} default {
$out=`ls -alh`;
}
}} else { $out=`ls -alh`;}
print "\n\t\t
",weblink("/","possumism.net"),
"\n\t\t",`cat title`,"
\n\t",
"\n\t\t",`cat body`,"
";
# "\n\t\t",'ls output'; #../', '';
print_dir();
my @docroot=("/home/.lexilady/yubimusubi/possumism.net","/home/yubimusubi/possumism.net");
my (undef,$pwd)=split(/$docroot[0]/,`pwd`);
print "
index of $pwd";
print "\n\t\n";
}
sub print_dir {
my @name = split(/\n/,$out);
#print "@name";
my %printname;
my @filename;
print"\n\tls output:
";
print "\n\t";
for my $name(@name){
my @splitname=split(/ +/, $name);
$splitname[2]="possum";
$splitname[3]="interweb";
my ($mode, undef, $user, $group, $size, $month, $day, $time, @filename) = @splitname;
$name="@splitname";
my $filename="@filename";
# print "mode=$mode, user=$user, group=$group, size=$size, month=$month, day=$day, time=$time, $filename\n";
for my $config(@config_files){
$printname{$filename}=1 if ($filename eq $config);
$printname{$filename}=1 unless (exists($filename[0]));
next;
}
# print "printname=$printname{$filename}";
printfile($filename,$mode,$user,$group,$size,$month,$day,$time,$filename) unless ($printname{$filename} == 1);
}
next if @filename;
print "\n\t
";
}
sub printfile {
my ($link,@title)=@_;
print "\n\t\t";
for my $column(@title){
print "\n\t\t\t";
if ($column eq $link) {
if ($title[0] =~ /d/) {
print "", "$column/", '';
} else {
print "", "$column", '';
}
} else {
print "$column";
}
print " | ";
}
print "
";
}
sub weblink {
my ($link,$title)=@_;
return "$title ";
}
return 1;