Commit Graph

811 Commits

Author SHA1 Message Date
Michael 6dbaf34290 Issue 7685: Just forward on remoteauth for non legacy-DFRN and other contacts 2019-12-19 11:02:50 +00:00
Michael 1c7bc56cb3 API: Missing endpoint for reshares had been added 2019-12-19 07:19:03 +00:00
Michael 533f07e874 Issue 6867: Only display direct mentions in the corresponding API endpoint 2019-12-15 13:14:55 +00:00
Michael Vogel b2ae39db1a
Merge pull request #7943 from MrPetovan/bug/7920-api-fix-followers-friends-ids
Add relationship filter to api_friends_ids and api_followers_ids
2019-12-13 21:34:09 +01:00
Hypolite Petovan c2233e3416
Merge pull request #7947 from annando/api-attachments
API: Improved handling of quoted posts and attachments
2019-12-13 15:15:34 -05:00
Hypolite Petovan c9c30e4a23 Add relationship filter to api_friends_ids and api_followers_ids 2019-12-13 11:43:45 -05:00
Hypolite Petovan 81b9d25906 Add relationship filter to api_ff_ids() 2019-12-13 11:43:20 -05:00
Michael b42262f206 API: Improved handling of quoted posts and attachments 2019-12-13 10:12:40 +00:00
Hypolite Petovan 5a15e6bc59 Support post URL search term in api_search() 2019-12-12 20:59:19 -05:00
Hypolite Petovan 0069bb022d Support user profile URL search term in api_users_search() 2019-12-12 17:04:47 -05:00
nupplaPhil 54392fab81
Move Cookie to own class (with tests)
Move Authentication to App namespace
2019-12-08 22:45:34 +01:00
nupplaPhil 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
Michael 043df55bc5 Make tests happy 2019-12-05 06:46:00 +00:00
Michael eeb8bee1b7 Use the new function to fetch shared information 2019-12-05 06:16:27 +00:00
Michael abf841ff79 Handle resharing of items with title via the API 2019-12-05 05:24:29 +00:00
Michael 164e6b350d API: Improve attachment removal functionality for the status text 2019-12-02 21:19:47 +00:00
Michael d3e12c58e2 Fix some notices/warnings again 2019-11-21 22:40:54 +00:00
Michael 1b5fa55bdc Fix image links with descriptions in API and AP transmission 2019-11-11 22:37:50 +00:00
Hypolite Petovan 26b5de9a76 Rename Photo::newResource() result variable from $hash to $resource_id 2019-11-02 07:48:45 -04:00
Hypolite Petovan 03bf1dcbd3 Move Object\Image static methods to Util\Images
- Optimize imports in modified files
2019-11-02 07:48:45 -04:00
Philipp Holzer a72e65a760
Adapt class structure
- Introduce constants
- Add constructor parameters
- Add typehints
- Renamed fields more meaningful
- Renamed method names to match identifier
- Adjust PHP doc
- Add GetClass call at used places
2019-10-26 04:03:27 +02:00
Philipp Holzer 1f368d469f
Move Friendica\Core\NotificationsManager to Friendica\Model\Notify 2019-10-26 02:01:46 +02:00
Philipp Holzer 07cea24430
Move Activity/Namespaces defines to constants 2019-10-24 21:40:12 +02:00
Hypolite Petovan 8b836189d4 Replace deprecated defaults() calls with ?? and ?: in include/ and view/ 2019-10-16 08:51:03 -04:00
Hypolite Petovan f498068b0f Replace deprecated defaults() calls in include/api and boot 2019-10-12 22:01:34 -04:00
Hypolite Petovan cb4950a3be Replace duplicated authentication code in FKOAuth1 with Session::setAuthenticatedForUser 2019-10-06 11:17:30 -04:00
Philipp Holzer d5dd12b8f8
Add Drone CI
- Add drone test environment
- Add drone config
- apt phpunit
- Fix api.php
- Fix item.php
- Fix DBStructure
- Check if caching is possible during tests
2019-09-30 14:03:12 +02:00
Michael a7d23a1196 API Support "friendica_html" 2019-09-03 21:11:33 +00:00
Michael ae3c9eceed Support for posting multiple pictures via API 2019-08-06 05:34:04 +00:00
Hypolite Petovan c3e3e83a52 Improve BBCode:toPlaintext
- Fix issue where matching literal square brackets were removed with their content
- Fix issue where content without line feeds between BBCode tags would end up compacted in plain text
- Update extr calls to BBCode::toPlaintext in api
2019-08-04 10:22:23 -04:00
Michael 1b7f96dac8 Partly reverted, real problem fixed 2019-08-04 04:29:52 +00:00
Michael cb77b1af8c API: We now transmit the text description there as well 2019-08-04 03:45:23 +00:00
Michael 5dc74513cc Fix a notice when setting a picture description via API 2019-08-02 16:43:36 +00:00
Michael b4c673a620 We now use a central function for fetching the postdata 2019-07-30 22:26:01 +00:00
Michael 223cb8f037 We can now set image descriptions via API 2019-07-30 05:02:26 +00:00
Hypolite Petovan b684fffcb7 Replace last instance of Contact::select 2019-07-27 23:51:04 -04:00
Philipp Holzer 2f5928f43a
Refactoring Profile:: selectors 2019-07-28 00:19:38 +02:00
Philipp Holzer 46211de037
Fix DBA::fetch in API 2019-07-27 23:54:15 +02:00
Philipp Holzer b7f1de1e64
Revert $term DB result check 2019-07-27 23:54:14 +02:00
Philipp Holzer 2a87464c97
Replace q() call with Profile::get() method 2019-07-27 23:54:12 +02:00
hlad c8ee4cc49f we work with utf8 string so we should use multibyte functions 2019-07-26 12:57:39 +02:00
Hypolite Petovan cd257dc7e8 Enable app-specific password authentication for API login 2019-07-22 07:56:36 -04:00
Michael 23830dc45f Preparation for quoted reshares on AP 2019-07-20 21:32:19 +00:00
Philipp Holzer 8f0aa0ca5a
bugfix: add missing group by parameters 2019-07-14 22:12:14 +02:00
Michael 6bb418c5a7 Use "received" instead of "created" when displaying posts in creation order 2019-07-07 21:30:33 +00:00
Hypolite Petovan 0e5b9514ef [API] Convert user description to plain text 2019-05-27 11:58:02 -04:00
Hypolite Petovan 661aca0f88 [API] Ensures user_show includes a status the user actually authored 2019-05-27 11:01:13 -04:00
Hypolite Petovan b5454547e9 Add query string to API "call not implemented" log message 2019-05-20 15:28:54 -04:00
Hypolite Petovan 6071fe81b4 Move Authentication::setAuthenticatedSessionForUser to Session::setAuthenticatedForUser 2019-05-13 01:51:59 -04:00
Hypolite Petovan 08ef4c23d7 Replace last references to removed HTTPException->httpcode property 2019-05-02 13:08:06 -04:00
Michael d4b7e00837 Cleaning up transmitted fields (only needed for the root entry) 2019-04-24 21:28:56 +00:00
Michael d778a29e04 Use all fields 2019-04-24 20:46:12 +00:00
Michael 9753ccab33 API: Reshares and Quotes should now work in any combination 2019-04-24 19:06:39 +00:00
Michael 3db9420ec7 Unify behaviour of friendica-author and friendica-owner 2019-04-24 05:22:31 +00:00
Michael dd7406f285 API: Fix the displaying of reshared posts 2019-04-24 04:26:23 +00:00
Hypolite Petovan ab7ec357cb Remove type parameter from api_get_last_status function prototype 2019-03-23 14:28:54 -04:00
Hypolite Petovan e60e7a56ac Add author_user support to api_format_item 2019-03-23 14:28:54 -04:00
Hypolite Petovan 8d28f199a6 Test fix: Add expected author-network field to api_get_item() result 2019-03-23 14:28:54 -04:00
Hypolite Petovan 9693a7472e Extract API status formatting from api_get_status()
- Rename api_get_status() to api_get_item()
- Ad new api_format_item() function for single item formatting
2019-03-23 14:28:54 -04:00
Hypolite Petovan aa6192258e Extract API status retrieval from api_status_show()
- Remove 'raw' type from api_status_show()
- Add new api_get_status() and api_get_last_status() functions
- Use api_get_last_status() in api_account_verify_credentials() and api_show_user()
2019-03-23 14:28:53 -04:00
Philipp Holzer b2edb85588 Replace "q" calls 2019-03-22 22:55:48 -04:00
Michael 80a33763ea Take the author from the author 2019-03-17 18:46:22 +00:00
Michael b8b5b7b753 Issue 6537: Transmit the real author of a post in a dedicated field in the API 2019-03-17 18:39:34 +00:00
Philipp Holzer 04b7280f38
Take void return into account 2019-03-02 14:23:46 +01:00
Philipp Holzer 6986e6902b
check if user_info is an array before counting 2019-03-02 11:55:51 +01:00
Philipp Holzer 4c11255624
Hide silenced authors from public timeline 2019-02-27 11:41:57 +01:00
Roland Häder 9fa812b35d
Rewrites:
- converted single-line if() block to multi-line and with curly braces
- "imported" SPL classes to have unified code style
- always initialize your variables ... :-/
- added some empty lines/spaces for better readability

