blob: 9392c56c4f7c24e5a461536b54d812ce1ac80cf4 [file] [log] [blame]
Dixsie Wolmers97d86b32019-12-02 05:07:57 -06001<template>
Dixsie Wolmers5a909422020-07-21 11:24:05 -05002 <div class="quicklinks form-background">
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -05003 <div>
Dixsie Wolmers97d86b32019-12-02 05:07:57 -06004 <dl>
Yoshie Muranaka547b5fc2020-02-24 15:42:40 -08005 <dt>{{ $t('pageOverview.quicklinks.bmcTime') }}</dt>
Sandeepa Singhf4e909d2021-02-04 13:45:03 +05306 <dd v-if="bmcTime" data-test-id="overviewQuickLinks-text-bmcTime">
Yoshie Muranakae45f54b2020-03-26 15:23:34 -07007 {{ bmcTime | formatDate }} {{ bmcTime | formatTime }}
8 </dd>
9 <dd v-else>--</dd>
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060010 </dl>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050011 </div>
12 <div>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050013 <dl>
Yoshie Muranaka547b5fc2020-02-24 15:42:40 -080014 <dt>{{ $t('pageOverview.quicklinks.serverLed') }}</dt>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050015 <dd>
16 <b-form-checkbox
Derick Montague64835442020-11-29 12:31:20 -060017 v-model="indicatorLedActiveState"
Dixsie Wolmers1e2d70a2020-07-01 12:56:10 -050018 data-test-id="overviewQuickLinks-checkbox-serverLed"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050019 name="check-button"
20 switch
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070021 @change="onChangeServerLed"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050022 >
Derick Montague64835442020-11-29 12:31:20 -060023 <span v-if="indicatorLedActiveState">
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070024 {{ $t('global.status.on') }}
25 </span>
Yoshie Muranaka547b5fc2020-02-24 15:42:40 -080026 <span v-else>{{ $t('global.status.off') }}</span>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050027 </b-form-checkbox>
28 </dd>
29 </dl>
30 </div>
31 <div>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050032 <b-button
Dixsie Wolmers1e2d70a2020-07-01 12:56:10 -050033 to="/configuration/network-settings"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050034 variant="secondary"
Dixsie Wolmers1e2d70a2020-07-01 12:56:10 -050035 data-test-id="overviewQuickLinks-button-networkSettings"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050036 class="d-flex justify-content-between align-items-center"
37 >
Dixsie Wolmers30f11f82020-11-10 16:07:56 -060038 {{ $t('pageOverview.quicklinks.editNetworkSettings') }}
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050039 <icon-arrow-right />
40 </b-button>
41 </div>
42 <div>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050043 <b-button
Sandeepa Singh68cbbe92021-07-14 16:02:22 +053044 to="/operations/serial-over-lan"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050045 variant="secondary"
Dixsie Wolmers1e2d70a2020-07-01 12:56:10 -050046 data-test-id="overviewQuickLinks-button-solConsole"
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050047 class="d-flex justify-content-between align-items-center"
48 >
Dixsie Wolmers30f11f82020-11-10 16:07:56 -060049 {{ $t('pageOverview.quicklinks.solConsole') }}
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050050 <icon-arrow-right />
51 </b-button>
52 </div>
53 </div>
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060054</template>
55
56<script>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050057import ArrowRight16 from '@carbon/icons-vue/es/arrow--right/16';
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070058import BVToastMixin from '@/components/Mixins/BVToastMixin';
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050059
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060060export default {
Derick Montague09e45cd2020-01-23 15:45:57 -060061 name: 'QuickLinks',
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060062 components: {
Derick Montague602e98a2020-10-21 16:20:00 -050063 IconArrowRight: ArrowRight16,
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060064 },
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070065 mixins: [BVToastMixin],
Dixsie Wolmersf65ee342020-01-22 19:47:56 -060066 computed: {
67 bmcTime() {
Derick Montaguee2fd1562019-12-20 13:26:53 -060068 return this.$store.getters['global/bmcTime'];
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070069 },
Derick Montague64835442020-11-29 12:31:20 -060070 indicatorLedActiveState: {
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070071 get() {
Derick Montague64835442020-11-29 12:31:20 -060072 return this.$store.getters['serverLed/getIndicatorLedActiveState'];
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070073 },
74 set(value) {
75 return value;
Derick Montague602e98a2020-10-21 16:20:00 -050076 },
77 },
Dixsie Wolmersf65ee342020-01-22 19:47:56 -060078 },
Derick Montague09e45cd2020-01-23 15:45:57 -060079 created() {
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070080 Promise.all([
81 this.$store.dispatch('global/getBmcTime'),
Derick Montague64835442020-11-29 12:31:20 -060082 this.$store.dispatch('serverLed/getIndicatorLedActiveState'),
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070083 ]).finally(() => {
Sukanya Pandeyedb8a772020-10-29 11:33:42 +053084 this.$root.$emit('overview-quicklinks-complete');
Yoshie Muranaka598bf7e2020-05-01 12:26:00 -070085 });
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070086 },
87 methods: {
Derick Montague64835442020-11-29 12:31:20 -060088 onChangeServerLed(indicatorLedActiveState) {
Yoshie Muranaka2f8bbbf2020-07-02 10:58:21 -070089 this.$store
Derick Montague64835442020-11-29 12:31:20 -060090 .dispatch(
91 'serverLed/saveIndicatorLedActiveState',
92 indicatorLedActiveState
93 )
Yoshie Muranaka11bafca2020-12-01 16:38:47 -080094 .catch(({ message }) => this.errorToast(message));
Derick Montague602e98a2020-10-21 16:20:00 -050095 },
96 },
Dixsie Wolmers97d86b32019-12-02 05:07:57 -060097};
98</script>
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -050099
100<style lang="scss" scoped>
101dd,
102dl {
103 margin: 0;
104}
105
106.quicklinks {
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -0500107 display: grid;
108 grid-gap: 1rem;
109 padding: 1rem;
110 white-space: nowrap;
111 align-items: center;
112}
113
114@include media-breakpoint-up(sm) {
115 .quicklinks {
116 grid-template-columns: repeat(2, 1fr);
117 }
118}
119
Yoshie Muranaka74f86872020-02-10 12:28:37 -0800120@include media-breakpoint-up(xl) {
Dixsie Wolmers537c6cb2020-01-06 17:22:25 -0500121 .quicklinks {
122 grid-template-columns: repeat(4, 1fr);
123 }
124}
125</style>