Aleksander Machniak
2013-07-01 a3f745bcccbb9e89ece7a1506a83215688008d3c
Fix email duplicate check on contact move/copy
2 files modified
14 ■■■■ changed files
program/steps/addressbook/copy.inc 6 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/move.inc 8 ●●●● patch | view | raw | blame | history
program/steps/addressbook/copy.inc
@@ -63,8 +63,10 @@
        // Check if contact exists, if so, we'll need it's ID
        // Note: Some addressbooks allows empty email address field
        if (!empty($a_record['email']))
            $result = $TARGET->search('email', $a_record['email'], 1, true, true);
        // @TODO: should we check all email addresses?
        $email = $CONTACTS->get_col_values('email', $a_record, true);
        if (!empty($email))
            $result = $TARGET->search('email', $email[0], 1, true, true);
        else if (!empty($a_record['name']))
            $result = $TARGET->search('name', $a_record['name'], 1, true, true);
        else
program/steps/addressbook/move.inc
@@ -71,8 +71,10 @@
        // Check if contact exists, if so, we'll need it's ID
        // Note: Some addressbooks allows empty email address field
        if (!empty($a_record['email']))
            $result = $TARGET->search('email', $a_record['email'], 1, true, true);
        // @TODO: should we check all email addresses?
        $email = $CONTACTS->get_col_values('email', $a_record, true);
        if (!empty($email))
            $result = $TARGET->search('email', $email[0], 1, true, true);
        else if (!empty($a_record['name']))
            $result = $TARGET->search('name', $a_record['name'], 1, true, true);
        else
@@ -144,6 +146,8 @@
    if ($deleted) {
        rcmail_search_update();
    }
    $OUTPUT->command('list_contacts_clear');
    $OUTPUT->command('list_contacts');
}
else {