Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 1 | <template> |
| 2 | <b-container fluid="xl"> |
Yoshie Muranaka | 6f71284 | 2021-02-04 11:23:03 -0800 | [diff] [blame] | 3 | <page-title /> |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 4 | <alerts-server-power |
| 5 | v-if="isServerPowerOffRequired" |
| 6 | :is-host-off="isHostOff" |
| 7 | /> |
| 8 | |
| 9 | <!-- Firmware cards --> |
Yoshie Muranaka | 6f71284 | 2021-02-04 11:23:03 -0800 | [diff] [blame] | 10 | <b-row> |
| 11 | <b-col xl="10"> |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 12 | <!-- BMC Firmware --> |
| 13 | <bmc-cards :is-page-disabled="isPageDisabled" /> |
Yoshie Muranaka | 6f71284 | 2021-02-04 11:23:03 -0800 | [diff] [blame] | 14 | |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 15 | <!-- Host Firmware --> |
| 16 | <host-cards v-if="!isSingleFileUploadEnabled" /> |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 17 | </b-col> |
| 18 | </b-row> |
| 19 | |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 20 | <!-- Update firmware--> |
| 21 | <page-section |
| 22 | :section-title=" |
| 23 | $t('pageFirmware.singleFileUpload.sectionTitleUpdateFirmware') |
| 24 | " |
| 25 | > |
| 26 | <b-row> |
| 27 | <b-col sm="8" md="6" xl="4"> |
| 28 | <!-- Update form --> |
| 29 | <form-update |
| 30 | :is-host-off="isHostOff" |
| 31 | :is-page-disabled="isPageDisabled" |
| 32 | /> |
| 33 | </b-col> |
| 34 | </b-row> |
| 35 | </page-section> |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 36 | </b-container> |
| 37 | </template> |
| 38 | |
| 39 | <script> |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 40 | import AlertsServerPower from './FirmwareAlertServerPower'; |
| 41 | import BmcCards from './FirmwareCardsBmc'; |
| 42 | import FormUpdate from './FirmwareFormUpdate'; |
| 43 | import HostCards from './FirmwareCardsHost'; |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 44 | import PageSection from '@/components/Global/PageSection'; |
| 45 | import PageTitle from '@/components/Global/PageTitle'; |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 46 | |
Yoshie Muranaka | d73f496 | 2020-12-09 08:52:23 -0800 | [diff] [blame] | 47 | import LoadingBarMixin, { loading } from '@/components/Mixins/LoadingBarMixin'; |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 48 | |
| 49 | export default { |
| 50 | name: 'FirmwareSingleImage', |
| 51 | components: { |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 52 | AlertsServerPower, |
| 53 | BmcCards, |
| 54 | FormUpdate, |
| 55 | HostCards, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 56 | PageSection, |
Derick Montague | 602e98a | 2020-10-21 16:20:00 -0500 | [diff] [blame] | 57 | PageTitle, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 58 | }, |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 59 | mixins: [LoadingBarMixin], |
Derick Montague | efbd401 | 2020-11-03 14:10:45 -0600 | [diff] [blame] | 60 | beforeRouteLeave(to, from, next) { |
| 61 | this.hideLoader(); |
Derick Montague | efbd401 | 2020-11-03 14:10:45 -0600 | [diff] [blame] | 62 | next(); |
| 63 | }, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 64 | data() { |
| 65 | return { |
Yoshie Muranaka | d73f496 | 2020-12-09 08:52:23 -0800 | [diff] [blame] | 66 | loading, |
Yoshie Muranaka | fc387aa | 2021-02-11 08:27:36 -0800 | [diff] [blame] | 67 | isServerPowerOffRequired: |
| 68 | process.env.VUE_APP_SERVER_OFF_REQUIRED === 'true', |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 69 | }; |
| 70 | }, |
| 71 | computed: { |
| 72 | hostStatus() { |
| 73 | return this.$store.getters['global/hostStatus']; |
| 74 | }, |
| 75 | isHostOff() { |
| 76 | return this.hostStatus === 'off' ? true : false; |
| 77 | }, |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 78 | isSingleFileUploadEnabled() { |
| 79 | return this.$store.getters[ |
| 80 | 'firmwareSingleImage/isSingleFileUploadEnabled' |
| 81 | ]; |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 82 | }, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 83 | isPageDisabled() { |
Yoshie Muranaka | fc387aa | 2021-02-11 08:27:36 -0800 | [diff] [blame] | 84 | if (this.isServerPowerOffRequired) { |
| 85 | return !this.isHostOff || this.loading || this.isOperationInProgress; |
| 86 | } |
| 87 | return this.loading || this.isOperationInProgress; |
Derick Montague | 602e98a | 2020-10-21 16:20:00 -0500 | [diff] [blame] | 88 | }, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 89 | }, |
| 90 | created() { |
| 91 | this.startLoader(); |
Yoshie Muranaka | 7bc85e4 | 2021-02-11 09:59:13 -0800 | [diff] [blame] | 92 | this.$store |
| 93 | .dispatch('firmwareSingleImage/getFirmwareInformation') |
| 94 | .finally(() => this.endLoader()); |
Derick Montague | 602e98a | 2020-10-21 16:20:00 -0500 | [diff] [blame] | 95 | }, |
Yoshie Muranaka | 0b980db | 2020-10-06 09:24:14 -0700 | [diff] [blame] | 96 | }; |
| 97 | </script> |