From 97b91e8a946233d1a5cf90ed36d744dd07f434f9 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Wed, 26 Apr 2017 12:50:43 +0100 Subject: [PATCH] captive: Rename "Voucher" mode to "Coupon" Signed-off-by: Michael Tremer --- doc/language_issues.de | 5 +- doc/language_issues.en | 4 + doc/language_issues.es | 7 +- doc/language_issues.fr | 7 +- doc/language_issues.it | 7 +- doc/language_issues.nl | 7 +- doc/language_issues.pl | 7 +- doc/language_issues.ru | 7 +- doc/language_issues.tr | 7 +- doc/language_missings | 9 +++ html/cgi-bin/captive.cgi | 129 +++++++++++++++++---------------- html/cgi-bin/captive/index.cgi | 50 ++++++------- langs/de/cgi-bin/de.pl | 2 + langs/en/cgi-bin/en.pl | 3 +- 14 files changed, 126 insertions(+), 125 deletions(-) diff --git a/doc/language_issues.de b/doc/language_issues.de index 175f00904a..bb9c9b0bbe 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -4,10 +4,13 @@ WARNING: translation string unused: Captive 1month WARNING: translation string unused: Captive 1week 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_voucher WARNING: translation string unused: Captive ip WARNING: translation string unused: Captive nr WARNING: translation string unused: Captive time +WARNING: translation string unused: Captive voucher WARNING: translation string unused: ConnSched scheduler WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature @@ -676,8 +679,6 @@ WARNING: translation string unused: year-graph WARNING: translation string unused: yearly firewallhits WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher 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 44098b8fd1..5c8f56dad8 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -4,10 +4,14 @@ WARNING: translation string unused: Captive 1month WARNING: translation string unused: Captive 1week 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 heading terms +WARNING: translation string unused: Captive heading voucher WARNING: translation string unused: Captive invalid_voucher WARNING: translation string unused: Captive ip WARNING: translation string unused: Captive nr WARNING: translation string unused: Captive time +WARNING: translation string unused: Captive voucher WARNING: translation string unused: ConnSched scheduler WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature diff --git a/doc/language_issues.es b/doc/language_issues.es index 0413ae4462..079a3fdd91 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -623,15 +623,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -643,7 +641,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 78e0590b4a..882ecd53cf 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -633,15 +633,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -653,7 +651,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.it b/doc/language_issues.it index 4dd4438cba..72de20b333 100644 --- a/doc/language_issues.it +++ b/doc/language_issues.it @@ -700,15 +700,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -720,7 +718,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 1af36efa8a..10ae7a7adf 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -696,15 +696,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -716,7 +714,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 0413ae4462..079a3fdd91 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -623,15 +623,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -643,7 +641,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 07b1cff0bd..34f578508d 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -625,15 +625,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -645,7 +643,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 5a4c0e5f06..4d1839a5f2 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -708,15 +708,13 @@ WARNING: untranslated string: Captive GAIN ACCESS WARNING: untranslated string: Captive activated WARNING: untranslated string: Captive active on WARNING: untranslated string: Captive agree tac -WARNING: untranslated string: Captive auth_vou WARNING: untranslated string: Captive authentication WARNING: untranslated string: Captive brand color WARNING: untranslated string: Captive config +WARNING: untranslated string: Captive coupon WARNING: untranslated string: Captive err doublevoucher WARNING: untranslated string: Captive expire -WARNING: untranslated string: Captive genvoucher -WARNING: untranslated string: Captive heading terms -WARNING: untranslated string: Captive heading voucher +WARNING: untranslated string: Captive generate coupon WARNING: untranslated string: Captive invalid logosize WARNING: untranslated string: Captive logo_set WARNING: untranslated string: Captive logo_upload @@ -728,7 +726,6 @@ WARNING: untranslated string: Captive nolimit WARNING: untranslated string: Captive terms WARNING: untranslated string: Captive title WARNING: untranslated string: Captive voactive -WARNING: untranslated string: Captive voucher WARNING: untranslated string: Captive vouchervalid WARNING: untranslated string: Captive vout WARNING: untranslated string: Captive wrong ext diff --git a/doc/language_missings b/doc/language_missings index 2607199583..dc02710dd9 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -2,6 +2,7 @@ # Checking cgi-bin translations for language: en # ############################################################################ < addon +< Captive genvoucher < ccd maxclients < ovpn_fragment ############################################################################ @@ -44,8 +45,10 @@ < Captive auth_vou < Captive brand color < Captive config +< Captive coupon < Captive err doublevoucher < Captive expire +< Captive generate coupon < Captive genvoucher < Captive invalid logosize < Captive invalid_voucher @@ -719,8 +722,10 @@ < Captive auth_vou < Captive brand color < Captive config +< Captive coupon < Captive err doublevoucher < Captive expire +< Captive generate coupon < Captive genvoucher < Captive invalid logosize < Captive invalid_voucher @@ -1375,8 +1380,10 @@ < Captive auth_vou < Captive brand color < Captive config +< Captive coupon < Captive err doublevoucher < Captive expire +< Captive generate coupon < Captive genvoucher < Captive invalid logosize < Captive invalid_voucher @@ -2018,8 +2025,10 @@ < Captive auth_vou < Captive brand color < Captive config +< Captive coupon < Captive err doublevoucher < Captive expire +< Captive generate coupon < Captive genvoucher < Captive invalid logosize < Captive invalid_voucher diff --git a/html/cgi-bin/captive.cgi b/html/cgi-bin/captive.cgi index a89039265a..85b9c5d19e 100755 --- a/html/cgi-bin/captive.cgi +++ b/html/cgi-bin/captive.cgi @@ -31,6 +31,9 @@ require '/var/ipfire/general-functions.pl'; require "${General::swroot}/lang.pl"; require "${General::swroot}/header.pl"; +my $coupons = "${General::swroot}/captive/coupons"; +my %couponhash = (); + my %settings=(); my %mainsettings; my %color; @@ -38,14 +41,11 @@ my %cgiparams=(); my %netsettings=(); my %checked=(); my $errormessage=''; -my $voucherout="${General::swroot}/captive/voucher_out"; my $clients="${General::swroot}/captive/clients"; -my %voucherhash=(); my %clientshash=(); my $settingsfile="${General::swroot}/captive/settings"; my $logopath = "/srv/web/ipfire/html/captive/logo"; unless (-e $settingsfile) { system("touch $settingsfile"); } -unless (-e $voucherout) { system("touch $voucherout"); } &Header::getcgihash(\%cgiparams); @@ -119,8 +119,8 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ } } -if ($cgiparams{'ACTION'} eq "$Lang::tr{'Captive genvoucher'}"){ - #generates a voucher and writes it to /var/ipfire/voucher_out +if ($cgiparams{'ACTION'} eq "$Lang::tr{'Captive generate coupon'}"){ + # Generates a new coupon #calculate expiredate my $expire; @@ -135,10 +135,10 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'Captive genvoucher'}"){ if($cgiparams{'EXP_HOUR'}+$cgiparams{'EXP_DAY'}+$cgiparams{'EXP_WEEK'}+$cgiparams{'EXP_MONTH'} == 0 && $cgiparams{'UNLIMITED'} == ''){ $errormessage=$Lang::tr{'Captive noexpiretime'}; } - #check if we already have a voucher with same code - &General::readhasharray("$voucherout", \%voucherhash); - foreach my $key (keys %voucherhash) { - if($voucherhash{$key}[1] eq $cgiparams{'CODE'}){ + #check if we already have a coupon with same code + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + foreach my $key (keys %couponhash) { + if($couponhash{$key}[1] eq $cgiparams{'CODE'}){ $errormessage=$Lang::tr{'Captive err doublevoucher'}; last; } @@ -154,56 +154,56 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'Captive genvoucher'}"){ my $date=time(); #seconds in utc #first get new key from hash - my $key=&General::findhasharraykey (\%voucherhash); + my $key=&General::findhasharraykey (\%couponhash); #initialize all fields with '' - foreach my $i (0 .. 3) { $voucherhash{$key}[$i] = "";} + foreach my $i (0 .. 3) { $couponhash{$key}[$i] = "";} #define fields - $voucherhash{$key}[0] = $date; - $voucherhash{$key}[1] = $cgiparams{'CODE'}; - $voucherhash{$key}[2] = $settings{'EXPIRE'}; - $voucherhash{$key}[3] = $cgiparams{'REMARK'}; + $couponhash{$key}[0] = $date; + $couponhash{$key}[1] = $cgiparams{'CODE'}; + $couponhash{$key}[2] = $settings{'EXPIRE'}; + $couponhash{$key}[3] = $cgiparams{'REMARK'}; #write values to disk - &General::writehasharray("$voucherout", \%voucherhash); + &General::writehasharray($coupons, \%couponhash); #now prepare log entry, get expiring date for voucher and decode remark for logfile - my $expdate=localtime(time()+$voucherhash{$key}[3]); - my $rem=HTML::Entities::decode_entities($voucherhash{$key}[4]); + my $expdate=localtime(time()+$couponhash{$key}[3]); + my $rem=HTML::Entities::decode_entities($couponhash{$key}[4]); #write logfile entry - &General::log("Captive", "Generated new voucher $voucherhash{$key}[1] $voucherhash{$key}[2] hours valid expires on $expdate remark $rem"); + &General::log("Captive", "Generated new coupon $couponhash{$key}[1] $couponhash{$key}[2] hours valid expires on $expdate remark $rem"); } } -if ($cgiparams{'ACTION'} eq 'delvoucherout'){ +if ($cgiparams{'ACTION'} eq 'delete-coupon') { #deletes an already generated but unused voucher #read all generated vouchers - &General::readhasharray("$voucherout", \%voucherhash); - foreach my $key (keys %voucherhash) { - if($cgiparams{'key'} eq $voucherhash{$key}[0]){ + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + foreach my $key (keys %couponhash) { + if($cgiparams{'key'} eq $couponhash{$key}[0]){ #write logenty with decoded remark - my $rem=HTML::Entities::decode_entities($voucherhash{$key}[4]); - &General::log("Captive", "Delete unused voucher $voucherhash{$key}[1] $voucherhash{$key}[2] hours valid expires on $voucherhash{$key}[3] remark $rem"); + my $rem=HTML::Entities::decode_entities($couponhash{$key}[4]); + &General::log("Captive", "Delete unused coupon $couponhash{$key}[1] $couponhash{$key}[2] hours valid expires on $couponhash{$key}[3] remark $rem"); #delete line from hash - delete $voucherhash{$key}; + delete $couponhash{$key}; last; } } #write back hash - &General::writehasharray("$voucherout", \%voucherhash); + &General::writehasharray($coupons, \%couponhash); } -if ($cgiparams{'ACTION'} eq 'delvoucherinuse'){ +if ($cgiparams{'ACTION'} eq 'delete-client') { #delete voucher and connection in use #read all active clients - &General::readhasharray("$clients", \%clientshash); + &General::readhasharray($clients, \%clientshash) if (-e $clients); foreach my $key (keys %clientshash) { if($cgiparams{'key'} eq $clientshash{$key}[0]){ #prepare log entry with decoded remark my $rem=HTML::Entities::decode_entities($clientshash{$key}[7]); #write logentry - &General::log("Captive", "Delete voucher in use $clientshash{$key}[1] $clientshash{$key}[2] hours valid expires on $clientshash{$key}[3] remark $rem - Connection will be terminated"); + &General::log("Captive", "Deleted client in use $clientshash{$key}[1] $clientshash{$key}[2] hours valid expires on $clientshash{$key}[3] remark $rem - Connection will be terminated"); #delete line from hash delete $clientshash{$key}; last; @@ -292,9 +292,9 @@ END print " selected='selected'" if ($settings{'AUTH'} eq 'TERMS'); print ">$Lang::tr{'Captive terms'}"; - print ""; + print ""; print< @@ -347,9 +347,9 @@ END &Header::closebox(); - #if settings is set to use vouchers, the voucher part has to be displayed - if ($settings{'AUTH'} eq 'VOUCHER'){ - &voucher(); + #if settings is set to use coupons, the coupon part has to be displayed + if ($settings{'AUTH'} eq 'COUPON'){ + &coupons(); }else{ #otherwise we show the licensepart &show_license_connections(); @@ -364,9 +364,8 @@ sub gencode(){ return $randomstring; } -sub voucher(){ - #show voucher part - &Header::openbox('100%', 'left', $Lang::tr{'Captive genvoucher'}); +sub coupons() { + &Header::openbox('100%', 'left', $Lang::tr{'Captive generate coupon'}); print "
"; print ""; print ""; print "

