From: Alexander Marx Date: Wed, 29 Jun 2016 10:47:55 +0000 (+0200) Subject: BUG11137: Captive save action messes up the form X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6945954c445ff0af6196571bd352e8c8fe0e286b;p=people%2Fms%2Fipfire-2.x.git BUG11137: Captive save action messes up the form When configuring the captiveportal for the first time the form will be empty after clicking on save button if not all relevant fields are set. Now the settings are stored even if there is an error. Signed-off-by: Alexander Marx Signed-off-by: Michael Tremer --- diff --git a/html/cgi-bin/captive.cgi b/html/cgi-bin/captive.cgi index ab5e932642..803c03d913 100755 --- a/html/cgi-bin/captive.cgi +++ b/html/cgi-bin/captive.cgi @@ -72,6 +72,18 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ $errormessage=$Lang::tr{'Captive wrong ext'}; } } + + $settings{'ENABLE_GREEN'} = $cgiparams{'ENABLE_GREEN'}; + $settings{'ENABLE_BLUE'} = $cgiparams{'ENABLE_BLUE'}; + $settings{'AUTH'} = $cgiparams{'AUTH'}; + $settings{'EXPIRE'} = $cgiparams{'EXP_HOUR'}+$cgiparams{'EXP_DAY'}+$cgiparams{'EXP_WEEK'}+$cgiparams{'EXP_MONTH'}; + $settings{'EXP_HOUR'} = $cgiparams{'EXP_HOUR'}; + $settings{'EXP_DAY'} = $cgiparams{'EXP_DAY'}; + $settings{'EXP_WEEK'} = $cgiparams{'EXP_WEEK'}; + $settings{'EXP_MONTH'} = $cgiparams{'EXP_MONTH'}; + $settings{'TITLE'} = $cgiparams{'TITLE'}; + $settings{'UNLIMITED'} = $cgiparams{'UNLIMITED'}; + if (!$errormessage){ #Check if we need to upload a new logo if($file){ @@ -103,17 +115,7 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ $cgiparams{'EXP_WEEK'} = '0'; $cgiparams{'EXP_MONTH'} = '0'; } - - $settings{'ENABLE_GREEN'} = $cgiparams{'ENABLE_GREEN'}; - $settings{'ENABLE_BLUE'} = $cgiparams{'ENABLE_BLUE'}; - $settings{'AUTH'} = $cgiparams{'AUTH'}; - $settings{'EXPIRE'} = $cgiparams{'EXP_HOUR'}+$cgiparams{'EXP_DAY'}+$cgiparams{'EXP_WEEK'}+$cgiparams{'EXP_MONTH'}; - $settings{'EXP_HOUR'} = $cgiparams{'EXP_HOUR'}; - $settings{'EXP_DAY'} = $cgiparams{'EXP_DAY'}; - $settings{'EXP_WEEK'} = $cgiparams{'EXP_WEEK'}; - $settings{'EXP_MONTH'} = $cgiparams{'EXP_MONTH'}; - $settings{'TITLE'} = $cgiparams{'TITLE'}; - $settings{'UNLIMITED'} = $cgiparams{'UNLIMITED'}; + &General::writehash("$settingsfile", \%settings); #write Licensetext if defined