diff options
author | Aleksander Machniak <alec@alec.pl> | 2012-07-10 20:30:34 +0200 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2012-07-10 20:30:34 +0200 |
commit | 840b4dbeb81603ed44c30dc77be8eff98d7667c3 (patch) | |
tree | c1e7206aec71ae03ff05cbacdd5e724a5574afc1 /program/steps/mail | |
parent | 2b21b97ef0b13c958ed53c7adf10f02f6c4c434f (diff) |
Simplified method of getting default addressbook.
Make sure to use the same source when adding contact and checking
if message is safe (sender is in addressbook).
Small code improvements.
Diffstat (limited to 'program/steps/mail')
-rw-r--r-- | program/steps/mail/addcontact.inc | 13 | ||||
-rw-r--r-- | program/steps/mail/func.inc | 29 |
2 files changed, 19 insertions, 23 deletions
diff --git a/program/steps/mail/addcontact.inc b/program/steps/mail/addcontact.inc index 2dc406f84..380557766 100644 --- a/program/steps/mail/addcontact.inc +++ b/program/steps/mail/addcontact.inc @@ -23,17 +23,8 @@ if (!$OUTPUT->ajax_call) return; -$abook = $RCMAIL->config->get('default_addressbook'); - -// Get configured addressbook -$CONTACTS = $RCMAIL->get_address_book($abook, true); - -// Get first writeable addressbook if the configured doesn't exist -// This can happen when user deleted the addressbook (e.g. Kolab folder) -if ($abook == null || !is_object($CONTACTS)) { - $source = reset($RCMAIL->get_address_sources(true)); - $CONTACTS = $RCMAIL->get_address_book($source['id'], true); -} +// Get default addressbook +$CONTACTS = $RCMAIL->get_address_book(-1, true); if (!empty($_POST['_address']) && is_object($CONTACTS)) { diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc index 5a18ded6b..21fa3e8aa 100644 --- a/program/steps/mail/func.inc +++ b/program/steps/mail/func.inc @@ -518,21 +518,26 @@ function rcmail_check_safe(&$message) { global $RCMAIL; - $show_images = $RCMAIL->config->get('show_images'); if (!$message->is_safe - && !empty($show_images) - && $message->has_html_part()) - { - switch($show_images) { - case '1': // known senders only - $CONTACTS = new rcube_contacts($RCMAIL->db, $_SESSION['user_id']); - if ($CONTACTS->search('email', $message->sender['mailto'], true, false)->count) { - $message->set_safe(true); + && ($show_images = $RCMAIL->config->get('show_images')) + && $message->has_html_part() + ) { + switch ($show_images) { + case 1: // known senders only + // get default addressbook, like in addcontact.inc + $CONTACTS = $RCMAIL->get_address_book(-1, true); + + if ($CONTACTS) { + $result = $CONTACTS->search('email', $message->sender['mailto'], 1, false); + if ($result->count) { + $message->set_safe(true); + } } - break; - case '2': // always + break; + + case 2: // always $message->set_safe(true); - break; + break; } } } |