Implement #2689: Add setting to always send accounting requests (#2996)

This commit is contained in:
Michael Steenbeek 2018-12-03 13:39:49 +01:00 committed by Ad Schellevis
parent 88c28e3258
commit 797fd6ff7b
3 changed files with 12 additions and 2 deletions

View File

@ -193,12 +193,12 @@ class AccessController extends ApiControllerBase
$authProps = $authServer->getLastAuthProperties();
// when adding more client/session restrictions, extend next code
// (currently only time is restricted)
if (array_key_exists('session_timeout', $authProps)) {
if (array_key_exists('session_timeout', $authProps) || $cpZone->alwaysSendAccountingReqs == '1') {
$backend->configdpRun(
"captiveportal set session_restrictions",
array((string)$cpZone->zoneid,
$CPsession['sessionId'],
$authProps['session_timeout']
$authProps['session_timeout'] ?? null,
)
);
}

View File

@ -24,6 +24,12 @@
<type>select_multiple</type>
<help><![CDATA[Select authentication methods to use, leave empty for no authentication needed.]]></help>
</field>
<field>
<id>zone.alwaysSendAccountingReqs</id>
<label>Always send accounting requests</label>
<type>checkbox</type>
<help><![CDATA[This will make the captive portal always send accounting requests, rather than just when there is a need for accounting (e.g. when there is a daily session limit).]]></help>
</field>
<field>
<id>zone.authEnforceGroup</id>
<label>Enforce local group</label>

View File

@ -31,6 +31,10 @@
<multiple>Y</multiple>
<default>Local Database</default>
</authservers>
<alwaysSendAccountingReqs type="BooleanField">
<default>0</default>
<Required>Y</Required>
</alwaysSendAccountingReqs>
<authEnforceGroup type="AuthGroupField">
<Required>N</Required>
</authEnforceGroup>