Commit Graph

202 Commits

Author SHA1 Message Date
Michael 14f814e6ba Issue 8636: Check and fix data before foreign key creation 2020-05-16 06:12:28 +00:00
Michael ec3290da3b We already have got a function to check if a table exists 2020-05-15 18:32:53 +00:00
Michael d70b77288d Call the initial value check in the test 2020-05-15 18:08:06 +00:00
Michael e333f45d0f Ensure that the initial values are set 2020-05-15 17:49:07 +00:00
Michael faaf3d89e3 The next boolean 2020-05-11 19:07:18 +00:00
Michael c5be1092d0 Use "quoteIdentifier" 2020-05-11 18:59:36 +00:00
Michael a7f777ee43 DBStructure is now using "q(" nevermore 2020-05-10 20:23:58 +00:00
Michael 7f55e1b2bc We now support real foreign keys 2020-05-10 14:55:03 +00:00
Michael 51bc5279a0 Documentation and unneeded stuff removed 2020-04-25 18:36:58 +00:00
Michael afa712b811 DBView is View 2020-04-24 08:48:34 +00:00
Michael 63ebbb8a16 We now can define views 2020-04-23 06:19:44 +00:00
Michael 01c6179feb Check for Antelope and convert to Barracuda 2020-04-01 18:11:06 +00:00
nupplaPhil 23c64b9a11
Add license info at Friendica classes 2020-02-09 15:45:36 +01:00
nupplaPhil ed9392469e
Remove unneeded Config namespace usages 2020-01-19 22:50:44 +01:00
nupplaPhil 3411ced833
Move Config::set() to DI::config()->set() 2020-01-19 21:21:53 +01:00
nupplaPhil 174129af94
add missing namespaces/fix wrong class-names 2020-01-19 16:31:35 +01:00
nupplaPhil d6efc90194
cleanup namespace usages for L10n 2020-01-19 16:31:33 +01:00
nupplaPhil 5dfee31108
Move L10n::t() calls to DI::l10n()->t() calls 2020-01-19 16:31:16 +01:00
Michael 845f71b7dd Missing "*" 2020-01-19 10:10:53 +00:00
Michael 0a4119adaf @brief is removed completely 2020-01-19 06:05:23 +00:00
Hypolite Petovan 51ee24f652 Fix capitalization of table definition key in DBStructure
- Addresses https://github.com/friendica/friendica/issues/7998#issuecomment-569481865
2019-12-29 02:23:47 -05:00
Hypolite Petovan 5dcf6bfc58 Remove extra spaces before closing parentheses in src/ 2019-10-16 08:58:09 -04:00
Hypolite Petovan 146646c4d4 Replace deprecated calls to defaults() by ?? and ?: in src/ 2019-10-16 08:38:52 -04:00
Philipp Holzer d5dd12b8f8
Add Drone CI
- Add drone test environment
- Add drone config
- apt phpunit
- Fix api.php
- Fix item.php
- Fix DBStructure
- Check if caching is possible during tests
2019-09-30 14:03:12 +02:00
Hypolite Petovan 0e0fff3324 Correctly escape identifier names
- Add support for schema, multiple tables in $table parameters
- Remove Database->formatTableName method
2019-07-29 00:23:40 -04:00
Philipp Holzer 92fb0a82ca
Dynamic config loading
- Move settings, defaults and dbstructure to directory 'static'
- Dynamic loading of config files (after the static loading)
- Filter out '-sample.config.php' and '-sample.ini.php' files
- Remove unnecessary ConfigFileManager
- Move ConfigFileLoader to Utils
- Add tests for multi-loading for INI, config and sample-filtering
2019-07-16 20:16:43 +02:00
Philipp Holzer ec2c84a4e9 code lisibility & filter optimization 2019-03-22 22:55:48 -04:00
Philipp Holzer b2edb85588 Replace "q" calls 2019-03-22 22:55:48 -04:00
Philipp Holzer 1e0e1674f2
4) Adding Factories to other entrypoints 2019-02-03 22:46:50 +01:00
Philipp Holzer 4af0119b73
3) Introducing ConfigFactory 2019-02-03 22:22:04 +01:00
Hypolite Petovan 8a554fef2d Fix missing library include in Database\DBstructure 2019-01-23 21:22:26 -05:00
Hypolite Petovan 3282ce5389 Fix PHPDoc comments project-wide 2019-01-21 10:35:51 -05:00
Hypolite Petovan acaee626f5 Remove include/ requires that are now done directly from Composer 2018-12-24 09:56:25 -05:00
Hypolite Petovan d53ff9c34d Add support for FULLTEXT indices in Database\DBStructure 2018-12-23 15:40:49 -05:00
Hypolite Petovan 48a356dba2 Fix formatting in Database\DBStructure 2018-12-23 15:32:23 -05:00
Hypolite Petovan 458981f75c Replace x() by isset(), !empty() or defaults()
- Remove extraneous parentheses around empty() calls
- Remove duplicate calls to intval(), count() or strlen() after empty()
- Replace ternary operators outputting binary value with empty() return value
- Rewrite defaults() without x()
2018-11-30 09:06:22 -05:00
Hypolite Petovan 6eb6cc94c7 Move config/dbstructure.php to config/dbstructure.config.php 2018-11-25 01:14:44 -05:00
fabrixxm c13e078c42 dbstructure: check for comment value or use default
fix #6119
2018-11-17 11:43:01 +01:00
Philipp Holzer 270e817954
Adding force to update routine
- Introduced Cache::NEVER Lock (never expiring lock)
- Force flag for dbstructure update
- Moving the business logic to central place in Update class
2018-10-31 14:44:40 +01:00
Philipp Holzer 87f3fe24f7
Moving UPDATE defines/constants out of boot 2018-10-31 14:44:23 +01:00
Adam Magness 50da89d861 Logger Levels
update logger levels in calls
2018-10-30 09:58:45 -04:00
Adam Magness 14fde5dc9b Log function
implement log() function.
2018-10-30 09:57:14 -04:00
Hypolite Petovan 2debdbd0c9 Fix dbstructure console outputting addon structure as well 2018-10-22 16:50:55 -04:00
Hypolite Petovan 19ffc0510b Move DB_UPDATE_VERSION from boot.php to config/dbstructure.php 2018-10-22 16:50:55 -04:00
Hypolite Petovan fad99b8619 Switch from dbstructure.json to dbstructure.php 2018-10-22 16:50:55 -04:00
Hypolite Petovan 4ffcb77554 Simplify L10n::t + sprintf instances 2018-10-20 09:02:35 -04:00
Hypolite Petovan a8d3a4d218 Add missing L10n::popLang calls 2018-10-20 09:02:10 -04:00
Hypolite Petovan 481b0ac138 Fix notices in include/enotify 2018-10-15 23:13:00 -04:00
Philipp Holzer 5a02e39a65
Rename App Methods
- renamed a lot of App methods to CamelCase
- replaced direct public variables with get-/set-Methods
2018-10-10 00:16:06 +02:00
Hypolite Petovan 6a6695b167 Change DBStructure::definition to use config/dbstructure.json 2018-08-04 13:24:04 +02:00
Michael Vogel 986106a8f7 Item storage: Permissions aren't stored in the items anymore (#5495)
* The permission set is now used for item permissions

