Add contribDir to app config (#8567)

This commit is contained in:
Freddie Sackur 2025-04-23 08:34:41 +01:00 committed by GitHub
parent 08a86fdae9
commit a819b91049
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 17 additions and 5 deletions

View File

@ -36,6 +36,7 @@ return new OPNsense\Core\AppConfig([
'pluginsDir' => __DIR__ . '/../../app/plugins/',
'libraryDir' => __DIR__ . '/../../app/library/',
'cacheDir' => __DIR__ . '/../../app/cache/',
'contribDir' => __DIR__ . '/../../../contrib/',
'baseUri' => '/opnsense_gui/',
],
'globals' => [

View File

@ -32,6 +32,7 @@ namespace OPNsense\Firewall\Api;
use OPNsense\Base\ApiMutableModelControllerBase;
use OPNsense\Base\UserException;
use OPNsense\Core\AppConfig;
use OPNsense\Core\Backend;
use OPNsense\Core\Config;
use OPNsense\Firewall\Category;
@ -256,7 +257,8 @@ class AliasController extends ApiMutableModelControllerBase
]
];
foreach (explode("\n", file_get_contents('/usr/local/opnsense/contrib/tzdata/iso3166.tab')) as $line) {
$contribDir = (new AppConfig())->application->contribDir;
foreach (explode("\n", file_get_contents($contribDir . '/tzdata/iso3166.tab')) as $line) {
$line = trim($line);
if (strlen($line) > 3 && substr($line, 0, 1) != '#') {
$result[substr($line, 0, 2)] = array(
@ -265,7 +267,7 @@ class AliasController extends ApiMutableModelControllerBase
);
}
}
foreach (explode("\n", file_get_contents('/usr/local/opnsense/contrib/tzdata/zone.tab')) as $line) {
foreach (explode("\n", file_get_contents($contribDir . '/tzdata/zone.tab')) as $line) {
if (strlen($line) > 0 && substr($line, 0, 1) == '#') {
continue;
}

View File

@ -28,6 +28,8 @@
namespace OPNsense\Base\FieldTypes;
use OPNsense\Core\AppConfig;
/**
* Class CountryField field type to select iso3166 countries
* @package OPNsense\Base\FieldTypes
@ -62,7 +64,8 @@ class CountryField extends BaseListField
self::$internalCacheOptionList[$setid] = [];
}
if (empty(self::$internalCacheOptionList[$setid])) {
$filename = '/usr/local/opnsense/contrib/tzdata/iso3166.tab';
$contribDir = (new AppConfig())->application->contribDir;
$filename = $contribDir . '/tzdata/iso3166.tab';
$data = file_get_contents($filename);
foreach (explode("\n", $data) as $line) {
$line = trim($line);

View File

@ -31,6 +31,7 @@ namespace OPNsense\Firewall\FieldTypes;
use OPNsense\Base\FieldTypes\BaseField;
use OPNsense\Base\Messages\Message;
use OPNsense\Base\Validators\CallbackValidator;
use OPNsense\Core\AppConfig;
use OPNsense\Core\Config;
use OPNsense\Firewall\Util;
@ -105,7 +106,8 @@ class AliasContentField extends BaseField
if (empty(self::$internalCountryCodes)) {
// Maxmind's country code 6255148 (EU Unclassified)
self::$internalCountryCodes[] = 'EU';
foreach (explode("\n", file_get_contents('/usr/local/opnsense/contrib/tzdata/iso3166.tab')) as $line) {
$contribDir = (new AppConfig())->application->contribDir;
foreach (explode("\n", file_get_contents($contribDir . '/tzdata/iso3166.tab')) as $line) {
$line = trim($line);
if (strlen($line) > 3 && substr($line, 0, 1) != '#') {
self::$internalCountryCodes[] = substr($line, 0, 2);

View File

@ -36,6 +36,7 @@ return new OPNsense\Core\AppConfig([
'pluginsDir' => __DIR__ . '/../../../app/plugins/',
'libraryDir' => __DIR__ . '/../../../app/library/',
'cacheDir' => __DIR__ . '/../../../app/cache/',
'contribDir' => __DIR__ . '/../../../../contrib/',
'baseUri' => '/opnsense_gui/',
],
'globals' => [

View File

@ -30,7 +30,10 @@
require_once("guiconfig.inc");
require_once("system.inc");
$serviceproviders_xml = "/usr/local/opnsense/contrib/mobile-broadband-provider-info/serviceproviders.xml";
use OPNsense\Core\AppConfig;
$contribDir = (new AppConfig())->application->contribDir;
$serviceproviders_xml = $contribDir . "/mobile-broadband-provider-info/serviceproviders.xml";
$serviceproviders_contents = file_get_contents($serviceproviders_xml);
$serviceproviders = simplexml_load_string($serviceproviders_contents);