From a62ff159f0ae72d2794ab538dfc1848bdf5504a4 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Sat, 13 Feb 2016 05:50:59 -0500
Subject: [PATCH] Performance: Make sure that after contact update we call get_record() only once

---
 program/steps/addressbook/save.inc |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/program/steps/addressbook/save.inc b/program/steps/addressbook/save.inc
index 3f2a75c..9070411 100644
--- a/program/steps/addressbook/save.inc
+++ b/program/steps/addressbook/save.inc
@@ -164,9 +164,12 @@
             $_POST['_cid'] = $newcid;
         }
 
-        // define list of cols to be displayed
+        // refresh contact data for list update and 'show' action
+        $CONTACT_RECORD = $CONTACTS->get_record($newcid ?: $cid, true);
+
+        // Update contacts list
         $a_js_cols = array();
-        $record = $CONTACTS->get_record($newcid ?: $cid, true);
+        $record = $CONTACT_RECORD;
         $record['email'] = reset($CONTACTS->get_col_values('email', $record, true));
         $record['name']  = rcube_addressbook::compose_list_name($record);
 

--
Gitblit v1.9.1