* [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 ...
* 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.
* 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.
* 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:
````
* 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 ... :-/
- $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 ...
* "normal" is an uncommon logger level:
- changed LOGGER_NORMAL -> LOGGER_INFO
- added LOGGER_WARNING (a common logger level)
* Used constants instead of values (MrPetovan)
- 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
- 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>
* 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
* 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
- removed/fixed whitespaces and mixture of spaces/tabs (some)
- added new-line character at end of files (POSIX-compilant)
- reverted some code which I had messed up (compared to upstream/develop)
- removed duplicate dba::update() invocation in src/Protocol/DFRN.php
- also removed no longer valid TODO
Signed-off-by: Roland Häder <roland@mxchange.org>