diff --git a/config/config.ini.sample.php b/config/config.ini.sample.php index 9773615e72234b78c22b9b815770322fd5da646c..4d01ba3c33138ccf94c9cb6fa9fe36b7d3a0aafd 100644 --- a/config/config.ini.sample.php +++ b/config/config.ini.sample.php @@ -5,14 +5,14 @@ ; the config.ini.php file contains information about the super user and the database access [superuser] -login = yourSuLogin -password = yourSuPassword -email = hello@piwik.org +login = yourSuperUserLogin +password = yourSuperUserPassword +email = hello@example.org [database] host = localhost username = databaseLogin password = datatabasePassword dbname = databaseName -adapter = PDO_MYSQL ; PDO_MYSQL or MYSQLI +adapter = PDO_MYSQL ; PDO_MYSQL, MYSQLI, or PDO_PGSQL tables_prefix = piwik_ diff --git a/config/global.ini.php b/config/global.ini.php index b2d142d14cf1146fed53231ba85e7665838d35b7..31e7b642f289dbd815f67142923c32cceffeef50 100644 --- a/config/global.ini.php +++ b/config/global.ini.php @@ -18,7 +18,7 @@ password = dbname = tables_prefix = port = 3306 -adapter = PDO_MYSQL ; PDO_MYSQL or MYSQLI +adapter = PDO_MYSQL [database_tests] host = localhost diff --git a/core/Db/Pdo/Pgsql.php b/core/Db/Pdo/Pgsql.php index 0e0fa976a6e242c1f21989d62b0c559d898c6454..227652154b0bc15177ac4a866150bf3bc0d7aaf5 100644 --- a/core/Db/Pdo/Pgsql.php +++ b/core/Db/Pdo/Pgsql.php @@ -158,4 +158,26 @@ class Piwik_Db_Pdo_Pgsql extends Zend_Db_Adapter_Pdo_Pgsql implements Piwik_Db_i $charset = $this->fetchOne('SHOW client_encoding'); return strtolower($charset) === 'utf8'; } + + /** + * Returns a list of the tables in the database. + * + * Replaces parent::listTables() which uses subqueries. + * @see ZF-???? + * + * @return array + */ + public function listTables() + { + $sql = "SELECT c.relname AS table_name " + . "FROM pg_catalog.pg_class c " + . "JOIN pg_catalog.pg_roles r ON r.oid = c.relowner " + . "LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace " + . "WHERE n.nspname <> 'pg_catalog' " + . "AND n.nspname !~ '^pg_toast' " + . "AND pg_catalog.pg_table_is_visible(c.oid) " + . "AND c.relkind = 'r' "; + + return $this->fetchCol($sql); + } } diff --git a/plugins/Goals/API.php b/plugins/Goals/API.php index a8c6ed989bb70666e66aec3cf6c483c83163d39c..5ed95fd68b0bbf897cd9a47ae2bcc5376665787d 100644 --- a/plugins/Goals/API.php +++ b/plugins/Goals/API.php @@ -126,7 +126,7 @@ class Piwik_Goals_API WHERE idsite = ? AND idgoal = ?", array($idSite, $idGoal)); - Zend_Registry::get('db')->query("DELETE FROM ".Piwik::prefixTable("log_conversion")." WHERE idgoal = ?", $idGoal); + Piwik_Query("DELETE FROM ".Piwik::prefixTable("log_conversion")." WHERE idgoal = ?", $idGoal); Piwik_Common::regenerateCacheWebsiteAttributes($idSite); }