X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/7489deb1b7db0f8941c2d4833e078856bc90e1b6..c74fcda86bdad5ecd0f7e0a12fca953acaee82cb:/lib/setup/SetupClass.php diff --git a/lib/setup/SetupClass.php b/lib/setup/SetupClass.php index 38f361e7..bf44e04b 100755 --- a/lib/setup/SetupClass.php +++ b/lib/setup/SetupClass.php @@ -235,6 +235,16 @@ class SetupFunctions $oAlParser->createTable($this->oDB, 'address_levels'); } + public function createTableTriggers() + { + info('Create Tables'); + + $sTemplate = file_get_contents(CONST_BasePath.'/sql/table-triggers.sql'); + $sTemplate = $this->replaceSqlPatterns($sTemplate); + + $this->pgsqlRunScript($sTemplate, false); + } + public function createPartitionTables() { info('Create Partition Tables'); @@ -648,7 +658,21 @@ class SetupFunctions private function createSqlFunctions() { - $sTemplate = file_get_contents(CONST_BasePath.'/sql/functions.sql'); + $sBasePath = CONST_BasePath.'/sql/functions/'; + $sTemplate = file_get_contents($sBasePath.'utils.sql'); + $sTemplate .= file_get_contents($sBasePath.'normalization.sql'); + $sTemplate .= file_get_contents($sBasePath.'importance.sql'); + $sTemplate .= file_get_contents($sBasePath.'address_lookup.sql'); + $sTemplate .= file_get_contents($sBasePath.'interpolation.sql'); + if ($this->oDB->tableExists('place')) { + $sTemplate .= file_get_contents($sBasePath.'place_triggers.sql'); + } + if ($this->oDB->tableExists('placex')) { + $sTemplate .= file_get_contents($sBasePath.'placex_triggers.sql'); + } + if ($this->oDB->tableExists('location_postcode')) { + $sTemplate .= file_get_contents($sBasePath.'postcode_triggers.sql'); + } $sTemplate = str_replace('{modulepath}', $this->sModulePath, $sTemplate); if ($this->bEnableDiffUpdates) { $sTemplate = str_replace('RETURN NEW; -- %DIFFUPDATES%', '--', $sTemplate);