Signed-off-by: Roland Häder <roland@mxchange.org>
2019-02-19 01:56:41 +01:00
Philipp Holzer 5e5c39b0e1
Refactored DependencyFactory for Profiler 2019-02-17 21:12:12 +01:00
Philipp Holzer 5e6e1a8025
Introducing Profiler 2019-02-16 23:11:30 +01:00
Hypolite Petovan cef6757c92 Replace REGISTER_* constants by Module\Register::* ones 2019-01-22 22:24:15 -05:00
Hypolite Petovan 592592525b Various fixes in include/api
- Fix unused condition in api_status_show()
- Fix wrong operator orders in api_get_entitites()
- Fix wrong variable usage in api_account_update_profile_image()
2019-01-21 11:40:14 -05:00
Hypolite Petovan ce177f22c8 Fix doc blocks and return value type 2019-01-21 11:36:01 -05:00
Hypolite Petovan da7706ce61 Remove unused code in include/
- Remove unused variables
2019-01-21 10:53:33 -05:00
Hypolite Petovan c5cb976b62 Update PHPDoc in include/ 2019-01-21 10:44:46 -05:00
Hypolite Petovan d1c6ec9718 Update namespaces declaration in include/
- Remove unused use statements
- Add required use statements
2019-01-21 10:44:45 -05:00
Philipp Holzer 2e602afd3e Add Monolog 2019-01-21 10:10:40 -05:00
Hypolite Petovan 2f49c4a058 Revert "Add monolog" 2019-01-21 10:08:09 -05:00
Philipp Holzer 5ee72b681b removed unused get_app() 2019-01-21 10:00:46 -05:00
Philipp Holzer 6e48df2163 Refactor Loglevels 2019-01-21 10:00:46 -05:00
Philipp Holzer 81cb6bec30 define api log prefix 2019-01-21 09:59:10 -05:00
Philipp Holzer ff162dfef2 Replacing log usage 2019-01-21 09:59:09 -05:00
Philipp Holzer fe8f0e0045 Add Monolog 2019-01-21 09:58:05 -05:00
Hypolite Petovan 55e54bb950 Replace deprecated Addon::callHooks with Hook::callAll
- Update documentation
2019-01-21 09:50:56 -05:00
Hypolite Petovan 895b3abf32 Remove/replace killme() with *exit() 2019-01-21 09:49:17 -05:00
root dbd2e4cdf3 follow code standard 2019-01-21 09:13:10 -05:00
root 06ccba1c28 code style & use DBA::p 2019-01-21 09:13:09 -05:00
root 61afd5b3fb refs #6292
APIs show number of comments
- /api/statuses/*_timeline
- /api/search
- /api/favorites

/api/search enhacement
- support exclude_replies parameter
2019-01-21 09:13:09 -05:00
root 6c2ace3cab update hashtag regular expression 2019-01-21 09:12:35 -05:00
root 8de263df8b #6275 - q support hashtag search 2019-01-21 09:12:35 -05:00
root 939364f9a0 API - /search #6274
- fixed: search result always return empty
- add hashtag search: friendica_tag params
- ApiTest & api.md updated
2019-01-21 09:12:35 -05:00
root b43dd28b7a closes #6272 2019-01-21 09:12:33 -05:00
root d331e4e6e3 API - /media/upload - add return value #6272
image.preview: string (url for small image)
2019-01-21 09:12:33 -05:00
fabrixxm 55292c954b Remove resourceid parameter from Photo::exists() 2019-01-21 09:12:29 -05:00
fabrixxm e7fbe04b11 Fix parse error 2019-01-21 09:12:29 -05:00
fabrixxm 8c75c26361 Use Model\Photo as much as possible
Most important is to use `Photo::delete()` to have backend
to remove data.
2019-01-21 09:12:28 -05:00
Hypolite Petovan 5e1ceb57de Escape global namespaced get_app() calls
- Add deprecated status
2019-01-03 21:27:36 -05:00
Michael Vogel 94eca77041
Merge pull request #6315 from MrPetovan/bug/6309-add-fulltext-index-profile
Rework mod/match and mod/msearch
2018-12-27 18:04:06 +01:00
Hypolite Petovan c5867df24c Remove useless intermediate network_name variable in include/api 2018-12-26 11:02:28 -05:00
Hypolite Petovan acaee626f5 Remove include/ requires that are now done directly from Composer 2018-12-24 09:56:25 -05:00
Michael 1f432d006b API: Fix author of repeated items from Diaspora 2018-12-21 22:55:36 +00:00
Hypolite Petovan 9c534546e4 Fix condition in api_fr_photo_create_update 2018-11-30 10:48:47 -05: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 a5ddaa9dbc Issue 6128: Websub could work now 2018-11-13 22:23:16 +00:00
Michael 34a0e71485 API: The wrong user had been shown for repeated posts 2018-11-11 19:05:57 +00:00
Adam Magness ffc406d819 normalise_link calls
implement normaliseLink function
2018-11-08 11:28:29 -05:00
Adam Magness 46d7767fd0 formatBytes calls
implement function in new class
2018-11-08 10:28:49 -05:00
Adam Magness 991f259ecb random_string calls
implement getRandomHex function
2018-11-08 08:45:46 -05:00
Adam Magness 4f07ebb52f Rename properly
rename function properly this time!
2018-11-06 06:34:32 -05:00
Adam Magness 3eecd108c5 rename function
rename function and update calls.
2018-11-06 06:31:48 -05:00
Adam Magness a71eb1d127 functions moved to HTML class
update function calls to moved class.
2018-11-05 21:06:26 -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 32af52842b
adding defaults in mod/redir.php 2018-10-22 22:13:41 +02:00
Philipp Holzer d00ddc01af
Split goaway to System::externalRedirectTo() and App->internalRedirect() 2018-10-22 22:13:35 +02:00
Philipp Holzer 2ef81108b3
Renamed System::redirect() to $a->redirect() 2018-10-22 22:13:22 +02:00
Michael 1cd72e7694 API: The source field does now reliably return the correct network name of the author 2018-10-22 14:15:14 +00:00
Jonny Tischbein f3fc1f36ca Renaming functions + moving functions from security to Model/Item and BaseModule + fix multiline comments 2018-10-17 21:30:41 +02:00
Jonny Tischbein ce2b1f5715 Rename function Authentication::authenticate_success to Authentication::success 2018-10-17 18:45:32 +02:00
Jonny Tischbein 05be2db725 Move include/security tp /src/Core/Authentication and /src/Util/Security 2018-10-17 14:19:58 +02:00
Jonny Tischbein bfa05156ca change links from /contacts to /contact 2018-10-13 13:29:56 +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 3ab837f3c7 Functionality is now split 2018-10-03 09:15:38 +00:00
Hypolite Petovan 505350c9fb
Merge pull request #5794 from annando/ap1
ActivityPub support
2018-10-02 11:24:04 -04:00
Michael 54c7ca58d8 Repeated posts from OStatus, ActitivyPub and Twitter are now shown as is 2018-10-02 03:41:38 +00:00
Michael b746ddec64 Issue 5797: Retweets are now displayed again via API 2018-10-01 18:16:19 +00:00
Michael e3a4a9c407 Issue 5798: We had displayed the author as owner 2018-10-01 17:36:23 +00:00
Michael cb9be8a7ab UUID is now createUUID 2018-09-27 11:52:15 +00:00
Michael 60b0759b50 UUID instead of GUID 2018-09-26 20:03:46 +00:00
Jonny Tischbein 9821f173a4 fix response 2018-09-16 19:36:25 +02:00
Jonny Tischbein a0942963c9 api_friendships_detroy uid - api_user instead of local_uer, empty check for 2018-09-15 11:06:55 +02:00
Jonny Tischbein b7e15e8b38 api_friendships_destroy finally function header + NotFoundException typo 2018-09-14 19:35:24 +02:00
Jonny Tischbein 2c3a58d44e api_friendhips_destroy function header 2018-09-14 10:06:26 +02:00
Jonny Tischbein 3eb539aefd api_friendships_destroy idents, DBA::selectFirst, Excepions and LogMessages 2018-09-14 09:28:14 +02:00
root a89f9cf7d5 api_friendships_destroy cleanup 2018-09-13 23:32:26 +02:00
root 3f85fee7e3 Add api_friendships_destroy() like mod/unfollow.php 2018-09-13 23:23:53 +02:00
Tobias Diekershoff d5a3b0bd5e
Merge pull request #5710 from annando/fix-api
Fix for timeout issues when posting to the API
2018-09-02 14:52:09 +02:00
Michael 703c668a37 More notices ... 2018-09-02 08:01:13 +00:00
Michael 394526db74 Typo corrected / use the thread table instead 2018-09-02 07:35:12 +00:00
Michael 4bb45f611f Fix for timeout issues when posting to the API 2018-09-02 07:20:04 +00:00
fabrixxm 93ba393559 API: add private value (bool) to item results (#5647)
* API: add private value (bool) to item results

friendica:private for xml
friendica_privarte for json

* API Docs: add a section about custom value returned in status data
2018-08-23 10:09:50 -04: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
Tobias Diekershoff d5c2c41b02
Merge pull request #5626 from annando/notices-oh-yeah
Removed notices, will it ever end?
2018-08-17 09:33:02 +02:00
Michael 0342f9e084 Removed notices, will it ever end? 2018-08-17 03:19:42 +00:00
fabrixxm 66b4730a70 api: fix friendica/notification/seen api call
Fix return item related to notification when notification is set as seen
2018-08-16 11:46:53 +02: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
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 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 a6fb3568f9 Rename dbesc to DBA::escape 2018-07-23 15:30:54 -04:00
Hypolite Petovan ecea7425f8 Rename DBA::is_result to DBA::isResult 2018-07-23 11:04:14 -04:00