]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Item.php
Rename Friendica\Database\dba to Friendica\Database\DBA
[friendica.git] / src / Model / Item.php
index 4f9f1cf9049992a4b86773f526ff663fa0a1b7b6..059fee93bdbb87d3a4774ba0353bb8714afe4ab3 100644 (file)
@@ -14,7 +14,7 @@ use Friendica\Core\Lock;
 use Friendica\Core\PConfig;
 use Friendica\Core\System;
 use Friendica\Core\Worker;
-use Friendica\Database\dba;
+use Friendica\Database\DBA;
 use Friendica\Database\DBM;
 use Friendica\Object\Image;
 use Friendica\Protocol\Diaspora;
@@ -142,7 +142,7 @@ class Item extends BaseObject
         */
        public static function fetch($stmt)
        {
-               $row = dba::fetch($stmt);
+               $row = DBA::fetch($stmt);
 
                if (is_bool($row)) {
                        return $row;
@@ -254,7 +254,7 @@ class Item extends BaseObject
                        $data[] = $row;
                }
                if ($do_close) {
-                       dba::close($stmt);
+                       DBA::close($stmt);
                }
                return $data;
        }
@@ -272,10 +272,10 @@ class Item extends BaseObject
                if (is_bool($stmt)) {
                        $retval = $stmt;
                } else {
-                       $retval = (dba::num_rows($stmt) > 0);
+                       $retval = (DBA::num_rows($stmt) > 0);
                }
 
-               dba::close($stmt);
+               DBA::close($stmt);
 
                return $retval;
        }
@@ -289,7 +289,7 @@ class Item extends BaseObject
         * @param array  $condition
         * @param array  $params
         * @return bool|array
-        * @see dba::select
+        * @see DBA::select
         */
        public static function selectFirstForUser($uid, array $selected = [], array $condition = [], $params = [])
        {
@@ -331,7 +331,7 @@ class Item extends BaseObject
         * @param array  $condition
         * @param array  $params
         * @return bool|array
-        * @see dba::select
+        * @see DBA::select
         */
        public static function selectFirst(array $fields = [], array $condition = [], $params = [])
        {
@@ -343,7 +343,7 @@ class Item extends BaseObject
                        return $result;
                } else {
                        $row = self::fetch($result);
-                       dba::close($result);
+                       DBA::close($result);
                        return $row;
                }
        }
@@ -371,7 +371,7 @@ class Item extends BaseObject
 
                $select_fields = self::constructSelectFields($fields, $selected);
 
-               $condition_string = dba::buildCondition($condition);
+               $condition_string = DBA::buildCondition($condition);
 
                $condition_string = self::addTablesToFields($condition_string, $fields);
 
@@ -379,13 +379,13 @@ class Item extends BaseObject
                        $condition_string = $condition_string . ' AND ' . self::condition(false);
                }
 
-               $param_string = self::addTablesToFields(dba::buildParameter($params), $fields);
+               $param_string = self::addTablesToFields(DBA::buildParameter($params), $fields);
 
                $table = "`item` " . self::constructJoins($uid, $select_fields . $condition_string . $param_string, false, $usermode);
 
                $sql = "SELECT " . $select_fields . " FROM " . $table . $condition_string . $param_string;
 
-               return dba::p($sql, $condition);
+               return DBA::p($sql, $condition);
        }
 
        /**
@@ -418,7 +418,7 @@ class Item extends BaseObject
         * @param array  $condition
         * @param array  $params
         * @return bool|array
-        * @see dba::select
+        * @see DBA::select
         */
        public static function selectFirstThreadForUser($uid, array $selected = [], array $condition = [], $params = [])
        {
@@ -439,7 +439,7 @@ class Item extends BaseObject
         * @param array  $condition
         * @param array  $params
         * @return bool|array
-        * @see dba::select
+        * @see DBA::select
         */
        public static function selectFirstThread(array $fields = [], array $condition = [], $params = [])
        {
@@ -450,7 +450,7 @@ class Item extends BaseObject
                        return $result;
                } else {
                        $row = self::fetch($result);
-                       dba::close($result);
+                       DBA::close($result);
                        return $row;
                }
        }
@@ -483,7 +483,7 @@ class Item extends BaseObject
 
                $select_fields = self::constructSelectFields($fields, $selected);
 
-               $condition_string = dba::buildCondition($condition);
+               $condition_string = DBA::buildCondition($condition);
 
                $condition_string = self::addTablesToFields($condition_string, $threadfields);
                $condition_string = self::addTablesToFields($condition_string, $fields);
@@ -492,7 +492,7 @@ class Item extends BaseObject
                        $condition_string = $condition_string . ' AND ' . self::condition(true);
                }
 
-               $param_string = dba::buildParameter($params);
+               $param_string = DBA::buildParameter($params);
                $param_string = self::addTablesToFields($param_string, $threadfields);
                $param_string = self::addTablesToFields($param_string, $fields);
 
@@ -500,7 +500,7 @@ class Item extends BaseObject
 
                $sql = "SELECT " . $select_fields . " FROM " . $table . $condition_string . $param_string;
 
