]> git.mxchange.org Git - friendica.git/blobdiff - static/dbstructure.config.php
Merge pull request #8300 from annando/expiry-settings
[friendica.git] / static / dbstructure.config.php
index ada837fb265b427771f6a16643106b92bb609c82..9786664601364570d8074dfc49d2168d7a98e7d9 100755 (executable)
@@ -1,6 +1,23 @@
 <?php
-
-/* Main database structure configuration file.
+/**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ * Main database structure configuration file.
  *
  * Here are described all the tables, fields and indexes Friendica needs to work.
  *
@@ -34,7 +51,7 @@
 use Friendica\Database\DBA;
 
 if (!defined('DB_UPDATE_VERSION')) {
-       define('DB_UPDATE_VERSION', 1328);
+       define('DB_UPDATE_VERSION', 1333);
 }
 
 return [
@@ -223,7 +240,7 @@ return [
                        "location" => ["type" => "varchar(255)", "default" => "", "comment" => ""],
                        "about" => ["type" => "text", "comment" => ""],
                        "keywords" => ["type" => "text", "comment" => "public keywords (interests) of the contact"],
-                       "gender" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => ""],
+                       "gender" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => "Deprecated"],
                        "xmpp" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "attag" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "avatar" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
@@ -277,7 +294,7 @@ return [
                        "reason" => ["type" => "text", "comment" => ""],
                        "closeness" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "99", "comment" => ""],
                        "info" => ["type" => "mediumtext", "comment" => ""],
-                       "profile-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "comment" => ""],
+                       "profile-id" => ["type" => "int unsigned", "comment" => "Deprecated"],
                        "bdyear" => ["type" => "varchar(4)", "not null" => "1", "default" => "", "comment" => ""],
                        "bd" => ["type" => "date", "not null" => "1", "default" => DBA::NULL_DATE, "comment" => ""],
                        "notify_new_posts" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
@@ -449,7 +466,7 @@ return [
                        "location" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "about" => ["type" => "text", "comment" => ""],
                        "keywords" => ["type" => "text", "comment" => "puplic keywords (interests)"],
-                       "gender" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => ""],
+                       "gender" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => "Deprecated"],
                        "birthday" => ["type" => "varchar(32)", "not null" => "1", "default" => DBA::NULL_DATE, "comment" => ""],
                        "community" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "1 if contact is forum account"],
                        "contact-type" => ["type" => "tinyint", "not null" => "1", "default" => "-1", "comment" => ""],
@@ -1084,40 +1101,40 @@ return [
                "fields" => [
                        "id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
                        "uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "relation" => ["user" => "uid"], "comment" => "Owner User id"],
-                       "profile-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "Name of the profile"],
-                       "is-default" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "Mark this profile as default profile"],
+                       "profile-name" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "is-default" => ["type" => "boolean", "comment" => "Deprecated"],
                        "hide-friends" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "Hide friend list from viewers of this profile"],
                        "name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "pdesc" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "Title or description"],
+                       "pdesc" => ["type" => "varchar(255)", "comment" => "Deprecated"],
                        "dob" => ["type" => "varchar(32)", "not null" => "1", "default" => "0000-00-00", "comment" => "Day of birth"],
                        "address" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "locality" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "region" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "postal-code" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => ""],
                        "country-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "hometown" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "gender" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => ""],
-                       "marital" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "with" => ["type" => "text", "comment" => ""],
-                       "howlong" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
-                       "sexual" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "politic" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "religion" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
+                       "hometown" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "gender" => ["type" => "varchar(32)", "comment" => "Deprecated"],
+                       "marital" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "with" => ["type" => "text", "comment" => "Deprecated"],
+                       "howlong" => ["type" => "datetime", "comment" => "Deprecated"],
+                       "sexual" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "politic" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "religion" => ["type" => "varchar(255)", "comment" => "Deprecated"],
                        "pub_keywords" => ["type" => "text", "comment" => ""],
                        "prv_keywords" => ["type" => "text", "comment" => ""],
-                       "likes" => ["type" => "text", "comment" => ""],
-                       "dislikes" => ["type" => "text", "comment" => ""],
-                       "about" => ["type" => "text", "comment" => ""],
-                       "summary" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
-                       "music" => ["type" => "text", "comment" => ""],
-                       "book" => ["type" => "text", "comment" => ""],
-                       "tv" => ["type" => "text", "comment" => ""],
-                       "film" => ["type" => "text", "comment" => ""],
-                       "interest" => ["type" => "text", "comment" => ""],
-                       "romance" => ["type" => "text", "comment" => ""],
-                       "work" => ["type" => "text", "comment" => ""],
-                       "education" => ["type" => "text", "comment" => ""],
-                       "contact" => ["type" => "text", "comment" => ""],
+                       "likes" => ["type" => "text", "comment" => "Deprecated"],
+                       "dislikes" => ["type" => "text", "comment" => "Deprecated"],
+                       "about" => ["type" => "text", "comment" => "Profile description"],
+                       "summary" => ["type" => "varchar(255)", "comment" => "Deprecated"],
+                       "music" => ["type" => "text", "comment" => "Deprecated"],
+                       "book" => ["type" => "text", "comment" => "Deprecated"],
+                       "tv" => ["type" => "text", "comment" => "Deprecated"],
+                       "film" => ["type" => "text", "comment" => "Deprecated"],
+                       "interest" => ["type" => "text", "comment" => "Deprecated"],
+                       "romance" => ["type" => "text", "comment" => "Deprecated"],
+                       "work" => ["type" => "text", "comment" => "Deprecated"],
+                       "education" => ["type" => "text", "comment" => "Deprecated"],
+                       "contact" => ["type" => "text", "comment" => "Deprecated"],
                        "homepage" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "xmpp" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "photo" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
@@ -1145,6 +1162,25 @@ return [
                        "PRIMARY" => ["id"],
                ]
        ],
+       "profile_field" => [
+               "comment" => "Custom profile fields",
+               "fields" => [
+                       "id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
+                       "uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "relation" => ["user" => "uid"], "comment" => "Owner user id"],
+                       "order" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "1", "comment" => "Field ordering per user"],
+                       "psid" => ["type" => "int unsigned", "relation" => ["permissionset" => "id"], "comment" => "ID of the permission set of this profile field - 0 = public"],
+                       "label" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "Label of the field"],
+                       "value" => ["type" => "text", "comment" => "Value of the field"],
+                       "created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => "creation time"],
+                       "edited" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => "last edit time"],
+               ],
+               "indexes" => [
+                       "PRIMARY" => ["id"],
+                       "uid" => ["uid"],
+                       "order" => ["order"],
+                       "psid" => ["psid"],
+               ]
+       ],
        "push_subscriber" => [
                "comment" => "Used for OStatus: Contains feed subscribers",
                "fields" => [
@@ -1388,11 +1424,13 @@ return [
                        "uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "primary" => "1", "relation" => ["user" => "uid"], "comment" => "User id"],
                        "hidden" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "Marker to hide an item from the user"],
                        "ignored" => ["type" => "boolean", "comment" => "Ignore this thread if set"],
-                       "pinned" => ["type" => "boolean", "comment" => "The item is pinned on the profile page"]
+                       "pinned" => ["type" => "boolean", "comment" => "The item is pinned on the profile page"],
+                       "notification-type" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "0", "comment" => ""],
                ],
                "indexes" => [
                        "PRIMARY" => ["uid", "iid"],
-                       "uid_pinned" => ["uid", "pinned"]
+                       "uid_pinned" => ["uid", "pinned"],
+                       "iid_uid" => ["iid", "uid"]
                ]
        ],
        "worker-ipc" => [