]> git.mxchange.org Git - friendica.git/blobdiff - static/dbview.config.php
Merge pull request #13227 from BirdboyBolu/develop
[friendica.git] / static / dbview.config.php
index 66f3de3b63f556ee2e3f81a5064b156c70d1ca22..004063a4185d293e0a3eac4547fdc4cb2ccd6e66 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2022, the Friendica project
+ * @copyright Copyright (C) 2010-2023, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -63,7 +63,7 @@
                        "id" => ["post-user", "id"],
                        "post-user-id" => ["post-user", "id"],
                        "uid" => ["post-user", "uid"],
-                       "parent" => ["parent-post", "id"],
+                       "parent" => ["post-thread-user", "post-user-id"],
                        "uri" => ["item-uri", "uri"],
                        "uri-id" => ["post-user", "uri-id"],
                        "parent-uri" => ["parent-item-uri", "uri"],
                        "author-addr" => ["author", "addr"],
                        "author-name" => "IF (`contact`.`url` = `author`.`url` AND `contact`.`name` != '', `contact`.`name`, `author`.`name`)",
                        "author-nick" => ["author", "nick"],
+                       "author-alias" => ["author", "alias"],
                        "author-avatar" => "IF (`contact`.`url` = `author`.`url` AND `contact`.`thumb` != '', `contact`.`thumb`, `author`.`thumb`)",
                        "author-network" => ["author", "network"],
                        "author-blocked" => ["author", "blocked"],
                        "author-hidden" => ["author", "hidden"],
                        "author-updated" => ["author", "updated"],
                        "author-gsid" => ["author", "gsid"],
-                       "author-uri-id" => ["author", "uri-id"],
                        "owner-id" => ["post-user", "owner-id"],
                        "owner-uri-id" => ["owner", "uri-id"],
                        "owner-link" => ["owner", "url"],
                        "owner-addr" => ["owner", "addr"],
                        "owner-name" => "IF (`contact`.`url` = `owner`.`url` AND `contact`.`name` != '', `contact`.`name`, `owner`.`name`)",
                        "owner-nick" => ["owner", "nick"],
+                       "owner-alias" => ["owner", "alias"],
                        "owner-avatar" => "IF (`contact`.`url` = `owner`.`url` AND `contact`.`thumb` != '', `contact`.`thumb`, `owner`.`thumb`)",
                        "owner-network" => ["owner", "network"],
                        "owner-blocked" => ["owner", "blocked"],
                        "causer-addr" => ["causer", "addr"],
                        "causer-name" => ["causer", "name"],
                        "causer-nick" => ["causer", "nick"],
+                       "causer-alias" => ["causer", "alias"],
                        "causer-avatar" => ["causer", "thumb"],
                        "causer-network" => ["causer", "network"],
                        "causer-blocked" => ["causer", "blocked"],
                        "has-media" => "EXISTS(SELECT `id` FROM `post-media` WHERE `post-media`.`uri-id` = `post-user`.`uri-id`)",
                        "signed_text" => ["diaspora-interaction", "interaction"],
                        "parent-guid" => ["parent-item-uri", "guid"],
-                       "parent-network" => ["parent-post", "network"],
-                       "parent-author-id" => ["parent-post", "author-id"],
+                       "parent-network" => ["post-thread-user", "network"],
+                       "parent-author-id" => ["post-thread-user", "author-id"],
                        "parent-author-link" => ["parent-post-author", "url"],
                        "parent-author-name" => ["parent-post-author", "name"],
                        "parent-author-nick" => ["parent-post-author", "nick"],
                        "parent-author-network" => ["parent-post-author", "network"],
                ],
                "query" => "FROM `post-user`
-                       STRAIGHT_JOIN `post-thread-user` ON `post-thread-user`.`uri-id` = `post-user`.`parent-uri-id` AND `post-thread-user`.`uid` = `post-user`.`uid`
+                       INNER JOIN `post-thread-user` ON `post-thread-user`.`uri-id` = `post-user`.`parent-uri-id` AND `post-thread-user`.`uid` = `post-user`.`uid`
                        STRAIGHT_JOIN `contact` ON `contact`.`id` = `post-user`.`contact-id`
                        STRAIGHT_JOIN `contact` AS `author` ON `author`.`id` = `post-user`.`author-id`
                        STRAIGHT_JOIN `contact` AS `owner` ON `owner`.`id` = `post-user`.`owner-id`
                        LEFT JOIN `post-delivery-data` ON `post-delivery-data`.`uri-id` = `post-user`.`uri-id` AND `post-user`.`origin`
                        LEFT JOIN `post-question` ON `post-question`.`uri-id` = `post-user`.`uri-id`
                        LEFT JOIN `permissionset` ON `permissionset`.`id` = `post-user`.`psid`
