From fed15bd6b7bcbca6d4707dc4ccedd8784fcadfb2 Mon Sep 17 00:00:00 2001 From: zach Date: Fri, 14 Nov 2008 00:30:44 -0500 Subject: Twitter bridge - don't delete Twitter users. Update them instead. darcs-hash:20081114053044-462f3-30e2d27261bca1977b89dee409383e178f446149.gz --- classes/Foreign_user.php | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'classes/Foreign_user.php') diff --git a/classes/Foreign_user.php b/classes/Foreign_user.php index d70923caa..027fae69d 100644 --- a/classes/Foreign_user.php +++ b/classes/Foreign_user.php @@ -39,4 +39,32 @@ class Foreign_user extends Memcached_DataObject return NULL; } + function updateKeys(&$orig) { + $parts = array(); + foreach (array('id', 'service', 'uri', 'nickname') as $k) { + if (strcmp($this->$k, $orig->$k) != 0) { + $parts[] = $k . ' = ' . $this->_quote($this->$k); + } + } + if (count($parts) == 0) { + # No changes + return true; + } + $toupdate = implode(', ', $parts); + + $table = $this->tableName(); + if(common_config('db','quote_identifiers')) { + $table = '"' . $table . '"'; + } + $qry = 'UPDATE ' . $table . ' SET ' . $toupdate . + ' WHERE id = ' . $this->id; + $orig->decache(); + $result = $this->query($qry); + if ($result) { + $this->encache(); + } + return $result; + } + + } -- cgit v1.2.3-54-g00ecf