From e2752bfe719b51b1cb2f9153b8ddfab5d4483938 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Fri, 28 Apr 2017 13:53:57 +0100 Subject: [PATCH] captive: Save logo in /var/ipfire/captive Signed-off-by: Michael Tremer --- doc/language_issues.de | 3 +++ doc/language_issues.en | 2 ++ doc/language_issues.es | 3 +-- doc/language_issues.fr | 3 +-- doc/language_issues.it | 3 +-- doc/language_issues.nl | 3 +-- doc/language_issues.pl | 3 +-- doc/language_issues.ru | 3 +-- doc/language_issues.tr | 3 +-- html/cgi-bin/captive.cgi | 51 +++++++++++++++++----------------------- langs/en/cgi-bin/en.pl | 1 + 11 files changed, 35 insertions(+), 43 deletions(-) diff --git a/doc/language_issues.de b/doc/language_issues.de index a060fa95bd..d45948ec7f 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -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 diff --git a/doc/language_issues.en b/doc/language_issues.en index 5c8f56dad8..02ab1714ab 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -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 diff --git a/doc/language_issues.es b/doc/language_issues.es index 040fcfb4a0..6f82813f39 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -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 diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 4709237967..31a1b4c2bf 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -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 diff --git a/doc/language_issues.it b/doc/language_issues.it index 93a61b21db..4dad12cc1b 100644 --- a/doc/language_issues.it +++ b/doc/language_issues.it @@ -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 diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 0acc6a7426..805d928096 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -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 diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 040fcfb4a0..6f82813f39 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -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 diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 49d0c65697..b10a7aca67 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -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 diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 514181e81d..75574de50e 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -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 diff --git a/html/cgi-bin/captive.cgi b/html/cgi-bin/captive.cgi index ef5efc88ee..9851aba70d 100755 --- a/html/cgi-bin/captive.cgi +++ b/html/cgi-bin/captive.cgi @@ -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"); + if ($file) { + # Save logo + my ($filehandle) = CGI::upload("logo"); + + # XXX check filesize + + open(FILE, ">$logo"); binmode $filehandle; - while ( <$filehandle> ) { - print UPLOADFILE; - } - close (UPLOADFILE); - - #Open file to check if dimensions are within rang - open (PNG , "<$logopath/logo.png"); - local $/; - my $PNG1=; - close(PNG); - my ($width,$height)=&pngsize($PNG1); - if($width > 1920 || $height > 800 || $width < 1280 || $height < 400){ - $errormessage.="$Lang::tr{'Captive invalid logosize'}
Filedimensions width: $width height: $height "; - unlink("$logopath/logo.png"); + while (<$filehandle>) { + print FILE; } + close(FILE); } &General::writehash("$settingsfile", \%settings); @@ -349,7 +342,7 @@ END END - #Logo Upload + # Logo Upload print < @@ -358,18 +351,18 @@ END $Lang::tr{'Captive logo_upload1'} - + END - #Show Logo in webinterface with 1/2 size if set - if (-f "$logopath/logo.png"){ - print"$Lang::tr{'Captive logo_set'}"; - print"$logopath/logo.png"; - }else{ - print"$Lang::tr{'Captive logo_set'}"; - print"
$Lang::tr{'no'}"; + if (-e $logo) { + print < + $Lang::tr{'Captive logo uploaded'} + $Lang::tr{'yes'} + +END } print < '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)', -- 2.39.2