2018-10-21 07:56:58 +02:00
< ? php
2020-02-09 16:34:23 +01:00
/**
2023-01-01 08:52:28 +01:00
* @ copyright Copyright ( C ) 2010 - 2023 , the Friendica project
2020-02-09 16:34:23 +01:00
*
* @ license GNU AGPL version 3 or any later version
*
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation , either version 3 of the
* License , or ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU Affero General Public License for more details .
*
* You should have received a copy of the GNU Affero General Public License
* along with this program . If not , see < https :// www . gnu . org / licenses />.
*
* Main database structure configuration file .
2018-10-21 07:56:58 +02:00
*
* Here are described all the tables , fields and indexes Friendica needs to work .
2020-11-18 00:45:16 +01:00
* The entry order is mostly alphabetic - with the exception of tables that are used in foreign keys .
2018-10-21 07:56:58 +02:00
*
* Syntax ( braces indicate optionale values ) :
* " <table name> " => [
* " comment " => " Description of the table " ,
* " fields " => [
* " <field name> " => [
* " type " => " <field type> { (<field size>)} <unsigned> " ,
* " not null " => 0 | 1 ,
* { " extra " => " auto_increment " ,}
* { " default " => " <default value> " ,}
* { " default " => NULL_DATE ,} ( for datetime fields )
* { " primary " => " 1 " ,}
2020-05-10 16:55:03 +02:00
* { " foreign|relation " => [ " <foreign key table name> " => " <foreign key field name> " ],}
2018-10-21 07:56:58 +02:00
* " comment " => " Description of the fields "
* ],
* ...
* ],
* " indexes " => [
* " PRIMARY " => [ " <primary key field name> " , ... ],
* " <index name> " => [{ " UNIQUE " ,} " <field name> { (<key size>)} " , ... ]
* ...
* ],
* ],
*
2020-05-10 16:55:03 +02:00
* Whenever possible prefer " foreign " before " relation " with the foreign keys .
2021-02-25 06:13:49 +01:00
* " foreign " adds true foreign keys on the database level , while " relation " is just an indicator of a table relation without any consequences
2020-05-10 16:55:03 +02:00
*
2018-10-21 07:58:10 +02:00
* If you need to make any change , make sure to increment the DB_UPDATE_VERSION constant value below .
2018-10-21 07:56:58 +02:00
*
*/
use Friendica\Database\DBA ;
2023-05-28 00:19:41 +02:00
// This file is required several times during the test in DbaDefinition which justifies this condition
2018-10-21 07:58:10 +02:00
if ( ! defined ( 'DB_UPDATE_VERSION' )) {
2023-08-11 01:04:08 +02:00
define ( 'DB_UPDATE_VERSION' , 1525 );
2018-10-21 07:58:10 +02:00
}
2018-10-21 07:56:58 +02:00
return [
2020-05-15 14:17:13 +02:00
// Side tables
2020-05-22 07:06:55 +02:00
" gserver " => [
" comment " => " Global servers " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" nurl " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-05-22 07:06:55 +02:00
" version " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" site_name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" info " => [ " type " => " text " , " comment " => " " ],
" register_policy " => [ " type " => " tinyint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" registered-users " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of registered users " ],
2022-02-06 21:03:19 +01:00
" active-week-users " => [ " type " => " int unsigned " , " comment " => " Number of active users in the last week " ],
" active-month-users " => [ " type " => " int unsigned " , " comment " => " Number of active users in the last month " ],
" active-halfyear-users " => [ " type " => " int unsigned " , " comment " => " Number of active users in the last six month " ],
" local-posts " => [ " type " => " int unsigned " , " comment " => " Number of local posts " ],
" local-comments " => [ " type " => " int unsigned " , " comment " => " Number of local comments " ],
2020-05-22 07:06:55 +02:00
" directory-type " => [ " type " => " tinyint " , " default " => " 0 " , " comment " => " Type of directory service (Poco, Mastodon) " ],
2022-09-04 09:54:01 +02:00
" poco " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" noscrape " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-05-22 07:06:55 +02:00
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-01-09 20:18:22 +01:00
" protocol " => [ " type " => " tinyint unsigned " , " comment " => " The protocol of the server " ],
2020-05-22 07:06:55 +02:00
" platform " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" relay-subscribe " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Has the server subscribed to the relay system " ],
" relay-scope " => [ " type " => " varchar(10) " , " not null " => " 1 " , " default " => " " , " comment " => " The scope of messages that the server wants to get " ],
" detection-method " => [ " type " => " tinyint unsigned " , " comment " => " Method that had been used to detect that server " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" last_poco_query " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2020-12-03 16:47:50 +01:00
" last_contact " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " Last successful connection request " ],
" last_failure " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " Last failed connection request " ],
2023-01-17 18:25:19 +01:00
" blocked " => [ " type " => " boolean " , " comment " => " Server is blocked " ],
2020-07-19 03:15:57 +02:00
" failed " => [ " type " => " boolean " , " comment " => " Connection failed " ],
2020-12-03 16:47:50 +01:00
" next_contact " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " Next connection request " ],
2020-05-22 07:06:55 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" nurl " => [ " UNIQUE " , " nurl(190) " ],
2020-12-03 16:47:50 +01:00
" next_contact " => [ " next_contact " ],
2021-02-21 17:43:06 +01:00
" network " => [ " network " ],
2020-05-22 07:06:55 +02:00
]
],
2020-11-17 23:49:55 +01:00
" user " => [
" comment " => " The local users " ,
" fields " => [
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2021-10-04 08:13:52 +02:00
" parent-uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " The parent user that has full control about this user " ],
2020-11-17 23:49:55 +01:00
" guid " => [ " type " => " varchar(64) " , " not null " => " 1 " , " default " => " " , " comment " => " A unique identifier for this user " ],
" username " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Name that this user is known by " ],
" password " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " encrypted password " ],
" legacy_password " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Is the password hash double-hashed? " ],
" nickname " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " nick- and user name " ],
" email " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " the users email address " ],
" openid " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" timezone " => [ " type " => " varchar(128) " , " not null " => " 1 " , " default " => " " , " comment " => " PHP-legal timezone " ],
" language " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " en " , " comment " => " default language " ],
" register_date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " timestamp of registration " ],
" login_date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " timestamp of last login " ],
2022-11-30 23:34:50 +01:00
" last-activity " => [ " type " => " date " , " comment " => " Day of the last activity " ],
2020-11-17 23:49:55 +01:00
" default-location " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Default for item.location " ],
" allow_location " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 1 allows to display the location " ],
" theme " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " user theme preference " ],
" pubkey " => [ " type " => " text " , " comment " => " RSA public key 4096 bit " ],
" prvkey " => [ " type " => " text " , " comment " => " RSA private key 4096 bit " ],
" spubkey " => [ " type " => " text " , " comment " => " " ],
" sprvkey " => [ " type " => " text " , " comment " => " " ],
" verified " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " user is verified through email " ],
" blocked " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 1 for user is blocked " ],
" blockwall " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Prohibit contacts to post to the profile page of the user " ],
2023-03-22 05:08:47 +01:00
" hidewall " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Hide profile details from unknown viewers " ],
2020-11-17 23:49:55 +01:00
" blocktags " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Prohibit contacts to tag the post of this user " ],
" unkmail " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Permit unknown people to send private mails to this user " ],
" cntunkmail " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 10 " , " comment " => " " ],
" notify-flags " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 65535 " , " comment " => " email notification options " ],
" page-flags " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " page/profile type " ],
" account-type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" prvnets " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" pwdreset " => [ " type " => " varchar(255) " , " comment " => " Password reset request token " ],
" pwdreset_time " => [ " type " => " datetime " , " comment " => " Timestamp of the last password reset request " ],
" maxreq " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 10 " , " comment " => " " ],
2022-11-12 15:58:03 +01:00
" expire " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Delay in days before deleting user-related posts. Scope is controlled by pConfig. " ],
2020-11-17 23:49:55 +01:00
" account_removed " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " if 1 the account is removed " ],
" account_expired " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" account_expires_on " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " timestamp when account expires and will be deleted " ],
" expire_notification_sent " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " timestamp of last warning of account expiration " ],
" def_gid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" allow_cid " => [ " type " => " mediumtext " , " comment " => " default permission for this user " ],
" allow_gid " => [ " type " => " mediumtext " , " comment " => " default permission for this user " ],
" deny_cid " => [ " type " => " mediumtext " , " comment " => " default permission for this user " ],
" deny_gid " => [ " type " => " mediumtext " , " comment " => " default permission for this user " ],
" openidserver " => [ " type " => " text " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " uid " ],
" nickname " => [ " nickname(32) " ],
" parent-uid " => [ " parent-uid " ],
2021-02-21 11:37:15 +01:00
" guid " => [ " guid " ],
2021-02-21 16:27:00 +01:00
" email " => [ " email(64) " ],
2020-11-17 23:49:55 +01:00
]
],
2021-07-08 21:16:23 +02:00
" item-uri " => [
" comment " => " URI and GUID for items " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " ],
2022-09-04 09:54:01 +02:00
" uri " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " comment " => " URI of an item " ],
2021-07-08 21:16:23 +02:00
" guid " => [ " type " => " varbinary(255) " , " comment " => " A unique identifier for an item " ]
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uri " => [ " UNIQUE " , " uri " ],
" guid " => [ " guid " ]
]
],
2020-05-15 14:17:13 +02:00
" contact " => [
" comment " => " contact table " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-11-17 23:33:44 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2020-05-15 14:17:13 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" updated " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of last contact update " ],
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " Network of the contact " ],
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Name that this contact is known by " ],
" nick " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Nick- and user name of the contact " ],
" location " => [ " type " => " varchar(255) " , " default " => " " , " comment " => " " ],
" about " => [ " type " => " text " , " comment " => " " ],
" keywords " => [ " type " => " text " , " comment " => " public keywords (interests) of the contact " ],
2021-08-09 03:39:09 +02:00
" xmpp " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " XMPP address " ],
" matrix " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Matrix address " ],
2022-09-04 09:54:01 +02:00
" avatar " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-12-11 10:56:30 +01:00
" blurhash " => [ " type " => " varbinary(255) " , " comment " => " BlurHash representation of the avatar " ],
2022-09-04 09:54:01 +02:00
" header " => [ " type " => " varbinary(383) " , " comment " => " Header picture " ],
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" nurl " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-07-08 20:59:58 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the contact url " ],
2020-05-15 14:17:13 +02:00
" addr " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" alias " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-05-15 14:17:13 +02:00
" pubkey " => [ " type " => " text " , " comment " => " RSA public key 4096 bit " ],
" prvkey " => [ " type " => " text " , " comment " => " RSA private key 4096 bit " ],
2022-09-04 09:54:01 +02:00
" batch " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" notify " => [ " type " => " varbinary(383) " , " comment " => " " ],
" poll " => [ " type " => " varbinary(383) " , " comment " => " " ],
" subscribe " => [ " type " => " varbinary(383) " , " comment " => " " ],
2020-05-15 14:17:13 +02:00
" last-update " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last try to update the contact info " ],
2022-08-13 11:01:48 +02:00
" next-update " => [ " type " => " datetime " , " comment " => " Next connection request " ],
2020-05-15 14:17:13 +02:00
" success_update " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last successful contact update " ],
" failure_update " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last failed update " ],
2020-07-19 03:15:57 +02:00
" failed " => [ " type " => " boolean " , " comment " => " Connection failed " ],
2020-05-15 14:17:13 +02:00
" term-date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" last-item " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " date of the last post " ],
2020-07-26 09:34:33 +02:00
" last-discovery " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " date of the last follower discovery " ],
2022-08-13 11:01:48 +02:00
" local-data " => [ " type " => " boolean " , " comment " => " Is true when there are posts with this contact on the system " ],
2020-05-15 14:17:13 +02:00
" blocked " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 1 " , " comment " => " Node-wide block status " ],
" block_reason " => [ " type " => " text " , " comment " => " Node-wide block reason " ],
" readonly " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " posts of the contact are readonly " ],
2021-09-13 10:22:11 +02:00
" contact-type " => [ " type " => " tinyint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Person, organisation, news, community, relay " ],
" manually-approve " => [ " type " => " boolean " , " comment " => " Contact requests have to be approved manually " ],
2020-05-15 14:17:13 +02:00
" archive " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" unsearchable " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Contact prefers to not be searchable " ],
" sensitive " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Contact posts sensitive content " ],
2022-09-04 09:54:01 +02:00
" baseurl " => [ " type " => " varbinary(383) " , " default " => " " , " comment " => " baseurl of the contact " ],
2020-05-22 06:19:32 +02:00
" gsid " => [ " type " => " int unsigned " , " foreign " => [ " gserver " => " id " , " on delete " => " restrict " ], " comment " => " Global Server ID " ],
2021-09-13 10:22:11 +02:00
" bd " => [ " type " => " date " , " not null " => " 1 " , " default " => DBA :: NULL_DATE , " comment " => " " ],
// User depending fields
2020-05-15 14:17:13 +02:00
" reason " => [ " type " => " text " , " comment " => " " ],
2021-09-13 10:22:11 +02:00
" self " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 1 if the contact is the user him/her self " ],
" remote_self " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" rel " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " The kind of the relation between the user and the contact " ],
" protocol " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " Protocol of the contact " ],
" subhub " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" hub-verify " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-09-13 10:22:11 +02:00
" rating " => [ " type " => " tinyint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Automatically detected feed poll frequency " ],
" priority " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Feed poll priority " ],
" attag " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" hidden " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" pending " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 1 " , " comment " => " Contact request is pending " ],
" deleted " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Contact has been deleted " ],
2020-05-15 14:17:13 +02:00
" info " => [ " type " => " mediumtext " , " comment " => " " ],
" notify_new_posts " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" fetch_further_information " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2020-06-06 22:43:23 +02:00
" ffi_keyword_denylist " => [ " type " => " text " , " comment " => " " ],
2021-09-13 10:22:11 +02:00
// Deprecated, but still in use
2022-09-04 09:54:01 +02:00
" photo " => [ " type " => " varbinary(383) " , " default " => " " , " comment " => " Link to the profile photo of the contact " ],
" thumb " => [ " type " => " varbinary(383) " , " default " => " " , " comment " => " Link to the profile photo (thumb size) " ],
" micro " => [ " type " => " varbinary(383) " , " default " => " " , " comment " => " Link to the profile photo (micro size) " ],
2021-09-13 10:22:11 +02:00
" name-date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" uri-date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" avatar-date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" request " => [ " type " => " varbinary(383) " , " comment " => " " ],
" confirm " => [ " type " => " varbinary(383) " , " comment " => " " ],
" poco " => [ " type " => " varbinary(383) " , " comment " => " " ],
2021-09-13 10:22:11 +02:00
" writable " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2023-05-30 15:13:48 +02:00
" forum " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " contact is a group. Deprecated, use 'contact-type' = 'community' and 'manually-approve' = false instead " ],
2021-09-13 10:22:11 +02:00
" prv " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " contact is a private group. Deprecated, use 'contact-type' = 'community' and 'manually-approve' = true instead " ],
" bdyear " => [ " type " => " varchar(4) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
// Deprecated fields that aren't in use anymore
" site-pubkey " => [ " type " => " text " , " comment " => " Deprecated " ],
" gender " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " Deprecated " ],
" duplex " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Deprecated " ],
2022-09-04 09:54:01 +02:00
" issued-id " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " Deprecated " ],
" dfrn-id " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " Deprecated " ],
2021-09-13 10:22:11 +02:00
" aes_allow " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Deprecated " ],
" ret-aes " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Deprecated " ],
" usehub " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Deprecated " ],
" closeness " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 99 " , " comment " => " Deprecated " ],
" profile-id " => [ " type " => " int unsigned " , " comment " => " Deprecated " ],
2020-05-15 14:17:13 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_name " => [ " uid " , " name(190) " ],
" self_uid " => [ " self " , " uid " ],
2020-11-19 10:47:59 +01:00
" alias_uid " => [ " alias(128) " , " uid " ],
2020-05-15 14:17:13 +02:00
" pending_uid " => [ " pending " , " uid " ],
" blocked_uid " => [ " blocked " , " uid " ],
" uid_rel_network_poll " => [ " uid " , " rel " , " network " , " poll(64) " , " archive " ],
" uid_network_batch " => [ " uid " , " network " , " batch(64) " ],
2021-03-06 17:52:36 +01:00
" batch_contact-type " => [ " batch(64) " , " contact-type " ],
2020-11-19 10:47:59 +01:00
" addr_uid " => [ " addr(128) " , " uid " ],
" nurl_uid " => [ " nurl(128) " , " uid " ],
" nick_uid " => [ " nick(128) " , " uid " ],
2020-08-18 12:50:18 +02:00
" attag_uid " => [ " attag(96) " , " uid " ],
2020-07-18 17:49:10 +02:00
" network_uid_lastupdate " => [ " network " , " uid " , " last-update " ],
2020-08-18 12:50:18 +02:00
" uid_network_self_lastupdate " => [ " uid " , " network " , " self " , " last-update " ],
2022-08-13 11:01:48 +02:00
" next-update " => [ " next-update " ],
" local-data-next-update " => [ " local-data " , " next-update " ],
2020-08-16 13:57:56 +02:00
" uid_lastitem " => [ " uid " , " last-item " ],
2021-02-21 17:43:06 +01:00
" baseurl " => [ " baseurl(64) " ],
2021-03-10 14:25:37 +01:00
" uid_contact-type " => [ " uid " , " contact-type " ],
" uid_self_contact-type " => [ " uid " , " self " , " contact-type " ],
" self_network_uid " => [ " self " , " network " , " uid " ],
2022-08-15 15:23:01 +02:00
" gsid_uid_failed " => [ " gsid " , " uid " , " failed " ],
2021-07-08 20:59:58 +02:00
" uri-id " => [ " uri-id " ],
2020-05-15 14:17:13 +02:00
]
],
2020-08-24 22:06:06 +02:00
" tag " => [
" comment " => " tags and mentions " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " " ],
" name " => [ " type " => " varchar(96) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-04-24 02:20:06 +02:00
" type " => [ " type " => " tinyint unsigned " , " comment " => " Type of the tag (Unknown, General Collection, Follower Collection or Account) " ],
2020-08-24 22:06:06 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" type_name_url " => [ " UNIQUE " , " name " , " url " ],
" url " => [ " url " ]
]
],
2020-05-15 14:17:13 +02:00
" permissionset " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-11-17 23:33:44 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner id of this permission set " ],
2020-05-15 14:17:13 +02:00
" allow_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed contact.id '<19><78>' " ],
2023-05-14 01:46:35 +02:00
" allow_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed circles " ],
2020-05-15 14:17:13 +02:00
" deny_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied contact.id " ],
2023-05-14 01:46:35 +02:00
" deny_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied circles " ],
2020-05-15 14:17:13 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-11-17 23:33:44 +01:00
" uid_allow_cid_allow_gid_deny_cid_deny_gid " => [ " uid " , " allow_cid(50) " , " allow_gid(30) " , " deny_cid(50) " , " deny_gid(30) " ],
2020-05-15 14:17:13 +02:00
]
],
2020-11-20 01:17:32 +01:00
" verb " => [
" comment " => " Activity Verbs " ,
" fields " => [
" id " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " ],
" name " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " " ]
],
" indexes " => [
2021-02-21 11:37:15 +01:00
" PRIMARY " => [ " id " ],
" name " => [ " name " ]
2020-11-20 01:17:32 +01:00
]
],
2020-05-15 14:17:13 +02:00
// Main tables
2019-07-22 13:39:28 +02:00
" 2fa_app_specific_password " => [
" comment " => " Two-factor app-specific _password " ,
" fields " => [
" id " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " Password ID for revocation " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User ID " ],
2019-07-22 13:39:28 +02:00
" description " => [ " type " => " varchar(255) " , " comment " => " Description of the usage of the password " ],
2019-08-21 08:18:32 +02:00
" hashed_password " => [ " type " => " varchar(255) " , " not null " => " 1 " , " comment " => " Hashed password " ],
2019-07-22 13:39:28 +02:00
" generated " => [ " type " => " datetime " , " not null " => " 1 " , " comment " => " Datetime the password was generated " ],
" last_used " => [ " type " => " datetime " , " comment " => " Datetime the password was last used " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2019-08-21 08:18:32 +02:00
" uid_description " => [ " uid " , " description(190) " ],
2019-07-22 13:39:28 +02:00
]
],
2019-05-13 07:19:05 +02:00
" 2fa_recovery_codes " => [
" comment " => " Two-factor authentication recovery codes " ,
" fields " => [
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User ID " ],
2019-05-16 21:53:07 +02:00
" code " => [ " type " => " varchar(50) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Recovery code string " ],
2019-05-13 07:19:05 +02:00
" generated " => [ " type " => " datetime " , " not null " => " 1 " , " comment " => " Datetime the code was generated " ],
" used " => [ " type " => " datetime " , " comment " => " Datetime the code was used " ],
],
" indexes " => [
" PRIMARY " => [ " uid " , " code " ]
]
],
2021-01-19 05:27:44 +01:00
" 2fa_trusted_browser " => [
" comment " => " Two-factor authentication trusted browsers " ,
" fields " => [
" cookie_hash " => [ " type " => " varchar(80) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Trusted cookie hash " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User ID " ],
" user_agent " => [ " type " => " text " , " comment " => " User agent string " ],
2022-06-25 14:45:33 +02:00
" trusted " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 1 " , " comment " => " Whenever this browser should be trusted or not " ],
2021-01-19 05:27:44 +01:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " comment " => " Datetime the trusted browser was recorded " ],
" last_used " => [ " type " => " datetime " , " comment " => " Datetime the trusted browser was last used " ],
],
" indexes " => [
" PRIMARY " => [ " cookie_hash " ],
" uid " => [ " uid " ],
]
],
2022-11-30 06:59:27 +01:00
" account-suggestion " => [
" comment " => " Account suggestion " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the account url " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User ID " ],
" level " => [ " type " => " smallint unsigned " , " comment " => " level of closeness " ],
" ignore " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " If set, this account will not be suggested again " ], ],
" indexes " => [
" PRIMARY " => [ " uid " , " uri-id " ],
" uri-id_uid " => [ " uri-id " , " uid " ],
]
],
2022-09-16 07:00:06 +02:00
" account-user " => [
" comment " => " Remote and local accounts " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the account url " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User ID " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uri-id_uid " => [ " UNIQUE " , " uri-id " , " uid " ],
" uid_uri-id " => [ " uid " , " uri-id " ],
]
],
2018-10-21 07:56:58 +02:00
" apcontact " => [
" comment " => " ActivityPub compatible contacts - used in the ActivityPub implementation " ,
" fields " => [
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " URL of the contact " ],
2021-07-09 09:09:33 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the apcontact url " ],
2022-09-04 09:54:01 +02:00
" uuid " => [ " type " => " varbinary(255) " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" type " => [ " type " => " varchar(20) " , " not null " => " 1 " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" following " => [ " type " => " varbinary(383) " , " comment " => " " ],
" followers " => [ " type " => " varbinary(383) " , " comment " => " " ],
" inbox " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " comment " => " " ],
" outbox " => [ " type " => " varbinary(383) " , " comment " => " " ],
" sharedinbox " => [ " type " => " varbinary(383) " , " comment " => " " ],
" featured " => [ " type " => " varbinary(383) " , " comment " => " Address for the collection of featured posts " ],
" featured-tags " => [ " type " => " varbinary(383) " , " comment " => " Address for the collection of featured tags " ],
2019-01-14 07:36:08 +01:00
" manually-approve " => [ " type " => " boolean " , " comment " => " " ],
2021-06-30 07:40:11 +02:00
" discoverable " => [ " type " => " boolean " , " comment " => " Mastodon extension: true if profile is published in their directory " ],
2022-07-27 19:39:00 +02:00
" suspended " => [ " type " => " boolean " , " comment " => " Mastodon extension: true if profile is suspended " ],
2018-10-21 07:56:58 +02:00
" nick " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" name " => [ " type " => " varchar(255) " , " comment " => " " ],
" about " => [ " type " => " text " , " comment " => " " ],
2021-08-11 01:49:09 +02:00
" xmpp " => [ " type " => " varchar(255) " , " comment " => " XMPP address " ],
" matrix " => [ " type " => " varchar(255) " , " comment " => " Matrix address " ],
2022-09-04 09:54:01 +02:00
" photo " => [ " type " => " varbinary(383) " , " comment " => " " ],
" header " => [ " type " => " varbinary(383) " , " comment " => " Header picture " ],
2018-10-21 07:56:58 +02:00
" addr " => [ " type " => " varchar(255) " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" alias " => [ " type " => " varbinary(383) " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" pubkey " => [ " type " => " text " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" subscribe " => [ " type " => " varbinary(383) " , " comment " => " " ],
" baseurl " => [ " type " => " varbinary(383) " , " comment " => " baseurl of the ap contact " ],
2020-05-22 06:19:32 +02:00
" gsid " => [ " type " => " int unsigned " , " foreign " => [ " gserver " => " id " , " on delete " => " restrict " ], " comment " => " Global Server ID " ],
2019-05-02 15:05:31 +02:00
" generator " => [ " type " => " varchar(255) " , " comment " => " Name of the contact's system " ],
2019-12-11 01:05:50 +01:00
" following_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of following contacts " ],
" followers_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of followers " ],
" statuses_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of posts " ],
2018-10-21 07:56:58 +02:00
" updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ]
],
" indexes " => [
" PRIMARY " => [ " url " ],
" addr " => [ " addr(32) " ],
" alias " => [ " alias(190) " ],
2020-05-22 06:19:32 +02:00
" followers " => [ " followers(190) " ],
2020-07-18 17:49:10 +02:00
" baseurl " => [ " baseurl(190) " ],
2020-11-23 20:25:22 +01:00
" sharedinbox " => [ " sharedinbox(190) " ],
2021-07-09 09:09:33 +02:00
" gsid " => [ " gsid " ],
" uri-id " => [ " UNIQUE " , " uri-id " ],
2018-10-21 07:56:58 +02:00
]
],
2021-05-10 00:23:21 +02:00
" application " => [
" comment " => " OAuth application " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " generated index " ],
" client_id " => [ " type " => " varchar(64) " , " not null " => " 1 " , " comment " => " " ],
" client_secret " => [ " type " => " varchar(64) " , " not null " => " 1 " , " comment " => " " ],
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" redirect_uri " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " comment " => " " ],
" website " => [ " type " => " varbinary(383) " , " comment " => " " ],
2021-05-10 00:23:21 +02:00
" scopes " => [ " type " => " varchar(255) " , " comment " => " " ],
2021-05-13 16:58:55 +02:00
" read " => [ " type " => " boolean " , " comment " => " Read scope " ],
" write " => [ " type " => " boolean " , " comment " => " Write scope " ],
" follow " => [ " type " => " boolean " , " comment " => " Follow scope " ],
2021-05-16 09:37:11 +02:00
" push " => [ " type " => " boolean " , " comment " => " Push scope " ],
2021-05-10 00:23:21 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" client_id " => [ " UNIQUE " , " client_id " ]
]
],
2022-06-06 23:38:59 +02:00
" application-marker " => [
" comment " => " Timeline marker " ,
" fields " => [
" application-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " application " => " id " ], " comment " => " " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
" timeline " => [ " type " => " varchar(64) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Marker (home, notifications) " ],
2022-09-04 09:54:01 +02:00
" last_read_id " => [ " type " => " varbinary(383) " , " comment " => " Marker id for the timeline " ],
2022-06-06 23:38:59 +02:00
" version " => [ " type " => " smallint unsigned " , " comment " => " Version number " ],
" updated_at " => [ " type " => " datetime " , " comment " => " creation time " ],
],
" indexes " => [
" PRIMARY " => [ " application-id " , " uid " , " timeline " ],
" uid_id " => [ " uid " ],
]
],
2021-05-11 08:30:20 +02:00
" application-token " => [
" comment " => " OAuth user token " ,
" fields " => [
" application-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " application " => " id " ], " comment " => " " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
" code " => [ " type " => " varchar(64) " , " not null " => " 1 " , " comment " => " " ],
" access_token " => [ " type " => " varchar(64) " , " not null " => " 1 " , " comment " => " " ],
2021-05-13 16:58:55 +02:00
" created_at " => [ " type " => " datetime " , " not null " => " 1 " , " comment " => " creation time " ],
" scopes " => [ " type " => " varchar(255) " , " comment " => " " ],
" read " => [ " type " => " boolean " , " comment " => " Read scope " ],
" write " => [ " type " => " boolean " , " comment " => " Write scope " ],
" follow " => [ " type " => " boolean " , " comment " => " Follow scope " ],
2021-05-16 09:37:11 +02:00
" push " => [ " type " => " boolean " , " comment " => " Push scope " ],
2021-05-11 08:30:20 +02:00
],
" indexes " => [
" PRIMARY " => [ " application-id " , " uid " ],
" uid_id " => [ " uid " , " application-id " ],
]
],
2018-10-21 07:56:58 +02:00
" attach " => [
" comment " => " file attachments " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " generated index " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2018-10-21 07:56:58 +02:00
" hash " => [ " type " => " varchar(64) " , " not null " => " 1 " , " default " => " " , " comment " => " hash " ],
" filename " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " filename of original " ],
" filetype " => [ " type " => " varchar(64) " , " not null " => " 1 " , " default " => " " , " comment " => " mimetype " ],
" filesize " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " size in bytes " ],
" data " => [ " type " => " longblob " , " not null " => " 1 " , " comment " => " file data " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation time " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " last edit time " ],
2019-10-28 21:59:55 +01:00
" allow_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed contact.id '<19><78> " ],
2023-05-14 01:46:35 +02:00
" allow_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed circles " ],
2019-10-28 21:59:55 +01:00
" deny_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied contact.id " ],
2023-05-14 01:46:35 +02:00
" deny_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied circles " ],
2019-01-02 15:13:05 +01:00
" backend-class " => [ " type " => " tinytext " , " comment " => " Storage backend class " ],
" backend-ref " => [ " type " => " text " , " comment " => " Storage backend data reference " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
" cache " => [
" comment " => " Stores temporary data " ,
" fields " => [
" k " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " cache key " ],
" v " => [ " type " => " mediumtext " , " comment " => " cached serialized value " ],
" expires " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of cache expiration " ],
" updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of cache insertion " ],
],
" indexes " => [
" PRIMARY " => [ " k " ],
" k_expires " => [ " k " , " expires " ],
]
],
2023-02-04 20:52:24 +01:00
" config " => [
" comment " => " main configuration storage " ,
" fields " => [
2023-02-05 00:15:01 +01:00
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " " ],
2023-02-04 20:52:24 +01:00
" cat " => [ " type " => " varbinary(50) " , " not null " => " 1 " , " default " => " " , " comment " => " The category of the entry " ],
" k " => [ " type " => " varbinary(50) " , " not null " => " 1 " , " default " => " " , " comment " => " The key of the entry " ],
" v " => [ " type " => " mediumtext " , " comment " => " " ],
],
" indexes " => [
2023-02-05 00:15:01 +01:00
" PRIMARY " => [ " id " ],
" cat_k " => [ " UNIQUE " , " cat " , " k " ],
2023-02-04 20:52:24 +01:00
]
],
2020-03-10 22:10:59 +01:00
" contact-relation " => [
" comment " => " Contact relations " ,
" fields " => [
2020-07-26 09:34:33 +02:00
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " primary " => " 1 " , " comment " => " contact the related contact had interacted with " ],
" relation-cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " primary " => " 1 " , " comment " => " related contact who had interacted with the contact " ],
2020-03-10 23:04:03 +01:00
" last-interaction " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last interaction " ],
2020-07-26 09:34:33 +02:00
" follow-updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last update of the contact relationship " ],
" follows " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2020-03-10 22:10:59 +01:00
],
" indexes " => [
" PRIMARY " => [ " cid " , " relation-cid " ],
" relation-cid " => [ " relation-cid " ],
]
],
2018-10-21 07:56:58 +02:00
" conv " => [
" comment " => " private messages " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" guid " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " A unique identifier for this conversation " ],
2018-10-21 07:56:58 +02:00
" recips " => [ " type " => " text " , " comment " => " sender_handle;recipient_handle " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2018-10-21 07:56:58 +02:00
" creator " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " handle of creator " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation timestamp " ],
" updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " edited timestamp " ],
" subject " => [ " type " => " text " , " comment " => " subject of initial message " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid " => [ " uid " ],
]
],
2021-07-29 00:22:00 +02:00
" workerqueue " => [
" comment " => " Background tasks queue entries " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " Auto incremented worker task id " ],
" command " => [ " type " => " varchar(100) " , " comment " => " Task command " ],
" parameter " => [ " type " => " mediumtext " , " comment " => " Task parameter " ],
" priority " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Task priority " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Creation date " ],
" pid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Process id of the worker " ],
" executed " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Execution date " ],
" next_try " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Next retrial date " ],
" retrial " => [ " type " => " tinyint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Retrial counter " ],
" done " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Marked 1 when the task was done - will be deleted later " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" command " => [ " command " ],
" done_command_parameter " => [ " done " , " command " , " parameter(64) " ],
" done_executed " => [ " done " , " executed " ],
" done_priority_retrial_created " => [ " done " , " priority " , " retrial " , " created " ],
" done_priority_next_try " => [ " done " , " priority " , " next_try " ],
" done_pid_next_try " => [ " done " , " pid " , " next_try " ],
" done_pid_retrial " => [ " done " , " pid " , " retrial " ],
" done_pid_priority_created " => [ " done " , " pid " , " priority " , " created " ]
]
],
2020-12-01 23:11:29 +01:00
" delayed-post " => [
2020-12-02 15:55:57 +01:00
" comment " => " Posts that are about to be distributed at a later time " ,
2020-12-01 23:11:29 +01:00
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " ],
2022-09-04 09:54:01 +02:00
" uri " => [ " type " => " varbinary(383) " , " comment " => " URI of the post that will be distributed later " ],
2020-12-01 23:11:29 +01:00
" uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
" delayed " => [ " type " => " datetime " , " comment " => " delay time " ],
2021-07-29 12:34:31 +02:00
" wid " => [ " type " => " int unsigned " , " foreign " => [ " workerqueue " => " id " ], " comment " => " Workerqueue id " ],
2020-12-01 23:11:29 +01:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-12-02 01:34:10 +01:00
" uid_uri " => [ " UNIQUE " , " uid " , " uri(190) " ],
2021-07-29 00:22:00 +02:00
" wid " => [ " wid " ],
2020-12-01 23:11:29 +01:00
]
],
2022-12-31 13:19:34 +01:00
" delivery-queue " => [
" comment " => " Delivery data for posts for the batch processing " ,
" fields " => [
2022-12-31 17:20:18 +01:00
" gsid " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " gserver " => " id " , " on delete " => " restrict " ], " comment " => " Target server " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Delivered post " ],
2022-12-31 13:19:34 +01:00
" created " => [ " type " => " datetime " , " comment " => " " ],
" command " => [ " type " => " varbinary(32) " , " comment " => " " ],
2022-12-31 17:20:18 +01:00
" cid " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Target contact " ],
2022-12-31 13:19:34 +01:00
" uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Delivering user " ],
" failed " => [ " type " => " tinyint " , " default " => 0 , " comment " => " Number of times the delivery has failed " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " gsid " ],
" gsid_created " => [ " gsid " , " created " ],
" uid " => [ " uid " ],
" cid " => [ " cid " ],
]
],
2021-08-28 09:10:27 +02:00
" diaspora-contact " => [
" comment " => " Diaspora compatible contacts - used in the Diaspora implementation " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the contact URL " ],
" addr " => [ " type " => " varchar(255) " , " comment " => " " ],
" alias " => [ " type " => " varchar(255) " , " comment " => " " ],
" nick " => [ " type " => " varchar(255) " , " comment " => " " ],
" name " => [ " type " => " varchar(255) " , " comment " => " " ],
" given-name " => [ " type " => " varchar(255) " , " comment " => " " ],
" family-name " => [ " type " => " varchar(255) " , " comment " => " " ],
" photo " => [ " type " => " varchar(255) " , " comment " => " " ],
" photo-medium " => [ " type " => " varchar(255) " , " comment " => " " ],
" photo-small " => [ " type " => " varchar(255) " , " comment " => " " ],
" batch " => [ " type " => " varchar(255) " , " comment " => " " ],
" notify " => [ " type " => " varchar(255) " , " comment " => " " ],
" poll " => [ " type " => " varchar(255) " , " comment " => " " ],
" subscribe " => [ " type " => " varchar(255) " , " comment " => " " ],
" searchable " => [ " type " => " boolean " , " comment " => " " ],
" pubkey " => [ " type " => " text " , " comment " => " " ],
" gsid " => [ " type " => " int unsigned " , " foreign " => [ " gserver " => " id " , " on delete " => " restrict " ], " comment " => " Global Server ID " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2023-03-27 00:26:35 +02:00
" interacting_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of contacts this contact interacts with " ],
2021-08-28 09:10:27 +02:00
" interacted_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of contacts that interacted with this contact " ],
" post_count " => [ " type " => " int unsigned " , " default " => 0 , " comment " => " Number of posts and comments " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
" addr " => [ " UNIQUE " , " addr " ],
" alias " => [ " alias " ],
" gsid " => [ " gsid " ],
]
],
2018-10-21 07:56:58 +02:00
" diaspora-interaction " => [
" comment " => " Signed Diaspora Interaction " ,
" fields " => [
2020-05-10 16:55:03 +02:00
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2018-10-21 07:56:58 +02:00
" interaction " => [ " type " => " mediumtext " , " comment " => " The Diaspora interaction " ]
],
" indexes " => [
" PRIMARY " => [ " uri-id " ]
]
],
2022-04-25 15:45:03 +02:00
" endpoint " => [
" comment " => " ActivityPub endpoints - used in the ActivityPub implementation " ,
" fields " => [
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " URL of the contact " ],
2022-04-25 15:45:03 +02:00
" type " => [ " type " => " varchar(20) " , " not null " => " 1 " , " comment " => " " ],
" owner-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the apcontact url " ],
],
" indexes " => [
" PRIMARY " => [ " url " ],
" owner-uri-id_type " => [ " UNIQUE " , " owner-uri-id " , " type " ],
]
],
2018-10-21 07:56:58 +02:00
" event " => [
" comment " => " Events " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" guid " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-11-17 23:33:44 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2020-08-24 22:06:06 +02:00
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " contact_id (ID of the contact in contact table) " ],
2022-09-04 09:54:01 +02:00
" uri " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-07-08 15:47:46 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the event uri " ],
2018-10-21 07:56:58 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation time " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " last edit time " ],
" start " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " event start time " ],
" finish " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " event end time " ],
" summary " => [ " type " => " text " , " comment " => " short description or title of the event " ],
" desc " => [ " type " => " text " , " comment " => " event description " ],
" location " => [ " type " => " text " , " comment " => " event location " ],
" type " => [ " type " => " varchar(20) " , " not null " => " 1 " , " default " => " " , " comment " => " event or birthday " ],
" nofinish " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " if event does have no end this is 1 " ],
" ignore " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 0 or 1 " ],
2019-10-28 21:59:55 +01:00
" allow_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed contact.id '<19><78>' " ],
2023-05-14 01:46:35 +02:00
" allow_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed circles " ],
2019-10-28 21:59:55 +01:00
" deny_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied contact.id " ],
2023-05-14 01:46:35 +02:00
" deny_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied circles " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_start " => [ " uid " , " start " ],
2020-08-24 22:06:06 +02:00
" cid " => [ " cid " ],
2021-07-08 15:47:46 +02:00
" uri-id " => [ " uri-id " ],
2018-10-21 07:56:58 +02:00
]
],
2022-08-01 06:48:49 +02:00
" fetch-entry " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " comment " => " url that awaiting to be fetched " ],
2022-08-01 06:48:49 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Creation date of the fetch request " ],
" wid " => [ " type " => " int unsigned " , " foreign " => [ " workerqueue " => " id " ], " comment " => " Workerqueue id " ], ],
" indexes " => [
" PRIMARY " => [ " id " ],
" url " => [ " UNIQUE " , " url " ],
" created " => [ " created " ],
" wid " => [ " wid " ],
]
],
2018-10-21 07:56:58 +02:00
" fsuggest " => [
" comment " => " friend suggestion stuff " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " " ],
2018-10-21 07:56:58 +02:00
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" request " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" photo " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" note " => [ " type " => " text " , " comment " => " " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" cid " => [ " cid " ],
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
" group " => [
2023-05-14 01:46:35 +02:00
" comment " => " privacy circles, circle info " ,
2018-10-21 07:56:58 +02:00
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2018-10-21 07:56:58 +02:00
" visible " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 1 indicates the member list is not private " ],
2023-05-14 01:46:35 +02:00
" deleted " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 1 indicates the circle has been deleted " ],
2023-05-30 15:13:48 +02:00
" cid " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Contact id of group. When this field is filled then the members are synced automatically. " ],
2023-05-14 01:46:35 +02:00
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " human readable name of circle " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid " => [ " uid " ],
2022-02-09 20:44:10 +01:00
" cid " => [ " cid " ],
2018-10-21 07:56:58 +02:00
]
],
" group_member " => [
2023-05-14 01:46:35 +02:00
" comment " => " privacy circles, member info " ,
2018-10-21 07:56:58 +02:00
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2023-05-14 01:46:35 +02:00
" gid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " group " => " id " ], " comment " => " group.id of the associated circle " ],
" contact-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " contact.id of the member assigned to the associated circle " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" contactid " => [ " contact-id " ],
" gid_contactid " => [ " UNIQUE " , " gid " , " contact-id " ],
]
],
" gserver-tag " => [
" comment " => " Tags that the server has subscribed " ,
" fields " => [
2020-08-24 22:06:06 +02:00
" gserver-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " gserver " => " id " ], " primary " => " 1 " ,
2018-10-21 07:56:58 +02:00
" comment " => " The id of the gserver " ],
" tag " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " primary " => " 1 " , " comment " => " Tag that the server has subscribed " ],
],
" indexes " => [
" PRIMARY " => [ " gserver-id " , " tag " ],
" tag " => [ " tag " ],
]
],
" hook " => [
" comment " => " addon hook registry " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" hook " => [ " type " => " varbinary(100) " , " not null " => " 1 " , " default " => " " , " comment " => " name of hook " ],
" file " => [ " type " => " varbinary(200) " , " not null " => " 1 " , " default " => " " , " comment " => " relative filename of hook handler " ],
" function " => [ " type " => " varbinary(200) " , " not null " => " 1 " , " default " => " " , " comment " => " function name of hook handler " ],
" priority " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " not yet implemented - can be used to sort conflicts in hook handling by calling handlers in priority order " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2021-02-21 11:37:15 +01:00
" priority " => [ " priority " ],
2018-10-21 07:56:58 +02:00
" hook_file_function " => [ " UNIQUE " , " hook " , " file " , " function " ],
]
],
2022-07-18 16:03:49 +02:00
" inbox-entry " => [
2022-07-18 05:31:00 +02:00
" comment " => " Incoming activity " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" activity-id " => [ " type " => " varbinary(383) " , " comment " => " id of the incoming activity " ],
" object-id " => [ " type " => " varbinary(383) " , " comment " => " " ],
" in-reply-to-id " => [ " type " => " varbinary(383) " , " comment " => " " ],
" conversation " => [ " type " => " varbinary(383) " , " comment " => " " ],
2022-07-18 16:03:49 +02:00
" type " => [ " type " => " varchar(64) " , " comment " => " Type of the activity " ],
" object-type " => [ " type " => " varchar(64) " , " comment " => " Type of the object activity " ],
2022-09-06 08:04:41 +02:00
" object-object-type " => [ " type " => " varchar(64) " , " comment " => " Type of the object's object activity " ],
2022-07-18 16:03:49 +02:00
" received " => [ " type " => " datetime " , " comment " => " Receiving date " ],
2022-07-18 05:31:00 +02:00
" activity " => [ " type " => " mediumtext " , " comment " => " The JSON activity " ],
2022-07-18 16:03:49 +02:00
" signer " => [ " type " => " varchar(255) " , " comment " => " " ],
2022-07-24 16:26:06 +02:00
" push " => [ " type " => " boolean " , " comment " => " Is the entry pushed or have pulled it? " ],
" trust " => [ " type " => " boolean " , " comment " => " Do we trust this entry? " ],
2022-07-21 09:05:38 +02:00
" wid " => [ " type " => " int unsigned " , " foreign " => [ " workerqueue " => " id " ], " comment " => " Workerqueue id " ], ],
2022-07-18 05:31:00 +02:00
" indexes " => [
" PRIMARY " => [ " id " ],
2022-07-18 16:03:49 +02:00
" activity-id " => [ " UNIQUE " , " activity-id " ],
" object-id " => [ " object-id " ],
2022-07-18 05:31:00 +02:00
" received " => [ " received " ],
2022-07-21 09:05:38 +02:00
" wid " => [ " wid " ],
2022-07-18 05:31:00 +02:00
]
],
2022-07-18 16:03:49 +02:00
" inbox-entry-receiver " => [
2022-07-18 05:31:00 +02:00
" comment " => " Receiver for the incoming activity " ,
" fields " => [
2022-07-18 16:03:49 +02:00
" queue-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " inbox-entry " => " id " ], " comment " => " " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2022-07-18 05:31:00 +02:00
],
" indexes " => [
" PRIMARY " => [ " queue-id " , " uid " ],
" uid " => [ " uid " ],
]
],
2019-03-25 22:51:32 +01:00
" inbox-status " => [
" comment " => " Status of ActivityPub inboxes " ,
" fields " => [
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " URL of the inbox " ],
2022-05-02 07:15:27 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of inbox url " ],
2023-01-01 00:42:00 +01:00
" gsid " => [ " type " => " int unsigned " , " foreign " => [ " gserver " => " id " , " on delete " => " restrict " ], " comment " => " ID of the related server " ],
2019-03-25 22:51:32 +01:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Creation date of this entry " ],
" success " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last successful delivery " ],
" failure " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of the last failed delivery " ],
" previous " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Previous delivery date " ],
2019-03-26 06:14:47 +01:00
" archive " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Is the inbox archived? " ],
" shared " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Is it a shared inbox? " ]
2019-03-25 22:51:32 +01:00
],
" indexes " => [
2022-05-02 07:15:27 +02:00
" PRIMARY " => [ " url " ],
" uri-id " => [ " uri-id " ],
2023-01-01 00:42:00 +01:00
" gsid " => [ " gsid " ],
2019-03-25 22:51:32 +01:00
]
],
2018-10-21 07:56:58 +02:00
" intro " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 23:03:00 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2022-11-11 02:42:47 +01:00
" fid " => [ " type " => " int unsigned " , " comment " => " deprecated " ],
2020-08-24 22:06:06 +02:00
" contact-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " " ],
2021-10-17 22:19:02 +02:00
" suggest-cid " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Suggested contact " ],
2018-10-21 07:56:58 +02:00
" knowyou " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2021-10-21 21:48:23 +02:00
" duplex " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " deprecated " ],
2018-10-21 07:56:58 +02:00
" note " => [ " type " => " text " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" hash " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" datetime " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2021-10-19 21:30:09 +02:00
" blocked " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " deprecated " ],
2018-10-21 07:56:58 +02:00
" ignore " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" contact-id " => [ " contact-id " ],
2021-10-19 03:55:24 +02:00
" suggest-cid " => [ " suggest-cid " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
2022-12-29 16:54:08 +01:00
" key-value " => [
" comment " => " A key value storage " ,
" fields " => [
2022-12-29 22:36:08 +01:00
" k " => [ " type " => " varbinary(50) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " " ],
2022-12-29 16:54:08 +01:00
" v " => [ " type " => " mediumtext " , " comment " => " " ],
2022-12-30 17:15:15 +01:00
" updated_at " => [ " type " => " int unsigned " , " not null " => " 1 " , " comment " => " timestamp of the last update " ],
2022-12-29 16:54:08 +01:00
],
" indexes " => [
2022-12-29 22:36:08 +01:00
" PRIMARY " => [ " k " ],
2022-12-29 16:54:08 +01:00
],
],
2018-10-21 07:56:58 +02:00
" locks " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" name " => [ " type " => " varchar(128) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" locked " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" pid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Process ID " ],
" expires " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of cache expiration " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" name_expires " => [ " name " , " expires " ]
]
],
" mail " => [
" comment " => " private messages " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2022-09-04 09:54:01 +02:00
" guid " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " A unique identifier for this private message " ],
2018-10-21 07:56:58 +02:00
" from-name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " name of the sender " ],
2022-09-04 09:54:01 +02:00
" from-photo " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " contact photo link of the sender " ],
2023-03-27 00:29:58 +02:00
" from-url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " profile link of the sender " ],
2022-09-04 09:54:01 +02:00
" contact-id " => [ " type " => " varbinary(255) " , " relation " => [ " contact " => " id " ], " comment " => " contact.id " ],
2021-05-22 15:37:04 +02:00
" author-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the author of the mail " ],
2020-11-19 07:26:30 +01:00
" convid " => [ " type " => " int unsigned " , " relation " => [ " conv " => " id " ], " comment " => " conv.id " ],
2018-10-21 07:56:58 +02:00
" title " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" body " => [ " type " => " mediumtext " , " comment " => " " ],
" seen " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " if message visited it is 1 " ],
" reply " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" replied " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" unknown " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " if sender not in the contact table this is 1 " ],
2022-09-04 09:54:01 +02:00
" uri " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-05-22 15:37:04 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the related mail " ],
2022-09-04 09:54:01 +02:00
" parent-uri " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-05-22 15:37:04 +02:00
" parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the parent of the related mail " ],
2022-09-04 09:54:01 +02:00
" thr-parent " => [ " type " => " varbinary(383) " , " comment " => " " ],
2021-05-22 15:37:04 +02:00
" thr-parent-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the thread parent uri " ],
2018-10-21 07:56:58 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation time of the private message " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_seen " => [ " uid " , " seen " ],
" convid " => [ " convid " ],
" uri " => [ " uri(64) " ],
" parent-uri " => [ " parent-uri(64) " ],
" contactid " => [ " contact-id(32) " ],
2021-05-22 15:37:04 +02:00
" author-id " => [ " author-id " ],
" uri-id " => [ " uri-id " ],
" parent-uri-id " => [ " parent-uri-id " ],
" thr-parent-id " => [ " thr-parent-id " ],
2018-10-21 07:56:58 +02:00
]
],
" mailacct " => [
" comment " => " Mail account data for fetching mails " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2018-10-21 07:56:58 +02:00
" server " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" port " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" ssltype " => [ " type " => " varchar(16) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" mailbox " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" user " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" pass " => [ " type " => " text " , " comment " => " " ],
" reply_to " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" action " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" movetofolder " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" pubmail " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" last_check " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
" manage " => [
" comment " => " table of accounts that can manage each other " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
" mid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_mid " => [ " UNIQUE " , " uid " , " mid " ],
2020-08-24 22:06:06 +02:00
" mid " => [ " mid " ],
2018-10-21 07:56:58 +02:00
]
],
2021-06-01 07:51:03 +02:00
" notification " => [
" comment " => " notifications " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
" vid " => [ " type " => " smallint unsigned " , " foreign " => [ " verb " => " id " , " on delete " => " restrict " ], " comment " => " Id of the verb table entry that contains the activity verbs " ],
2022-06-05 17:02:03 +02:00
" type " => [ " type " => " smallint unsigned " , " comment " => " " ],
2021-06-01 07:51:03 +02:00
" actor-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Link to the contact table with uid=0 of the actor that caused the notification " ],
" target-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the related post " ],
" parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the parent of the related post " ],
" created " => [ " type " => " datetime " , " comment " => " " ],
2021-12-28 21:38:18 +01:00
" seen " => [ " type " => " boolean " , " default " => " 0 " , " comment " => " Seen on the desktop " ],
" dismissed " => [ " type " => " boolean " , " default " => " 0 " , " comment " => " Dismissed via the API " ],
2021-06-01 07:51:03 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_vid_type_actor-id_target-uri-id " => [ " UNIQUE " , " uid " , " vid " , " type " , " actor-id " , " target-uri-id " ],
" vid " => [ " vid " ],
" actor-id " => [ " actor-id " ],
" target-uri-id " => [ " target-uri-id " ],
" parent-uri-id " => [ " parent-uri-id " ],
" seen_uid " => [ " seen " , " uid " ],
2022-08-15 15:23:01 +02:00
" uid_type_parent-uri-id_actor-id " => [ " uid " , " type " , " parent-uri-id " , " actor-id " ],
2021-06-01 07:51:03 +02:00
]
],
2018-10-21 07:56:58 +02:00
" notify " => [
2022-02-23 08:10:57 +01:00
" comment " => " [Deprecated] User notifications " ,
2018-10-21 07:56:58 +02:00
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" type " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" photo " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" date " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" msg " => [ " type " => " mediumtext " , " comment " => " " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2022-09-04 09:54:01 +02:00
" link " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2021-02-16 23:04:03 +01:00
" iid " => [ " type " => " int unsigned " , " comment " => " " ],
" parent " => [ " type " => " int unsigned " , " comment " => " " ],
2020-11-19 07:26:30 +01:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the related post " ],
" parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the parent of the related post " ],
2018-10-21 07:56:58 +02:00
" seen " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" verb " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" otype " => [ " type " => " varchar(10) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" name_cache " => [ " type " => " tinytext " , " comment " => " Cached bbcode parsing of name " ],
" msg_cache " => [ " type " => " mediumtext " , " comment " => " Cached bbcode parsing of msg " ]
],
" indexes " => [
" PRIMARY " => [ " id " ],
" seen_uid_date " => [ " seen " , " uid " , " date " ],
" uid_date " => [ " uid " , " date " ],
" uid_type_link " => [ " uid " , " type " , " link(190) " ],
2020-11-19 07:26:30 +01:00
" uri-id " => [ " uri-id " ],
" parent-uri-id " => [ " parent-uri-id " ],
2018-10-21 07:56:58 +02:00
]
],
" notify-threads " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-26 07:32:47 +02:00
" notify-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " notify " => " id " ], " comment " => " " ],
2021-02-16 23:04:03 +01:00
" master-parent-item " => [ " type " => " int unsigned " , " comment " => " Deprecated " ],
2020-11-19 07:26:30 +01:00
" master-parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of the parent of the related post " ],
2018-10-21 07:56:58 +02:00
" parent-item " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2020-08-24 22:06:06 +02:00
" receiver-uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ],
2018-10-21 07:56:58 +02:00
" comment " => " User id " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-05-10 16:55:03 +02:00
" master-parent-uri-id " => [ " master-parent-uri-id " ],
2020-08-24 22:06:06 +02:00
" receiver-uid " => [ " receiver-uid " ],
2020-08-26 07:32:47 +02:00
" notify-id " => [ " notify-id " ],
2018-10-21 07:56:58 +02:00
]
],
" oembed " => [
" comment " => " cache for OEmbed queries " ,
" fields " => [
2022-09-04 09:54:01 +02:00
" url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " page url " ],
2018-10-21 07:56:58 +02:00
" maxwidth " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Maximum width passed to Oembed " ],
" content " => [ " type " => " mediumtext " , " comment " => " OEmbed data of the page " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of creation " ],
],
" indexes " => [
" PRIMARY " => [ " url " , " maxwidth " ],
" created " => [ " created " ],
]
],
" openwebauth-token " => [
" comment " => " Store OpenWebAuth token to verify contacts " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-11-17 23:33:44 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id - currently unused " ],
2018-10-21 07:56:58 +02:00
" type " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " Verify type " ],
" token " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " A generated token " ],
" meta " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of creation " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
" parsed_url " => [
" comment " => " cache for 'parse_url' queries " ,
" fields " => [
2021-02-16 16:10:53 +01:00
" url_hash " => [ " type " => " binary(64) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " page url hash " ],
2018-10-21 07:56:58 +02:00
" guessing " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " comment " => " is the 'guessing' mode active? " ],
" oembed " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " comment " => " is the data the result of oembed? " ],
2021-02-16 16:10:53 +01:00
" url " => [ " type " => " text " , " not null " => " 1 " , " comment " => " page url " ],
2018-10-21 07:56:58 +02:00
" content " => [ " type " => " mediumtext " , " comment " => " page data " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of creation " ],
2021-02-16 16:10:53 +01:00
" expires " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime of expiration " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
2021-02-16 16:10:53 +01:00
" PRIMARY " => [ " url_hash " , " guessing " , " oembed " ],
2018-10-21 07:56:58 +02:00
" created " => [ " created " ],
2021-02-16 16:10:53 +01:00
" expires " => [ " expires " ],
2018-10-21 07:56:58 +02:00
]
],
" pconfig " => [
" comment " => " personal (per user) configuration storage " ,
" fields " => [
2020-11-14 15:22:56 +01:00
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " Primary key " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2020-11-14 15:22:56 +01:00
" cat " => [ " type " => " varchar(50) " , " not null " => " 1 " , " default " => " " , " comment " => " Category " ],
" k " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " Key " ],
" v " => [ " type " => " mediumtext " , " comment " => " Value " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_cat_k " => [ " UNIQUE " , " uid " , " cat " , " k " ],
]
],
" photo " => [
" comment " => " photo storage " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-11-23 20:25:22 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " , " on delete " => " restrict " ], " comment " => " Owner User id " ],
2020-08-21 20:37:58 +02:00
" contact-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " contact.id " ],
2018-10-21 07:56:58 +02:00
" guid " => [ " type " => " char(16) " , " not null " => " 1 " , " default " => " " , " comment " => " A unique identifier for this photo " ],
" resource-id " => [ " type " => " char(32) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-12-26 19:51:36 +01:00
" hash " => [ " type " => " char(32) " , " comment " => " hash value of the photo " ],
2018-10-21 07:56:58 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation date " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " last edited date " ],
" title " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" desc " => [ " type " => " text " , " comment " => " " ],
" album " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " The name of the album to which the photo belongs " ],
2021-10-11 19:21:29 +02:00
" photo-type " => [ " type " => " tinyint unsigned " , " comment " => " User avatar, user banner, contact avatar, contact banner or default " ],
2018-10-21 07:56:58 +02:00
" filename " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" type " => [ " type " => " varchar(30) " , " not null " => " 1 " , " default " => " image/jpeg " ],
" height " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" width " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" datasize " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2022-12-04 14:29:21 +01:00
" blurhash " => [ " type " => " varbinary(255) " , " comment " => " BlurHash representation of the photo " ],
2018-10-21 07:56:58 +02:00
" data " => [ " type " => " mediumblob " , " not null " => " 1 " , " comment " => " " ],
" scale " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" profile " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2019-10-28 21:59:55 +01:00
" allow_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed contact.id '<19><78>' " ],
2023-05-14 01:46:35 +02:00
" allow_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of allowed circles " ],
2019-10-28 21:59:55 +01:00
" deny_cid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied contact.id " ],
2023-05-14 01:46:35 +02:00
" deny_gid " => [ " type " => " mediumtext " , " comment " => " Access Control - list of denied circles " ],
2020-03-08 14:16:59 +01:00
" accessible " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Make photo publicly accessible, ignoring permissions " ],
2018-11-21 16:21:57 +01:00
" backend-class " => [ " type " => " tinytext " , " comment " => " Storage backend class " ],
2019-03-01 09:23:55 +01:00
" backend-ref " => [ " type " => " text " , " comment " => " Storage backend data reference " ],
" updated " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ]
2018-10-21 07:56:58 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" contactid " => [ " contact-id " ],
" uid_contactid " => [ " uid " , " contact-id " ],
" uid_profile " => [ " uid " , " profile " ],
" uid_album_scale_created " => [ " uid " , " album(32) " , " scale " , " created " ],
" uid_album_resource-id_created " => [ " uid " , " album(32) " , " resource-id " , " created " ],
" resource-id " => [ " resource-id " ],
2021-10-11 16:21:10 +02:00
" uid_photo-type " => [ " uid " , " photo-type " ],
2018-10-21 07:56:58 +02:00
]
],
2021-02-13 20:56:03 +01:00
" post " => [
" comment " => " Structure for all posts " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the parent uri " ],
" thr-parent-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the thread parent uri " ],
2021-02-14 10:43:27 +01:00
" external-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the external uri " ],
2021-02-13 20:56:03 +01:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Creation timestamp. " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of last edit (default is created) " ],
" received " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime " ],
" gravity " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " Network from where the item comes from " ],
" owner-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the owner of this item " ],
" author-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the author of this item " ],
2021-03-01 23:19:47 +01:00
" causer-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the contact that caused the item creation " ],
2021-04-07 08:02:06 +02:00
" post-type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Post type (personal note, image, article, ...) " ],
2021-02-13 20:56:03 +01:00
" vid " => [ " type " => " smallint unsigned " , " foreign " => [ " verb " => " id " , " on delete " => " restrict " ], " comment " => " Id of the verb table entry that contains the activity verbs " ],
" private " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 0=public, 1=private, 2=unlisted " ],
" global " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" visible " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" deleted " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " item has been marked for deletion " ]
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
" parent-uri-id " => [ " parent-uri-id " ],
" thr-parent-id " => [ " thr-parent-id " ],
2021-02-14 10:43:27 +01:00
" external-id " => [ " external-id " ],
2021-02-13 20:56:03 +01:00
" owner-id " => [ " owner-id " ],
" author-id " => [ " author-id " ],
" causer-id " => [ " causer-id " ],
" vid " => [ " vid " ],
]
],
2022-07-27 19:39:00 +02:00
" post-activity " => [
" comment " => " Original remote activity " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" activity " => [ " type " => " mediumtext " , " comment " => " Original activity " ],
" received " => [ " type " => " datetime " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
]
],
2020-05-15 14:17:13 +02:00
" post-category " => [
" comment " => " post relation to categories " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2020-11-17 23:33:44 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2020-05-15 14:17:13 +02:00
" type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " comment " => " " ],
" tid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " tag " => " id " , " on delete " => " restrict " ], " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " uid " , " type " , " tid " ],
2022-05-05 10:45:32 +02:00
" tid " => [ " tid " ],
" uid_uri-id " => [ " uid " , " uri-id " ],
2020-05-15 14:17:13 +02:00
]
],
2022-04-06 15:34:11 +02:00
" post-collection " => [
" comment " => " Collection of posts " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2022-04-06 17:02:21 +02:00
" type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " comment " => " 0 - Featured " ],
2022-08-16 06:18:29 +02:00
" author-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Author of the featured post " ],
2022-04-06 15:34:11 +02:00
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " type " ],
" type " => [ " type " ],
2022-08-15 15:23:01 +02:00
" author-id " => [ " author-id " ],
2022-04-06 15:34:11 +02:00
]
],
2021-01-30 23:03:53 +01:00
" post-content " => [
" comment " => " Content for all posts " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" title " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " item title " ],
" content-warning " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" body " => [ " type " => " mediumtext " , " comment " => " item body content " ],
" raw-body " => [ " type " => " mediumtext " , " comment " => " Body without embedded media links " ],
2022-10-11 00:39:30 +02:00
" quote-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the quoted uri " ],
2021-01-30 23:03:53 +01:00
" location " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " text location where this item originated " ],
" coord " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " longitude/latitude pair representing location where this item originated " ],
" language " => [ " type " => " text " , " comment " => " Language information about this post " ],
" app " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " application which generated this item " ],
" rendered-hash " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" rendered-html " => [ " type " => " mediumtext " , " comment " => " item.body converted to html " ],
" object-type " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " ActivityStreams object type " ],
" object " => [ " type " => " text " , " comment " => " JSON encoded object structure unless it is an implied object (normal post) " ],
" target-type " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " ActivityStreams target type if applicable (URI) " ],
" target " => [ " type " => " text " , " comment " => " JSON encoded target structure if used " ],
" resource-id " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type " ],
2022-09-04 09:54:01 +02:00
" plink " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " permalink or URL to a displayable copy of the message at its source " ]
2021-01-30 23:03:53 +01:00
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
" plink " => [ " plink(191) " ],
2021-02-21 06:28:27 +01:00
" resource-id " => [ " resource-id " ],
2021-01-30 23:03:53 +01:00
" title-content-warning-body " => [ " FULLTEXT " , " title " , " content-warning " , " body " ],
2022-10-11 00:39:30 +02:00
" quote-uri-id " => [ " quote-uri-id " ],
2021-01-30 23:03:53 +01:00
]
],
2022-05-02 07:15:27 +02:00
" post-delivery " => [
2022-05-05 14:23:44 +02:00
" comment " => " Delivery data for posts for the batch processing " ,
2022-05-02 07:15:27 +02:00
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" inbox-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Item-uri id of inbox url " ],
" uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Delivering user " ],
" created " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" command " => [ " type " => " varbinary(32) " , " comment " => " " ],
2022-05-12 08:54:58 +02:00
" failed " => [ " type " => " tinyint " , " default " => 0 , " comment " => " Number of times the delivery has failed " ],
2022-05-13 07:52:05 +02:00
" receivers " => [ " type " => " mediumtext " , " comment " => " JSON encoded array with the receiving contacts " ],
2022-05-02 07:15:27 +02:00
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " inbox-id " ],
" inbox-id_created " => [ " inbox-id " , " created " ],
" uid " => [ " uid " ],
]
],
2020-05-15 14:17:13 +02:00
" post-delivery-data " => [
" comment " => " Delivery data for items " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" postopts " => [ " type " => " text " , " comment " => " External post connectors add their network name to this comma-separated string to identify that they should be delivered to these networks during delivery " ],
" inform " => [ " type " => " mediumtext " , " comment " => " Additional receivers of the linked item " ],
" queue_count " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Initial number of delivery recipients, used as item.delivery_queue_count " ],
" queue_done " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries, used as item.delivery_queue_done " ],
" queue_failed " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of unsuccessful deliveries, used as item.delivery_queue_failed " ],
" activitypub " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries via ActivityPub " ],
" dfrn " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries via DFRN " ],
" legacy_dfrn " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries via legacy DFRN " ],
" diaspora " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries via Diaspora " ],
" ostatus " => [ " type " => " mediumint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Number of successful deliveries via OStatus " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
]
],
2022-05-15 22:21:56 +02:00
" post-history " => [
" comment " => " Post history " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " primary " => " 1 " , " comment " => " Date of edit " ],
" title " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " item title " ],
" content-warning " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" body " => [ " type " => " mediumtext " , " comment " => " item body content " ],
" raw-body " => [ " type " => " mediumtext " , " comment " => " Body without embedded media links " ],
" location " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " text location where this item originated " ],
" coord " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " longitude/latitude pair representing location where this item originated " ],
" language " => [ " type " => " text " , " comment " => " Language information about this post " ],
" app " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " application which generated this item " ],
" rendered-hash " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" rendered-html " => [ " type " => " mediumtext " , " comment " => " item.body converted to html " ],
" object-type " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " ActivityStreams object type " ],
" object " => [ " type " => " text " , " comment " => " JSON encoded object structure unless it is an implied object (normal post) " ],
" target-type " => [ " type " => " varchar(100) " , " not null " => " 1 " , " default " => " " , " comment " => " ActivityStreams target type if applicable (URI) " ],
" target " => [ " type " => " text " , " comment " => " JSON encoded target structure if used " ],
" resource-id " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type " ],
2022-09-04 09:54:01 +02:00
" plink " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " permalink or URL to a displayable copy of the message at its source " ]
2022-05-15 22:21:56 +02:00
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " edited " ],
]
],
2021-07-05 20:45:49 +02:00
" post-link " => [
" comment " => " Post related external links " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" url " => [ " type " => " varbinary(511) " , " not null " => " 1 " , " comment " => " External URL " ],
" mimetype " => [ " type " => " varchar(60) " , " comment " => " " ],
2022-12-11 10:56:30 +01:00
" height " => [ " type " => " smallint unsigned " , " comment " => " Height of the media " ],
" width " => [ " type " => " smallint unsigned " , " comment " => " Width of the media " ],
" blurhash " => [ " type " => " varbinary(255) " , " comment " => " BlurHash representation of the link " ],
2021-07-05 20:45:49 +02:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uri-id-url " => [ " UNIQUE " , " uri-id " , " url " ],
]
],
2020-10-29 06:20:26 +01:00
" post-media " => [
" comment " => " Attached media " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2022-06-19 23:06:04 +02:00
" url " => [ " type " => " varbinary(1024) " , " not null " => " 1 " , " comment " => " Media URL " ],
2022-10-16 23:37:05 +02:00
" media-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the activities uri-id " ],
2020-10-29 06:20:26 +01:00
" type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Media type " ],
" mimetype " => [ " type " => " varchar(60) " , " comment " => " " ],
" height " => [ " type " => " smallint unsigned " , " comment " => " Height of the media " ],
" width " => [ " type " => " smallint unsigned " , " comment " => " Width of the media " ],
2022-06-19 02:31:59 +02:00
" size " => [ " type " => " bigint unsigned " , " comment " => " Media size " ],
2022-12-04 14:29:21 +01:00
" blurhash " => [ " type " => " varbinary(255) " , " comment " => " BlurHash representation of the image " ],
2022-06-19 23:06:04 +02:00
" preview " => [ " type " => " varbinary(512) " , " comment " => " Preview URL " ],
2020-10-29 06:20:26 +01:00
" preview-height " => [ " type " => " smallint unsigned " , " comment " => " Height of the preview picture " ],
" preview-width " => [ " type " => " smallint unsigned " , " comment " => " Width of the preview picture " ],
" description " => [ " type " => " text " , " comment " => " " ],
2021-04-26 08:50:12 +02:00
" name " => [ " type " => " varchar(255) " , " comment " => " Name of the media " ],
2022-09-04 09:54:01 +02:00
" author-url " => [ " type " => " varbinary(383) " , " comment " => " URL of the author of the media " ],
2021-04-26 08:50:12 +02:00
" author-name " => [ " type " => " varchar(255) " , " comment " => " Name of the author of the media " ],
2022-09-04 09:54:01 +02:00
" author-image " => [ " type " => " varbinary(383) " , " comment " => " Image of the author of the media " ],
" publisher-url " => [ " type " => " varbinary(383) " , " comment " => " URL of the publisher of the media " ],
2021-04-26 08:50:12 +02:00
" publisher-name " => [ " type " => " varchar(255) " , " comment " => " Name of the publisher of the media " ],
2022-09-04 09:54:01 +02:00
" publisher-image " => [ " type " => " varbinary(383) " , " comment " => " Image of the publisher of the media " ],
2020-10-29 06:20:26 +01:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
2022-06-19 10:48:47 +02:00
" uri-id-url " => [ " UNIQUE " , " uri-id " , " url(512) " ],
2022-05-05 10:40:50 +02:00
" uri-id-id " => [ " uri-id " , " id " ],
2022-10-16 23:37:05 +02:00
" media-uri-id " => [ " media-uri-id " ],
2022-04-20 08:28:02 +02:00
]
],
" post-question " => [
" comment " => " Question " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" multiple " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Multiple choice " ],
" voters " => [ " type " => " int unsigned " , " comment " => " Number of voters for this question " ],
" end-time " => [ " type " => " datetime " , " default " => DBA :: NULL_DATETIME , " comment " => " Question end time " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uri-id " => [ " UNIQUE " , " uri-id " ],
]
],
" post-question-option " => [
" comment " => " Question option " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Id of the question " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" name " => [ " type " => " varchar(255) " , " comment " => " Name of the option " ],
" replies " => [ " type " => " int unsigned " , " comment " => " Number of replies for this question option " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " id " ],
2020-10-29 06:20:26 +01:00
]
],
2020-05-15 14:17:13 +02:00
" post-tag " => [
" comment " => " post relation to tags " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " comment " => " " ],
" tid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " tag " => " id " , " on delete " => " restrict " ], " comment " => " " ],
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Contact id of the mentioned public contact " ],
],
" indexes " => [
" PRIMARY " => [ " uri-id " , " type " , " tid " , " cid " ],
" tid " => [ " tid " ],
" cid " => [ " cid " ]
]
],
2021-02-04 06:51:25 +01:00
" post-thread " => [
" comment " => " Thread related data " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2022-07-23 08:52:43 +02:00
" conversation-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the conversation uri " ],
2021-02-04 06:51:25 +01:00
" owner-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Item owner " ],
" author-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Item author " ],
2021-03-01 23:19:47 +01:00
" causer-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the contact that caused the item creation " ],
2021-02-04 06:51:25 +01:00
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" received " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2021-04-26 08:50:12 +02:00
" changed " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date that something in the conversation changed, indicating clients should fetch the conversation again " ],
2021-02-04 06:51:25 +01:00
" commented " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ]
],
" indexes " => [
" PRIMARY " => [ " uri-id " ],
2022-07-23 08:52:43 +02:00
" conversation-id " => [ " conversation-id " ],
2021-02-04 06:51:25 +01:00
" owner-id " => [ " owner-id " ],
" author-id " => [ " author-id " ],
" causer-id " => [ " causer-id " ],
" received " => [ " received " ],
" commented " => [ " commented " ],
]
],
2021-02-09 18:10:45 +01:00
" post-user " => [
" comment " => " User specific post data " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2021-02-13 20:56:03 +01:00
" parent-uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the parent uri " ],
" thr-parent-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table that contains the thread parent uri " ],
2021-02-14 10:43:27 +01:00
" external-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the external uri " ],
2021-02-13 20:56:03 +01:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Creation timestamp. " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of last edit (default is created) " ],
" received " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " datetime " ],
" gravity " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " Network from where the item comes from " ],
" owner-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the owner of this item " ],
" author-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the author of this item " ],
2021-03-01 23:19:47 +01:00
" causer-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the contact that caused the item creation " ],
2021-04-07 08:02:06 +02:00
" post-type " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Post type (personal note, image, article, ...) " ],
" post-reason " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Reason why the post arrived at the user " ],
2021-02-13 20:56:03 +01:00
" vid " => [ " type " => " smallint unsigned " , " foreign " => [ " verb " => " id " , " on delete " => " restrict " ], " comment " => " Id of the verb table entry that contains the activity verbs " ],
" private " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " 0=public, 1=private, 2=unlisted " ],
" global " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" visible " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" deleted " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " item has been marked for deletion " ],
2021-02-09 18:10:45 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner id which owns this copy of the item " ],
" protocol " => [ " type " => " tinyint unsigned " , " comment " => " Protocol used to deliver the item for this user " ],
" contact-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " contact.id " ],
2021-02-13 20:56:03 +01:00
" event-id " => [ " type " => " int unsigned " , " foreign " => [ " event " => " id " ], " comment " => " Used to link to the event.id " ],
2021-02-09 18:10:45 +01:00
" unseen " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 1 " , " comment " => " post has not been seen " ],
" hidden " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Marker to hide the post from the user " ],
2022-12-14 00:19:19 +01:00
" notification-type " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2021-02-13 20:56:03 +01:00
" wall " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " This item was posted to the wall of uid " ],
2021-02-09 18:10:45 +01:00
" origin " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " item originated at this site " ],
" psid " => [ " type " => " int unsigned " , " foreign " => [ " permissionset " => " id " , " on delete " => " restrict " ], " comment " => " ID of the permission set of this post " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_uri-id " => [ " UNIQUE " , " uid " , " uri-id " ],
" uri-id " => [ " uri-id " ],
2021-02-20 21:07:25 +01:00
" parent-uri-id " => [ " parent-uri-id " ],
2021-02-13 20:56:03 +01:00
" thr-parent-id " => [ " thr-parent-id " ],
2021-02-14 10:43:27 +01:00
" external-id " => [ " external-id " ],
2021-02-13 20:56:03 +01:00
" owner-id " => [ " owner-id " ],
2021-02-20 21:07:25 +01:00
" author-id " => [ " author-id " ],
2021-02-13 20:56:03 +01:00
" causer-id " => [ " causer-id " ],
" vid " => [ " vid " ],
2021-02-20 21:07:25 +01:00
" contact-id " => [ " contact-id " ],
" event-id " => [ " event-id " ],
" psid " => [ " psid " ],
" author-id_uid " => [ " author-id " , " uid " ],
" author-id_received " => [ " author-id " , " received " ],
" parent-uri-id_uid " => [ " parent-uri-id " , " uid " ],
2022-08-16 13:23:47 +02:00
" uid_wall_received " => [ " uid " , " wall " , " received " ],
2021-02-20 21:07:25 +01:00
" uid_contactid " => [ " uid " , " contact-id " ],
2021-02-13 20:56:03 +01:00
" uid_unseen_contactid " => [ " uid " , " unseen " , " contact-id " ],
2021-02-20 21:07:25 +01:00
" uid_unseen " => [ " uid " , " unseen " ],
2021-03-09 22:21:33 +01:00
" uid_hidden_uri-id " => [ " uid " , " hidden " , " uri-id " ],
2021-02-09 18:10:45 +01:00
],
],
2021-01-31 19:32:22 +01:00
" post-thread-user " => [
" comment " => " Thread related data per user " ,
" fields " => [
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
2022-07-23 08:52:43 +02:00
" conversation-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the conversation uri " ],
2021-02-13 20:56:03 +01:00
" owner-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Item owner " ],
" author-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Item author " ],
2021-03-01 23:19:47 +01:00
" causer-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " , " on delete " => " restrict " ], " comment " => " Link to the contact table with uid=0 of the contact that caused the item creation " ],
2021-02-13 20:56:03 +01:00
" network " => [ " type " => " char(4) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" received " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" changed " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date that something in the conversation changed, indicating clients should fetch the conversation again " ],
" commented " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2021-01-31 19:32:22 +01:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner id which owns this copy of the item " ],
2022-04-07 23:52:25 +02:00
" pinned " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " deprecated " ],
2021-01-31 19:32:22 +01:00
" starred " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
" ignored " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Ignore updates for this thread " ],
" wall " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " This item was posted to the wall of uid " ],
2021-02-04 06:51:25 +01:00
" mention " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2021-01-31 19:32:22 +01:00
" pubmail " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2022-02-12 19:38:36 +01:00
" forum_mode " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Deprecated " ],
2021-02-09 17:35:01 +01:00
" contact-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " contact " => " id " ], " comment " => " contact.id " ],
" unseen " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 1 " , " comment " => " post has not been seen " ],
" hidden " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Marker to hide the post from the user " ],
" origin " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " item originated at this site " ],
" psid " => [ " type " => " int unsigned " , " foreign " => [ " permissionset " => " id " , " on delete " => " restrict " ], " comment " => " ID of the permission set of this post " ],
" post-user-id " => [ " type " => " int unsigned " , " foreign " => [ " post-user " => " id " ], " comment " => " Id of the post-user table " ],
2021-01-31 19:32:22 +01:00
],
" indexes " => [
" PRIMARY " => [ " uid " , " uri-id " ],
" uri-id " => [ " uri-id " ],
2022-07-23 08:52:43 +02:00
" conversation-id " => [ " conversation-id " ],
2021-02-20 21:07:25 +01:00
" owner-id " => [ " owner-id " ],
" author-id " => [ " author-id " ],
" causer-id " => [ " causer-id " ],
" uid " => [ " uid " ],
2021-02-09 17:35:01 +01:00
" contact-id " => [ " contact-id " ],
" psid " => [ " psid " ],
" post-user-id " => [ " post-user-id " ],
2021-02-20 21:07:25 +01:00
" commented " => [ " commented " ],
2021-03-06 06:47:49 +01:00
" uid_received " => [ " uid " , " received " ],
2021-07-08 19:32:41 +02:00
" uid_wall_received " => [ " uid " , " wall " , " received " ],
2021-02-20 21:07:25 +01:00
" uid_commented " => [ " uid " , " commented " ],
2021-03-06 06:47:49 +01:00
" uid_starred " => [ " uid " , " starred " ],
2021-02-20 21:07:25 +01:00
" uid_mention " => [ " uid " , " mention " ],
2021-01-31 19:32:22 +01:00
]
],
2021-02-01 11:31:38 +01:00
" post-user-notification " => [
2021-02-01 21:11:25 +01:00
" comment " => " User post notifications " ,
2021-02-01 11:31:38 +01:00
" fields " => [
2021-02-01 12:09:23 +01:00
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the item uri " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner id which owns this copy of the item " ],
2022-06-05 13:41:08 +02:00
" notification-type " => [ " type " => " smallint unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
2021-02-01 11:31:38 +01:00
],
" indexes " => [
" PRIMARY " => [ " uid " , " uri-id " ],
2021-02-01 12:09:23 +01:00
" uri-id " => [ " uri-id " ],
2021-02-01 11:31:38 +01:00
],
],
2018-10-21 07:56:58 +02:00
" process " => [
" comment " => " Currently running system processes " ,
" fields " => [
2021-11-07 18:04:02 +01:00
" pid " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " The ID of the process " ],
2023-03-12 08:02:46 +01:00
" hostname " => [ " type " => " varchar(255) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " The name of the host the process is ran on " ],
2018-10-21 07:56:58 +02:00
" command " => [ " type " => " varbinary(32) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
],
" indexes " => [
2021-11-06 20:21:01 +01:00
" PRIMARY " => [ " pid " , " hostname " ],
2018-10-21 07:56:58 +02:00
" command " => [ " command " ],
]
],
" profile " => [
" comment " => " user profiles data " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
2020-01-19 15:43:15 +01:00
" profile-name " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" is-default " => [ " type " => " boolean " , " comment " => " Deprecated " ],
2018-10-21 07:56:58 +02:00
" hide-friends " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Hide friend list from viewers of this profile " ],
2023-08-11 01:04:08 +02:00
" name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Unused in favor of user.username " ],
2020-02-09 08:35:39 +01:00
" pdesc " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
2018-10-21 07:56:58 +02:00
" dob " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " 0000-00-00 " , " comment " => " Day of birth " ],
" address " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" locality " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" region " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" postal-code " => [ " type " => " varchar(32) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" country-name " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2020-01-19 15:43:15 +01:00
" hometown " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" gender " => [ " type " => " varchar(32) " , " comment " => " Deprecated " ],
" marital " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" with " => [ " type " => " text " , " comment " => " Deprecated " ],
" howlong " => [ " type " => " datetime " , " comment " => " Deprecated " ],
" sexual " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" politic " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" religion " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
2018-10-21 07:56:58 +02:00
" pub_keywords " => [ " type " => " text " , " comment " => " " ],
" prv_keywords " => [ " type " => " text " , " comment " => " " ],
2020-01-19 15:43:15 +01:00
" likes " => [ " type " => " text " , " comment " => " Deprecated " ],
" dislikes " => [ " type " => " text " , " comment " => " Deprecated " ],
2020-02-09 08:35:39 +01:00
" about " => [ " type " => " text " , " comment " => " Profile description " ],
2020-01-19 15:43:15 +01:00
" summary " => [ " type " => " varchar(255) " , " comment " => " Deprecated " ],
" music " => [ " type " => " text " , " comment " => " Deprecated " ],
" book " => [ " type " => " text " , " comment " => " Deprecated " ],
" tv " => [ " type " => " text " , " comment " => " Deprecated " ],
" film " => [ " type " => " text " , " comment " => " Deprecated " ],
" interest " => [ " type " => " text " , " comment " => " Deprecated " ],
" romance " => [ " type " => " text " , " comment " => " Deprecated " ],
" work " => [ " type " => " text " , " comment " => " Deprecated " ],
" education " => [ " type " => " text " , " comment " => " Deprecated " ],
" contact " => [ " type " => " text " , " comment " => " Deprecated " ],
2018-10-21 07:56:58 +02:00
" homepage " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2022-11-05 15:37:13 +01:00
" homepage_verified " => [ " type " => " boolean " , " not null " => 1 , " default " => " 0 " , " comment " => " was the homepage verified by a rel-me link back to the profile " ],
2021-08-09 03:39:09 +02:00
" xmpp " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " XMPP address " ],
" matrix " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Matrix address " ],
2022-09-04 09:54:01 +02:00
" photo " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" thumb " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" publish " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " publish default profile in local directory " ],
" net-publish " => [ " type " => " boolean " , " not null " => " 1 " , " default " => " 0 " , " comment " => " publish profile in global directory " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid_is-default " => [ " uid " , " is-default " ],
2018-12-24 00:54:06 +01:00
" pub_keywords " => [ " FULLTEXT " , " pub_keywords " ],
2018-10-21 07:56:58 +02:00
]
],
2019-11-08 04:09:19 +01:00
" profile_field " => [
" comment " => " Custom profile fields " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner user id " ],
2019-11-08 04:09:19 +01:00
" order " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 1 " , " comment " => " Field ordering per user " ],
2020-05-10 17:43:43 +02:00
" psid " => [ " type " => " int unsigned " , " foreign " => [ " permissionset " => " id " , " on delete " => " restrict " ], " comment " => " ID of the permission set of this profile field - 0 = public " ],
2019-11-08 04:09:19 +01:00
" label " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " Label of the field " ],
" value " => [ " type " => " text " , " comment " => " Value of the field " ],
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " creation time " ],
" edited " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " last edit time " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid " => [ " uid " ],
" order " => [ " order " ],
" psid " => [ " psid " ],
]
],
2018-10-21 07:56:58 +02:00
" push_subscriber " => [
" comment " => " Used for OStatus: Contains feed subscribers " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2022-09-04 09:54:01 +02:00
" callback_url " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" topic " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" nickname " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" push " => [ " type " => " tinyint " , " not null " => " 1 " , " default " => " 0 " , " comment " => " Retrial counter " ],
" last_update " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of last successful trial " ],
" next_try " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Next retrial date " ],
" renewed " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " Date of last subscription renewal " ],
" secret " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" next_try " => [ " next_try " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ]
2018-10-21 07:56:58 +02:00
]
],
" register " => [
" comment " => " registrations requiring admin approval " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-09-04 09:54:01 +02:00
" hash " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
2018-10-21 07:56:58 +02:00
" created " => [ " type " => " datetime " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2018-10-21 07:56:58 +02:00
" password " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" language " => [ " type " => " varchar(16) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" note " => [ " type " => " text " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " uid " ],
2018-10-21 07:56:58 +02:00
]
],
2022-11-12 22:50:28 +01:00
" report " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2022-11-15 00:27:46 +01:00
" uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Reporting user " ],
2022-12-24 09:03:37 +01:00
" reporter-id " => [ " type " => " int unsigned " , " foreign " => [ " contact " => " id " ], " comment " => " Reporting contact " ],
2022-11-12 22:50:28 +01:00
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " contact " => " id " ], " comment " => " Reported contact " ],
2023-07-11 09:43:53 +02:00
" gsid " => [ " type " => " int unsigned " , " foreign " => [ " gserver " => " id " ], " comment " => " Reported contact server " ],
2022-11-12 22:50:28 +01:00
" comment " => [ " type " => " text " , " comment " => " Report " ],
2022-12-10 15:08:12 +01:00
" category-id " => [ " type " => " int unsigned " , " not null " => 1 , " default " => \Friendica\Moderation\Entity\Report :: CATEGORY_OTHER , " comment " => " Report category, one of Entity \R eport::CATEGORY_* " ],
2022-11-12 22:50:28 +01:00
" forward " => [ " type " => " boolean " , " comment " => " Forward the report to the remote server " ],
2022-12-10 15:08:12 +01:00
" public-remarks " => [ " type " => " text " , " comment " => " Remarks shared with the reporter " ],
" private-remarks " => [ " type " => " text " , " comment " => " Remarks shared with the moderation team " ],
" last-editor-uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Last editor user " ],
" assigned-uid " => [ " type " => " mediumint unsigned " , " foreign " => [ " user " => " uid " ], " comment " => " Assigned moderator user " ],
" status " => [ " type " => " tinyint unsigned " , " not null " => " 1 " , " comment " => " Status of the report, one of Entity \R eport::STATUS_* " ],
" resolution " => [ " type " => " tinyint unsigned " , " comment " => " Resolution of the report, one of Entity \R eport::RESOLUTION_* " ],
" created " => [ " type " => " datetime(6) " , " not null " => " 1 " , " default " => DBA :: NULL_DATETIME , " comment " => " " ],
" edited " => [ " type " => " datetime(6) " , " comment " => " Last time the report has been edited " ],
2022-11-12 22:50:28 +01:00
],
" indexes " => [
" PRIMARY " => [ " id " ],
" uid " => [ " uid " ],
" cid " => [ " cid " ],
2022-12-24 09:03:37 +01:00
" reporter-id " => [ " reporter-id " ],
2022-12-10 15:08:12 +01:00
" gsid " => [ " gsid " ],
2023-07-10 22:50:16 +02:00
" last-editor-uid " => [ " last-editor-uid " ],
2022-12-10 15:08:12 +01:00
" assigned-uid " => [ " assigned-uid " ],
" status-resolution " => [ " status " , " resolution " ],
" created " => [ " created " ],
" edited " => [ " edited " ],
2022-11-12 22:50:28 +01:00
]
],
" report-post " => [
2022-12-10 15:08:12 +01:00
" comment " => " Individual posts attached to a moderation report " ,
2022-11-12 22:50:28 +01:00
" fields " => [
" rid " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " report " => " id " ], " comment " => " Report id " ],
" uri-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " item-uri " => " id " ], " comment " => " Uri-id of the reported post " ],
2022-11-29 20:50:12 +01:00
" status " => [ " type " => " tinyint unsigned " , " comment " => " Status of the reported post " ],
2022-11-12 22:50:28 +01:00
],
" indexes " => [
" PRIMARY " => [ " rid " , " uri-id " ],
" uri-id " => [ " uri-id " ],
]
],
2022-12-10 15:08:12 +01:00
" report-rule " => [
" comment " => " Terms of service rule lines relevant to a moderation report " ,
" fields " => [
" rid " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " foreign " => [ " report " => " id " ], " comment " => " Report id " ],
" line-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " Terms of service rule line number, may become invalid after a TOS change. " ],
" text " => [ " type " => " text " , " not null " => " 1 " , " comment " => " Terms of service rule text recorded at the time of the report " ],
],
" indexes " => [
" PRIMARY " => [ " rid " , " line-id " ],
]
],
2018-10-21 07:56:58 +02:00
" search " => [
" comment " => " " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
2020-08-24 22:06:06 +02:00
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2018-10-21 07:56:58 +02:00
" term " => [ " type " => " varchar(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
2021-02-21 11:37:15 +01:00
" uid_term " => [ " uid " , " term(64) " ],
" term " => [ " term(64) " ]
2018-10-21 07:56:58 +02:00
]
],
" session " => [
" comment " => " web session storage " ,
" fields " => [
" id " => [ " type " => " bigint unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" sid " => [ " type " => " varbinary(255) " , " not null " => " 1 " , " default " => " " , " comment " => " " ],
" data " => [ " type " => " text " , " comment " => " " ],
" expire " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" sid " => [ " sid(64) " ],
" expire " => [ " expire " ],
]
],
2020-05-15 14:17:13 +02:00
" storage " => [
" comment " => " Data stored by Database storage backend " ,
2020-04-17 08:35:20 +02:00
" fields " => [
2020-05-15 14:17:13 +02:00
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " Auto incremented image data id " ],
" data " => [ " type " => " longblob " , " not null " => " 1 " , " comment " => " file data " ]
2020-04-14 01:54:28 +02:00
],
" indexes " => [
2020-05-15 14:17:13 +02:00
" PRIMARY " => [ " id " ]
2020-04-14 01:54:28 +02:00
]
],
2021-08-15 02:30:41 +02:00
" subscription " => [
" comment " => " Push Subscription for the API " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " Auto incremented image data id " ],
" application-id " => [ " type " => " int unsigned " , " not null " => " 1 " , " foreign " => [ " application " => " id " ], " comment " => " " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " Owner User id " ],
" endpoint " => [ " type " => " varchar(511) " , " comment " => " Endpoint URL " ],
" pubkey " => [ " type " => " varchar(127) " , " comment " => " User agent public key " ],
" secret " => [ " type " => " varchar(32) " , " comment " => " Auth secret " ],
" follow " => [ " type " => " boolean " , " comment " => " " ],
" favourite " => [ " type " => " boolean " , " comment " => " " ],
" reblog " => [ " type " => " boolean " , " comment " => " " ],
" mention " => [ " type " => " boolean " , " comment " => " " ],
" poll " => [ " type " => " boolean " , " comment " => " " ],
" follow_request " => [ " type " => " boolean " , " comment " => " " ],
" status " => [ " type " => " boolean " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" application-id_uid " => [ " UNIQUE " , " application-id " , " uid " ],
" uid_application-id " => [ " uid " , " application-id " ],
]
],
2018-10-21 07:56:58 +02:00
" userd " => [
" comment " => " Deleted usernames " ,
" fields " => [
" id " => [ " type " => " int unsigned " , " not null " => " 1 " , " extra " => " auto_increment " , " primary " => " 1 " , " comment " => " sequential ID " ],
" username " => [ " type " => " varchar(255) " , " not null " => " 1 " , " comment " => " " ],
],
" indexes " => [
" PRIMARY " => [ " id " ],
" username " => [ " username(32) " ],
]
],
" user-contact " => [
" comment " => " User specific public contact data " ,
" fields " => [
2020-08-24 22:06:06 +02:00
" cid " => [ " type " => " int unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " contact " => " id " ], " comment " => " Contact id of the linked public contact " ],
" uid " => [ " type " => " mediumint unsigned " , " not null " => " 1 " , " default " => " 0 " , " primary " => " 1 " , " foreign " => [ " user " => " uid " ], " comment " => " User id " ],
2021-09-10 15:05:16 +02:00
" uri-id " => [ " type " => " int unsigned " , " foreign " => [ " item-uri " => " id " ], " comment " => " Id of the item-uri table entry that contains the contact url " ],
2018-10-21 07:56:58 +02:00
" blocked " => [ " type " => " boolean " , " comment " => " Contact is completely blocked for this user " ],
" ignored " => [ " type " => " boolean " , " comment " => " Posts from this contact are ignored " ],
2021-09-10 22:53:10 +02:00
" collapsed " => [ " type " => " boolean " , " comment " => " Posts from this contact are collapsed " ],
2021-11-10 13:05:07 +01:00
" hidden " => [ " type " => " boolean " , " comment " => " This contact is hidden from the others " ],
2022-04-05 21:14:29 +02:00
" is-blocked " => [ " type " => " boolean " , " comment " => " User is blocked by this contact " ],
2021-09-12 22:50:03 +02:00
" pending " => [ " type " => " boolean " , " comment " => " " ],
2021-09-10 22:53:10 +02:00
" rel " => [ " type " => " tinyint unsigned " , " comment " => " The kind of the relation between the user and the contact " ],
" info " => [ " type " => " mediumtext " , " comment " => " " ],
" notify_new_posts " => [ " type " => " boolean " , " comment " => " " ],
2023-07-26 07:27:55 +02:00
" remote_self " => [ " type " => " tinyint unsigned " , " comment " => " 0 => No mirroring, 1-2 => Mirror as own post, 3 => Mirror as reshare " ],
2023-07-26 07:15:24 +02:00
" fetch_further_information " => [ " type " => " tinyint unsigned " , " comment " => " 0 => None, 1 => Fetch information, 3 => Fetch keywords, 2 => Fetch both " ],
2021-09-10 22:53:10 +02:00
" ffi_keyword_denylist " => [ " type " => " text " , " comment " => " " ],
2021-09-12 22:50:03 +02:00
" subhub " => [ " type " => " boolean " , " comment " => " " ],
2022-09-04 09:54:01 +02:00
" hub-verify " => [ " type " => " varbinary(383) " , " comment " => " " ],
2021-09-12 22:50:03 +02:00
" protocol " => [ " type " => " char(4) " , " comment " => " Protocol of the contact " ],
2021-09-13 16:20:20 +02:00
" rating " => [ " type " => " tinyint " , " comment " => " Automatically detected feed poll frequency " ],
" priority " => [ " type " => " tinyint unsigned " , " comment " => " Feed poll priority " ],
2018-10-21 07:56:58 +02:00
],
" indexes " => [
2020-08-24 22:06:06 +02:00
" PRIMARY " => [ " uid " , " cid " ],
" cid " => [ " cid " ],
2021-09-10 15:05:16 +02:00
" uri-id_uid " => [ " UNIQUE " , " uri-id " , " uid " ],
2018-10-21 07:56:58 +02:00
]
],
2022-08-06 19:06:55 +02:00
" arrived-activity " => [
" comment " => " Id of arrived activities " ,
" fields " => [
2022-09-04 09:54:01 +02:00
" object-id " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " object id of the incoming activity " ],
2022-08-06 19:06:55 +02:00
" received " => [ " type " => " datetime " , " comment " => " Receiving date " ],
],
" indexes " => [
" PRIMARY " => [ " object-id " ],
],
" engine " => " MEMORY " ,
],
2022-08-10 11:28:18 +02:00
" fetched-activity " => [
" comment " => " Id of fetched activities " ,
2022-08-06 19:06:55 +02:00
" fields " => [
2022-09-04 09:54:01 +02:00
" object-id " => [ " type " => " varbinary(383) " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " object id of fetched activity " ],
2022-08-06 19:06:55 +02:00
" received " => [ " type " => " datetime " , " comment " => " Receiving date " ],
],
" indexes " => [
" PRIMARY " => [ " object-id " ],
],
" engine " => " MEMORY " ,
],
2018-10-21 07:56:58 +02:00
" worker-ipc " => [
" comment " => " Inter process communication between the frontend and the worker " ,
" fields " => [
" key " => [ " type " => " int " , " not null " => " 1 " , " primary " => " 1 " , " comment " => " " ],
" jobs " => [ " type " => " boolean " , " comment " => " Flag for outstanding jobs " ],
],
" indexes " => [
" PRIMARY " => [ " key " ],
],
" engine " => " MEMORY " ,
],
];