chore: Update copyright year from 2025 to 2026 across core files

- Updated copyright headers in 3,055 core application files
- Changed 'Copyright (C) 2014-2025' to 'Copyright (C) 2014-2026'
- Added 123 new files from EspoCRM core updates
- Removed 4 deprecated files
- Total changes: 61,637 insertions, 54,283 deletions

This is a routine maintenance update for the new year 2026.
This commit is contained in:
2026-02-07 16:05:21 +01:00
parent 6a8a4a2882
commit 127fa6503b
6468 changed files with 564781 additions and 31179 deletions

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -107,9 +107,10 @@ class ConfigWriter
$configPath = $this->config->getConfigPath();
$internalConfigPath = $this->config->getInternalConfigPath();
$stateConfigPath = $this->config->getStateConfigPath();
if (!$this->fileManager->isFile($configPath)) {
throw new RuntimeException("Config file '{$configPath}' not found.");
throw new RuntimeException("Config file '$configPath' not found.");
}
$data = $this->fileManager->getPhpContents($configPath);
@@ -117,6 +118,9 @@ class ConfigWriter
$dataInternal = $this->fileManager->isFile($internalConfigPath) ?
$this->fileManager->getPhpContents($internalConfigPath) : [];
$dataState = $this->fileManager->isFile($stateConfigPath) ?
$this->fileManager->getPhpContents($stateConfigPath) : [];
if (!is_array($data)) {
throw new RuntimeException("Could not read config.");
}
@@ -125,12 +129,45 @@ class ConfigWriter
throw new RuntimeException("Could not read config-internal.");
}
if (!is_array($dataState)) {
throw new RuntimeException("Could not read state.");
}
$toSaveInternal = false;
$toSaveState = false;
$toSaveMain = false;
foreach (array_merge(array_keys($changedData), $this->removeParamList) as $key) {
if (array_key_exists($key, $data)) {
$toSaveMain = true;
}
if (array_key_exists($key, $dataInternal)) {
$toSaveInternal = true;
}
if (array_key_exists($key, $dataState)) {
$toSaveState = true;
}
}
foreach ($changedData as $key => $value) {
if ($this->internalConfigHelper->isParamForStateConfig($key)) {
$dataState[$key] = $value;
unset($data[$key]);
unset($dataInternal[$key]);
$toSaveState = true;
continue;
}
if ($this->internalConfigHelper->isParamForInternalConfig($key)) {
$dataInternal[$key] = $value;
unset($data[$key]);
unset($dataState[$key]);
$toSaveInternal = true;
@@ -138,25 +175,38 @@ class ConfigWriter
}
$data[$key] = $value;
unset($dataState[$key]);
unset($dataInternal[$key]);
$toSaveMain = true;
}
foreach ($this->removeParamList as $key) {
if ($this->internalConfigHelper->isParamForInternalConfig($key)) {
unset($dataInternal[$key]);
$toSaveInternal = true;
continue;
if (array_key_exists($key, $data)) {
unset($data[$key]);
}
unset($data[$key]);
if (array_key_exists($key, $dataInternal)) {
unset($dataInternal[$key]);
}
if (array_key_exists($key, $dataState)) {
unset($dataState[$key]);
}
}
if ($toSaveInternal) {
$this->saveData($internalConfigPath, $dataInternal, 'microtimeInternal');
}
$this->saveData($configPath, $data, 'microtime');
if ($toSaveMain) {
$this->saveData($configPath, $data, 'microtime');
}
if ($toSaveState) {
$this->saveData($stateConfigPath, $dataState, 'microtimeState');
}
$this->changedData = [];
$this->removeParamList = [];