summaryrefslogtreecommitdiff
path: root/src/PhpBB3Impl.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/PhpBB3Impl.php')
-rw-r--r--src/PhpBB3Impl.php23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/PhpBB3Impl.php b/src/PhpBB3Impl.php
index de61c5b..cc6d400 100644
--- a/src/PhpBB3Impl.php
+++ b/src/PhpBB3Impl.php
@@ -193,12 +193,25 @@ class PhpBB3Impl implements PhpBB3 {
$userId = $this->getUserId($msg->getFrom());
if ($userId === false) {
- throw new Exception('unrecognized email address: ' . $msg->getFrom());
- }
+ $userId = ANONYMOUS;
- $userName = $this->getUserName($userId);
- if ($userName === false) {
- throw new Exception('unrecognized user id: ' . $userId);
+ $dispname = $msg->getFromDisplayName();
+ if ($dispname === '') {
+ $userName = $msg->getFrom();
+ }
+ else {
+ $userName = $dispname . ' (' . $msg->getFrom() . ')';
+ }
+ if (validate_username($userName, '') !== false) {
+ $userName = 'EMail Poster';
+ }
+ }
+ else
+ {
+ $userName = $this->getUserName($userId);
+ if ($userName === false) {
+ throw new Exception('unrecognized user id: ' . $userId);
+ }
}
$subject = $msg->getSubject();