Fix functions to write cdb_conf
Two problems fixe with this functions ported from the cartodb extension: * There was an incorrect reference to the cartodb scchema * They need to be SECURITY DEFINER to be usable with the geocoder_api role
This commit is contained in:
@@ -97,10 +97,10 @@ CREATE OR REPLACE
|
|||||||
FUNCTION cdb_dataservices_server.CDB_Conf_SetConf(key text, value JSON)
|
FUNCTION cdb_dataservices_server.CDB_Conf_SetConf(key text, value JSON)
|
||||||
RETURNS void AS $$
|
RETURNS void AS $$
|
||||||
BEGIN
|
BEGIN
|
||||||
PERFORM cartodb.CDB_Conf_RemoveConf(key);
|
PERFORM cdb_dataservices_server.CDB_Conf_RemoveConf(key);
|
||||||
EXECUTE 'INSERT INTO cartodb.CDB_CONF (KEY, VALUE) VALUES ($1, $2);' USING key, value;
|
EXECUTE 'INSERT INTO cartodb.CDB_CONF (KEY, VALUE) VALUES ($1, $2);' USING key, value;
|
||||||
END
|
END
|
||||||
$$ LANGUAGE PLPGSQL VOLATILE;
|
$$ LANGUAGE PLPGSQL VOLATILE SECURITY DEFINER;
|
||||||
|
|
||||||
CREATE OR REPLACE
|
CREATE OR REPLACE
|
||||||
FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
||||||
@@ -108,7 +108,7 @@ FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
|||||||
BEGIN
|
BEGIN
|
||||||
EXECUTE 'DELETE FROM cartodb.CDB_CONF WHERE KEY = $1;' USING key;
|
EXECUTE 'DELETE FROM cartodb.CDB_CONF WHERE KEY = $1;' USING key;
|
||||||
END
|
END
|
||||||
$$ LANGUAGE PLPGSQL VOLATILE;
|
$$ LANGUAGE PLPGSQL VOLATILE SECURITY DEFINER;
|
||||||
|
|
||||||
CREATE OR REPLACE FUNCTION cdb_dataservices_server._cdb_here_geocode_street_point(username TEXT, orgname TEXT, searchtext TEXT, city TEXT DEFAULT NULL, state_province TEXT DEFAULT NULL, country TEXT DEFAULT NULL)
|
CREATE OR REPLACE FUNCTION cdb_dataservices_server._cdb_here_geocode_street_point(username TEXT, orgname TEXT, searchtext TEXT, city TEXT DEFAULT NULL, state_province TEXT DEFAULT NULL, country TEXT DEFAULT NULL)
|
||||||
RETURNS Geometry AS $$
|
RETURNS Geometry AS $$
|
||||||
|
|||||||
@@ -1525,10 +1525,10 @@ CREATE OR REPLACE
|
|||||||
FUNCTION cdb_dataservices_server.CDB_Conf_SetConf(key text, value JSON)
|
FUNCTION cdb_dataservices_server.CDB_Conf_SetConf(key text, value JSON)
|
||||||
RETURNS void AS $$
|
RETURNS void AS $$
|
||||||
BEGIN
|
BEGIN
|
||||||
PERFORM cartodb.CDB_Conf_RemoveConf(key);
|
PERFORM cdb_dataservices_server.CDB_Conf_RemoveConf(key);
|
||||||
EXECUTE 'INSERT INTO cartodb.CDB_CONF (KEY, VALUE) VALUES ($1, $2);' USING key, value;
|
EXECUTE 'INSERT INTO cartodb.CDB_CONF (KEY, VALUE) VALUES ($1, $2);' USING key, value;
|
||||||
END
|
END
|
||||||
$$ LANGUAGE PLPGSQL VOLATILE;
|
$$ LANGUAGE PLPGSQL VOLATILE SECURITY DEFINER;
|
||||||
|
|
||||||
CREATE OR REPLACE
|
CREATE OR REPLACE
|
||||||
FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
||||||
@@ -1536,7 +1536,7 @@ FUNCTION cdb_dataservices_server.CDB_Conf_RemoveConf(key text)
|
|||||||
BEGIN
|
BEGIN
|
||||||
EXECUTE 'DELETE FROM cartodb.CDB_CONF WHERE KEY = $1;' USING key;
|
EXECUTE 'DELETE FROM cartodb.CDB_CONF WHERE KEY = $1;' USING key;
|
||||||
END
|
END
|
||||||
$$ LANGUAGE PLPGSQL VOLATILE;
|
$$ LANGUAGE PLPGSQL VOLATILE SECURITY DEFINER;
|
||||||
|
|
||||||
|
|
||||||
CREATE OR REPLACE FUNCTION cdb_dataservices_server._get_geocoder_config(username text, orgname text, provider text DEFAULT NULL)
|
CREATE OR REPLACE FUNCTION cdb_dataservices_server._get_geocoder_config(username text, orgname text, provider text DEFAULT NULL)
|
||||||
|
|||||||
Reference in New Issue
Block a user