diff --git a/core/src/Classes/BaseService.php b/core/src/Classes/BaseService.php index c98dab41..ba5e7f24 100644 --- a/core/src/Classes/BaseService.php +++ b/core/src/Classes/BaseService.php @@ -172,7 +172,7 @@ class BaseService public function getCustomFieldClassMap() { $map = []; - foreach($this->customFieldsClassMap as $key => $val) { + foreach ($this->customFieldsClassMap as $key => $val) { $map[] = [$key, $val]; } return $map; diff --git a/core/src/Classes/DomainAwareInputCleaner.php b/core/src/Classes/DomainAwareInputCleaner.php index 40b1aedd..ec086c08 100644 --- a/core/src/Classes/DomainAwareInputCleaner.php +++ b/core/src/Classes/DomainAwareInputCleaner.php @@ -61,7 +61,6 @@ class DomainAwareInputCleaner $filterData = json_decode($filters, true); foreach ($filterData as $name => $value) { - if (!$this->isValidColumnName($name) || !$this->isValidFilterValue($value)) { return ''; } diff --git a/core/src/Classes/ModuleBuilderV2/ModuleBuilder.php b/core/src/Classes/ModuleBuilderV2/ModuleBuilder.php index 8bbf7ec1..357e01f3 100644 --- a/core/src/Classes/ModuleBuilderV2/ModuleBuilder.php +++ b/core/src/Classes/ModuleBuilderV2/ModuleBuilder.php @@ -15,7 +15,7 @@ class ModuleBuilder public $modules = array(); public $user = null; - function __construct() + public function __construct() { $this->user = \Classes\BaseService::getInstance()->getCurrentUser(); } diff --git a/core/src/Classes/ModuleBuilderV2/ModuleTab.php b/core/src/Classes/ModuleBuilderV2/ModuleTab.php index 2dee321d..e79fc52c 100644 --- a/core/src/Classes/ModuleBuilderV2/ModuleTab.php +++ b/core/src/Classes/ModuleBuilderV2/ModuleTab.php @@ -31,8 +31,8 @@ class ModuleTab $orderBy, $isActive = false, $options = array() - ) - { + ) { + $this->modelPath = $modelPath; $this->name = $name; $this->class = $class; @@ -43,12 +43,14 @@ class ModuleTab $this->isActive = $isActive; $this->options = array_merge( - $options, [ + $options, + [ "setObjectTypeName" => "'{$this->name}'", "setAccess" => "data.permissions.{$this->name} ? data.permissions.{$this->name} : {}", "setDataPipe" => 'new IceDataPipe(modJsList.tab' . $this->name . ')', "setRemoteTable" => true, - ]); + ] + ); } public function getHTML() @@ -67,8 +69,8 @@ class ModuleTab { $active = ($this->isActive)?" active":""; $html = '
'. - '
'. - '
'. + '
'. + '
'. '
'. '
'; diff --git a/core/src/Classes/SAMLManager.php b/core/src/Classes/SAMLManager.php index 9d3362b4..cb2692fc 100644 --- a/core/src/Classes/SAMLManager.php +++ b/core/src/Classes/SAMLManager.php @@ -7,7 +7,8 @@ use Utils\LogManager; class SAMLManager { - public function getSSOEmail($samlData, $relayState) { + public function getSSOEmail($samlData, $relayState) + { // Service Providers Assertion Consumer Service (ACS) URL $acsUrl = CLIENT_BASE_URL.'login.php'; $samlResponse = htmlspecialchars($samlData); @@ -27,15 +28,15 @@ class SAMLManager $statusString = $status->item(0)->getAttribute('Value'); - $statusArray = explode(':',$statusString); - if(array_key_exists(7, $statusArray)){ + $statusArray = explode(':', $statusString); + if (array_key_exists(7, $statusArray)) { $status = $statusArray[7]; } if ('Success' !== $status) { $StatusMessage = $xpath->query('/samlp:Response/samlp:Status/samlp:StatusMessage', $doc)->item(0); LogManager::getInstance()->error('SAML login failed: status = '. $status); - if(!empty($StatusMessage)) { + if (!empty($StatusMessage)) { $StatusMessage = $StatusMessage->nodeValue; LogManager::getInstance()->error('SAML login failed: status message = '. $StatusMessage); } @@ -51,17 +52,31 @@ class SAMLManager $certFingerPrint = MoXMLSecurityKey::getRawThumbprint($x509cert); $certFingerPrint = preg_replace('/\s+/', '', $certFingerPrint); $validSignature = false; - if(!empty($responseSignatureData)) { - $validSignature = \Utilities::processResponse($acsUrl, $certFingerPrint, $responseSignatureData, $samlResponse, 0, $relayState); + if (!empty($responseSignatureData)) { + $validSignature = \Utilities::processResponse( + $acsUrl, + $certFingerPrint, + $responseSignatureData, + $samlResponse, + 0, + $relayState + ); LogManager::getInstance()->error('SAML: response signature validity :'.$validSignature); } - if(!empty($assertionSignatureData)) { - $validSignature = \Utilities::processResponse($acsUrl, $certFingerPrint, $assertionSignatureData, $samlResponse, 0, $relayState); + if (!empty($assertionSignatureData)) { + $validSignature = \Utilities::processResponse( + $acsUrl, + $certFingerPrint, + $assertionSignatureData, + $samlResponse, + 0, + $relayState + ); LogManager::getInstance()->error('SAML: response signature validity :'.$validSignature); } - if(!$validSignature) { + if (!$validSignature) { LogManager::getInstance()->error('Invalid response or assertion signature'); return false; } @@ -82,4 +97,4 @@ class SAMLManager return $ssoEmail; } -} \ No newline at end of file +} diff --git a/core/src/Classes/SettingsManager.php b/core/src/Classes/SettingsManager.php index a7269fbc..58972513 100644 --- a/core/src/Classes/SettingsManager.php +++ b/core/src/Classes/SettingsManager.php @@ -28,17 +28,20 @@ class SettingsManager return self::$me; } - public function addEncryptedSetting($name) { + public function addEncryptedSetting($name) + { if (!$this->isEncryptedSetting($name)) { $this->encryptedSettings[] = $name; } } - public function isEncryptedSetting($name) { + public function isEncryptedSetting($name) + { return in_array($name, $this->encryptedSettings); } - public function getInstanceKey() { + public function getInstanceKey() + { $settings = new Setting(); $settings->Load("name = ?", array("Instance: Key")); if ($settings->name != "Instance: Key") { @@ -47,16 +50,17 @@ class SettingsManager return $settings->value; } - private function encrypt($value) { + private function encrypt($value) + { $id = BaseService::getInstance()->getInstanceId(); $key = $this->getInstanceKey(); return AesCtr::encrypt($value, $id.$key, 256); } - public function encryptSetting($name, $value) { + public function encryptSetting($name, $value) + { // check the existence of prefix and encrypt only if need to avoid double encryption - if ( - $this->isEncryptedSetting($name) + if ($this->isEncryptedSetting($name) && substr($value, 0, strlen(self::ENCRYPTED_PREFIX)) !== self::ENCRYPTED_PREFIX ) { $value = self::ENCRYPTED_PREFIX.$this->encrypt($value); @@ -65,15 +69,16 @@ class SettingsManager return $value; } - private function decrypt($value) { + private function decrypt($value) + { $id = BaseService::getInstance()->getInstanceId(); $key = $this->getInstanceKey(); return AesCtr::decrypt($value, $id.$key, 256); } - public function decryptSetting($name, $value) { - if ( - $this->isEncryptedSetting($name) + public function decryptSetting($name, $value) + { + if ($this->isEncryptedSetting($name) && substr($value, 0, strlen(self::ENCRYPTED_PREFIX)) === self::ENCRYPTED_PREFIX ) { $value = $this->decrypt(substr($value, strlen(self::ENCRYPTED_PREFIX))); @@ -134,7 +139,8 @@ class SettingsManager } } - public function getDeprecatedSettings() { + public function getDeprecatedSettings() + { return [ 'Attendance: Work Week Start Day', 'Attendance: Overtime Calculation Class' diff --git a/core/src/CustomField/Admin/Api/CustomFieldAdminManager.php b/core/src/CustomField/Admin/Api/CustomFieldAdminManager.php index 219fdd0c..25e6d70a 100644 --- a/core/src/CustomField/Admin/Api/CustomFieldAdminManager.php +++ b/core/src/CustomField/Admin/Api/CustomFieldAdminManager.php @@ -22,4 +22,4 @@ class CustomFieldAdminManager extends AbstractModuleManager { $this->addModelClass('CustomField'); } -} \ No newline at end of file +} diff --git a/core/src/Documents/Admin/Api/DocumentTaskCreator.php b/core/src/Documents/Admin/Api/DocumentTaskCreator.php index b6c6b218..0a7724b6 100644 --- a/core/src/Documents/Admin/Api/DocumentTaskCreator.php +++ b/core/src/Documents/Admin/Api/DocumentTaskCreator.php @@ -45,7 +45,8 @@ class DocumentTaskCreator implements TaskCreator return 0; } - $query = "select count(id) as c from EmployeeDocuments where employee = ? and valid_until < ? and visible_to = ?"; + $query + = "select count(id) as c from EmployeeDocuments where employee = ? and valid_until < ? and visible_to = ?"; $user->DB()->SetFetchMode(ADODB_FETCH_ASSOC); // TODO - sending notifications only for Owner documents, this need to be extended later diff --git a/core/src/Model/CustomFieldTrait.php b/core/src/Model/CustomFieldTrait.php index fa3a9b25..2541f6a2 100644 --- a/core/src/Model/CustomFieldTrait.php +++ b/core/src/Model/CustomFieldTrait.php @@ -13,4 +13,4 @@ trait CustomFieldTrait { return $this->allowCustomFields; } -} \ No newline at end of file +} diff --git a/core/src/Model/Setting.php b/core/src/Model/Setting.php index 00551f68..7dffef62 100644 --- a/core/src/Model/Setting.php +++ b/core/src/Model/Setting.php @@ -101,7 +101,7 @@ class Setting extends BaseModel } if (strlen($obj->value) > 30) { - $obj->value = substr($obj->value,0, 30).'...'; + $obj->value = substr($obj->value, 0, 30).'...'; } return $obj; } diff --git a/core/src/Reports/Admin/Reports/EmployeeTimeTrackReport.php b/core/src/Reports/Admin/Reports/EmployeeTimeTrackReport.php index 57c4ed43..8725427d 100644 --- a/core/src/Reports/Admin/Reports/EmployeeTimeTrackReport.php +++ b/core/src/Reports/Admin/Reports/EmployeeTimeTrackReport.php @@ -17,8 +17,7 @@ class EmployeeTimeTrackReport extends ClassBasedReportBuilder implements ReportB LogManager::getInstance()->info(json_encode($report)); LogManager::getInstance()->info(json_encode($req)); - if ( - empty($req['period']) + if (empty($req['period']) && ( empty($req['date_start']) || 'NULL' === $req['date_start'] @@ -85,7 +84,13 @@ class EmployeeTimeTrackReport extends ClassBasedReportBuilder implements ReportB $company->Load('id = ?', [$employeeObject->department]); $reportData = []; - $reportData[] = ["Date","First Punch-In Time","Last Punch-Out Time","Time in Attendance (Hours)","Time in Time-sheets (Hours)"]; + $reportData[] = [ + "Date", + "First Punch-In Time", + "Last Punch-Out Time", + "Time in Attendance (Hours)", + "Time in Time-sheets (Hours)", + ]; $reportData[] = ["Employee:",$employeeObject->first_name." ".$employeeObject->last_name,"","",""]; $reportData[] = ["Department:",$company->title,"","",""]; $reportData[] = ["Total Days:","","","",""]; @@ -94,7 +99,11 @@ class EmployeeTimeTrackReport extends ClassBasedReportBuilder implements ReportB //Iterate date range $interval = \DateInterval::createFromDateString('1 day'); - $period = new \DatePeriod(new \DateTime($req['date_start']), $interval, (new \DateTime($req['date_end']))->modify('+1 day')); + $period = new \DatePeriod( + new \DateTime($req['date_start']), + $interval, + (new \DateTime($req['date_end']))->modify('+1 day') + ); $totalHoursOffice = 0; $totalHoursTimeSheets = 0; @@ -154,7 +163,8 @@ class EmployeeTimeTrackReport extends ClassBasedReportBuilder implements ReportB return $reportData; } - private function setRequestDatesBasedOnThePeriod($req) { + private function setRequestDatesBasedOnThePeriod($req) + { if (empty($req['period'])) { return $req; } @@ -162,13 +172,13 @@ class EmployeeTimeTrackReport extends ClassBasedReportBuilder implements ReportB if ($req['period'] === 'Current Month') { $req['date_start'] = date('Y-m-01', strtotime('now')); $req['date_end'] = date('Y-m-d', strtotime('now')); - } else if ($req['period'] === 'Last Month') { + } elseif ($req['period'] === 'Last Month') { $req['date_start'] = date('Y-m-d', strtotime('first day of last month')); $req['date_end'] = date('Y-m-d', strtotime('last day of last month')); - } else if ($req['period'] === 'Last Week') { + } elseif ($req['period'] === 'Last Week') { $req['date_start'] = date("Y-m-d", strtotime("-7 days")); $req['date_end'] = date('Y-m-d', strtotime('now')); - } else if ($req['period'] === 'Last 2 Weeks') { + } elseif ($req['period'] === 'Last 2 Weeks') { $req['date_start'] = date("Y-m-d", strtotime("-14 days")); $req['date_end'] = date('Y-m-d', strtotime('now')); }