]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib-php/TokenPostcode.php
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / lib-php / TokenPostcode.php
index c0b42fad5ae3fab4b4360f153806e4365f20b357..0ff92929cb58f2b496275fe23d016ac0d4dfdef2 100644 (file)
@@ -1,4 +1,12 @@
 <?php
 <?php
+/**
+ * SPDX-License-Identifier: GPL-2.0-only
+ *
+ * This file is part of Nominatim. (https://nominatim.org)
+ *
+ * Copyright (C) 2022 by the Nominatim developer community.
+ * For a full list of authors see the git log.
+ */
 
 namespace Nominatim\Token;
 
 
 namespace Nominatim\Token;
 
@@ -9,7 +17,7 @@ class Postcode
 {
     /// Database word id, if available.
     private $iId;
 {
     /// Database word id, if available.
     private $iId;
-    /// Full nomralized postcode (upper cased).
+    /// Full normalized postcode (upper cased).
     private $sPostcode;
     // Optional country code the postcode belongs to (currently unused).
     private $sCountryCode;
     private $sPostcode;
     // Optional country code the postcode belongs to (currently unused).
     private $sCountryCode;
@@ -17,7 +25,12 @@ class Postcode
     public function __construct($iId, $sPostcode, $sCountryCode = '')
     {
         $this->iId = $iId;
     public function __construct($iId, $sPostcode, $sCountryCode = '')
     {
         $this->iId = $iId;
-        $this->sPostcode = $sPostcode;
+        $iSplitPos = strpos($sPostcode, '@');
+        if ($iSplitPos === false) {
+            $this->sPostcode = $sPostcode;
+        } else {
+            $this->sPostcode = substr($sPostcode, 0, $iSplitPos);
+        }
         $this->sCountryCode = empty($sCountryCode) ? '' : $sCountryCode;
     }
 
         $this->sCountryCode = empty($sCountryCode) ? '' : $sCountryCode;
     }