From ec6ecc7863098198133379e240613e0253276ab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Tue, 28 Aug 2018 18:27:58 +0200 Subject: Import progress work by @suntala MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- src/services/parseVcf.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/services') diff --git a/src/services/parseVcf.js b/src/services/parseVcf.js index 2a2039d5..86c02981 100644 --- a/src/services/parseVcf.js +++ b/src/services/parseVcf.js @@ -1,7 +1,7 @@ /** - * @copyright Copyright (c) 2018 John Molakvoæ + * @copyright Copyright (c) 2018 Team Popcorn * - * @author John Molakvoæ + * @author Team Popcorn * * @license GNU AGPL version 3 or any later version * @@ -22,19 +22,25 @@ import Contact from '../models/contact' -export default function parseVcf(data = '', addressbook) { +export default function parseVcf(data = '', addressbook, importState) { let regexp = /BEGIN:VCARD[\s\S]*?END:VCARD/mgi let vCards = data.match(regexp) + importState.total = vCards.length + if (!vCards) { console.debug('Error during the parsing of the following vcf file: ', data) return [] } return vCards.map(vCard => { try { - return new Contact(vCard, addressbook) + // console.log(vCards.indexOf(vCard)) + let contact = new Contact(vCard, addressbook) + importState.accepted++ + return contact } catch (e) { // Parse error! Do not stop here... + importState.denied++ // eslint-disable-next-line console.error(e) } -- cgit v1.2.3