Commit graph

1725 commits

Author SHA1 Message Date
Michael Vogel
ef1c73fb6b
Merge pull request #5561 from MrPetovan/bug/4584-fix-twitter-gif-still-image
Restore source storing for Twitter conversations
2018-08-05 14:00:19 +02:00
Hypolite Petovan
ea45a78218 Increase Twitter parcel constant value 2018-08-05 13:59:33 +02:00
Michael Vogel
fa46e97f27 We now store the uri data in a separate table (#5560)
* We now have a item-uri table

* Fixing line endings

* New item uri table

* Rescued ItemURI.php file

* Reverting some git problem

* Corrected the dbstructure file

* Updated database.sql / we now store content in the new id fields
2018-08-05 13:09:59 +02:00
Hypolite Petovan
c4e69b7766 Add conversation storage for Twitter 2018-08-05 12:34:33 +02:00
Hypolite Petovan
6678208915 Add new Conversation::PARCEL_TWITTER constant 2018-08-05 12:25:47 +02:00
Hypolite Petovan
c13dc549ed Rename PROTOCOL_* constants to Model\Conversation::PARCEL_*
- Remove unused Conversation::PROTOCOL_GS_CONVERSATION constant
- Remove now renamed PROTOCOL_* constant declarations
2018-08-05 12:24:42 +02:00
Michael Vogel
8dea36bd8f We shouldn't cascade this deletion as well (#5558) 2018-08-05 11:02:36 +02:00
Michael Vogel
2f2b134e58 Fixes issue 5321: Likes can be undone and comments can be deleted again (#5557) 2018-08-05 06:35:11 +02:00
Hypolite Petovan
c9b756674a Add CW support to shared posts in Protocol\OStatus 2018-08-04 21:40:45 +02:00
Hypolite Petovan
36975d521f Remove plural from $activityobjects variable name in Protocol\OStatus 2018-08-04 21:39:54 +02:00
Michael Vogel
810c108297 Fix: Notes can be posted again. Never use "defaults" with "false" (#5551) 2018-08-04 16:06:36 +02:00
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
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
02d4b1098e
Merge pull request #5519 from annando/test-2
Moved expiring of item content
2018-07-29 11:45:50 +02:00
6add589c3f Removed some test logging 2018-07-29 04:38:14 +00:00
bc38420801 Some more notices removed 2018-07-29 04:04:23 +00:00
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
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
432eec770b Issue 5467: Cron jobs hadn't been executed 2018-07-24 06:15:58 +00:00
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
f02bcdba51 Automatically create a .htaccess when not existing 2018-07-21 05:41:19 +00:00
e4a652cae8
Merge pull request #5433 from annando/mysqli
Forgotten "use"
2018-07-21 07:18:10 +02:00
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
b6a1df0598
Merge pull request #5420 from annando/notices
Just some more fixed notice
2018-07-20 12:46:42 +02:00
045358cb88 Wrong "use" for config 2018-07-20 06:04:23 +00:00