Merge pull request #10403 from annando/doc-structure
Updated database structure documentation
This commit is contained in:
commit
c9ec2e21b3
120
doc/database.md
120
doc/database.md
|
@ -3,50 +3,76 @@ Database Tables
|
|||
|
||||
* [Home](help)
|
||||
|
||||
| Table | Description |
|
||||
|------------------------------------------------------|--------------------------------------------------|
|
||||
| [addon](help/database/db_addon) | registered addons |
|
||||
| [attach](help/database/db_attach) | file attachments |
|
||||
| [auth_codes](help/database/db_auth_codes) | OAuth usage |
|
||||
| [cache](help/database/db_cache) | OEmbed cache |
|
||||
| [challenge](help/database/db_challenge) | |
|
||||
| [clients](help/database/db_clients) | OAuth usage |
|
||||
| [config](help/database/db_config) | main configuration storage |
|
||||
| [contact](help/database/db_contact) | contact table |
|
||||
| [conv](help/database/db_conv) | private messages |
|
||||
| [conversation](help/database/db_conversation) | Raw data and structure information for messages |
|
||||
| [event](help/database/db_event) | Events |
|
||||
| [fcontact](help/database/db_fcontact) | friend suggestion stuff |
|
||||
| [fsuggest](help/database/db_fsuggest) | friend suggestion stuff |
|
||||
| [group](help/database/db_group) | privacy groups, group info |
|
||||
| [group_member](help/database/db_group_member) | privacy groups, member info |
|
||||
| [gserver](help/database/db_gserver) | |
|
||||
| [hook](help/database/db_hook) | addon hook registry |
|
||||
| [intro](help/database/db_intro) | |
|
||||
| [item](help/database/db_item) | all posts |
|
||||
| [locks](help/database/db_locks) | |
|
||||
| [mail](help/database/db_mail) | private messages |
|
||||
| [mailacct](help/database/db_mailacct) | |
|
||||
| [manage](help/database/db_manage) | table of accounts that can "su" each other |
|
||||
| [notify](help/database/db_notify) | notifications |
|
||||
| [notify-threads](help/database/db_notify-threads) | |
|
||||
| [oembed](help/database/db_oembed) | cache for OEmbed queries |
|
||||
| [parsed_url](help/database/db_parsed_url) | cache for "parse_url" queries |
|
||||
| [pconfig](help/database/db_pconfig) | personal (per user) configuration storage |
|
||||
| [photo](help/database/db_photo) | photo storage |
|
||||
| [poll](help/database/db_poll) | data for polls |
|
||||
| [poll_result](help/database/db_poll_result) | data for poll elements |
|
||||
| [profile](help/database/db_profile) | user profiles data |
|
||||
| [profile_check](help/database/db_profile_check) | DFRN remote auth use |
|
||||
| [push_subscriber](help/database/db_push_subscriber) | |
|
||||
| [queue](help/database/db_queue) | |
|
||||
| [register](help/database/db_register) | registrations requiring admin approval |
|
||||
| [search](help/database/db_search) | |
|
||||
| [session](help/database/db_session) | web session storage |
|
||||
| [sign](help/database/db_sign) | Diaspora signatures |
|
||||
| [term](help/database/db_term) | item taxonomy (categories, tags, etc.) table |
|
||||
| [thread](help/database/db_thread) | |
|
||||
| [tokens](help/database/db_tokens) | OAuth usage |
|
||||
| [user](help/database/db_user) | local user table |
|
||||
| [userd](help/database/db_userd) | |
|
||||
| [workerqueue](help/database/db_workerqueue) | |
|
||||
| Table | Description |
|
||||
|-------|-------------|
|
||||
| [2fa_app_specific_password](help/database/db_2fa_app_specific_password) | Two-factor app-specific _password |
|
||||
| [2fa_recovery_codes](help/database/db_2fa_recovery_codes) | Two-factor authentication recovery codes |
|
||||
| [2fa_trusted_browser](help/database/db_2fa_trusted_browser) | Two-factor authentication trusted browsers |
|
||||
| [addon](help/database/db_addon) | registered addons |
|
||||
| [apcontact](help/database/db_apcontact) | ActivityPub compatible contacts - used in the ActivityPub implementation |
|
||||
| [application](help/database/db_application) | OAuth application |
|
||||
| [application-token](help/database/db_application-token) | OAuth user token |
|
||||
| [attach](help/database/db_attach) | file attachments |
|
||||
| [auth_codes](help/database/db_auth_codes) | OAuth usage |
|
||||
| [cache](help/database/db_cache) | Stores temporary data |
|
||||
| [challenge](help/database/db_challenge) | |
|
||||
| [clients](help/database/db_clients) | OAuth usage |
|
||||
| [config](help/database/db_config) | main configuration storage |
|
||||
| [contact](help/database/db_contact) | contact table |
|
||||
| [contact-relation](help/database/db_contact-relation) | Contact relations |
|
||||
| [conv](help/database/db_conv) | private messages |
|
||||
| [conversation](help/database/db_conversation) | Raw data and structure information for messages |
|
||||
| [delayed-post](help/database/db_delayed-post) | Posts that are about to be distributed at a later time |
|
||||
| [diaspora-interaction](help/database/db_diaspora-interaction) | Signed Diaspora Interaction |
|
||||
| [event](help/database/db_event) | Events |
|
||||
| [fcontact](help/database/db_fcontact) | Diaspora compatible contacts - used in the Diaspora implementation |
|
||||
| [fsuggest](help/database/db_fsuggest) | friend suggestion stuff |
|
||||
| [group](help/database/db_group) | privacy groups, group info |
|
||||
| [group_member](help/database/db_group_member) | privacy groups, member info |
|
||||
| [gserver](help/database/db_gserver) | Global servers |
|
||||
| [gserver-tag](help/database/db_gserver-tag) | Tags that the server has subscribed |
|
||||
| [hook](help/database/db_hook) | addon hook registry |
|
||||
| [host](help/database/db_host) | Hostname |
|
||||
| [inbox-status](help/database/db_inbox-status) | Status of ActivityPub inboxes |
|
||||
| [intro](help/database/db_intro) | |
|
||||
| [item-uri](help/database/db_item-uri) | URI and GUID for items |
|
||||
| [locks](help/database/db_locks) | |
|
||||
| [mail](help/database/db_mail) | private messages |
|
||||
| [mailacct](help/database/db_mailacct) | Mail account data for fetching mails |
|
||||
| [manage](help/database/db_manage) | table of accounts that can manage each other |
|
||||
| [notification](help/database/db_notification) | notifications |
|
||||
| [notify](help/database/db_notify) | notifications |
|
||||
| [notify-threads](help/database/db_notify-threads) | |
|
||||
| [oembed](help/database/db_oembed) | cache for OEmbed queries |
|
||||
| [openwebauth-token](help/database/db_openwebauth-token) | Store OpenWebAuth token to verify contacts |
|
||||
| [parsed_url](help/database/db_parsed_url) | cache for 'parse_url' queries |
|
||||
| [pconfig](help/database/db_pconfig) | personal (per user) configuration storage |
|
||||
| [permissionset](help/database/db_permissionset) | |
|
||||
| [photo](help/database/db_photo) | photo storage |
|
||||
| [post](help/database/db_post) | Structure for all posts |
|
||||
| [post-category](help/database/db_post-category) | post relation to categories |
|
||||
| [post-content](help/database/db_post-content) | Content for all posts |
|
||||
| [post-delivery-data](help/database/db_post-delivery-data) | Delivery data for items |
|
||||
| [post-media](help/database/db_post-media) | Attached media |
|
||||
| [post-tag](help/database/db_post-tag) | post relation to tags |
|
||||
| [post-thread](help/database/db_post-thread) | Thread related data |
|
||||
| [post-thread-user](help/database/db_post-thread-user) | Thread related data per user |
|
||||
| [post-user](help/database/db_post-user) | User specific post data |
|
||||
| [post-user-notification](help/database/db_post-user-notification) | User post notifications |
|
||||
| [process](help/database/db_process) | Currently running system processes |
|
||||
| [profile](help/database/db_profile) | user profiles data |
|
||||
| [profile_check](help/database/db_profile_check) | DFRN remote auth use |
|
||||
| [profile_field](help/database/db_profile_field) | Custom profile fields |
|
||||
| [push_subscriber](help/database/db_push_subscriber) | Used for OStatus: Contains feed subscribers |
|
||||
| [register](help/database/db_register) | registrations requiring admin approval |
|
||||
| [search](help/database/db_search) | |
|
||||
| [session](help/database/db_session) | web session storage |
|
||||
| [storage](help/database/db_storage) | Data stored by Database storage backend |
|
||||
| [tag](help/database/db_tag) | tags and mentions |
|
||||
| [tokens](help/database/db_tokens) | OAuth usage |
|
||||
| [user](help/database/db_user) | The local users |
|
||||
| [user-contact](help/database/db_user-contact) | User specific public contact data |
|
||||
| [userd](help/database/db_userd) | Deleted usernames |
|
||||
| [verb](help/database/db_verb) | Activity Verbs |
|
||||
| [worker-ipc](help/database/db_worker-ipc) | Inter process communication between the frontend and the worker |
|
||||
| [workerqueue](help/database/db_workerqueue) | Background tasks queue entries |
|
||||
|
|
33
doc/database/db_2fa_app_specific_password.md
Normal file
33
doc/database/db_2fa_app_specific_password.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Table 2fa_app_specific_password
|
||||
===========
|
||||
|
||||
Two-factor app-specific _password
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------------- | ---------------------------------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | Password ID for revocation | mediumint unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User ID | mediumint unsigned | NO | | NULL | |
|
||||
| description | Description of the usage of the password | varchar(255) | YES | | NULL | |
|
||||
| hashed_password | Hashed password | varchar(255) | NO | | NULL | |
|
||||
| generated | Datetime the password was generated | datetime | NO | | NULL | |
|
||||
| last_used | Datetime the password was last used | datetime | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------------- | --------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_description | uid, description(190) |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
30
doc/database/db_2fa_recovery_codes.md
Normal file
30
doc/database/db_2fa_recovery_codes.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
Table 2fa_recovery_codes
|
||||
===========
|
||||
|
||||
Two-factor authentication recovery codes
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| uid | User ID | mediumint unsigned | NO | PRI | NULL | |
|
||||
| code | Recovery code string | varchar(50) | NO | PRI | NULL | |
|
||||
| generated | Datetime the code was generated | datetime | NO | | NULL | |
|
||||
| used | Datetime the code was used | datetime | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | --------- |
|
||||
| PRIMARY | uid, code |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
32
doc/database/db_2fa_trusted_browser.md
Normal file
32
doc/database/db_2fa_trusted_browser.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
Table 2fa_trusted_browser
|
||||
===========
|
||||
|
||||
Two-factor authentication trusted browsers
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------- | ------------------------------------------ | ------------------ | ---- | --- | ------- | ----- |
|
||||
| cookie_hash | Trusted cookie hash | varchar(80) | NO | PRI | NULL | |
|
||||
| uid | User ID | mediumint unsigned | NO | | NULL | |
|
||||
| user_agent | User agent string | text | YES | | NULL | |
|
||||
| created | Datetime the trusted browser was recorded | datetime | NO | | NULL | |
|
||||
| last_used | Datetime the trusted browser was last used | datetime | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ----------- |
|
||||
| PRIMARY | cookie_hash |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,17 +1,29 @@
|
|||
Table addon
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | --------------------------------------------- | ---------- | ---- | --- | ------- | --------------- |
|
||||
| id | | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| name | addon base (file)name | char(255) | NO | | | |
|
||||
| version | currently unused | char(255) | NO | | | |
|
||||
| installed | currently always 1 | tinyint(1) | NO | | 0 | |
|
||||
| hidden | currently unused | tinyint(1) | NO | | 0 | |
|
||||
| timestamp | file timestamp to check for reloads | bigint(20) | NO | | 0 | |
|
||||
| plugin_admin | 1 = has admin config, 0 = has no admin config | tinyint(1) | NO | | 0 | |
|
||||
registered addons
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | --------------------------------------------- | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| name | addon base (file)name | varchar(50) | NO | | | |
|
||||
| version | currently unused | varchar(50) | NO | | | |
|
||||
| installed | currently always 1 | boolean | NO | | 0 | |
|
||||
| hidden | currently unused | boolean | NO | | 0 | |
|
||||
| timestamp | file timestamp to check for reloads | int unsigned | NO | | 0 | |
|
||||
| plugin_admin | 1 = has admin config, 0 = has no admin config | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------------- | --------------- |
|
||||
| PRIMARY | id |
|
||||
| installed_name | installed, name |
|
||||
| name | UNIQUE, name |
|
||||
|
||||
Notes:
|
||||
These are addons which have been enabled by the site administrator on the addon page
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
56
doc/database/db_apcontact.md
Normal file
56
doc/database/db_apcontact.md
Normal file
|
@ -0,0 +1,56 @@
|
|||
Table apcontact
|
||||
===========
|
||||
|
||||
ActivityPub compatible contacts - used in the ActivityPub implementation
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------------- | ---------------------------- | -------------- | ---- | --- | ------------------- | ----- |
|
||||
| url | URL of the contact | varbinary(255) | NO | PRI | NULL | |
|
||||
| uuid | | varchar(255) | YES | | NULL | |
|
||||
| type | | varchar(20) | NO | | NULL | |
|
||||
| following | | varchar(255) | YES | | NULL | |
|
||||
| followers | | varchar(255) | YES | | NULL | |
|
||||
| inbox | | varchar(255) | NO | | NULL | |
|
||||
| outbox | | varchar(255) | YES | | NULL | |
|
||||
| sharedinbox | | varchar(255) | YES | | NULL | |
|
||||
| manually-approve | | boolean | YES | | NULL | |
|
||||
| nick | | varchar(255) | NO | | | |
|
||||
| name | | varchar(255) | YES | | NULL | |
|
||||
| about | | text | YES | | NULL | |
|
||||
| photo | | varchar(255) | YES | | NULL | |
|
||||
| addr | | varchar(255) | YES | | NULL | |
|
||||
| alias | | varchar(255) | YES | | NULL | |
|
||||
| pubkey | | text | YES | | NULL | |
|
||||
| subscribe | | varchar(255) | YES | | NULL | |
|
||||
| baseurl | baseurl of the ap contact | varchar(255) | YES | | NULL | |
|
||||
| gsid | Global Server ID | int unsigned | YES | | NULL | |
|
||||
| generator | Name of the contact's system | varchar(255) | YES | | NULL | |
|
||||
| following_count | Number of following contacts | int unsigned | YES | | 0 | |
|
||||
| followers_count | Number of followers | int unsigned | YES | | 0 | |
|
||||
| statuses_count | Number of posts | int unsigned | YES | | 0 | |
|
||||
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ----------- | ---------------- |
|
||||
| PRIMARY | url |
|
||||
| addr | addr(32) |
|
||||
| alias | alias(190) |
|
||||
| followers | followers(190) |
|
||||
| baseurl | baseurl(190) |
|
||||
| sharedinbox | sharedinbox(190) |
|
||||
| gsid | gsid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| gsid | [gserver](help/database/db_gserver) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
38
doc/database/db_application-token.md
Normal file
38
doc/database/db_application-token.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
Table application-token
|
||||
===========
|
||||
|
||||
OAuth user token
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------------- | ------------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| application-id | | int unsigned | NO | PRI | NULL | |
|
||||
| uid | Owner User id | mediumint unsigned | NO | PRI | NULL | |
|
||||
| code | | varchar(64) | NO | | NULL | |
|
||||
| access_token | | varchar(64) | NO | | NULL | |
|
||||
| created_at | creation time | datetime | NO | | NULL | |
|
||||
| scopes | | varchar(255) | YES | | NULL | |
|
||||
| read | Read scope | boolean | YES | | NULL | |
|
||||
| write | Write scope | boolean | YES | | NULL | |
|
||||
| follow | Follow scope | boolean | YES | | NULL | |
|
||||
| push | Push scope | boolean | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------------------- |
|
||||
| PRIMARY | application-id, uid |
|
||||
| uid_id | uid, application-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| application-id | [application](help/database/db_application) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
32
doc/database/db_application.md
Normal file
32
doc/database/db_application.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
Table application
|
||||
===========
|
||||
|
||||
OAuth application
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | --------------- | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | generated index | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| client_id | | varchar(64) | NO | | NULL | |
|
||||
| client_secret | | varchar(64) | NO | | NULL | |
|
||||
| name | | varchar(255) | NO | | NULL | |
|
||||
| redirect_uri | | varchar(255) | NO | | NULL | |
|
||||
| website | | varchar(255) | YES | | NULL | |
|
||||
| scopes | | varchar(255) | YES | | NULL | |
|
||||
| read | Read scope | boolean | YES | | NULL | |
|
||||
| write | Write scope | boolean | YES | | NULL | |
|
||||
| follow | Follow scope | boolean | YES | | NULL | |
|
||||
| push | Push scope | boolean | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | ----------------- |
|
||||
| PRIMARY | id |
|
||||
| client_id | UNIQUE, client_id |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,22 +1,42 @@
|
|||
Table attach
|
||||
============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ------------------------------------------------------| ------------ | ---- | --- | ------------------- | --------------- |
|
||||
| id | generated index | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | user_id of owner | int(11) | NO | | 0 | |
|
||||
| hash | hash | varchar(64) | NO | | | |
|
||||
| filename | filename of original | varchar(255) | NO | | | |
|
||||
| filetype | mimetype | varchar(64) | NO | | | |
|
||||
| filesize | size in bytes | int(11) | NO | | 0 | |
|
||||
| data | file data | longblob | NO | | NULL | |
|
||||
| created | creation time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edit time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78> | mediumtext | NO | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | NO | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | NO | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | NO | | NULL | |
|
||||
file attachments
|
||||
|
||||
Notes: Permissions are surrounded by angle chars. e.g. <4>
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | ----------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | generated index | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| hash | hash | varchar(64) | NO | | | |
|
||||
| filename | filename of original | varchar(255) | NO | | | |
|
||||
| filetype | mimetype | varchar(64) | NO | | | |
|
||||
| filesize | size in bytes | int unsigned | NO | | 0 | |
|
||||
| data | file data | longblob | NO | | NULL | |
|
||||
| created | creation time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edit time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78> | mediumtext | YES | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | YES | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | YES | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | YES | | NULL | |
|
||||
| backend-class | Storage backend class | tinytext | YES | | NULL | |
|
||||
| backend-ref | Storage backend data reference | text | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,14 +1,32 @@
|
|||
Table auth_codes
|
||||
================
|
||||
===========
|
||||
|
||||
OAuth2 authorisation register - currently implemented but unused
|
||||
OAuth usage
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | ----------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| id | | varchar(40) | NO | PRI | NULL | |
|
||||
| client_id | | varchar(20) | NO | | | |
|
||||
| redirect_uri | | varchar(200) | NO | | | |
|
||||
| expires | | int(11) | NO | | 0 | |
|
||||
| scope | | varchar(250) | NO | | | |
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ----------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| id | | varchar(40) | NO | PRI | NULL | |
|
||||
| client_id | | varchar(20) | NO | | | |
|
||||
| redirect_uri | | varchar(200) | NO | | | |
|
||||
| expires | | int | NO | | 0 | |
|
||||
| scope | | varchar(250) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | --------- |
|
||||
| PRIMARY | id |
|
||||
| client_id | client_id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| client_id | [clients](help/database/db_clients) | client_id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -3,11 +3,23 @@ Table cache
|
|||
|
||||
Stores temporary data
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ---------------------------------- | ------------ | ---- | --- | ------------------- | ----- |
|
||||
| k | cache key | varchar(255) | NO | PRI | NULL | |
|
||||
| v | cached serialized value | text | NO | | NULL | |
|
||||
| expires | datetime of cache expiration | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| updated | datetime of cache insertion | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ---------------------------- | -------------- | ---- | --- | ------------------- | ----- |
|
||||
| k | cache key | varbinary(255) | NO | PRI | NULL | |
|
||||
| v | cached serialized value | mediumtext | YES | | NULL | |
|
||||
| expires | datetime of cache expiration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| updated | datetime of cache insertion | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | ---------- |
|
||||
| PRIMARY | k |
|
||||
| k_expires | k, expires |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,13 +1,27 @@
|
|||
Table challenge
|
||||
===============
|
||||
===========
|
||||
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------- | ------------- | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| challenge | | varchar(255) | NO | | | |
|
||||
| dfrn-id | | varchar(255) | NO | | | |
|
||||
| expire | | int unsigned | NO | | 0 | |
|
||||
| type | | varchar(255) | NO | | | |
|
||||
| last_update | | varchar(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| expire | expire |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------------|------------------|------------------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| challenge | | varchar(255) | NO | | | |
|
||||
| dfrn-id | | varchar(255) | NO | | | |
|
||||
| expire | | int(11) | NO | | 0 | |
|
||||
| type | | varchar(255) | NO | | | |
|
||||
| last_update | | varchar(255) | NO | | | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,13 +1,33 @@
|
|||
Table clients
|
||||
=============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | ----------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| client_id | | varchar(20) | NO | PRI | NULL | |
|
||||
| pw | | varchar(20) | NO | | | |
|
||||
| redirect_uri | | varchar(200) | NO | | | |
|
||||
| name | | text | YES | | NULL | |
|
||||
| icon | | text | YES | | NULL | |
|
||||
| uid | | int(11) | NO | | 0 | |
|
||||
OAuth usage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ----------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| client_id | | varchar(20) | NO | PRI | NULL | |
|
||||
| pw | | varchar(20) | NO | | | |
|
||||
| redirect_uri | | varchar(200) | NO | | | |
|
||||
| name | | text | YES | | NULL | |
|
||||
| icon | | text | YES | | NULL | |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | --------- |
|
||||
| PRIMARY | client_id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,11 +1,25 @@
|
|||
Table config
|
||||
============
|
||||
===========
|
||||
|
||||
main configuration storage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ----------- | ------------- | ---- | --- | ------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| cat | | varbinary(50) | NO | | | |
|
||||
| k | | varbinary(50) | NO | | | |
|
||||
| v | | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | -------------- |
|
||||
| PRIMARY | id |
|
||||
| cat_k | UNIQUE, cat, k |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ----------- | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| cat | | char(255) | NO | MUL | | |
|
||||
| k | | char(255) | NO | | | |
|
||||
| v | | text | NO | | NULL | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
33
doc/database/db_contact-relation.md
Normal file
33
doc/database/db_contact-relation.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Table contact-relation
|
||||
===========
|
||||
|
||||
Contact relations
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------------- | --------------------------------------------------- | ------------ | ---- | --- | ------------------- | ----- |
|
||||
| cid | contact the related contact had interacted with | int unsigned | NO | PRI | 0 | |
|
||||
| relation-cid | related contact who had interacted with the contact | int unsigned | NO | PRI | 0 | |
|
||||
| last-interaction | Date of the last interaction | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| follow-updated | Date of the last update of the contact relationship | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| follows | | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------ | ----------------- |
|
||||
| PRIMARY | cid, relation-cid |
|
||||
| relation-cid | relation-cid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
| relation-cid | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,72 +1,129 @@
|
|||
Table contact
|
||||
=============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------------------------|-----------------------------------------------------------|--------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id of the owner of this data | int(11) | NO | MUL | 0 | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| self | 1 if the contact is the user him/her self | tinyint(1) | NO | | 0 | |
|
||||
| remote_self | | tinyint(1) | NO | | 0 | |
|
||||
| rel | The kind of the relation between the user and the contact | tinyint(1) | NO | | 0 | |
|
||||
| duplex | | tinyint(1) | NO | | 0 | |
|
||||
| network | Network protocol of the contact | varchar(255) | NO | | | |
|
||||
| name | Name that this contact is known by | varchar(255) | NO | | | |
|
||||
| nick | Nick- and user name of the contact | varchar(255) | NO | | | |
|
||||
| location | | varchar(255) | NO | | | |
|
||||
| about | | text | NO | | NULL | |
|
||||
| keywords | public keywords (interests) of the contact | text | NO | | NULL | |
|
||||
| gender | | varchar(32) | NO | | | |
|
||||
| attag | | varchar(255) | NO | | | |
|
||||
| photo | Link to the profile photo of the contact | text | NO | | NULL | |
|
||||
| thumb | Link to the profile photo (thumb size) | text | NO | | NULL | |
|
||||
| micro | Link to the profile photo (micro size) | text | NO | | NULL | |
|
||||
| site-pubkey | | text | NO | | NULL | |
|
||||
| issued-id | | varchar(255) | NO | | | |
|
||||
| dfrn-id | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| nurl | | varchar(255) | NO | | | |
|
||||
| addr | | varchar(255) | NO | | | |
|
||||
| alias | | varchar(255) | NO | | | |
|
||||
| pubkey | RSA public key 4096 bit | text | NO | | NULL | |
|
||||
| prvkey | RSA private key 4096 bit | text | NO | | NULL | |
|
||||
| batch | | varchar(255) | NO | | | |
|
||||
| request | | text | NO | | NULL | |
|
||||
| notify | | text | NO | | NULL | |
|
||||
| poll | | text | NO | | NULL | |
|
||||
| confirm | | text | NO | | NULL | |
|
||||
| poco | | text | NO | | NULL | |
|
||||
| aes_allow | | tinyint(1) | NO | | 0 | |
|
||||
| ret-aes | | tinyint(1) | NO | | 0 | |
|
||||
| usehub | | tinyint(1) | NO | | 0 | |
|
||||
| subhub | | tinyint(1) | NO | | 0 | |
|
||||
| hub-verify | | varchar(255) | NO | | | |
|
||||
| last-update | Date of the last try to update the contact info | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| success_update | Date of the last successful contact update | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| failure_update | Date of the last failed update | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| name-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| uri-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| avatar-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| term-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| last-item | date of the last post | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| priority | | tinyint(3) | NO | | 0 | |
|
||||
| blocked | | tinyint(1) | NO | | 1 | |
|
||||
| readonly | posts of the contact are readonly | tinyint(1) | NO | | 0 | |
|
||||
| writable | | tinyint(1) | NO | | 0 | |
|
||||
| forum | contact is a forum | tinyint(1) | NO | | 0 | |
|
||||
| prv | contact is a private group | tinyint(1) | NO | | 0 | |
|
||||
| hidden | | tinyint(1) | NO | | 0 | |
|
||||
| archive | | tinyint(1) | NO | | 0 | |
|
||||
| pending | | tinyint(1) | NO | | 1 | |
|
||||
| rating | | tinyint(1) | NO | | 0 | |
|
||||
| reason | | text | NO | | NULL | |
|
||||
| closeness | | tinyint(2) | NO | | 99 | |
|
||||
| info | | mediumtext | NO | | NULL | |
|
||||
| profile-id | | int(11) | NO | | 0 | |
|
||||
| bdyear | | varchar(4) | NO | | | |
|
||||
| bd | | date | NO | | 0001-01-01 | |
|
||||
| notify_new_posts | | tinyint(1) | NO | | 0 | |
|
||||
| fetch_further_information | | tinyint(1) | NO | | 0 | |
|
||||
| ffi_keyword_denylist | | mediumtext | NO | | NULL | |
|
||||
contact table
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------------------- | --------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| updated | Date of last contact update | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| self | 1 if the contact is the user him/her self | boolean | NO | | 0 | |
|
||||
| remote_self | | boolean | NO | | 0 | |
|
||||
| rel | The kind of the relation between the user and the contact | tinyint unsigned | NO | | 0 | |
|
||||
| duplex | | boolean | NO | | 0 | |
|
||||
| network | Network of the contact | char(4) | NO | | | |
|
||||
| protocol | Protocol of the contact | char(4) | NO | | | |
|
||||
| name | Name that this contact is known by | varchar(255) | NO | | | |
|
||||
| nick | Nick- and user name of the contact | varchar(255) | NO | | | |
|
||||
| location | | varchar(255) | YES | | | |
|
||||
| about | | text | YES | | NULL | |
|
||||
| keywords | public keywords (interests) of the contact | text | YES | | NULL | |
|
||||
| gender | Deprecated | varchar(32) | NO | | | |
|
||||
| xmpp | | varchar(255) | NO | | | |
|
||||
| attag | | varchar(255) | NO | | | |
|
||||
| avatar | | varchar(255) | NO | | | |
|
||||
| photo | Link to the profile photo of the contact | varchar(255) | YES | | | |
|
||||
| thumb | Link to the profile photo (thumb size) | varchar(255) | YES | | | |
|
||||
| micro | Link to the profile photo (micro size) | varchar(255) | YES | | | |
|
||||
| site-pubkey | | text | YES | | NULL | |
|
||||
| issued-id | | varchar(255) | NO | | | |
|
||||
| dfrn-id | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| nurl | | varchar(255) | NO | | | |
|
||||
| addr | | varchar(255) | NO | | | |
|
||||
| alias | | varchar(255) | NO | | | |
|
||||
| pubkey | RSA public key 4096 bit | text | YES | | NULL | |
|
||||
| prvkey | RSA private key 4096 bit | text | YES | | NULL | |
|
||||
| batch | | varchar(255) | NO | | | |
|
||||
| request | | varchar(255) | YES | | NULL | |
|
||||
| notify | | varchar(255) | YES | | NULL | |
|
||||
| poll | | varchar(255) | YES | | NULL | |
|
||||
| confirm | | varchar(255) | YES | | NULL | |
|
||||
| subscribe | | varchar(255) | YES | | NULL | |
|
||||
| poco | | varchar(255) | YES | | NULL | |
|
||||
| aes_allow | | boolean | NO | | 0 | |
|
||||
| ret-aes | | boolean | NO | | 0 | |
|
||||
| usehub | | boolean | NO | | 0 | |
|
||||
| subhub | | boolean | NO | | 0 | |
|
||||
| hub-verify | | varchar(255) | NO | | | |
|
||||
| last-update | Date of the last try to update the contact info | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| success_update | Date of the last successful contact update | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| failure_update | Date of the last failed update | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| failed | Connection failed | boolean | YES | | NULL | |
|
||||
| name-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| uri-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| avatar-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| term-date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| last-item | date of the last post | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| last-discovery | date of the last follower discovery | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| priority | | tinyint unsigned | NO | | 0 | |
|
||||
| blocked | Node-wide block status | boolean | NO | | 1 | |
|
||||
| block_reason | Node-wide block reason | text | YES | | NULL | |
|
||||
| readonly | posts of the contact are readonly | boolean | NO | | 0 | |
|
||||
| writable | | boolean | NO | | 0 | |
|
||||
| forum | contact is a forum | boolean | NO | | 0 | |
|
||||
| prv | contact is a private group | boolean | NO | | 0 | |
|
||||
| contact-type | | tinyint | NO | | 0 | |
|
||||
| manually-approve | | boolean | YES | | NULL | |
|
||||
| hidden | | boolean | NO | | 0 | |
|
||||
| archive | | boolean | NO | | 0 | |
|
||||
| pending | | boolean | NO | | 1 | |
|
||||
| deleted | Contact has been deleted | boolean | NO | | 0 | |
|
||||
| rating | | tinyint | NO | | 0 | |
|
||||
| unsearchable | Contact prefers to not be searchable | boolean | NO | | 0 | |
|
||||
| sensitive | Contact posts sensitive content | boolean | NO | | 0 | |
|
||||
| baseurl | baseurl of the contact | varchar(255) | YES | | | |
|
||||
| gsid | Global Server ID | int unsigned | YES | | NULL | |
|
||||
| reason | | text | YES | | NULL | |
|
||||
| closeness | | tinyint unsigned | NO | | 99 | |
|
||||
| info | | mediumtext | YES | | NULL | |
|
||||
| profile-id | Deprecated | int unsigned | YES | | NULL | |
|
||||
| bdyear | | varchar(4) | NO | | | |
|
||||
| bd | | date | NO | | 0001-01-01 | |
|
||||
| notify_new_posts | | boolean | NO | | 0 | |
|
||||
| fetch_further_information | | tinyint unsigned | NO | | 0 | |
|
||||
| ffi_keyword_denylist | | text | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------------------------- | ------------------------------------ |
|
||||
| PRIMARY | id |
|
||||
| uid_name | uid, name(190) |
|
||||
| self_uid | self, uid |
|
||||
| alias_uid | alias(128), uid |
|
||||
| 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) |
|
||||
| batch_contact-type | batch(64), contact-type |
|
||||
| addr_uid | addr(128), uid |
|
||||
| nurl_uid | nurl(128), uid |
|
||||
| nick_uid | nick(128), uid |
|
||||
| attag_uid | attag(96), uid |
|
||||
| dfrn-id | dfrn-id(64) |
|
||||
| issued-id | issued-id(64) |
|
||||
| network_uid_lastupdate | network, uid, last-update |
|
||||
| uid_network_self_lastupdate | uid, network, self, last-update |
|
||||
| uid_lastitem | uid, last-item |
|
||||
| baseurl | baseurl(64) |
|
||||
| uid_contact-type | uid, contact-type |
|
||||
| uid_self_contact-type | uid, self, contact-type |
|
||||
| self_network_uid | self, network, uid |
|
||||
| gsid | gsid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| gsid | [gserver](help/database/db_gserver) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,15 +1,35 @@
|
|||
Table conv
|
||||
==========
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------------------------------------- | ---------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | A unique identifier for this conversation | varchar(64) | NO | | | |
|
||||
| recips | sender_handle;recipient_handle | mediumtext | NO | | NULL | |
|
||||
| uid | user_id of the owner of this data | int(11) | NO | MUL | 0 | |
|
||||
| creator | handle of creator | varchar(255) | NO | | | |
|
||||
| created | creation timestamp | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| updated | edited timestamp | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| subject | subject of initial message | mediumtext | NO | | NULL | |
|
||||
private messages
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | A unique identifier for this conversation | varchar(255) | NO | | | |
|
||||
| recips | sender_handle;recipient_handle | text | YES | | NULL | |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| creator | handle of creator | varchar(255) | NO | | | |
|
||||
| created | creation timestamp | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| updated | edited timestamp | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| subject | subject of initial message | text | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,14 +1,30 @@
|
|||
Table conversation
|
||||
==================
|
||||
===========
|
||||
|
||||
Raw data and structure information for messages
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------------- | -------------------------------------------------------------------- | ---------------- | ---- | --- | ------------------- | ----- |
|
||||
| item-uri | Original URI of the item - unrelated to the table with the same name | varbinary(255) | NO | PRI | NULL | |
|
||||
| reply-to-uri | URI to which this item is a reply | varbinary(255) | NO | | | |
|
||||
| conversation-uri | GNU Social conversation URI | varbinary(255) | NO | | | |
|
||||
| conversation-href | GNU Social conversation link | varbinary(255) | NO | | | |
|
||||
| protocol | The protocol of the item | tinyint unsigned | NO | | 255 | |
|
||||
| direction | How the message arrived here: 1=push, 2=pull | tinyint unsigned | NO | | 0 | |
|
||||
| source | Original source | mediumtext | YES | | NULL | |
|
||||
| received | Receiving date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ---------------- | ---------------- |
|
||||
| PRIMARY | item-uri |
|
||||
| conversation-uri | conversation-uri |
|
||||
| received | received |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------------------| ---------------------------------- |---------------------|------|-----|---------------------|----------------|
|
||||
| item-uri | URI of the item | varbinary(255) | NO | PRI | NULL | |
|
||||
| reply-to-uri | URI to which this item is a reply | varbinary(255) | NO | | | |
|
||||
| conversation-uri | GNU Social conversation URI | varbinary(255) | NO | | | |
|
||||
| conversation-href | GNU Social conversation link | varbinary(255) | NO | | | |
|
||||
| protocol | The protocol of the item | tinyint(1) unsigned | NO | | 0 | |
|
||||
| source | Original source | mediumtext | NO | | | |
|
||||
| received | Receiving date | datetime | NO | | 0001-01-01 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
31
doc/database/db_delayed-post.md
Normal file
31
doc/database/db_delayed-post.md
Normal file
|
@ -0,0 +1,31 @@
|
|||
Table delayed-post
|
||||
===========
|
||||
|
||||
Posts that are about to be distributed at a later time
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ---------------------------------------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uri | URI of the post that will be distributed later | varchar(255) | YES | | NULL | |
|
||||
| uid | Owner User id | mediumint unsigned | YES | | NULL | |
|
||||
| delayed | delay time | datetime | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | --------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_uri | UNIQUE, uid, uri(190) |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
28
doc/database/db_diaspora-interaction.md
Normal file
28
doc/database/db_diaspora-interaction.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
Table diaspora-interaction
|
||||
===========
|
||||
|
||||
Signed Diaspora Interaction
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------- | --------------------------------------------------------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| interaction | The Diaspora interaction | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | uri-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,26 +1,49 @@
|
|||
Table event
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ----------------------------------------------- -------| ------------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | user_id of the owner of this data | int(11) | NO | MUL | 0 | |
|
||||
| cid | contact_id (ID of the contact in contact table) | int(11) | NO | | 0 | |
|
||||
| uri | | varchar(255) | NO | | | |
|
||||
| created | creation time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edit time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| start | event start time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| finish | event end time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| summary | short description or title of the event | text | NO | | NULL | |
|
||||
| desc | event description | text | NO | | NULL | |
|
||||
| location | event location | text | NO | | NULL | |
|
||||
| type | event or birthday | varchar(255) | NO | | | |
|
||||
| nofinish | if event does have no end this is 1 | tinyint(1) | NO | | 0 | |
|
||||
| adjust | adjust to timezone of the recipient (0 or 1) | tinyint(1) | NO | | 1 | |
|
||||
| ignore | 0 or 1 | tinyint(1) unsigned | NO | | 0 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | NO | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | NO | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | NO | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | NO | | NULL | |
|
||||
Events
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------------------------------ | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | | varchar(255) | NO | | | |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| cid | contact_id (ID of the contact in contact table) | int unsigned | NO | | 0 | |
|
||||
| uri | | varchar(255) | NO | | | |
|
||||
| created | creation time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edit time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| start | event start time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| finish | event end time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| summary | short description or title of the event | text | YES | | NULL | |
|
||||
| desc | event description | text | YES | | NULL | |
|
||||
| location | event location | text | YES | | NULL | |
|
||||
| type | event or birthday | varchar(20) | NO | | | |
|
||||
| nofinish | if event does have no end this is 1 | boolean | NO | | 0 | |
|
||||
| adjust | adjust to timezone of the recipient (0 or 1) | boolean | NO | | 1 | |
|
||||
| ignore | 0 or 1 | boolean | NO | | 0 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | YES | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | YES | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | YES | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | ---------- |
|
||||
| PRIMARY | id |
|
||||
| uid_start | uid, start |
|
||||
| cid | cid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,24 +1,39 @@
|
|||
Table fcontact
|
||||
==============
|
||||
===========
|
||||
|
||||
Diaspora compatible contacts - used in the Diaspora implementation
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ---------------- | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | unique id | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| request | | varchar(255) | NO | | | |
|
||||
| nick | | varchar(255) | NO | | | |
|
||||
| addr | | varchar(255) | NO | | | |
|
||||
| batch | | varchar(255) | NO | | | |
|
||||
| notify | | varchar(255) | NO | | | |
|
||||
| poll | | varchar(255) | NO | | | |
|
||||
| confirm | | varchar(255) | NO | | | |
|
||||
| priority | | tinyint unsigned | NO | | 0 | |
|
||||
| network | | char(4) | NO | | | |
|
||||
| alias | | varchar(255) | NO | | | |
|
||||
| pubkey | | text | YES | | NULL | |
|
||||
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ---------------- |
|
||||
| PRIMARY | id |
|
||||
| addr | addr(32) |
|
||||
| url | UNIQUE, url(190) |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ---------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | unique id | varchar(64) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| request | | varchar(255) | NO | | | |
|
||||
| nick | | varchar(255) | NO | | | |
|
||||
| addr | | varchar(255) | NO | MUL | | |
|
||||
| batch | | varchar(255) | NO | | | |
|
||||
| notify | | varchar(255) | NO | | | |
|
||||
| poll | | varchar(255) | NO | | | |
|
||||
| confirm | | varchar(255) | NO | | | |
|
||||
| priority | | tinyint(1) | NO | | 0 | |
|
||||
| network | | varchar(32) | NO | | | |
|
||||
| alias | | varchar(255) | NO | | | |
|
||||
| pubkey | | text | NO | | NULL | |
|
||||
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,16 +1,38 @@
|
|||
Table fsuggest
|
||||
==============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------- | ------------ | ---- | --- | ------------------- | --------------- |
|
||||
| id | | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(11) | NO | | 0 | |
|
||||
| cid | | int(11) | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| request | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| note | | text | NO | | NULL | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
friend suggestion stuff
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| cid | | int unsigned | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| request | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| note | | text | YES | | NULL | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| cid | cid |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,12 +1,32 @@
|
|||
Table group
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ------------------------------------------ | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id owning this data | int(10) unsigned | NO | MUL | 0 | |
|
||||
| visible | 1 indicates the member list is not private | tinyint(1) | NO | | 0 | |
|
||||
| deleted | 1 indicates the group has been deleted | tinyint(1) | NO | | 0 | |
|
||||
| name | human readable name of group | varchar(255) | NO | | | |
|
||||
privacy groups, group info
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ------------------------------------------ | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| visible | 1 indicates the member list is not private | boolean | NO | | 0 | |
|
||||
| deleted | 1 indicates the group has been deleted | boolean | NO | | 0 | |
|
||||
| name | human readable name of group | varchar(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,11 +1,32 @@
|
|||
Table group_member
|
||||
==================
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ----------------------------------------------------------- | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id of the owner of this data | int(10) unsigned | NO | MUL | 0 | |
|
||||
| gid | groups.id of the associated group | int(10) unsigned | NO | | 0 | |
|
||||
| contact-id | contact.id of the member assigned to the associated group | int(10) unsigned | NO | | 0 | |
|
||||
privacy groups, member info
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | --------------------------------------------------------- | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| gid | groups.id of the associated group | int unsigned | NO | | 0 | |
|
||||
| contact-id | contact.id of the member assigned to the associated group | int unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | ----------------------- |
|
||||
| PRIMARY | id |
|
||||
| contactid | contact-id |
|
||||
| gid_contactid | UNIQUE, gid, contact-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| gid | [group](help/database/db_group) | id |
|
||||
| contact-id | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
29
doc/database/db_gserver-tag.md
Normal file
29
doc/database/db_gserver-tag.md
Normal file
|
@ -0,0 +1,29 @@
|
|||
Table gserver-tag
|
||||
===========
|
||||
|
||||
Tags that the server has subscribed
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ---------------------------------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| gserver-id | The id of the gserver | int unsigned | NO | PRI | 0 | |
|
||||
| tag | Tag that the server has subscribed | varchar(100) | NO | PRI | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | --------------- |
|
||||
| PRIMARY | gserver-id, tag |
|
||||
| tag | tag |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| gserver-id | [gserver](help/database/db_gserver) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,24 +1,46 @@
|
|||
Table gserver
|
||||
=============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|------------------|---------------------------|------------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| nurl | | varchar(255) | NO | MUL | | |
|
||||
| version | | varchar(255) | NO | | | |
|
||||
| site_name | | varchar(255) | NO | | | |
|
||||
| info | | text | NO | | NULL | |
|
||||
| register_policy | | tinyint(1) | NO | | 0 | |
|
||||
| registered-users |Number of registered users | int(10) | NO | | 0 | |
|
||||
| poco | | varchar(255) | NO | | | |
|
||||
| noscrape | | varchar(255) | NO | | | |
|
||||
| network | | varchar(32) | NO | | | |
|
||||
| platform | | varchar(255) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| last_poco_query | | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| last_contact | | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| last_failure | | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
Global servers
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------------- | -------------------------------------------------- | ---------------- | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| nurl | | varchar(255) | NO | | | |
|
||||
| version | | varchar(255) | NO | | | |
|
||||
| site_name | | varchar(255) | NO | | | |
|
||||
| info | | text | YES | | NULL | |
|
||||
| register_policy | | tinyint | NO | | 0 | |
|
||||
| registered-users | Number of registered users | int unsigned | NO | | 0 | |
|
||||
| directory-type | Type of directory service (Poco, Mastodon) | tinyint | YES | | 0 | |
|
||||
| poco | | varchar(255) | NO | | | |
|
||||
| noscrape | | varchar(255) | NO | | | |
|
||||
| network | | char(4) | NO | | | |
|
||||
| protocol | The protocol of the server | tinyint unsigned | YES | | NULL | |
|
||||
| platform | | varchar(255) | NO | | | |
|
||||
| relay-subscribe | Has the server subscribed to the relay system | boolean | NO | | 0 | |
|
||||
| relay-scope | The scope of messages that the server wants to get | varchar(10) | NO | | | |
|
||||
| detection-method | Method that had been used to detect that server | tinyint unsigned | YES | | NULL | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| last_poco_query | | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| last_contact | Last successful connection request | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| last_failure | Last failed connection request | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
| failed | Connection failed | boolean | YES | | NULL | |
|
||||
| next_contact | Next connection request | datetime | YES | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------ | ----------------- |
|
||||
| PRIMARY | id |
|
||||
| nurl | UNIQUE, nurl(190) |
|
||||
| next_contact | next_contact |
|
||||
| network | network |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,12 +1,27 @@
|
|||
Table hook
|
||||
==========
|
||||
===========
|
||||
|
||||
addon hook registry
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ---------------------------------------------------------------------------------------------------------- | ----------------- | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| hook | name of hook | varbinary(100) | NO | | | |
|
||||
| file | relative filename of hook handler | varbinary(200) | NO | | | |
|
||||
| function | function name of hook handler | varbinary(200) | NO | | | |
|
||||
| priority | not yet implemented - can be used to sort conflicts in hook handling by calling handlers in priority order | smallint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------------ | ---------------------------- |
|
||||
| PRIMARY | id |
|
||||
| priority | priority |
|
||||
| hook_file_function | UNIQUE, hook, file, function |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ---------------------------------------------------------------------------------------------------------- | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| hook | name of hook | varchar(255) | NO | MUL | | |
|
||||
| file | relative filename of hook handler | varchar(255) | NO | | | |
|
||||
| function | function name of hook handler | varchar(255) | NO | | | |
|
||||
| priority | not yet implemented - can be used to sort conflicts in hook handling by calling handlers in priority order | int(11) unsigned | NO | | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
23
doc/database/db_host.md
Normal file
23
doc/database/db_host.md
Normal file
|
@ -0,0 +1,23 @@
|
|||
Table host
|
||||
===========
|
||||
|
||||
Hostname
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------- | ---------------- | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | tinyint unsigned | NO | PRI | NULL | auto_increment |
|
||||
| name | The hostname | varchar(128) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------------ |
|
||||
| PRIMARY | id |
|
||||
| name | UNIQUE, name |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
27
doc/database/db_inbox-status.md
Normal file
27
doc/database/db_inbox-status.md
Normal file
|
@ -0,0 +1,27 @@
|
|||
Table inbox-status
|
||||
===========
|
||||
|
||||
Status of ActivityPub inboxes
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------------------------------ | -------------- | ---- | --- | ------------------- | ----- |
|
||||
| url | URL of the inbox | varbinary(255) | NO | PRI | NULL | |
|
||||
| created | Creation date of this entry | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| success | Date of the last successful delivery | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| failure | Date of the last failed delivery | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| previous | Previous delivery date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| archive | Is the inbox archived? | boolean | NO | | 0 | |
|
||||
| shared | Is it a shared inbox? | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | url |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,18 +1,40 @@
|
|||
Table intro
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|------------|------------------|------------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(10) unsigned | NO | | 0 | |
|
||||
| fid | | int(11) | NO | | 0 | |
|
||||
| contact-id | | int(11) | NO | | 0 | |
|
||||
| knowyou | | tinyint(1) | NO | | 0 | |
|
||||
| duplex | | tinyint(1) | NO | | 0 | |
|
||||
| note | | text | NO | | NULL | |
|
||||
| hash | | varchar(255) | NO | | | |
|
||||
| datetime | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| blocked | | tinyint(1) | NO | | 1 | |
|
||||
| ignore | | tinyint(1) | NO | | 0 | |
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| fid | | int unsigned | YES | | NULL | |
|
||||
| contact-id | | int unsigned | NO | | 0 | |
|
||||
| knowyou | | boolean | NO | | 0 | |
|
||||
| duplex | | boolean | NO | | 0 | |
|
||||
| note | | text | YES | | NULL | |
|
||||
| hash | | varchar(255) | NO | | | |
|
||||
| datetime | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| blocked | | boolean | NO | | 1 | |
|
||||
| ignore | | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ---------- | ---------- |
|
||||
| PRIMARY | id |
|
||||
| contact-id | contact-id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| contact-id | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
25
doc/database/db_item-uri.md
Normal file
25
doc/database/db_item-uri.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
Table item-uri
|
||||
===========
|
||||
|
||||
URI and GUID for items
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------------------------- | -------------- | ---- | --- | ------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uri | URI of an item | varbinary(255) | NO | | NULL | |
|
||||
| guid | A unique identifier for an item | varbinary(255) | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ----------- |
|
||||
| PRIMARY | id |
|
||||
| uri | UNIQUE, uri |
|
||||
| guid | guid |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,72 +0,0 @@
|
|||
Table item
|
||||
==========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| guid | A unique identifier for this item | varchar(255) | NO | MUL | | |
|
||||
| uri | | varchar(255) | NO | MUL | | |
|
||||
| uid | user.id which owns this copy of the item | int(10) unsigned | NO | MUL | 0 | |
|
||||
| contact-id | contact.id | int(11) | NO | MUL | 0 | |
|
||||
| gcontact-id | ID of the global contact | int(11) | NO | MUL | 0 | |
|
||||
| type | | varchar(255) | NO | | | |
|
||||
| wall | This item was posted to the wall of uid | tinyint(1) | NO | MUL | 0 | |
|
||||
| gravity | | tinyint(1) | NO | | 0 | |
|
||||
| parent | item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item | int(10) unsigned | NO | MUL | 0 | |
|
||||
| parent-uri | uri of the parent to this item | varchar(255) | NO | MUL | | |
|
||||
| extid | | varchar(255 | NO | MUL | | |
|
||||
| thr-parent | If the parent of this item is not the top-level item in the conversation, the uri of the immediate parent; otherwise set to parent-uri | varchar(255) | NO | | | |
|
||||
| created | Creation timestamp. | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | Date of last edit (default is created) | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| commented | Date of last comment/reply to this item | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | datetime | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| changed | Date that something in the conversation changed, indicating clients should fetch the conversation again | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| owner-name | Name of the owner of this item | varchar(255) | NO | | | |
|
||||
| owner-link | Link to the profile page of the owner of this item | varchar(255) | NO | | | |
|
||||
| owner-avatar | Link to the avatar picture of the owner of this item | varchar(255) | NO | | | |
|
||||
| owner-id | Link to the contact table with uid=0 of the owner of this item | int(11) | NO | MUL | 0 | |
|
||||
| author-name | Name of the author of this item | varchar(255) | NO | | | |
|
||||
| author-link | Link to the profile page of the author of this item | varchar(255) | NO | | | |
|
||||
| author-avatar | Link to the avatar picture of the author of this item | varchar(255) | NO | | | |
|
||||
| author-id | Link to the contact table with uid=0 of the author of this item | int(11) | NO | MUL | 0 | |
|
||||
| title | item title | varchar(255) | NO | | | |
|
||||
| body | item body content | mediumtext | NO | | NULL | |
|
||||
| app | application which generated this item | varchar(255) | NO | | | |
|
||||
| verb | ActivityStreams verb | varchar(255) | NO | | | |
|
||||
| object-type | ActivityStreams object type | varchar(255) | NO | | | |
|
||||
| object | JSON encoded object structure unless it is an implied object (normal post) | text | NO | | NULL | |
|
||||
| target-type | ActivityStreams target type if applicable (URI) | varchar(255) | NO | | | |
|
||||
| target | JSON encoded target structure if used | text | NO | | NULL | |
|
||||
| postopts | External post connectors add their network name to this comma-separated string to identify that they should be delivered to these networks during delivery | text | NO | | NULL | |
|
||||
| plink | permalink or URL toa displayable copy of the message at its source | varchar(255) | NO | | | |
|
||||
| resource-id | Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type | varchar(255) | NO | MUL | | |
|
||||
| event-id | Used to link to the event.id | int(11) | NO | | 0 | |
|
||||
| tag | | mediumtext | NO | | NULL | |
|
||||
| attach | JSON structure representing attachments to this item | mediumtext | NO | | NULL | |
|
||||
| inform | | mediumtext | NO | | NULL | |
|
||||
| file | | mediumtext | NO | | NULL | |
|
||||
| location | text location where this item originated | varchar(255) | NO | | | |
|
||||
| coord | longitude/latitude pair representing location where this item originated | varchar(255) | NO | | | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | NO | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | NO | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | NO | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | NO | | NULL | |
|
||||
| private | distribution is restricted | tinyint(1) | NO | | 0 | |
|
||||
| pubmail | | tinyint(1) | NO | | 0 | |
|
||||
| moderated | | tinyint(1) | NO | | 0 | |
|
||||
| visible | | tinyint(1) | NO | | 0 | |
|
||||
| spam | | tinyint(1) | NO | | 0 | |
|
||||
| starred | item has been favourited | tinyint(1) | NO | | 0 | |
|
||||
| bookmark | item has been bookmarked | tinyint(1) | NO | | 0 | |
|
||||
| unseen | item has not been seen | tinyint(1) | NO | | 1 | |
|
||||
| deleted | item has been deleted | tinyint(1) | NO | MUL | 0 | |
|
||||
| origin | item originated at this site | tinyint(1) | NO | | 0 | |
|
||||
| forum_mode | | tinyint(1) | NO | | 0 | |
|
||||
| last-child | | tinyint(1) unsigned | NO | | 1 | |
|
||||
| mention | The owner of this item was mentioned in it | tinyint(1) | NO | | 0 | |
|
||||
| network | Network from where the item comes from | varchar(32) | NO | | | |
|
||||
| rendered-hash | | varchar(32) | NO | | | |
|
||||
| rendered-html | item.body converted to html | mediumtext | NO | | NULL | |
|
||||
| global | | tinyint(1) | NO | | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,11 +1,26 @@
|
|||
Table locks
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------|------------------|------------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| name | | varchar(128) | NO | | | |
|
||||
| locked | | tinyint(1) | NO | | 0 | |
|
||||
| pid | Process ID | int(10) unsigned | NO | | 0 | |
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ---------------------------- | ------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| name | | varchar(128) | NO | | | |
|
||||
| locked | | boolean | NO | | 0 | |
|
||||
| pid | Process ID | int unsigned | NO | | 0 | |
|
||||
| expires | datetime of cache expiration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------ | ------------- |
|
||||
| PRIMARY | id |
|
||||
| name_expires | name, expires |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,24 +1,61 @@
|
|||
Table mail
|
||||
==========
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | -------------------------------------------- | ---------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id of the owner of this data | int(10) unsigned | NO | MUL | 0 | |
|
||||
| guid | A unique identifier for this private message | int(10) unsigned | NO | MUL | | |
|
||||
| from-name | name of the sender | varchar(255) | NO | | | |
|
||||
| from-photo | contact photo link of the sender | varchar(255) | NO | | | |
|
||||
| from-url | profile linke of the sender | varchar(255) | NO | | | |
|
||||
| contact-id | contact.id | varchar(255) | NO | | | |
|
||||
| convid | conv.id | int(11) unsigned | NO | MUL | 0 | |
|
||||
| title | | varchar(255) | NO | | | |
|
||||
| body | | mediumtext | NO | | NULL | |
|
||||
| seen | if message visited it is 1 | varchar(255) | NO | | 0 | |
|
||||
| reply | | varchar(255) | NO | MUL | 0 | |
|
||||
| replied | | varchar(255) | NO | | 0 | |
|
||||
| unknown | if sender not in the contact table this is 1 | varchar(255) | NO | | 0 | |
|
||||
| uri | | varchar(255) | NO | MUL | | |
|
||||
| parent-uri | | varchar(255) | NO | MUL | | |
|
||||
| created | creation time of the private message | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
private messages
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | -------------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| guid | A unique identifier for this private message | varchar(255) | NO | | | |
|
||||
| from-name | name of the sender | varchar(255) | NO | | | |
|
||||
| from-photo | contact photo link of the sender | varchar(255) | NO | | | |
|
||||
| from-url | profile linke of the sender | varchar(255) | NO | | | |
|
||||
| contact-id | contact.id | varchar(255) | YES | | NULL | |
|
||||
| author-id | Link to the contact table with uid=0 of the author of the mail | int unsigned | YES | | NULL | |
|
||||
| convid | conv.id | int unsigned | YES | | NULL | |
|
||||
| title | | varchar(255) | NO | | | |
|
||||
| body | | mediumtext | YES | | NULL | |
|
||||
| seen | if message visited it is 1 | boolean | NO | | 0 | |
|
||||
| reply | | boolean | NO | | 0 | |
|
||||
| replied | | boolean | NO | | 0 | |
|
||||
| unknown | if sender not in the contact table this is 1 | boolean | NO | | 0 | |
|
||||
| uri | | varchar(255) | NO | | | |
|
||||
| uri-id | Item-uri id of the related mail | int unsigned | YES | | NULL | |
|
||||
| parent-uri | | varchar(255) | NO | | | |
|
||||
| parent-uri-id | Item-uri id of the parent of the related mail | int unsigned | YES | | NULL | |
|
||||
| thr-parent | | varchar(255) | YES | | NULL | |
|
||||
| thr-parent-id | Id of the item-uri table that contains the thread parent uri | int unsigned | YES | | NULL | |
|
||||
| created | creation time of the private message | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | -------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_seen | uid, seen |
|
||||
| convid | convid |
|
||||
| uri | uri(64) |
|
||||
| parent-uri | parent-uri(64) |
|
||||
| contactid | contact-id(32) |
|
||||
| author-id | author-id |
|
||||
| uri-id | uri-id |
|
||||
| parent-uri-id | parent-uri-id |
|
||||
| thr-parent-id | thr-parent-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| author-id | [contact](help/database/db_contact) | id |
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| thr-parent-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,20 +1,40 @@
|
|||
Table mailacct
|
||||
==============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|--------------|------------------|--------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(11) | NO | | 0 | |
|
||||
| server | | varchar(255) | NO | | | |
|
||||
| port | | int(11) | NO | | 0 | |
|
||||
| ssltype | | varchar(16) | NO | | | |
|
||||
| mailbox | | varchar(255) | NO | | | |
|
||||
| user | | varchar(255) | NO | | | |
|
||||
| pass | | text | NO | | NULL | |
|
||||
| reply_to | | varchar(255) | NO | | | |
|
||||
| action | | int(11) | NO | | 0 | |
|
||||
| movetofolder | | varchar(255) | NO | | | |
|
||||
| pubmail | | tinyint(1) | NO | | 0 | |
|
||||
| last_check | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
Mail account data for fetching mails
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| server | | varchar(255) | NO | | | |
|
||||
| port | | smallint unsigned | NO | | 0 | |
|
||||
| ssltype | | varchar(16) | NO | | | |
|
||||
| mailbox | | varchar(255) | NO | | | |
|
||||
| user | | varchar(255) | NO | | | |
|
||||
| pass | | text | YES | | NULL | |
|
||||
| reply_to | | varchar(255) | NO | | | |
|
||||
| action | | tinyint unsigned | NO | | 0 | |
|
||||
| movetofolder | | varchar(255) | NO | | | |
|
||||
| pubmail | | boolean | NO | | 0 | |
|
||||
| last_check | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,10 +1,32 @@
|
|||
Table manage
|
||||
============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------- | ------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id | int(11) | NO | MUL | 0 | |
|
||||
| mid | | int(11) | NO | | 0 | |
|
||||
table of accounts that can manage each other
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| mid | User id | mediumint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ---------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_mid | UNIQUE, uid, mid |
|
||||
| mid | mid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| mid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
45
doc/database/db_notification.md
Normal file
45
doc/database/db_notification.md
Normal file
|
@ -0,0 +1,45 @@
|
|||
Table notification
|
||||
===========
|
||||
|
||||
notifications
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | ------------------------------------------------------------------------------ | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | YES | | NULL | |
|
||||
| vid | Id of the verb table entry that contains the activity verbs | smallint unsigned | YES | | NULL | |
|
||||
| type | | tinyint unsigned | YES | | NULL | |
|
||||
| actor-id | Link to the contact table with uid=0 of the actor that caused the notification | int unsigned | YES | | NULL | |
|
||||
| target-uri-id | Item-uri id of the related post | int unsigned | YES | | NULL | |
|
||||
| parent-uri-id | Item-uri id of the parent of the related post | int unsigned | YES | | NULL | |
|
||||
| created | | datetime | YES | | NULL | |
|
||||
| seen | | boolean | YES | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ----------------------------------- | ----------------------------------------------- |
|
||||
| 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 |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| vid | [verb](help/database/db_verb) | id |
|
||||
| actor-id | [contact](help/database/db_contact) | id |
|
||||
| target-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,12 +1,37 @@
|
|||
Table notify-threads
|
||||
====================
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|--------------------|------------------|------------------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| notify-id | | int(11) | NO | | 0 | |
|
||||
| master-parent-item | | int(10) unsigned | NO | MUL | 0 | |
|
||||
| parent-item | | int(10) unsigned | NO | | 0 | |
|
||||
| receiver-uid | | int(11) | NO | MUL | 0 | |
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------------------- | --------------------------------------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| notify-id | | int unsigned | NO | | 0 | |
|
||||
| master-parent-item | Deprecated | int unsigned | YES | | NULL | |
|
||||
| master-parent-uri-id | Item-uri id of the parent of the related post | int unsigned | YES | | NULL | |
|
||||
| parent-item | | int unsigned | NO | | 0 | |
|
||||
| receiver-uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------------------- | -------------------- |
|
||||
| PRIMARY | id |
|
||||
| master-parent-uri-id | master-parent-uri-id |
|
||||
| receiver-uid | receiver-uid |
|
||||
| notify-id | notify-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| notify-id | [notify](help/database/db_notify) | id |
|
||||
| master-parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| receiver-uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,24 +1,51 @@
|
|||
Table notify
|
||||
============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | --------------------------------- | ------------ | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| hash | | varchar(64) | NO | | | |
|
||||
| type | | int(11) | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| msg | | mediumtext | YES | | NULL | |
|
||||
| uid | user.id of the owner of this data | int(11) | NO | MUL | 0 | |
|
||||
| link | | varchar(255) | NO | | | |
|
||||
| iid | item.id | int(11) | NO | | 0 | |
|
||||
| parent | | int(11) | NO | | 0 | |
|
||||
| seen | | tinyint(1) | NO | | 0 | |
|
||||
| verb | | varchar(255) | NO | | | |
|
||||
| otype | | varchar(16) | NO | | | |
|
||||
| name_cache | Cached bbcode parsing of name | tinytext | YES | | NULL | |
|
||||
| msg_cache | Cached bbcode parsing of msg | mediumtext | YES | | NULL | |
|
||||
notifications
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | --------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| type | | smallint unsigned | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| date | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| msg | | mediumtext | YES | | NULL | |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| link | | varchar(255) | NO | | | |
|
||||
| iid | | int unsigned | YES | | NULL | |
|
||||
| parent | | int unsigned | YES | | NULL | |
|
||||
| uri-id | Item-uri id of the related post | int unsigned | YES | | NULL | |
|
||||
| parent-uri-id | Item-uri id of the parent of the related post | int unsigned | YES | | NULL | |
|
||||
| seen | | boolean | NO | | 0 | |
|
||||
| verb | | varchar(100) | NO | | | |
|
||||
| otype | | varchar(10) | NO | | | |
|
||||
| name_cache | Cached bbcode parsing of name | tinytext | YES | | NULL | |
|
||||
| msg_cache | Cached bbcode parsing of msg | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | -------------------- |
|
||||
| PRIMARY | id |
|
||||
| seen_uid_date | seen, uid, date |
|
||||
| uid_date | uid, date |
|
||||
| uid_type_link | uid, type, link(190) |
|
||||
| uri-id | uri-id |
|
||||
| parent-uri-id | parent-uri-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,11 +1,25 @@
|
|||
Table oembed
|
||||
============
|
||||
===========
|
||||
|
||||
cache for OEmbed queries
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------------------------ | ------------------ | ---- | --- | ------------------- | ----- |
|
||||
| url | page url | varbinary(255) | NO | PRI | NULL | |
|
||||
| maxwidth | Maximum width passed to Oembed | mediumint unsigned | NO | PRI | NULL | |
|
||||
| content | OEmbed data of the page | mediumtext | YES | | NULL | |
|
||||
| created | datetime of creation | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------------- |
|
||||
| PRIMARY | url, maxwidth |
|
||||
| created | created |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ---------------------------------- | ------------ | ---- | --- | ------------------- | ----- |
|
||||
| url | page url | varchar(255) | NO | PRI | NULL | |
|
||||
| maxwidth | Maximum width passed to Oembed | int(11) | NO | PRI | 0 | |
|
||||
| content | OEmbed data of the page | text | NO | | NULL | |
|
||||
| created | datetime of creation | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
33
doc/database/db_openwebauth-token.md
Normal file
33
doc/database/db_openwebauth-token.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Table openwebauth-token
|
||||
===========
|
||||
|
||||
Store OpenWebAuth token to verify contacts
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | -------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id - currently unused | mediumint unsigned | NO | | 0 | |
|
||||
| type | Verify type | varchar(32) | NO | | | |
|
||||
| token | A generated token | varchar(255) | NO | | | |
|
||||
| meta | | varchar(255) | NO | | | |
|
||||
| created | datetime of creation | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,12 +1,29 @@
|
|||
Table parsed_url
|
||||
================
|
||||
===========
|
||||
|
||||
cache for 'parse_url' queries
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | --------------------------------- | ---------- | ---- | --- | ------------------- | ----- |
|
||||
| url_hash | page url hash | binary(64) | NO | PRI | NULL | |
|
||||
| guessing | is the 'guessing' mode active? | boolean | NO | PRI | 0 | |
|
||||
| oembed | is the data the result of oembed? | boolean | NO | PRI | 0 | |
|
||||
| url | page url | text | NO | | NULL | |
|
||||
| content | page data | mediumtext | YES | | NULL | |
|
||||
| created | datetime of creation | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| expires | datetime of expiration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | -------------------------- |
|
||||
| PRIMARY | url_hash, guessing, oembed |
|
||||
| created | created |
|
||||
| expires | expires |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ---------------------------------- | ------------ | ---- | --- | ------------------- | ----- |
|
||||
| url | page url | varchar(255) | NO | PRI | NULL | |
|
||||
| guessing | is the "guessing" mode active? | tinyint(1) | NO | PRI | 0 | |
|
||||
| oembed | is the data the result of oembed? | tinyint(1) | NO | PRI | 0 | |
|
||||
| content | page data | text | NO | | NULL | |
|
||||
| created | datetime of creation | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,12 +1,32 @@
|
|||
Table pconfic
|
||||
=============
|
||||
Table pconfig
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------|-------------|------------|------|-----|---------|----------------|
|
||||
| id | | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(11) | NO | MUL | 0 | |
|
||||
| cat | | char(255) | NO | | | |
|
||||
| k | | char(255) | NO | | | |
|
||||
| v | | mediumtext | NO | | NULL | |
|
||||
personal (per user) configuration storage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ----------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | Primary key | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| cat | Category | varchar(50) | NO | | | |
|
||||
| k | Key | varchar(100) | NO | | | |
|
||||
| v | Value | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | ------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_cat_k | UNIQUE, uid, cat, k |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
33
doc/database/db_permissionset.md
Normal file
33
doc/database/db_permissionset.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Table permissionset
|
||||
===========
|
||||
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------------------------------ | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner id of this permission set | mediumint unsigned | NO | | 0 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | YES | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | YES | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | YES | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ----------------------------------------- | ------------------------------------------------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_allow_cid_allow_gid_deny_cid_deny_gid | uid, allow_cid(50), allow_gid(30), deny_cid(50), deny_gid(30) |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,29 +1,60 @@
|
|||
Table photo
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------- | ------------------------------------------------------ | ---------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id of the owner of this data | int(10) unsigned | NO | MUL | 0 | |
|
||||
| contact-id | contact.id | int(10) unsigned | NO | | 0 | |
|
||||
| guid | A unique identifier for this photo | varchar(64) | NO | MUL | | |
|
||||
| resource-id | | varchar(255) | NO | MUL | | |
|
||||
| created | creation date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edited date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| title | | varchar(255) | NO | | | |
|
||||
| desc | | text | NO | | NULL | |
|
||||
| album | The name of the album to which the photo belongs | varchar(255) | NO | | | |
|
||||
| filename | | varchar(255) | NO | | | |
|
||||
| type | image type | varchar(128) | NO | | image/jpeg | |
|
||||
| height | | smallint(6) | NO | | 0 | |
|
||||
| width | | smallint(6) | NO | | 0 | |
|
||||
| size | | int(10) unsigned | NO | | 0 | |
|
||||
| data | | mediumblob | NO | | NULL | |
|
||||
| scale | | tinyint(3) | NO | | 0 | |
|
||||
| profile | | tinyint(1) | NO | | 0 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | NO | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | NO | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | NO | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | NO | | NULL | |
|
||||
photo storage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | ------------------------------------------------------ | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| contact-id | contact.id | int unsigned | NO | | 0 | |
|
||||
| guid | A unique identifier for this photo | char(16) | NO | | | |
|
||||
| resource-id | | char(32) | NO | | | |
|
||||
| hash | hash value of the photo | char(32) | YES | | NULL | |
|
||||
| created | creation date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edited date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| title | | varchar(255) | NO | | | |
|
||||
| desc | | text | YES | | NULL | |
|
||||
| album | The name of the album to which the photo belongs | varchar(255) | NO | | | |
|
||||
| filename | | varchar(255) | NO | | | |
|
||||
| type | | varchar(30) | NO | | image/jpeg | |
|
||||
| height | | smallint unsigned | NO | | 0 | |
|
||||
| width | | smallint unsigned | NO | | 0 | |
|
||||
| datasize | | int unsigned | NO | | 0 | |
|
||||
| data | | mediumblob | NO | | NULL | |
|
||||
| scale | | tinyint unsigned | NO | | 0 | |
|
||||
| profile | | boolean | NO | | 0 | |
|
||||
| allow_cid | Access Control - list of allowed contact.id '<19><78>' | mediumtext | YES | | NULL | |
|
||||
| allow_gid | Access Control - list of allowed groups | mediumtext | YES | | NULL | |
|
||||
| deny_cid | Access Control - list of denied contact.id | mediumtext | YES | | NULL | |
|
||||
| deny_gid | Access Control - list of denied groups | mediumtext | YES | | NULL | |
|
||||
| accessible | Make photo publicly accessible, ignoring permissions | boolean | NO | | 0 | |
|
||||
| backend-class | Storage backend class | tinytext | YES | | NULL | |
|
||||
| backend-ref | Storage backend data reference | text | YES | | NULL | |
|
||||
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ----------------------------- | ------------------------------------ |
|
||||
| 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 |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| contact-id | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
Table poll
|
||||
==========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------|-------------|------------|------|-----|---------|----------------|
|
||||
| id | | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(11) | NO | MUL | 0 | |
|
||||
| q0 | | mediumtext | NO | | NULL | |
|
||||
| q1 | | mediumtext | NO | | NULL | |
|
||||
| q2 | | mediumtext | NO | | NULL | |
|
||||
| q3 | | mediumtext | NO | | NULL | |
|
||||
| q4 | | mediumtext | NO | | NULL | |
|
||||
| q5 | | mediumtext | NO | | NULL | |
|
||||
| q6 | | mediumtext | NO | | NULL | |
|
||||
| q7 | | mediumtext | NO | | NULL | |
|
||||
| q8 | | mediumtext | NO | | NULL | |
|
||||
| q9 | | mediumtext | NO | | NULL | |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,10 +0,0 @@
|
|||
Table poll_result
|
||||
=================
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------|------------------|---------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| poll_id | | int(11) | NO | MUL | 0 | |
|
||||
| choice | | int(11) | NO | MUL | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
34
doc/database/db_post-category.md
Normal file
34
doc/database/db_post-category.md
Normal file
|
@ -0,0 +1,34 @@
|
|||
Table post-category
|
||||
===========
|
||||
|
||||
post relation to categories
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------ | --------------------------------------------------------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| uid | User id | mediumint unsigned | NO | PRI | 0 | |
|
||||
| type | | tinyint unsigned | NO | PRI | 0 | |
|
||||
| tid | | int unsigned | NO | PRI | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ---------------------- |
|
||||
| PRIMARY | uri-id, uid, type, tid |
|
||||
| uri-id | tid |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| tid | [tag](help/database/db_tag) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
46
doc/database/db_post-content.md
Normal file
46
doc/database/db_post-content.md
Normal file
|
@ -0,0 +1,46 @@
|
|||
Table post-content
|
||||
===========
|
||||
|
||||
Content for all posts
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| title | item title | varchar(255) | NO | | | |
|
||||
| content-warning | | varchar(255) | NO | | | |
|
||||
| body | item body content | mediumtext | YES | | NULL | |
|
||||
| raw-body | Body without embedded media links | mediumtext | YES | | NULL | |
|
||||
| location | text location where this item originated | varchar(255) | NO | | | |
|
||||
| coord | longitude/latitude pair representing location where this item originated | varchar(255) | NO | | | |
|
||||
| language | Language information about this post | text | YES | | NULL | |
|
||||
| app | application which generated this item | varchar(255) | NO | | | |
|
||||
| rendered-hash | | varchar(32) | NO | | | |
|
||||
| rendered-html | item.body converted to html | mediumtext | YES | | NULL | |
|
||||
| object-type | ActivityStreams object type | varchar(100) | NO | | | |
|
||||
| object | JSON encoded object structure unless it is an implied object (normal post) | text | YES | | NULL | |
|
||||
| target-type | ActivityStreams target type if applicable (URI) | varchar(100) | NO | | | |
|
||||
| target | JSON encoded target structure if used | text | YES | | NULL | |
|
||||
| resource-id | Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type | varchar(32) | NO | | | |
|
||||
| plink | permalink or URL to a displayable copy of the message at its source | varchar(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------------------------- | -------------------------------------- |
|
||||
| PRIMARY | uri-id |
|
||||
| plink | plink(191) |
|
||||
| resource-id | resource-id |
|
||||
| title-content-warning-body | FULLTEXT, title, content-warning, body |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
37
doc/database/db_post-delivery-data.md
Normal file
37
doc/database/db_post-delivery-data.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
Table post-delivery-data
|
||||
===========
|
||||
|
||||
Delivery data for items
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| postopts | External post connectors add their network name to this comma-separated string to identify that they should be delivered to these networks during delivery | text | YES | | NULL | |
|
||||
| inform | Additional receivers of the linked item | mediumtext | YES | | NULL | |
|
||||
| queue_count | Initial number of delivery recipients, used as item.delivery_queue_count | mediumint | NO | | 0 | |
|
||||
| queue_done | Number of successful deliveries, used as item.delivery_queue_done | mediumint | NO | | 0 | |
|
||||
| queue_failed | Number of unsuccessful deliveries, used as item.delivery_queue_failed | mediumint | NO | | 0 | |
|
||||
| activitypub | Number of successful deliveries via ActivityPub | mediumint | NO | | 0 | |
|
||||
| dfrn | Number of successful deliveries via DFRN | mediumint | NO | | 0 | |
|
||||
| legacy_dfrn | Number of successful deliveries via legacy DFRN | mediumint | NO | | 0 | |
|
||||
| diaspora | Number of successful deliveries via Diaspora | mediumint | NO | | 0 | |
|
||||
| ostatus | Number of successful deliveries via OStatus | mediumint | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | uri-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
46
doc/database/db_post-media.md
Normal file
46
doc/database/db_post-media.md
Normal file
|
@ -0,0 +1,46 @@
|
|||
Table post-media
|
||||
===========
|
||||
|
||||
Attached media
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------------- | --------------------------------------------------------- | ----------------- | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | | NULL | |
|
||||
| url | Media URL | varbinary(511) | NO | | NULL | |
|
||||
| type | Media type | tinyint unsigned | NO | | 0 | |
|
||||
| mimetype | | varchar(60) | YES | | NULL | |
|
||||
| height | Height of the media | smallint unsigned | YES | | NULL | |
|
||||
| width | Width of the media | smallint unsigned | YES | | NULL | |
|
||||
| size | Media size | int unsigned | YES | | NULL | |
|
||||
| preview | Preview URL | varbinary(255) | YES | | NULL | |
|
||||
| preview-height | Height of the preview picture | smallint unsigned | YES | | NULL | |
|
||||
| preview-width | Width of the preview picture | smallint unsigned | YES | | NULL | |
|
||||
| description | | text | YES | | NULL | |
|
||||
| name | Name of the media | varchar(255) | YES | | NULL | |
|
||||
| author-url | URL of the author of the media | varbinary(255) | YES | | NULL | |
|
||||
| author-name | Name of the author of the media | varchar(255) | YES | | NULL | |
|
||||
| author-image | Image of the author of the media | varbinary(255) | YES | | NULL | |
|
||||
| publisher-url | URL of the publisher of the media | varbinary(255) | YES | | NULL | |
|
||||
| publisher-name | Name of the publisher of the media | varchar(255) | YES | | NULL | |
|
||||
| publisher-image | Image of the publisher of the media | varbinary(255) | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ---------- | ------------------- |
|
||||
| PRIMARY | id |
|
||||
| uri-id-url | UNIQUE, uri-id, url |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
34
doc/database/db_post-tag.md
Normal file
34
doc/database/db_post-tag.md
Normal file
|
@ -0,0 +1,34 @@
|
|||
Table post-tag
|
||||
===========
|
||||
|
||||
post relation to tags
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------ | --------------------------------------------------------- | ---------------- | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| type | | tinyint unsigned | NO | PRI | 0 | |
|
||||
| tid | | int unsigned | NO | PRI | 0 | |
|
||||
| cid | Contact id of the mentioned public contact | int unsigned | NO | PRI | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ---------------------- |
|
||||
| PRIMARY | uri-id, type, tid, cid |
|
||||
| tid | tid |
|
||||
| cid | cid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| tid | [tag](help/database/db_tag) | id |
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
70
doc/database/db_post-thread-user.md
Normal file
70
doc/database/db_post-thread-user.md
Normal file
|
@ -0,0 +1,70 @@
|
|||
Table post-thread-user
|
||||
===========
|
||||
|
||||
Thread related data per user
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ------------------------------------------------------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| owner-id | Item owner | int unsigned | NO | | 0 | |
|
||||
| author-id | Item author | int unsigned | NO | | 0 | |
|
||||
| causer-id | Link to the contact table with uid=0 of the contact that caused the item creation | int unsigned | YES | | NULL | |
|
||||
| network | | char(4) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| changed | Date that something in the conversation changed, indicating clients should fetch the conversation again | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| commented | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| uid | Owner id which owns this copy of the item | mediumint unsigned | NO | PRI | 0 | |
|
||||
| pinned | The thread is pinned on the profile page | boolean | NO | | 0 | |
|
||||
| starred | | boolean | NO | | 0 | |
|
||||
| ignored | Ignore updates for this thread | boolean | NO | | 0 | |
|
||||
| wall | This item was posted to the wall of uid | boolean | NO | | 0 | |
|
||||
| mention | | boolean | NO | | 0 | |
|
||||
| pubmail | | boolean | NO | | 0 | |
|
||||
| forum_mode | | tinyint unsigned | NO | | 0 | |
|
||||
| contact-id | contact.id | int unsigned | NO | | 0 | |
|
||||
| unseen | post has not been seen | boolean | NO | | 1 | |
|
||||
| hidden | Marker to hide the post from the user | boolean | NO | | 0 | |
|
||||
| origin | item originated at this site | boolean | NO | | 0 | |
|
||||
| psid | ID of the permission set of this post | int unsigned | YES | | NULL | |
|
||||
| post-user-id | Id of the post-user table | int unsigned | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | -------------- |
|
||||
| PRIMARY | uid, uri-id |
|
||||
| uri-id | uri-id |
|
||||
| owner-id | owner-id |
|
||||
| author-id | author-id |
|
||||
| causer-id | causer-id |
|
||||
| uid | uid |
|
||||
| contact-id | contact-id |
|
||||
| psid | psid |
|
||||
| post-user-id | post-user-id |
|
||||
| commented | commented |
|
||||
| uid_received | uid, received |
|
||||
| uid_pinned | uid, pinned |
|
||||
| uid_commented | uid, commented |
|
||||
| uid_starred | uid, starred |
|
||||
| uid_mention | uid, mention |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| owner-id | [contact](help/database/db_contact) | id |
|
||||
| author-id | [contact](help/database/db_contact) | id |
|
||||
| causer-id | [contact](help/database/db_contact) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| contact-id | [contact](help/database/db_contact) | id |
|
||||
| psid | [permissionset](help/database/db_permissionset) | id |
|
||||
| post-user-id | [post-user](help/database/db_post-user) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
43
doc/database/db_post-thread.md
Normal file
43
doc/database/db_post-thread.md
Normal file
|
@ -0,0 +1,43 @@
|
|||
Table post-thread
|
||||
===========
|
||||
|
||||
Thread related data
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------------------------------------------------------------------------------- | ------------ | ---- | --- | ------------------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| owner-id | Item owner | int unsigned | NO | | 0 | |
|
||||
| author-id | Item author | int unsigned | NO | | 0 | |
|
||||
| causer-id | Link to the contact table with uid=0 of the contact that caused the item creation | int unsigned | YES | | NULL | |
|
||||
| network | | char(4) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| changed | Date that something in the conversation changed, indicating clients should fetch the conversation again | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| commented | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | --------- |
|
||||
| PRIMARY | uri-id |
|
||||
| owner-id | owner-id |
|
||||
| author-id | author-id |
|
||||
| causer-id | causer-id |
|
||||
| received | received |
|
||||
| commented | commented |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| owner-id | [contact](help/database/db_contact) | id |
|
||||
| author-id | [contact](help/database/db_contact) | id |
|
||||
| causer-id | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
31
doc/database/db_post-user-notification.md
Normal file
31
doc/database/db_post-user-notification.md
Normal file
|
@ -0,0 +1,31 @@
|
|||
Table post-user-notification
|
||||
===========
|
||||
|
||||
User post notifications
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------------- | --------------------------------------------------------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| uid | Owner id which owns this copy of the item | mediumint unsigned | NO | PRI | NULL | |
|
||||
| notification-type | | tinyint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ----------- |
|
||||
| PRIMARY | uid, uri-id |
|
||||
| uri-id | uri-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
86
doc/database/db_post-user.md
Normal file
86
doc/database/db_post-user.md
Normal file
|
@ -0,0 +1,86 @@
|
|||
Table post-user
|
||||
===========
|
||||
|
||||
User specific post data
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----------------- | --------------------------------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | | NULL | |
|
||||
| parent-uri-id | Id of the item-uri table that contains the parent uri | int unsigned | YES | | NULL | |
|
||||
| thr-parent-id | Id of the item-uri table that contains the thread parent uri | int unsigned | YES | | NULL | |
|
||||
| external-id | Id of the item-uri table entry that contains the external uri | int unsigned | YES | | NULL | |
|
||||
| created | Creation timestamp. | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | Date of last edit (default is created) | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | datetime | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| gravity | | tinyint unsigned | NO | | 0 | |
|
||||
| network | Network from where the item comes from | char(4) | NO | | | |
|
||||
| owner-id | Link to the contact table with uid=0 of the owner of this item | int unsigned | NO | | 0 | |
|
||||
| author-id | Link to the contact table with uid=0 of the author of this item | int unsigned | NO | | 0 | |
|
||||
| causer-id | Link to the contact table with uid=0 of the contact that caused the item creation | int unsigned | YES | | NULL | |
|
||||
| post-type | Post type (personal note, image, article, ...) | tinyint unsigned | NO | | 0 | |
|
||||
| post-reason | Reason why the post arrived at the user | tinyint unsigned | NO | | 0 | |
|
||||
| vid | Id of the verb table entry that contains the activity verbs | smallint unsigned | YES | | NULL | |
|
||||
| private | 0=public, 1=private, 2=unlisted | tinyint unsigned | NO | | 0 | |
|
||||
| global | | boolean | NO | | 0 | |
|
||||
| visible | | boolean | NO | | 0 | |
|
||||
| deleted | item has been marked for deletion | boolean | NO | | 0 | |
|
||||
| uid | Owner id which owns this copy of the item | mediumint unsigned | NO | | NULL | |
|
||||
| protocol | Protocol used to deliver the item for this user | tinyint unsigned | YES | | NULL | |
|
||||
| contact-id | contact.id | int unsigned | NO | | 0 | |
|
||||
| event-id | Used to link to the event.id | int unsigned | YES | | NULL | |
|
||||
| unseen | post has not been seen | boolean | NO | | 1 | |
|
||||
| hidden | Marker to hide the post from the user | boolean | NO | | 0 | |
|
||||
| notification-type | | tinyint unsigned | NO | | 0 | |
|
||||
| wall | This item was posted to the wall of uid | boolean | NO | | 0 | |
|
||||
| origin | item originated at this site | boolean | NO | | 0 | |
|
||||
| psid | ID of the permission set of this post | int unsigned | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------------------- | ----------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_uri-id | UNIQUE, uid, uri-id |
|
||||
| uri-id | uri-id |
|
||||
| parent-uri-id | parent-uri-id |
|
||||
| thr-parent-id | thr-parent-id |
|
||||
| external-id | external-id |
|
||||
| owner-id | owner-id |
|
||||
| author-id | author-id |
|
||||
| causer-id | causer-id |
|
||||
| vid | vid |
|
||||
| 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 |
|
||||
| uid_contactid | uid, contact-id |
|
||||
| uid_unseen_contactid | uid, unseen, contact-id |
|
||||
| uid_unseen | uid, unseen |
|
||||
| uid_hidden_uri-id | uid, hidden, uri-id |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| thr-parent-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| external-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| owner-id | [contact](help/database/db_contact) | id |
|
||||
| author-id | [contact](help/database/db_contact) | id |
|
||||
| causer-id | [contact](help/database/db_contact) | id |
|
||||
| vid | [verb](help/database/db_verb) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| contact-id | [contact](help/database/db_contact) | id |
|
||||
| event-id | [event](help/database/db_event) | id |
|
||||
| psid | [permissionset](help/database/db_permissionset) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
58
doc/database/db_post.md
Normal file
58
doc/database/db_post.md
Normal file
|
@ -0,0 +1,58 @@
|
|||
Table post
|
||||
===========
|
||||
|
||||
Structure for all posts
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------- | --------------------------------------------------------------------------------- | ----------------- | ---- | --- | ------------------- | ----- |
|
||||
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
|
||||
| parent-uri-id | Id of the item-uri table that contains the parent uri | int unsigned | YES | | NULL | |
|
||||
| thr-parent-id | Id of the item-uri table that contains the thread parent uri | int unsigned | YES | | NULL | |
|
||||
| external-id | Id of the item-uri table entry that contains the external uri | int unsigned | YES | | NULL | |
|
||||
| created | Creation timestamp. | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | Date of last edit (default is created) | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | datetime | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| gravity | | tinyint unsigned | NO | | 0 | |
|
||||
| network | Network from where the item comes from | char(4) | NO | | | |
|
||||
| owner-id | Link to the contact table with uid=0 of the owner of this item | int unsigned | NO | | 0 | |
|
||||
| author-id | Link to the contact table with uid=0 of the author of this item | int unsigned | NO | | 0 | |
|
||||
| causer-id | Link to the contact table with uid=0 of the contact that caused the item creation | int unsigned | YES | | NULL | |
|
||||
| post-type | Post type (personal note, image, article, ...) | tinyint unsigned | NO | | 0 | |
|
||||
| vid | Id of the verb table entry that contains the activity verbs | smallint unsigned | YES | | NULL | |
|
||||
| private | 0=public, 1=private, 2=unlisted | tinyint unsigned | NO | | 0 | |
|
||||
| global | | boolean | NO | | 0 | |
|
||||
| visible | | boolean | NO | | 0 | |
|
||||
| deleted | item has been marked for deletion | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | ------------- |
|
||||
| PRIMARY | uri-id |
|
||||
| parent-uri-id | parent-uri-id |
|
||||
| thr-parent-id | thr-parent-id |
|
||||
| external-id | external-id |
|
||||
| owner-id | owner-id |
|
||||
| author-id | author-id |
|
||||
| causer-id | causer-id |
|
||||
| vid | vid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| thr-parent-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| external-id | [item-uri](help/database/db_item-uri) | id |
|
||||
| owner-id | [contact](help/database/db_contact) | id |
|
||||
| author-id | [contact](help/database/db_contact) | id |
|
||||
| causer-id | [contact](help/database/db_contact) | id |
|
||||
| vid | [verb](help/database/db_verb) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
24
doc/database/db_process.md
Normal file
24
doc/database/db_process.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
Table process
|
||||
===========
|
||||
|
||||
Currently running system processes
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------- | ------------- | ---- | --- | ------------------- | ----- |
|
||||
| pid | | int unsigned | NO | PRI | NULL | |
|
||||
| command | | varbinary(32) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------- |
|
||||
| PRIMARY | pid |
|
||||
| command | command |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,48 +1,70 @@
|
|||
Table profile
|
||||
=============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|--------------|-----------------------------------------------|--------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id of the owner of this data | int(11) | NO | | 0 | |
|
||||
| profile-name | Name of the profile | varchar(255) | NO | | | |
|
||||
| is-default | Mark this profile as default profile | tinyint(1) | NO | | 0 | |
|
||||
| hide-friends | Hide friend list from viewers of this profile | tinyint(1) | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| pdesc | Deprecated | varchar(255) | NO | | | |
|
||||
| dob | Day of birth | varchar(32) | NO | | 0001-01-01 | |
|
||||
| address | | varchar(255) | NO | | | |
|
||||
| locality | | varchar(255) | NO | | | |
|
||||
| region | | varchar(255) | NO | | | |
|
||||
| postal-code | | varchar(32) | NO | | | |
|
||||
| country-name | | varchar(255) | NO | | | |
|
||||
| hometown | Deprecated | varchar(255) | NO | MUL | | |
|
||||
| gender | Deprecated | varchar(32) | NO | | | |
|
||||
| marital | Deprecated | varchar(255) | NO | | | |
|
||||
| with | Deprecated | text | NO | | NULL | |
|
||||
| howlong | Deprecated | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| sexual | Deprecated | varchar(255) | NO | | | |
|
||||
| politic | Deprecated | varchar(255) | NO | | | |
|
||||
| religion | Deprecated | varchar(255) | NO | | | |
|
||||
| pub_keywords | | text | NO | | NULL | |
|
||||
| prv_keywords | | text | NO | | NULL | |
|
||||
| likes | Deprecated | text | NO | | NULL | |
|
||||
| dislikes | Deprecated | text | NO | | NULL | |
|
||||
| about | Profile description | text | NO | | | |
|
||||
| summary | Deprecated | varchar(255) | NO | | | |
|
||||
| music | Deprecated | text | NO | | NULL | |
|
||||
| book | Deprecated | text | NO | | NULL | |
|
||||
| tv | Deprecated | text | NO | | NULL | |
|
||||
| film | Deprecated | text | NO | | NULL | |
|
||||
| interest | Deprecated | text | NO | | NULL | |
|
||||
| romance | Deprecated | text | NO | | NULL | |
|
||||
| work | Deprecated | text | NO | | NULL | |
|
||||
| education | Deprecated | text | NO | | NULL | |
|
||||
| contact | Deprecated | text | NO | | NULL | |
|
||||
| homepage | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| thumb | | varchar(255) | NO | | | |
|
||||
| publish | publish default profile in local directory | tinyint(1) | NO | | 0 | |
|
||||
| net-publish | publish profile in global directory | tinyint(1) | NO | | 0 | |
|
||||
user profiles data
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | --------------------------------------------- | ------------------ | ---- | --- | ---------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner User id | mediumint unsigned | NO | | 0 | |
|
||||
| profile-name | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| is-default | Deprecated | boolean | YES | | NULL | |
|
||||
| hide-friends | Hide friend list from viewers of this profile | boolean | NO | | 0 | |
|
||||
| name | | varchar(255) | NO | | | |
|
||||
| pdesc | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| dob | Day of birth | varchar(32) | NO | | 0000-00-00 | |
|
||||
| address | | varchar(255) | NO | | | |
|
||||
| locality | | varchar(255) | NO | | | |
|
||||
| region | | varchar(255) | NO | | | |
|
||||
| postal-code | | varchar(32) | NO | | | |
|
||||
| country-name | | varchar(255) | NO | | | |
|
||||
| hometown | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| gender | Deprecated | varchar(32) | YES | | NULL | |
|
||||
| marital | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| with | Deprecated | text | YES | | NULL | |
|
||||
| howlong | Deprecated | datetime | YES | | NULL | |
|
||||
| sexual | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| politic | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| religion | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| pub_keywords | | text | YES | | NULL | |
|
||||
| prv_keywords | | text | YES | | NULL | |
|
||||
| likes | Deprecated | text | YES | | NULL | |
|
||||
| dislikes | Deprecated | text | YES | | NULL | |
|
||||
| about | Profile description | text | YES | | NULL | |
|
||||
| summary | Deprecated | varchar(255) | YES | | NULL | |
|
||||
| music | Deprecated | text | YES | | NULL | |
|
||||
| book | Deprecated | text | YES | | NULL | |
|
||||
| tv | Deprecated | text | YES | | NULL | |
|
||||
| film | Deprecated | text | YES | | NULL | |
|
||||
| interest | Deprecated | text | YES | | NULL | |
|
||||
| romance | Deprecated | text | YES | | NULL | |
|
||||
| work | Deprecated | text | YES | | NULL | |
|
||||
| education | Deprecated | text | YES | | NULL | |
|
||||
| contact | Deprecated | text | YES | | NULL | |
|
||||
| homepage | | varchar(255) | NO | | | |
|
||||
| xmpp | | varchar(255) | NO | | | |
|
||||
| photo | | varchar(255) | NO | | | |
|
||||
| thumb | | varchar(255) | NO | | | |
|
||||
| publish | publish default profile in local directory | boolean | NO | | 0 | |
|
||||
| net-publish | publish profile in global directory | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------------- | ---------------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_is-default | uid, is-default |
|
||||
| pub_keywords | FULLTEXT, pub_keywords |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,13 +1,35 @@
|
|||
Table profile_check
|
||||
===================
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | user.id | int(10) unsigned | NO | | 0 | |
|
||||
| cid | contact.id | int(10) unsigned | NO | | 0 | |
|
||||
| dfrn_id | | varchar(255) | NO | | | |
|
||||
| sec | | varchar(255) | NO | | 0 | |
|
||||
| expire | | int(11) | NO | | NULL | |
|
||||
DFRN remote auth use
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| cid | contact.id | int unsigned | NO | | 0 | |
|
||||
| dfrn_id | | varchar(255) | NO | | | |
|
||||
| sec | | varchar(255) | NO | | | |
|
||||
| expire | | int unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
| cid | cid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
38
doc/database/db_profile_field.md
Normal file
38
doc/database/db_profile_field.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
Table profile_field
|
||||
===========
|
||||
|
||||
Custom profile fields
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------- | ----------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | Owner user id | mediumint unsigned | NO | | 0 | |
|
||||
| order | Field ordering per user | mediumint unsigned | NO | | 1 | |
|
||||
| psid | ID of the permission set of this profile field - 0 = public | int unsigned | YES | | NULL | |
|
||||
| label | Label of the field | varchar(255) | NO | | | |
|
||||
| value | Value of the field | text | YES | | NULL | |
|
||||
| created | creation time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| edited | last edit time | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
| order | order |
|
||||
| psid | psid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
| psid | [permissionset](help/database/db_permissionset) | id |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,10 +1,38 @@
|
|||
Table push_subscriber
|
||||
=====================
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------|------------------|---------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| poll_id | | int(11) | NO | MUL | 0 | |
|
||||
| choice | | int(11) | NO | MUL | 0 | |
|
||||
Used for OStatus: Contains feed subscribers
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | --------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| callback_url | | varchar(255) | NO | | | |
|
||||
| topic | | varchar(255) | NO | | | |
|
||||
| nickname | | varchar(255) | NO | | | |
|
||||
| push | Retrial counter | tinyint | NO | | 0 | |
|
||||
| last_update | Date of last successful trial | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| next_try | Next retrial date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| renewed | Date of last subscription renewal | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| secret | | varchar(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------- | -------- |
|
||||
| PRIMARY | id |
|
||||
| next_try | next_try |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
Table queue
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|---------|------------------|-------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| cid | | int(11) | NO | MUL | 0 | |
|
||||
| network | | varchar(32) | NO | MUL | | |
|
||||
| created | | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| last | | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| content | | mediumtext | NO | | NULL | |
|
||||
| batch | | tinyint(1) | NO | MUL | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,13 +1,34 @@
|
|||
Table register
|
||||
==============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ---------------- | ---- | --- | ------------------- | --------------- |
|
||||
| id | sequential ID | int(11) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| hash | | varchar(255) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| uid | user.id | int(11) unsigned | NO | | | |
|
||||
| password | | varchar(255) | NO | | | |
|
||||
| language | | varchar(16) | NO | | | |
|
||||
registrations requiring admin approval
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| hash | | varchar(255) | NO | | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| password | | varchar(255) | NO | | | |
|
||||
| language | | varchar(16) | NO | | | |
|
||||
| note | | text | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,10 +1,31 @@
|
|||
Table search
|
||||
============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------|------------------|--------------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| uid | | int(11) | NO | MUL | 0 | |
|
||||
| term | | varchar(255) | NO | MUL | | |
|
||||
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------- | ------------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
| term | | varchar(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------- | ------------- |
|
||||
| PRIMARY | id |
|
||||
| uid_term | uid, term(64) |
|
||||
| term | term(64) |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
Table session
|
||||
=============
|
||||
===========
|
||||
|
||||
web session storage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------ | ------------- | --------------- | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | bigint unsigned | NO | PRI | NULL | auto_increment |
|
||||
| sid | | varbinary(255) | NO | | | |
|
||||
| data | | text | YES | | NULL | |
|
||||
| expire | | int unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------- |
|
||||
| PRIMARY | id |
|
||||
| sid | sid(64) |
|
||||
| expire | expire |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------ | ------------- | ------------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| sid | | varchar(255) | NO | MUL | | |
|
||||
| data | | text | NO | | NULL | |
|
||||
| expire | | int(10) unsigned | NO | MUL | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
Table sign
|
||||
==========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------ | ------------- | ---------------- | ---- | --- | ------- | --------------- |
|
||||
| id | sequential ID | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| iid | item.id | int(10) unsigned | NO | MUL | 0 | |
|
||||
| signed_text | | mediumtext | NO | | NULL | |
|
||||
| signature | | text | NO | | NULL | |
|
||||
| signer | | varchar(255) | NO | | | |
|
||||
|
||||
Return to [database documentation](help/database)
|
22
doc/database/db_storage.md
Normal file
22
doc/database/db_storage.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
Table storage
|
||||
===========
|
||||
|
||||
Data stored by Database storage backend
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------------------------ | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | Auto incremented image data id | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| data | file data | longblob | NO | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
25
doc/database/db_tag.md
Normal file
25
doc/database/db_tag.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
Table tag
|
||||
===========
|
||||
|
||||
tags and mentions
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ----------- | -------------- | ---- | --- | ------- | -------------- |
|
||||
| id | | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| name | | varchar(96) | NO | | | |
|
||||
| url | | varbinary(255) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------------- | ----------------- |
|
||||
| PRIMARY | id |
|
||||
| type_name_url | UNIQUE, name, url |
|
||||
| url | url |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,19 +0,0 @@
|
|||
Table term
|
||||
==========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|----------| ------------- |---------------------|------|-----|---------------------|----------------|
|
||||
| tid | | int(10) unsigned | NO | PRI | NULL | auto_increment |
|
||||
| oid | | int(10) unsigned | NO | MUL | 0 | |
|
||||
| otype | | tinyint(3) unsigned | NO | MUL | 0 | |
|
||||
| type | | tinyint(3) unsigned | NO | MUL | 0 | |
|
||||
| term | | varchar(255) | NO | | | |
|
||||
| url | | varchar(255) | NO | | | |
|
||||
| aid | | int(10) unsigned | NO | | 0 | |
|
||||
| uid | | int(10) unsigned | NO | MUL | 0 | |
|
||||
| guid | | varchar(255) | NO | MUL | | |
|
||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| received | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| global | | tinyint(1) | NO | | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,33 +0,0 @@
|
|||
Table thread
|
||||
============
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-------------|------------------|------------------|------|-----|---------------------|-------|
|
||||
| iid | sequential ID | int(10) unsigned | NO | PRI | 0 | |
|
||||
| uid | | int(10) unsigned | NO | MUL | 0 | |
|
||||
| contact-id | | int(11) unsigned | NO | | 0 | |
|
||||
| gcontact-id | Global Contact | int(11) unsigned | NO | | 0 | |
|
||||
| owner-id | Item owner | int(11) unsigned | NO | MUL | 0 | |
|
||||
| author-id | Item author | int(11) unsigned | NO | MUL | 0 | |
|
||||
| created | | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| edited | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| commented | | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| received | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| changed | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| wall | | tinyint(1) | NO | MUL | 0 | |
|
||||
| private | | tinyint(1) | NO | | 0 | |
|
||||
| pubmail | | tinyint(1) | NO | | 0 | |
|
||||
| moderated | | tinyint(1) | NO | | 0 | |
|
||||
| visible | | tinyint(1) | NO | | 0 | |
|
||||
| spam | | tinyint(1) | NO | | 0 | |
|
||||
| starred | | tinyint(1) | NO | | 0 | |
|
||||
| ignored | | tinyint(1) | NO | | 0 | |
|
||||
| bookmark | | tinyint(1) | NO | | 0 | |
|
||||
| unseen | | tinyint(1) | NO | | 1 | |
|
||||
| deleted | | tinyint(1) | NO | | 0 | |
|
||||
| origin | | tinyint(1) | NO | | 0 | |
|
||||
| forum_mode | | tinyint(1) | NO | | 0 | |
|
||||
| mention | | tinyint(1) | NO | | 0 | |
|
||||
| network | | varchar(32) | NO | | | |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,13 +1,35 @@
|
|||
Table tokens
|
||||
============
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ---------- | ----------- | ------------ | ---- | --- | ------- | ----- |
|
||||
| id | | varchar(40) | NO | PRI | NULL | |
|
||||
| secret | | text | NO | | NULL | |
|
||||
| client_id | | varchar(20) | NO | | | |
|
||||
| expires | | int(11) | NO | | 0 | |
|
||||
| scope | | varchar(200) | NO | | | |
|
||||
| uid | | int(11) | NO | | 0 | |
|
||||
OAuth usage
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ----------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| id | | varchar(40) | NO | PRI | NULL | |
|
||||
| secret | | text | YES | | NULL | |
|
||||
| client_id | | varchar(20) | NO | | | |
|
||||
| expires | | int | NO | | 0 | |
|
||||
| scope | | varchar(200) | NO | | | |
|
||||
| uid | User id | mediumint unsigned | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| --------- | --------- |
|
||||
| PRIMARY | id |
|
||||
| client_id | client_id |
|
||||
| uid | uid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| client_id | [clients](help/database/db_clients) | client_id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
33
doc/database/db_user-contact.md
Normal file
33
doc/database/db_user-contact.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Table user-contact
|
||||
===========
|
||||
|
||||
User specific public contact data
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------------------- | ------------------ | ---- | --- | ------- | ----- |
|
||||
| cid | Contact id of the linked public contact | int unsigned | NO | PRI | 0 | |
|
||||
| uid | User id | mediumint unsigned | NO | PRI | 0 | |
|
||||
| blocked | Contact is completely blocked for this user | boolean | YES | | NULL | |
|
||||
| ignored | Posts from this contact are ignored | boolean | YES | | NULL | |
|
||||
| collapsed | Posts from this contact are collapsed | boolean | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | -------- |
|
||||
| PRIMARY | uid, cid |
|
||||
| cid | cid |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| cid | [contact](help/database/db_contact) | id |
|
||||
| uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,77 +1,75 @@
|
|||
Table user
|
||||
==========
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|--------------------------|-----------------------------------------------------------------------------------------|---------------------|------|-----|---------------------|----------------|
|
||||
| uid | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| guid | A unique identifier for this user | varchar(64) | NO | | | |
|
||||
| username | Name that this user is known by | varchar(255) | NO | | | |
|
||||
| password | encrypted password | varchar(255) | NO | | | |
|
||||
| nickname | nick- and user name | varchar(255) | NO | MUL | | |
|
||||
| email | the users email address | varchar(255) | NO | | | |
|
||||
| openid | | varchar(255) | NO | | | |
|
||||
| timezone | PHP-legal timezone | varchar(128) | NO | | | |
|
||||
| language | default language | varchar(32) | NO | | en | |
|
||||
| register_date | timestamp of registration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| login_date | timestamp of last login | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| default-location | Default for item.location | varchar(255) | NO | | | |
|
||||
| allow_location | 1 allows to display the location | tinyint(1) | NO | | 0 | |
|
||||
| theme | user theme preference | varchar(255) | NO | | | |
|
||||
| pubkey | RSA public key 4096 bit | text | NO | | NULL | |
|
||||
| prvkey | RSA private key 4096 bit | text | NO | | NULL | |
|
||||
| spubkey | | text | NO | | NULL | |
|
||||
| sprvkey | | text | NO | | NULL | |
|
||||
| verified | user is verified through email | tinyint(1) unsigned | NO | | 0 | |
|
||||
| blocked | 1 for user is blocked | tinyint(1) unsigned | NO | | 0 | |
|
||||
| blockwall | Prohibit contacts to post to the profile page of the user | tinyint(1) unsigned | NO | | 0 | |
|
||||
| hidewall | Hide profile details from unkown viewers | tinyint(1) unsigned | NO | | 0 | |
|
||||
| blocktags | Prohibit contacts to tag the post of this user | tinyint(1) unsigned | NO | | 0 | |
|
||||
| unkmail | Permit unknown people to send private mails to this user | tinyint(1) | NO | | 0 | |
|
||||
| cntunkmail | | int(11) | NO | | 10 | |
|
||||
| notify-flags | email notification options | int(11) unsigned | NO | | 65535 | |
|
||||
| page-flags | page/profile type | int(11) unsigned | NO | | 0 | |
|
||||
| prvnets | | tinyint(1) | NO | | 0 | |
|
||||
| pwdreset | | varchar(255) | NO | | | |
|
||||
| maxreq | | int(11) | NO | | 10 | |
|
||||
| expire | | int(11) unsigned | NO | | 0 | |
|
||||
| account_removed | if 1 the account is removed | tinyint(1) | NO | | 0 | |
|
||||
| account_expired | | tinyint(1) | NO | | 0 | |
|
||||
| account_expires_on | timestamp when account expires and will be deleted | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| expire_notification_sent | timestamp of last warning of account expiration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| def_gid | | int(11) | NO | | 0 | |
|
||||
| allow_cid | default permission for this user | mediumtext | NO | | NULL | |
|
||||
| allow_gid | default permission for this user | mediumtext | NO | | NULL | |
|
||||
| deny_cid | default permission for this user | mediumtext | NO | | NULL | |
|
||||
| deny_gid | default permission for this user | mediumtext | NO | | NULL | |
|
||||
| openidserver | | text | NO | | NULL | |
|
||||
The local users
|
||||
|
||||
```
|
||||
/**
|
||||
* page-flags
|
||||
*/
|
||||
define ( 'PAGE_NORMAL', 0 );
|
||||
define ( 'PAGE_SOAPBOX', 1 );
|
||||
define ( 'PAGE_COMMUNITY', 2 );
|
||||
define ( 'PAGE_FREELOVE', 3 );
|
||||
define ( 'PAGE_BLOG', 4 );
|
||||
define ( 'PAGE_PRVGROUP', 5 );
|
||||
Fields
|
||||
------
|
||||
|
||||
/**
|
||||
* notify-flags
|
||||
*/
|
||||
define ( 'NOTIFY_INTRO', 0x0001 );
|
||||
define ( 'NOTIFY_CONFIRM', 0x0002 );
|
||||
define ( 'NOTIFY_WALL', 0x0004 );
|
||||
define ( 'NOTIFY_COMMENT', 0x0008 );
|
||||
define ( 'NOTIFY_MAIL', 0x0010 );
|
||||
define ( 'NOTIFY_SUGGEST', 0x0020 );
|
||||
define ( 'NOTIFY_PROFILE', 0x0040 );
|
||||
define ( 'NOTIFY_TAGSELF', 0x0080 );
|
||||
define ( 'NOTIFY_TAGSHARE', 0x0100 );
|
||||
define ( 'NOTIFY_POKE', 0x0200 );
|
||||
define ( 'NOTIFY_SHARE', 0x0400 );
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ------------------------ | --------------------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
|
||||
| uid | sequential ID | mediumint unsigned | NO | PRI | NULL | auto_increment |
|
||||
| parent-uid | The parent user that has full control about this user | mediumint unsigned | YES | | NULL | |
|
||||
| guid | A unique identifier for this user | varchar(64) | NO | | | |
|
||||
| username | Name that this user is known by | varchar(255) | NO | | | |
|
||||
| password | encrypted password | varchar(255) | NO | | | |
|
||||
| legacy_password | Is the password hash double-hashed? | boolean | NO | | 0 | |
|
||||
| nickname | nick- and user name | varchar(255) | NO | | | |
|
||||
| email | the users email address | varchar(255) | NO | | | |
|
||||
| openid | | varchar(255) | NO | | | |
|
||||
| timezone | PHP-legal timezone | varchar(128) | NO | | | |
|
||||
| language | default language | varchar(32) | NO | | en | |
|
||||
| register_date | timestamp of registration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| login_date | timestamp of last login | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| default-location | Default for item.location | varchar(255) | NO | | | |
|
||||
| allow_location | 1 allows to display the location | boolean | NO | | 0 | |
|
||||
| theme | user theme preference | varchar(255) | NO | | | |
|
||||
| pubkey | RSA public key 4096 bit | text | YES | | NULL | |
|
||||
| prvkey | RSA private key 4096 bit | text | YES | | NULL | |
|
||||
| spubkey | | text | YES | | NULL | |
|
||||
| sprvkey | | text | YES | | NULL | |
|
||||
| verified | user is verified through email | boolean | NO | | 0 | |
|
||||
| blocked | 1 for user is blocked | boolean | NO | | 0 | |
|
||||
| blockwall | Prohibit contacts to post to the profile page of the user | boolean | NO | | 0 | |
|
||||
| hidewall | Hide profile details from unkown viewers | boolean | NO | | 0 | |
|
||||
| blocktags | Prohibit contacts to tag the post of this user | boolean | NO | | 0 | |
|
||||
| unkmail | Permit unknown people to send private mails to this user | boolean | NO | | 0 | |
|
||||
| cntunkmail | | int unsigned | NO | | 10 | |
|
||||
| notify-flags | email notification options | smallint unsigned | NO | | 65535 | |
|
||||
| page-flags | page/profile type | tinyint unsigned | NO | | 0 | |
|
||||
| account-type | | tinyint unsigned | NO | | 0 | |
|
||||
| prvnets | | boolean | NO | | 0 | |
|
||||
| pwdreset | Password reset request token | varchar(255) | YES | | NULL | |
|
||||
| pwdreset_time | Timestamp of the last password reset request | datetime | YES | | NULL | |
|
||||
| maxreq | | int unsigned | NO | | 10 | |
|
||||
| expire | | int unsigned | NO | | 0 | |
|
||||
| account_removed | if 1 the account is removed | boolean | NO | | 0 | |
|
||||
| account_expired | | boolean | NO | | 0 | |
|
||||
| account_expires_on | timestamp when account expires and will be deleted | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| expire_notification_sent | timestamp of last warning of account expiration | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| def_gid | | int unsigned | NO | | 0 | |
|
||||
| allow_cid | default permission for this user | mediumtext | YES | | NULL | |
|
||||
| allow_gid | default permission for this user | mediumtext | YES | | NULL | |
|
||||
| deny_cid | default permission for this user | mediumtext | YES | | NULL | |
|
||||
| deny_gid | default permission for this user | mediumtext | YES | | NULL | |
|
||||
| openidserver | | text | YES | | NULL | |
|
||||
|
||||
define ( 'NOTIFY_SYSTEM', 0x8000 );
|
||||
```
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ---------- | ------------ |
|
||||
| PRIMARY | uid |
|
||||
| nickname | nickname(32) |
|
||||
| parent-uid | parent-uid |
|
||||
| guid | guid |
|
||||
| email | email(64) |
|
||||
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
| parent-uid | [user](help/database/db_user) | uid |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -1,9 +1,23 @@
|
|||
Table userd
|
||||
===========
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|----------|------------------|--------------|------|-----|---------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| username | | varchar(255) | NO | MUL | NULL | |
|
||||
Deleted usernames
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| -------- | ------------- | ------------ | ---- | --- | ------- | -------------- |
|
||||
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| username | | varchar(255) | NO | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| -------- | ------------ |
|
||||
| PRIMARY | id |
|
||||
| username | username(32) |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
23
doc/database/db_verb.md
Normal file
23
doc/database/db_verb.md
Normal file
|
@ -0,0 +1,23 @@
|
|||
Table verb
|
||||
===========
|
||||
|
||||
Activity Verbs
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ----------- | ----------------- | ---- | --- | ------- | -------------- |
|
||||
| id | | smallint unsigned | NO | PRI | NULL | auto_increment |
|
||||
| name | | varchar(100) | NO | | | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | id |
|
||||
| name | name |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
22
doc/database/db_worker-ipc.md
Normal file
22
doc/database/db_worker-ipc.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
Table worker-ipc
|
||||
===========
|
||||
|
||||
Inter process communication between the frontend and the worker
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| ----- | ------------------------- | ------- | ---- | --- | ------- | ----- |
|
||||
| key | | int | NO | PRI | NULL | |
|
||||
| jobs | Flag for outstanding jobs | boolean | YES | | NULL | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ------- | ------ |
|
||||
| PRIMARY | key |
|
||||
|
||||
|
||||
Return to [database documentation](help/database)
|
|
@ -1,14 +1,38 @@
|
|||
Table workerqueue
|
||||
=================
|
||||
===========
|
||||
|
||||
Background tasks queue entries
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
| --------- | ------------------------------------------------------- | ---------------- | ---- | --- | ------------------- | -------------- |
|
||||
| id | Auto incremented worker task id | int unsigned | NO | PRI | NULL | auto_increment |
|
||||
| command | Task command | varchar(100) | YES | | NULL | |
|
||||
| parameter | Task parameter | mediumtext | YES | | NULL | |
|
||||
| priority | Task priority | tinyint unsigned | NO | | 0 | |
|
||||
| created | Creation date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| pid | Process id of the worker | int unsigned | NO | | 0 | |
|
||||
| executed | Execution date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| next_try | Next retrial date | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| retrial | Retrial counter | tinyint | NO | | 0 | |
|
||||
| done | Marked 1 when the task was done - will be deleted later | boolean | NO | | 0 | |
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
| Name | Fields |
|
||||
| ----------------------------- | -------------------------------- |
|
||||
| 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 |
|
||||
|
||||
| Field | Description | Type | Null | Key | Default | Extra |
|
||||
|-----------|------------------|---------------------|------|-----|---------------------|----------------|
|
||||
| id | sequential ID | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| parameter | | text | NO | | NULL | |
|
||||
| priority | | tinyint(3) unsigned | NO | | 0 | |
|
||||
| created | | datetime | NO | MUL | 0001-01-01 00:00:00 | |
|
||||
| pid | | int(11) | NO | | 0 | |
|
||||
| executed | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||
| done | set to 1 if done | tinyint(1) | NO | | 0 | |
|
||||
|
||||
Return to [database documentation](help/database)
|
||||
|
|
|
@ -120,6 +120,7 @@ HELP;
|
|||
$output = ob_get_clean();
|
||||
break;
|
||||
case "dumpsql":
|
||||
DBStructure::writeStructure();
|
||||
ob_start();
|
||||
DBStructure::printStructure($basePath);
|
||||
$output = ob_get_clean();
|
||||
|
|
|
@ -24,6 +24,7 @@ namespace Friendica\Database;
|
|||
use Exception;
|
||||
use Friendica\Core\Hook;
|
||||
use Friendica\Core\Logger;
|
||||
use Friendica\Core\Renderer;
|
||||
use Friendica\DI;
|
||||
use Friendica\Model\Item;
|
||||
use Friendica\Model\User;
|
||||
|
@ -159,6 +160,110 @@ class DBStructure
|
|||
return DI::l10n()->t('Errors encountered performing database changes: ') . $message . EOL;
|
||||
}
|
||||
|
||||
public static function writeStructure()
|
||||
{
|
||||
Renderer::registerTemplateEngine('Friendica\Render\FriendicaSmartyEngine');
|
||||
|
||||
$tables = [];
|
||||
foreach (self::definition(null) as $name => $definition) {
|
||||
$indexes = [[
|
||||
'name' => 'Name',
|
||||
'fields' => 'Fields',
|
||||
],
|
||||
[
|
||||
'name' => '-',
|
||||
'fields' => '-',
|
||||
]];
|
||||
|
||||
$lengths = ['name' => 4, 'fields' => 6];
|
||||
foreach ($definition['indexes'] as $key => $value) {
|
||||
$fieldlist = implode(', ', $value);
|
||||
$indexes[] = ['name' => $key, 'fields' => $fieldlist];
|
||||
$lengths['name'] = max($lengths['name'], strlen($key));
|
||||
$lengths['fields'] = max($lengths['fields'], strlen($fieldlist));
|
||||
}
|
||||
|
||||
array_walk_recursive($indexes, function(&$value, $key) use ($lengths)
|
||||
{
|
||||
$value = str_pad($value, $lengths[$key], $value === '-' ? '-' : ' ');
|
||||
});
|
||||
|
||||
$foreign = [];
|
||||
$fields = [[
|
||||
'name' => 'Field',
|
||||
'comment' => 'Description',
|
||||
'type' => 'Type',
|
||||
'null' => 'Null',
|
||||
'primary' => 'Key',
|
||||
'default' => 'Default',
|
||||
'extra' => 'Extra',
|
||||
],
|
||||
[
|
||||
'name' => '-',
|
||||
'comment' => '-',
|
||||
'type' => '-',
|
||||
'null' => '-',
|
||||
'primary' => '-',
|
||||
'default' => '-',
|
||||
'extra' => '-',
|
||||
]];
|
||||
$lengths = [
|
||||
'name' => 5,
|
||||
'comment' => 11,
|
||||
'type' => 4,
|
||||
'null' => 4,
|
||||
'primary' => 3,
|
||||
'default' => 7,
|
||||
'extra' => 5,
|
||||
];
|
||||
foreach ($definition['fields'] as $key => $value) {
|
||||
$field = [];
|
||||
$field['name'] = $key;
|
||||
$field['comment'] = $value['comment'] ?? '';
|
||||
$field['type'] = $value['type'];
|
||||
$field['null'] = ($value['not null'] ?? false) ? 'NO' : 'YES';
|
||||
$field['primary'] = ($value['primary'] ?? false) ? 'PRI' : '';
|
||||
$field['default'] = $value['default'] ?? 'NULL';
|
||||
$field['extra'] = $value['extra'] ?? '';
|
||||
|
||||
foreach ($field as $fieldname => $fieldvalue) {
|
||||
$lengths[$fieldname] = max($lengths[$fieldname] ?? 0, strlen($fieldvalue));
|
||||
}
|
||||
$fields[] = $field;
|
||||
|
||||
if (!empty($value['foreign'])) {
|
||||
$foreign[] = [
|
||||
'field' => $key,
|
||||
'targettable' => array_keys($value['foreign'])[0],
|
||||
'targetfield' => array_values($value['foreign'])[0]
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
array_walk_recursive($fields, function(&$value, $key) use ($lengths)
|
||||
{
|
||||
$value = str_pad($value, $lengths[$key], $value === '-' ? '-' : ' ');
|
||||
});
|
||||
|
||||
$tables[] = ['name' => $name, 'comment' => $definition['comment']];
|
||||
$content = Renderer::replaceMacros(Renderer::getMarkupTemplate('structure.tpl'), [
|
||||
'$name' => $name,
|
||||
'$comment' => $definition['comment'],
|
||||
'$fields' => $fields,
|
||||
'$indexes' => $indexes,
|
||||
'$foreign' => $foreign,
|
||||
]);
|
||||
$filename = DI::basePath() . '/doc/database/db_' . $name . '.md';
|
||||
file_put_contents($filename, $content);
|
||||
}
|
||||
asort($tables);
|
||||
$content = Renderer::replaceMacros(Renderer::getMarkupTemplate('tables.tpl'), [
|
||||
'$tables' => $tables,
|
||||
]);
|
||||
$filename = DI::basePath() . '/doc/database.md';
|
||||
file_put_contents($filename, $content);
|
||||
}
|
||||
|
||||
public static function printStructure($basePath)
|
||||
{
|
||||
$database = self::definition($basePath, false);
|
||||
|
@ -1206,7 +1311,7 @@ class DBStructure
|
|||
if ($verbose) {
|
||||
echo "Zero contact added\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
} elseif (self::existsTable('contact') && $verbose) {
|
||||
echo "Zero contact already added\n";
|
||||
} elseif ($verbose) {
|
||||
|
@ -1230,7 +1335,7 @@ class DBStructure
|
|||
|
||||
if (self::existsTable('permissionset')) {
|
||||
if (!DBA::exists('permissionset', ['id' => 0])) {
|
||||
DBA::insert('permissionset', ['allow_cid' => '', 'allow_gid' => '', 'deny_cid' => '', 'deny_gid' => '']);
|
||||
DBA::insert('permissionset', ['allow_cid' => '', 'allow_gid' => '', 'deny_cid' => '', 'deny_gid' => '']);
|
||||
$lastid = DBA::lastInsertId();
|
||||
if ($lastid != 0) {
|
||||
DBA::update('permissionset', ['id' => 0], ['id' => $lastid]);
|
||||
|
@ -1265,7 +1370,7 @@ class DBStructure
|
|||
} elseif ($verbose) {
|
||||
echo "permissionset: Table not found\n";
|
||||
}
|
||||
|
||||
|
||||
if (!self::existsForeignKeyForField('tokens', 'client_id')) {
|
||||
$tokens = DBA::p("SELECT `tokens`.`id` FROM `tokens`
|
||||
LEFT JOIN `clients` ON `clients`.`client_id` = `tokens`.`client_id`
|
||||
|
|
31
view/templates/structure.tpl
Normal file
31
view/templates/structure.tpl
Normal file
|
@ -0,0 +1,31 @@
|
|||
Table {{$name nofilter}}
|
||||
===========
|
||||
|
||||
{{$comment nofilter}}
|
||||
|
||||
Fields
|
||||
------
|
||||
|
||||
{{foreach $fields as $field}}
|
||||
| {{$field.name nofilter}} | {{$field.comment nofilter}} | {{$field.type nofilter}} | {{$field.null nofilter}} | {{$field.primary nofilter}} | {{$field.default nofilter}} | {{$field.extra nofilter}} |
|
||||
{{/foreach}}
|
||||
|
||||
Indexes
|
||||
------------
|
||||
|
||||
{{foreach $indexes as $index}}
|
||||
| {{$index.name nofilter}} | {{$index.fields nofilter}} |
|
||||
{{/foreach}}
|
||||
|
||||
{{if $foreign}}
|
||||
Foreign Keys
|
||||
------------
|
||||
|
||||
| Field | Target Table | Target Field |
|
||||
|-------|--------------|--------------|
|
||||
{{foreach $foreign as $key}}
|
||||
| {{$key.field nofilter}} | [{{$key.targettable nofilter}}](help/database/db_{{$key.targettable nofilter}}) | {{$key.targetfield nofilter}} |
|
||||
{{/foreach}}
|
||||
{{/if}}
|
||||
|
||||
Return to [database documentation](help/database)
|
10
view/templates/tables.tpl
Normal file
10
view/templates/tables.tpl
Normal file
|
@ -0,0 +1,10 @@
|
|||
Database Tables
|
||||
===============
|
||||
|
||||
* [Home](help)
|
||||
|
||||
| Table | Description |
|
||||
|-------|-------------|
|
||||
{{foreach $tables as $table}}
|
||||
| [{{$table.name nofilter}}](help/database/db_{{$table.name nofilter}}) | {{$table.comment nofilter}} |
|
||||
{{/foreach}}
|
Loading…
Reference in a new issue