-               return dba::p($sql, $condition);
+               return DBA::p($sql, $condition);
        }
 
        /**
@@ -752,12 +752,12 @@ class Item extends BaseObject
                }
 
                // To ensure the data integrity we do it in an transaction
-               dba::transaction();
+               DBA::transaction();
 
                // We cannot simply expand the condition to check for origin entries
                // The condition needn't to be a simple array but could be a complex condition.
                // And we have to execute this query before the update to ensure to fetch the same data.
-               $items = dba::select('item', ['id', 'origin', 'uri', 'created', 'uri-hash', 'iaid', 'icid', 'tag', 'file'], $condition);
+               $items = DBA::select('item', ['id', 'origin', 'uri', 'created', 'uri-hash', 'iaid', 'icid', 'tag', 'file'], $condition);
 
                $content_fields = [];
                foreach (array_merge(self::CONTENT_FIELDLIST, self::MIXED_CONTENT_FIELDLIST) as $field) {
@@ -799,35 +799,35 @@ class Item extends BaseObject
                $fields['inform'] = null;
 
                if (!empty($fields)) {
-                       $success = dba::update('item', $fields, $condition);
+                       $success = DBA::update('item', $fields, $condition);
 
                        if (!$success) {
-                               dba::close($items);
-                               dba::rollback();
+                               DBA::close($items);
+                               DBA::rollback();
                                return false;
                        }
                }
 
                // When there is no content for the "old" item table, this will count the fetched items
-               $rows = dba::affected_rows();
+               $rows = DBA::affected_rows();
 
-               while ($item = dba::fetch($items)) {
+               while ($item = DBA::fetch($items)) {
 
                        // This part here can safely be removed when the legacy fields in the item had been removed
                        if (empty($item['uri-hash']) && !empty($item['uri']) && !empty($item['created'])) {
 
                                // Fetch the uri-hash from an existing item entry if there is one
                                $item_condition = ["`uri` = ? AND `uri-hash` != ''", $item['uri']];
-                               $existing = dba::selectfirst('item', ['uri-hash'], $item_condition);
+                               $existing = DBA::selectfirst('item', ['uri-hash'], $item_condition);
                                if (DBM::is_result($existing)) {
                                        $item['uri-hash'] = $existing['uri-hash'];
                                } else {
                                        $item['uri-hash'] = self::itemHash($item['uri'], $item['created']);
                                }
 
-                               dba::update('item', ['uri-hash' => $item['uri-hash']], ['id' => $item['id']]);
-                               dba::update('item-activity', ['uri-hash' => $item['uri-hash']], ["`uri` = ? AND `uri-hash` = ''", $item['uri']]);
-                               dba::update('item-content', ['uri-plink-hash' => $item['uri-hash']], ["`uri` = ? AND `uri-plink-hash` = ''", $item['uri']]);
+                               DBA::update('item', ['uri-hash' => $item['uri-hash']], ['id' => $item['id']]);
+                               DBA::update('item-activity', ['uri-hash' => $item['uri-hash']], ["`uri` = ? AND `uri-hash` = ''", $item['uri']]);
+                               DBA::update('item-content', ['uri-plink-hash' => $item['uri-hash']], ["`uri` = ? AND `uri-plink-hash` = ''", $item['uri']]);
                        }
 
                        if (!empty($item['iaid']) || (!empty($content_fields['verb']) && (self::activityToIndex($content_fields['verb']) >= 0))) {
@@ -839,7 +839,7 @@ class Item extends BaseObject
                                self::updateActivity($content_fields, $update_condition);
 
                                if (empty($item['iaid'])) {
-                                       $item_activity = dba::selectFirst('item-activity', ['id'], ['uri-hash' => $item['uri-hash']]);
+                                       $item_activity = DBA::selectFirst('item-activity', ['id'], ['uri-hash' => $item['uri-hash']]);
                                        if (DBM::is_result($item_activity)) {
                                                $item_fields = ['iaid' => $item_activity['id'], 'icid' => null];
                                                foreach (self::MIXED_CONTENT_FIELDLIST as $field) {
@@ -849,17 +849,17 @@ class Item extends BaseObject
                                                                unset($item_fields[$field]);
                                                        }
                                                }
-                                               dba::update('item', $item_fields, ['id' => $item['id']]);
+                                               DBA::update('item', $item_fields, ['id' => $item['id']]);
 
-                                               if (!empty($item['icid']) && !dba::exists('item', ['icid' => $item['icid']])) {
-                                                       dba::delete('item-content', ['id' => $item['icid']]);
+                                               if (!empty($item['icid']) && !DBA::exists('item', ['icid' => $item['icid']])) {
+                                                       DBA::delete('item-content', ['id' => $item['icid']]);
                                                }
                                        }
                                } elseif (!empty($item['icid'])) {
-                                       dba::update('item', ['icid' => null], ['id' => $item['id']]);
+                                       DBA::update('item', ['icid' => null], ['id' => $item['id']]);
 
-                                       if (!dba::exists('item', ['icid' => $item['icid']])) {
-                                               dba::delete('item-content', ['id' => $item['icid']]);
+                                       if (!DBA::exists('item', ['icid' => $item['icid']])) {
+                                               DBA::delete('item-content', ['id' => $item['icid']]);
                                        }
                                }
                        } else {
@@ -871,7 +871,7 @@ class Item extends BaseObject
                                self::updateContent($content_fields, $update_condition);
 
                                if (empty($item['icid'])) {
-                                       $item_content = dba::selectFirst('item-content', [], ['uri-plink-hash' => $item['uri-hash']]);
+                                       $item_content = DBA::selectFirst('item-content', [], ['uri-plink-hash' => $item['uri-hash']]);
                                        if (DBM::is_result($item_content)) {
                                                $item_fields = ['icid' => $item_content['id']];
                                                // Clear all fields in the item table that have a content in the item-content table
@@ -884,7 +884,7 @@ class Item extends BaseObject
                                                                }
                                                        }
                                                }
-                                               dba::update('item', $item_fields, ['id' => $item['id']]);
+                                               DBA::update('item', $item_fields, ['id' => $item['id']]);
                                        }
                                }
                        }
@@ -892,14 +892,14 @@ class Item extends BaseObject
                        if (!empty($tags)) {
                                Term::insertFromTagFieldByItemId($item['id'], $tags);
                                if (!empty($item['tag'])) {
-                                       dba::update('item', ['tag' => ''], ['id' => $item['id']]);
+                                       DBA::update('item', ['tag' => ''], ['id' => $item['id']]);
                                }
                        }
 
                        if (!empty($files)) {
                                Term::insertFromFileFieldByItemId($item['id'], $files);
                                if (!empty($item['file'])) {
-                                       dba::update('item', ['file' => ''], ['id' => $item['id']]);
+                                       DBA::update('item', ['file' => ''], ['id' => $item['id']]);
                                }
                        }
 
@@ -914,8 +914,8 @@ class Item extends BaseObject
                        }
                }
 
-               dba::close($items);
-               dba::commit();
+               DBA::close($items);
+               DBA::commit();
                return $rows;
        }
 
@@ -927,11 +927,11 @@ class Item extends BaseObject
         */
        public static function delete($condition, $priority = PRIORITY_HIGH)
        {
-               $items = dba::select('item', ['id'], $condition);
-               while ($item = dba::fetch($items)) {
+               $items = DBA::select('item', ['id'], $condition);
+               while ($item = DBA::fetch($items)) {
                        self::deleteById($item['id'], $priority);
                }
-               dba::close($items);
+               DBA::close($items);
        }
 
        /**
@@ -946,18 +946,18 @@ class Item extends BaseObject
                        return;
                }
 
-               $items = dba::select('item', ['id', 'uid'], $condition);
-               while ($item = dba::fetch($items)) {
+               $items = DBA::select('item', ['id', 'uid'], $condition);
+               while ($item = DBA::fetch($items)) {
                        // "Deleting" global items just means hiding them
                        if ($item['uid'] == 0) {
-                               dba::update('user-item', ['hidden' => true], ['iid' => $item['id'], 'uid' => $uid], true);
+                               DBA::update('user-item', ['hidden' => true], ['iid' => $item['id'], 'uid' => $uid], true);
                        } elseif ($item['uid'] == $uid) {
                                self::deleteById($item['id'], PRIORITY_HIGH);
                        } else {
                                logger('Wrong ownership. Not deleting item ' . $item['id']);
                        }
                }
-               dba::close($items);
+               DBA::close($items);
        }
 
        /**
@@ -1016,7 +1016,7 @@ class Item extends BaseObject
                 * generate a resource-id and therefore aren't intimately linked to the item.
                 */
                if (strlen($item['resource-id'])) {
-                       dba::delete('photo', ['resource-id' => $item['resource-id'], 'uid' => $item['uid']]);
+                       DBA::delete('photo', ['resource-id' => $item['resource-id'], 'uid' => $item['uid']]);
                }
 
                // If item is a link to an event, delete the event.
@@ -1028,7 +1028,7 @@ class Item extends BaseObject
                foreach (explode(", ", $item['attach']) as $attach) {
                        preg_match("|attach/(\d+)|", $attach, $matches);
                        if (is_array($matches) && count($matches) > 1) {
-                               dba::delete('attach', ['id' => $matches[1], 'uid' => $item['uid']]);
+                               DBA::delete('attach', ['id' => $matches[1], 'uid' => $item['uid']]);
                        }
                }
 
@@ -1041,7 +1041,7 @@ class Item extends BaseObject
                $item_fields = ['deleted' => true, 'edited' => DateTimeFormat::utcNow(), 'changed' => DateTimeFormat::utcNow(),
                        'body' => '', 'title' => '', 'content-warning' => '', 'rendered-hash' => '', 'rendered-html' => '',
                        'object' => '', 'target' => '', 'tag' => '', 'postopts' => '', 'attach' => '', 'file' => ''];
-               dba::update('item', $item_fields, ['id' => $item['id']]);
+               DBA::update('item', $item_fields, ['id' => $item['id']]);
 
                Term::insertFromTagFieldByItemId($item['id'], '');
                Term::insertFromFileFieldByItemId($item['id'], '');
@@ -1051,7 +1051,7 @@ class Item extends BaseObject
                        self::delete(['uri' => $item['uri'], 'uid' => 0, 'deleted' => false], $priority);
                }
 
