xref: /openbmc/webui-vue/src/views/Overview/OverviewDumps.vue (revision 883a0d597962dfd30d6c48319b8b33e2d0f98606)
16a192d52SDixsie Wolmers<template>
26a192d52SDixsie Wolmers  <overview-card
36a192d52SDixsie Wolmers    :data="dumps"
46a192d52SDixsie Wolmers    :disabled="dumps.length === 0"
56a192d52SDixsie Wolmers    :download-button="true"
66a192d52SDixsie Wolmers    :file-name="exportFileNameByDate()"
76a192d52SDixsie Wolmers    :title="$t('pageOverview.dumps')"
86a192d52SDixsie Wolmers    :to="`/logs/dumps`"
96a192d52SDixsie Wolmers  >
106a192d52SDixsie Wolmers    <b-row class="mt-3">
116a192d52SDixsie Wolmers      <b-col sm="6">
126a192d52SDixsie Wolmers        <dl>
136a192d52SDixsie Wolmers          <dt>{{ $t('pageOverview.total') }}</dt>
149726f9a7SDixsie Wolmers          <dd class="h3">{{ dataFormatter(dumps.length) }}</dd>
156a192d52SDixsie Wolmers        </dl>
166a192d52SDixsie Wolmers      </b-col>
176a192d52SDixsie Wolmers    </b-row>
186a192d52SDixsie Wolmers  </overview-card>
196a192d52SDixsie Wolmers</template>
206a192d52SDixsie Wolmers
216a192d52SDixsie Wolmers<script>
226a192d52SDixsie Wolmersimport OverviewCard from './OverviewCard';
239726f9a7SDixsie Wolmersimport DataFormatterMixin from '@/components/Mixins/DataFormatterMixin';
24*883a0d59SEd Tanousimport { useI18n } from 'vue-i18n';
256a192d52SDixsie Wolmers
266a192d52SDixsie Wolmersexport default {
276a192d52SDixsie Wolmers  name: 'Dumps',
286a192d52SDixsie Wolmers  components: {
296a192d52SDixsie Wolmers    OverviewCard,
306a192d52SDixsie Wolmers  },
319726f9a7SDixsie Wolmers  mixins: [DataFormatterMixin],
32*883a0d59SEd Tanous  data() {
33*883a0d59SEd Tanous    return {
34*883a0d59SEd Tanous      $t: useI18n().t,
35*883a0d59SEd Tanous    };
36*883a0d59SEd Tanous  },
376a192d52SDixsie Wolmers  computed: {
386a192d52SDixsie Wolmers    dumps() {
39c2c53aa9SKenneth      return this.$store.getters['dumps/allDumps'];
406a192d52SDixsie Wolmers    },
416a192d52SDixsie Wolmers  },
426a192d52SDixsie Wolmers  created() {
43f4e79739SNikhil Ashoka    this.$store.dispatch('dumps/getAllDumps').finally(() => {
446a192d52SDixsie Wolmers      this.$root.$emit('overview-dumps-complete');
456a192d52SDixsie Wolmers    });
466a192d52SDixsie Wolmers  },
476a192d52SDixsie Wolmers  methods: {
486a192d52SDixsie Wolmers    exportFileNameByDate() {
496a192d52SDixsie Wolmers      // Create export file name based on date
506a192d52SDixsie Wolmers      let date = new Date();
516a192d52SDixsie Wolmers      date =
526a192d52SDixsie Wolmers        date.toISOString().slice(0, 10) +
536a192d52SDixsie Wolmers        '_' +
546a192d52SDixsie Wolmers        date.toString().split(':').join('-').split(' ')[4];
556a192d52SDixsie Wolmers      let fileName = 'all_dumps_';
566a192d52SDixsie Wolmers      return fileName + date;
576a192d52SDixsie Wolmers    },
586a192d52SDixsie Wolmers  },
596a192d52SDixsie Wolmers};
606a192d52SDixsie Wolmers</script>
61