X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=classes%2FForeign_link.php;h=57a10dcedb1fd0e5214b920220f6fb7ae86d37a3;hb=6d5b6d98b5f68d784fee736518eaaae7a26a51f6;hp=ae8c22fd84742b6b0c48ece953f364a87d3f7993;hpb=9f356b55c6f419468771c0f3c2450010c0242abe;p=quix0rs-gnu-social.git diff --git a/classes/Foreign_link.php b/classes/Foreign_link.php index ae8c22fd84..57a10dcedb 100644 --- a/classes/Foreign_link.php +++ b/classes/Foreign_link.php @@ -44,7 +44,6 @@ class Foreign_link extends Memcached_DataObject $result = $flink->find(true); return empty($result) ? null : $flink; - } static function getByForeignID($foreign_id, $service) @@ -92,7 +91,7 @@ class Foreign_link extends Memcached_DataObject $this->profilesync = 0; } - # Convenience methods + // Convenience methods function getForeignUser() { $fuser = new Foreign_user(); @@ -113,4 +112,20 @@ class Foreign_link extends Memcached_DataObject return User::staticGet($this->user_id); } + // Make sure we only ever delete one record at a time + function safeDelete() + { + if (!empty($this->user_id) + && !empty($this->foreign_id) + && !empty($this->service)) + { + return $this->delete(); + } else { + common_debug(LOG_WARNING, + 'Foreign_link::safeDelete() tried to delete a ' + . 'Foreign_link without a fully specified compound key: ' + . var_export($this, true)); + return false; + } + } }