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\LogsViewerWebclient;
9:
10: /**
11: * @license https://www.gnu.org/licenses/agpl-3.0.html AGPL-3.0
12: * @license https://afterlogic.com/products/common-licensing Afterlogic Software License
13: * @copyright Copyright (c) 2023, Afterlogic Corp.
14: *
15: * @property Settings $oModuleSettings
16: *
17: * @package Modules
18: */
19: class Module extends \Aurora\System\Module\AbstractWebclientModule
20: {
21: /**
22: * @return Module
23: */
24: public static function getInstance()
25: {
26: return parent::getInstance();
27: }
28:
29: /**
30: * @return Module
31: */
32: public static function Decorator()
33: {
34: return parent::Decorator();
35: }
36:
37: /**
38: * @return Settings
39: */
40: public function getModuleSettings()
41: {
42: return $this->oModuleSettings;
43: }
44:
45: public function GetSettings()
46: {
47: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
48:
49: return array(
50: 'ViewLastLogSize' => $this->oModuleSettings->ViewLastLogSize
51: );
52: }
53:
54: public function GetUsersWithSeparateLog()
55: {
56: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
57: return \Aurora\Modules\Core\Module::Decorator()->GetUsersWithSeparateLog();
58: }
59:
60: public function TurnOffSeparateLogs()
61: {
62: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
63: return \Aurora\Modules\Core\Module::Decorator()->TurnOffSeparateLogs();
64: }
65:
66: public function ClearSeparateLogs()
67: {
68: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
69: return \Aurora\Modules\Core\Module::Decorator()->ClearSeparateLogs();
70: }
71:
72: public function GetLogFilesData()
73: {
74: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
75: return \Aurora\Modules\Core\Module::Decorator()->GetLogFilesData();
76: }
77:
78: public function GetLogFile($FilePrefix = '', $PublicId = '')
79: {
80: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
81: return \Aurora\Modules\Core\Module::Decorator()->GetLogFile($FilePrefix, $PublicId);
82: }
83:
84: public function GetLog($FilePrefix = '')
85: {
86: $PartSize = $this->oModuleSettings->ViewLastLogSize;
87: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
88: return \Aurora\Modules\Core\Module::Decorator()->GetLog($FilePrefix, $PartSize);
89: }
90:
91: public function ClearLog($FilePrefix = '')
92: {
93: \Aurora\System\Api::checkUserRoleIsAtLeast(\Aurora\System\Enums\UserRole::TenantAdmin);
94: return \Aurora\Modules\Core\Module::Decorator()->ClearLog($FilePrefix);
95: }
96: }
97: