Commit Graph

1714 Commits

Author SHA1 Message Date
Hypolite Petovan 6a6695b167 Change DBStructure::definition to use config/dbstructure.json 2018-08-04 13:24:04 +02:00
Michael Vogel 2c8c803d64 Avid notices and warnings (#5546) 2018-08-02 19:07:20 +02:00
Michael Vogel 65d752d03c Notices what else? (#5545)
* Poco isn't filled, so we cannot store it

* We should initialize our variables
2018-08-02 16:11:21 +02:00
Michael Vogel c72c64a6d8 Notices again (#5543)
* And again notices

* Notices in the directory

* Much more places

* Fix some double $

* Notice in ping

* Missing field

* Fix: We now remove deleted users from the directory

* Some more stuff

* Notices when removing users

* Added logging

* More logging

* Two more
2018-08-02 07:21:01 +02:00
Hypolite Petovan 4d17fb36d1 Fix missing fields in event reminder (#5540) 2018-08-01 09:27:13 +02:00
Michael Vogel 1afc0ab028 Added logging and one more reason for a notice found (#5538)
* Added logging and one more reason for a notice found

* And one more
2018-08-01 08:47:18 +02:00
Michael Vogel 9d0f18c0b3 Yeah, and again notices ... (#5536)
* Yeah, and again notices ...

* And some more

* Block access without given user name

* Reformatting
2018-08-01 07:29:58 +02:00
Michael Vogel 71b1638d9a Once again, notices ... (#5535) 2018-07-31 18:39:23 +02:00
Michael Vogel b552b711ee And some more notices removed ... (#5533)
* Fix for vanishing notes

* The field needs to be part of the selected fields ...

* And some more notes ...
2018-07-31 07:54:25 +02:00
Michael Vogel c39e0dcf2a Fix for vanishing notes (#5531)
* Fix for vanishing notes

* The field needs to be part of the selected fields ...
2018-07-30 22:23:48 -04:00
Roland Häder 4d39164c1e [WIP] Rewrite to Proxy class: (#5507)
* Rewrite to Proxy class:
- introduced new Friendica\Network\Proxy class for in exchange of proxy_*()
  functions
- moved also all PROXY_* constants there as Proxy::*
- removed now no longer needed mod/proxy.php loading as composer's auto-load
  will do this for us
- renamed those proxy_*() functions to better names:
  + proxy_init()           -> Proxy::init()         (public)
  + proxy_url()            -> Proxy::proxifyUrl()   (public)
  + proxy_parse_html()     -> Proxy::proxifyHtml()  (public)
  + proxy_is_local_image() -> Proxy::isLocalImage() (private)
  + proxy_parse_query()    -> Proxy::parseQuery()   (private)
  + proxy_img_cb()         -> Proxy::replaceUrl()   (private)

* Ops, need to set $a here ...

* CR request:
- moved Proxy class to Friendica\Module
- extended BaseModule

* Ops, no need for own instance of $a when self::getApp() is around.

* Proxy-rewrite:
- proxy_url() and proxy_parse_html() are both non-module functions (now
  methods)
- so they must be splitted into a seperate class
- also the SIZE_* and DEFAULT_TIME constants are both not relevant to module

* No instances from utility classes

* Fixed error:
- proxify*() is now located in `Friendica\Util\ProxyUtils`

* Moved back to original place, ops? How did they move here? Well, it was not
intended by me.

* Removed duplicate (left-over from split) constants and static array. Thank to
MrPetovan finding it.

* Renamed ProxyUtils -> Proxy and aliased it back to ProxyUtils.
2018-07-30 22:06:22 -04:00
Roland Häder bf87ad4fcf Fixed E_NOTICE in listing worker queue and new utilities class added (#5521)
* Fixes for E_NOTICE in workqueue:
- introduced class `Friendica\Util\Arrays` which will hold static methods for
  handling arrays that cannot be done with PHP's functions, like implode() on
  multi-dimensional arrays
- rewrote old-school for() loop to foreach()

* Added intial unit test with some tests on empty delimiters and/or sinle and
multi-dim array.

* Added test for for 3-dimensional arrays, thanks to  nupplaphil's feedback.
2018-07-30 21:24:26 -04:00
Michael Vogel 1eb8f04274 Fixing SQL error when receiving DFRN posts (#5527)
* Some more notices

* Fixed nasty to find notice in DFRN and OStatus

* And more notices ...

* Yeah, some removed notices ... again ...

* Fixing bad SQL query
2018-07-30 07:06:32 +02:00
Michael Vogel a2cea16954 Some more notices (#5526)
* Some more notices

* Fixed nasty to find notice in DFRN and OStatus

* And more notices ...

* Yeah, some removed notices ... again ...
2018-07-30 06:41:20 +02:00
Roland Häder 650c3c18e1
Fixed fatal error about when returned 'body' field is empty:
````
PHP Fatal error:  Uncaught TypeError: Argument 1 passed to Friendica\Protocol\PortableContact::discoverServer() must be of the type array, null given, called in /var/www/../src/Protocol/PortableContact.php on line 1664 and defined in /var/www/../src/Protocol/PortableContact.php:1765
Stack trace:
````
2018-07-29 17:34:20 +02:00
Tobias Diekershoff 02d4b1098e
Merge pull request #5519 from annando/test-2
Moved expiring of item content
2018-07-29 11:45:50 +02:00
Michael 6add589c3f Removed some test logging 2018-07-29 04:38:14 +00:00
Michael bc38420801 Some more notices removed 2018-07-29 04:04:23 +00:00
Michael dc9b10fb09 Moved expiring of item content 2018-07-29 03:54:34 +00:00
Michael Vogel 489d3daa94 Trying to clean up a little bit more (#5517)
* "post-type" replaces "bookmark" and "type"

* The permission set is now removed upon expiry

* Post update now stores the permission set

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

* Postupdate now handles "postopts" as well

* "post-type" replaces "bookmark" and "type"

* "post-type" replaces "bookmark" and "type"

* "post-type" replaces "bookmark" and "type"

* The permission set is now removed upon expiry

* The permission set is now removed upon expiry

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

* Postupdate now handles "postopts" as well

* Multiplicated update functions

* And some more duplicated functions ...

* Removed duplicate functions
2018-07-28 16:04:56 -04:00
Michael Vogel 91db91d315 Fix for post update (#5513)
* "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

* 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 ...

* Postupdate now handles "postopts" as well

* Set deprecated fields to "null" if empty

* Postupdates are enabled again

* Fix for post update
2018-07-28 13:12:35 -04:00
Michael Vogel 36d4516e7a Missing stuff in "develop"? (#5516)
* "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

* 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 ...

* Postupdate now handles "postopts" as well

* Set deprecated fields to "null" if empty

* Postupdates are enabled again

* "post-type" replaces "bookmark" and "type"

* The permission set is now stored

* The permission set is now removed upon expiry

* Postupdate now handles "postopts" as well
2018-07-28 13:11:46 -04:00
Hypolite Petovan 0902ea508d
Fix parse error in Protocol\PortableContact (#5515) 2018-07-28 08:52:57 -04:00
Roland Häder c30ac30f29 Possible fix for #5470 - json_decode() (#5511)
* Possible fix for #5470:
- $data is not an object like stdClass but an array
- newer PHP versions doesn't allow cross-access like following:

  $object['foo'] = 123;
  $array->foo = 123;

- added type-hints for private methods for above cases
- used `if (empty($foo)) instead of just `if ($foo)` preventing some nasty
  E_NOTICE
- added some empty lines for better readability

* Rewrite:
- mixture of object/array was here, causing under newer PHP versions some E_NOTICE
- this has been now finally fixed by converting any `object` type to an
  associative `array`
- also changed `is_object()` to `is_array()`
2018-07-28 01:35:27 -04:00
Roland Häder 4a22710b3b Moved global PAGE_* to Profile class (#5500)
* Rewrites:
- moved PAGE_* to Friendica\Model\Profile class

* Fixed more rewrites from plain (global namespace) PAGE_* to Friendica\Models\Profile class

* CR request:
- moved all PAGE_* constants to Friendica\Model\Contact class
- fixed all references of both classes

* CR request:
- moved ACCOUNT_TYPE_* constants from boot.php to Contact::ACCOUNT_TYPE_*

* Just copy-pasted this code from boot.php, needs to be changed to `const ACCOUNT_TYPE_FOO = x;`

* Ops, melting brain cells here ... :-/
2018-07-27 19:25:57 -04:00
Michael Vogel 5f77e98d76 Postupdate is now working again (#5512)
* "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

* 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 ...

* Postupdate now handles "postopts" as well

* Set deprecated fields to "null" if empty

* Postupdates are enabled again
2018-07-27 19:24:26 -04:00
Michael Vogel 1e83261a88
Merge pull request #5509 from friendica/revert-5506-fixes/portable-contact
Revert "Possible fix for #5470 and empty() usage"
2018-07-27 08:04:19 +02:00
Michael Vogel 82e3163e5e Revert "Possible fix for #5470: (#5506)"
This reverts commit 1e20fd84f7.
2018-07-27 08:02:41 +02:00
Roland Häder 592190892c Continued: (#5508)
- `App` is now "imported" to avoid having \Friendica\App::* everywhere
2018-07-26 22:27:28 -04:00
Roland Häder 1e20fd84f7 Possible fix for #5470: (#5506)
- $data is not an object like stdClass but an array
- newer PHP versions doesn't allow cross-access like following:

  $object['foo'] = 123;
  $array->foo = 123;

- added type-hints for private methods for above cases
- used `if (empty($foo)) instead of just `if ($foo)` preventing some nasty
  E_NOTICE
- added some empty lines for better readability
2018-07-26 18:27:12 -04: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
Roland Häder 37253656e3 Moved CONTACT_* constants to Friendica\Model\Contact class, lesser in global namespace (#5490)
* Rewrite:
- moved all CONTACT_* constants from boot.php to Contact class

* CR request:
- renamed Contact::CONTACT_IS_* -> Contact::* ;-)
2018-07-24 22:53:46 -04:00
Michael Vogel 69af69d1a0 Fallback to Diaspora if DFRN transmission fails (#5487) 2018-07-24 14:12:09 -04:00
Michael Vogel 5a8654194a
Merge pull request #5452 from MrPetovan/bug/5443-fix-worker-notices
Fix notices in OEmbed et al.
2018-07-24 17:11:53 +02:00
Hypolite Petovan 6771522167 Reduce cache time for OEmbed error 2018-07-24 11:05:09 -04:00
Michael Vogel be8b68aaaf Store guid and plink with event (#5485)
* Store guid and plink with event

* One space too much
2018-07-24 10:01:31 -04:00
Hypolite Petovan b6e3da8443 Move addLanguageToItemArray call when body is ensured 2018-07-24 08:52:25 -04:00
Hypolite Petovan df917251ff Fix undefined oembed properties
- Add Object\OEmbed class
2018-07-24 07:56:27 -04:00
Hypolite Petovan adc47fc8ea Fix Undefined index: nurl in Protocol\PortableContact 2018-07-24 07:55:42 -04:00
Hypolite Petovan 41fd5bef13 Fix by reference notice in Protocol\PortableContact 2018-07-24 07:54:12 -04:00
Hypolite Petovan 4e9ba728c4 Fix undefined index body in Model\Item 2018-07-24 07:54:12 -04:00
Hypolite Petovan d09ab35816 Fix getimagesizefromstring() read errors 2018-07-24 07:54:12 -04:00
Michael Vogel ca2c316de0 Some removed notices when viewing events (#5483) 2018-07-24 07:51:50 -04:00
Michael 432eec770b Issue 5467: Cron jobs hadn't been executed 2018-07-24 06:15:58 +00:00
Michael de984cdaa1 Issue 5467: Fix worker and daemon 2018-07-24 03:42:44 +00:00
Hypolite Petovan 30fff2077c Ad missing use statements after dbesc conversion 2018-07-23 18:44:05 -04:00
Hypolite Petovan a6fb3568f9 Rename dbesc to DBA::escape 2018-07-23 15:30:54 -04:00
Hypolite Petovan d3a598f589 Update DBA::escape to match dbesc() 2018-07-23 15:13:42 -04:00
Hypolite Petovan 538b81d10d Delete Database\DBM class file 2018-07-23 11:04:15 -04:00
Hypolite Petovan aa26943f92 Rename DBA::esc_array to DBA::escapeArray
- Rename internal method DBA::esc_array_callback to
DBA::escapeArrayCallback
2018-07-23 11:04:15 -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 c55e389bbc Add Database\DBM methods to Database\DBA 2018-07-23 10:57:47 -04:00
Hypolite Petovan 38f341e064
Add missing space between PHP path and script in App->proc_run (#5468) 2018-07-23 10:43:39 -04:00
Michael Vogel 2d0a749734
Merge pull request #5431 from MrPetovan/task/5410-rename-database-methods
Move DBA to src/ part 3.1: Rename DBA methods
2018-07-23 15:18:58 +02:00
Hypolite Petovan b685ef37c9
Fix Fatal errors in Protocol\OStatus (#5466) 2018-07-23 07:48:44 -04:00
Michael Vogel 53876abfda And some more removed notices in the core (#5465) 2018-07-23 07:43:18 -04:00
Philipp cd52d0b3e9 Using getopt for CLI arguments (#5446)
* Adding Argument class to Friendica

* Adding Argument class to Friendica

* Adding Argument class to Friendica

* fixing arguments for `spawnWorker`

* Adding `use Friendica\BaseObject` to `ApiTest.php`

* Refactoring the argument-usages of Friendica

* Refactoring the argument-usages of Friendica

* removing superfluous []
2018-07-23 07:40:52 -04:00
Roland Häder 4eb6707dc9 Cleanup: (#5463)
- rewrote x() to empty() as it is deprecated
- fixed indending for some entries
2018-07-22 21:18:21 -04:00
Hypolite Petovan cdd8e4fd9d Rename DBA::get_db to DBA::getConnection
- Rename DBA::$db to DBA::$connection
2018-07-22 19:28:29 -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 4db98eb43d Rename DBA::inArray to DBA::toArray 2018-07-22 19:27:35 -04:00
Hypolite Petovan f051ae1698 Rename DBA::fetch_first to DBA::fetchFirst 2018-07-22 19:27:34 -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
Hypolite Petovan e42cf4d4fc Rename DBA::affected_rows to DBA::affectedRows 2018-07-22 19:27:34 -04:00
Roland Häder d3144e2837 Need to load "verb" from notify table, too. This whole thing is a maintenance (#5459)
nightmare. Let's use the new database frontend/backend system and load all
columns anywhere the "entity" is requested.
2018-07-22 19:25:07 -04:00
Hypolite Petovan bb99ac8111
Fix Fatal error in Protocol\Diaspora (#5460) 2018-07-22 19:22:41 -04:00
Roland Häder 7876d6547b Fixed E_NOTICEs when uploading profile picture (#5456)
* Fixed E_NOTICEs when uploading profile picture.

* Fixed E_NOTICEs when $_POST doesn't contain these fields.
2018-07-22 16:01:14 -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
Hypolite Petovan a202962f03
Fix yet another Fatal Error in Protocol\OStatus (#5454) 2018-07-22 13:32:34 -04:00
Hypolite Petovan d6ccba79e0
Fix another Fatal error in Protocol\OStatus (#5451)
* Fix Fatal error in Protocol\OStatus

* Fix another Fatal error in Protocol\OStatus
2018-07-22 12:57:33 -04:00
Roland Häder 7d47152564 Fixed E_NOTICE in boot.php and DBA class (#5430)
* Fixes:
- fixed missing variable $port (MySQL: 3306)
- "imported" mysqli class

Signed-off-by: Roland Häder <roland@mxchange.org>

* Fixed:
- better use `false` and `$port > 0`

* And better only provide `$port` when larger zero.

* Initialize `$port` with zero value (int) and not `false` (bool).

* Removed duplicate mysqli "import".

* `$post_update` is no longer used. Instead `$prefix` needs to be checked.
2018-07-22 12:53:46 -04:00
Hypolite Petovan 3500e50be9
Fix Fatal error in Protocol\OStatus (#5450) 2018-07-22 12:52:38 -04:00
Roland Häder 0a519f5001 Fixes/tye-hints (#5449)
- added type-hints for DOMDocument, DOMXPath and array
- added missing documentation about optional parameter
- `if ($foo['bar'])` is not a good choice, better use
  `if (!empty($foo['bar']))` instead
2018-07-22 12:35:20 -04:00
Roland Häder 2e332134d4 There is no LOGGER_WARNING (triggering E_NOTICE about absent constant). Either (#5448)
declare it and push all other numbers higher or use LOGGER_NORMAL.
2018-07-22 12:33:28 -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
Michael f02bcdba51 Automatically create a .htaccess when not existing 2018-07-21 05:41:19 +00:00
Tobias Diekershoff e4a652cae8
Merge pull request #5433 from annando/mysqli
Forgotten "use"
2018-07-21 07:18:10 +02:00
Michael 4ba91d4ea1 Forgotten "use" 2018-07-21 05:09:09 +00:00
Michael Vogel 6a6a805225 One more notice (#5429)
* Some more notices

* And some more notice in the worker
2018-07-20 20:43:21 -04:00
Michael Vogel 4bbcb61a9e We now have a pre update script (#5425)
* We now have a pre update script

* Some optimized stuff
2018-07-20 15:47:16 -04:00
Michael Vogel 7382be2766 Some more notices (#5424) 2018-07-20 14:07:54 -04:00
Hypolite Petovan af6dbc654f Rename Friendica\Database\dba to Friendica\Database\DBA 2018-07-20 08:19:26 -04:00
Tobias Diekershoff b6a1df0598
Merge pull request #5420 from annando/notices
Just some more fixed notice
2018-07-20 12:46:42 +02:00
Michael 045358cb88 Wrong "use" for config 2018-07-20 06:04:23 +00:00
Michael 5c63de1692 Just some more fixed notice 2018-07-20 05:31:26 +00:00
Michael 9a6a3bf1c1 Makes Diaspora working again 2018-07-20 05:10:16 +00:00
Hypolite Petovan 9c70a94589 Add missing PDO* use statements in Database\dba 2018-07-19 22:24:03 -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
Hypolite Petovan c316c5ae30 Add new Friendica\Database\dba class 2018-07-19 22:06:13 -04:00
Roland Häder 36c6e35c7e Misc cleanups (#5417)
* Fixed http://github to https://github

Signed-off-by: Roland Häder <roland@mxchange.org>

* reverted back

Signed-off-by: Roland Häder <roland@mxchange.org>

* Added type-hint 'array' as the method uses foreach() on it.

Signed-off-by: Roland Häder <roland@mxchange.org>

* Tpzo fixed ...

Signed-off-by: Roland Häder <roland@mxchange.org>

* Added missing new-line at end of file, will make some POSIX parsers being lesser
confused ...

Signed-off-by: Roland Häder <roland@mxchange.org>
2018-07-19 20:52:18 -04:00
Michael Vogel 01b67c4eb3 Little fixes (#5414)
* We now store the item delivery data in a separate table

* Reorganized table structure

* Fix  a notice when using the profiler / ensure that permissions are strings
2018-07-19 18:40:39 -04:00
Roland Häder b2899d76cf Small cleanup (#5416)
- added internal TODO to decide about is_result() usage
- removed semicolon (not needed here) from SQL query
- added empty line

Signed-off-by: Roland Häder <roland@mxchange.org>
2018-07-19 18:39:05 -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
Roland Häder b05b96d04a Fixes: (#5404)
- fixed E_NOTICE in mod/follow.php
- fixed 2 E_NOTICE in src/Protocol/Diaspora.php
- added more type-hints for `array` type where known

Signed-off-by: Roland Häder <roland@mxchange.org>
2018-07-19 07:07:14 -04:00