blob: 7baad344a2c2eedf16a6632cca1b2aeddd3436b1 [file] [log] [blame]
Sandeepa Singh05887b52022-01-10 19:19:36 +05301<template>
2 <b-container fluid="xl">
3 <page-title :description="$t('pageKeyClear.description')" />
4 <b-row>
5 <b-col md="8" xl="6">
6 <alert variant="info" class="mb-4">
7 <div class="font-weight-bold">
8 {{ $t('pageKeyClear.alert.title') }}
9 </div>
10 <div>
11 {{ $t('pageKeyClear.alert.description') }}
12 </div>
13 </alert>
14 </b-col>
15 </b-row>
16 <!-- Reset Form -->
17 <b-form id="key-clear" @submit.prevent="onKeyClearSubmit(keyOption)">
18 <b-row>
19 <b-col md="8">
20 <b-form-group :label="$t('pageKeyClear.form.keyClearOptionsLabel')">
21 <b-form-radio-group
22 id="key-clear-options"
23 v-model="keyOption"
24 stacked
25 >
26 <b-form-radio class="mb-1" value="NONE">
27 {{ $t('pageKeyClear.form.none') }}
28 </b-form-radio>
29 <b-form-text id="key-clear-not-requested" class="ml-4 mb-3">
30 {{ $t('pageKeyClear.form.keyClearNotRequested') }}
31 </b-form-text>
32 <b-form-radio class="mb-1" value="ALL">
33 {{ $t('pageKeyClear.form.clearAllLabel') }}
34 </b-form-radio>
35 <b-form-text id="clear-all" class="ml-4 mb-3">
36 {{ $t('pageKeyClear.form.clearAllHeperText') }}
37 </b-form-text>
38 <b-form-radio class="mb-1" value="POWERVM_SYSKEY">
39 {{ $t('pageKeyClear.form.clearHypervisorSystemKeyLabel') }}
40 </b-form-radio>
41 <b-form-text id="clear-hypervisor-key" class="ml-4 mb-3">
42 {{ $t('pageKeyClear.form.clearHypervisorSystemKeyHelperText') }}
43 </b-form-text>
44 <template v-if="username == 'service'">
45 <b-form-radio class="mb-1" value="MFG_ALL">
46 {{ $t('pageKeyClear.form.clearAllSetGenesisIPL') }}
47 </b-form-radio>
48 <b-form-radio class="mb-1" value="MFG">
49 {{ $t('pageKeyClear.form.setFactoryDefault') }}
50 </b-form-radio>
51 </template>
52 </b-form-radio-group>
53 </b-form-group>
54 <b-button
55 type="submit"
56 variant="primary"
57 data-test-id="keyClear-button-submit"
58 >
59 {{ $t('pageKeyClear.form.clear') }}
60 </b-button>
61 </b-col>
62 </b-row>
63 </b-form>
64 </b-container>
65</template>
66
67<script>
68import PageTitle from '@/components/Global/PageTitle';
69import BVToastMixin from '@/components/Mixins/BVToastMixin';
70import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
71import Alert from '@/components/Global/Alert';
Surya Vde23ea22024-07-11 15:19:46 +053072import { useI18n } from 'vue-i18n';
73import i18n from '@/i18n';
Sandeepa Singh05887b52022-01-10 19:19:36 +053074
75export default {
76 name: 'KeyClear',
77 components: { PageTitle, Alert },
78 mixins: [LoadingBarMixin, BVToastMixin],
79 data() {
80 return {
Surya Vde23ea22024-07-11 15:19:46 +053081 $t: useI18n().t,
Sandeepa Singh05887b52022-01-10 19:19:36 +053082 keyOption: 'NONE',
83 username: this.$store.getters['global/username'],
84 };
85 },
86 created() {
87 this.hideLoader();
88 },
89 methods: {
90 onKeyClearSubmit(valueSelected) {
91 this.$bvModal
Surya Vde23ea22024-07-11 15:19:46 +053092 .msgBoxConfirm(i18n.global.t('pageKeyClear.modal.clearAllMessage'), {
93 title: i18n.global.t('pageKeyClear.modal.clearAllTitle'),
94 okTitle: i18n.global.t('pageKeyClear.modal.clear'),
Sandeepa Singh05887b52022-01-10 19:19:36 +053095 okVariant: 'danger',
Surya Vde23ea22024-07-11 15:19:46 +053096 cancelTitle: i18n.global.t('global.action.cancel'),
Paul Fertserd1ef18e2024-04-06 08:04:14 +000097 autoFocusButton: 'cancel',
Sandeepa Singh05887b52022-01-10 19:19:36 +053098 })
99 .then((clearConfirmed) => {
100 if (clearConfirmed) {
101 this.$store
102 .dispatch('keyClear/clearEncryptionKeys', valueSelected)
103 .then((message) => this.successToast(message))
104 .catch(({ message }) => this.errorToast(message));
105 }
106 });
107 },
108 },
109};
110</script>