create type "sandbox"."type_sitesettings" AS ( "module" character varying (50), "enabled" boolean, "title" character varying (75), "link" character varying (255) ); CREATE OR REPLACE FUNCTION sandbox.getsitesettings() RETURNS SETOF sandbox.type_sitesettings AS $BODY$ DECLARE rec sandbox.type_sitesettings; BEGIN SELECT INTO rec 'eventCalendar' as module, EXISTS(SELECT 1 FROM information_schema.tables WHERE table_schema = 'sandbox' AND table_name = 'eventcalendar') As enabled, 'Events' as title, '/admin/modules/calendar/' as link; RETURN NEXT rec; SELECT INTO rec 'memberSystem' as module, EXISTS(SELECT 1 FROM information_schema.tables WHERE table_schema = 'sandbox' AND table_name = 'memberSystem') As enabled, 'Members' as title, '/admin/modules/members.aro' as link; RETURN NEXT rec; SELECT INTO rec 'shoppingcartSystem' as module, EXISTS(SELECT 1 FROM information_schema.tables WHERE table_schema = 'sandbox' AND table_name = 'shoppingcartSystem') As enabled, 'Shopping Cart' as title, '/admin/modules/shopcart/' as link; RETURN NEXT rec; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100 ROWS 3; ALTER FUNCTION sandbox.getsitesettings() OWNER TO postgres; select * from "sandbox".getsitesettings();