-               dba::delete('item-delivery-data', ['iid' => $item['id']]);
+               DBA::delete('item-delivery-data', ['iid' => $item['id']]);
 
                // If it's the parent of a comment thread, kill all the kids
                if ($item['id'] == $item['parent']) {
@@ -1071,7 +1071,7 @@ class Item extends BaseObject
                        // When we delete just our local user copy of an item, we have to set a marker to hide it
                        $global_item = self::selectFirst(['id'], ['uri' => $item['uri'], 'uid' => 0, 'deleted' => false]);
                        if (DBM::is_result($global_item)) {
-                               dba::update('user-item', ['hidden' => true], ['iid' => $global_item['id'], 'uid' => $item['uid']], true);
+                               DBA::update('user-item', ['hidden' => true], ['iid' => $global_item['id'], 'uid' => $item['uid']], true);
                        }
                }
 
@@ -1194,7 +1194,7 @@ class Item extends BaseObject
 
                // Still missing? Then use the "self" contact of the current user
                if ($contact_id == 0) {
-                       $self = dba::selectFirst('contact', ['id'], ['self' => true, 'uid' => $item['uid']]);
+                       $self = DBA::selectFirst('contact', ['id'], ['self' => true, 'uid' => $item['uid']]);
                        if (DBM::is_result($self)) {
                                $contact_id = $self["id"];
                        }
@@ -1279,7 +1279,7 @@ class Item extends BaseObject
                // check for create date and expire time
                $expire_interval = Config::get('system', 'dbclean-expire-days', 0);
 
-               $user = dba::selectFirst('user', ['expire'], ['uid' => $uid]);
+               $user = DBA::selectFirst('user', ['expire'], ['uid' => $uid]);
                if (DBM::is_result($user) && ($user['expire'] > 0) && (($user['expire'] < $expire_interval) || ($expire_interval == 0))) {
                        $expire_interval = $user['expire'];
                }
@@ -1314,7 +1314,7 @@ class Item extends BaseObject
                }
 
                // Ensure to always have the same creation date.
