grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026doSaveTestSettingsKey($key, $var); if (!empty($error)) { $output = LangText::get('IMAP_HANDLER_ERROR', ['error' => $error, 'key' => $key]); } else { $output = LangText::get('IMAP_HANDLER_SUCCESS', ['key' => $key]); } return $output; } /** * * @param string $key * @param string $var * @return string|null return a translated error message if error occurred */ protected function doSaveTestSettingsKey($key, $var) { if (!$key) { $error = LangText::get('IMAP_HANDLER_ERROR_INVALID_REQUEST', ['var' => $var]); } else { $imapHandlerFactory = new ImapHandlerFactory(); try { $error = $this->getSaveTestSettingsKey($imapHandlerFactory, $key); } catch (ImapHandlerException $e) { $error = $this->handleImapHandlerException($e); } } return $error; } /** * * @param ImapHandlerFactory $imapHandlerFactory * @param string $key * @return string|null return a translated error message if error occurred */ protected function getSaveTestSettingsKey(ImapHandlerFactory $imapHandlerFactory, $key) { $error = null; if (!$imapHandlerFactory->saveTestSettingsKey($key)) { $error = LangText::get('IMAP_HANDLER_ERROR_UNKNOWN_BY_KEY', ['key' => $key]); } return $error; } /** * * @param ImapHandlerException $e * @return string return a translated error message */ protected function handleImapHandlerException(ImapHandlerException $e) { $code = $e->getCode(); LoggerManager::getLogger()->error('ImapHandlerException detected: ' . $e->getMessage() . ' #' . $code); switch ($code) { case ImapHandlerException::ERR_TEST_SET_NOT_EXISTS: $error = LangText::get('IMAP_HANDLER_ERROR_NO_TEST_SET'); break; case ImapHandlerException::ERR_KEY_NOT_FOUND: $error = LangText::get('IMAP_HANDLER_ERROR_NO_KEY'); break; case ImapHandlerException::ERR_KEY_SAVE_ERROR: $error = LangText::get('IMAP_HANDLER_ERROR_KEY_SAVE'); break; default: $error = LangText::get('IMAP_HANDLER_ERROR_UNKNOWN'); break; } return $error; } }