diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/fts_templates/static/js/fts_template.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/fts_templates/static/js/fts_template.js index aa7080c0d..950643e3f 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/fts_templates/static/js/fts_template.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/fts_templates/static/js/fts_template.js @@ -98,7 +98,7 @@ define('pgadmin.node.fts_template', [ control: 'node-list-by-id', cache_node: 'database', cache_level: 'database', },{ - id: 'is_sys_obj', label: gettext('System FTS parser?'), + id: 'is_sys_obj', label: gettext('System FTS template?'), cell:'boolean', type: 'switch', mode: ['properties'], },{ id: 'description', label: gettext('Comment'), cell: 'string', diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/__init__.py b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/__init__.py index d343b394a..cc449b050 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/__init__.py @@ -1365,6 +1365,11 @@ class FunctionView(PGChildNodeView, DataTypeReader, SchemaDiffObjectCompare): if fnid <= self.manager.db_info[did]['datlastsysoid']: resp_data['sysfunc'] = True + # Set System Functions Status + resp_data['sysproc'] = False + if fnid <= self.manager.db_info[did]['datlastsysoid']: + resp_data['sysproc'] = True + # Get formatted Security Labels if 'seclabels' in resp_data: resp_data.update(parse_sec_labels_from_db(resp_data['seclabels'])) diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/__init__.py b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/__init__.py index 8c53c2b51..3ef935e13 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/__init__.py @@ -208,6 +208,11 @@ class SynonymView(PGChildNodeView, SchemaDiffObjectCompare): ) ) + self.datlastsysoid = \ + self.manager.db_info[kwargs['did']]['datlastsysoid'] \ + if self.manager.db_info is not None and \ + kwargs['did'] in self.manager.db_info else 0 + # we will set template path for sql scripts self.template_path = 'synonyms/sql/#{0}#'.format( self.manager.version) @@ -420,6 +425,8 @@ class SynonymView(PGChildNodeView, SchemaDiffObjectCompare): gettext('The specified synonym could not be found.') ) + res['rows'][0]['is_sys_obj'] = ( + res['rows'][0]['oid'] <= self.datlastsysoid) return True, res['rows'][0] except Exception as e: return internal_server_error(errormsg=str(e)) diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js index 6cc4b06c3..1c3636220 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js @@ -195,10 +195,8 @@ define('pgadmin.node.synonym', [ return false; }, },{ - id: 'is_public_synonym', label: gettext('Public synonym?'), - type: 'switch', mode: ['properties'], cell: 'switch', - options: { onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', - offColor: 'ternary', size: 'mini'}, + id: 'is_sys_obj', label: gettext('System synonym?'), + cell:'boolean', type: 'switch', mode: ['properties'], }, ], validate: function() { diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.2_plus/properties.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.2_plus/properties.sql index cb4c66c28..e9501a043 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.2_plus/properties.sql +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.2_plus/properties.sql @@ -21,8 +21,7 @@ SELECT synname AS name, pg_get_userbyid(synowner) AS owner, AND nspname = synobjname AND nspobjecttype = 0), -- Default s = Synonym - 's') AS targettype, - CASE WHEN ns.nspname = 'public' THEN true ELSE false END AS is_public_synonym + 's') AS targettype FROM pg_synonym s JOIN pg_namespace ns ON s.synnamespace = ns.oid WHERE s.synnamespace={{scid}}::oid {% if syid %} diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.5_plus/properties.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.5_plus/properties.sql index 0b3b82d97..d78740e27 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.5_plus/properties.sql +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/9.5_plus/properties.sql @@ -21,8 +21,7 @@ SELECT s.oid, synname AS name, pg_get_userbyid(synowner) AS owner, AND nspname = synobjname AND nspobjecttype = 0), -- Default s = Synonym - 's') AS targettype, - CASE WHEN ns.nspname = 'public' THEN true ELSE false END AS is_public_synonym + 's') AS targettype FROM pg_synonym s JOIN pg_namespace ns ON s.synnamespace = ns.oid WHERE s.synnamespace={{scid}}::oid {% if syid %} diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/default/properties.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/default/properties.sql index eab57c8e3..ec7634a07 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/default/properties.sql +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/templates/synonyms/sql/default/properties.sql @@ -9,8 +9,7 @@ SELECT synname AS name, pg_get_userbyid(synowner) AS owner, FROM pg_proc p, pg_namespace n WHERE p.pronamespace = n.oid AND n.nspname = synobjschema - AND p.proname = synobjname LIMIT 1), 's') AS targettype, -- Default s = Synonym - CASE WHEN ns.nspname = 'public' THEN true ELSE false END AS is_public_synonym + AND p.proname = synobjname LIMIT 1), 's') AS targettype -- Default s = Synonym FROM pg_synonym s JOIN pg_namespace ns ON s.synnamespace = ns.oid WHERE s.synnamespace={{scid}}::oid {% if syid %} diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/static/js/mview.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/static/js/mview.js index c5300a143..94c7cc431 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/static/js/mview.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/static/js/mview.js @@ -160,7 +160,7 @@ define('pgadmin.node.mview', [ node: 'schema', mode: ['create', 'edit'], cache_node: 'database', disabled: 'inSchema', select2: { allowClear: false }, },{ - id: 'system_view', label: gettext('System view?'), cell: 'string', + id: 'system_view', label: gettext('System materialized view?'), cell: 'string', type: 'switch', mode: ['properties'], }, pgBrowser.SecurityGroupSchema, { id: 'acl', label: gettext('Privileges'),