equal
deleted
inserted
replaced
24 use strict; |
24 use strict; |
25 use warnings; |
25 use warnings; |
26 use CGI qw(:all *table); |
26 use CGI qw(:all *table); |
27 use CGI::Carp qw(fatalsToBrowser); |
27 use CGI::Carp qw(fatalsToBrowser); |
28 use CGI::Pretty; |
28 use CGI::Pretty; |
29 use IO::File; |
|
30 use File::Basename; |
29 use File::Basename; |
31 use Digest::MD5 qw(md5_hex); |
30 use Digest::MD5 qw(md5_hex); |
32 use OSSP::uuid; |
31 use OSSP::uuid; |
33 |
32 |
34 my $DIR = "d/{view}"; |
33 my $DIR = "d/{view}"; |
35 my $DIR_URI = "/$DIR"; |
34 my $DIR_URI = url(-absolute => 1) . "/$DIR"; |
36 |
35 |
37 sub human($); |
36 sub human($); |
38 |
37 |
39 delete @ENV{ grep /PATH/, keys %ENV }; |
38 delete @ENV{ grep /PATH/, keys %ENV }; |
40 $ENV{PATH} = "/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"; |
39 $ENV{PATH} = "/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"; |
66 exit 0; |
65 exit 0; |
67 } |
66 } |
68 |
67 |
69 print header(-charset => "UTF-8"), |
68 print header(-charset => "UTF-8"), |
70 start_html(-title => "Up&Down"), |
69 start_html(-title => "Up&Down"), |
71 h1 "Ansicht: $ENV{REMOTE_USER}"; |
70 h1("Ansicht: $ENV{REMOTE_USER}"), |
|
71 "dir: ", url(-absolute => 1); |
72 |
72 |
73 # print Dump; |
73 # print Dump; |
74 |
74 |
75 if (length(my $file = param("upload"))) { |
75 if (length(my $file = param("upload"))) { |
76 my $days = param("expires"); |
76 my $days = param("expires"); |
87 $filename =~ /(.*)/; |
87 $filename =~ /(.*)/; |
88 $filename = $1; |
88 $filename = $1; |
89 |
89 |
90 my $dir = "$DIR/$uuid-$expires"; |
90 my $dir = "$DIR/$uuid-$expires"; |
91 mkdir $dir, 0750 or die "Can't mkdir $dir: $!\n"; |
91 mkdir $dir, 0750 or die "Can't mkdir $dir: $!\n"; |
92 my $outfh = new IO::File ">$dir/$filename" |
92 open(my $outfh, ">", "$dir/$filename") |
93 or die "Can't create $dir/$filename: $!\n"; |
93 or die "Can't create $dir/$filename: $!\n"; |
94 print {$outfh} <$file>; |
94 print {$outfh} <$file>; |
95 |
95 |
96 if (my $atfh = new IO::File("|at now + $days days")) { |
96 if (open(my $atfh, "|-", "at now + $days days")) { |
97 print {$atfh} |
97 print {$atfh} |
98 "rm -f \"$dir/$filename\"\n", |
98 "rm -f \"$dir/$filename\"\n", |
99 "rmdir \"$dir\"\n"; |
99 "rmdir \"$dir\"\n"; |
100 close $atfh; |
100 close $atfh; |
101 system("cat /tmp/log"); |
101 #system("cat /tmp/log"); |
102 } |
102 } |
103 |
103 |
104 } |
104 } |
105 print hr; |
105 print hr; |
106 |
106 |