Admin/AdvSettings.pl
FIND $imsubject =~ s/\>/>/g;
ADD AFTER
##############
# Multiple FA, spyderscripts.com
##############
if ($globalimagecount == 1) { $ics1 = ' selected="selected" '; }
elsif ($globalimagecount == 2) { $ics2 = ' selected="selected" '; }
elsif ($globalimagecount == 3) { $ics3 = ' selected="selected" '; }
elsif ($globalimagecount == 4) { $ics4 = ' selected="selected" '; }
elsif ($globalimagecount == 5) { $ics5 = ' selected="selected" '; }
elsif ($globalimagecount == 6) { $ics6 = ' selected="selected" '; }
elsif ($globalimagecount == 7) { $ics7 = ' selected="selected" '; }
elsif ($globalimagecount == 8) { $ics8 = ' selected="selected" '; }
elsif ($globalimagecount == 9) { $ics9 = ' selected="selected" '; }
elsif ($globalimagecount == 10) { $ics10 = ' selected="selected" '; }
else { $ics1 = ' selected="selected" '; }
#############
---------------------------------------------------------------------------------------------------
Sources/Display.pl
FROM THE LINE AFTER # Should we show an attachment file?
UNTIL # Should we show "last modified by?"
REPLACE
#####
# Multiple FA, spyderscripts.com
#####
my @files = ();
@files = split(/[\,]/, $mfn);
foreach (@files) {
if (-e ("$uploaddir/$_")) {
$attachment .= qq~
$_~;
if (($_ =~ /(jpg|gif|bmp|png|jpeg)$/i) && ($amdisplaypics == 1)) {
$showattach .= qq~
$_ $fatxt{'1'}~;
}
}
}
---------------------------------------------------------------------------------------------------
Sources/ModifyMessage.pl
FROM &MultiDel;
UNTIL my ($threadid, $postid, @messages, $msub, $mname, $memail, $mdate, $musername, $micon, $mattach, $mip, $mmessage, $mns, $mlm, $mlmb, $tnum, $tsub, $tname, $temail, $tdate, $treplies, $tusername, $ticon, $tstate, @threads, $tmpa, $tmpb, $tnum2, $tdate2, $newlastposttime, $newlastposter, $lastpostid, $views, $name, $email, $subject, $message, $ns,);
REPLACE WITH
}
}
#################
# Multiple FA, spyderscripts.com
##################
my @filelist = (); #Contains only files
my @fileMaster = (); #Contains file and place holders for files
for ($y=1;$y<=$globalimagecount;++$y) {
$file = $query->param("file$y");
$fileAction = $query->param("w_file$y");
$fileOriginal = $query->param("w_filename$y");
#Make sure there is a file, and the user want to attach new, or check that there is no action listed
if ($file && ($fileAction eq "attachnew" || !$fileAction)) {
$OS = $^O; # operating system name
if ($OS =~ /darwin/i) { $isUNIX = 1; }
elsif ($OS =~ /win/i) { $isWIN = 1; }
else { $isUNIX = 1; }
$mylimit = 1024 * $limit;
$mydirlimit = 1024 * $dirlimit;
$fixfile = $file;
$fixfile =~ s/.+\\([^\\]+)$|.+\/([^\/]+)$/$1/;
$fixfile =~ s/[#%+,\/:?"<>'|@^!]//g; # edit in between [ ] to include characters you dont want to allow in filenames (dont put a . there or you wont be able to get any file extensions).
$fixfile =~ s/ /_/g; # replaces spaces in filenames with a "_" character.
# replace . with _ in the filename except for the extension
$fixname = $fixfile;
$fixname =~ s/(\S+)(\.\S+\Z)/$1/gi;
$fixext = $2;
$fixext =~ s/(pl|cgi|php)/_$1/gi;
$fixname =~ s/\./\_/g;
$fixfile = qq~$fixname$fixext~;
if ($overwrite == 2 && (-e "$uploaddir/$fixfile")) { &fatal_error("$fatxt{'8'}"); }
if (!$overwrite) {
$fixfile = check_existence($uploaddir, $fixfile);
}
if ($checkext == 0) { $match = 1; }
else {
foreach $ext (@ext) {
chomp($ext);
if (grep /$ext$/i, $fixfile) { $match = 1; last; }
}
}
if ($match) {
if ($allowattach == 1 && (($allowguestattach == 0 && $username ne 'Guest') || $allowguestattach == 1)) {
$upload_okay = 1;
}
} else {
&write_error("$fatxt{'20'} @ext ($fixfile)");
}
if ($mydirlimit > 0) {
&dirstats;
}
$filesize = $ENV{'CONTENT_LENGTH'} - $postsize;
$filesizekb = int($filesize / 1024);
if ($filesize > $mylimit && $mylimit != 0) {
$filesizediff = $filesizekb - $limit;
if ($filesizediff == 1) { $sizevar = "kilobyte"; }
else { $sizevar = "kilobytes"; }
&write_error("$fatxt{'21'} $filesizediff $sizevar $fatxt{'21b'}");
} elsif ($filesize > $spaceleft && $mydirlimit != 0) {
$filesizediff = $filesizekb - $kbspaceleft;
if ($filesizediff == 1) { $sizevar = "kilobyte"; }
else { $sizevar = "kilobytes"; }
&write_error("$fatxt{'22'} $filesizediff $sizevar $fatxt{'22b'}");
}
$save_file = "$uploadurl/$fixfile";
if ($upload_okay == 1) {
# create a new file on the server using the formatted ( new instance ) filename
$upload_filehandle = $query->upload("file".$y);
open UPLOADFILE, ">$uploaddir/$fixfile";
binmode UPLOADFILE;
while ( <$upload_filehandle> )
{
print UPLOADFILE;
}
close UPLOADFILE;
}
# check if file has actually been uploaded, by checking the file has a size
if (-s "$uploaddir/$fixfile") {
$upload_ok = 1;
} else {
unlink("$uploaddir/$fixfile");
&fatal_error("$fatxt{'59'} $fixfile");
}
if (($fixfile =~ /(jpg|gif|png|jpeg)$/i)) {
$okatt = 1;
if ($fixfile =~ /(gif)$/i) {
fopen(ATTFILE, "$uploaddir/$fixfile");
read(ATTFILE, $header, 10);
($giftest, undef, undef, undef, undef, undef) = unpack("a3a3C4", $header);
fclose(ATTFILE);
if ($giftest ne "GIF") { $okatt = 0; }
}
fopen(ATTFILE, "$uploaddir/$fixfile");
while ( read(ATTFILE, $buffer, 1024) ) {
if ($buffer =~ /\