<?php namespace OCA\CTAutoMailHooks; use OCP\ILogger; use \OCP\IConfig; class Config { const CONFIG_KEY = 'ct_auto_mail_hooks'; const CONFIG_KEY_GLESYS_KEYS="glesys_keys"; const CONFIG_KEY_EMAIL_ADDR_SUFFIX="email_suffix"; const CONFIG_KEY_EMAIL_ADDR_QUOTA_MB="quota"; const DEFAULT_EMAIL_ADDR_QUOTA_MB="200"; private $logger; private $appConfiguration; private $logContext = ['app' => 'ct_auto_mail_hooks']; public function __construct(ILogger $logger, IConfig $nextCloudConfiguration) { $this->logger = $logger; $this->appConfiguration = $nextCloudConfiguration->getSystemValue(self::CONFIG_KEY); } public function getGlesysKeys() { return $this->getConfValue(self::CONFIG_KEY_GLESYS_KEYS); } public function getEmailAddressSuffix() { return $this->getConfValue(self::CONFIG_KEY_EMAIL_ADDR_SUFFIX); } public function getEmailQuotaMB() { $quota = $this->getConfValue(self::CONFIG_KEY_EMAIL_ADDR_QUOTA_MB); return is_null($quota) ? self::DEFAULT_EMAIL_ADDR_QUOTA_MB : $quota; } private function getConfValue($configKey) { if(array_key_exists($configKey, $this->appConfiguration)){ return $this->appConfiguration[$configKey]; } return NULL; } }