From 96b0925567fd4e8ea09742c1e6a412e0cd21b33b Mon Sep 17 00:00:00 2001 From: Frederick Borges Date: Tue, 8 Jun 2021 17:23:54 +0200 Subject: [PATCH] F #5411: Add DockerRegistry marketplace option (#1284) (cherry picked from commit c4c3a3ff5d252d377b8d7dd57eeddfbd7c56178d) --- .../marketplaces-tab/form-panels/create.js | 37 ++++++++++++++++++- .../form-panels/create/wizard.hbs | 15 ++++---- 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create.js b/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create.js index c4cd39c133..043af068e4 100644 --- a/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create.js +++ b/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create.js @@ -139,6 +139,19 @@ define(function(require) { name: 'SKIP_UNTESTED', label: Locale.tr("Show only auto-contextualized apps"), driver: 'linuxcontainers' + }, + { + name: 'BASE_URL', + id: 'DOCKER_REGISTRY_BASE_URL', + label: Locale.tr("DockerHub marketplace url"), + driver: 'docker_registry' + }, + { + name: 'SSL', + label: Locale.tr("SSL"), + driver: 'docker_registry', + checkbox: true, + checkboxLabel: Locale.tr("SSL connection") } ] /* @@ -248,7 +261,18 @@ define(function(require) { var marketObj = {}; $.extend(marketObj, WizardFields.retrieve(dialog)); - + + var checkboxAttr = MARKET_MAD_ATTRS.filter(function(e) { + return e.checkbox; + }).map(function(e){ + return e.name; + }); + + $.each(marketObj, function(key, value){ + if (checkboxAttr.includes(key)) marketObj[key] = (value === "on") ? "true" : "false"; + }); + + if (this.action == "create") { marketObj = { "marketplace" : marketObj @@ -292,7 +316,16 @@ define(function(require) { if (e["NAME"] == marketMADName) { if (!$.isEmptyObject(e["REQUIRED_ATTRS"])) { $.each(e["REQUIRED_ATTRS"].split(","), function(i, attrName){ - $('#' + attrName, dialog).attr('required', true); + $.each(MARKET_MAD_ATTRS, function(i, mktAttr){ + if (mktAttr.name == attrName && mktAttr.driver == marketMADName){ + if (mktAttr.id){ + $('#' + mktAttr.id, dialog).attr('required', true); + } + else{ + $('#' + attrName, dialog).attr('required', true); + } + } + }); }); } return false; diff --git a/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create/wizard.hbs b/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create/wizard.hbs index a00b9ee743..639610ab6a 100644 --- a/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create/wizard.hbs +++ b/src/sunstone/public/app/tabs/marketplaces-tab/form-panels/create/wizard.hbs @@ -46,18 +46,19 @@
{{#each marketMadAttrs}}
-
{{/each}}