1: <?php
2: /**
3: * This code is licensed under AGPLv3 license or Afterlogic Software License
4: * if commercial version of the product was purchased.
5: * For full statements of the licenses see LICENSE-AFTERLOGIC and LICENSE-AGPL3 files.
6: */
7:
8: namespace Aurora\Modules\CoreExtender;
9:
10: /**
11: * Provides user groups.
12: *
13: * @license https://www.gnu.org/licenses/agpl-3.0.html AGPL-3.0
14: * @license https://afterlogic.com/products/common-licensing Afterlogic Software License
15: * @copyright Copyright (c) 2023, Afterlogic Corp.
16: *
17: * @package Modules
18: */
19: class Module extends \Aurora\System\Module\AbstractModule
20: {
21: public function init()
22: {
23: $this->subscribeEvent('Core::SetAuthDataAndGetAuthToken::after', array($this, 'onAfterAuthenticate'), 10);
24: }
25:
26: public function onAfterAuthenticate(&$aArgs, &$mResult)
27: {
28: if ($mResult && is_array($mResult) && isset($mResult['AuthToken'])) {
29: $sXClientHeader = (string) \MailSo\Base\Http::SingletonInstance()->GetHeader('X-Client');
30:
31: if (strtolower($sXClientHeader) !== 'webclient') {
32: $mResult['AllowAccess'] = 1;
33: }
34: }
35: }
36: }
37: