From dc64ce331a731115ad7722eb878c9528af1af930 Mon Sep 17 00:00:00 2001 From: Neel Patel Date: Wed, 21 Aug 2019 16:27:23 +0530 Subject: [PATCH] Fix length and precision enable/disable issue when changing the data type for Domain node. Fixes #4644. --- docs/en_US/release_notes_4_13.rst | 3 ++- .../schemas/domains/static/js/domain.js | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/en_US/release_notes_4_13.rst b/docs/en_US/release_notes_4_13.rst index eacf07375..aeddce3b3 100644 --- a/docs/en_US/release_notes_4_13.rst +++ b/docs/en_US/release_notes_4_13.rst @@ -20,4 +20,5 @@ Bug fixes | `Issue #2706 `_ - Added ProjectSet icon for explain module. | `Issue #2828 `_ - Added Gather Merge, Named Tuple Store Scan and Table Function Scan icon for explain module. -| `Issue #4643 `_ - Fix Truncate option deselect issue for compound triggers. \ No newline at end of file +| `Issue #4643 `_ - Fix Truncate option deselect issue for compound triggers. +| `Issue #4644 `_ - Fix length and precision enable/disable issue when changing the data type for Domain node. \ No newline at end of file diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/static/js/domain.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/static/js/domain.js index 8fa1c36b5..14a48f3cf 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/static/js/domain.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/static/js/domain.js @@ -217,8 +217,16 @@ define('pgadmin.node.domain', [ m.set('min_val', o.min_val, {silent: true}); m.set('max_val', o.max_val, {silent: true}); } + else + m.set('is_tlength', false, {silent: true}); } }); + + !m.get('is_tlength') && setTimeout(function() { + if(m.get('typlen')) { + m.set('typlen', null); + } + },10); } return !m.get('is_tlength'); }, @@ -244,8 +252,16 @@ define('pgadmin.node.domain', [ m.set('min_val', o.min_val, {silent: true}); m.set('max_val', o.max_val, {silent: true}); } + else + m.set('is_precision', false, {silent: true}); } }); + + !m.get('is_precision') && setTimeout(function() { + if(m.get('precision')) { + m.set('precision', null); + } + },10); } return !m.get('is_precision'); },