* Check for allow_cid, ... is superfluous. Checking for "private" is enough

* We query the permissionset

* Permissions are displayed correctly

* Changed index

* We don't store the permissions in the item table anymore

* Permission fields are now deprecated

* Reversed ...
2018-07-25 19:14:55 -04:00
Hypolite Petovan a6fb3568f9 Rename dbesc to DBA::escape 2018-07-23 15:30:54 -04:00
Hypolite Petovan ecea7425f8 Rename DBA::is_result to DBA::isResult 2018-07-23 11:04:14 -04:00
Hypolite Petovan 0ec44f3e8a Rename DBM method calls to DBA method calls 2018-07-23 11:02:24 -04:00
Hypolite Petovan 8ddb94ef06 Use DateTimeFormat::utc() instead of DBM::date() 2018-07-23 10:57:47 -04:00
Hypolite Petovan 415b982d39 Rename DBA::num_rows to DBA::numRows 2018-07-22 19:27:35 -04:00
Hypolite Petovan 1f2c0b98b5 Rename DBA::server_info to DBA::serverInfo 2018-07-22 19:27:35 -04:00
Hypolite Petovan 591939dfc0 Rename DBA::database_name to DBA::databaseName 2018-07-22 19:27:34 -04:00
Hypolite Petovan abbaaf5aa5 Rename DBA::clean_query to DBA::cleanQuery 2018-07-22 19:27:34 -04:00
Hypolite Petovan 910e832dc2 Rename DBA::any_value_fallback to DBA::anyValueFallback 2018-07-22 19:27:34 -04:00
Roland Häder c17adaf333 Uncommon logger levels in Friendica (#5453)
* "normal" is an uncommon logger level:
- changed LOGGER_NORMAL -> LOGGER_INFO
- added LOGGER_WARNING (a common logger level)

* Used constants instead of values (MrPetovan)
2018-07-22 14:07:44 -04:00
Philipp c5cbf565d9 DBStructure enhancements (#5437)
* Adding DBStructure enhancements

- Added DBStructure::rename()
- Added DBStructure::existTable()
- Added DBStructure::existColumn()

(cherry picked from commit 4ae06ec)

* Adding `pre_update_1279` method

- Added DBStructure::rename()
- Added DBStructure::existTable()
- Added DBStructure::existColumn()

(cherry picked from commit 8496d84)

* code standards

(cherry picked from commit 551d09b)

* simplify to `empty` instead `is_null`

(cherry picked from commit ce68835)
2018-07-21 08:43:43 -04:00
Hypolite Petovan af6dbc654f Rename Friendica\Database\dba to Friendica\Database\DBA 2018-07-20 08:19:26 -04:00
Hypolite Petovan daa1177e3a Update use statement lists with new Friendica\Database\dba class
- Remove unused use statement
- Remove superfluous use statements (classes in the same namespace)
- Add missing use statements
2018-07-19 22:15:21 -04:00
Michael Vogel ec49d004e3 We now store the item delivery data in a separate table (#5413)
* We now store the item delivery data in a separate table

* Reorganized table structure
2018-07-19 17:56:52 -04:00
Michael Vogel 5af9596dde New item field "Post-type" and new table "permissionset" (#5408)
* "post-type" replaces "bookmark" and "type"

* Removed some more type

* Added index to permission set

* The permission set is now stored

* The permission set is now removed upon expiry

* Post update now stores the permission set

* New file

* Permissions are now sorted

* Changed documentation
2018-07-19 09:52:05 -04:00
Hypolite Petovan 762a786611 Replace direct accesses to App->config by Config::get/set calls 2018-07-16 19:38:16 -04:00
Hypolite Petovan 3255b2364b Fix dbesc as a constant notice message 2018-07-16 19:38:15 -04:00
Michael Vogel d3a2ed85fe Next item structure works (#5380)
* Use "LEFT JOIN" to always fetch the item. Needed for update routines.

* New conversion routine that now covers every item

* Post update is now activated

* We now use a hash based upon RIPEMD-320 for content and activity

* The hash doesn't contain the plink anymore

* Legacy item fields are now "null"able

* New hash function for a server unique item hash

* Introduction of the legacy mode (usage of old item fields)

* Code simplification

* We don't need the "uri" fields anymore in item-activity and item-content

* Use the "created" and not the "received" date for the hash

* Avoiding several notices

* Some more warnings removed

* Improved uri-hash / Likes on Diaspora are now getting a creation date

* Corrected the post update version

* Ensure an unique uri-hash

* Don't delete orhaned item data at the moment

* Partly reworked, due to strange behaviour

* Some more parts reworked

* Using the uri currently seems to be more reliable

* Using the uri here as well

* Use the hash values again

* Grouped item fields in different categories

* Notices again

* use the gravity (we always should)

* Added hint for disabled post updates

* Notices ...

* Issue #5337: Personal notes are displayed again

* Use the gravity again
2018-07-15 14:36:20 -04:00
Michael Vogel 0360f7197a Several more warnings ... (#5340)
* Some more warnings removed

* Even more warnings ...

* Will it ever end? ;-)

* Avoid warning in dbstructure

* Origin and OStatus ...

* There are more warnings solved ... yeah!

* And again ...

* We are not done yet

* And more ...

* And some new places ...

* And more in the feeds

* Avoid some more

* And some backend stuff

* Notifications cleared

* Some more stuff

* and again ...

* It's getting fewer ...

* Some warnings had been hidden in the notifications

* Fix the fix

* And another missing one ...

* We need the owner here, not the user

* Forgotten user

* And more ...

* And some more warnings disappeared ...

* Some more frontend warnings

* Some backend warnings removed

* Fixed sidebar for "vier"

* And more ...

* Some more ...

* And something for "remote self"

* Am I stuck in an endless loop?

* Fix: Clear tag and file field on update

* Preset page content
2018-07-10 08:27:56 -04:00
Michael Vogel ff5ee74ecf
Merge branch 'develop' into item-activities 2018-07-08 06:35:50 +02:00
Michael Vogel 3eec97aa6e
Merge pull request #5314 from MrPetovan/task/4889-fix-tests
Fix tests after enabling PHP Notices
2018-07-06 22:14:01 +02:00
Michael 0c51159111 New index that is needed for the expiry 2018-07-06 06:46:44 +00:00
Michael 44e405d22b We now store activities in a separate table 2018-07-05 22:00:38 +00:00
Philipp Holzer 19209f6826
merged from develop and increased DB-version 2018-07-04 23:44:11 +02:00
Philipp Holzer aac94d1d74
Adding multihost - locking
Adding Unit-Tests for it
2018-07-04 23:37:22 +02:00
Hypolite Petovan 79ff49d716 Replace more is_null with empty in DBStructure 2018-07-02 22:42:15 -04:00
Hypolite Petovan e7d6b48bb3 Fix Undefined index: Collation in DBStructure 2018-07-02 22:28:27 -04:00
Michael bffdf96d87 The "file" variable isn't stored anymore in the item table 2018-07-01 07:57:59 +00:00
Michael 0ab9f2e265 Preparations to not store the tags in the item table anymore 2018-06-30 13:54:01 +00:00
Michael a8a189eec4 The detected language now moved to "item-content" as well 2018-06-30 05:18:43 +00:00
Michael 028c9f4da5 We now store the verb in the item-content as well 2018-06-27 19:37:13 +00:00
Michael 6b568bb8fa Delete of item-content should work now 2018-06-25 20:23:32 +00:00
Michael 89fb28ae9b Content is now stored exclusively in item-content, connected via "icid" field 2018-06-25 04:56:32 +00:00
Michael d0c36d0e89 New table for storing item content 2018-06-24 14:33:07 +00:00
Michael ca1add20a0 Small corrections to the database definition 2018-06-23 04:46:22 +00:00
rabuzarus d5afbd3357 port hubzillas OpenWebAuth - rename verify table to openwebauth-token 2018-06-20 19:18:41 +02:00
rabuzarus 1c7f4e3c63 port hubzillas OpenWebAuth - remote authentification 2018-06-18 23:05:44 +02:00
Michael b9811f1bef Fix: Avoid endlessly dbstructure changes 2018-06-11 13:22:08 +00:00
Hypolite Petovan 0a13ab6b9f
Merge pull request #5166 from annando/unsed-item-fields
Remove unused, unneeded or redundant item fields
2018-06-03 12:19:50 -04:00
Michael b654af28fa We need "global" 2018-06-03 09:40:32 +00:00
Michael 3f07d01dd1 Get rid of unneeded or redundant fields 2018-06-03 07:42:56 +00:00
Michael 3034170088 DBStruxture can now create "memory" tables as well 2018-06-02 05:03:23 +00:00
Michael 047c02371a Small corrections to the database descriptions 2018-06-01 22:12:35 +00:00
Hypolite Petovan 93daf7883e Merge branch 'master' into develop
- Updated new develop version label
- Incremented database build number
2018-06-01 07:30:04 -04:00
Pascal Deklerck 1853c5623b 4419 Update the comments in src/Database/DBStructure.php from doc/database/* 2018-05-29 10:24:36 +02:00
Michael deb015be12 Changed documentation 2018-05-27 10:42:47 +00:00
Michael bdbc51229a Fix for not being able to delete items 2018-05-26 18:07:27 +00:00
Michael e9848d7b8f End subscription for unreachable subscribers 2018-05-19 03:56:29 +00:00
Michael feb3d76a5b Fix: Subscriptions from GNU Social partially don't work 2018-05-18 12:18:12 +00:00