From ed1d212ae2daea5e4bd043417610177093e99f19 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Sat, 16 Jan 2016 03:03:51 -0500
Subject: [PATCH] Improved SVG cleanup code
---
program/lib/Roundcube/rcube_csv2vcard.php | 27 +++++++++++++++++++--------
1 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/program/lib/Roundcube/rcube_csv2vcard.php b/program/lib/Roundcube/rcube_csv2vcard.php
index 8eff4d5..ef85507 100644
--- a/program/lib/Roundcube/rcube_csv2vcard.php
+++ b/program/lib/Roundcube/rcube_csv2vcard.php
@@ -1,6 +1,6 @@
<?php
-/*
+/**
+-----------------------------------------------------------------------+
| This file is part of the Roundcube Webmail client |
| Copyright (C) 2008-2012, The Roundcube Dev Team |
@@ -52,9 +52,9 @@
'company' => 'organization',
//'company_main_phone' => '',
'department' => 'department',
- //'email_2_address' => '', //@TODO
+ 'email_2_address' => 'email:other',
//'email_2_type' => '',
- //'email_3_address' => '', //@TODO
+ 'email_3_address' => 'email:other',
//'email_3_type' => '',
'email_address' => 'email:pref',
//'email_type' => '',
@@ -186,9 +186,9 @@
//'company_main_phone' => "Company Main Phone",
'department' => "Department",
//'directory_server' => "Directory Server",
- //'email_2_address' => "E-mail 2 Address",
+ 'email_2_address' => "E-mail 2 Address",
//'email_2_type' => "E-mail 2 Type",
- //'email_3_address' => "E-mail 3 Address",
+ 'email_3_address' => "E-mail 3 Address",
//'email_3_type' => "E-mail 3 Type",
'email_address' => "E-mail Address",
//'email_type' => "E-mail Type",
@@ -394,7 +394,9 @@
}
/**
+ * Import contacts from CSV file
*
+ * @param string $csv Content of the CSV file
*/
public function import($csv)
{
@@ -457,6 +459,8 @@
}
/**
+ * Export vCards
+ *
* @return array rcube_vcard List of vcards
*/
public function export()
@@ -554,7 +558,13 @@
foreach ($this->map as $idx => $name) {
$value = $data[$idx];
if ($value !== null && $value !== '') {
- $contact[$name] = $value;
+ if (!empty($contact[$name])) {
+ $contact[$name] = (array) $contact[$name];
+ $contact[$name][] = $value;
+ }
+ else {
+ $contact[$name] = $value;
+ }
}
}
@@ -571,9 +581,10 @@
if ($value !== null && $value !== '') {
foreach (array($type, '*') as $_type) {
if ($data_idx = $this->gmail_label_map[$key][$item_key][$_type]) {
+ $value = explode(' ::: ', $value);
+
if (!empty($contact[$data_idx])) {
- $contact[$data_idx] = (array) $contact[$data_idx];
- $contact[$data_idx][] = $value;
+ $contact[$data_idx] = array_merge((array) $contact[$data_idx], $value);
}
else {
$contact[$data_idx] = $value;
--
Gitblit v1.9.1