-               $existing = dba::selectfirst('item', ['created', 'uri-hash'], ['uri' => $item['uri']]);
+               $existing = DBA::selectfirst('item', ['created', 'uri-hash'], ['uri' => $item['uri']]);
                if (DBM::is_result($existing)) {
                        $item['created'] = $existing['created'];
                        $item['uri-hash'] = $existing['uri-hash'];
@@ -1510,13 +1510,13 @@ class Item extends BaseObject
 
                                // If its a post from myself then tag the thread as "mention"
                                logger("Checking if parent ".$parent_id." has to be tagged as mention for user ".$item['uid'], LOGGER_DEBUG);
-                               $user = dba::selectFirst('user', ['nickname'], ['uid' => $item['uid']]);
+                               $user = DBA::selectFirst('user', ['nickname'], ['uid' => $item['uid']]);
                                if (DBM::is_result($user)) {
                                        $self = normalise_link(System::baseUrl() . '/profile/' . $user['nickname']);
                                        $self_id = Contact::getIdForURL($self, 0, true);
                                        logger("'myself' is ".$self_id." for parent ".$parent_id." checking against ".$item['author-id']." and ".$item['owner-id'], LOGGER_DEBUG);
                                        if (($item['author-id'] == $self_id) || ($item['owner-id'] == $self_id)) {
-                                               dba::update('thread', ['mention' => true], ['iid' => $parent_id]);
+                                               DBA::update('thread', ['mention' => true], ['iid' => $parent_id]);
                                                logger("tagged thread ".$parent_id." as mention for user ".$self, LOGGER_DEBUG);
                                        }
                                }
@@ -1568,7 +1568,7 @@ class Item extends BaseObject
                        $item["global"] = true;
 
                        // Set the global flag on all items if this was a global item entry
-                       dba::update('item', ['global' => true], ['uri' => $item["uri"]]);
+                       DBA::update('item', ['global' => true], ['uri' => $item["uri"]]);
                } else {
                        $item["global"] = self::exists(['uid' => 0, 'uri' => $item["uri"]]);
                }
@@ -1652,15 +1652,15 @@ class Item extends BaseObject
                unset($item['postopts']);
                unset($item['inform']);
 