$Lang::tr{'Captive vouchervalid'}

"; @@ -435,11 +434,18 @@ sub voucher(){ print "

$Lang::tr{'remark'}

 


"; $cgiparams{'CODE'} = &gencode(); - print "
"; + print "
"; &Header::closebox(); - if (! -z $voucherout) { &show_voucher_out();} - if (! -z $clients) { &show_voucher_in_use();} + + # Show all coupons if exist + if (! -z $coupons) { + &show_coupons(); + } + + if (! -z $clients) { + &show_clients(); + } } sub show_license_connections(){ @@ -451,11 +457,11 @@ sub show_license_connections(){ print< - + END ; #read all clients from hash and show table - &General::readhasharray("$clients", \%clientshash); + &General::readhasharray($clients, \%clientshash) if (-e $clients); foreach my $key (keys %clientshash){ my $starttime = sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime($clientshash{$key}[2])); my $endtime; @@ -474,7 +480,7 @@ END } print ""; + print ""; $count++; } @@ -482,27 +488,26 @@ END &Header::closebox(); } -sub show_voucher_out(){ - #if there are already generated but unsused vouchers, print a table - return if ( -z $voucherout); +sub show_coupons() { + #if there are already generated but unsused coupons, print a table my $count=0; my $col; &Header::openbox('100%', 'left', $Lang::tr{'Captive vout'}); print<
$Lang::tr{'Captive voucher'}$Lang::tr{'Captive activated'}$Lang::tr{'Captive expire'}$Lang::tr{'Captive mac'}$Lang::tr{'delete'}
$Lang::tr{'Captive coupon'}$Lang::tr{'Captive activated'}$Lang::tr{'Captive expire'}$Lang::tr{'Captive mac'}$Lang::tr{'delete'}
$clientshash{$key}[4]
$starttime "; print "
$endtime "; - print "
$clientshash{$key}[0]
$clientshash{$key}[0]
- + END ; - &General::readhasharray("$voucherout", \%voucherhash); - foreach my $key (keys %voucherhash) + &General::readhasharray($coupons, \%couponhash) if (-e $coupons); + foreach my $key (keys %couponhash) { - my $starttime = sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime($voucherhash{$key}[0])); + my $starttime = sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime($couponhash{$key}[0])); my $endtime; - if ($voucherhash{$key}[2] eq '0'){ + if ($couponhash{$key}[2] eq '0'){ $endtime=$Lang::tr{'Captive nolimit'}; }else{ - $endtime=sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime(time()+$voucherhash{$key}[2])); + $endtime=sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime(time()+$couponhash{$key}[2])); } if ($count % 2){ @@ -513,11 +518,11 @@ END print" "; } - print ""; + print ""; print ""; print ""; - print ""; - print ""; + print ""; + print ""; $count++; } @@ -525,8 +530,8 @@ END &Header::closebox(); } -sub show_voucher_in_use(){ - #if there are active clients which use vouchers show table +sub show_clients() { + #if there are active clients which use coupons show table return if ( -z $clients || ! -f $clients ); my $count=0; my $col; @@ -534,10 +539,10 @@ sub show_voucher_in_use(){ print<
$Lang::tr{'Captive voucher'}$Lang::tr{'date'}$Lang::tr{'Captive expire'}$Lang::tr{'remark'}$Lang::tr{'delete'}
$Lang::tr{'Captive coupon'}$Lang::tr{'date'}$Lang::tr{'Captive expire'}$Lang::tr{'remark'}$Lang::tr{'delete'}
$voucherhash{$key}[1]
$couponhash{$key}[1]
$starttime
$endtime
$voucherhash{$key}[3]
$couponhash{$key}[3]
- + END ; - &General::readhasharray("$clients", \%clientshash); + &General::readhasharray($clients, \%clientshash) if (-e $clients); foreach my $key (keys %clientshash) { #calculate time from clientshash (starttime) @@ -560,7 +565,7 @@ END print ""; + print ""; $count++; } diff --git a/html/cgi-bin/captive/index.cgi b/html/cgi-bin/captive/index.cgi index 2f1e59e5b0..42fca67cb2 100755 --- a/html/cgi-bin/captive/index.cgi +++ b/html/cgi-bin/captive/index.cgi @@ -32,12 +32,12 @@ use HTML::Template; require '/var/ipfire/general-functions.pl'; require "${General::swroot}/lang.pl"; -#Set Variables -my %voucherhash=(); +my $coupons = "${General::swroot}/captive/coupons"; +my %couponhash = (); + my %clientshash=(); my %cgiparams=(); my %settings=(); -my $voucherout="${General::swroot}/captive/voucher_out"; my $clients="${General::swroot}/captive/clients"; my $settingsfile="${General::swroot}/captive/settings"; my $errormessage; @@ -75,39 +75,39 @@ if ($cgiparams{'ACTION'} eq "SUBMIT") { # Current time $clientshash{$key}[2] = time(); - if ($settings{"AUTH"} eq "VOUCHER") { - &General::readhasharray("$voucherout", \%voucherhash); + if ($settings{"AUTH"} eq "COUPON") { + &General::readhasharray($coupons, \%couponhash); - # Convert voucher input to uppercase - $cgiparams{'VOUCHER'} = uc $cgiparams{'VOUCHER'}; + # Convert coupon input to uppercase + $cgiparams{'COUPON'} = uc $cgiparams{'COUPON'}; - # Walk through all valid vouchers and find the right one + # Walk through all valid coupons and find the right one my $found = 0; - foreach my $voucher (keys %voucherhash) { - if ($voucherhash{$voucher}[1] eq $cgiparams{'VOUCHER'}) { + foreach my $coupon (keys %couponhash) { + if ($couponhash{$coupon}[1] eq $cgiparams{'COUPON'}) { $found = 1; # Copy expiry time - $clientshash{$key}[3] = $voucherhash{$voucher}[2]; + $clientshash{$key}[3] = $couponhash{$coupon}[2]; - # Save voucher code - $clientshash{$key}[4] = $cgiparams{'VOUCHER'}; + # Save coupon code + $clientshash{$key}[4] = $cgiparams{'COUPON'}; - # Copy voucher remark - $clientshash{$key}[5] = $voucherhash{$voucher}[3]; + # Copy coupon remark + $clientshash{$key}[5] = $couponhash{$coupon}[3]; - # Delete used voucher - delete $voucherhash{$voucher}; - &General::writehasharray("$voucherout", \%voucherhash); + # Delete used coupon + delete $couponhash{$coupon}; + &General::writehasharray($coupons, \%couponhash); last; } } if ($found == 1) { - &General::log("Captive", "Internet access granted via voucher ($clientshash{$key}[4]) for $ip_address until $clientshash{$key}[3]"); + &General::log("Captive", "Internet access granted via coupon ($clientshash{$key}[4]) for $ip_address until $clientshash{$key}[3]"); } else { - $errormessage = $Lang::tr{"Captive invalid_voucher"}; + $errormessage = $Lang::tr{"Captive invalid coupon"}; } # License @@ -115,7 +115,7 @@ if ($cgiparams{'ACTION'} eq "SUBMIT") { # Copy expiry time $clientshash{$key}[3] = $settings{'EXPIRE'}; - # No voucher code + # No coupon code $clientshash{$key}[4] = "LICENSE"; &General::log("Captive", "Internet access granted via license agreement for $ip_address until $clientshash{$key}[3]"); @@ -143,8 +143,8 @@ my $tmpl = HTML::Template->new( $tmpl->param(REDIRECT_URL => $url); # Voucher -if ($settings{'AUTH'} eq "VOUCHER") { - $tmpl->param(VOUCHER => 1); +if ($settings{'AUTH'} eq "COUPON") { + $tmpl->param(COUPON => 1); } $tmpl->param(TITLE => $settings{'TITLE'}); @@ -156,8 +156,8 @@ $tmpl->param(TERMS => &getterms()); # Some translated strings $tmpl->param(L_ACTIVATE => $Lang::tr{'Captive ACTIVATE'}); $tmpl->param(L_GAIN_ACCESS => $Lang::tr{'Captive GAIN ACCESS'}); -$tmpl->param(L_HEADING_TERMS => $Lang::tr{'Captive heading terms'}); -$tmpl->param(L_HEADING_VOUCHER => $Lang::tr{'Captive heading voucher'}); +$tmpl->param(L_HEADING_COUPON => $Lang::tr{'Captive coupon'}); +$tmpl->param(L_HEADING_TERMS => $Lang::tr{'Captive terms'}); $tmpl->param(L_AGREE_TAC => $Lang::tr{'Captive agree tac'}); # Print header diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index fb6a429edc..084e5553d4 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -19,8 +19,10 @@ 'Captive authentication' => 'Art der Anmeldung', 'Captive brand color' => 'Highlight-Farbe', 'Captive config' => 'Konfiguration', +'Captive coupon' => 'Coupon', 'Captive err doublevoucher' => 'Ein Gutschein mit diesem Code ist bereits im Umlauf', 'Captive expire' => 'Ablauf', +'Captive generate coupon' => 'Coupon generieren', 'Captive genvoucher' => 'Gutschein generieren', 'Captive invalid logosize' => 'Die hochgeladene Datei entspricht nicht der vorgegeben Auflösung von mindestens 1280x400 und maximal 1920x800 Pixeln', 'Captive invalid_voucher' => 'Dieser Code ist ungültig. Bitte versuchen Sie es erneut', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index 5cada3619c..58475ab28e 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -21,9 +21,10 @@ 'Captive authentication' => 'Type of Access', 'Captive brand color' => 'Brand Color', 'Captive config' => 'Settings', +'Captive coupon' => 'Coupon', 'Captive err doublevoucher' => 'A voucher with this code already exists', 'Captive expire' => 'Expire', -'Captive genvoucher' => 'Generate voucher', +'Captive generate coupon' => 'Generate Coupon', 'Captive heading terms' => 'Terms & Conditions', 'Captive heading voucher' => 'Voucher or Access Code', 'Captive invalid logosize' => 'The uploaded image file does not meet the required resolution of at least 1280x400 but not larger than 1920x800 pixels', -- 2.39.2
$Lang::tr{'Captive voucher'}$Lang::tr{'Captive activated'}$Lang::tr{'Captive expire'}$Lang::tr{'Captive mac'}$Lang::tr{'remark'}$Lang::tr{'delete'}
$Lang::tr{'Captive coupon'}$Lang::tr{'Captive activated'}$Lang::tr{'Captive expire'}$Lang::tr{'Captive mac'}$Lang::tr{'remark'}$Lang::tr{'delete'}
$clientshash{$key}[4]
$starttime "; print "
$endtime
$clientshash{$key}[0]
$clientshash{$key}[5]
"; - print "