- Changing from static methods to public methods
- Adding dev-composer-dependency Mockery for static method mocking (f.e. Config, DBA)
- Adding ModeTest with Mocking
- removing bootstrap from phpunit.xml because of double loading tests\bootstrap.php
* Issue 4960: Ignoring and blocking of contacts should work again
* Renamed functions
* This function should be renamed as well.
* We now have a frontend to block and ignore public contacts
* Hide some parts for public contacts
* Removed notices, public contact is now accessible from dirfind as well
* We now show contact conversations and contact posts
* We now use a new conversation mode
* The update functionality is disabled until it will work completely
* Fixing tabs chaos
* Update after posts on the contacts page will now work
* Show connect link
* [diaspora]: Maybe SimpleXMLElement is the right type-hint?
* Changes proposed + pre-renaming:
- pre-renamed $db -> $connection
- added TODOs for not allowing bad method invocations (there is a
BadMethodCallException in SPL)
* If no record is found, below $r[0] will fail with a E_NOTICE and the code
doesn't behave as expected.
* Ops, one more left ...
* Continued:
- added documentation for Contact::updateSslPolicy() method
- added type-hint for $contact of same method
- empty lines added + TODO where the bug origins that $item has no element 'body'
* Added empty lines for better readability
* Cleaned up:
- no more x() (deprecated) usage but empty() instead
- fixed mixing of space/tab indending
- merged else/if block goether in elseif() (lesser nested code blocks)
* Re-fixed DBM -> DBA switch
* Fixes/rewrites:
- use empty()/isset() instead of deprecated x()
- merged 2 nested if() blocks into one
- avoided nested if() block inside else block by rewriting it to elseif()
- $contact_id is an integer, let's test on > 0 here
- added a lot spaces and some empty lines for better readability
* Rewrite:
- moved all CONTACT_* constants from boot.php to Contact class
* CR request:
- renamed Contact::CONTACT_IS_* -> Contact::* ;-)
* Rewrites:
- moved PAGE_* to Friendica\Model\Profile class
- fixed mixure with "Contact::* rewrite"
* Ops, one still there (return is no function)
* 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)
* CR request:
- moved all PAGE_* constants to Friendica\Model\Contact class
- fixed all references of both classes
* 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.
* Rewrite:
- stopped using deprecated NETWORK_* constants, now Protocol::* should be used
- still left them intact for slow/lazy developers ...
* Ops, was added accidentally ...
* Ops, why these wrong moves?
* Ops, one to much (thanks to MrPetovan)
* Ops, wrong moving ...
* moved back to original place ...
* spaces added
* empty lines add for better readability.
* convertered spaces -> tab for code indenting.
* CR request: Add space between if and brace.
* CR requests fixed + move reverted
- ops, src/Module/*.php has been moved to src/Network/ accidentally
- reverted some parts in src/Database/DBA.php as pointed out by Annando
- removed internal TODO items
- added some spaces for better readability
* Removed notices that revealed themselfes over night ...
* And more notices removed that occured over night
* One more ..
* Some more notices of the day ...
* Automatic Install Config Fix
* new unittest for AutomaticInstallation
* unittest for autoinstall
- removed password check
* removed bak-file
* automatic install
- always save environment variables
- just skip db environment if not `--savedb` is set
* fixed help (options)
* fixed help (options)
* Deleting Auto-Install tests until fix for proper DB restoring
* Some easy to replace "q" calls have been replaced by "DBA" calls
* Simplified the GUID creation
* And one in the API ...
* And OStatus has got some DBA calls more
* Just some more replaced database calls
* The event query is now simplified
* Events are now shown again
* subthread is now using the DBA calls as well
* Some more replaced database calls
* And some more replaced database calls and prevented notices
* Better use gravity
* Some more replaced database stuff
* Some more replaced database calls in DFRN.php
* The gcontact class now has got the new DBA functions as well
* The Contact class is now changed to new database functions as well
* Small correction
* We can now delete without cascade
* One more functionality is safe for future changes
* Removed notices in the frio theme
* And fixed notices in the notifications
* And some more in frio
* Null is the default value
* And some small notice in the probing removed
* Added note
* Clarified note
* And a removed notice in OStatus
* Rewrite:
- stopped using deprecated NETWORK_* constants, now Protocol::* should be used
- still left them intact for slow/lazy developers ...
* Removed deprecated NETWORK_* constants as per code reviewer's request.
* 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
* 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
* 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.
* 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.
* Some more notices
* Fixed nasty to find notice in DFRN and OStatus
* And more notices ...
* Yeah, some removed notices ... again ...
* Fixing bad SQL query
````
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:
````
* "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
* "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
* "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
* 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()`
* 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 ... :-/
* "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
- $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
* 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 ...
* 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 []
* "normal" is an uncommon logger level:
- changed LOGGER_NORMAL -> LOGGER_INFO
- added LOGGER_WARNING (a common logger level)
* Used constants instead of values (MrPetovan)
* 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.
- 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
* 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>
* 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
- 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>
* "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
- 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>
* Fixes applied:
- `if (is_array($some_array))` is better code style than `if ($some_array)` as
the `if()` block really needs an array to be found
- same with `if ($some_id)`, maybe `if ($some_id > 0)` is a more proper check
- added missing field 'emailcc' to Item::ITEM_FIELDLIST
Signed-off-by: Roland Häder <roland@mxchange.org>
* Fixes E_NOTICE of missing variable (PHP's lazyness again).
Signed-off-by: Roland Häder <roland@mxchange.org>
* Use !empty() to avoid accessing empty array.
Signed-off-by: Roland Häder <roland@mxchange.org>
* Fixes:
- stdClass is clearly an object of `\stdClass`, so let's import it and set it
as type-hint here
- if $o->type is not found, don't continue
Signed-off-by: Roland Häder <roland@mxchange.org>
* Fix for a fix due to 02:51 a.m. (!) edits ...
Signed-off-by: Roland Häder <roland@mxchange.org>
- Fix Notice messages in Core\Install and Database\DBStructure
- Move local config file template from htconfig.tpl to local.ini.tpl
- Remove htconfig.php
* 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