From: Alexander Marx Date: Wed, 29 Jun 2016 10:47:55 +0000 (+0200) Subject: BUG11137: Captive save action messes up the form X-Git-Tag: v2.19-core115~60^2~62 X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=commitdiff_plain;h=6945954c445ff0af6196571bd352e8c8fe0e286b 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