-               dba::transaction();
-               $ret = dba::insert('item', $item);
+               DBA::transaction();
+               $ret = DBA::insert('item', $item);
 
                // When the item was successfully stored we fetch the ID of the item.
                if (DBM::is_result($ret)) {
-                       $current_post = dba::lastInsertId();
+                       $current_post = DBA::lastInsertId();
                } else {
                        // This can happen - for example - if there are locking timeouts.
-                       dba::rollback();
+                       DBA::rollback();
 
                        // Store the data into a spool file so that we can try again later.
 
@@ -1689,26 +1689,26 @@ class Item extends BaseObject
                if ($current_post == 0) {
                        // This is one of these error messages that never should occur.
                        logger("couldn't find created item - we better quit now.");
-                       dba::rollback();
+                       DBA::rollback();
                        return 0;
                }
 
                // How much entries have we created?
                // We wouldn't need this query when we could use an unique index - but MySQL has length problems with them.
-               $entries = dba::count('item', ['uri' => $item['uri'], 'uid' => $item['uid'], 'network' => $item['network']]);
+               $entries = DBA::count('item', ['uri' => $item['uri'], 'uid' => $item['uid'], 'network' => $item['network']]);
 
                if ($entries > 1) {
                        // There are duplicates. We delete our just created entry.
                        logger('Duplicated post occurred. uri = ' . $item['uri'] . ' uid = ' . $item['uid']);
 
                        // Yes, we could do a rollback here - but we are having many users with MyISAM.
-                       dba::delete('item', ['id' => $current_post]);
-                       dba::commit();
+                       DBA::delete('item', ['id' => $current_post]);
+                       DBA::commit();
                        return 0;
                } elseif ($entries == 0) {
                        // This really should never happen since we quit earlier if there were problems.
                        logger("Something is terribly wrong. We haven't found our created entry.");
-                       dba::rollback();
+                       DBA::rollback();
                        return 0;
                }
 
@@ -1720,7 +1720,7 @@ class Item extends BaseObject
                }
 
                // Set parent id
-               dba::update('item', ['parent' => $parent_id], ['id' => $current_post]);
+               DBA::update('item', ['parent' => $parent_id], ['id' => $current_post]);
 
                $item['id'] = $current_post;
                $item['parent'] = $parent_id;
