You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2020/06/27 12:01:46 UTC
[cloudstack-primate] 02/02: src: router-link fixes
This is an automated email from the ASF dual-hosted git repository.
rohit pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cloudstack-primate.git
commit 4836cae2cca26940f06b199982eabe776743c1c4
Author: Rohit Yadav <ro...@shapeblue.com>
AuthorDate: Sat Jun 27 15:37:10 2020 +0530
src: router-link fixes
Fixes router-link issues for user role
Signed-off-by: Rohit Yadav <ro...@shapeblue.com>
---
src/components/view/InfoCard.vue | 11 +++++++----
src/config/section/compute.js | 2 +-
src/config/section/network.js | 1 +
src/views/dashboard/CapacityDashboard.vue | 15 +++++----------
src/views/network/EnableStaticNat.vue | 10 +++-------
src/views/network/LoadBalancing.vue | 2 +-
src/views/network/VpcTiersTab.vue | 3 ++-
7 files changed, 20 insertions(+), 24 deletions(-)
diff --git a/src/components/view/InfoCard.vue b/src/components/view/InfoCard.vue
index 2b01952..6adc9fe 100644
--- a/src/components/view/InfoCard.vue
+++ b/src/components/view/InfoCard.vue
@@ -385,20 +385,23 @@
<div class="resource-detail-item" v-if="resource.backupofferingid">
<div class="resource-detail-item__label">{{ $t('label.backupofferingid') }}</div>
<a-icon type="cloud-upload" />
- <router-link :to="{ path: '/backupoffering/' + resource.backupofferingid }">{{ resource.backupofferingname || resource.backupofferingid }} </router-link>
+ <router-link v-if="$router.resolve('/backupoffering/' + resource.backupofferingid).route.name !== '404'" :to="{ path: '/backupoffering/' + resource.backupofferingid }">{{ resource.backupofferingname || resource.backupofferingid }} </router-link>
+ <span v-else>{{ resource.backupofferingname || resourece.backupofferingid }}</span>
</div>
<div class="resource-detail-item" v-if="resource.networkofferingid">
<div class="resource-detail-item__label">{{ $t('label.networkofferingid') }}</div>
<div class="resource-detail-item__details">
<a-icon type="wifi" />
- <router-link :to="{ path: '/networkoffering/' + resource.networkofferingid }">{{ resource.networkofferingname || resource.networkofferingid }} </router-link>
+ <router-link v-if="$router.resolve('/networkoffering/' + resource.networkofferingid).route.name !== '404'" :to="{ path: '/networkoffering/' + resource.networkofferingid }">{{ resource.networkofferingname || resource.networkofferingid }} </router-link>
+ <span v-else>{{ resource.networkofferingname || resourece.networkofferingid }}</span>
</div>
</div>
<div class="resource-detail-item" v-if="resource.vpcofferingid">
<div class="resource-detail-item__label">{{ $t('label.vpcoffering') }}</div>
<div class="resource-detail-item__details">
<a-icon type="deployment-unit" />
- <router-link :to="{ path: '/vpcoffering/' + resource.vpcofferingid }">{{ resource.vpcofferingname || resource.vpcofferingid }} </router-link>
+ <router-link v-if="$router.resolve('/vpcoffering/' + resource.vpcofferingid).route.name !== '404'" :to="{ path: '/vpcoffering/' + resource.vpcofferingid }">{{ resource.vpcofferingname || resource.vpcofferingid }} </router-link>
+ <span v-else>{{ resource.vpcofferingname || resourece.vpcofferingid }}</span>
</div>
</div>
<div class="resource-detail-item" v-if="resource.storageid">
@@ -441,7 +444,7 @@
<div class="resource-detail-item__details">
<a-icon type="global" />
<router-link v-if="$router.resolve('/zone/' + resource.zoneid).route.name !== '404'" :to="{ path: '/zone/' + resource.zoneid }">{{ resource.zone || resource.zonename || resource.zoneid }}</router-link>
- <span v-else>{{ resource.zone || resource.zonename }}</span>
+ <span v-else>{{ resource.zone || resource.zonename || resource.zoneid }}</span>
</div>
</div>
<div class="resource-detail-item" v-if="resource.account">
diff --git a/src/config/section/compute.js b/src/config/section/compute.js
index 83f1641..5210fbb 100644
--- a/src/config/section/compute.js
+++ b/src/config/section/compute.js
@@ -334,7 +334,7 @@ export default {
label: 'label.action.reset.password',
message: 'message.action.instance.reset.password',
dataView: true,
- show: (record) => { return ['Running', 'Stopped'].includes(record.state) },
+ show: (record) => { return ['Running', 'Stopped'].includes(record.state) && record.passwordenabled },
response: (result) => { return result.virtualmachine && result.virtualmachine.password ? `Password of the VM is ${result.virtualmachine.password}` : null }
},
{
diff --git a/src/config/section/network.js b/src/config/section/network.js
index 30b4d3f..95f9db0 100644
--- a/src/config/section/network.js
+++ b/src/config/section/network.js
@@ -515,6 +515,7 @@ export default {
title: 'label.vpn.users',
icon: 'user',
permission: ['listVpnUsers'],
+ hidden: true,
columns: ['username', 'state', 'account', 'domain'],
details: ['username', 'state', 'account', 'domain'],
actions: [
diff --git a/src/views/dashboard/CapacityDashboard.vue b/src/views/dashboard/CapacityDashboard.vue
index 01db271..7e55992 100644
--- a/src/views/dashboard/CapacityDashboard.vue
+++ b/src/views/dashboard/CapacityDashboard.vue
@@ -33,16 +33,11 @@
</a-select>
</div>
<div class="capacity-dashboard-button">
- <a-tooltip placement="bottom">
- <template slot="title">
- Fetch Latest
- </template>
- <a-button
- shape="circle"
- @click="listCapacity(zoneSelected, true)">
- <a-icon class="capacity-dashboard-button-icon" type="reload" />
- </a-button>
- </a-tooltip>
+ <a-button
+ shape="round"
+ @click="listCapacity(zoneSelected, true)">
+ {{ $t('label.fetch.latest') }}
+ </a-button>
</div>
</div>
<a-row :gutter="12">
diff --git a/src/views/network/EnableStaticNat.vue b/src/views/network/EnableStaticNat.vue
index c9e22b0..ebfc8e3 100644
--- a/src/views/network/EnableStaticNat.vue
+++ b/src/views/network/EnableStaticNat.vue
@@ -117,8 +117,9 @@ export default {
scopedSlots: { customRender: 'name' }
},
{
- title: this.$t('label.instancename'),
- dataIndex: 'instancename'
+ title: this.$t('label.state'),
+ dataIndex: 'state',
+ scopedSlots: { customRender: 'state' }
},
{
title: this.$t('label.displayname'),
@@ -133,11 +134,6 @@ export default {
dataIndex: 'zonename'
},
{
- title: this.$t('label.state'),
- dataIndex: 'state',
- scopedSlots: { customRender: 'state' }
- },
- {
title: 'Select',
dataIndex: 'id',
scopedSlots: { customRender: 'radio' }
diff --git a/src/views/network/LoadBalancing.vue b/src/views/network/LoadBalancing.vue
index 638da12..2feb090 100644
--- a/src/views/network/LoadBalancing.vue
+++ b/src/views/network/LoadBalancing.vue
@@ -107,7 +107,7 @@
<div>
<status :text="instance.loadbalancerruleinstance.state" />
<a-icon type="desktop" />
- <router-link :to="{ path: '/vm/' + record.virtualmachineid }">
+ <router-link :to="{ path: '/vm/' + instance.loadbalancerruleinstance.id }">
{{ instance.loadbalancerruleinstance.displayname }}
</router-link>
</div>
diff --git a/src/views/network/VpcTiersTab.vue b/src/views/network/VpcTiersTab.vue
index 2339c04..8cb1261 100644
--- a/src/views/network/VpcTiersTab.vue
+++ b/src/views/network/VpcTiersTab.vue
@@ -22,7 +22,7 @@
icon="plus"
style="width: 100%;margin-bottom: 20px;"
:disabled="!('createNetwork' in $store.getters.apis)"
- @click="handleOpenModal">Add Network</a-button>
+ @click="handleOpenModal">{{ $t('label.add.network') }}</a-button>
<a-list class="list">
<a-list-item v-for="(network, idx) in networks" :key="idx" class="list__item">
<div class="list__item-outer-container">
@@ -531,6 +531,7 @@ export default {
this.$message.error('Failed to create Internal LB')
}).finally(() => {
this.modalLoading = false
+ this.fetchLoading = false
this.showAddInternalLB = false
this.fetchData()
})