From 291fdd1894fd44bd117259956ac5299cb0d7babd Mon Sep 17 00:00:00 2001 From: Markus Gail Date: Thu, 17 Mar 2016 14:21:17 +0100 Subject: [PATCH] Tested Version of new Tiger line storage format. --- lib/Geocode.php | 2 +- lib/lib.php | 2 +- sql/tiger_import_start.sql | 6 +++--- website/details.php | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/Geocode.php b/lib/Geocode.php index ed8a4f37..340f233e 100644 --- a/lib/Geocode.php +++ b/lib/Geocode.php @@ -1613,7 +1613,7 @@ if (isset($aResultPlaceIDs) && sizeof($aResultPlaceIDs) && ($this->iMinAddressRank != 0 || $this->iMaxAddressRank != 30)) { // Need to verify passes rank limits before dropping out of the loop (yuk!) - // reduces the number of place id, like a filter + // reduces the number of place ids, like a filter $sSQL = "select place_id from placex where place_id in (".join(',',array_keys($aResultPlaceIDs)).") "; $sSQL .= "and (placex.rank_address between $this->iMinAddressRank and $this->iMaxAddressRank "; if (14 >= $this->iMinAddressRank && 14 <= $this->iMaxAddressRank) $sSQL .= " OR (extratags->'place') = 'city'"; diff --git a/lib/lib.php b/lib/lib.php index 7b1cbb8f..ac99b1d2 100644 --- a/lib/lib.php +++ b/lib/lib.php @@ -805,7 +805,7 @@ } - function getAddressDetails(&$oDB, $sLanguagePrefArraySQL, $iPlaceID, $sCountryCode = false, $housenumber, $bRaw = false) + function getAddressDetails(&$oDB, $sLanguagePrefArraySQL, $iPlaceID, $sCountryCode = false, $housenumber =-1, $bRaw = false) { $sSQL = "select *,get_name_by_language(name,$sLanguagePrefArraySQL) as localname from get_addressdata($iPlaceID, $housenumber)"; if (!$bRaw) $sSQL .= " WHERE isaddress OR type = 'country_code'"; diff --git a/sql/tiger_import_start.sql b/sql/tiger_import_start.sql index c3e1ed02..f6d65ae2 100644 --- a/sql/tiger_import_start.sql +++ b/sql/tiger_import_start.sql @@ -1,5 +1,5 @@ DROP TABLE IF EXISTS location_property_tiger_import; -CREATE TABLE location_property_tiger_import (linegeo GEOMETRY, place_id BIGINT, partition INTEGER, parent_place_id BIGINT, startnumber INTEGER, endnumber INTEGER, interpolationtype TEXT, street TEXT, isin TEXT, postcode TEXT); +CREATE TABLE location_property_tiger_import (linegeo GEOMETRY, place_id BIGINT, partition INTEGER, parent_place_id BIGINT, startnumber INTEGER, endnumber INTEGER, interpolationtype TEXT, postcode TEXT); CREATE OR REPLACE FUNCTION tiger_line_import(linegeo GEOMETRY, in_startnumber INTEGER, in_endnumber INTEGER, interpolationtype TEXT, @@ -73,8 +73,8 @@ BEGIN END IF; --insert street(line) into import table -insert into location_property_tiger_import (linegeo, place_id, partition, parent_place_id, startnumber, endnumber, interpolationtype, street, isin, postcode) -values (linegeo, nextval('seq_place'), out_partition, out_parent_place_id, startnumber, endnumber, interpolationtype, in_street, in_isin, in_postcode); +insert into location_property_tiger_import (linegeo, place_id, partition, parent_place_id, startnumber, endnumber, interpolationtype, postcode) +values (linegeo, nextval('seq_place'), out_partition, out_parent_place_id, startnumber, endnumber, interpolationtype, in_postcode); RETURN 1; END; diff --git a/website/details.php b/website/details.php index 4974717a..5b269fc0 100755 --- a/website/details.php +++ b/website/details.php @@ -10,7 +10,7 @@ $fLoadAvg = getLoadAverage(); if ($fLoadAvg > 3) { - echo "Page temporarily blocked due to high server load\n"; + echo "Page temporarily blocked due to high server load\n";F exit; } */ @@ -103,7 +103,7 @@ } // Address - $aAddressLines = getAddressDetails($oDB, $sLanguagePrefArraySQL, $iPlaceID, $aPointDetails['country_code'], true); + $aAddressLines = getAddressDetails($oDB, $sLanguagePrefArraySQL, $iPlaceID, $aPointDetails['country_code'], -1, true); // Linked places $sSQL = "select placex.place_id, osm_type, osm_id, class, type, housenumber, admin_level, rank_address, ST_GeometryType(geometry) in ('ST_Polygon','ST_MultiPolygon') as isarea, ST_Distance_Spheroid(geometry, placegeometry, 'SPHEROID[\"WGS 84\",6378137,298.257223563, AUTHORITY[\"EPSG\",\"7030\"]]') as distance, ";