-                       LEFT JOIN `post-user` AS `parent-post` ON `parent-post`.`uri-id` = `post-user`.`parent-uri-id` AND `parent-post`.`uid` = `post-user`.`uid`
-                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `parent-post`.`author-id`"
+                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `post-thread-user`.`author-id`"
        ],
        "post-thread-user-view" => [
                "fields" => [
                        "id" => ["post-user", "id"],
                        "post-user-id" => ["post-user", "id"],
                        "uid" => ["post-thread-user", "uid"],
-                       "parent" => ["parent-post", "id"],
+                       "parent" => ["post-thread-user", "post-user-id"],
                        "uri" => ["item-uri", "uri"],
                        "uri-id" => ["post-thread-user", "uri-id"],
                        "parent-uri" => ["parent-item-uri", "uri"],
                        "author-addr" => ["author", "addr"],
                        "author-name" => "IF (`contact`.`url` = `author`.`url` AND `contact`.`name` != '', `contact`.`name`, `author`.`name`)",
                        "author-nick" => ["author", "nick"],
+                       "author-alias" => ["author", "alias"],
                        "author-avatar" => "IF (`contact`.`url` = `author`.`url` AND `contact`.`thumb` != '', `contact`.`thumb`, `author`.`thumb`)",
                        "author-network" => ["author", "network"],
                        "author-blocked" => ["author", "blocked"],
                        "author-hidden" => ["author", "hidden"],
                        "author-updated" => ["author", "updated"],
                        "author-gsid" => ["author", "gsid"],
-                       "author-uri-id" => ["author", "uri-id"],
                        "owner-id" => ["post-thread-user", "owner-id"],
                        "owner-uri-id" => ["owner", "uri-id"],
                        "owner-link" => ["owner", "url"],
                        "owner-addr" => ["owner", "addr"],
                        "owner-name" => "IF (`contact`.`url` = `owner`.`url` AND `contact`.`name` != '', `contact`.`name`, `owner`.`name`)",
                        "owner-nick" => ["owner", "nick"],
+                       "owner-alias" => ["owner", "alias"],
                        "owner-avatar" => "IF (`contact`.`url` = `owner`.`url` AND `contact`.`thumb` != '', `contact`.`thumb`, `owner`.`thumb`)",
                        "owner-network" => ["owner", "network"],
                        "owner-blocked" => ["owner", "blocked"],
                        "causer-addr" => ["causer", "addr"],
                        "causer-name" => ["causer", "name"],
                        "causer-nick" => ["causer", "nick"],
+                       "causer-alias" => ["causer", "alias"],
                        "causer-avatar" => ["causer", "thumb"],
                        "causer-network" => ["causer", "network"],
                        "causer-blocked" => ["causer", "blocked"],
                        "has-media" => "EXISTS(SELECT `id` FROM `post-media` WHERE `post-media`.`uri-id` = `post-thread-user`.`uri-id`)",
                        "signed_text" => ["diaspora-interaction", "interaction"],
                        "parent-guid" => ["parent-item-uri", "guid"],
-                       "parent-network" => ["parent-post", "network"],
-                       "parent-author-id" => ["parent-post", "author-id"],
-                       "parent-author-link" => ["parent-post-author", "url"],
-                       "parent-author-name" => ["parent-post-author", "name"],
-                       "parent-author-network" => ["parent-post-author", "network"],
+                       "parent-network" => ["post-thread-user", "network"],
+                       "parent-author-id" => ["post-thread-user", "author-id"],
+                       "parent-author-link" => ["author", "url"],
+                       "parent-author-name" => ["author", "name"],
+                       "parent-author-nick" => ["author", "nick"],
+                       "parent-author-network" => ["author", "network"],
                ],
                "query" => "FROM `post-thread-user`
                        INNER JOIN `post-user` ON `post-user`.`id` = `post-thread-user`.`post-user-id`
                        LEFT JOIN `item-uri` AS `quote-item-uri` ON `quote-item-uri`.`id` = `post-content`.`quote-uri-id`
                        LEFT JOIN `post-delivery-data` ON `post-delivery-data`.`uri-id` = `post-thread-user`.`uri-id` AND `post-thread-user`.`origin`
                        LEFT JOIN `post-question` ON `post-question`.`uri-id` = `post-thread-user`.`uri-id`
-                       LEFT JOIN `permissionset` ON `permissionset`.`id` = `post-thread-user`.`psid`
-                       LEFT JOIN `post-user` AS `parent-post` ON `parent-post`.`uri-id` = `post-user`.`parent-uri-id` AND `parent-post`.`uid` = `post-thread-user`.`uid`
-                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `parent-post`.`author-id`"
+                       LEFT JOIN `permissionset` ON `permissionset`.`id` = `post-thread-user`.`psid`"
        ],
        "post-view" => [
                "fields" => [
                        "author-addr" => ["author", "addr"],
                        "author-name" => ["author", "name"],
                        "author-nick" => ["author", "nick"],
+                       "author-alias" => ["author", "alias"],
                        "author-avatar" => ["author", "thumb"],
                        "author-network" => ["author", "network"],
                        "author-blocked" => ["author", "blocked"],
                        "author-hidden" => ["author", "hidden"],
                        "author-updated" => ["author", "updated"],
                        "author-gsid" => ["author", "gsid"],
-                       "author-uri-id" => ["author", "uri-id"],
                        "owner-id" => ["post", "owner-id"],
                        "owner-uri-id" => ["owner", "uri-id"],
                        "owner-link" => ["owner", "url"],
                        "owner-addr" => ["owner", "addr"],
                        "owner-name" => ["owner", "name"],
                        "owner-nick" => ["owner", "nick"],
+                       "owner-alias" => ["owner", "alias"],
                        "owner-avatar" => ["owner", "thumb"],
                        "owner-network" => ["owner", "network"],
                        "owner-blocked" => ["owner", "blocked"],
                        "causer-addr" => ["causer", "addr"],
                        "causer-name" => ["causer", "name"],
                        "causer-nick" => ["causer", "nick"],
+                       "causer-alias" => ["causer", "alias"],
                        "causer-avatar" => ["causer", "thumb"],
                        "causer-network" => ["causer", "network"],
                        "causer-blocked" => ["causer", "blocked"],
                        "has-media" => "EXISTS(SELECT `id` FROM `post-media` WHERE `post-media`.`uri-id` = `post`.`uri-id`)",
                        "signed_text" => ["diaspora-interaction", "interaction"],
                        "parent-guid" => ["parent-item-uri", "guid"],
-                       "parent-network" => ["parent-post", "network"],
-                       "parent-author-id" => ["parent-post", "author-id"],
+                       "parent-network" => ["post-thread", "network"],
+                       "parent-author-id" => ["post-thread", "author-id"],
                        "parent-author-link" => ["parent-post-author", "url"],
                        "parent-author-name" => ["parent-post-author", "name"],
+                       "parent-author-nick" => ["parent-post-author", "nick"],
                        "parent-author-network" => ["parent-post-author", "network"],
                ],
                "query" => "FROM `post`
                        LEFT JOIN `post-content` ON `post-content`.`uri-id` = `post`.`uri-id`
                        LEFT JOIN `item-uri` AS `quote-item-uri` ON `quote-item-uri`.`id` = `post-content`.`quote-uri-id`
                        LEFT JOIN `post-question` ON `post-question`.`uri-id` = `post`.`uri-id`
-                       LEFT JOIN `post` AS `parent-post` ON `parent-post`.`uri-id` = `post`.`parent-uri-id`
-                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `parent-post`.`author-id`"
+                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `post-thread`.`author-id`"
        ],
        "post-thread-view" => [
                "fields" => [
                        "author-addr" => ["author", "addr"],
                        "author-name" => ["author", "name"],
                        "author-nick" => ["author", "nick"],
+                       "author-alias" => ["author", "alias"],
                        "author-avatar" => ["author", "thumb"],
                        "author-network" => ["author", "network"],
                        "author-blocked" => ["author", "blocked"],
                        "author-hidden" => ["author", "hidden"],
                        "author-updated" => ["author", "updated"],
                        "author-gsid" => ["author", "gsid"],
-                       "author-uri-id" => ["author", "uri-id"],
                        "owner-id" => ["post-thread", "owner-id"],
                        "owner-uri-id" => ["owner", "uri-id"],
                        "owner-link" => ["owner", "url"],
                        "owner-addr" => ["owner", "addr"],
                        "owner-name" => ["owner", "name"],
                        "owner-nick" => ["owner", "nick"],
+                       "owner-alias" => ["owner", "alias"],
                        "owner-avatar" => ["owner", "thumb"],
                        "owner-network" => ["owner", "network"],
                        "owner-blocked" => ["owner", "blocked"],
                        "causer-addr" => ["causer", "addr"],
                        "causer-name" => ["causer", "name"],
                        "causer-nick" => ["causer", "nick"],
+                       "causer-alias" => ["causer", "alias"],
                        "causer-avatar" => ["causer", "thumb"],
                        "causer-network" => ["causer", "network"],
                        "causer-blocked" => ["causer", "blocked"],
                        "total-actors" => "(SELECT COUNT(DISTINCT(`author-id`)) FROM `post` WHERE `parent-uri-id` = `post-thread`.`uri-id` AND `gravity` = 6)",
                        "signed_text" => ["diaspora-interaction", "interaction"],
                        "parent-guid" => ["parent-item-uri", "guid"],
-                       "parent-network" => ["parent-post", "network"],
-                       "parent-author-id" => ["parent-post", "author-id"],
-                       "parent-author-link" => ["parent-post-author", "url"],
-                       "parent-author-name" => ["parent-post-author", "name"],
-                       "parent-author-network" => ["parent-post-author", "network"],
+                       "parent-network" => ["post-thread", "network"],
+                       "parent-author-id" => ["post-thread", "author-id"],
+                       "parent-author-link" => ["author", "url"],
+                       "parent-author-name" => ["author", "name"],
+                       "parent-author-nick" => ["author", "nick"],
+                       "parent-author-network" => ["author", "network"],
                ],
                "query" => "FROM `post-thread`
                        INNER JOIN `post` ON `post`.`uri-id` = `post-thread`.`uri-id`
                        LEFT JOIN `diaspora-interaction` ON `diaspora-interaction`.`uri-id` = `post-thread`.`uri-id`
                        LEFT JOIN `post-content` ON `post-content`.`uri-id` = `post-thread`.`uri-id`
                        LEFT JOIN `item-uri` AS `quote-item-uri` ON `quote-item-uri`.`id` = `post-content`.`quote-uri-id`
-                       LEFT JOIN `post-question` ON `post-question`.`uri-id` = `post-thread`.`uri-id`
-                       LEFT JOIN `post` AS `parent-post` ON `parent-post`.`uri-id` = `post`.`parent-uri-id`
-                       LEFT JOIN `contact` AS `parent-post-author` ON `parent-post-author`.`id` = `parent-post`.`author-id`"
+                       LEFT JOIN `post-question` ON `post-question`.`uri-id` = `post-thread`.`uri-id`"
        ],
        "category-view" => [
                "fields" => [
        "network-item-view" => [
                "fields" => [
                        "uri-id" => ["post-user", "uri-id"],
-                       "parent" => ["parent-post", "id"],
+                       "parent" => ["post-thread-user", "post-user-id"],
                        "received" => ["post-user", "received"],
                        "commented" => ["post-thread-user", "commented"],
                        "created" => ["post-user", "created"],
                        "contact-type" => ["ownercontact", "contact-type"],
                ],
                "query" => "FROM `post-user`
-                       STRAIGHT_JOIN `post-thread-user` ON `post-thread-user`.`uri-id` = `post-user`.`parent-uri-id` AND `post-thread-user`.`uid` = `post-user`.`uid`                  
+                       INNER JOIN `post-thread-user` ON `post-thread-user`.`uri-id` = `post-user`.`parent-uri-id` AND `post-thread-user`.`uid` = `post-user`.`uid`                     
                        INNER JOIN `contact` ON `contact`.`id` = `post-thread-user`.`contact-id`
                        LEFT JOIN `user-contact` AS `author` ON `author`.`uid` = `post-thread-user`.`uid` AND `author`.`cid` = `post-thread-user`.`author-id`
                        LEFT JOIN `user-contact` AS `owner` ON `owner`.`uid` = `post-thread-user`.`uid` AND `owner`.`cid` = `post-thread-user`.`owner-id`
                        INNER JOIN `contact` AS `ownercontact` ON `ownercontact`.`id` = `post-thread-user`.`owner-id`
-                       LEFT JOIN `post-user` AS `parent-post` ON `parent-post`.`uri-id` = `post-user`.`parent-uri-id` AND `parent-post`.`uid` = `post-user`.`uid`
                        WHERE `post-user`.`visible` AND NOT `post-user`.`deleted`
                        AND (NOT `contact`.`readonly` AND NOT `contact`.`blocked` AND NOT `contact`.`pending`)
                        AND (`post-user`.`hidden` IS NULL OR NOT `post-user`.`hidden`)
        "network-thread-view" => [
                "fields" => [
                        "uri-id" => ["post-thread-user", "uri-id"],
-                       "parent" => ["parent-post", "id"],
+                       "parent" => ["post-thread-user", "post-user-id"],
                        "received" => ["post-thread-user", "received"],
                        "commented" => ["post-thread-user", "commented"],
                        "created" => ["post-thread-user", "created"],
                        LEFT JOIN `user-contact` AS `author` ON `author`.`uid` = `post-thread-user`.`uid` AND `author`.`cid` = `post-thread-user`.`author-id`
                        LEFT JOIN `user-contact` AS `owner` ON `owner`.`uid` = `post-thread-user`.`uid` AND `owner`.`cid` = `post-thread-user`.`owner-id`
                        LEFT JOIN `contact` AS `ownercontact` ON `ownercontact`.`id` = `post-thread-user`.`owner-id`
-                       LEFT JOIN `post-user` AS `parent-post` ON `parent-post`.`uri-id` = `post-user`.`parent-uri-id` AND `parent-post`.`uid` = `post-user`.`uid`
                        WHERE `post-user`.`visible` AND NOT `post-user`.`deleted`
                        AND (NOT `contact`.`readonly` AND NOT `contact`.`blocked` AND NOT `contact`.`pending`)
                        AND (`post-thread-user`.`hidden` IS NULL OR NOT `post-thread-user`.`hidden`)
                        "blocked" => ["contact", "blocked"],
                        "dfrn-notify" => ["contact", "notify"],
                        "dfrn-poll" => ["contact", "poll"],
-                       "diaspora-guid" => ["fcontact", "guid"],
-                       "diaspora-batch" => ["fcontact", "batch"],
-                       "diaspora-notify" => ["fcontact", "notify"],
-                       "diaspora-poll" => ["fcontact", "poll"],
-                       "diaspora-alias" => ["fcontact", "alias"],
+                       "diaspora-guid" => ["item-uri", "guid"],
+                       "diaspora-batch" => ["diaspora-contact", "batch"],
+                       "diaspora-notify" => ["diaspora-contact", "notify"],
+                       "diaspora-poll" => ["diaspora-contact", "poll"],
+                       "diaspora-alias" => ["diaspora-contact", "alias"],
                        "ap-uuid" => ["apcontact", "uuid"],
                        "ap-type" => ["apcontact", "type"],
                        "ap-following" => ["apcontact", "following"],
                        "site_name" => ["gserver", "site_name"],
                        "platform" => ["gserver", "platform"],
                        "version" => ["gserver", "version"],
+                       "server-blocked" => ["gserver", "blocked"],
+                       "server-failed" => ["gserver", "failed"],
                ],
                "query" => "FROM `contact`
                        LEFT JOIN `item-uri` ON `item-uri`.`id` = `contact`.`uri-id`
                        LEFT JOIN `apcontact` ON `apcontact`.`uri-id` = `contact`.`uri-id`
-                       LEFT JOIN `fcontact` ON `fcontact`.`uri-id` = contact.`uri-id`
+                       LEFT JOIN `diaspora-contact` ON `diaspora-contact`.`uri-id` = contact.`uri-id`
                        LEFT JOIN `gserver` ON `gserver`.`id` = contact.`gsid`
-                       WHERE `contact`.`uid` = 0"                      
+                       WHERE `contact`.`uid` = 0"
        ],
        "account-user-view" => [
                "fields" => [
                        "reason" => ["ucontact", "reason"],
                        "dfrn-notify" => ["contact", "notify"],
                        "dfrn-poll" => ["contact", "poll"],
-                       "diaspora-guid" => ["fcontact", "guid"],
-                       "diaspora-batch" => ["fcontact", "batch"],
-                       "diaspora-notify" => ["fcontact", "notify"],
-                       "diaspora-poll" => ["fcontact", "poll"],
-                       "diaspora-alias" => ["fcontact", "alias"],
-                       "diaspora-interacting_count" => ["fcontact", "interacting_count"],
-                       "diaspora-interacted_count" => ["fcontact", "interacted_count"],
-                       "diaspora-post_count" => ["fcontact", "post_count"],
+                       "diaspora-guid" => ["item-uri", "guid"],
+                       "diaspora-batch" => ["diaspora-contact", "batch"],
+                       "diaspora-notify" => ["diaspora-contact", "notify"],
+                       "diaspora-poll" => ["diaspora-contact", "poll"],
+                       "diaspora-alias" => ["diaspora-contact", "alias"],
+                       "diaspora-interacting_count" => ["diaspora-contact", "interacting_count"],
+                       "diaspora-interacted_count" => ["diaspora-contact", "interacted_count"],
+                       "diaspora-post_count" => ["diaspora-contact", "post_count"],
                        "ap-uuid" => ["apcontact", "uuid"],
                        "ap-type" => ["apcontact", "type"],
                        "ap-following" => ["apcontact", "following"],
                        "site_name" => ["gserver", "site_name"],
                        "platform" => ["gserver", "platform"],
                        "version" => ["gserver", "version"],
+                       "server-blocked" => ["gserver", "blocked"],
+                       "server-failed" => ["gserver", "failed"],
                ],
                "query" => "FROM `contact` AS `ucontact`
                        INNER JOIN `contact` ON `contact`.`uri-id` = `ucontact`.`uri-id` AND `contact`.`uid` = 0
                        LEFT JOIN `item-uri` ON `item-uri`.`id` = `ucontact`.`uri-id`
                        LEFT JOIN `apcontact` ON `apcontact`.`uri-id` = `ucontact`.`uri-id`
-                       LEFT JOIN `fcontact` ON `fcontact`.`uri-id` = `ucontact`.`uri-id` AND `fcontact`.`network` = 'dspr'
+                       LEFT JOIN `diaspora-contact` ON `diaspora-contact`.`uri-id` = `ucontact`.`uri-id`
                        LEFT JOIN `gserver` ON `gserver`.`id` = contact.`gsid`"
        ],
        "pending-view" => [
                "query" => "FROM `profile_field`
                        INNER JOIN `permissionset` ON `permissionset`.`id` = `profile_field`.`psid`"
        ],
+       "diaspora-contact-view" => [
+               "fields" => [
+                       "uri-id" => ["diaspora-contact", "uri-id"],
+                       "url" => ["item-uri", "uri"],
+                       "guid" => ["item-uri", "guid"],
+                       "addr" => ["diaspora-contact", "addr"],
+                       "alias" => ["diaspora-contact", "alias"],
+                       "nick" => ["diaspora-contact", "nick"],
+                       "name" => ["diaspora-contact", "name"],
+                       "given-name" => ["diaspora-contact", "given-name"],
+                       "family-name" => ["diaspora-contact", "family-name"],
+                       "photo" => ["diaspora-contact", "photo"],
+                       "photo-medium" => ["diaspora-contact", "photo-medium"],
+                       "photo-small" => ["diaspora-contact", "photo-small"],
+                       "batch" => ["diaspora-contact", "batch"],
+                       "notify" => ["diaspora-contact", "notify"],
+                       "poll" => ["diaspora-contact", "poll"],
+                       "subscribe" => ["diaspora-contact", "subscribe"],
+                       "searchable" => ["diaspora-contact", "searchable"],
+                       "pubkey" => ["diaspora-contact", "pubkey"],
+                       "baseurl" => ["gserver", "url"],
+                       "gsid" => ["diaspora-contact", "gsid"],
+                       "created" => ["diaspora-contact", "created"],
+                       "updated" => ["diaspora-contact", "updated"],
+                       "interacting_count" => ["diaspora-contact", "interacting_count"],
+                       "interacted_count" => ["diaspora-contact", "interacted_count"],
+                       "post_count" => ["diaspora-contact", "post_count"],
+               ],
+               "query" => "FROM `diaspora-contact`
+                       INNER JOIN `item-uri` ON `item-uri`.`id` = `diaspora-contact`.`uri-id`
+                       LEFT JOIN `gserver` ON `gserver`.`id` = `diaspora-contact`.`gsid`"
+       ],
 ];
-