Commit graph

303 commits

Author SHA1 Message Date
Philipp Holzer 54392fab81
Move Cookie to own class (with tests)
Move Authentication to App namespace
2019-12-08 22:45:34 +01:00
Philipp Holzer 96555a7385
Refactor "Authentication" class with four main methods:
- withSession() - for auto authentication with Session/Cookie variables
- withOpenId() - for authentication with an OpenID account
- withPassword() - for authentication with Password
- setForUser() - for setting the user auth context of the current session

Refactor "Session" class - contains now "native" Session Management methods
2019-12-05 23:02:51 +01:00
Philipp Holzer 7343ee5108
Move Namespace of ActivityNamespace 2019-10-25 00:41:48 +02:00
Philipp Holzer dc2858938d
Renamed to ActivityNamespace 2019-10-25 00:32:35 +02:00
Philipp Holzer 2fba7ed477
Rename namespace 2019-10-24 21:40:13 +02:00
Philipp Holzer 07cea24430
Move Activity/Namespaces defines to constants 2019-10-24 21:40:12 +02:00
Michael df1db84846 Fix: Friendica contacts had falsely been detected as ActivityPub 2019-10-20 06:04:47 +00:00
Hypolite Petovan 146646c4d4 Replace deprecated calls to defaults() by ?? and ?: in src/ 2019-10-16 08:38:52 -04:00
dew-git dc01bdbc80 Use the utility instead. 2019-10-10 20:43:32 -08:00
dew-git 811cdcdfcb Fix security vulnerbilities.
Fix possible length extension attack, predicable generators, timing attacks on hash comparision and improved formatting.
2019-10-10 15:21:41 -08:00
Hypolite Petovan cb4950a3be Replace duplicated authentication code in FKOAuth1 with Session::setAuthenticatedForUser 2019-10-06 11:17:30 -04:00
Michael 7991b77343 Return value added 2019-10-02 09:37:05 +00:00
Michael 6a6a48c58d Renamed function 2019-10-02 06:24:29 +00:00
Michael b051804dc3 Empty the header array 2019-10-02 04:10:36 +00:00
Michael 489510e7a9 Cache the header fields 2019-10-02 03:45:32 +00:00
Michael 5cdeb8615f Use $this 2019-10-02 03:31:58 +00:00
Michael 516fd02812 New function to check for key existance 2019-10-01 21:46:18 +00:00
Michael c37663f1c1 Changed return value 2019-10-01 19:02:26 +00:00
Michael 2c730a5c45 New function for fetching associated header array 2019-10-01 18:22:33 +00:00
Michael 18198b4aaa Enable the possibility to fetch a specific header variable 2019-10-01 16:33:11 +00:00
Michael 3b6f16347a Fetch avatar and name on Twitter discovery 2019-09-19 05:28:46 +00:00
Michael a733a00ea9 Detect the hide status when it hadn't been detected before 2019-09-10 20:20:34 +00:00
Michael 3c7fe5fc1b Issue 7610-2: Read the "hide" status for non DFRN profiles 2019-09-10 20:06:07 +00:00
Michael 2a213c215e Fix contact issues with fake reshares from Twitter 2019-07-23 04:26:20 +00:00
Michael 7dfadf7e7e Simplify the contact update in "getIdForURL" 2019-07-12 21:07:47 +00:00
Michael 8cbdc7939e Fetch more comtact data from probing, remove duplicated contacts 2019-07-12 14:55:23 +00:00
Michael d1435bef61 Add ActivityPub related fields to the "uri" function 2019-07-08 12:00:11 +00:00
Michael 8d6aa9914c We now handling the contact type 2019-07-04 19:31:42 +00:00
Michael ef5be9668f New fields in contact table / don't update on probe 2019-07-04 04:08:55 +00:00
Philipp Holzer a85aa24d56
Add additional check for $links in Probe
see https://github.com/friendica/friendica/issues/6917#issuecomment-501661530
2019-06-13 15:01:24 +02:00
Philipp Holzer cc7444d84d
Move internal recursion-counter to the end of all cur/fetchUrl parameters 2019-06-10 14:34:54 +02:00
Philipp Holzer 9fb111bca2
Rename ServiceUnavailableException & alter maintenance 2019-05-05 10:07:33 +02:00
Hypolite Petovan 8eba329111 Remove code parameter from HTTPException constructor
- Remove duplicate HTTPException->httpcode class variable
2019-05-02 11:26:55 -04:00
Philipp Holzer 318a3ca785
Create own base URL class which holds the whole base url business logic 2019-04-09 08:31:16 +02:00
Michael a60a440c9a Fix notice - it's "uri" not "url" 2019-03-14 21:55:18 +00:00
Michael 4b98200315 Added logging 2019-03-12 05:45:02 +00:00
Michael 997b98e345 Fix for falsely detected AP profile in case of timeout 2019-03-12 05:21:04 +00:00
Hypolite Petovan f597f3b378 Protect access to rel attribute in Network\Probe 2019-02-25 03:39:40 -05:00
Michael 35e3700c8a Hopefully fixes a communicaton problem with Hubzilla 2019-02-01 14:26:45 +00:00
Hypolite Petovan 3d839bb176 Move Contact::ACCOUNT_TYPE_* constants to User::ACCOUNT_TYPE_*
- Keep Contact::TYPE_* constants for comparison with contact.contact-type
2019-01-21 10:56:27 -05:00
Hypolite Petovan 4a95ca280d Remove unused code
- Remove commented code
- Remove unused/immediately overwritten variables
- Remove extraneous parameters
- Remove unreachable code
- Remove duplicate array keys
2019-01-21 10:48:40 -05:00
Hypolite Petovan 3282ce5389 Fix PHPDoc comments project-wide 2019-01-21 10:35:51 -05:00
Hypolite Petovan 55e54bb950 Replace deprecated Addon::callHooks with Hook::callAll
- Update documentation
2019-01-21 09:50:56 -05:00
Hypolite Petovan 5e1ceb57de Escape global namespaced get_app() calls
- Add deprecated status
2019-01-03 21:27:36 -05:00
Hypolite Petovan acaee626f5 Remove include/ requires that are now done directly from Composer 2018-12-24 09:56:25 -05:00
Michael c06f7ad11e The curl result is an object, not an array 2018-12-22 17:00:28 +00:00
Michael d52d4ca355 Avoids the notice "array_merge(): Argument #1 is not an array" 2018-12-05 06:01:58 +00:00
Michael 491fc5f78a Issue 6168: "redir" now mostly use OWA 2018-12-04 07:12:55 +00: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
Michael 167ff0eb71 Making the tests happy 2018-11-24 09:01:10 +00:00
Michael 586c7fb29a Fixing redirection problems with parameters 2018-11-24 00:27:00 +00:00
Michael 0937c66484 A redirect is not an error 2018-11-12 04:12:36 +00:00
Michael de0ddfa0d8 Fix wromg server detecting / improved Pleroma version numbers 2018-11-11 21:54:50 +00:00
Hypolite Petovan 1892462920 Fix formatting in Probe::uri 2018-11-10 08:24:53 -05:00
Hypolite Petovan 94a71d9ffc Honor preference order in webfinger links 2018-11-10 08:23:11 -05:00
Hypolite Petovan 10a8be7943 Accept URLs with no trailing slash in Probe::uri 2018-11-10 08:22:47 -05:00
Adam Magness 218f0734be Rename removeTags to escapeTags
rename function and update calls.
2018-11-09 13:29:42 -05:00
Adam Magness ffc406d819 normalise_link calls
implement normaliseLink function
2018-11-08 11:28:29 -05:00
Adam Magness 6fc9c6de3b base64url calls
implement base64UrlEncode and base64UrlDecode functions
2018-11-08 10:37:08 -05:00
Adam Magness a0f65ca7a1 notags calls
implement removeTags function
2018-11-08 10:14:37 -05:00
Adam Magness 991f259ecb random_string calls
implement getRandomHex function
2018-11-08 08:45:46 -05: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
vinzv cb75c40f4e adapted profile pic resize to 300px for whole system 2018-10-23 16:36:57 +02:00
Philipp Holzer 4392858662
Move Global Functions - Part 3
- Replaced every CACHE definition
- Moved check_url to App->checkURL()
- Removed unused definition "ZCURL_TIMEOUT"
2018-10-20 18:19:55 +02:00
Hypolite Petovan 0de1351a09 Fix notices in Network\Probe 2018-10-15 23:12:29 -04:00
Philipp Holzer b099cba4b4
CurlResult Tests & RegEx fix 2018-10-11 22:18:27 +02:00
Philipp Holzer 00bf0c24b6
CurlResult Tests 2018-10-11 21:19:38 +02:00
Philipp Holzer a95e7f6504
Bugfixing CurlResult 2018-10-11 07:45:04 +02:00
Philipp Holzer 9711581d49
Code standard 2018-10-10 22:51:26 +02:00
Philipp Holzer b2e7ce47b3
Renaming Curl to CurlResult 2018-10-10 22:08:13 +02:00
Philipp Holzer ffbc688797
Curl Response Refactoring
- refactored Network::getCurl()
- replaced every Network::getCur() execution with a Curl Response
2018-10-10 21:50:13 +02:00
Philipp Holzer 2dec8895a9
Curl Response Refactoring
- extended Curl to parse Curl Response
- refactored Network::curl()
- replaced every Network::curl() execution with the new Curl container
2018-10-10 21:08:43 +02: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
Michael 82987d018a Some changes for better code quality 2018-09-30 07:21:57 +00:00
Michael a56565fa99 AP is enabled for all users 2018-09-22 23:49:27 +00:00
Michael f20bed67a9 Table "apcontact" is now in use / added functionality to handle JSON-LD 2018-09-20 05:00:49 +00:00
Michael e45206ae5d Merge remote-tracking branch 'upstream/2018.08-rc' into ap1 2018-09-15 20:49:46 +00:00
Michael 61e2c7d20d Added AP to many network conditions / enabling inbox processing 2018-09-14 16:51:32 +00:00
Michael 7b45bdea17 Preparation for adding more networks there 2018-09-13 22:12:33 +00:00
Michael c2f6b166c7 We now use the regular probing function 2018-09-13 21:57:41 +00:00
Michael 8b96a53fba Burn notices, burn 2018-09-11 04:10:11 +00:00
Tobias Diekershoff df3b1be3b7
Merge pull request #5679 from annando/neverending-notices
The neverending story of removing notices continues ...
2018-08-27 09:12:38 +02:00
Michael 8d911b1465 The neverending story of removing notices continues ... 2018-08-27 05:37:10 +00:00
Michael 2079caea14 Issue 3501: Mail contacts can be added again 2018-08-26 19:49:39 +00:00
Michael 82d097879b Oh no ... there are still some notices that want to be removed ... 2018-08-24 11:09:58 +00:00
Michael Vogel 54aee2aaa7 Removed notices that revealed themselfes over night ... (#5645)
* Removed notices that revealed themselfes over night ...

* And more notices removed that occured over night

* One more ..

* Some more notices of the day ...
2018-08-21 17:35:09 +02:00
Michael Vogel 7f3fb34c24 Some easy to replace "q" calls have been replaced by "DBA" calls (#5632)
* 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
2018-08-19 12:46:10 +00:00
Michael 0342f9e084 Removed notices, will it ever end? 2018-08-17 03:19:42 +00:00
Michael Vogel 1283b99c6f Removed notices in the frio theme (#5610)
* 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
2018-08-14 19:37:44 +00:00
Roland Häder e06fc2aa69 Stopped using deprecated constants NETWORK_* (#5537)
* 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.
2018-08-11 22:40:44 +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
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
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
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
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 4db98eb43d Rename DBA::inArray to DBA::toArray 2018-07-22 19:27:35 -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
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 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 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
Hypolite Petovan 6776c4e3f9 Fix some undefined variable/index notices in tests 2018-07-02 07:44:55 -04:00
Michael 8d8f2a1845 Change the community value as well 2018-05-11 08:04:01 +00:00
Michael 78271e88f5 Insert a gcontact on probing, but not insert a contact 2018-05-11 05:44:31 +00:00
Michael 08bfced11b "pending" shouldn't be set as well by default ... 2018-05-03 18:19:40 +00:00
Michael bce3b6f896 Urgent bugfix: Public contacts had been blocked automatically when created 2018-05-03 17:43:10 +00:00
Michael 1a8d0a573e Bugfix: Contact wasn't added on probing 2018-04-30 16:45:00 +00:00
Hypolite Petovan d419d07f73 [Scrutinizer] Fix undeclared variables in src/ (except Protocol/)
- Use dba::selectFirst to remove intermediate variables `$r`
- Remove unused variable `$url_recipients` in Worker\Dellivery
2018-02-14 00:05:00 -05:00
Michael 6a486aa92b Remove address from name 2018-02-13 07:10:05 +00:00
Michael 7df60ae634 Improved profile probing for pump.io 2018-02-13 05:54:09 +00:00
Michael 15a857e411 Line endings are converted to unix style 2018-02-09 03:49:49 +00:00
rabuzarus 984bb2a808 Bugfix: Probe - get the contact address from xrd 'subject' key 2018-02-05 21:27:40 +01:00
Hypolite Petovan 5e7285b9ba Move Temporal::convert() to DateTimeFormat::convert() 2018-02-03 08:56:55 -05:00
Hypolite Petovan 8aff8a76eb Add Temporal::utcNow() 2018-02-03 08:56:52 -05:00
Hypolite Petovan dc366bf1f7 Refactor datetime_convert into Temporal::convert
- Changed parameter order to save space
- Refactor select_timezone into Temporal::getTimezoneSelect
- Refactor field_timezone into Temporal::getTimezoneField
2018-02-03 08:56:51 -05:00
Michael 02ed22ba43 We now support querying nodeinfo 2.0 2018-02-02 13:53:40 +00:00
Hypolite Petovan 13849299f9 Remove require calls to library/OAuth1 2018-01-31 00:49:11 -05:00
Adam Magness f04d40a37e Review update
Rename function, move others
2018-01-27 11:13:41 -05:00
Adam Magness 0f1be37279 Remove old file
remove network.php and all require_once statements
2018-01-27 08:28:20 -05:00
Adam Magness ca76e49c23 Move remaining functions
update remaining function calls
2018-01-27 08:25:54 -05:00
Adam Magness 1eb7c19c1e Move multiple functions
move multiple smaller functions
2018-01-26 23:51:41 -05:00
Adam Magness 2f9642392d Move z_fetch_url
move z_fetch_url method
2018-01-26 23:18:38 -05:00
Adam Magness 6c4c567319 Remove require
remove require_once for plugins.php
2018-01-20 07:48:22 -05:00
Adam Magness 11cf36105c Update Addon functions and calls
Update function names and calls for Addon class.
2018-01-20 07:48:22 -05:00
Hypolite Petovan e36f2bb1fb Use short form array syntax everywhere
- Add short form array syntax to po2php.php generation
2018-01-15 14:07:17 -05:00
Hypolite Petovan 04481087a9 Delete unused library/oauth2-php library 2018-01-14 19:33:47 -05:00
Hypolite Petovan 5fc4927764 Improve dba::selectFirst calls
- Fix remaining $r[0] references
- Rename $r to meaningful names
2018-01-11 03:43:57 -05:00
Hypolite Petovan ae66bcaff3 Rename selectOne to selectFirst 2018-01-10 12:57:21 -05:00
Hypolite Petovan da60893590 Replace dba::select(limit => 1) by dba::selectOne
- Convert array declarations to new style
2018-01-10 12:57:21 -05:00
Hypolite Petovan 9f04017e27 Quick fix PHP notices in various files
- Remove unused variables
- Fix variable name typos
- Use x() and defaults() to fix undefined index
- Add back uninitialized variables
2018-01-02 08:11:14 -05:00
Adam Magness 9e6bf79380 Crypto to src
move Crypto to src and Friendica\Util namespace
2017-12-30 11:51:49 -05:00
Hypolite Petovan 910d3f7b5f Formatting FKOauthDataStore 2017-12-17 15:34:29 -05:00
Hypolite Petovan 2978b1eef0 Fix undefined variable/wrong parameter count/unknown functions 2017-12-17 15:33:45 -05:00
Hypolite Petovan 10b72b0e9e PHPStan: Fix missing requires/namespaces 2017-12-17 15:26:43 -05:00
Michael 44679a73b7 Bugfix for "Call to undefined function Friendica\Network\rsatopem()" 2017-12-13 10:34:51 +00:00
Michael 84b85e9198 Removed old include 2017-12-13 07:06:36 +00:00
Michael fc55a4b9c0 The feed moved into the new location 2017-12-13 07:02:52 +00:00
Hypolite Petovan 6b60b89385 Move Object\Profile to Model\Profile 2017-12-07 23:55:05 -05:00
Michael Vogel 5747cfc79c
Revert "Move Objects to Model" 2017-12-08 05:21:51 +01:00
Hypolite Petovan d4ca30a6db Move Object\Profile to Model\Profile 2017-12-07 08:57:35 -05:00
Adam Magness cadfef63c4 Update false evaluations
=== false and !== false to is_null where appropriate.
2017-12-06 14:57:06 -05:00
Adam Magness 22a3c7ad7d remove index
remove unneeded index
2017-12-05 06:58:57 -05:00
Adam Magness e32b4ed670 More use
more missing use
2017-12-04 21:18:48 -05:00
Adam Magness f1a5560804 Use statement
missing use
2017-12-04 21:13:58 -05:00