@@ -1728,9 +1728,9 @@ class Item extends BaseObject
                // update the commented timestamp on the parent
                // Only update "commented" if it is really a comment
                if (($item['gravity'] != GRAVITY_ACTIVITY) || !Config::get("system", "like_no_comment")) {
-                       dba::update('item', ['commented' => DateTimeFormat::utcNow(), 'changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]);
+                       DBA::update('item', ['commented' => DateTimeFormat::utcNow(), 'changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]);
                } else {
-                       dba::update('item', ['changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]);
+                       DBA::update('item', ['changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]);
                }
 
                if ($dsprsig) {
@@ -1743,14 +1743,14 @@ class Item extends BaseObject
                                logger("Repaired double encoded signature from handle ".$dsprsig->signer, LOGGER_DEBUG);
                        }
 
-                       dba::insert('sign', ['iid' => $current_post, 'signed_text' => $dsprsig->signed_text,
+                       DBA::insert('sign', ['iid' => $current_post, 'signed_text' => $dsprsig->signed_text,
                                                'signature' => $dsprsig->signature, 'signer' => $dsprsig->signer]);
                }
 
                if (!empty($diaspora_signed_text)) {
                        // Formerly we stored the signed text, the signature and the author in different fields.
                        // We now store the raw data so that we are more flexible.
-                       dba::insert('sign', ['iid' => $current_post, 'signed_text' => $diaspora_signed_text]);
+                       DBA::insert('sign', ['iid' => $current_post, 'signed_text' => $diaspora_signed_text]);
                }
 
                $deleted = self::tagDeliver($item['uid'], $current_post);
@@ -1782,7 +1782,7 @@ class Item extends BaseObject
 
                self::insertDeliveryData($delivery_data);
 
-               dba::commit();
+               DBA::commit();
 
                /*
                 * Due to deadlock issues with the "term" table we are doing these steps after the commit.
@@ -1824,7 +1824,7 @@ class Item extends BaseObject
                        return;
                }
 
-               dba::insert('item-delivery-data', $delivery_data);
+               DBA::insert('item-delivery-data', $delivery_data);
        }
 
        /**
@@ -1839,7 +1839,7 @@ class Item extends BaseObject
                        return;
                }
 
-               dba::update('item-delivery-data', $delivery_data, ['iid' => $id], true);
+               DBA::update('item-delivery-data', $delivery_data, ['iid' => $id], true);
        }
 
        /**
@@ -1870,12 +1870,12 @@ class Item extends BaseObject
                }
 
                // Do we already have this content?
-               $item_activity = dba::selectFirst('item-activity', ['id'], ['uri-hash' => $item['uri-hash']]);
+               $item_activity = DBA::selectFirst('item-activity', ['id'], ['uri-hash' => $item['uri-hash']]);
                if (DBM::is_result($item_activity)) {
                        $item['iaid'] = $item_activity['id'];
                        logger('Fetched activity for URI ' . $item['uri'] . ' (' . $item['iaid'] . ')');
-               } elseif (dba::insert('item-activity', $fields)) {
-                       $item['iaid'] = dba::lastInsertId();
+               } elseif (DBA::insert('item-activity', $fields)) {
+                       $item['iaid'] = DBA::lastInsertId();
                        logger('Inserted activity for URI ' . $item['uri'] . ' (' . $item['iaid'] . ')');
                } else {
                        // This shouldn't happen.
@@ -1911,12 +1911,12 @@ class Item extends BaseObject
                }
 
                // Do we already have this content?
-               $item_content = dba::selectFirst('item-content', ['id'], ['uri-plink-hash' => $item['uri-hash']]);
+               $item_content = DBA::selectFirst('item-content', ['id'], ['uri-plink-hash' => $item['uri-hash']]);
                if (DBM::is_result($item_content)) {
                        $item['icid'] = $item_content['id'];
                        logger('Fetched content for URI ' . $item['uri'] . ' (' . $item['icid'] . ')');
-               } elseif (dba::insert('item-content', $fields)) {
-                       $item['icid'] = dba::lastInsertId();
+               } elseif (DBA::insert('item-content', $fields)) {
+                       $item['icid'] = DBA::lastInsertId();
                        logger('Inserted content for URI ' . $item['uri'] . ' (' . $item['icid'] . ')');
                } else {
                        // This shouldn't happen.
@@ -1948,7 +1948,7 @@ class Item extends BaseObject
 
                logger('Update activity for ' . json_encode($condition));
 
-               dba::update('item-activity', $fields, $condition, true);
+               DBA::update('item-activity', $fields, $condition, true);
 
                return true;
        }
@@ -1977,7 +1977,7 @@ class Item extends BaseObject
 
                logger('Update content for ' . json_encode($condition));
 
-               dba::update('item-content', $fields, $condition, true);
+               DBA::update('item-content', $fields, $condition, true);
        }
 
        /**
@@ -2016,8 +2016,8 @@ class Item extends BaseObject
 
                $condition = ["`nurl` IN (SELECT `nurl` FROM `contact` WHERE `id` = ?) AND `uid` != 0 AND NOT `blocked` AND `rel` IN (?, ?)",
                        $parent['owner-id'], CONTACT_IS_SHARING,  CONTACT_IS_FRIEND];
-               $contacts = dba::select('contact', ['uid'], $condition);
-               while ($contact = dba::fetch($contacts)) {
+               $contacts = DBA::select('contact', ['uid'], $condition);
+               while ($contact = DBA::fetch($contacts)) {
                        $users[$contact['uid']] = $contact['uid'];
                }
 
@@ -2025,7 +2025,7 @@ class Item extends BaseObject
 
                if ($item['uri'] != $item['parent-uri']) {
                        $parents = self::select(['uid', 'origin'], ["`uri` = ? AND `uid` != 0", $item['parent-uri']]);
-                       while ($parent = dba::fetch($parents)) {
+                       while ($parent = DBA::fetch($parents)) {
                                $users[$parent['uid']] = $parent['uid'];
                                if ($parent['origin'] && !$origin) {
                                        $origin_uid = $parent['uid'];
@@ -2060,7 +2060,7 @@ class Item extends BaseObject
                }
 
                if (empty($item['contact-id'])) {
-                       $self = dba::selectFirst('contact', ['id'], ['self' => true, 'uid' => $uid]);
+                       $self = DBA::selectFirst('contact', ['id'], ['self' => true, 'uid' => $uid]);
                        if (!DBM::is_result($self)) {
                                return;
                        }
@@ -2071,7 +2071,7 @@ class Item extends BaseObject
 
                $notify = false;
                if ($item['uri'] == $item['parent-uri']) {
-                       $contact = dba::selectFirst('contact', [], ['id' => $item['contact-id'], 'self' => false]);
+                       $contact = DBA::selectFirst('contact', [], ['id' => $item['contact-id'], 'self' => false]);
                        if (DBM::is_result($contact)) {
                                $notify = self::isRemoteSelf($contact, $item);
                        }
@@ -2272,7 +2272,7 @@ class Item extends BaseObject
 
                $hostname = self::getApp()->get_hostname();
 
-               $user = dba::selectFirst('user', ['nickname'], ['uid' => $uid]);
+               $user = DBA::selectFirst('user', ['nickname'], ['uid' => $uid]);
 
                $uri = "urn:X-dfrn:" . $hostname . ':' . $user['nickname'] . ':' . $guid;
 
@@ -2291,13 +2291,13 @@ class Item extends BaseObject
        private static function updateContact($arr)
        {
                // Unarchive the author
-               $contact = dba::selectFirst('contact', [], ['id' => $arr["author-id"]]);
+               $contact = DBA::selectFirst('contact', [], ['id' => $arr["author-id"]]);
                if (DBM::is_result($contact)) {
                        Contact::unmarkForArchival($contact);
                }
 
                // Unarchive the contact if it's not our own contact
-               $contact = dba::selectFirst('contact', [], ['id' => $arr["contact-id"], 'self' => false]);
+               $contact = DBA::selectFirst('contact', [], ['id' => $arr["contact-id"], 'self' => false]);
                if (DBM::is_result($contact)) {
                        Contact::unmarkForArchival($contact);
                }
@@ -2306,22 +2306,22 @@ class Item extends BaseObject
 
                // Is it a forum? Then we don't care about the rules from above
                if (!$update && ($arr["network"] == NETWORK_DFRN) && ($arr["parent-uri"] === $arr["uri"])) {
-                       if (dba::exists('contact', ['id' => $arr['contact-id'], 'forum' => true])) {
+                       if (DBA::exists('contact', ['id' => $arr['contact-id'], 'forum' => true])) {
                                $update = true;
                        }
                }
 
                if ($update) {
-                       dba::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
+                       DBA::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
                                ['id' => $arr['contact-id']]);
                }
                // Now do the same for the system wide contacts with uid=0
                if (!$arr['private']) {
-                       dba::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
+                       DBA::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
                                ['id' => $arr['owner-id']]);
 
                        if ($arr['owner-id'] != $arr['author-id']) {
-                               dba::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
+                               DBA::update('contact', ['success_update' => $arr['received'], 'last-item' => $arr['received']],
                                        ['id' => $arr['author-id']]);
                        }
                }
@@ -2416,7 +2416,7 @@ class Item extends BaseObject
 
                // Does the given user have this item?
                if ($uid) {
-                       $item = dba::fetch_first("SELECT `item`.`id`, `user`.`nickname` FROM `item`
+                       $item = DBA::fetch_first("SELECT `item`.`id`, `user`.`nickname` FROM `item`
                                INNER JOIN `user` ON `user`.`uid` = `item`.`uid`
                                WHERE `item`.`visible` AND NOT `item`.`deleted` AND NOT `item`.`moderated`
                                        AND `item`.`guid` = ? AND `item`.`uid` = ?", $guid, $uid);
@@ -2428,7 +2428,7 @@ class Item extends BaseObject
 
                // Or is it anywhere on the server?
                if ($nick == "") {
-                       $item = dba::fetch_first("SELECT `item`.`id`, `user`.`nickname` FROM `item`
+                       $item = DBA::fetch_first("SELECT `item`.`id`, `user`.`nickname` FROM `item`
                                INNER JOIN `user` ON `user`.`uid` = `item`.`uid`
                                WHERE `item`.`visible` AND NOT `item`.`deleted` AND NOT `item`.`moderated`
                                        AND NOT `item`.`private` AND `item`.`wall`
@@ -2451,7 +2451,7 @@ class Item extends BaseObject
        {
                $mention = false;
 
-               $user = dba::selectFirst('user', [], ['uid' => $uid]);
+               $user = DBA::selectFirst('user', [], ['uid' => $uid]);
                if (!DBM::is_result($user)) {
                        return;
                }
@@ -2488,7 +2488,7 @@ class Item extends BaseObject
                                // mmh.. no mention.. community page or private group... no wall.. no origin.. top-post (not a comment)
                                // delete it!
                                logger("no-mention top-level post to community or private group. delete.");
-                               dba::delete('item', ['id' => $item_id]);
+                               DBA::delete('item', ['id' => $item_id]);
                                return true;
                        }
                        return;
@@ -2512,7 +2512,7 @@ class Item extends BaseObject
                }
 
                // now change this copy of the post to a forum head message and deliver to all the tgroup members
-               $self = dba::selectFirst('contact', ['id', 'name', 'url', 'thumb'], ['uid' => $uid, 'self' => true]);
+               $self = DBA::selectFirst('contact', ['id', 'name', 'url', 'thumb'], ['uid' => $uid, 'self' => true]);
                if (!DBM::is_result($self)) {
                        return;
                }
@@ -2528,7 +2528,7 @@ class Item extends BaseObject
                $fields = ['wall' => true, 'origin' => true, 'forum_mode' => $forum_mode, 'contact-id' => $self['id'],
                        'owner-id' => $owner_id, 'owner-link' => $self['url'], 'private' => $private, 'allow_cid' => $user['allow_cid'],
                        'allow_gid' => $user['allow_gid'], 'deny_cid' => $user['deny_cid'], 'deny_gid' => $user['deny_gid']];
-               dba::update('item', $fields, ['id' => $item_id]);
+               DBA::update('item', $fields, ['id' => $item_id]);
 
                self::updateThread($item_id);
 
@@ -2569,7 +2569,7 @@ class Item extends BaseObject
                $datarray2 = $datarray;
                logger('remote-self start - Contact '.$contact['url'].' - '.$contact['remote_self'].' Item '.print_r($datarray, true), LOGGER_DEBUG);
                if ($contact['remote_self'] == 2) {
-                       $self = dba::selectFirst('contact', ['id', 'name', 'url', 'thumb'],
+                       $self = DBA::selectFirst('contact', ['id', 'name', 'url', 'thumb'],
                                        ['uid' => $contact['uid'], 'self' => true]);
                        if (DBM::is_result($self)) {
                                $datarray['contact-id'] = $self["id"];
@@ -2664,7 +2664,7 @@ class Item extends BaseObject
                                        $res = substr($i, $x + 1);
                                        $i = substr($i, 0, $x);
                                        $fields = ['data', 'type', 'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid'];
-                                       $photo = dba::selectFirst('photo', $fields, ['resource-id' => $i, 'scale' => $res, 'uid' => $uid]);
+                                       $photo = DBA::selectFirst('photo', $fields, ['resource-id' => $i, 'scale' => $res, 'uid' => $uid]);
                                        if (DBM::is_result($photo)) {
                                                /*
                                                 * Check to see if we should replace this photo link with an embedded image
@@ -2870,7 +2870,7 @@ class Item extends BaseObject
 
                        ++$expired;
                }
-               dba::close($items);
+               DBA::close($items);
                logger('User ' . $uid . ": expired $expired items; expire items: $expire_items, expire notes: $expire_notes, expire starred: $expire_starred, expire photos: $expire_photos");
        }
 
@@ -2878,7 +2878,7 @@ class Item extends BaseObject
        {
                $condition = ['uid' => $uid, 'wall' => $wall, 'deleted' => false, 'visible' => true, 'moderated' => false];
                $params = ['order' => ['created' => false]];
-               $thread = dba::selectFirst('thread', ['created'], $condition, $params);
+               $thread = DBA::selectFirst('thread', ['created'], $condition, $params);
                if (DBM::is_result($thread)) {
                        return substr(DateTimeFormat::local($thread['created']), 0, 10);
                }
@@ -2955,7 +2955,7 @@ class Item extends BaseObject
                }
 
                // Retrieves the local post owner
-               $owner_self_contact = dba::selectFirst('contact', [], ['uid' => $uid, 'self' => true]);
+               $owner_self_contact = DBA::selectFirst('contact', [], ['uid' => $uid, 'self' => true]);
                if (!DBM::is_result($owner_self_contact)) {
                        logger('like: unknown owner ' . $uid);
                        return false;
@@ -2964,7 +2964,7 @@ class Item extends BaseObject
                // Retrieve the current logged in user's public contact
                $author_id = public_contact();
 
-               $author_contact = dba::selectFirst('contact', ['url'], ['id' => $author_id]);
+               $author_contact = DBA::selectFirst('contact', ['url'], ['id' => $author_id]);
                if (!DBM::is_result($author_contact)) {
                        logger('like: unknown author ' . $author_id);
                        return false;
@@ -2976,7 +2976,7 @@ class Item extends BaseObject
                        $item_contact = $owner_self_contact;
                } else {
                        $item_contact_id = Contact::getIdForURL($author_contact['url'], $uid, true);
-                       $item_contact = dba::selectFirst('contact', [], ['id' => $item_contact_id]);
+                       $item_contact = DBA::selectFirst('contact', [], ['id' => $item_contact_id]);
                        if (!DBM::is_result($item_contact)) {
                                logger('like: unknown item contact ' . $item_contact_id);
                                return false;
@@ -3008,10 +3008,10 @@ class Item extends BaseObject
                        // Already voted, undo it
                        $fields = ['deleted' => true, 'unseen' => true, 'changed' => DateTimeFormat::utcNow()];
                        /// @todo Consider using self::update - but before doing so, check the side effects
-                       dba::update('item', $fields, ['id' => $like_item['id']]);
+                       DBA::update('item', $fields, ['id' => $like_item['id']]);
 
                        // Clean up the Diaspora signatures for this like
-                       dba::delete('sign', ['iid' => $like_item['id']]);
+                       DBA::delete('sign', ['iid' => $like_item['id']]);
 
                        Worker::add(PRIORITY_HIGH, "Notifier", "like", $like_item['id']);
 
@@ -3086,7 +3086,7 @@ class Item extends BaseObject
                $item['iid'] = $itemid;
 
                if (!$onlyshadow) {
-                       $result = dba::insert('thread', $item);
+                       $result = DBA::insert('thread', $item);
 
                        logger("Add thread for item ".$itemid." - ".print_r($result, true), LOGGER_DEBUG);
                }
@@ -3118,28 +3118,28 @@ class Item extends BaseObject
                        }
                }
 
-               $result = dba::update('thread', $fields, ['iid' => $itemid]);
+               $result = DBA::update('thread', $fields, ['iid' => $itemid]);
 
                logger("Update thread for item ".$itemid." - guid ".$item["guid"]." - ".(int)$result, LOGGER_DEBUG);
        }
 
        private static function deleteThread($itemid, $itemuri = "")
        {
-               $item = dba::selectFirst('thread', ['uid'], ['iid' => $itemid]);
+               $item = DBA::selectFirst('thread', ['uid'], ['iid' => $itemid]);
                if (!DBM::is_result($item)) {
                        logger('No thread found for id '.$itemid, LOGGER_DEBUG);
                        return;
                }
 
                // Using dba::delete at this time could delete the associated item entries
-               $result = dba::e("DELETE FROM `thread` WHERE `iid` = ?", $itemid);
+               $result = DBA::e("DELETE FROM `thread` WHERE `iid` = ?", $itemid);
 
                logger("deleteThread: Deleted thread for item ".$itemid." - ".print_r($result, true), LOGGER_DEBUG);
 
                if ($itemuri != "") {
                        $condition = ["`uri` = ? AND NOT `deleted` AND NOT (`uid` IN (?, 0))", $itemuri, $item["uid"]];
                        if (!self::exists($condition)) {
-                               dba::delete('item', ['uri' => $itemuri, 'uid' => 0]);
+                               DBA::delete('item', ['uri' => $itemuri, 'uid' => 0]);
                                logger("deleteThread: Deleted shadow for item ".$itemuri, LOGGER_DEBUG);
                        }
                }