Add secondary domain setup in install dialog
This commit is contained in:
@@ -31,7 +31,17 @@
|
||||
</div>
|
||||
</FormGroup>
|
||||
|
||||
<!-- TODO secondary domain based on v-for manifest.httpPorts -->
|
||||
<!-- TODO: <p class="text-small text-warning" ng-show="appInstall.domain.provider === 'noop' || appInstall.domain.provider === 'manual'" ng-bind-html="'appstore.installDialog.manualWarning' | tr:{ location: ((appInstall.subdomain ? appInstall.subdomain + '.' : '') + appInstall.domain.domain) }"></p> -->
|
||||
|
||||
<FormGroup v-for="(port, key) in secondaryDomains" :key="key">
|
||||
<label :for="'secondaryDomainInput' + key">{{ port.title }}</label>
|
||||
<small>{{ port.description }}</small>
|
||||
<div>
|
||||
<TextInput :id="'secondaryDomainInput' + key" v-model="port.value" :placeholder="$t('appstore.installDialog.locationPlaceholder')"/>
|
||||
<Dropdown v-model="port.domain" :options="domains" option-label="domain" option-key="domain" />
|
||||
</div>
|
||||
</FormGroup>
|
||||
|
||||
<!-- TODO upstreamUri for proxyapp -->
|
||||
|
||||
<PortBindings v-model:tcp-ports="tcpPorts" v-model:udp-ports="udpPorts" />
|
||||
@@ -86,6 +96,7 @@ const accessRestriction = ref(null);
|
||||
const domain = ref('');
|
||||
const tcpPorts = ref({});
|
||||
const udpPorts = ref({});
|
||||
const secondaryDomains = ref({});
|
||||
|
||||
async function submit() {
|
||||
const config = {
|
||||
@@ -107,6 +118,15 @@ async function submit() {
|
||||
}
|
||||
config.ports = finalPorts;
|
||||
|
||||
const finalSecondaryDomains = {};
|
||||
for (var p in secondaryDomains.value) {
|
||||
finalSecondaryDomains[p] = {
|
||||
subdomain: secondaryDomains.value[p].value,
|
||||
domain: secondaryDomains.value[p].domain
|
||||
};
|
||||
}
|
||||
config.secondaryDomains = finalSecondaryDomains;
|
||||
|
||||
busy.value = true;
|
||||
const error = await appsModel.install(manifest.value, config);
|
||||
busy.value = false;
|
||||
@@ -135,6 +155,13 @@ defineExpose({
|
||||
tcpPorts.value = a.manifest.tcpPorts;
|
||||
udpPorts.value = a.manifest.udpPorts;
|
||||
|
||||
secondaryDomains.value = a.manifest.httpPorts;
|
||||
for (const p in secondaryDomains.value) {
|
||||
const port = secondaryDomains.value[p];
|
||||
port.value = port.defaultValue;
|
||||
port.domain = domains.value[0].domain;
|
||||
}
|
||||
|
||||
dialog.value.open();
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user