captive: Save logo in /var/ipfire/captive

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
Michael Tremer
2017-04-28 13:53:57 +01:00
parent 278309b9ef
commit e2752bfe71
11 changed files with 35 additions and 43 deletions

View File

@@ -6,8 +6,10 @@ WARNING: translation string unused: Captive activate
WARNING: translation string unused: Captive auth_lic
WARNING: translation string unused: Captive auth_vou
WARNING: translation string unused: Captive genvoucher
WARNING: translation string unused: Captive invalid logosize
WARNING: translation string unused: Captive invalid_voucher
WARNING: translation string unused: Captive ip
WARNING: translation string unused: Captive logo_set
WARNING: translation string unused: Captive nr
WARNING: translation string unused: Captive time
WARNING: translation string unused: Captive voucher
@@ -682,6 +684,7 @@ WARNING: untranslated string: Captive GAIN ACCESS
WARNING: untranslated string: Captive agree tac
WARNING: untranslated string: Captive branding
WARNING: untranslated string: Captive client session expiry time
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive terms
WARNING: untranslated string: Scan for Songs
WARNING: untranslated string: addons

View File

@@ -7,8 +7,10 @@ WARNING: translation string unused: Captive auth_lic
WARNING: translation string unused: Captive auth_vou
WARNING: translation string unused: Captive heading terms
WARNING: translation string unused: Captive heading voucher
WARNING: translation string unused: Captive invalid logosize
WARNING: translation string unused: Captive invalid_voucher
WARNING: translation string unused: Captive ip
WARNING: translation string unused: Captive logo_set
WARNING: translation string unused: Captive nr
WARNING: translation string unused: Captive time
WARNING: translation string unused: Captive voucher

View File

@@ -633,8 +633,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -643,8 +643,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -710,8 +710,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -706,8 +706,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -633,8 +633,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -635,8 +635,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -718,8 +718,7 @@ WARNING: untranslated string: Captive coupon
WARNING: untranslated string: Captive err doublevoucher
WARNING: untranslated string: Captive expire
WARNING: untranslated string: Captive generate coupon
WARNING: untranslated string: Captive invalid logosize
WARNING: untranslated string: Captive logo_set
WARNING: untranslated string: Captive logo uploaded
WARNING: untranslated string: Captive logo_upload
WARNING: untranslated string: Captive logo_upload1
WARNING: untranslated string: Captive mac

View File

@@ -36,6 +36,8 @@ my %selected = ();
my $coupons = "${General::swroot}/captive/coupons";
my %couponhash = ();
my $logo = "${General::swroot}/captive/logo.dat";
my %settings=();
my %mainsettings;
my %color;
@@ -46,7 +48,6 @@ my $errormessage='';
my $clients="${General::swroot}/captive/clients";
my %clientshash=();
my $settingsfile="${General::swroot}/captive/settings";
my $logopath = "/srv/web/ipfire/html/captive/logo";
unless (-e $settingsfile) { system("touch $settingsfile"); }
&Header::getcgihash(\%cgiparams);
@@ -60,7 +61,7 @@ unless (-e $settingsfile) { system("touch $settingsfile"); }
#actions
if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){
my $file = $cgiparams{'uploaded_file'};
my $file = $cgiparams{'logo'};
if ($file){
#Check if extension is png
chomp $file;
@@ -80,26 +81,18 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){
if (!$errormessage){
#Check if we need to upload a new logo
if($file){
#Save File
my ($filehandle) = CGI::upload('uploaded_file');
open (UPLOADFILE, ">$logopath/logo.png");
binmode $filehandle;
while ( <$filehandle> ) {
print UPLOADFILE;
}
close (UPLOADFILE);
if ($file) {
# Save logo
my ($filehandle) = CGI::upload("logo");
#Open file to check if dimensions are within rang
open (PNG , "<$logopath/logo.png");
local $/;
my $PNG1=<PNG>;
close(PNG);
my ($width,$height)=&pngsize($PNG1);
if($width > 1920 || $height > 800 || $width < 1280 || $height < 400){
$errormessage.="$Lang::tr{'Captive invalid logosize'} <br>Filedimensions width: $width height: $height ";
unlink("$logopath/logo.png");
# XXX check filesize
open(FILE, ">$logo");
binmode $filehandle;
while (<$filehandle>) {
print FILE;
}
close(FILE);
}
&General::writehash("$settingsfile", \%settings);
@@ -349,7 +342,7 @@ END
</tr>
END
#Logo Upload
# Logo Upload
print <<END;
<tr>
<td>
@@ -358,18 +351,18 @@ END
$Lang::tr{'Captive logo_upload1'}
</td>
<td>
<INPUT TYPE='file' NAME='uploaded_file' SIZE=30 MAXLENGTH=80>
<input type="file" name="logo">
</td>
</tr>
END
#Show Logo in webinterface with 1/2 size if set
if (-f "$logopath/logo.png"){
print"<tr><td>$Lang::tr{'Captive logo_set'}</td>";
print"<td><img src='/captive/logo/logo.png' alt='$logopath/logo.png' width='25%' height='25%' /></td></tr>";
}else{
print"<tr><td>$Lang::tr{'Captive logo_set'}</td>";
print"<td><br>$Lang::tr{'no'}</td></tr>";
if (-e $logo) {
print <<END;
<tr>
<td>$Lang::tr{'Captive logo uploaded'}</td>
<td>$Lang::tr{'yes'}</td>
</tr>
END
}
print <<END;

View File

@@ -33,6 +33,7 @@
'Captive invalid logosize' => 'The uploaded image file does not meet the required resolution of at least 1280x400 but not larger than 1920x800 pixels',
'Captive invalid_voucher' => 'Invalid code. Please try again',
'Captive ip' => 'IP Address',
'Captive logo uploaded' => 'Logo uploaded',
'Captive logo_set' => 'Current Logo',
'Captive logo_upload' => 'Upload Logo',
'Captive logo_upload1' => '(PNG, min. 1280x400, max. 1920x800)',