summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorsuntala <suntala@hotmail.com>2018-08-29 16:27:31 +0200
committersuntala <suntala@hotmail.com>2018-08-29 16:27:31 +0200
commit87a17d6b192b61d0e49a7781f8a4f12f6e41a4ec (patch)
treeafbb18cc80966fa598feafbe94d6c88de17cb4bc /src
parentc2d3db68c7d4be10db0cd67e5a956a41f6e4357e (diff)
Display importScreen when stage is not "default".
Diffstat (limited to 'src')
-rw-r--r--src/components/ImportScreen.vue2
-rw-r--r--src/components/Settings/SettingsImportContacts.vue4
-rw-r--r--src/services/parseVcf.js2
-rw-r--r--src/store/addressbooks.js2
-rw-r--r--src/views/Contacts.vue16
5 files changed, 14 insertions, 12 deletions
diff --git a/src/components/ImportScreen.vue b/src/components/ImportScreen.vue
index c55816d5..e0f3f827 100644
--- a/src/components/ImportScreen.vue
+++ b/src/components/ImportScreen.vue
@@ -21,7 +21,7 @@
-->
<template>
- <div v-if="importState.stage != 'default'" class="emptycontent import-screen">
+ <div class="emptycontent import-screen">
<p class="icon-upload" />
<h3 class="import-screen__header">{{ t('contacts', 'Importing into') }} {{ addressbook }}</h3>
<progress :max="importState.total" :value="importState.accepted" class="import-screen__progress" />
diff --git a/src/components/Settings/SettingsImportContacts.vue b/src/components/Settings/SettingsImportContacts.vue
index 23a4990c..dc79ab75 100644
--- a/src/components/Settings/SettingsImportContacts.vue
+++ b/src/components/Settings/SettingsImportContacts.vue
@@ -88,12 +88,10 @@ export default {
let file = event.target.files[0]
let reader = new FileReader()
let selectedAddressbook = this.selectedAddressbook
- // this.$store.dispatch('changeStage', 'parsing')
+ this.$store.dispatch('changeStage', 'parsing')
let self = this
reader.onload = function(e) {
- // self.$store.dispatch('changeStage', 'importing')
self.$store.dispatch('getContactsFromAddressBook', { vcf: reader.result, addressbook: selectedAddressbook, importState: this.importState })
- // self.$store.dispatch('changeStage', 'default')
}
reader.readAsText(file)
}
diff --git a/src/services/parseVcf.js b/src/services/parseVcf.js
index 36797982..e74b083f 100644
--- a/src/services/parseVcf.js
+++ b/src/services/parseVcf.js
@@ -28,8 +28,6 @@ export default function parseVcf(data = '', addressbook) {
let vCards = data.match(regexp)
let importState = Store.getters.getImportState
- importState.total = vCards.length
-
if (!vCards) {
console.debug('Error during the parsing of the following vcf file: ', data)
return []
diff --git a/src/store/addressbooks.js b/src/store/addressbooks.js
index cc091c5c..169dfc41 100644
--- a/src/store/addressbooks.js
+++ b/src/store/addressbooks.js
@@ -208,11 +208,13 @@ const actions = {
*/
importContactsIntoAddressbook(context, { vcf, addressbook }) {
let contacts = parseVcf(vcf, addressbook)
+ this.$store.dispatch('changeStage', 'importing')
contacts.forEach(contact => {
context.commit('addContact', contact)
context.commit('addContactToAddressbook', contact)
context.commit('appendGroupsFromContacts', [contact])
})
+ this.$store.dispatch('changeStage', 'default')
},
/**
diff --git a/src/views/Contacts.vue b/src/views/Contacts.vue
index 8c0e6c5b..f39ef934 100644
--- a/src/views/Contacts.vue
+++ b/src/views/Contacts.vue
@@ -33,11 +33,13 @@
<div id="app-content">
<div id="app-content-wrapper">
<!-- loading -->
- <import-screen />
- <!-- contacts list -->
- <content-list :list="contactsList" :contacts="contacts" :loading="loading" />
- <!-- main contacts details -->
- <contact-details :loading="loading" :uid="selectedContact" />
+ <import-screen v-if="importState.stage != 'default'" />
+ <template v-else>
+ <!-- contacts list -->
+ <content-list :list="contactsList" :contacts="contacts" :loading="loading" />
+ <!-- main contacts details -->
+ <contact-details :loading="loading" :uid="selectedContact" />
+ </template>
</div>
</div>
@@ -101,7 +103,9 @@ export default {
orderKey() {
return this.$store.getters.getOrderKey
},
-
+ importState() {
+ return this.$store.getters.getImportState
+ },
// first enabled addressbook of the list
defaultAddressbook() {
return this.addressbooks.find(addressbook => addressbook.enabled)