From 6948b517aedd9a0604a2209a29e278db2c618498 Mon Sep 17 00:00:00 2001 From: Samuel Scandrett Date: Thu, 2 Jan 2025 12:13:25 +0000 Subject: [PATCH] Add subscribes for url and label observables --- .../views/components/widgets/urldatatype.js | 32 ++++++++++++++++--- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/arches/app/media/js/views/components/widgets/urldatatype.js b/arches/app/media/js/views/components/widgets/urldatatype.js index ddff54e4e86..5c682ab725c 100644 --- a/arches/app/media/js/views/components/widgets/urldatatype.js +++ b/arches/app/media/js/views/components/widgets/urldatatype.js @@ -11,32 +11,54 @@ define([ WidgetViewModel.apply(this, [params]); - // #10027 assign this.url & this.url_label with value versions for updating UI with edits if (ko.isObservable(this.value)) { + // #10027 assign this.url & this.url_label with value versions for updating UI with edits if (this.value()) { var valueUrl = this.value().url; var valueUrlLabel = this.value().url_label; this.url(valueUrl); this.url_label(valueUrlLabel); } + this.value.subscribe(function(newValue) { if (newValue) { if (newValue.url) { self.url(newValue.url); } else { - self.url(""); + self.url(null); } if (newValue.url_label) { self.url_label(newValue.url_label); } else { - self.url_label(""); + self.url_label(null); + newValue.url_label = null } } else { - self.url(""); - self.url_label(""); + self.url(null); + self.url_label(null); + newValue.url = null; + newValue.url_label = null; } }); + + } else { + if (this.value) { + this.value.url.subscribe(function(newUrl) { + if (newUrl) { + self.url(newUrl); + } else { + self.url(null); + } + }) + this.value.url_label.subscribe(function(newUrlLabel) { + if (newUrlLabel) { + self.url_label(newUrlLabel); + } else { + self.url_label(null); + } + }) + } } this.urlPreviewText = ko.pureComputed(function() {