diff options
-rw-r--r-- | include/Contact.php | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/include/Contact.php b/include/Contact.php index f0c7cd737..dedde3d1e 100644 --- a/include/Contact.php +++ b/include/Contact.php @@ -128,11 +128,13 @@ function vcard_from_xchan($xchan, $observer = null, $mode = '') { function abook_toggle_flag($abook,$flag) { - $r = q("UPDATE abook set abook_flags = (abook_flags & ~%d) where abook_id = %d and abook_channel = %d", - intval($flag), - intval($abook['abook_id']), - intval($abook['abook_channel']) - ); + $r = q("UPDATE abook set abook_flags = (abook_flags %s %d) where abook_id = %d and abook_channel = %d", + db_getfunc('^'), + intval($flag), + intval($abook['abook_id']), + intval($abook['abook_channel']) + ); + // if unsetting the archive bit, update the timestamps so we'll try to connect for an additional 30 days. |