Compare commits

...

1695 Commits

Author SHA1 Message Date
Tobias Diekershoff 2dbfb07008 bump version 2023-05-23 22:03:05 +02:00
Tobias Diekershoff f3fb69e7b9 set 2023.05 release date 2023-05-23 22:02:33 +02:00
Tobias Diekershoff 8ebee968a6
Merge pull request #13132 from tobiasd/20230516-changelog
Updated the CHANGELOG file
2023-05-23 21:59:21 +02:00
Tobias Diekershoff d7960a6560 various addon stuff for the CHANGELOG 2023-05-23 20:55:18 +02:00
Tobias Diekershoff ab9e8be462
Merge pull request #13155 from tobiasd/20230523-doc
updating Transifex URL
2023-05-23 20:49:46 +02:00
Tobias Diekershoff fa5d0e7d5b updating Transifex URL
Transifex informed about a change in the location of the web application for translations, hence updating the docs.
2023-05-23 20:47:39 +02:00
Tobias Diekershoff 8c130d337e mentioned the fancybox and emojipicker changes in the core block as well 2023-05-23 20:38:02 +02:00
Tobias Diekershoff 675caefb81 corrections to the CHANGELOG 2023-05-23 18:36:47 +02:00
Philipp 5a17e811e0
Merge pull request #13154 from tobiasd/20230523-hu
Updated HU translation
2023-05-23 07:26:12 +02:00
Tobias Diekershoff b4bd69fd9c Updated HU translation 2023-05-23 07:20:06 +02:00
Tobias Diekershoff 006dbd5bc1 updated the CHANGELOG 2023-05-23 07:15:07 +02:00
Hypolite Petovan ecfaa950ea
Merge pull request #13151 from annando/bluesky
Preparation to add Bluesky
2023-05-21 18:43:20 -04:00
Michael a417d049cb Updated messages.po 2023-05-21 17:30:47 +00:00
Michael 7d4b11b450 Preparation to add Bluesky 2023-05-21 17:19:39 +00:00
Michael Vogel 1d211bea98
Merge pull request #13146 from MrPetovan/bug/deprecated
Move current table property from PDOStatement to Database class
2023-05-20 18:53:38 +02:00
Philipp 61588be83f
Merge pull request #13147 from MrPetovan/bug/preview-scrollbars
[frio] Remove scrollbars from preview close button and restore pointer cursor
2023-05-20 18:51:32 +02:00
Hypolite Petovan cd751a4c6a [frio] Remove scrollbars from preview close button and restore pointer cursor
- Address https://libranet.de/display/0b6b25a8-9464-6895-5ede-a3c536914564
2023-05-20 12:44:45 -04:00
Hypolite Petovan ce2abcdbca Move current table property from PDOStatement to Database class
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1533036354
2023-05-20 12:22:19 -04:00
Philipp 2b1fc4b561
Merge pull request #13145 from MrPetovan/bug/warnings
Refer to correct contact field in Core/Search
2023-05-20 17:42:54 +02:00
Philipp 7d58286cd9
Merge pull request #13144 from MrPetovan/bug/12683-tagcloud-link
Update tag cloud link to conversations
2023-05-20 17:42:38 +02:00
Philipp afa6e0ee3c
Merge pull request #13143 from MrPetovan/bug/12684-category-link
Support special characters in category widget links
2023-05-20 17:42:09 +02:00
Hypolite Petovan 3dc861a21e
Merge pull request #13142 from annando/collapse-author
Add menu entry to directly collapse posts
2023-05-20 10:50:22 -04:00
Michael 5506a2c547 Tabs to spaces 2023-05-20 14:36:31 +00:00
Hypolite Petovan 739b6d6533 Refer to correct contact field in Core/Search
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1554498114
2023-05-20 10:31:05 -04:00
Hypolite Petovan c5e4e342bb Update tag cloud link to conversations 2023-05-20 10:20:01 -04:00
Hypolite Petovan c10a1f3568 Support special characters in category widget links 2023-05-20 10:10:14 -04:00
Michael 1744f6b2c3 Add menu entry to directly collapse posts 2023-05-20 12:24:19 +00:00
Philipp 28185c12fc
Merge pull request #13140 from annando/quote-loop
Fix: Prevent an endless loop when fetching quoted content
2023-05-19 21:54:29 +02:00
Michael 5a18d06a93 Merge remote-tracking branch 'upstream/2023.05-rc' into quote-loop 2023-05-19 19:50:36 +00:00
Philipp 5e2953ff3f
Merge pull request #13139 from annando/receiver-exception
Logging for an exception when processing activities
2023-05-19 21:20:20 +02:00
Michael ebebd61343 Updated messages.po and database.sql - again 2023-05-19 17:47:50 +00:00
Michael 63436be80e Merge remote-tracking branch 'upstream/2023.05-rc' into receiver-exception 2023-05-19 17:44:01 +00:00
Michael aed94cbbe6 Updated messages.po and database.sql 2023-05-19 17:38:14 +00:00
Michael efb055f5d6 Updated messages.po and database.sql 2023-05-19 17:36:15 +00:00
Michael 1523fa2236 Fix: Prevent an endless loop when fetching quoted content 2023-05-19 17:28:29 +00:00
Tobias Diekershoff 14956244cc bump version 2023.05-rc 2023-05-18 15:55:42 +02:00
Hypolite Petovan e2e95f7d72
Merge pull request #13137 from tobiasd/20230518-pl
PL translation update THX tatonuta
2023-05-18 08:03:54 -04:00
Hypolite Petovan ccf94c5424
Merge pull request #13107 from annando/unify-link
Unifiy the creation of photo links
2023-05-18 08:01:56 -04:00
Tobias Diekershoff 7a098800c5 PL translation update THX tatonuta 2023-05-18 13:05:07 +02:00
Tobias Diekershoff d4d25c4e97
Merge pull request #13135 from MrPetovan/bug/13108-photomenu-redir
Fix magic links in contact photo menu
2023-05-18 12:09:17 +02:00
Michael 4e54b25b3e Logging for an exception when processing activities 2023-05-18 06:43:53 +00:00
Hypolite Petovan ff80e46eb0 Fix magic links in contact photo menu
- They were using a URL format obsolete for years
2023-05-17 19:53:22 -04:00
Michael 1010443031 Simplify image url 2023-05-17 20:30:45 +00:00
Michael 7c266be206 Merge remote-tracking branch 'upstream/develop' into unify-link 2023-05-17 20:03:57 +00:00
Hypolite Petovan 878f144bc1
Merge pull request #13131 from annando/supportsprobe
Replace "Probe::isProbable" with "Protocol::supportsProbe"
2023-05-17 15:44:21 -04:00
Hypolite Petovan 7248b6833a
Merge pull request #13133 from annando/start-header
Unify the heading levels
2023-05-17 15:42:51 -04:00
Hypolite Petovan 454f177831
Merge pull request #13115 from annando/search
Fix: Contacts can now be searched with a leading @ again.
2023-05-17 13:35:51 -04:00
Michael 3dbbbb69e4 Long refresh periods for connector networks 2023-05-17 14:28:40 +00:00
Michael a198108222 Fix tests 2023-05-17 09:01:52 +00:00
Michael 8b264c38fe Unify the heading levels 2023-05-17 08:17:23 +00:00
Tobias Diekershoff 47c311e26b Updated the CHANGELOG file 2023-05-17 06:57:19 +02:00
Michael 3f66ecf3be Reverted accidentally reversed parameter order 2023-05-17 02:38:47 +00:00
Michael e23a7383f8 Only probr when needed, search local if nothing was found 2023-05-17 02:23:56 +00:00
Michael 97456ff205 Merge remote-tracking branch 'upstream/develop' into search 2023-05-17 01:30:56 +00:00
Michael 2e46d64ea0 Replace "Probe::isProbable" with "Protocol::supportsProbe" 2023-05-17 01:28:10 +00:00
Michael Vogel a52c1cde9c
Merge pull request #13124 from ne20002/develop
fix for probe loop in case that network of contact has changed
2023-05-17 03:16:04 +02:00
Hypolite Petovan c58dd5b471
Merge pull request #13128 from annando/owa
OWA: reworked code
2023-05-16 08:09:23 -04:00
Michael Vogel f604ddacb5
Update src/Module/Magic.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-16 13:54:46 +02:00
Michael 5782caba92 OWA: reworked code 2023-05-15 20:46:05 +00:00
Hypolite Petovan 6e6814ef35
Merge pull request #13126 from nupplaphil/bug/increment_db
Fixup incrementQueue
2023-05-14 15:24:15 -04:00
Philipp c21e6ab952
Fixup incrementQueue 2023-05-14 20:52:07 +02:00
Hypolite Petovan 6d2ae6a9e3
Merge pull request #13125 from nupplaphil/bug/xss
Escape message for notifications
2023-05-14 14:37:41 -04:00
Philipp 07856ee6b4
PHP-CS 2023-05-14 20:34:42 +02:00
Philipp 10aec7120a
add license 2023-05-14 20:32:34 +02:00
Philipp e998c059b6
Escape message for notifications 2023-05-14 20:31:20 +02:00
S. Brusch 084cd955a2 fix for probe loop in case that network of contact has changed
This fixes a loop of probes / contact updates where the network has been apup and for whatever
reason is now feed. In this case the contact hasn't been updated and rescheduled with next_update as null resulting
in a huge number of queries.

The call to hasLocalData has been moved a bit up as it checks for values that otherwise would be emptied befare the call.

Fixes #13037
2023-05-14 15:38:47 +02:00
Philipp d272cecd55
Merge pull request #13123 from MrPetovan/bug/xss-notifications
Escape notification text in /notifications module
2023-05-14 15:25:28 +02:00
Hypolite Petovan 30c4883aa6 Escape notification text in /notifications module
- This was causing literal HTML display names to be interpreted in the page
2023-05-14 09:13:26 -04:00
Hypolite Petovan 89d57a3484
Merge pull request #13118 from nupplaphil/feat/db_refac
DB encapsulations
2023-05-14 08:46:39 -04:00
Philipp 8c2678c82f
fixups 2023-05-14 11:18:59 +02:00
Philipp a74c0e86c9
PHP-CS ... 2023-05-13 22:46:10 +02:00
Philipp 60ea36259e
PHP-CS ... 2023-05-13 22:42:56 +02:00
Philipp 8e208a0f41
adhere PHP CC 2023-05-13 22:36:18 +02:00
Philipp db4c9773b2
add license 2023-05-13 22:35:32 +02:00
Philipp 7f184bf6fa
Adapt & remove impossible code 2023-05-13 22:27:29 +02:00
Philipp 9386adb184
Update & fix 2023-05-13 22:18:11 +02:00
Philipp 7bf2606120
Update & fix 2023-05-13 22:18:00 +02:00
Philipp 5be9c9dbaf
Use optimized update statements 2023-05-13 22:14:52 +02:00
Philipp 557d0e3aeb
Add direct field possibility 2023-05-13 22:04:51 +02:00
Philipp db5078d51c
Move "OPTIMIZE TABLE" to own Database function 2023-05-13 21:05:22 +02:00
Michael Vogel 32f322a4c1
Merge pull request #13116 from MrPetovan/bug/warnings
Remove misleading concatenation in XPath expression in Protocol\Feed
2023-05-13 07:22:19 +02:00
Hypolite Petovan add913da27 Remove misleading concatenation in XPath expression in Protocol\Feed
- Variable could be directly interpolated
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1543335001
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1545074703
2023-05-12 06:06:34 -04:00
Michael f709ef96f7 Updated messages.po 2023-05-12 07:58:28 +00:00
Michael f45dbf8b01 Fix: Contacts can now be searched with a leading @ again. 2023-05-12 07:00:02 +00:00
Hypolite Petovan 725f99c813
Merge pull request #13113 from annando/baseurl
Ensure that the baseurl return value is a string
2023-05-11 05:05:16 -04:00
Michael e13a31c4fe Ensure that the baseurl return value is a string 2023-05-11 08:13:19 +00:00
Hypolite Petovan be8251ef0c
Merge pull request #13110 from anubis2814/develop
[frio] Changed mobile icon for sidebar
2023-05-10 17:19:29 -04:00
Michael 2b3c1972db Differentiate between no description or an empty description 2023-05-10 17:59:25 +00:00
Michael 992b6eed1d Fixed test - again 2023-05-10 16:57:08 +00:00
Michael Vogel 45dda2c064
Update src/Util/Images.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-10 17:06:16 +02:00
Michael 3554b61508 Fix tests 2023-05-10 08:48:21 +00:00
Michael c5ca5bfdf8 Function renamed 2023-05-10 07:54:15 +00:00
Michael 7d91cc73de Unifiy the creation of photo links 2023-05-09 20:44:58 +00:00
Hypolite Petovan 4c40bc164d
Merge pull request #13103 from annando/better-preview
Improved preview size
2023-05-09 03:43:58 -04:00
Michael cf74016077 Updated messages.po 2023-05-09 06:35:21 +00:00
Michael 76ccc52406 Improved variable naming 2023-05-09 06:32:16 +00:00
Michael 91a12295ff Calculate image size if not provided 2023-05-09 05:59:07 +00:00
Michael b692146533 Remove unwanted stuff 2023-05-09 05:34:56 +00:00
Michael d20cae82ad Use old error message when storing fails 2023-05-09 05:32:52 +00:00
Michael d83073f2a2 Unifiy storing of photos with previews 2023-05-09 05:29:05 +00:00
Michael 1789266859 Improved preview size 2023-05-08 21:32:38 +00:00
Michael Vogel b5de664ef6
Merge pull request #13100 from MrPetovan/bug/fatal-errors
Wrap HTTP client call in try catch in Network\Probe
2023-05-07 12:27:27 +02:00
Michael Vogel 46d3778ee8
Merge pull request #13099 from MrPetovan/bug/warnings
Address several warnings
2023-05-07 08:25:44 +02:00
Hypolite Petovan 675e5af2fd
Merge pull request #13101 from annando/fix-feeds
Fix: Feeds had been imported with the wrong body
2023-05-07 02:25:32 -04:00
Michael 91a7217fb8 Fix: Feeds had been imported with the wrong body 2023-05-07 06:13:28 +00:00
Hypolite Petovan bce7e85e1f Wrap HTTP client call in try catch in Network\Probe
- Address https://github.com/friendica/friendica/issues/13023#issuecomment-1521458475
2023-05-07 00:26:16 -04:00
Hypolite Petovan 32688d34b6 Ensure $atomns is always set in Protocol\Feed
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1537162173
2023-05-07 00:00:55 -04:00
Hypolite Petovan 527c17a8a7 Rework Hashtag module to avoid undefined key error
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1537143590
2023-05-06 23:55:41 -04:00
Hypolite Petovan 29329f799d Prevent casting a non-existent array key before it's been coalesced in Model\GServer
- Address https://github.com/friendica/friendica/issues/13025#issuecomment-1536440077
2023-05-06 23:48:32 -04:00
Hypolite Petovan f673232e53
Merge pull request #13097 from annando/vier-emojis
Vier: The emojipicker is now integrated
2023-05-06 22:55:21 -04:00
Michael b233350e9f Fixes spaces 2023-05-06 21:52:30 +00:00
Michael c064ebe231 Emojis are now added either in comments or starting posts - but not both 2023-05-06 21:46:40 +00:00
Michael 85408fe437 Vier: The emoji picker is now integrated 2023-05-06 21:27:21 +00:00
Hypolite Petovan 8585a94f90
Merge pull request #13096 from ne20002/heikosblog.eu
Added host check on xrd request
2023-05-06 17:03:02 -04:00
S. Brusch d50b9612a0 Added host check on xrd request 2023-05-06 22:26:37 +02:00
Hypolite Petovan b270771f0f
Merge pull request #13095 from annando/atom03
Improved ATOM distinction, added OPML
2023-05-06 10:43:36 -04:00
Michael d4f0c1a8dc Improved ATOM distinction, added OPML 2023-05-06 13:52:39 +00:00
Hypolite Petovan d196fbbd54
Merge pull request #13094 from annando/atom03
Support for feeds that follow the ATOM 0.3 specification
2023-05-06 09:43:11 -04:00
Hypolite Petovan b5f2020313
Merge pull request #13093 from annando/emoji-comments
The emoji selector is now available for comments
2023-05-06 09:42:33 -04:00
Michael 74bcc33fdb Support for feeds that follow the ATOM 0.3 specification 2023-05-06 11:35:34 +00:00
Michael 0a3f1094ce The emoji selector is now available for comments 2023-05-06 09:41:07 +00:00
Hypolite Petovan 3722aa5016
Merge pull request #13092 from Raroun/develop
Fixes #13082
2023-05-05 14:51:51 -04:00
Raroun 3f2481f424
Update view/js/dropzone-factory.js
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-05 20:40:59 +02:00
Raroun 789ae23ce5
Update view/js/dropzone-factory.js
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-05 20:22:37 +02:00
Raroun ad127f4739
Fixes #13082
removed $.trim because it removes \n from return value of media/photo/upload
2023-05-05 19:30:26 +02:00
Hypolite Petovan 41030f596b
Merge pull request #13090 from abanink/feature-openwebauth
improve OpenWebAuth client support
2023-05-05 09:59:27 -04:00
Pascal 7fd1db0ec6
Update src/Module/Magic.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-05 15:58:38 +02:00
Pascal 54c530933d
Update src/Module/Magic.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-05 15:58:25 +02:00
Pascal 2a98e71b16
Merge branch 'friendica:develop' into feature-openwebauth 2023-05-05 13:47:47 +02:00
Pascal a268c5ffdc Remote auth works from Streams 2023-05-05 12:46:30 +02:00
Hypolite Petovan 148f12580b
Merge pull request #13088 from nupplaphil/feat/settings
Introduce settings for overriding php.ini values
2023-05-04 12:37:43 -04:00
Philipp 948217da51
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-05-04 18:27:44 +02:00
Philipp bbe6554bb0
Introduce settings for overriding php.ini values 2023-05-04 17:48:13 +02:00
Hypolite Petovan 9686eb9fb0
Merge pull request #13084 from annando/emojipicker
The Emojipicker is added to Frio for new posts
2023-05-04 11:30:58 -04:00
Michael 54a6748808 Changes after review 2023-05-04 15:23:51 +00:00
Michael 45c1d74750 The Emojipicker is added to Frio for new posts 2023-05-04 10:54:29 +00:00
Hypolite Petovan 44bdff664a
Merge pull request #13076 from annando/fancybox
Add Fancybox to the core
2023-05-03 17:16:00 -04:00
Michael bf4d19eed3 Changes after code review 2023-05-03 21:14:35 +00:00
Michael b4b9a6a34a Add Fancybox to the core 2023-05-03 20:59:28 +00:00
Hypolite Petovan 791488982a
Merge pull request #13071 from annando/warning
Fix warning: Undefined array key "post"
2023-05-02 08:04:31 -04:00
Hypolite Petovan d2429b1096
Merge pull request #13070 from xundeenergie/fix-share-via
change test for navigator.share - fixes #13054
2023-05-02 08:04:02 -04:00
Michael 349fa08ece Fix warning: Undefined array key "post" 2023-05-02 09:21:11 +00:00
Jakobus Schürz 2294d6ffc3 change test for navigator.share - fixes #13054
this testing for navigator.share is recommended from mozilla.
tested with firefox linux, android and vivaldi on linux.
2023-05-02 10:31:43 +02:00
Hypolite Petovan 4f55b1031b
Merge pull request #13068 from annando/activity-link
Improved fetching of attached activities
2023-05-01 10:56:43 -04:00
Michael 8ab7e6552b Improved fetching of attached activities 2023-05-01 13:05:59 +00:00
Tobias Diekershoff d425f2eaac
Merge pull request #13066 from annando/issue-13041
Issue 13041: API activities for reshared posts are now performed on the original posts
2023-05-01 07:26:53 +02:00
Tobias Diekershoff 8a37492ae6
Merge pull request #13067 from annando/issue-13052
Issue 13052: The limit parameter now behaves like the Mastodon counterpart
2023-05-01 07:08:18 +02:00
Michael e1dfcc35d7 Issue 13052: The limit parameter now behaves like the Mastodon counterpart 2023-05-01 04:56:45 +00:00
Michael Vogel cf26f3e881
Merge pull request #13065 from MrPetovan/bug/13027-formattertest-deprecation
Rename tests/src/Util/AclFormatter file to match class name
2023-05-01 06:44:35 +02:00
Michael a5b00e9199 Issue 13041: API activities for reshared posts are now performed on the original posts 2023-05-01 04:01:11 +00:00
Hypolite Petovan 018930b907 Rename tests/src/Util/AclFormatter file to match class name 2023-04-30 21:17:17 -04:00
Hypolite Petovan f74cc59530
Merge pull request #13059 from annando/disable-basicauth
Issue 13058: BasicAuth can now be disabled
2023-04-30 08:54:48 -04:00
Michael 25636c2442 Issue 13058: BasicAuth can now be disabled 2023-04-30 11:53:32 +00:00
Hypolite Petovan c63a895672
Merge pull request #13053 from annando/contact-update
Contacts from probeable networks are now updated correctly
2023-04-28 14:40:46 -04:00
Michael 2df2a8f123 Contacts from probeable networks are now updated correctly 2023-04-28 18:25:55 +00:00
Tobias Diekershoff 9d770c0060
Merge pull request #13051 from annando/audience-followers
"audience" is set for forum posts / followers posts are directed to the followers collection
2023-04-28 07:42:40 +02:00
Tobias Diekershoff 096b95a247
Merge pull request #13048 from MrPetovan/bug/fatal-errors
Wrap last remaining system.maximagesize config retrieval in Strings::getBytesFromShorthand call
2023-04-28 07:13:44 +02:00
Michael ae6c354232 "audience" is set for forum posts / followers posts are directed to the followers collection 2023-04-28 05:13:23 +00:00
Tobias Diekershoff b271b3aa27
Merge pull request #13047 from MrPetovan/bug/13043-Notify-msg-null
Account for null value in Entity\Notify->msg
2023-04-28 07:12:54 +02:00
Tobias Diekershoff b0a5cabe7d
Merge pull request #13049 from MrPetovan/bug/12824-frio-mobile-post-privacy
[frio] Show post privacy scope in mobile view
2023-04-28 07:11:24 +02:00
Tobias Diekershoff 17d1236bdb
Merge pull request #13046 from MrPetovan/bug/12760-category-label-link
Fix link to user category in label
2023-04-28 07:01:38 +02:00
Tobias Diekershoff d74b990f90
Merge pull request #13050 from MrPetovan/task/12788-multiple-admin-docs
Add example to multiple admin question in FAQ
2023-04-28 07:00:07 +02:00
Hypolite Petovan 2c4b57ef50 Add example to multiple admin question in FAQ 2023-04-27 23:36:03 -04:00
Hypolite Petovan ce2b7c8d4e [frio] Show post privacy scope in mobile view
- Remove mystery unknown block
2023-04-27 23:25:27 -04:00
Hypolite Petovan 6d3a4ea2b3 Wrap last remaining system.maximagesize config retrieval in Strings::getBytesFromShorthand call
- Address https://github.com/friendica/friendica/issues/13023#issuecomment-1520073381
2023-04-27 23:09:48 -04:00
Hypolite Petovan fff1d44878 Account for null value in Entity\Notify->msg
- Update possible types of entity properties
2023-04-27 23:00:48 -04:00
Hypolite Petovan e29e802b7c Fix link to user category in label
- Improve documentation of Content\Item->determineCategoriesTerms
2023-04-27 22:50:43 -04:00
Hypolite Petovan 9e13ef4021
Merge pull request #13042 from annando/support-probe
New hook "support_probe"
2023-04-27 07:18:51 -04:00
Tobias Diekershoff 2f50b31c4f set correct version again 2023-04-27 07:56:47 +02:00
Tobias Diekershoff 1a089e77a7 added CHANGELOG header for 2023.06 release 2023-04-27 07:54:37 +02:00
Michael 970d86472e New hook "support_probe" 2023-04-27 05:24:47 +00:00
Tobias Diekershoff f3c540cace Update CHANGELOG for the hotfix release 2023.04-1 2023-04-27 07:01:00 +02:00
Tobias Diekershoff e7e56bea65 bump version to 2023.04-1 2023-04-27 07:00:31 +02:00
Anubis2814 496967e7f8 Changed mobile icon for sidebar 2023-04-25 22:10:27 -04:00
Philipp a725815d7a
Merge pull request #13033 from tobiasd/20230425-lng
AR, CA, CS, DE, ES, FR, GD, HU, IT, JA, NL, PL, RU translation updates
2023-04-25 07:18:21 +02:00
Tobias Diekershoff 31217f0496 updated CA translation 2023-04-25 06:49:09 +02:00
Tobias Diekershoff b60649ce38 updated AR translation 2023-04-25 06:48:45 +02:00
Tobias Diekershoff 2f6fda8b3c updated CS translation 2023-04-25 06:47:44 +02:00
Tobias Diekershoff 085fa74534 updated DE translation 2023-04-25 06:47:18 +02:00
Tobias Diekershoff 28b2fb04e4 updated ES translation 2023-04-25 06:47:05 +02:00
Tobias Diekershoff b854a28422 updated FR translation 2023-04-25 06:46:16 +02:00
Tobias Diekershoff 523ce800f7 updated GD translation 2023-04-25 06:45:56 +02:00
Tobias Diekershoff 4821b431ae updated HU translation 2023-04-25 06:45:35 +02:00
Tobias Diekershoff 7f82bdb774 updated IT translation 2023-04-25 06:44:56 +02:00
Tobias Diekershoff 11103a2665 updated JA translation 2023-04-25 06:44:28 +02:00
Tobias Diekershoff 51d98996e5 updated NL translation 2023-04-25 06:43:57 +02:00
Tobias Diekershoff 373a1badce updated PL translation 2023-04-25 06:43:31 +02:00
Tobias Diekershoff afc8093cd2 updated RU translation 2023-04-25 06:42:58 +02:00
Hypolite Petovan dd8f875d6b
Merge pull request #13000 from annando/audience
Store "audience" and "attributedTo" data
2023-04-23 19:40:46 -04:00
Michael 33d2a122f9 Updated messages.po 2023-04-23 21:21:56 +00:00
Michael 69e4254dcc Merge remote-tracking branch 'upstream/develop' into audience 2023-04-23 21:20:01 +00:00
Michael Vogel 7295b2c40c
Merge pull request #13028 from MrPetovan/bug/13026-message_recipient.tpl
Separate JSON output of contact lists in message_recipient template
2023-04-23 23:05:06 +02:00
Hypolite Petovan ce9939b4c0 Separate JSON output of contact lists in message_recipient template 2023-04-23 16:31:29 -04:00
Tobias Diekershoff 58737ba70f extend date in security.txt file 2023-04-23 15:26:19 +02:00
Tobias Diekershoff 26e8180e8d bump development version 2023-04-23 15:25:19 +02:00
Tobias Diekershoff 1a0c415fa2 bump Friendica version to 2023.04 2023-04-23 15:15:07 +02:00
Tobias Diekershoff 4eec2804de Merge branch '2023.03-rc' into stable 2023-04-23 15:12:51 +02:00
Tobias Diekershoff 13b184e2b4 setting current date to the CHANGELOG
and some fixed typos
2023-04-23 15:12:22 +02:00
Tobias Diekershoff 5e8451c1a7
Merge pull request #12985 from tobiasd/2023.04-CHANGELOG
2023.04 CHANGELOG file
2023-04-23 15:07:53 +02:00
Tobias Diekershoff 8b1887fc66
Merge pull request #13019 from MrPetovan/bug/deprecated
Move calls to json_encode from Smarty templates to variable lists
2023-04-23 08:07:38 +02:00
Hypolite Petovan 9788984b06 Move calls to json_encode from Smarty templates to variable lists
- Address https://github.com/friendica/friendica/issues/12011#issuecomment-1518577079
2023-04-23 00:29:08 -04:00
Hypolite Petovan 9dc5557fb7
Merge pull request #13018 from annando/share-federated
Only share from federated posts
2023-04-22 08:34:53 -04:00
Michael d1d1685e24 Only share from federated posts 2023-04-22 10:40:58 +00:00
Michael Vogel bd00287190
Merge pull request #12954 from MrPetovan/bug/12555-domain-block-contact-search
Filter contact search by blocked remote domains
2023-04-21 21:55:14 +02:00
Philipp 5b1cc1f859
Merge pull request #13017 from tobiasd/20230421-lng
FR, HU and RU translation updates
2023-04-21 21:11:19 +02:00
Tobias Diekershoff 91c08b1385 FR, HU and RU translation updates 2023-04-21 20:11:00 +02:00
Tobias Diekershoff d3b41717a2 Update CHANGELOG 2023-04-21 07:02:48 +02:00
Hypolite Petovan b22ddde1b1 Updated main translation file after adding a string 2023-04-20 07:48:55 -04:00
Hypolite Petovan 03b7fcd09c Filter contact search by blocked remote domains
- Add filter explanation
2023-04-20 07:43:17 -04:00
Hypolite Petovan 261ba161a2 Convert ContactResult->url parameter to UriInterface 2023-04-20 07:43:17 -04:00
Michael Vogel f95c17b065
Merge pull request #13014 from MrPetovan/task/composer
[Composer] Update dependencies ahead of release
2023-04-20 07:20:37 +02:00
Hypolite Petovan 06e337c5fa [Composer] Update dependencies ahead of release
- Updated dasprid/enum (1.0.3 => 1.0.4)
- Updated bacon/bacon-qr-code (2.0.7 => 2.0.8)
- Updated ezyang/htmlpurifier (v4.14.0 => v4.16.0)
- Updated mobiledetect/mobiledetectlib (2.8.39 => 2.8.41)
- Updated phpseclib/phpseclib (3.0.17 => 3.0.19)
- Updated smarty/smarty (v4.2.1 => v4.3.1)
- Updated bower-asset/base64 (1.1.0 => 1.2.0)
- Updated npm-asset/jgrowl (1.4.8 => 1.4.9)
- Updated psr/http-message (1.0.1 => 1.1)
- Updated guzzlehttp/psr7 (1.9.0 => 1.9.1)
- Updated symfony/polyfill-php72 (v1.26.0 => v1.27.0)
- Updated symfony/polyfill-intl-normalizer (v1.26.0 => v1.27.0)
- Updated symfony/polyfill-intl-idn (v1.26.0 => v1.27.0)
- Updated paragonie/sodium_compat (v1.18.0 => v1.19.0)
- Updated psr/http-client (1.0.1 => 1.0.2)
- Updated psr/http-factory (1.0.1 => 1.0.2)
- Updated fgrosse/phpasn1 (v2.4.0 => v2.5.0)
- Updated composer/ca-bundle (1.3.3 => 1.3.5)
2023-04-20 00:14:05 -04:00
Hypolite Petovan e4ab857d9d
Merge pull request #13013 from annando/tumblr
Preparation for Tumblr
2023-04-18 15:59:04 -04:00
Michael f0d8b109fe Preparation for Tumblr 2023-04-18 19:30:28 +00:00
Hypolite Petovan 7a55052ad2
Merge pull request #13012 from annando/html-media-only-selected
Fix: Only add link preview for selected networks
2023-04-18 14:18:25 -04:00
Michael 2ad8bd901a Fix: Only add link preview for selected networks 2023-04-18 17:56:30 +00:00
Hypolite Petovan 815c1f4e33
Merge pull request #13010 from annando/video-links
Harmonize Youtube/Vimeo-Link behaviour
2023-04-18 07:42:03 -04:00
Michael Vogel 98595b6a2a
Merge pull request #13009 from MrPetovan/bug/13006-frio-admin-settings
[frio] Fix jS error that was preventing further script execution in theme settings
2023-04-18 08:32:58 +02:00
Michael bb3ec3807c Harmonize Youtube/Vimeo-Link behaviour 2023-04-18 06:02:58 +00:00
Hypolite Petovan 1caea496c4 [frio] Fix jS error that was preventing further script execution in theme settings
- $("#id_frio_background_image").val() was undefined when showing accents
2023-04-17 21:26:12 -04:00
Hypolite Petovan 7f6d6c9521
Merge pull request #13008 from xundeenergie/optical-improvements-dropzone
remove scrollbar from dropzone in jot too fixes #13002
2023-04-17 16:19:01 -04:00
Jakobus Schürz 0e9eeec3c7 remove scrollbar from dropzone in jot too
fixes #13002
2023-04-17 22:11:52 +02:00
Hypolite Petovan 4cb1a2de2c
Merge pull request #13004 from annando/warning
Fixes warning: Undefined array key "pending"
2023-04-15 19:21:46 -04:00
Michael b8dd6c0b25 Fixes warning: Undefined array key "pending" 2023-04-15 23:08:42 +00:00
Hypolite Petovan 67792bbc0b
Merge pull request #13003 from annando/baseurl-string
Fix: Force baseUrl being a string
2023-04-15 10:25:21 -04:00
Michael b0f880d0eb Fix: Force baseUrl being a string 2023-04-15 14:17:30 +00:00
Michael Vogel 68d9e1f33c
Merge pull request #13001 from MrPetovan/bug/12993-vier-updateInterval
[vier] Remove duplicate variable declaration
2023-04-15 10:51:22 +02:00
Hypolite Petovan c65cb66160 [vier] Remove duplicate variable declaration
- They were meant to be removed when the const declarations were introduced
2023-04-15 00:40:50 -04:00
Michael Vogel c81a9d1ddd
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-04-14 20:56:43 +02:00
Michael 78b969cb19 Store "audience" and "attributedTo" data 2023-04-14 17:21:20 +00:00
Philipp ebfdd6a1e0
Merge pull request #12996 from annando/lemmy-attachments
Fix: Attached images from Lemmy can now be processed
2023-04-13 08:29:44 +02:00
Michael a36e53af3c Fix: Attached images from Lemmy can now be processed 2023-04-13 05:05:20 +00:00
Tobias Diekershoff a4a22e2dee
Merge pull request #12987 from tobiasd/20230411-creadits
regen CREDITS for the next release
2023-04-12 14:59:38 +02:00
Hypolite Petovan 1a36118e7a
Merge pull request #12992 from annando/diaspora-signature
Replace the Diaspora signature upon update
2023-04-12 04:42:46 -04:00
Michael a4ef546433 Merge remote-tracking branch 'upstream/2023.03-rc' into diaspora-signature 2023-04-12 05:53:18 +00:00
Michael cd3f2f63d6 Replace the Diaspora signature upon update 2023-04-12 05:48:38 +00:00
Tobias Diekershoff 00d6e97860
Merge pull request #12988 from annando/diaspora-signature
Fix Diaspora signature creation for comments on comments
2023-04-12 07:37:35 +02:00
Tobias Diekershoff ce52764886
Merge pull request #12989 from annando/warning
Fixes "Trying to access array offset on value of type bool"
2023-04-12 07:36:45 +02:00
Tobias Diekershoff 2486383ef0
Merge pull request #12991 from annando/like-notification
Fixed check for likes in notification mail
2023-04-12 07:34:03 +02:00
Michael 504433581a Fixed check for likes in notification mail 2023-04-12 03:30:59 +00:00
Michael 8016f5c67c Fixes "Trying to access array offset on value of type bool" 2023-04-11 18:47:51 +00:00
Michael 4d4c8c634c Fix Diaspora signature creation for comments on comments 2023-04-11 18:42:13 +00:00
Tobias Diekershoff f426b73431 cleanup 2023-04-11 19:33:31 +02:00
Tobias Diekershoff 48d4a05868 regen CREDITS for the next release 2023-04-11 19:31:23 +02:00
Tobias Diekershoff ae2e8beaac
Merge pull request #12986 from annando/exception
Handle exception on "head" / missing class variable added
2023-04-11 07:40:54 +02:00
Michael d1af85b27f Handle exception on "head" / missing class variable added 2023-04-11 02:11:39 +00:00
Tobias Diekershoff 1a2c0262eb some addition 2023-04-10 12:04:33 +02:00
Tobias Diekershoff dbc3d19ff9 2023.04 CHANGELOG file 2023-04-10 11:52:40 +02:00
Philipp a74bb57298
Merge pull request #12984 from MrPetovan/bug/12983-dropzone-translation
[frio] Add Dropzone dictionary strings to l10n
2023-04-09 15:34:36 +02:00
Hypolite Petovan d5227ab653 Updated main translation file after adding new strings 2023-04-09 08:34:47 -04:00
Hypolite Petovan 4db29565de [frio] Add Dropzone dictionary strings to l10n 2023-04-09 08:24:12 -04:00
Hypolite Petovan 7a81fe1f69
Merge pull request #12982 from tobiasd/20230409-lngs
update translations for 2023.03
2023-04-09 02:23:46 -04:00
Tobias Diekershoff 5c6e4196df update translations for 2023.03 2023-04-09 07:49:58 +02:00
Philipp 135159aa2e
Merge pull request #12981 from annando/no-login
Don't perform BasicAuth on public endpoints
2023-04-08 21:32:06 +02:00
Michael 701681ea21 Don't perform BasicAuth on public endpoints 2023-04-08 19:17:57 +00:00
Hypolite Petovan c80566157e
Merge pull request #12978 from annando/issue-12977
Issue 12977: Ensure to fetch quoted posts
2023-04-08 08:54:47 -04:00
Michael c07c34a6ec Add the uri-id for the quoted post if it exists 2023-04-08 06:35:12 +00:00
Michael ab89e89b40 Issue 12977: Ensure to fetch quoted posts 2023-04-08 06:08:45 +00:00
Hypolite Petovan bb0cb0dc11
Merge pull request #12976 from annando/npf2
NPF functionality added
2023-04-06 17:17:22 -04:00
Michael 9d3ca47171 Fix spaces 2023-04-06 20:00:56 +00:00
Michael db85180d1e Fix more standards 2023-04-06 19:55:41 +00:00
Michael 2f7e22c4f7 Fix code standards 2023-04-06 19:53:52 +00:00
Hypolite Petovan b658aa9de7
Merge pull request #12975 from tobiasd/20230406-transifexconfig
Transifex config for the new client
2023-04-06 08:11:55 -04:00
Tobias Diekershoff 30d82a7d73 Transifex config for the new client 2023-04-06 10:56:59 +02:00
Michael e807da9d66 Media elements added 2023-04-05 20:08:53 +00:00
Michael 88cc788c9b Fixed NPF, new OAuth library added 2023-04-04 22:21:27 +00:00
Michael ed875a80f7 Merge remote-tracking branch 'upstream/2023.03-rc' into npf2 2023-04-03 21:46:01 +00:00
Hypolite Petovan e28179c855
Merge pull request #12973 from nupplaphil/bug/datetimeformat
Fix  DateTimeFormat issue
2023-04-03 13:49:07 -04:00
Philipp 9823b06630
Merge pull request #12971 from MrPetovan/bug/12970-FriendicaExtension
Account for null title when instantiating FriendicaExtension in Factory\Api\Mastodon\Status
2023-04-03 19:47:55 +02:00
Philipp 6dc3643409
Merge pull request #12972 from MrPetovan/bug/fatal-errors
Address a couple of fatal errors
2023-04-03 19:47:10 +02:00
Philipp 9c375e6460
Fix DateTimeFormat issue 2023-04-03 18:42:41 +02:00
Hypolite Petovan e7628af15f Ward against nonexistant item in Item::prepareBody
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1492984392
2023-04-03 00:05:40 -04:00
Hypolite Petovan c673c478ee Ward against missing plink in createSharedBlockByArray
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1492984224
- Add logging to troubleshoot the issue
2023-04-03 00:03:49 -04:00
Hypolite Petovan 888f5439d3 Account for null title when instantiating FriendicaExtension in Factory\Api\Mastodon\Status 2023-04-02 23:22:19 -04:00
Hypolite Petovan 09f9559769 Reformat Factory\Api\Mastodon\Status
- Simplify boolean operations
- Add ACLFormatter dependency to constructor
- Fix white space alignment
2023-04-02 23:21:39 -04:00
Michael 6957c3e5c8 Deactivated not working stuff 2023-04-02 19:53:58 +00:00
Hypolite Petovan f721565046
Merge pull request #12968 from nupplaphil/bug/plural
Make conversation activity singular/plural translatable
2023-04-02 15:41:47 -04:00
Philipp 808842e658
Updates messages.po 2023-04-02 11:34:44 +02:00
Philipp 47802fbebd
Make more strings plural :) 2023-04-02 11:34:38 +02:00
Philipp 4ce6721c27
Extract liker phrase in own method 2023-04-02 11:29:38 +02:00
Philipp 83212252fd
Make likes singular/plural translatable 2023-04-02 11:29:38 +02:00
Michael 63d0c88c5a Deactivate the attributes 2023-04-02 09:09:55 +00:00
Michael 0c7be66d79 No call by reference anymore 2023-04-01 23:17:39 +00:00
Hypolite Petovan 5100f9a188
Merge pull request #12967 from nupplaphil/bug/path_logger
Adapt logging & temppath creation
2023-04-01 18:12:02 -04:00
Michael 70092a1aff Reworked parser 2023-04-01 21:51:30 +00:00
Philipp 97e897a9ca
Update System.php 2023-04-01 23:00:43 +02:00
Hypolite Petovan 214ca9f301
Merge pull request #12969 from nupplaphil/feat/codecov_plugin_upgrade
Use new codecov uploader
2023-04-01 16:39:20 -04:00
Philipp a88cc1ff84
adapt parameters 2023-04-01 22:00:57 +02:00
Philipp 8a96f0fee4
Remove unnecessary code .. 2023-04-01 21:54:51 +02:00
Philipp e6a8da68cd
Use new codecov uploader 2023-04-01 21:52:02 +02:00
Philipp 1d328f4c76
Adapt logging & temppath creation 2023-04-01 20:12:02 +02:00
Philipp 5123e67f8d
Merge pull request #12966 from MrPetovan/bug/fatal-errors
Fix a couple of namespace issues
2023-04-01 16:34:57 +02:00
Philipp 8cf7743a23
Update composer.lock 2023-04-01 16:29:46 +02:00
Hypolite Petovan 508807af1c Fix namespace issue with posix function in Worker\Repository\Process
- [Composer] Add ext-posix dependency
- [Composer] Sort latest added dependencies alphabetically
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1492842672
2023-04-01 09:25:19 -04:00
Hypolite Petovan f1843c8aac Fix Register namespace confusion in Model\User
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1491861831
2023-04-01 08:07:48 -04:00
Michael 58a4469f25 Merge remote-tracking branch 'upstream/2023.03-rc' into npf2 2023-03-31 19:49:51 +00:00
Michael Vogel 7d174c1944
Merge pull request #12964 from MrPetovan/bug/warnings
Add receiver name extraction case
2023-03-31 21:26:45 +02:00
Hypolite Petovan 8e74fb1754 Add receiver name extraction case
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1445359764
2023-03-31 14:18:55 -04:00
Hypolite Petovan 5dd4bfb852
Merge pull request #12963 from annando/warnings
Fix some warnings
2023-03-31 14:15:02 -04:00
Michael 9df68da80e Fix some warnings 2023-03-31 18:01:10 +00:00
Hypolite Petovan d200503381
Merge pull request #12962 from annando/issue-12876c
Issue 12876 again: Delete the public contact as well
2023-03-31 08:56:30 -04:00
Philipp c77266de98
Merge pull request #12952 from MrPetovan/bug/fatal-errors
Address a few fatal errors
2023-03-31 14:35:37 +02:00
Michael 9122eeda9b Issue 12876 again: Delete the public contact as well 2023-03-31 03:37:48 +00:00
Hypolite Petovan 6a8dac32b6
Merge pull request #12961 from annando/issue-12876
Issue 12876: Delete all public contact related data
2023-03-30 19:07:58 -04:00
Michael 963374bb3e Ensure to only delete data of a valid contact 2023-03-30 21:48:41 +00:00
Michael 22cae5aaf2 Issue 12876: Delete all public contact related data 2023-03-30 21:23:46 +00:00
Hypolite Petovan 209489d9e1
Merge pull request #12960 from nupplaphil/feat/sigterm_cron
Add posix_kill() SIGTERM for Friendica
2023-03-30 14:55:29 -04:00
Philipp 73a9db84ee
Add posix_kill() SIGTERM for Friendica 2023-03-30 19:56:51 +02:00
Hypolite Petovan 2ac37b2d45
Merge pull request #12958 from annando/issue-12876
Issue 12876: Enhanced logging for the user removal
2023-03-29 16:42:06 -04:00
Michael a9d8f4d64a Issue 12876: Enhanced logging for the user removal 2023-03-29 20:24:16 +00:00
Hypolite Petovan bc7bf77096
Merge pull request #12956 from annando/server-blocked
Don't search for contacts on blocked or failed systems
2023-03-29 14:58:12 -04:00
Michael f0743e4e12 Allow the search for contacts on blocked servers via web 2023-03-29 18:39:21 +00:00
Michael 5f683df711 Nested blocks 2023-03-29 14:54:43 +00:00
Hypolite Petovan c9104b322c
Merge pull request #12957 from xundeenergie/optical-improvements-dropzone
Optical improvements dropzone fixes #12944
2023-03-29 08:35:26 -04:00
Jakobus Schürz 6d09bf6bec move overflow: auto to css 2023-03-29 13:44:03 +02:00
Jakobus Schürz f6ff1d0aae insert margin btw. dropzone and buttons 2023-03-29 10:47:27 +02:00
Jakobus Schürz 856fb96212 remove unused scrollbar in vivaldi
fixes #12944
fixes #12944 partly
2023-03-29 10:35:48 +02:00
Jakobus Schürz a661097a90 make font-color of dropzone less focus stealing 2023-03-29 10:31:10 +02:00
Hypolite Petovan 589a3d4cf7
Merge pull request #12949 from nupplaphil/bug/site_env_view
Disable setting fields in case we use environment variables
2023-03-28 15:06:27 -04:00
Philipp 46ad5f1e4e
Update messages.po 2023-03-28 19:43:16 +02:00
Philipp 54b7af6ccf
Fix php-lint issue 2023-03-28 19:42:16 +02:00
Michael e6ce165bb5 Use the correct ids for the search results 2023-03-28 10:06:41 +00:00
Michael 74222532dc Simply use "unsearchable" (and ensure it is updated for local users) 2023-03-28 06:34:09 +00:00
Michael 4c81a7ab91 Don't search for contacts on blocked or failed systems 2023-03-28 05:33:14 +00:00
Michael 459a7099ca Improved NPF 2023-03-28 05:25:33 +00:00
Hypolite Petovan b268fa60e7 Add explicit parameter to IHandleUserSession->setvisitorContacts
- Convert some remaining $_SESSION references to object calls
- Address part of https://github.com/friendica/friendica/issues/12486#issuecomment-1428489772
2023-03-27 21:31:54 -04:00
Hypolite Petovan 2fdf39e8b8 Skip nonexistent contacts in Pofile/Contacts
- Address part of https://github.com/friendica/friendica/issues/12486#issuecomment-1428489772
2023-03-27 21:31:54 -04:00
Hypolite Petovan 8ab5fddafd Don't try to follow remote item from non-URI or scheme-less URI
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1407679388
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1433112562
2023-03-27 21:31:54 -04:00
Hypolite Petovan 1a21f19f42 Add exception throw when contact data isn't available in Factory/Api/Mastodon/Relationship
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1445323023
- Remove default value to parameter which array keys are used in method body
2023-03-27 21:31:53 -04:00
Philipp c2d11328cc
adapt minor changers / fix tests 2023-03-27 19:36:14 +02:00
Philipp 73aaedac97
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-27 19:36:14 +02:00
Philipp 36e21cacc9
Apply suggestions from code review
Switch to `isWritable`

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-27 19:36:14 +02:00
Philipp 90a5814a7f
fix codecov 2023-03-27 19:36:14 +02:00
Philipp e072c9985e
Fixup and adding tests 2023-03-27 19:36:13 +02:00
Philipp fa9c3d40be
Add conditional help text for disabled fields 2023-03-27 19:36:13 +02:00
Philipp 76f3b07033
Disable setting fields in case we use environment variables 2023-03-27 19:36:13 +02:00
Michael c4c80ed3cc Merge remote-tracking branch 'upstream/2023.03-rc' into npf2 2023-03-27 06:42:24 +00:00
Michael aca4b2eaae Added support for "Tumblr Neue Post Format" 2023-03-27 06:40:22 +00:00
Hypolite Petovan f61fd93db0
Merge pull request #12951 from jsoref/spelling
Spelling
2023-03-26 20:58:22 -04:00
Josh Soref d39d52d4d9 Remove unused css rule 2023-03-26 20:05:16 -04:00
Josh Soref 144f715260 spelling: wizard
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 765891f070 spelling: widget
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 685f4fcddd spelling: used
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 28a9bc3d9a spelling: under
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 7c5815f14e spelling: trimmed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref f0c8576b87 spelling: title
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 5f9d324ac9 spelling: these
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 234749ca73 spelling: template
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref dabc5c3f46 spelling: successful
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 3ea555ba01 spelling: string
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref f7666fae78 spelling: signature
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 17467418a8 spelling: sidebar
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 70cabcb547 spelling: should
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 7f8454dc12 spelling: select
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 23e1c0bb71 spelling: search
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 2b819b8f8c spelling: resource
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref b2dee7c0dc spelling: remote
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 900d4f1207 spelling: relay
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref e1be88579e spelling: read
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 7e82d70449 spelling: public
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 65730ffa86 spelling: proxified
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 93c93bf69f spelling: private
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:18 -04:00
Josh Soref 1234d5b77a spelling: posts
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 04cbbcd2ff spelling: phppath
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 68a5a99d8b spelling: password
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref dc7576a13f spelling: orphan children
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 167a1c4a0d spelling: occurred
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref c4ab2e41cd spelling: obsolete
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref cdc04bf147 spelling: object
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref aba48bfc0f spelling: numeric
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 25ed92fc97 spelling: little
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 55dafd4023 spelling: link
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref d185053953 spelling: items
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 7032b679cc spelling: interval
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref a5eb8bb206 spelling: interacts
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 1a74355e39 spelling: instead
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref 8165fb8091 spelling: group
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:04:07 -04:00
Josh Soref c17e0ba9a8 spelling: flags
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 76a81425b7 spelling: fieldset
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 8b901ddf6e spelling: fediverse
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 414a4348c4 spelling: except
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref fb4c76a2b6 spelling: entry
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref a4a95d0b41 spelling: enabled
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 6be7473369 spelling: each other
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 964b7c4bd2 spelling: disallowed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 2613c3411b spelling: dfrn
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 20:03:51 -04:00
Josh Soref 1c223319b7 spelling: denies
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 672686faa5 spelling: deletes
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref ab59732c09 spelling: deactivate
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref a95d46f783 spelling: ddos
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref e0dcf163ec spelling: database
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 9fc26de628 spelling: children
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 4c41f5a2f3 spelling: catavatar
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 29fd7b9f68 spelling: canvas
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 6ff7423ec5 spelling: bridged
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 4fc503d352 spelling: authentication
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:59:11 -04:00
Josh Soref 9c86578755 spelling: associative
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:02:15 -04:00
Josh Soref e115a54bf1 spelling: announce
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:02:15 -04:00
Josh Soref 14f9e63233 spelling: and
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:02:15 -04:00
Josh Soref 2280f22088 spelling: active
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 18:02:15 -04:00
Hypolite Petovan a7fd9e3223
Merge pull request #12928 from jsoref/spelling
Spelling
2023-03-26 16:18:17 -04:00
Josh Soref c513b07dbf Remove unused css reference 2023-03-26 16:14:16 -04:00
Josh Soref 5c563d26c2 Remove unused css rule 2023-03-26 16:14:16 -04:00
Josh Soref 44423f212c Rewrite Sample Storage Addon description 2023-03-26 16:14:16 -04:00
Josh Soref 40094bbda7 Rewrite getBytesFromShorthand prose 2023-03-26 16:14:16 -04:00
Josh Soref 7183f36239 spelling: workflow
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 38cd2f6c33 spelling: with
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref ed21b11e33 spelling: width
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref bfc1b7f298 spelling: widgets
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 26d2c0d2dc spelling: whitespace
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref f3f083f4fa spelling: what
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 57d90e4c73 spelling: warning
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 2ac40d4562 spelling: visiting
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 3588e35c87 spelling: visible
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 4c6f0d0fe0 spelling: vertical
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 752d5ada99 spelling: valuable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 2d5b2a1fef spelling: utilities
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 728fb43d18 spelling: usually
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 067c1c2679 spelling: using
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 378e7365ff spelling: username
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 13cedcc1a3 spelling: user
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d13bccbcfd spelling: useful
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 1bd6cfa2f3 spelling: uploaded
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 1ebeae1420 spelling: unuseful
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref a55d4d16e8 spelling: unsupported
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 98f15de457 spelling: unregister
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d2f9593777 spelling: unknown
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 49e471c912 spelling: unfortunately
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 87854e86f3 spelling: unavailable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 2230098458 spelling: unannounce
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 4e674d98eb spelling: unable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 3f34b0633f spelling: type
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 163f2c11e3 spelling: truncate
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d7c6da0141 spelling: translation
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 54268a7eb7 spelling: translatable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref b6c074507a spelling: through
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref f71ff00d5a spelling: threading
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref c6a9e8be39 spelling: the
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 9cc37d5541 spelling: that
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 935e57c280 spelling: than
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 4206a8de3b spelling: targeting
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref fd9e5fc5c4 spelling: system
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref aa9ff41311 spelling: suppressing
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 45225c07f5 spelling: supports
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref eebfe83bfa spelling: supported
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 65dac62e48 spelling: suggest
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref ef3f4085f9 spelling: sufficient
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref b7cc6ffc9d spelling: successfully
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref f634c1a067 spelling: successful
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 3d8c7d8fa7 spelling: success
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref afad4f13e8 spelling: subscribed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 39258376e0 spelling: stylesheet
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 3fcd546151 spelling: structure
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref a0be65cbc9 spelling: specific
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 65d6e2f80f spelling: special
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 4e2ef78357 spelling: some
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 68c7634fa6 spelling: sidebar
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref a3f4fe1ee9 spelling: shorthand
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 81b04ef37a spelling: separator
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 043716f06d spelling: separate
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 5e4f83afc7 spelling: running
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 7f83434b35 spelling: rewritten
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 09fb0cd23a spelling: rewrite
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 29a14f3e13 spelling: revocation
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref fd6274904b spelling: returns
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 08e0c93f25 spelling: return
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 38049c9fee spelling: retriever
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 1d5f1f393f spelling: retrieve
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref af324f6adf spelling: response
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 2f7612d8b1 spelling: resource
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 2ab302db46 spelling: resolvable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 67bd994456 spelling: representing
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref af7d4b2c95 spelling: repository
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 8f93684cd0 spelling: relationships
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref e71ad738d9 spelling: regularly
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref f6bd4f5d79 spelling: refers
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 74ed755311 spelling: recursively
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 7dfdcf66e4 spelling: recipient
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d95bcc16f9 spelling: received
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d3e3a81256 spelling: proxify
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref be49a3a2b5 spelling: protocol
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref d0108a80d5 spelling: property
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 7d3db1456b spelling: profile
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref dc373faddd spelling: process
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 8f5f1bc0fb spelling: prioritize
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 9442910118 spelling: previous
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 131695cb11 spelling: preview
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref bd2c17402a spelling: preparations
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 91acb3d69e spelling: preceding
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 33f2e933e2 spelling: possibility
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref b25fcf9e68 spelling: possibilities
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 9735a52ac1 spelling: position
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 1608a42c57 spelling: policy
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref b30018d748 spelling: plural
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 88e0725625 spelling: permission
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 5566a2f14c spelling: perform
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 39a5bfc0c0 spelling: parameter
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 6206c7d2e1 spelling: override
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 0b452bcc63 spelling: overridden
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref b7811f7423 spelling: outputting
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref bada3b09f3 spelling: outputs
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 82d4d329be spelling: original
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:16 -04:00
Josh Soref 46cd39fb34 spelling: one
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 9a2dd61300 spelling: omitted
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 6273f5e480 spelling: occurring
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref a8402109b1 spelling: occurred
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 57f4b5fc0a spelling: notify
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref a96c07025e spelling: notification
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 6f0364d6bf spelling: nonexistent
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 66332394fb spelling: not be
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 3b173f2007 spelling: nonexistent
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 8fe548d8e1 spelling: nonetheless
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 3218db1f10 spelling: needn't
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 03048c9898 spelling: necessary
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 76c006d560 spelling: names
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 5bc6ec1f40 spelling: multiple
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 2bb41167f3 spelling: mismatches
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 4894001931 spelling: miscellaneous
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 64abe97904 spelling: metallic
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 821b0acfba spelling: messages
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 923ce1f742 spelling: mergeable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref abea73d6f1 spelling: meaningful
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 2172d44c33 spelling: maybe
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref aaff886c55 spelling: marked
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref abff467a73 spelling: marital
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 927a8c00c0 spelling: mailing
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 58b55ba2c4 spelling: likewise
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 24bc30003d spelling: lighttpd
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref fe49ead674 spelling: length
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 641a0065fa spelling: legacy
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref b1ae2eee61 spelling: language
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:14:15 -04:00
Josh Soref 594cf63a16 spelling: javascript
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:13:07 -04:00
Josh Soref da34800728 spelling: into
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:11:27 -04:00
Josh Soref 035f3fed25 spelling: intended
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref cf2c1f8f81 spelling: instantiation
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 592b47bcc3 spelling: inheriting
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 7ba6d61728 spelling: inherit
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 9d26a054d5 spelling: incoming
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 9394b1f83c spelling: including
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 22d6a82796 spelling: improvements
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 64b40254b0 spelling: importer
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 4dd85e3f3c spelling: image
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref c7b8de4fe7 spelling: ignore
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 5b7ef2ff3c spelling: identity
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 6c5dfbf8a9 spelling: htaccess
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 8038c1b04f spelling: however
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 0da14c11c6 spelling: highly
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 493e417503 spelling: highlighting
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 66a1e505e3 spelling: hierarchical
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref de7f9b380b spelling: height
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref c8d5b6e0c6 spelling: group
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f87eeb2f28 spelling: group id
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 6b849c4045 spelling: given
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref c95360ff87 spelling: github
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 3f6549d9a8 spelling: forums
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 044bc8ddac spelling: formatter
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 532403ad15 spelling: formatted
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 23b7bbec9f spelling: foreign
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 60d9d7f5e0 spelling: occurrences
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f6fda5840d spelling: failure
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref d6eb08dd89 spelling: extension
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref acb85feafb spelling: explicit
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref fbc6832978 spelling: explanations
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 1087e36a63 spelling: expiry
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 9369691713 spelling: existence
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f9572d9df7 spelling: exception
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 3d21742fbb spelling: everything
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 010d7fb723 spelling: entity
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 3147cb22c0 spelling: entities
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref ca56cf3dab spelling: enhancements
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f5a1df9201 spelling: enhanced
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref fad915cd29 spelling: endpoints
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f26d2d6eec spelling: encryption
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 23f2bd1a2d spelling: encouraged
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref ee3fda57c3 spelling: encounters
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 4676ab733f spelling: encoding
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref a20cb0fe98 spelling: encapsulated
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref aadaea7566 spelling: embed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref a0680e01ea spelling: embarrassed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f8b9b15b5f spelling: element
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 4139134cfd spelling: effectiveness
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref c6d1c01426 spelling: dynamically
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 02391b4f8d spelling: domain
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref ab4689e1b6 spelling: does
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 52a25ce618 spelling: documentation
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 4f332e3b52 spelling: discover
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 1fdd0f9152 spelling: dimensions
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref a83db24724 spelling: different
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 6c27117444 spelling: diaspora
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 17fa773233 spelling: determines
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f1a33174ac spelling: desktop
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 03e03d47aa spelling: dependencies
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 64c7f35aa7 spelling: delimiter
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref f231e5b623 spelling: default
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 435321caa8 spelling: decide
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 53aba7b37e spelling: days
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref 61fafed83c spelling: database
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:23 -04:00
Josh Soref d6d102794f spelling: cygwin
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 065c40e9cb spelling: customization
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref e4599336ef spelling: customizable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 22b71f6532 spelling: cursor
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 7e28db4523 spelling: count
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 57f77f4124 spelling: correct
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref c272a93ee3 spelling: contrast
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 4e6a2b1761 spelling: content
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 61efc5955b spelling: containing
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref be7329bdc1 spelling: contacts
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 7f4b6ed7b3 spelling: construct
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 3ef88a46ad spelling: connector
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 914db9440b spelling: connection
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref e038d82efe spelling: configuration
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 33986ffa0e spelling: concatenated
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref afb6249d70 spelling: composer
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 902f3d9bc6 spelling: completion
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 7a84be3c2f spelling: compatibility
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 72cc354214 spelling: community
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 0e4048ef71 spelling: communication
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 11f397f74d spelling: comments
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref acb1e71082 spelling: comment
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref c754ac9cc5 spelling: colors
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 25a352f66a spelling: close
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 423e60174e spelling: chosen
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 6f23be2a63 spelling: checks
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 0e2a275cc5 spelling: character
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 269c602e21 spelling: certbot
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref e02c475c9e spelling: calendar
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 9581b05603 spelling: cached
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref d553aeabbe spelling: button
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref aca15b59b6 spelling: bugfixes
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 1d080d4182 spelling: browser
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 56fc1a9fcd spelling: bottom
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 448c0b5bc9 spelling: bootstrap
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 48427bb20e spelling: blocked
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 459f28776d spelling: birthdays
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref fcc34f052b spelling: binary
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref aee833b60f spelling: beginning
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 8f09d81c9f spelling: available
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 739ca603bc spelling: author
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref e884cd19b0 spelling: authenticated
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref a913952035 spelling: attribute
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref c7b358f446 spelling: attachment
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 2da2a38d48 spelling: applications
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 955f86d3c5 spelling: another
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref e69ae13880 spelling: announce
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref abbea6f002 spelling: and
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 20fdae12e0 spelling: ambiguity
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref ad1616675e spelling: if
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 980b4ec273 spelling: already
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref ea0955c4e0 spelling: allows
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref ec2e313cfd spelling: allow
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 1281f118bb spelling: algorithm
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 6e105fbec1 spelling: advanced
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref f83fb1deb7 spelling: addresses
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 01e1e9b676 spelling: additional
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 29e74b3061 spelling: actor
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 07862b8a88 spelling: activity
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref 1ac0b8762e spelling: acquire
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Josh Soref c65e8d03b5 spelling: abandoned
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-26 16:03:22 -04:00
Hypolite Petovan 368234f5e0
Merge pull request #12950 from mkljczk/dislikes
Return `disliked` in Mastodon API
2023-03-26 15:57:46 -04:00
marcin mikołajczak ddf5e0641a Move
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-03-26 21:54:05 +02:00
marcin mikołajczak 154f91c6c1 Apply suggestions
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-03-26 21:47:47 +02:00
marcin mikołajczak bdafe063d8 Return disliked in Mastodon API
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-03-26 21:47:44 +02:00
Hypolite Petovan 87f8e7dcca
Merge pull request #12947 from bkil/doc-install-unraid-systemd
Documentation: installation on Unraid, Ubuntu 22.04 and systemd, troubleshooting, link updates
2023-03-25 12:09:14 -04:00
bkil 0ed26d6258 doc/Install.md: troubleshooting: Diaspora support, DB migration timeout 2023-03-25 14:37:18 +01:00
bkil 60a719cffa doc/Install.md: more troubleshooting config keys for previous entries 2023-03-25 14:34:26 +01:00
bkil 10687244be doc/Install.md: link to guides for Ubuntu 22.04, systemd and Unraid 2023-03-25 14:31:11 +01:00
bkil c10c5495be doc/Improve-Performance.md: replace old links with updated GitHub ones 2023-03-25 14:30:29 +01:00
Hypolite Petovan 493e4ed9fb
Merge pull request #12946 from friendica/api-permission
Set different permissions for comments via API
2023-03-25 07:35:28 -04:00
Michael 8a55ce2415 Set different permissions for comments via API 2023-03-24 20:39:11 +00:00
Hypolite Petovan 08d1e484e3
Merge pull request #12941 from xundeenergie/attend-buttons
Attend buttons improvement
2023-03-24 08:56:13 -04:00
Hypolite Petovan e35a6a7535
Merge pull request #12942 from annando/issue-11513
Issue 11513: Non public replies on public posts should now work
2023-03-24 08:55:06 -04:00
Jakobus Schürz a3aa34c21d changes in case of code-review 2023-03-24 08:56:30 +01:00
xundeenergie 95e1a43814
Update src/App/Page.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-24 01:16:56 +01:00
Jakobus Schürz 20873323ba remove unneeded "false" 2023-03-23 23:27:13 +01:00
Michael df6cda8a4d Issue 11513: Non public replies on public posts should now work 2023-03-23 22:25:48 +00:00
Jakobus Schürz 33a7cd107e improve attend-buttons for events 2023-03-23 23:23:23 +01:00
Jakobus Schürz 5277c483fe change or to and 2023-03-23 20:20:13 +01:00
Jakobus Schürz be84573d7c fix activate share-button on nonfollowers
I don't know, if this really resolves the problem... but it looks like,
it does.

fixes #12923
2023-03-23 20:20:13 +01:00
Hypolite Petovan 60c6ab08c1
Merge pull request #12938 from xundeenergie/fix-dropzone-spacing
spacing in texara is 10px in dropzone only 0px
2023-03-23 15:14:08 -04:00
Jakobus Schürz 6edc91e7f3 spacing in texara is 10px in dropzone only 0px 2023-03-23 19:31:58 +01:00
Hypolite Petovan 421a6296c2
Merge pull request #12936 from loma-one/patch-6
Modify dropzones css: Correct spacing Text input Comments
2023-03-23 06:04:36 -04:00
Hypolite Petovan ed532ebaa8
Merge pull request #12937 from loma-one/patch-7
Modify dropzones min css: Correct spacing Text input Comments
2023-03-23 06:04:20 -04:00
Hypolite Petovan 6394bd91c0
Merge pull request #12935 from HankG/fix-sending-dms-with-oauth-user
Fix sending dms with oauth user
2023-03-23 06:02:08 -04:00
loma-one efa6a44f7e
Modify dropzones min css: Correct spacing Text input Comments
With the last change to the CSS, https://github.com/friendica/friendica/pull/12933 was overwritten.
2023-03-23 07:04:42 +01:00
loma-one 72c1399922
Modify dropzones css: Correct spacing Text input Comments
With the last change to the CSS, https://github.com/friendica/friendica/pull/12932 was overwritten.
2023-03-23 07:01:53 +01:00
Hank G cc86a54c80
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-22 21:35:44 -04:00
Hypolite Petovan 2eb3f86255
Merge pull request #12934 from annando/tooltips
Don't show permissions from permissiongroups on comments
2023-03-22 20:44:34 -04:00
Hypolite Petovan f62cebccfe
Merge pull request #12931 from xundeenergie/dropzone-css
Modify dropzones css to take it into account of themes fixes #12924
2023-03-22 20:42:48 -04:00
Hank Grabowski 1c4fbc9fdf Fix other calls to Mail::send to provide ID 2023-03-22 18:25:32 -04:00
Hank Grabowski 3d4e11045a Fix type and name on Mail::send sender ID argument 2023-03-22 18:25:13 -04:00
Hank Grabowski 0a5e3c75dc Fix Twitter NewDM API w/OAuth by passing in UID not query session 2023-03-22 18:18:49 -04:00
Michael 6a1f7c47b3 Don't show permissions from permissiongroups on comments 2023-03-22 21:43:03 +00:00
Jakobus Schürz fafa804cf0 fix indentation and remove comment 2023-03-22 21:42:52 +01:00
Jakobus Schürz 7e989a03b2 make dropzone css configureable with variables
and set a border-radius for dropzone to reflect theme better
2023-03-22 21:42:52 +01:00
Jakobus Schürz fa45da6fd1 make dropzone same color as rest (fixes #12924) 2023-03-22 21:42:52 +01:00
Jakobus Schürz 2a5e464b59 make dropzone same color as rest (fixes #12924) 2023-03-22 21:42:51 +01:00
Hypolite Petovan b4cbc6eacc
Merge pull request #12933 from loma-one/patch-5
Modify dropzones min css: Correct spacing Text input Comments
2023-03-22 14:44:54 -04:00
loma-one 82da2ee802
Modify dropzones css: Correct spacing Text input Comments
The spacing on the left is always specified with padding: 10px 10px; in the other editors. The text input does not look so nice at the moment.
2023-03-22 17:08:26 +01:00
Hypolite Petovan 5df4b468a7
Merge pull request #12932 from loma-one/patch-4
Modify dropzones css: Correct spacing Text input Comments
2023-03-22 11:03:57 -04:00
loma-one 6bb683e794
Correct spacing Text input Comments
The spacing on the left is always specified with padding: 10px 10px; in the other editors. The text input does not look so nice at the moment.
2023-03-22 14:25:30 +01:00
Hypolite Petovan cf0302b3c1
Merge pull request #12925 from annando/issue-12842
Issue 12842: Use BBCode elements that are Markdown agnostic
2023-03-22 09:14:01 -04:00
Hypolite Petovan 9a5e4a93fe
Merge pull request #12926 from annando/issue-11535
Issue 11535: Automatically open and close the registration
2023-03-22 09:08:01 -04:00
Philipp b481f37e31
Merge pull request #12927 from annando/warning
Handles warning: Undefined array key "gravity"
2023-03-22 06:44:47 +01:00
Michael a3438524e9 Handles warning: Undefined array key "gravity" 2023-03-22 05:15:29 +00:00
Michael aef8e90f8e Tests fixed 2023-03-22 03:49:40 +00:00
Michael 72952d2c92 Issue 11535: Automatically open and close the registration 2023-03-21 21:44:26 +00:00
Michael 9f11d189c8 Issue 12842: Use BBCode elements that are Markdown agnostic 2023-03-21 20:32:34 +00:00
Hypolite Petovan a63dc7a3d8
Merge pull request #12921 from HankG/add-visibility-data-to-mastodon-status
Add visibility to user's statuses in Mastodon API
2023-03-21 15:04:13 -04:00
Hank Grabowski 60f2c67b66 Change visibility data on Mastodon posts to be array of IDs 2023-03-21 13:15:42 -04:00
Hypolite Petovan 649cd58daa
Merge pull request #12922 from annando/nomad-version
Fetch platform and version of nomad implementations
2023-03-21 08:34:06 -04:00
Michael 5a0ac6e920 Merge remote-tracking branch 'upstream/2023.03-rc' into nomad-version 2023-03-21 06:43:21 +00:00
Michael 7728232737 Unneeded variable removed 2023-03-21 06:42:29 +00:00
Philipp fd5914011c
Merge pull request #12920 from annando/issue-12701
Issue 12701: Fix Markdown problems with Quotes
2023-03-21 07:23:37 +01:00
Michael afe1a59345 Fetch platform and version of nomad implementations 2023-03-21 05:36:47 +00:00
Michael 7e6ba0b4d2 Tests added 2023-03-21 04:20:03 +00:00
Hypolite Petovan 5f52981255
Merge pull request #12919 from annando/html-media-update
Delete the attached HTML media on content updates
2023-03-20 21:03:12 -04:00
Hank Grabowski 97585083d9 Add visibility to user's statuses in Mastodon API
- and remove view count object if not user's status
2023-03-20 17:42:08 -04:00
Michael 0f9099dec6 Issue 12701: Fix Markdown problems with Quotes 2023-03-20 21:33:39 +00:00
Michael 9c8ae42c04 Delete the attached HTML media on content updates 2023-03-20 14:19:51 +00:00
Hypolite Petovan 0b1f67f5b3
Merge pull request #12917 from annando/remove-tab
Remove tabs if followed by new lines (or vice versa)
2023-03-20 07:09:51 -04:00
Michael Vogel d3e085bd5a
Merge pull request #12916 from nupplaphil/feat/reduce_logging_noise
Adapt loglevels to reduce log-noise
2023-03-20 08:52:16 +01:00
Michael 55912d1c75 Test added 2023-03-20 07:03:17 +00:00
Philipp d8792c9c11
Update src/Model/Item.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-20 07:04:59 +01:00
Michael 3a73df7007 Fix tests 2023-03-20 04:25:05 +00:00
Michael b7288b2bfd Merge remote-tracking branch 'upstream/2023.03-rc' into remove-tab 2023-03-20 04:16:52 +00:00
Michael f65c71a25b Restructured replacements 2023-03-20 04:10:35 +00:00
Hypolite Petovan 7f4d399fc8
Merge pull request #12883 from xundeenergie/easy-image-attach
[frio] Easy image attach
2023-03-19 19:10:53 -04:00
Michael 12d2de2c93 Remove tabs if followed by new lines (or vice versa) 2023-03-19 20:16:41 +00:00
Philipp 88e339a43d
Adapt loglevels to reduce log-noise 2023-03-19 19:33:03 +01:00
Jakobus Schürz cf63cbde72 remove removelink (it is not useful at the moment) 2023-03-19 19:14:10 +01:00
Jakobus Schürz 5040bd9a1a change response-handling (code-review) 2023-03-19 18:52:46 +01:00
Jakobus Schürz 57a7a3d6d8 change responsehandling to be ready for PR #12892 2023-03-19 18:52:46 +01:00
Jakobus Schürz faa524faec revert changes, remove line (from code-review) 2023-03-19 18:52:46 +01:00
Jakobus Schürz 399ee74e05 revert to original (no changes needed anymore) 2023-03-19 18:52:46 +01:00
Jakobus Schürz 8a3361dfbe remove upload-url parameter 2023-03-19 18:52:46 +01:00
Jakobus Schürz 6436d2cd8a changes in case of code-review 2023-03-19 18:52:46 +01:00
Jakobus Schürz fba33d3afc add options allowedFiles and more 2023-03-19 18:52:46 +01:00
Jakobus Schürz c01f7f98ae reinsert Friendica\DI (accidentially removed before) 2023-03-19 18:52:46 +01:00
Jakobus Schürz 920dcca263 render max_imagesize in header.tpl
so it is reachable general from the whole website, and the dropzone-factory can use
it also to create dropzones from modal.js
2023-03-19 18:52:46 +01:00
Jakobus Schürz 16f065e260 changes in case of codereview 2023-03-19 18:52:45 +01:00
Jakobus Schürz 0cc2e1c22a apply changes from review 2023-03-19 18:52:45 +01:00
Jakobus Schürz e62265b234 make errormessages visible 2023-03-19 18:52:45 +01:00
Jakobus Schürz f876a053df add dropzone also onclick on comment-fake-form 2023-03-19 18:52:45 +01:00
Jakobus Schürz 512e5900e6 use round instead of floor to make imagesize <1M possible 2023-03-19 18:52:45 +01:00
Jakobus Schürz 1a1a1246b6 attach dropzone only when opening comment 2023-03-19 18:52:45 +01:00
Jakobus Schürz d39781023e create factory 2023-03-19 18:52:45 +01:00
Jakobus Schürz ada11a2c67 create factory for dropzones 2023-03-19 18:52:45 +01:00
Jakobus Schürz 39f7660a1d fix getting bytes from shorthand in php 2023-03-19 18:52:45 +01:00
Jakobus Schürz 721c065a44 fix editing in modal-jot
and add also timeout before removing images from dropzone
2023-03-19 18:52:45 +01:00
Jakobus Schürz 64066349aa add timeout before remove images from dropzone 2023-03-19 18:52:45 +01:00
Jakobus Schürz 2403932a83 improve image-upload
* create dropzone for editing in jot-modal
* customize css for dropzone to make it more beautiful (smaller
  margin/paddings...)
* change position of dropzone-element dircetly to textarea, so button
  for upload is small and under textarea (it's more clear)
* remove previews after upload. this shows the upload-progress, but
  preview is not needed after upload. you can't do anything with the
  preview, and dialog gets too big. You see successful upload, when
  bb-code link to image is inserted on cursor-position in textarea
2023-03-19 18:52:45 +01:00
Jakobus Schürz 1e030d594c remove unneeded chars ("css") from first html-tag 2023-03-19 18:52:45 +01:00
Jakobus Schürz 3688196859 create workaround for not working php
Strings:getBytesFromShorthand

i created a js-function which converts integer, k, m and g to MB
Just remove this code, when we found out, why Strings is in some files
not working.
2023-03-19 18:52:45 +01:00
Jakobus Schürz 00ae7d0f59 make dropzone work on editing postings/Comments 2023-03-19 18:52:45 +01:00
Jakobus Schürz 8242d1c72b remove console.log 2023-03-19 18:52:45 +01:00
Jakob Schürz 177bf9b67b fix missing DI 2023-03-19 18:52:45 +01:00
Jakobus Schürz bd0bc943ad fix indentation 2023-03-19 18:52:45 +01:00
Jakobus Schürz a6a0507a89 small modifications to equalize the scripts 2023-03-19 18:52:45 +01:00
Jakobus Schürz be2afac60d take maxFilesize from systemsettings
* does not work everywhere...
2023-03-19 18:52:45 +01:00
Jakobus Schürz 359ad6ff5a fix a warning and suggestions for pullrequest
* fix indentation to tabs
* remove unneeded calls for dropzone.min.js and dropzone.min.css
* removed debug output
2023-03-19 18:52:45 +01:00
Jakobus Schürz 6a7f17559e fix composer dropzone 2023-03-19 18:52:45 +01:00
Jakobus Schürz 5107d4418e add enyo/dropzone 2023-03-19 18:52:45 +01:00
Jakobus Schürz 00c7e989b2 add missing css 2023-03-19 18:52:45 +01:00
Jakobus Schürz 3bb801c2c1 fix dropzone class in template 2023-03-19 18:52:45 +01:00
Jakobus Schürz 29d7b4ef24 fix path for js and css loading 2023-03-19 18:52:45 +01:00
Michael Vogel 9782c8e2ad
Merge pull request #12915 from nupplaphil/bug/baseurl_profile
Force correct string casting for BaseUrl
2023-03-19 12:10:51 +01:00
Philipp 29e4f0ea9a
Force correct string casting for BaseUrl 2023-03-19 11:21:17 +01:00
Philipp c95e961683
Merge pull request #12892 from MrPetovan/bug/12888-media-upload-return
Prevent template generation in media/[photo|attachment]/upload output
2023-03-19 08:28:59 +01:00
Philipp 5062e174b7
Merge pull request #12914 from MrPetovan/bug/12842-bbcode-html-list
Rework new lines around list BBCode
2023-03-19 08:27:31 +01:00
Philipp b8eea3f1d8
Merge pull request #12898 from MrPetovan/bug/12792-createSession-return
Ensure FactorySession->create returns an object no matter what
2023-03-19 08:26:05 +01:00
Hypolite Petovan 820c3923a7 Fix wrong assertion in DBKeyValueStorageTest 2023-03-18 23:36:07 -04:00
Hypolite Petovan 241a512589 Ensure FactorySession->create returns an object no matter what
- Rename redundant method name createSession
- Add exception logging
2023-03-18 23:36:07 -04:00
Hypolite Petovan 1ce438e964 Rework new lines around list BBCode
- Remove blanket new lines remover in HTML::toBBCode
- Add test to ensure the commutativity of the markups
2023-03-18 23:35:51 -04:00
Hypolite Petovan 200bdb55ba Normalize [ul] and [ol] BBCode output to <ul> and <ol> HTML tags 2023-03-18 23:35:51 -04:00
Hypolite Petovan c3cecf3d28 Provide corresponding default value for $try_oembed in BBCodeTest->testConvert
- Add documentation about system.remove_multiplicated_lines expected value
2023-03-18 23:35:51 -04:00
Hypolite Petovan 67c0c279aa Remove extra whitespace in Content\Text\HTMLTest 2023-03-18 23:35:51 -04:00
Hypolite Petovan 8bda2a2188
Merge pull request #12913 from HankG/fix-mastodon-api-image-posts-with-empty-status
Fix posting/editing empty text image posts through Mastodon API
2023-03-18 23:26:38 -04:00
Hank Grabowski 4366737eb8 Fix posting/editing empty text image posts through Mastodon API 2023-03-18 23:06:13 -04:00
Hypolite Petovan d886a53af0
Merge pull request #12912 from HankG/fix-cant-remove-attachment
Fix cant remove attachment
2023-03-18 22:17:14 -04:00
Hank Grabowski 6db244f476 Fix over-aggressive lowercasing of url, title, image, and preview fields 2023-03-18 21:52:53 -04:00
Hank Grabowski 261975afe9 Delete previous post version's link attachments before posting the one from the current update. 2023-03-18 21:35:38 -04:00
Hypolite Petovan 34b575233a
Merge pull request #12910 from annando/delete-blocked
Blocked servers can now be deleted
2023-03-18 18:10:06 -04:00
Michael 04b2d2339e Improved config description / use the delete command 2023-03-18 21:34:15 +00:00
Michael a151cf450a Blocked servers can now be deleted 2023-03-18 19:41:41 +00:00
Hypolite Petovan bbb5440144
Merge pull request #12909 from annando/server-detection
Simplified Nomad detection
2023-03-18 08:59:29 -04:00
Michael eab4d6cbb4 Simplified Nomad detection 2023-03-18 12:27:49 +00:00
Hypolite Petovan aae9ba18d2
Merge pull request #12908 from annando/server-detection
Takahē and Wildebeest added, Nomad detection improved
2023-03-18 08:04:03 -04:00
Michael 9c1516feb2 Takahē and Wildebeest added, Nomad detection improved 2023-03-18 11:43:29 +00:00
Hypolite Petovan 759e76cae6
Merge pull request #12907 from annando/issue-12863
Issue 12863: Convert Hubzilla mentions to Friendica mentions
2023-03-18 07:24:12 -04:00
Hypolite Petovan cd8b2fe24e
Merge pull request #12906 from annando/issue-12870
Issue 12870: Support for zmg elements from Hubzilla
2023-03-18 07:22:28 -04:00
Michael efb2b47dc9 Issue 12863: Convert Hubzilla mentions to Friendica mentions 2023-03-18 07:59:47 +00:00
Michael e73d1e13c2 Issue 12870: Support for zmg elements from Hubzilla 2023-03-18 07:05:38 +00:00
Tobias Diekershoff 7eed9e1818
Merge pull request #12905 from annando/issue-12858
Issue 12858: Peertube avatars can now be fetched
2023-03-18 07:55:19 +01:00
Michael 1a98961c3c Issue 12858: Peertube avatars can now be fetched 2023-03-18 06:41:35 +00:00
Hypolite Petovan 5e6c9fcb30
Merge pull request #12904 from HankG/fix-paging-on-mastodon-timeline-and-status-endpoints
Fix paging on mastodon timeline and status endpoints
2023-03-17 22:38:01 -04:00
Hank Grabowski 7f4f44a3a8 Fix paging on List and Public timelines honoring order type 2023-03-17 22:13:43 -04:00
Hank Grabowski e969ecd351 Add paging to Account/Statuses Mastodon endpoint 2023-03-17 22:13:17 -04:00
Hypolite Petovan 5d92083a6f
Merge pull request #12903 from HankG/fix-mastodon-instance-v2-structure
Fix Mastodon InstanceV2 structure needs image max size under mediaAttachment
2023-03-17 16:59:27 -04:00
Hank Grabowski c609affeca Fix Mastodon InstanceV2 structure needs image max size under mediaAttachment 2023-03-17 15:56:42 -04:00
Hypolite Petovan 6e94220642
Merge pull request #12900 from annando/robust-html
HTML: Use paragraphs instead of double line breaks
2023-03-17 14:25:33 -04:00
Michael 92a04baf62 Tests should now work 2023-03-17 18:08:37 +00:00
Michael e55f38cc98 Fix test 2023-03-17 18:01:51 +00:00
Michael d058275723 Some tests added / ensure to have paragraphs 2023-03-17 17:40:22 +00:00
Michael 84ec9b0814 Restore tests 2023-03-17 12:43:23 +00:00
Michael d4aec5cbd3 Revert tests 2023-03-17 12:41:26 +00:00
Michael dfaf3eee6b Only add paragraphs if needed 2023-03-17 12:33:13 +00:00
Michael Vogel 72eb1ef09c
Merge pull request #12899 from MrPetovan/bug/12846-bbcode-help
Fix custom CSS examples in BBCode doc
2023-03-17 08:49:32 +01:00
Michael 1a15951cae Tests 2023-03-17 07:04:53 +00:00
Michael 2a0ad0c482 Some more test fixed 2023-03-17 06:58:21 +00:00
Michael eee65b31fd Fix tests 2023-03-17 06:55:38 +00:00
Michael 1146fca2cd HTML: Use paragraphs instead of double line breaks 2023-03-17 06:10:56 +00:00
Hypolite Petovan e5903e0df0 Fix custom CSS examples in BBCode doc 2023-03-16 21:17:42 -04:00
Hypolite Petovan 54afccc852 Prevent template generation in media/attachment/upload output 2023-03-16 21:14:07 -04:00
Hypolite Petovan c62762297c Prevent template generation in media/photo/upload output 2023-03-16 21:14:07 -04:00
Hypolite Petovan a0f3a49238
Merge pull request #12895 from HankG/mastodon-status-edit-fix-deleting-all-images
Fix being able to remove all images from post through Mastodon editing
2023-03-16 16:41:09 -04:00
Hypolite Petovan 1950776142
Merge pull request #12896 from HankG/mastodon-status-edit-fix-link-preview-changing
Fix being able to change/remove attached links.
2023-03-16 16:39:18 -04:00
Hank Grabowski 02a87d9f33 Fix being able to change/remove attached links. 2023-03-16 14:34:39 -04:00
Hank Grabowski e7058ffe8c Fix being able to remove all images from post through Mastodon edit endpoint 2023-03-16 14:01:36 -04:00
Hypolite Petovan b3d779ef7b
Merge pull request #12894 from HankG/mastodon-status-edit-fix-tag-and-mentions
Fix tag and mention updates in Mastodon status edit endpoint
2023-03-16 11:55:05 -04:00
Hank Grabowski bb2f678d6b Fix tag and mention updates in Mastodon status edit endpoint 2023-03-16 10:53:13 -04:00
Philipp 92c56f9cd0
Merge pull request #12893 from annando/remove-media
Improved handling of images with links
2023-03-16 13:54:55 +01:00
Michael 453011baa7 Merge remote-tracking branch 'upstream/2023.03-rc' into remove-media 2023-03-16 05:01:50 +00:00
Michael 31693c2d1f Separation between picture links 2023-03-16 05:01:05 +00:00
Hypolite Petovan bcec7306a5
Merge pull request #12891 from annando/system-variables
More reliable system variables
2023-03-15 18:37:38 -04:00
Michael 54d5f2df43 More reliable system variables 2023-03-15 21:16:21 +00:00
Michael eefebaff49 Improved handling of images with links 2023-03-15 21:15:10 +00:00
Hypolite Petovan 705e86f8c3
Merge pull request #12877 from xundeenergie/like-buttons-improvement
[frio] Like buttons improvement
2023-03-15 10:22:23 -04:00
Jakobus Schürz e651769134 change/remove comments in code 2023-03-15 14:37:54 +01:00
Hypolite Petovan a41e2eb50b
Merge pull request #12854 from annando/api-edit
Adding and removing of pictures via API is now possible
2023-03-15 06:59:44 -04:00
Michael 7dd9972b85 Changes because of code review 2023-03-15 03:55:39 +00:00
Michael e3047794f9 Merge remote-tracking branch 'upstream/2023.03-rc' into api-edit 2023-03-14 21:46:24 +00:00
Hypolite Petovan 14647acce2
Merge pull request #12889 from annando/api-edited-at
"edited_at" must only be displayed when the entry had been updated
2023-03-14 14:04:36 -04:00
Jakobus Schürz f5f2076a2d remove unused selector
was there for historical reasons... :/
2023-03-14 17:33:51 +01:00
Jakobus Schürz c540b9275c remove own readme 2023-03-14 17:33:51 +01:00
Jakobus Schürz e2625592b7 update translation-files 2023-03-14 17:33:49 +01:00
Jakobus Schürz 0dffe65d64 fix indetation and removed some calls. 2023-03-14 17:32:11 +01:00
xundeenergie d6fc00c743 Update view/theme/frio/js/theme.js
removed it.

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-14 17:32:11 +01:00
Jakobus Schürz c94b586543 reduce literal html in javascript-code 2023-03-14 17:32:11 +01:00
Jakobus Schürz f8018f8dfe make errormessages modular and better 2023-03-14 17:32:11 +01:00
Jakobus Schürz 88f21c5892 move forgotten rotator from template 2023-03-14 17:32:11 +01:00
Jakobus Schürz 9140914a24 make erromessages translateable 2023-03-14 17:32:11 +01:00
Jakobus Schürz 7daecf6741 remove rotator from templates 2023-03-14 17:32:11 +01:00
Jakobus Schürz bd2cd8dd4c remove reminder for deleting rotators in tpl 2023-03-14 17:32:11 +01:00
xundeenergie 225e2124cc Update view/theme/frio/js/theme.js
in this case, the img[id^=waitfor... .show() shows existing image-containers. All of them which exist.

Because there can be more than one. And this filter just shows them.
adding another rotator with your suggestion can lead to 2 or more rotators on a button.

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-14 17:32:11 +01:00
Jakobus Schürz 82e8b5b76d update README 2023-03-14 17:32:11 +01:00
Jakobus Schürz 4885841c16 add personal README 2023-03-14 17:32:11 +01:00
Jakobus Schürz 2219978788 reduce indentation 2023-03-14 17:32:11 +01:00
Jakobus Schürz 96c3321bb8 improve optical feedback with rotator on buttons
* functional rotator with feedback from ajax-request for activity
    on like, dislike, share and shareMenu button in wide-screen and media-screen
2023-03-14 17:32:11 +01:00
Jakobus Schürz 660a9cf285 show rotator on button 2023-03-14 17:32:11 +01:00
Jakobus Schürz a1b9f27545 make indentation as tabs 2023-03-14 17:32:11 +01:00
Jakobus Schürz 4244670f1c simplify code, remove debug output 2023-03-14 17:32:11 +01:00
Jakobus Schürz f8fc9c1e8b improve like/share buttons
change the button only if it could send its request successfully to the server.

fixes:
* disrupting a video on liking or sharing
* timeline jumps around somewhere else, when you like or share a
  posting/comment, and you can not find back.
2023-03-14 17:32:11 +01:00
Michael 7382c3bd86 Set the field to "null" 2023-03-14 16:18:16 +00:00
Michael 6ffecd2b74 "edited_at" must only be displayed when the entry had been updated 2023-03-14 16:07:54 +00:00
Tobias Diekershoff bb835848d4
Merge pull request #12886 from annando/auto-attach
Option to automatically add links as attachment via API
2023-03-14 08:18:21 +01:00
Michael 4e070f65c7 Option to automatically add links as attachment via API 2023-03-13 21:30:20 +00:00
Tobias Diekershoff c389b48a9f bump version to 2023.03-rc 2023-03-13 21:22:33 +01:00
Hypolite Petovan d951d49193
Merge pull request #12885 from xundeenergie/unannoy-file-browser
move upload-button in filebrowser above previews
2023-03-13 08:48:44 -04:00
Hypolite Petovan 84dfda1ccd
Merge pull request #12884 from annando/no-attachData
The function "getAttachedData" is replaced by a simplified functionality
2023-03-13 08:29:07 -04:00
Jakobus Schürz 95cb66b6bf move upload-button in filebrowser above previews
its annoying, when you open filebrowser to upload an image or file, and
the button moves away under your finger/cursor, in case of loading
preview images slower than the form itself.

just change position of button (class="upload") and browser itself
(class="media") disannoys the behaviour.
2023-03-13 10:48:16 +01:00
Michael 59c436b442 Merge remote-tracking branch 'upstream/develop' into api-edit 2023-03-13 05:33:32 +00:00
Michael Vogel afa040dacd
Merge pull request #12879 from MrPetovan/bug/12871-process-host
[Database 1517] Increase the size of the process.hostname field
2023-03-13 06:22:59 +01:00
Michael Vogel 4273c6d130
Merge pull request #12882 from MrPetovan/bug/baseurl-no-string
Cast the base URL as string in /friendica/json
2023-03-13 06:21:49 +01:00
Michael 2a752b37b1 The function "getAttachedData" is replaced by a simplified functionality 2023-03-13 05:04:55 +00:00
Hypolite Petovan 30e1851747 Cast the base URL as string in /friendica/json
- This was causing the data.url key to have no value, which broke the directory integration
2023-03-12 17:55:57 -04:00
Hypolite Petovan 7ac5c1eee8
Merge pull request #12878 from HankG/mastodon-edit-title-spoiler-update
Mastodon edit title spoiler update
2023-03-12 14:39:35 -04:00
Hank G a6e9f9c89e
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-03-12 11:43:59 -04:00
Hypolite Petovan baac993090 [Database 1517] Increase the size of the process.hostname field 2023-03-12 03:02:46 -04:00
Hank G 4fe278be7d
Merge branch 'friendica:develop' into mastodon-edit-title-spoiler-update 2023-03-11 08:28:51 -06:00
Philipp 13c8e0c80e
Merge pull request #12875 from annando/simplify-oauth
Use the built in function to create a query string
2023-03-09 08:24:27 +01:00
Michael a4503601e5 Comment readded 2023-03-09 07:05:45 +00:00
Michael 0c8923aabd Use the built in function to create a query string 2023-03-09 06:46:14 +00:00
Tobias Diekershoff 63e6387a79
Merge pull request #12872 from xundeenergie/develop
fix typo (btn-defaul -> btn-default)
2023-03-08 15:36:54 +01:00
www-data 51083e9fcf fix typo (btn-defaul -> btn-default) 2023-03-08 05:48:34 +01:00
Hypolite Petovan d402e66644
Merge pull request #12869 from damianwajer/calendar-reactions-fix
[frio] Fix calendar attendance icons
2023-03-07 12:01:01 -05:00
Damian Wajer cf3dc9a94f Fix calendar attendance icons 2023-03-07 17:57:54 +01:00
Hypolite Petovan a80fc2db54
Merge pull request #12867 from annando/revert-attach
Fix plaintext function by partly reverting function removal
2023-03-07 07:39:05 -05:00
Michael e0fe3bf77d Fix plaintext function by partly reverting function removal 2023-03-06 18:00:58 +00:00
Hypolite Petovan 009c2a122e
Merge pull request #12866 from annando/no-attached-data
The function "getAttachedData" has been removed
2023-03-06 10:06:07 -05:00
Michael c1686c486c Fix warning 2023-03-06 06:43:04 +00:00
Michael 699be97ea1 Reformatted code 2023-03-06 06:15:30 +00:00
Michael aea3ed4548 Code is reformatted 2023-03-05 21:46:45 +00:00
Michael eafe54f2dd The function "getAttachedData" has been removed 2023-03-05 21:22:22 +00:00
Hypolite Petovan 27cc346f8a
Merge pull request #12865 from annando/fix-links
Fix missing attached links in posts
2023-03-04 17:57:38 -05:00
Michael d41ec728e4 We only need a link here 2023-03-04 21:36:19 +00:00
Michael 60ddef1720 Unneeded field removed 2023-03-04 19:28:31 +00:00
Michael b761760d65 Fix missing attached links in posts 2023-03-04 19:04:37 +00:00
Michael 9e4753f440 Merge remote-tracking branch 'upstream/develop' into api-edit 2023-03-03 03:56:19 +00:00
Philipp 11527761d7
Merge pull request #12861 from annando/fix-status
API: Fix dateformat on status
2023-03-03 00:22:39 +01:00
Michael ea3a56ccfa API: Fix dateformat on status 2023-03-02 21:07:33 +00:00
Hypolite Petovan 180b81c6e7
Merge pull request #12836 from damianwajer/post-interactions
[frio] Use all available space for post interaction buttons (mobile)
2023-03-01 12:41:18 -05:00
Damian Wajer 45571fe6a7 [frio] Move "Share via" to the share dropdown 2023-03-01 18:09:18 +01:00
Michael fc8421b57b Merge remote-tracking branch 'upstream/develop' into api-edit 2023-03-01 05:17:13 +00:00
Michael Vogel e8492954a2
Merge pull request #12855 from HankG/fix-use-mastodon-edited-at-field
Use Mastodon standard edited_at field for tracking edit time
2023-02-28 22:31:18 +01:00
Hank Grabowski 63a65b6d02 Fix passing in correct change fields to Mastodon Status FriendicaExtension 2023-02-28 16:10:13 -05:00
Hank Grabowski 7ccc978bc5 Add title/spoiler text handling and capturing invalid update to Mastodon edit 2023-02-28 15:35:37 -05:00
Hank Grabowski 1e48978664 Use Mastodon standard edited_at field for tracking edit time 2023-02-28 15:02:02 -05:00
Hypolite Petovan 8ce90d7b41
Merge pull request #12853 from HankG/mastodon-timeline-temporal-paging
Mastodon timeline temporal paging
2023-02-28 13:51:21 -05:00
Hank G c7457c7a72
Update src/Module/BaseApi.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-28 13:49:23 -05:00
Hank Grabowski 80896936b2 Remove extra lines from TimelineOrderByTypes.php to get rid of server side only formatting error 2023-02-28 13:12:11 -05:00
Hank Grabowski 13672bccf4 Only allow explicitly known order types through 2023-02-28 13:10:45 -05:00
Hank Grabowski f0b3864c7a Add default getLinkHeader asDate to be false (the previous ID-only way) 2023-02-28 12:48:25 -05:00
Hank Grabowski fae67b6d88 Remove extra line between copyright and namespace 2023-02-28 11:44:49 -05:00
Hank Grabowski 260f4e46ab Correct format/style errors 2023-02-28 11:43:12 -05:00
Hank Grabowski 32bb097604 Correct format/style errors 2023-02-28 11:41:53 -05:00
Hank Grabowski c33c624f83 Add new temporal paging to Mastodon Timeline Public and List endpoints 2023-02-28 11:36:24 -05:00
Hank Grabowski 4f86cd0923 Add comment to friendica_order query parameter in Mastodon Timeline Home 2023-02-28 11:35:54 -05:00
Hank Grabowski 099ef11183 Fix tag filtering on block/mute list 2023-02-28 11:35:21 -05:00
Hank Grabowski 1f6578229e Add additional Mastodon timeline sorting date types and data to output 2023-02-28 10:36:11 -05:00
Hank Grabowski 1adb23d8fd Change timestamp to be DateTime object not integers in Mastodon Timeline API 2023-02-28 08:20:08 -05:00
Michael 3a0b0ffce5 Editing of media descriptions is now possible as well 2023-02-28 08:06:49 +00:00
Michael 98aed4dde3 Adding and removing of pictures via API is now possible 2023-02-28 06:19:19 +00:00
Hank Grabowski 6ffd3a3f8c Merge branch 'develop' into mastodon-timeline-temporal-paging 2023-02-27 20:20:40 -05:00
Philipp a56d2f2eb8
Merge pull request #12852 from annando/instance-fix
Fix v1 endpoint
2023-02-27 22:40:04 +01:00
Michael a5b774d2ef Without "->__toString()" 2023-02-27 21:15:11 +00:00
Michael cbb9cb6c24 Fix v1 endpoint 2023-02-27 21:02:59 +00:00
Hypolite Petovan 7eb26fa6bd
Merge pull request #12851 from annando/issue-12415
Issue 12415: Handle attachment updates via AP
2023-02-27 15:12:19 -05:00
Hypolite Petovan 1d6f5c33a1
Merge pull request #12850 from nupplaphil/feat/phpstorm_editorconfig
Adapt .editorconfig for PHPStorm
2023-02-27 15:05:00 -05:00
Michael 2849a96628 Issue 12415: Handle attachment updates via AP 2023-02-27 20:02:05 +00:00
Philipp ea550f6b02
ident_size 2 is better for XML readability :) 2023-02-27 20:57:19 +01:00
Philipp 089850e8f6
Add a PHPStorm code style XML 2023-02-27 20:53:19 +01:00
Philipp ae5fe47c03
Adapt .editorconfig
- Add .json rule
- Add .xml rule
2023-02-27 20:34:46 +01:00
Philipp 3c7184513c
Revert quote_type 2023-02-27 20:11:07 +01:00
Philipp 191c84a281
adapt codecov config 2023-02-27 20:01:16 +01:00
Philipp 61deaec4be
Merge pull request #12848 from HankG/fix-mastodon-v2-active-month-naming-error
Fix mastodon v2 active month naming error
2023-02-27 19:51:25 +01:00
Philipp d2b3cc515f
Adapt .editorconfig for PHPStorm 2023-02-27 19:51:04 +01:00
Hank Grabowski 2f3a7c422f Fix whitespace issue 2023-02-27 13:47:02 -05:00
Hank Grabowski b375f64e0e Add int hint to Mastodon V2 UserStats.php 2023-02-27 13:04:24 -05:00
Hypolite Petovan 0a39a46f4a
Merge pull request #12849 from annando/attachments
Editing/removing of attached pictures is now possible via web
2023-02-27 09:24:20 -05:00
Michael Vogel 0338d9fda8
Update src/Model/Post/Media.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-27 14:31:56 +01:00
Michael 5f6503a73f Editing/removing of attached pictures is now possible via web 2023-02-27 07:47:31 +00:00
Philipp a40ecb3902
Merge pull request #12843 from annando/fetchraw-attachments
Catch all errors thrown by "fetchRaw"
2023-02-27 08:24:05 +01:00
Michael bd3120d6cb Use non static logger call 2023-02-27 07:02:06 +00:00
Hank Grabowski bb29a07efa Change Mastodon Instance V2 active_monthly field to correct active_month 2023-02-26 22:57:10 -05:00
Hank Grabowski 706a42ffd0 Change Mastodon Instance V2 active_monthly field to correct active_month 2023-02-26 22:56:56 -05:00
Michael 6e3602591d Use "Exception" 2023-02-26 22:43:45 +00:00
Philipp de53109a49
Merge pull request #12844 from HankG/mastodon-status-add-delivery-data
Add Delivery Information to Mastodon Status API Entity
2023-02-26 23:03:30 +01:00
Hank Grabowski 9ab73c30ef Allow delivery stats to be null. 2023-02-26 11:27:01 -05:00
Hank Grabowski ea782d97fc Make calls inline and return 0 if value is null 2023-02-26 10:26:15 -05:00
Michael Vogel 4be9c180d5
Merge pull request #12845 from HankG/fix-instancev2-nullability
Add nullability to InstanceV2 Contact type for account parameter
2023-02-26 16:10:00 +01:00
Hank Grabowski 0f811abc50 Add nullability to InstanceV2 Contact type for account parameter 2023-02-26 09:38:22 -05:00
Hank Grabowski e92b0a73f4 Update documentation for delivery status data addition to Mastodon Status 2023-02-26 09:18:46 -05:00
Michael 2b513a48c7 Catch all errors thrown by "fetchRaw" 2023-02-26 14:08:33 +00:00
Hank Grabowski 751e335b4b Add delivery status data to Mastodon Status Friendica Extension 2023-02-25 14:23:59 -05:00
Hypolite Petovan d8aa8772cd
Merge pull request #12839 from HankG/api-documentation-updates
API documentation updates
2023-02-24 08:48:41 -05:00
Hank G c0741be417
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-24 08:47:37 -05:00
Hank G 5e8acbf534
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-24 08:46:52 -05:00
Hank Grabowski 671fc61ef4 Make indentation consistent 2023-02-23 20:52:16 -05:00
Hank G 65dedb7a7e
Apply suggestions from code review
Changes suggested by @MrPetovan

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-23 20:40:43 -05:00
Hank G b243df5125
Update doc/API-Entities.md
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-23 10:32:09 -05:00
Hank Grabowski 9a6ebc94c4 Add support for since_id field into the timeline API 2023-02-23 07:04:12 -05:00
Hank Grabowski cbf55241a3 Null out min/max/since ID fields by default in Mastodon Timeline API 2023-02-23 07:03:58 -05:00
Hank Grabowski 7b6cb7bcf2 Add Mastodon Instance::V2 Friendica extension documentation 2023-02-23 06:46:43 -05:00
Hank Grabowski 811d57cb6d Add Mastodon Status Editing endpoint documentation 2023-02-22 22:55:04 -05:00
Hank Grabowski 3389a17553 Add additional and not supported fields/QPs on the Mastodon Timeline Endpoints 2023-02-22 22:43:32 -05:00
Hank Grabowski d64ae9bef2 Add new Friendica Photo Album GET endpoints to documentation 2023-02-22 22:35:24 -05:00
Hank Grabowski a8661f1eff Add Mastodon Notification Entity Extensions documentation 2023-02-22 22:20:33 -05:00
Hank Grabowski e0143618db Add Mastodon API endpoint extension information 2023-02-22 22:07:27 -05:00
Hank Grabowski 467193c661 Add Mastodon Status Entity Friendica extensions (minus quote)
- I can't figure out how to get the quote one to populate, check if still relevant
2023-02-22 21:49:56 -05:00
Hank Grabowski dacda1b364 Add changes to the Photo entries in Friendica API endpoint 2023-02-22 21:31:07 -05:00
Hank Grabowski e28a0ed59c Add Dislike Friendica API documentation 2023-02-22 20:55:52 -05:00
Hank Grabowski 95d615ec1c Add new Mastodon InstanceV2 to implemented list and fix doc links 2023-02-22 20:47:55 -05:00
Hypolite Petovan 1cff849a94
Merge pull request #12838 from HankG/blocks-status-fix
Correctly reflect blocked status in Mastodon Relationship Object
2023-02-22 16:49:55 -05:00
Hypolite Petovan defbf87d9c
Merge pull request #12837 from HankG/fix-blocks-ignores-in-full-context-status-request
Incorporate ignore/blocks in Mastodon Status Context Endpoint
2023-02-22 16:48:25 -05:00
Hank Grabowski 614ad32f71 Merge branch 'develop' into mastodon-timeline-temporal-paging 2023-02-22 13:26:51 -05:00
Hank Grabowski a301f8a82d Merge branch 'develop' into fix-blocks-ignores-in-full-context-status-request 2023-02-22 13:26:28 -05:00
Damian Wajer bc65ea9693 Use available space for post interaction buttons
Related: https://github.com/friendica/friendica/issues/12835
2023-02-22 18:11:18 +01:00
Hank Grabowski 7224c0fc38 Merge branch 'develop' into blocks-status-fix 2023-02-22 12:08:06 -05:00
Hank Grabowski 4a00731aa4 Breakup public/user ID query results so can always query blocked status by CID 2023-02-22 12:07:57 -05:00
Hank Grabowski b06a3e877e Add show_all option to Mastodon status context to show ignored and blocked statuses 2023-02-22 11:45:42 -05:00
Hank Grabowski a67fe069e8 Add order/limit building func and fix reverse order requirement on min_id 2023-02-22 11:27:54 -05:00
Hank Grabowski 9c5f3ae58f Simply Timeline Home temporal endpoint to reuse min_id and max_id 2023-02-22 11:02:52 -05:00
Hypolite Petovan 6870ccc00e
Merge pull request #12833 from annando/ostatus-like
Fix emoji activities
2023-02-21 16:35:25 -05:00
Michael 08ba9e4183 Fix emoji activities 2023-02-21 21:07:41 +00:00
Hypolite Petovan a27baa24b9
Merge pull request #12832 from nupplaphil/feat/json-ld-1.1.2
Update json-ld to 1.1.2
2023-02-21 16:03:07 -05:00
Hank Grabowski 818075d039 Implement time based paging for Mastodon Home Timeline Endpoint 2023-02-21 15:37:32 -05:00
Philipp 433dd3e6ef
Update json-ld to 1.1.2
- Add support for local files for unsecured document loading
2023-02-21 21:37:00 +01:00
Philipp f4af683af2
Merge pull request #12830 from MrPetovan/bug/12828-addon-table
Remove addon table from DB structure
2023-02-21 21:06:18 +01:00
Philipp fae2c6632c
Fix database 2023-02-21 21:01:57 +01:00
Philipp 7e92adef6c
Fix API tests without addon table 2023-02-21 21:01:40 +01:00
Hank Grabowski 3958739d60 Add to Mastodon Status/Context filter for ignored and blocked user's comments 2023-02-21 13:53:16 -05:00
Hypolite Petovan 5acbcba5c2
Merge pull request #12829 from Quix0r/fixes/export-to-file-null
Fixed: DomainPatternBlocklist::exportToFile() must be of the type string, null given
2023-02-21 09:13:19 -05:00
Hypolite Petovan dffd28cf20 Remove addon table from DB structure
- It isn't used anymore in favor of a Config key
2023-02-21 09:07:19 -05:00
Roland Häder ed86e9ca96
Fixed:
- added check for empty file name as the export doesn't work without one:
  `[Error] Argument 1 passed to Friendica\Moderation\DomainPatternBlocklist::exportToFile() must be of the type string, null given, called in /var/www/.../src/Console/ServerBlock.php on line 110`
2023-02-21 12:58:50 +01:00
Hypolite Petovan b1b3b0ffe7
Merge pull request #12826 from HankG/dislike-for-mastodon-endpoints
Dislike capabilities for Mastodon compatible endpoints
2023-02-21 00:15:05 -05:00
Hank Grabowski 9c9abd4400 Merge branch 'develop' into dislike-for-mastodon-endpoints 2023-02-20 15:52:09 -05:00
Hank Grabowski 155e3a701e Add DislikedBy Mastodon compatible endpoint in the Friendica API space 2023-02-20 15:51:17 -05:00
Hank Grabowski c419aabee4 Add deleted check to FavouritedBy Mastodon endpoint 2023-02-20 15:50:21 -05:00
Hank Grabowski c235bf299e Add Mastodon format compatible (un)dislike endpoint in Friendica API space 2023-02-20 15:33:36 -05:00
Hank Grabowski dba74c7940 Fix phpcbf style errors in part of code I didn't change 2023-02-20 15:32:03 -05:00
Hank Grabowski 3a8929be1f Add dislike counts to Mastodon API Statuses in FriendicaExtension 2023-02-20 15:31:15 -05:00
Hypolite Petovan dec5a40aac
Merge pull request #12818 from HankG/mastodon-instance-v2-implementation
Mastodon instance v2 implementation
2023-02-20 14:16:17 -05:00
Hank Grabowski 6cd271b10f Modify to use the new baseURL methods. 2023-02-20 13:33:13 -05:00
Hank Grabowski 06f53d2d1a Add missing spaces after colons for function parameters for style check reasons 2023-02-20 13:31:04 -05:00
Hypolite Petovan 5f56918d3e
Merge pull request #12825 from HankG/fix-blocks-listing
Remove extraneous ID parameter from Mastodon Blocks Listing API
2023-02-20 13:28:28 -05:00
Hank Grabowski 5c3bd4acd1 Merge branch 'develop' into mastodon-instance-v2-implementation 2023-02-20 13:25:59 -05:00
Hank Grabowski dd664f632f Merge branch 'develop' into fix-blocks-listing 2023-02-20 13:25:05 -05:00
Hank Grabowski 41b5ec0262 Merge branch 'develop' into mastodon-instance-v2-implementation 2023-02-20 13:22:37 -05:00
Hank Grabowski 71a7c0a4de Refactor Mastodon API InstanceV2 so objects are simple and BI in API layer 2023-02-20 13:22:29 -05:00
Philipp 3de3d867a5
Merge pull request #12821 from HankG/notifications-summary
Add Notifications summary poption to Mastodon API Endpoint
2023-02-20 18:36:38 +01:00
Hank Grabowski b3226e11ac Merge branch 'develop' into blocks-and-mutes-fixes 2023-02-20 12:27:25 -05:00
Hank Grabowski 97cad5d2e0 Merge branch 'develop' into fix-blocks-listing 2023-02-20 12:19:56 -05:00
Hypolite Petovan 33a8d2bc3d
Merge pull request #12814 from nupplaphil/bug/config_multi_serialize
Fix multiple serialized values
2023-02-20 11:54:18 -05:00
Hypolite Petovan 14a3f73f4f
Merge pull request #12823 from annando/optimize
Config to enable the optimizing of all tables
2023-02-20 11:53:30 -05:00
Philipp c233c666fb
Update db-version 2023-02-20 17:23:22 +01:00
Philipp 41251458a0
language and static 2023-02-20 17:23:01 +01:00
Philipp d772331b91
Fix multiple serialized values 2023-02-20 17:22:59 +01:00
Michael Vogel 7560939d75
Merge pull request #12820 from MrPetovan/bug/fatal-errors
Remove reference to remove field in event table
2023-02-20 16:37:45 +01:00
Hank Grabowski f5ffc9da95 Remove extraneous ID parameter from Mastodon Blocks Listing API 2023-02-20 10:18:15 -05:00
Hank Grabowski 843502badc Merge branch 'develop' into notifications-summary 2023-02-20 10:06:59 -05:00
Michael bd0348b53c Config to enable the optimizing of all tables 2023-02-20 14:46:58 +00:00
Hank Grabowski 4abb7ed746 Fix whitespace issue on assignment alignment 2023-02-20 09:07:50 -05:00
Hank Grabowski e594bb72dd Add notifications summary (count only for now) to Mastodon API 2023-02-20 08:53:28 -05:00
Hypolite Petovan cef063e4fd
Merge pull request #12819 from HankG/add-tables-to-optimize
Add tables to Optimize Worker
2023-02-20 08:47:38 -05:00
Hypolite Petovan ee5acc29c3
Merge pull request #12802 from nupplaphil/feat/system_url_handling
Transform BaseURL to URIInterface conform class with less business logic
2023-02-20 08:43:00 -05:00
Hypolite Petovan 6106b8b75e
Merge pull request #12813 from HankG/mastodon-status-post-with-title
Add Friendica Title Extension to Mastodon Statuses POST API
2023-02-20 08:27:54 -05:00
Hypolite Petovan 65cd493431
Merge pull request #12807 from HankG/mastodon-trending-api-updates
Mastodon trending api updates
2023-02-20 08:27:42 -05:00
Hypolite Petovan 5bba6dd4b7
Merge pull request #12804 from HankG/fix-blocked-users-in-mastodon-api-timelines
Add Block/Ignore filtering on all Mastodon API Timeline endpoints
2023-02-20 08:27:33 -05:00
Hypolite Petovan 0dbee1c4d2 Remove reference to remove field in event table
- Address https://anonsys.net/display/bf69967c-1663-f368-5a52-cdd110992529
2023-02-20 08:26:23 -05:00
Hank Grabowski 0bb2d00e70 Add License header to FriendicaExtensions file 2023-02-20 08:05:46 -05:00
Hank Grabowski fcf59dc245 Fix binary_operator_spaces errors 2023-02-20 08:05:01 -05:00
Hank Grabowski c076a07404 Add back in accidentally removed Session table 2023-02-20 07:55:41 -05:00
Hypolite Petovan 711135a85b
Merge pull request #12816 from annando/view
Config option to process the "view" activity
2023-02-20 07:54:29 -05:00
Hank Grabowski 0451f2dfa1 Add Mastodon Instance V2 API endpoint /api/v2/instance 2023-02-20 07:51:20 -05:00
Michael 3b469fe4e9 Fix the spelling of some verbs 2023-02-20 08:54:27 +00:00
Michael 11513519ce Config option to process the "view" activity 2023-02-20 06:41:28 +00:00
Hank Grabowski 8101739edd Change Mastodon API documentation URL for V1 Instance type 2023-02-19 17:32:13 -05:00
Hank Grabowski 7ea09e666b Add additional tables to the optimize worker function 2023-02-19 08:55:08 -05:00
Hank Grabowski cd957a7f66 Remove extraneous __get since needed capability found in parent class 2023-02-19 07:59:53 -05:00
Hank Grabowski 3bb0bda880 Remove documentation stating friendica extensions can be null since always set 2023-02-19 07:58:10 -05:00
Hank G f1dbf82e5b
Update src/Module/Api/Mastodon/Statuses.php
Co-authored-by: Philipp <admin+Github@philipp.info>
2023-02-19 07:50:39 -05:00
Philipp cb106f40ca
Remove $ssl_state variable 2023-02-19 12:25:24 +01:00
Philipp 366d798e38
Remove dbstructure update 2023-02-19 11:31:22 +01:00
Philipp b593165949
adapt theme comment 2023-02-19 11:30:33 +01:00
Philipp a1fedaf514
adapt install path 2023-02-19 11:29:29 +01:00
Philipp f9f86e04ff
adapt BaseURL constructor 2023-02-19 11:27:14 +01:00
Philipp 3e0efc9c7c
Update src/Module/Moderation/Users/Blocked.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-19 11:27:02 +01:00
Philipp 94d1e0b232
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-19 11:26:26 +01:00
Philipp 544168244c Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-19 11:12:48 +01:00
Philipp 92850d4482
Update messages.po 2023-02-18 21:50:14 +01:00
Philipp 75ecaa89ee
Add site admin warning if BaseURL is missing 2023-02-18 21:50:07 +01:00
Philipp 5552aac327
check themplates 2023-02-18 21:50:07 +01:00
Philipp c0359330b6
Add typehint for DI::baseUrl() 2023-02-18 21:12:21 +01:00
Philipp f0c29edcde
Adapt BaseURL calls to new UriInterface 2023-02-18 21:12:21 +01:00
Philipp 9e6d95284b
Adapt tests to use new BaseURL UriInterface 2023-02-18 21:12:21 +01:00
Philipp 402d45d490
Move force_ssl behavior 2023-02-18 21:12:20 +01:00
Philipp dbb7022ca5
Refactor Installer due new BaseURL logic 2023-02-18 21:12:20 +01:00
Philipp 96e12be26b
Remove old config parts
- config.hostname
- system.urlpath
- system.ssl_policy
2023-02-18 21:12:20 +01:00
Philipp 45749c14be
Refactor BaseURL.php to UriInterface compatible class
- remove parts
- added tests
2023-02-18 21:12:20 +01:00
Hank Grabowski 34c4849341 Merge branch 'develop' into mastodon-status-post-with-title 2023-02-18 10:30:57 -05:00
Hank Grabowski 4b2ee284d8 Change check for friendica-title key to use isa and always set 2023-02-18 10:07:08 -05:00
Tobias Diekershoff 08754b2bab
Merge pull request #12812 from annando/emoji-activities
Activities are now displayed as Emojis
2023-02-18 08:34:16 +01:00
Michael 608b5a37a4 Activities are now displayed as Emojis 2023-02-18 06:56:03 +00:00
Hypolite Petovan 960fdb9076
Merge pull request #12806 from annando/loglevels
Some loglevels are adjusted to more reasonable levels
2023-02-17 18:19:03 -05:00
Hypolite Petovan 6d38b44b97
Merge pull request #12799 from HankG/fix-mastodon-friend-requests-ids
Change FollowRequest to return the user ID so is compatible with POST endpoint
2023-02-17 18:09:26 -05:00
Hank Grabowski f10821f915 Add friendica->title input to Mastodon Status POST API for explicitly setting title
- update logic so that if it is provided with a spoiler text then the spoiler text is always used as actual spoiler text and the title is the title.
2023-02-17 17:42:55 -05:00
Hank Grabowski 40ee96512a Add extension to Mastodon Status object for Friendica-specific things
- first entry is the title
2023-02-17 17:42:00 -05:00
Hank Grabowski 9187723263 Add link headers to Mastodon trending endpoints 2023-02-17 13:24:11 -05:00
Hank Grabowski 2754cdc5d6 Add Link headers by offset/limit capability to BaseApi 2023-02-17 13:24:00 -05:00
Hank Grabowski df4af8da9b Fix offset is absolute in set not a page to be consistent with SQL 2023-02-17 13:23:34 -05:00
Michael Vogel 659fab0fe5
Merge pull request #12801 from HankG/fix-mastodon-api-search
Fix mastodon api search
2023-02-17 18:56:08 +01:00
Hank Grabowski e6c93d31c1 Add offset parameter to Mastodon trending Links and Statuses endpoints 2023-02-17 11:59:30 -05:00
Hank Grabowski 6a94632131 Add documentation to new trending tags endpoint QPs 2023-02-17 11:25:25 -05:00
Hank Grabowski f40cd60e39 Remove FollowRequest type and use mstdnAccount->createFromContactId instead 2023-02-17 11:09:16 -05:00
Hank Grabowski 67b8ad242b Allow @-symbols in Mastodon status searches under all conditions 2023-02-17 10:49:32 -05:00
Hank Grabowski c5effdadec Add support to Mastodon Tag Trends for paging, local tags, and faster refresh
= with phpcbf format auto-correction
2023-02-16 22:55:23 -05:00
Hank Grabowski e3bfb39e91 Remove explicit block filtering for results that go through selectViewForUser 2023-02-16 16:06:56 -05:00
Michael baf75adfca Some loglevels are adjusted to more reasonablöe levels 2023-02-16 20:47:37 +00:00
Hank Grabowski a4515daca4 Add blocked/ignored filters to Mastodon Timeline API Direct and List endpoints 2023-02-16 08:08:58 -05:00
Hank Grabowski d6c1e85b5f Add blocked/ignored filters to Mastodon Timeline API Home and Tags endpoints 2023-02-16 08:05:32 -05:00
Hank Grabowski 18bb181a78 Cleanup unused imports, excessive line length in Mastodon FollowRequest factory 2023-02-15 15:43:57 -05:00
Hank Grabowski 4964e947c9 Delete unused Mastodon FollowRequest object (can just use Account now) 2023-02-15 15:43:17 -05:00
Hank Grabowski 31b746cb16 Change FollowRequest return type to be Account 2023-02-15 15:40:10 -05:00
Hank Grabowski cb1adf983b Fix style error 2023-02-15 15:13:30 -05:00
Hank Grabowski c084e6a427 Allows @ in query on statuses when resolving since Mastodon links have it 2023-02-15 15:12:58 -05:00
Hank Grabowski 637b6f5a17 Change FollowRequest to return the user ID so is compatible with POST endpoint 2023-02-15 12:30:49 -05:00
Philipp 90717b602e
Merge pull request #12797 from annando/emoji-react
We can now store emoji reactions from Misskey
2023-02-15 09:12:28 +01:00
Michael 9f7747a360 We can now store emoji reactions from Misskey 2023-02-15 05:13:40 +00:00
Philipp 40e0ea239a
Merge pull request #12796 from annando/fatal
Fix fatal error because of an invalid url
2023-02-14 22:28:01 +01:00
Philipp 453693122d
Merge pull request #12795 from annando/caps
Fix case
2023-02-14 22:27:12 +01:00
Michael a3cb43805c Fix fatal error because of an invalid url 2023-02-14 21:19:47 +00:00
Michael 9a93c8f1c5 Fix caps 2023-02-14 20:52:33 +00:00
Hypolite Petovan f9b3340599
Merge pull request #12786 from annando/c2s-post
C2S: Posting is now possible
2023-02-14 15:49:25 -05:00
Michael 64a8ad6601 Fix variable name 2023-02-14 20:43:54 +00:00
Michael Vogel d3acdd3229
Merge pull request #12791 from HankG/mastodon-notifications-api-fixes
Mastodon notifications api fixes
2023-02-14 01:02:28 +01:00
Michael 41f6e72aa0 Some more standards 2023-02-13 23:57:39 +00:00
Michael c643eb8cb2 Fix more standards 2023-02-13 23:53:43 +00:00
Michael 2367f54d41 Soem more C2S stuff moved 2023-02-13 23:49:08 +00:00
Michael 12be32249b Merge remote-tracking branch 'upstream/develop' into c2s-post 2023-02-13 23:37:40 +00:00
Michael Vogel 5e84fc849b
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-02-14 00:34:47 +01:00
Hank Grabowski e384a9d6ca Automatic PHPCBF style fix 2023-02-13 17:27:06 -05:00
Hank Grabowski 7e91a88d9b Add unsupported Friendica notification types to built query 2023-02-13 17:26:24 -05:00
Hypolite Petovan 262f960120
Merge pull request #12789 from nupplaphil/bug/flasky_test
[tests] Fix flaky tests
2023-02-13 17:06:26 -05:00
Michael 8fe6419d39 New class for c2s activities 2023-02-13 21:27:11 +00:00
Hank Grabowski 8bfca6373a Remove extraneous, unused, non-standard 'count' parameter from request list
- artifact of when I was playing around with the endpoint that somehow
    didn't get deleted when I did the ultimate commit.
2023-02-13 15:13:17 -05:00
Philipp 1e4ed3d5a1
revert api.fixture.php change 2023-02-13 21:06:02 +01:00
Philipp 51ab7f4fcb
code review 2023-02-13 20:56:19 +01:00
Philipp e1813e3d73
Restructure tests
- Avoid database leftovers
2023-02-13 20:52:24 +01:00
Michael 7b871f3ecd Merge remote-tracking branch 'upstream/develop' into c2s-post 2023-02-13 19:20:18 +00:00
Philipp 704508fc65
Remove flasky testpart 2023-02-13 19:24:01 +01:00
Michael b02e48e9c3 Split C2S activity 2023-02-13 15:32:14 +00:00
Hypolite Petovan b168ff3e17
Merge pull request #12772 from nupplaphil/feat/config_hybrid
Revert node.config.php into Config table
2023-02-13 08:16:29 -05:00
Michael a7b3949ca0 Added documentation 2023-02-13 11:57:02 +00:00
Philipp 3894b6fa41
Fix logic 2023-02-13 11:34:32 +01:00
Philipp 3db2778fcd
remove unnecessary comments 2023-02-13 11:32:10 +01:00
Michael 2c41ebbfaa passing the return value 2023-02-13 06:27:45 +00:00
Philipp 2bc9f085df
Add docs 2023-02-12 23:54:11 +01:00
Philipp 9b095f475b
add license header ;) 2023-02-12 17:09:06 +01:00
Philipp 4dc164a5a1
manually check and create the Config table before running the update 2023-02-12 16:44:56 +01:00
Philipp aeb3c7e96c
don't try to use the Config table if it doesn't exist 2023-02-12 16:23:51 +01:00
Philipp a9c0636573
remove maybeSerialize (always serialize) 2023-02-12 15:48:41 +01:00
Philipp 8881882bce
another phpunit optimiziation .. 2023-02-12 15:41:25 +01:00
Michael edb1ce0417 C2S: Posting is now possible 2023-02-12 14:18:03 +00:00
Philipp 4d6c8241fc
Optimize phpunit 2023-02-12 14:57:55 +01:00
Philipp 3edc5553c6
use own local.config.php for CI 2023-02-12 14:38:43 +01:00
Philipp 0d41752cfe
Update messages.po 2023-02-12 13:38:10 +01:00
Philipp 553c909195
adapt update script 2023-02-12 13:38:02 +01:00
Philipp ab281d5190
Fix dba cache 2023-02-12 13:23:39 +01:00
Philipp 2d090f0d80
adhere php-cs 2023-02-12 13:17:55 +01:00
Philipp a153c3f594
Fix and adapt tests 2023-02-12 13:09:14 +01:00
Philipp ad284208ee
Fix and adapt tests 2023-02-12 13:09:05 +01:00
Philipp 23742c22c3
suppress E_WARNING at tests with vfs:// 2023-02-12 11:41:20 +01:00
Philipp 7895024e75
add license 2023-02-10 14:54:17 +01:00
Hypolite Petovan 02f6d0e5f9
Merge pull request #12784 from annando/redirect-root
Redirect AP requests to the root to the system actor
2023-02-10 08:10:36 -05:00
Philipp 513ef03421
Revert node.config.php into Config table 2023-02-10 14:06:22 +01:00
Philipp 6db89adc04
Re-Add Config table 2023-02-10 14:06:22 +01:00
Philipp 98857f8d7a
Add exception if lock wasn't successful 2023-02-10 14:06:21 +01:00
Michael 6eadbb35dc Redirect AP requests to the root to the system actor 2023-02-10 10:29:35 +00:00
Hypolite Petovan ffa44b8dc0
Merge pull request #12782 from annando/c2s-2
C2S: Improve C2S-API, fix inbox endpoint
2023-02-08 15:30:00 -05:00
Michael 5fdeed8ed8 C2S: Improve C2S-API, fix inbox endpoint 2023-02-08 20:16:19 +00:00
Philipp 881b32425d
Merge pull request #12774 from MrPetovan/bug/albumname-xss
[frio] Fix XSS vulneralibity in Justified-Gallery Javascript dependency
2023-02-08 15:56:36 +01:00
Michael Vogel 3aa7b338b8
Merge pull request #12781 from MrPetovan/bug/12779-security-txt
Switch date format to RFC 3339 in security.txt
2023-02-08 15:25:10 +01:00
Hypolite Petovan 1c7e129f3b Switch date format to RFC 3339 in security.txt 2023-02-08 08:35:06 -05:00
Hypolite Petovan d059c36ca6 [frio] Fix XSS vulneralibity in Justified-Gallery Javascript dependency 2023-02-08 08:31:43 -05:00
Hypolite Petovan 7621c8aac5
Merge pull request #12778 from annando/issue-12764
Issue 12764: Fix photo permissions when posting via web
2023-02-07 10:15:00 -05:00
Michael 4d4e34dc64 Issue 12764: Fix photo permissions when posting via web 2023-02-07 14:18:01 +00:00
Philipp bb92870ebb
Merge pull request #12773 from MrPetovan/bug/return-xss
Ensure arbitrary HTTPException messages are HTML escaped
2023-02-05 20:02:57 +01:00
Hypolite Petovan 9e4adabb58 Update main translation files after updating strings 2023-02-04 20:36:33 -05:00
Hypolite Petovan 447709377c Ensure arbitrary HTTPException messages are HTML escaped
- These messages can include user-supplied strings
2023-02-04 20:36:33 -05:00
Hypolite Petovan 4e355c0f5e Create specific module to display HTML message when a conversation isn't found in Module\Item\Display 2023-02-04 20:28:04 -05:00
Hypolite Petovan 544348c25a
Merge pull request #12770 from annando/warning
Fixes "Invalid URL for photo" for photos without host
2023-02-04 07:29:16 -05:00
Michael f455f7e7d1 Fixes "Invalid URL for photo" for photos without host 2023-02-04 12:14:40 +00:00
Michael Vogel ac469742b1
Merge pull request #12762 from MrPetovan/bug/warnings
Ward against potentially missing "platform" array key in Model\GServer::fetchSiteinfo
2023-02-02 11:54:50 +01:00
Hypolite Petovan a836c5c3f1
Merge pull request #12752 from annando/c2s
First implementation of ActivityPub C2S
2023-02-01 11:48:24 -05:00
Michael 18dcf77a6d Desciption added 2023-02-01 16:33:07 +00:00
Hypolite Petovan 301fa681c5 Ward against potentially missing "platform" array key in Model\GServer::fetchSiteinfo
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1411635902
2023-02-01 08:35:33 -05:00
Michael a3d645645a Fix #12757 2023-01-31 05:45:24 +00:00
Philipp 31d01dc684
Merge pull request #12756 from annando/issue-12753
Issue 12753: For remote-self feed items the plink mustn't point to the original feed link
2023-01-30 08:32:21 +01:00
Michael f078b6bc18 Issue 12753: For remote-self feed items the plink mustn't point to the original feed link 2023-01-30 06:58:36 +00:00
Michael b90d6a5638 Updated class description 2023-01-29 17:51:04 +00:00
Michael 101b3c9703 First implementation of ActivityPub C2S 2023-01-29 14:41:14 +00:00
Philipp df021b07e3
Merge pull request #12747 from MrPetovan/bug/warnings
Address a couple of warnings
2023-01-29 08:21:46 +01:00
Philipp 450c753004
Merge pull request #12746 from MrPetovan/bug/fatal-errors
Remove Feed contacts from profile contact list
2023-01-29 08:21:26 +01:00
Philipp 74b616f6d4
Merge pull request #12745 from MrPetovan/task/12728-jsonld-local-files
Read local files instead of performing self HTTP requests in JsonLD::documentLoader
2023-01-29 08:20:58 +01:00
Hypolite Petovan 48a7958ef9 Check $url variable for value before using it in Module\Photo::getPhotoById
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1407342540
2023-01-29 00:12:59 -05:00
Hypolite Petovan 9a270de9c2 Prevent the use of $shared_item if it's falsy in Mastodon\Status::createQuote
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1407342324
2023-01-29 00:11:13 -05:00
Hypolite Petovan b1eae0c9aa Remove Feed contacts from profile contact list
- These contact don't have a public pendant and therefore shouldn't be shown to visitors
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1406191980
2023-01-29 00:07:20 -05:00
Hypolite Petovan b66787f0de Improve return value consistency in Util\BasePath::getPath 2023-01-28 22:19:47 -05:00
Hypolite Petovan 1dc97e30e0 Read local files instead of performing self HTTP requests in JsonLD::documentLoader 2023-01-28 22:17:05 -05:00
Hypolite Petovan 6dfa492521
Merge pull request #12741 from annando/local-files
Avoid more local links and bad http requests
2023-01-28 20:51:24 -05:00
Michael 3f618218c7 Old stuff removed 2023-01-28 18:50:45 +00:00
Michael 5315bc3712 Possibly fix the test problems 2023-01-28 15:29:55 +00:00
Michael 999cdc7db9 Avoid more local links and bad http requests 2023-01-28 14:57:04 +00:00
Michael Vogel fc46778a00
Merge pull request #12735 from MrPetovan/bug/fatal-errors
Address a couple of Fatal errors
2023-01-27 08:55:27 +01:00
Michael Vogel 1d7d6fe35c
Merge pull request #12736 from MrPetovan/bug/12733-webfinger-apcontact
Replace custom WebFinger implementation by Probe::getWebfingerArray in APContact::fetchWebfingerData
2023-01-27 08:27:20 +01:00
Hypolite Petovan d54d2c58e8
Merge pull request #12738 from annando/local-link-bad-url
Avoid local network communication / invalid url requests
2023-01-27 01:25:25 -05:00
Hypolite Petovan 79dc5c177e Replace custom WebFinger implementation by Probe::getWebfingerArray in APContact::fetchWebfingerData
- This implementation didn't support separate domains for the address and the final account
2023-01-27 01:24:28 -05:00
Hypolite Petovan 91d8cd2c87 Prevent fatal error when probing WebFinger address in Network\Probe::feed 2023-01-27 01:24:22 -05:00
Michael Vogel 94b63e6a00
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-27 07:21:08 +01:00
Michael ba4860b787 Avoid local network communication / invalid url requests 2023-01-27 05:55:45 +00:00
Hypolite Petovan be105db759 Check the image URL has a host before retrieving it in Photo::importProfilePhoto
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1404324012
2023-01-25 22:31:07 -05:00
Hypolite Petovan 0259af1118 Cast key values to int in Mastodon\Stats
- Address https://sekretaerbaer.de/display/61b27817-3763-cd4c-5fca-b4d397968464
2023-01-25 22:11:22 -05:00
Hypolite Petovan 6bedd190b9
Merge pull request #12732 from annando/catch
Catch not fetchable posts
2023-01-25 18:32:52 -05:00
Michael 3e8c38946d Catch not fetchable posts 2023-01-25 23:03:51 +00:00
Hypolite Petovan 4e98f5a1df
Merge pull request #12731 from annando/api-quotes
Quote for notifications
2023-01-25 17:49:51 -05:00
Michael ae3afaad94 Restore default value 2023-01-25 22:38:11 +00:00
Michael 30093fd2ec Quote for notifications 2023-01-25 20:35:10 +00:00
Hypolite Petovan efc4e5668a
Merge pull request #12727 from annando/api-quotes
API: added positiv list for quote support
2023-01-25 15:32:40 -05:00
Michael b6fcfebd56 Switch parameters 2023-01-25 20:14:33 +00:00
Hypolite Petovan 59235cba25
Merge pull request #12730 from damianwajer/fix-duplicate-intro-label
Fix labels in contact request modal
2023-01-25 13:27:25 -05:00
Damian Wajer ec21c19be7 Fix labels in contact request modal
Fixes https://github.com/friendica/friendica/issues/12709
2023-01-25 19:05:42 +01:00
Michael b46f18bdf9 Fix reply via API / fix missing variable 2023-01-25 10:16:24 +00:00
Michael c27fdc7167 Unused "use" removed 2023-01-25 06:34:15 +00:00
Michael 49d513f8d2 API: added positiv list for quote support 2023-01-25 06:26:17 +00:00
Michael Vogel a86fbe37c9
Merge pull request #12726 from MrPetovan/bug/12721-missing-host
Remove Text\BBCode::scaleExternalImage
2023-01-24 07:27:48 +01:00
Hypolite Petovan b4cbe4250e Remove Text\BBCode::scaleExternalImage
- Image size is a CSS concern, not a PHP one
2023-01-23 20:40:20 -05:00
Hypolite Petovan 23e0ce3c1b
Merge pull request #12725 from annando/api2
Several API improvements
2023-01-23 17:35:21 -05:00
Michael b61923700e Display, not diplay 2023-01-23 22:30:28 +00:00
Michael c471a78b05 Issue 12358: Allow blocking of every contact 2023-01-23 21:44:30 +00:00
Michael d0373ab414 Issue 12603: Support quote in the api / Issue 12654: prevent privacy leakage 2023-01-23 21:24:50 +00:00
Michael 3c14cd65fa Merge remote-tracking branch 'upstream/develop' into api2 2023-01-23 19:00:34 +00:00
Michael ff28044cf6 Issue 12603: Support quotes in the API 2023-01-23 19:00:20 +00:00
Hypolite Petovan 1d0b3e34bc
Merge pull request #12724 from annando/api
Issue 12682: Fix ids of reshared posts
2023-01-23 13:28:50 -05:00
Michael 5a01fb0521 Don't show reblogged on single post 2023-01-23 17:56:45 +00:00
Michael 0364972242 Merge remote-tracking branch 'upstream/develop' into api 2023-01-23 17:52:54 +00:00
Hypolite Petovan e959d9e454
Merge pull request #12720 from annando/issue-12702
Issue 12702: Let the user decide how to handle spoiler texts
2023-01-23 08:40:47 -05:00
Michael 87e9dafc56 Removed duplicated "be" 2023-01-23 06:48:42 +00:00
Michael 492ba45aa8 Merge remote-tracking branch 'upstream/develop' into issue-12702 2023-01-23 06:44:50 +00:00
Michael 75cac38fe3 Updated messages.po 2023-01-23 06:43:13 +00:00
Michael 557553a856 Updated messages.po 2023-01-23 06:37:45 +00:00
Michael Vogel 807c2dfe6a
Update src/Module/Settings/Connectors.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-23 04:52:41 +01:00
Hypolite Petovan 6fe85d9e2c
Merge pull request #12718 from annando/config
More configs moved to key values
2023-01-22 16:31:17 -05:00
Michael Vogel 9e9aa4b108
Update src/Module/Admin/Summary.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-22 21:35:24 +01:00
Hypolite Petovan d7f8b77e1d
Merge pull request #12719 from annando/andstatus
Fetch data from basic auth when one of the parameters is missing
2023-01-22 15:18:38 -05:00
Michael b2d7c4ec43 Merge remote-tracking branch 'upstream/develop' into api 2023-01-22 19:11:21 +00:00
Michael 8e4e2eecb7 Issue 12702: Let the user decide how to handle spoiler texts 2023-01-22 17:10:31 +00:00
Michael 575fb52438 Fetch data from basic auth when one of the parameters is missing 2023-01-22 14:44:57 +00:00
Michael 415e592886 Debug message removed 2023-01-22 13:58:28 +00:00
Michael 70d942bd8b Updated database.sql 2023-01-22 13:47:33 +00:00
Michael d76963944a More configs moved to key values 2023-01-22 13:40:08 +00:00
Hypolite Petovan 2db935fae2
Merge pull request #12717 from annando/blocked-gserver
Improved block check for redirects
2023-01-22 07:57:39 -05:00
Michael edf3e9c4b6 Improved block check for redirects 2023-01-22 12:33:38 +00:00
Michael 2ecc797541 API: Show different ids on reshares / don't check for client secret 2023-01-22 11:25:31 +00:00
Philipp ced77ccbce
Merge pull request #12697 from MrPetovan/bug/deprecated
Fix a few PHP8.2 deprecation messages
2023-01-21 23:00:32 +01:00
Hypolite Petovan cbbadbb782
Merge pull request #12712 from nupplaphil/feat/BaseUrl
Remove BaseURL Auto-Check
2023-01-21 16:58:56 -05:00
Philipp cf78f1baea
Fix missing values in sample files 2023-01-21 22:24:00 +01:00
Philipp 98da37076d
Add more transparent errors and make it possible to see them in logs 2023-01-21 21:07:20 +01:00
Philipp 8082b68185
Remove another URL check at App 2023-01-21 21:07:20 +01:00
Philipp 3de78fc60b
Remove BaseURL Auto-Check 2023-01-21 21:07:20 +01:00
Hypolite Petovan 73c8720d41 Declare history property in Mastodon\Card
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1383173055
2023-01-21 14:25:21 -05:00
Hypolite Petovan c79cec2652 Replace deprecated uses of ${var} in strings
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1383147421
2023-01-21 14:25:21 -05:00
Hypolite Petovan 7e618856ab Replace deprecated use of "self" in callables
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1383147421
2023-01-21 14:25:21 -05:00
Hypolite Petovan 881cb456e2 Throw an exception when parse_url fails in HttpClient->request
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1383147421
2023-01-21 14:25:21 -05:00
Hypolite Petovan 9ff3aca3b2
Merge pull request #12711 from nupplaphil/bug/config_toString
Config Fixings & Dice update
2023-01-21 14:25:01 -05:00
Philipp a7c4a3023a
Add "Database::INSERT_IGNORE" for the initial value check 2023-01-21 20:02:40 +01:00
Philipp eefd0b1143
fix PHP-CS 2023-01-21 19:47:47 +01:00
Philipp ac0e2aa901
Update tests/src/Core/Config/Util/ConfigFileTransformerTest.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-21 19:44:27 +01:00
Philipp 9627af924a
Add support for toString/Serializable 2023-01-21 19:42:48 +01:00
Philipp 5a9e9cc41b
Replace Level-2 Dice patch with new release 2023-01-21 19:42:47 +01:00
Philipp 62a6a5614d
Merge pull request #12707 from MrPetovan/bug/contact-page
Fix connection acknowledgement not appearing on contact page
2023-01-21 19:38:59 +01:00
Hypolite Petovan c3381c8b05 Updated main translation file after removing strings 2023-01-21 09:29:08 -05:00
Hypolite Petovan d3ef2b23cc Don't select deleted contact when in Contact::createFromProbeForUser 2023-01-21 09:18:17 -05:00
Hypolite Petovan 6749ace4b7 Reset pending value when unfollowing a contact 2023-01-21 09:18:17 -05:00
Hypolite Petovan 5519b50900 Apply changes to user-contact table first in Contact::update
- The truncateFieldsForTable call in the same method was potentially restricting the fields that could be updated in the user-contact table
2023-01-21 09:18:17 -05:00
Hypolite Petovan dcfb8bb73e Fix connection acknowledgement not appearing on contact page
- Remove obsolete template variables
- Move contact_edit vier template to base template
2023-01-21 09:18:17 -05:00
Hypolite Petovan 0681f94334
Merge pull request #12700 from Quix0r/features/blocklist-gserver
Blocked domains flood gserver entries
2023-01-20 22:39:12 -05:00
Roland Häder 27969e8ca6
Continued:
- moved if() block to suggested position by MrPetovan, for me I want to have all
  conditions checked at the start of the method, e.g. no unwanted null
  references or (in this case) if the URL is blacklisted
- normalized URLs are without SSL, means http://host/path/file.ext so they exist
  only once for contacts and servers (aka. instances)
- documented returned type `void`
2023-01-21 01:07:14 +01:00
Roland Häder ba08692403
Continued:
- just for consistency ...
2023-01-20 02:43:59 +01:00
Roland Häder a0704db43a
Continued:
- some trolls managed to flood gserver with useless URLs. They can be blocked
  by domain blocking them, but still it floods gserver table with dead entries
- this hack tries to change that so they won't enter gserver at all. Let's hope
  these trolls as `activitypub-trolls.cf` learn a lesson (and get adults soon)

Signed-off-by: Roland Häder <roland@mxchange.org>
2023-01-20 01:50:55 +01:00
Hypolite Petovan 208d6db776
Merge pull request #12699 from damianwajer/frio-ux-improvements
[frio] Various UX improvements (mostly larger clickable areas)
2023-01-19 17:05:22 -05:00
Damian Wajer 15a60d3b20 [frio] Regular size profile extra links 2023-01-19 19:49:22 +01:00
Damian Wajer 4b1328afa6 Regular-size primary buttons on compose page 2023-01-19 19:49:22 +01:00
Damian Wajer 6ec49afa10 [frio] Ensure access to all user menu items on low screens 2023-01-19 19:49:14 +01:00
Damian Wajer b86663dd1f [frio] Adjust font-size 2023-01-19 19:49:10 +01:00
Damian Wajer b735c40b27 [frio] Contact actions size 2023-01-19 19:49:06 +01:00
Damian Wajer 0344a84543 [frio] Larger clickable area for batch actions 2023-01-19 19:49:01 +01:00
Damian Wajer 4d0684d3d5 [frio] Improve responses markup and alignment
Reduce additional spacing between button groups and use the correct markup according to the docs:
https://getbootstrap.com/docs/3.4/components/#btn-groups
2023-01-19 19:48:55 +01:00
Damian Wajer 33d0505ce3 [frio] New design for mobile responses 2023-01-19 19:48:46 +01:00
Damian Wajer fc25a3ce5f [frio] Improve spacing for responses items 2023-01-19 19:48:41 +01:00
Damian Wajer 5b01c7c977 [frio] Regular size thread action buttons on mobile 2023-01-19 19:48:33 +01:00
Damian Wajer ec2bfbdf10 [frio] Regular size comment button 2023-01-19 19:48:27 +01:00
Damian Wajer 53ba26b991 [frio] Larger clickable area for off-canvas user menu 2023-01-19 19:48:19 +01:00
Damian Wajer f6e63a641d [frio] Larger clickable area for dropdown menus 2023-01-19 19:48:16 +01:00
Damian Wajer aa3e3307d7 [frio] Use regular font-size for comments 2023-01-19 19:48:11 +01:00
Damian Wajer 3d929e1f52 [frio] Make the whole accordion area clickable 2023-01-19 19:48:02 +01:00
Damian Wajer 9dcc0f6f20 [frio] Larger clickable area for aside links 2023-01-19 19:47:57 +01:00
Damian Wajer 1e21945658 [frio] Larger clickable area for tabs 2023-01-19 19:47:49 +01:00
Philipp 15938c5b87
Merge pull request #12695 from MrPetovan/bug/fatal-errors
Address a few fatal errors
2023-01-19 08:09:03 +01:00
Philipp 9c0f4dd9e5
Merge pull request #12694 from MrPetovan/task/allow-colon
Allow colon in password
2023-01-19 08:08:35 +01:00
Hypolite Petovan c05956137a Default maintenance reason to empty string in Module\Maintenance
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1383250546
2023-01-18 21:01:07 -05:00
Hypolite Petovan 3b99b98678 Truncate integer values before inserting them
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1383250353
2023-01-18 20:58:49 -05:00
Hypolite Petovan 594f738c6d Create base sub/direction.tpl template from vier
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1383249754
2023-01-18 20:49:08 -05:00
Hypolite Petovan da4441875d Updated main translation file after editing strings 2023-01-18 20:42:10 -05:00
Hypolite Petovan d2033d4c92 Allow colon in password
- It was disallowed because of a too strict intepretation of RFC2617
2023-01-18 20:34:20 -05:00
Hypolite Petovan 81cd334664 Fix wrong logic in password allowed regular expression 2023-01-18 20:27:29 -05:00
Hypolite Petovan 16e1c8f893
Merge pull request #12690 from annando/statistics
Nodeinfo data has moved to key values
2023-01-18 08:37:20 -05:00
Michael 73e163100c Nodeinfo data has moved to key values 2023-01-18 05:04:37 +00:00
Hypolite Petovan c7e944e793
Merge pull request #12680 from nupplaphil/feat/addon_logger
Introduce new Hook logic
2023-01-17 16:37:03 -05:00
Hypolite Petovan 4b73335def
Merge pull request #12688 from annando/blocked-server
News "blocked" field on the gserver table
2023-01-17 16:02:21 -05:00
Michael 259fe7fcf2 Merge remote-tracking branch 'upstream/develop' into blocked-server 2023-01-17 19:25:09 +00:00
Philipp 5358e195d7
Fix Introspection 2023-01-17 20:11:48 +01:00
Philipp 8eed43a7dd
Add whitespace .. 2023-01-17 19:23:20 +01:00
Philipp 3b262f44a3
Adhere feedback 2023-01-17 19:15:37 +01:00
Philipp eed6db2465
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-17 19:12:33 +01:00
Michael 356a2a9a5a News "blocked" field on the gserver table 2023-01-17 17:25:19 +00:00
Hypolite Petovan 02a1b4eb17
Merge pull request #12687 from DanielSiepmann/12686-fix-feed-creation-date-with-whitespace
Properly handle feed item creation date with surrounding whitespace
2023-01-17 10:19:02 -05:00
Daniel Siepmann da58b894a4
Properly handle feed item creation date with surrounding whitespace
Some feeds might have whitespace around the creation date.
This can't be parsed by DateTimeFormat methods.
Therefore the incoming creation date is trimmed to not contain any
surrounding whitespace for proper handling.

Relates: #12686
2023-01-17 07:18:47 +01:00
Philipp 293c121c48
Adhere PHP-CS.. 2023-01-16 22:25:26 +01:00
Philipp f609e38600
Introduce new Hook logic
- InstanceManager for computing strategies and to allow decorators
- Adapting Core\Logger to use it
2023-01-16 22:20:33 +01:00
Philipp d17a21601c
Add Dice.php patch 2023-01-16 21:55:23 +01:00
Hypolite Petovan 3749892f59
Merge pull request #12679 from nupplaphil/feat/reduce_config_dependency
Replace Config-Cache dependency with Config-Model
2023-01-15 11:13:41 -05:00
Philipp ab6efea9b2
Replace Config-Cache dependency with Config-Model (no more DB-waiting necessary) 2023-01-15 16:17:08 +01:00
Philipp a6fb683bcd
Remove BasePath dependency from App\Mode 2023-01-15 16:17:07 +01:00
Philipp dd6d96d048
Merge pull request #12678 from MrPetovan/bug/12677-addon_admin
Remove App dependency from addon admin form method
2023-01-15 15:55:08 +01:00
Hypolite Petovan 6e4663e747 Remove App dependency from addon admin form method 2023-01-15 09:42:18 -05:00
Hypolite Petovan 21f172c585
Merge pull request #12674 from nupplaphil/bug/config_typesafe
Config: Improve the node.config.php transformation
2023-01-15 09:38:29 -05:00
Philipp bc60eb6cb7
Apply feedback and describe the encoding method 2023-01-15 11:57:43 +01:00
Tobias Diekershoff 9d7e172d2c bump version to 2023.01 2023-01-15 11:50:23 +01:00
Tobias Diekershoff b94c47a7b5
Merge pull request #12675 from nupplaphil/bug/hf_changelog
Add Hotfix 2022.12-1 Changelog
2023-01-15 11:44:47 +01:00
Philipp 73f0961d68
Remove Note 2023-01-15 11:43:49 +01:00
Philipp e91fe55e34
HotFix 2023.01 CHANGELOG 2023-01-15 11:43:24 +01:00
Philipp 1afb6a6dd3
Merge pull request #12662 from MrPetovan/stable
Security Hotfix Release
2023-01-15 01:02:08 +01:00
Philipp d63aca97b8
Merge pull request #12673 from annando/andstatus-api
API: Accept "redirect_uris" as both array and string
2023-01-15 01:01:06 +01:00
Philipp 4c28f9cf9c
Config: Improve the node.config.php transformation
- Add more types
- Improvement for assoziative arrays and key-value arrays
- Add a lot more tests
2023-01-15 00:53:51 +01:00
Michael e06f699dd9 Added Documentation, updated messages.po 2023-01-14 21:20:04 +00:00
Michael af2a38c5b3 API: Accept "redirect_uris" as both array and string 2023-01-14 21:07:47 +00:00
Philipp 0c14e51112
Merge pull request #12666 from MrPetovan/bug/12661-public-calendar-export
Enable calendar export for public_calendar = true
2023-01-14 19:20:20 +01:00
Michael Vogel 25ac99a098
Merge pull request #12667 from MrPetovan/bug/12665-monolog
Remove App dependency from Hook::callSingle
2023-01-14 17:07:33 +01:00
Hypolite Petovan 323765110c Enable calendar export for public_calendar = true 2023-01-14 10:39:18 -05:00
Hypolite Petovan 45a6888647 Update tests after removing App dependency from hook calls 2023-01-14 10:38:38 -05:00
Hypolite Petovan e73adde5fb Remove App dependency from Hook::callSingle
- This was causing a circular dependency with the logger_instance hook
2023-01-14 10:38:37 -05:00
Hypolite Petovan 79d1506694
Merge pull request #12671 from annando/lock-config
Added default config for the lock driver
2023-01-14 09:50:38 -05:00
Hypolite Petovan 2d555b60dd
Merge pull request #12670 from annando/fix-avatar-cache
Ensure to reset the avatar paths when deleting avatar cache
2023-01-14 09:47:21 -05:00
Michael 6f95654592 Added default config for the lock driver 2023-01-14 14:44:49 +00:00
Michael 3e3f2555dc Ensure to reset the avatar paths when deleting avatar cache 2023-01-14 13:10:43 +00:00
Hypolite Petovan 91ff24b0e4
Merge pull request #12663 from nupplaphil/sec/xss_404
Security: Use htmlspecialchars() for user input in Arguments class
2023-01-13 13:57:41 -05:00
Hypolite Petovan aac18ca5bd
Merge pull request #21 from MrPetovan/imgbot
[ImgBot] Optimize images
2023-01-13 11:21:34 -05:00
ImgBotApp 9b820807a2
[ImgBot] Optimize images
*Total -- 255.34kb -> 242.82kb (4.9%)

/images/default/gotosocial.svg -- 7.94kb -> 4.95kb (37.69%)
/images/default/plume.png -- 18.09kb -> 12.91kb (28.64%)
/images/default/corgidon.png -- 34.83kb -> 32.17kb (7.65%)
/images/default/koyuspace.png -- 1.12kb -> 1.08kb (4.34%)
/images/friendica-maskable.svg -- 0.39kb -> 0.39kb (1.49%)
/images/friendica-maskable-512.png -- 5.15kb -> 5.08kb (1.4%)
/mods/fpostit/friendica.svg -- 0.42kb -> 0.42kb (1.38%)
/images/friendica.svg -- 0.42kb -> 0.42kb (1.38%)
/images/friendica-banner.jpg -- 91.27kb -> 90.38kb (0.97%)
/images/diaspora-banner.jpg -- 83.38kb -> 82.77kb (0.73%)
/images/default/hometown.png -- 12.31kb -> 12.26kb (0.38%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
2023-01-13 16:15:03 +00:00
Philipp a31d5ae7b1 Security: Use htmlspecialchars() for user input in Arguments class 2023-01-13 09:23:16 -05:00
Hypolite Petovan 0ad246f910 Drop UpdateContact worker task if contact is blocked
# Conflicts:
#	src/Worker/UpdateContact.php
2023-01-13 09:23:01 -05:00
Hypolite Petovan ee8e70e20e Drop UpdateGServer worker task if domain is blocked
# Conflicts:
#	src/Model/GServer.php
2023-01-13 09:21:43 -05:00
Hypolite Petovan fab06c32e6 Add UriInterface-enabled isUriBlocked method in Util\Network 2023-01-13 09:20:14 -05:00
Hypolite Petovan 69f97649d2 Add UriInterface-enabled cleanUri method in Model\GServer
- Tests!
2023-01-13 09:20:09 -05:00
Michael 24208ef125 Fix: Forum posts from some contacts weren't distributed 2023-01-13 09:19:10 -05:00
Michael 0c8e0a033d Improved handling of forum mentions 2023-01-13 09:18:47 -05:00
Michael 91aaf74402 Distribute forum comments only via the forum 2023-01-13 09:16:31 -05:00
Philipp 0530755332
Security: Use htmlspecialchars() for user input in Arguments class 2023-01-12 20:24:39 +01:00
Hypolite Petovan a7d0355849
Merge pull request #12659 from DanielSiepmann/12658-fix-feed-urls-with-whitespace
Properly handle feed item urls with surrounding whitespace
2023-01-12 07:57:30 -05:00
Hypolite Petovan 8e9b3234f4
Merge pull request #12657 from annando/display-blocked
Mode depending control for the behaviour with blocked contacts
2023-01-12 07:48:44 -05:00
Daniel Siepmann 6633b0af4b
Properly handle feed item urls with surrounding whitespace
Some feeds might have whitespace around the URLs of each item.
This can't be handled by parse_url.
Therefore the incoming url is trimmed to not contain any surrounding
whitespace for proper handling.

Relates: #12658
2023-01-12 13:47:57 +01:00
Michael 8a902afde5 Updated messages.po - again 2023-01-12 07:06:24 +00:00
Michael 6cdafb6b63 Fix "Undefined constant Friendica\Content\Conversation::PARCEL_DIASPORA" 2023-01-12 06:57:31 +00:00
Michael 5b8752edd9 Updated messages.po 2023-01-12 06:35:49 +00:00
Michael f542211189 Mode depending control for the behaviour with blocked contacts 2023-01-12 06:25:55 +00:00
Hypolite Petovan ec54b303c5
Merge pull request #12655 from annando/fix-communication
Fix: Forum posts from some contacts weren't distributed
2023-01-11 17:04:41 -05:00
Michael 53e8b21ca3 Fix: Forum posts from some contacts weren't distributed 2023-01-11 21:55:32 +00:00
Hypolite Petovan 8596902abd
Merge pull request #12653 from nupplaphil/bug/config_revert_null
Revert Cache delete() behavior to stable version
2023-01-11 16:06:28 -05:00
Philipp fef10e8a57
Improve encapsulation 2023-01-11 22:00:29 +01:00
Philipp 11a8bd17e3
Assure that deleted cat/keys are working as expected
- A deleted cache-key would delete a merged cache-key as well
- Deleting a key in the Model results in reloading the config to assure any value from underlying files
2023-01-11 21:53:34 +01:00
Philipp fd882abd80
Revert Cache delete() behavior to stable version 2023-01-11 21:10:59 +01:00
Philipp eda65296f5
Merge pull request #12635 from MrPetovan/task/12629-contact-threads-tab
Replace remaining mentions of "Status" by "Conversations" or "Posts"
2023-01-11 19:50:38 +01:00
Hypolite Petovan 9f902571b7 Update main translation file after changing strings 2023-01-11 09:01:30 -05:00
Hypolite Petovan 5c8cd8fdd6 Replace remaining mentions of "Status" by "Conversations" or "Posts" 2023-01-11 09:01:29 -05:00
Hypolite Petovan d0648b10ef Convert Content\Nav to dynamic object
- Remove DI dependency in Module\Apps
2023-01-11 09:01:24 -05:00
Michael Vogel f17d1f359f
Merge pull request #12647 from MrPetovan/bug/12607-image-user-theme
Enable profile user theme on single photo display
2023-01-11 07:44:57 +01:00
Hypolite Petovan 120b78e30a Enable profile user theme on single photo display 2023-01-10 20:40:35 -05:00
Philipp 1fc7d5ae85
Merge pull request #12645 from MrPetovan/bug/warnings
Replace HTML regular expression by HTML::extractCharset in ParseUrl::getSiteInfo
2023-01-10 19:23:52 +01:00
Hypolite Petovan 3966b58965 Only show line number if it's provided in System::callstack
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1377373973
2023-01-10 10:41:20 -05:00
Hypolite Petovan 3fcafd1d50 Replace HTML regular expression by HTML::extractCharset in ParseUrl::getSiteInfo
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1374537440
2023-01-10 10:36:59 -05:00
Hypolite Petovan 5e2b655b43 Add implementation of HTTP Media Type
- Add charset extraction from DOMDocument
- TESTS!
2023-01-10 10:36:58 -05:00
Hypolite Petovan f4b5d22396
Merge pull request #12644 from annando/improve-ignore
Improve the ignore behaviour
2023-01-10 09:05:48 -05:00
Michael 20a2cec0b0 Moved permission assigning / simplified block check 2023-01-10 05:59:25 +00:00
Philipp 4eea80bdd9
Merge pull request #12642 from MrPetovan/bug/fatal-errors
Address a few Fatal Errors
2023-01-09 23:14:05 +01:00
Hypolite Petovan 14e4c0db8e Check image property is set in Object\Image
- Property was either an object or null, strict comparison with "false" was inaccurate
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1374888800
2023-01-09 16:06:22 -05:00
Hypolite Petovan b77f3a7525 Check for URI ID existence in Post\Media::insert
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1374538325
2023-01-09 16:06:22 -05:00
Hypolite Petovan 4d5d8e5b64 Add line number to output in System::callstack 2023-01-09 16:06:22 -05:00
Hypolite Petovan 670b518875 Include other unique key column in condition in Model\Tag:store
- Address https://github.com/friendica/friendica/issues/12486#issuecomment-1372640002
2023-01-09 16:06:22 -05:00
Michael 194b84141d Updated messages.po 2023-01-09 17:29:42 +00:00
Michael 4e0da578fa Merge remote-tracking branch 'upstream/develop' into improve-ignore 2023-01-09 17:23:10 +00:00
Michael Vogel 69a9c2c618
Merge pull request #12641 from MrPetovan/bug/warnings
Add yet another case to DateTimeFormat::fix
2023-01-09 18:20:58 +01:00
Hypolite Petovan 6bee344681 Add yet another case to DateTimeFormat::fix
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1372637862
2023-01-09 11:38:25 -05:00
Hypolite Petovan 79a646550f
Merge pull request #12643 from annando/item-origin
Fix some warnings on item creation
2023-01-09 11:34:56 -05:00
Michael ee8ae5796a Updated messages.po again 2023-01-09 16:25:02 +00:00
Michael 840f25cc5c Improve ignoring of messages 2023-01-09 16:23:39 +00:00
Michael 214838ea3b Updated messages.po 2023-01-09 16:18:35 +00:00
Michael cd3dbad2a8 Fix some warnings on item creation 2023-01-09 15:55:35 +00:00
Hypolite Petovan e6f6087cac
Merge pull request #12638 from annando/collapse
Posts from contacts can now be collapsed
2023-01-08 19:23:57 -05:00
Michael 83dd49a43c Updated "messages.po" again 2023-01-08 23:26:26 +00:00
Michael eb2c42a9fb Merge branch 'collapse' of github.com:annando/friendica into collapse 2023-01-08 23:15:35 +00:00
Michael 82b28e173b Updated mesages.po 2023-01-08 23:15:15 +00:00
Michael Vogel c1f9c1aaa5
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-08 23:13:31 +01:00
Michael c9b6da0127 Remoce test code 2023-01-08 19:01:12 +00:00
Michael b0aa4eb4b7 Update routine to transfer the blockem list to collapsed 2023-01-08 18:59:07 +00:00
Michael 5738d480da Changed messages.po 2023-01-08 18:28:34 +00:00
Michael 480d9f53c3 Added "collapsed" list 2023-01-08 18:28:19 +00:00
Michael 50746bad55 Merge remote-tracking branch 'upstream/develop' into collapse 2023-01-08 17:47:21 +00:00
Michael 50e43c530e Posts from contacts can now be collapsed 2023-01-08 17:40:05 +00:00
Hypolite Petovan 0ae7a53daa
Merge pull request #12637 from annando/ostatus-subscription
OStatus: Fix PubSubHubBub subscription
2023-01-08 07:58:22 -05:00
Michael Vogel 1ef9768b98
Apply suggestions from code review
Co-authored-by: Philipp <admin+Github@philipp.info>
2023-01-08 13:00:58 +01:00
Philipp 1f0eae998e
Merge pull request #12636 from MrPetovan/bug/12625-api-not-implemented
Update API unsupported test
2023-01-08 11:03:06 +01:00
Michael c074da2b87 Fix test 2023-01-08 10:00:25 +00:00
Michael c3d836db63 OStatus: Fix PubSubHubBub subscription 2023-01-08 09:41:54 +00:00
Hypolite Petovan 8547014735 Update API unsupported test 2023-01-08 02:36:26 -05:00
Tobias Diekershoff 6bf670f64e
Merge pull request #12633 from MrPetovan/bug/12624-api-thumbnail
Change "thumbnail" for default Friendica banner image in Api\Mastodon\Instance
2023-01-08 08:28:24 +01:00
Tobias Diekershoff ec408f4500
Merge pull request #12634 from MrPetovan/bug/12625-api-not-implemented
Treat unsupported API call as HTTP error
2023-01-08 08:24:05 +01:00
Hypolite Petovan 6c379610dc Update main translation file after removing a string 2023-01-07 22:48:31 -05:00
Hypolite Petovan 97642e770b Treat unsupported API call as HTTP error 2023-01-07 22:47:52 -05:00
Hypolite Petovan 8ad94fef9b Change "thumbnail" for default Friendica banner image in Api\Mastodon\Instance 2023-01-07 22:39:07 -05:00
Hypolite Petovan 11558d0cc5
Merge pull request #12632 from nupplaphil/bug/more_config
Fix loading empty node.config.php
2023-01-07 22:32:11 -05:00
Philipp 979672a3c1
Filter disabled addons with "null" 2023-01-08 02:49:56 +01:00
Philipp 5ea50a9e81
Fix "null" addon list 2023-01-08 02:49:56 +01:00
Philipp 2293ff6206
Add test for Addon failures 2023-01-08 02:49:56 +01:00
Philipp 0429a4e429
Fix loading empty node.config.php 2023-01-08 02:49:56 +01:00
Hypolite Petovan 91bd03a75f
Merge pull request #12630 from annando/diaspora-item
Diaspora: Support for native photos
2023-01-07 17:19:42 -05:00
Michael aa3dc7c40c Add configuration 2023-01-07 21:28:21 +00:00
Michael 49c1ad2cc0 Merge remote-tracking branch 'upstream/develop' into diaspora-item 2023-01-07 21:21:51 +00:00
Hypolite Petovan 5fd3d4bda3
Merge pull request #12628 from nupplaphil/bug/typeerror
Don't ksort() or loop without an addon array
2023-01-07 15:06:28 -05:00
Michael 24c32cff0d Merge remote-tracking branch 'upstream/develop' into diaspora-item 2023-01-07 19:52:23 +00:00
Philipp 6aaf1ea5d4
Fix addons problem more elegant 2023-01-07 20:49:29 +01:00
Hypolite Petovan f37edc06e1
Merge pull request #12609 from annando/mod-item
Code cleanup for mod/item.php
2023-01-07 14:03:00 -05:00
Philipp 9fb5b95b5e
Fix other foreach() troubles at Addon.php 2023-01-07 19:54:59 +01:00
Michael Vogel d5bc6d0006
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-07 19:54:13 +01:00
Philipp 6454c1dee7
Don't ksort() on null 2023-01-07 19:52:43 +01:00
Michael f5fd99f7ea Unbneeded strlen removed 2023-01-07 18:51:28 +00:00
Michael 900e0d46d3 Changes after review 2023-01-07 18:46:10 +00:00
Michael 6a0a13855f More simplifications 2023-01-07 18:19:04 +00:00
Michael 8654b39e98 Simplified code 2023-01-07 18:07:54 +00:00
Michael d22712956b Updated messages.po 2023-01-07 17:16:44 +00:00
Michael 4e4eab7548 Merge remote-tracking branch 'upstream/develop' into mod-item 2023-01-07 17:14:40 +00:00
Hypolite Petovan 450dd433a3
Merge pull request #12627 from nupplaphil/feat/config_warning
Check `node.config.php` file permission
2023-01-07 11:41:44 -05:00
Michael d86045058e Diaspora: Photos are now transmitted separately 2023-01-07 15:11:34 +00:00
Philipp 7b30c44b60
Update messages.po 2023-01-07 15:50:03 +01:00
Philipp 6bd1740a94
omg .. wrong assertion .. 2023-01-07 15:49:55 +01:00
Philipp 6e4e2c4a82
Fix warning text 2023-01-07 15:30:45 +01:00
Philipp b7a2b6b352
Update src/Module/Admin/Summary.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-07 15:28:49 +01:00
Philipp f2253991e7
Update messages.po 2023-01-07 15:18:23 +01:00
Philipp 6e0d16f22b
Add warning message in case node.config.php isn't writable 2023-01-07 15:16:55 +01:00
Hypolite Petovan 308618b559
Merge pull request #12622 from nupplaphil/bug/config
`node.config.php` bugfixings
2023-01-07 08:45:53 -05:00
Philipp 80e8f4aa34
Execute critical worker tasks, even if we're in daemon mode 2023-01-07 13:43:16 +01:00
Philipp abd3b2180f
Merge pull request #12619 from MrPetovan/task/12617-remove-no_auto_update
Remove system.no_auto_update personal config key and assume default value of true
2023-01-06 17:54:36 +01:00
Philipp 5b2e02889e
Fix Update::run() 2023-01-06 17:50:56 +01:00
Philipp b2e14f209b
Move Update::check() into daemon loop 2023-01-06 17:03:04 +01:00
Philipp 081dbae7c2
Apply Update::check() suggestions 2023-01-06 12:50:32 +01:00
Philipp baf3225916
Apply Update::check() suggestions 2023-01-06 12:50:14 +01:00
Philipp c35fd68ec2
Adapt doc 2023-01-06 12:47:00 +01:00
Philipp beb3d376b2
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-06 12:46:06 +01:00
Philipp 05048d4abf
Update src/Core/Config/ValueObject/Cache.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-06 12:43:04 +01:00
Philipp 70704ccb19
Update src/Core/Update.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-06 12:42:56 +01:00
Philipp 9462bfa763
Update src/Core/Config/Util/ConfigFileManager.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-06 12:42:43 +01:00
Philipp b3772163d8
Add doc 2023-01-06 03:06:11 +01:00
Philipp ce8c820221
add description 2023-01-06 02:54:34 +01:00
Philipp c8b9e40b85
remove print_r 2023-01-06 02:54:28 +01:00
Philipp d53cb31869
Update src/Core/Config/Util/ConfigFileManager.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-06 02:16:35 +01:00
Philipp 18293280b7
Add license 2023-01-06 01:12:54 +01:00
Philipp e14050491a
Config fixing
- unlock/close the `node.config.php` in every circumstances
2023-01-06 01:10:57 +01:00
Philipp 5aa8e8adf1
Config fixings
- Delete now really overwrites static default/setting.config.php keys
- Delete now really overwrites static default/setting.config.php categories
- The Update::check() routine is added to different places
- Merge the given config file with the new config before writing
- Remove ConfigTransaction::get() because it's no more reliable
2023-01-06 01:03:00 +01:00
Philipp cdd57275eb
Some improvements
- Move $_SERVER into ConfigFileManager constructor
- Rename "creatConfigFileLoader" to "createConfigFileManager"
- Rename variable "loader" to "manager" in all tests
2023-01-06 01:03:00 +01:00
Philipp b4096251ba
Check 'config' table as fallback for migrations 2023-01-06 01:03:00 +01:00
Philipp 7fcb6c86f1
Merge pull request #12621 from MrPetovan/bug/12620-api-push-boolean
Cast alert types to boolean in Api\Mastodon\Subscription
2023-01-05 18:28:39 +01:00
Hypolite Petovan 6685157f8a Cast alert types to boolean in Api\Mastodon\Subscription 2023-01-05 11:54:01 -05:00
Hypolite Petovan 204a478f65 Update main translation file after removing a string 2023-01-05 10:44:03 -05:00
Hypolite Petovan 3b9bf4d70d Remove system.no_auto_update personal config key and assume default value of true
- By popular request, the behavior with false was too perturbating
2023-01-05 10:27:03 -05:00
Hypolite Petovan dfcfae6bcc Replace $_GET references with $request in Update classes 2023-01-05 10:23:25 -05:00
Michael Vogel 2f28ec7af0
Merge pull request #12615 from MrPetovan/task/12601-update-gserver-block
Drop UpdateGServer worker task if domain is blocked
2023-01-05 12:37:00 +01:00
Hypolite Petovan 0d2da55dfe
Merge pull request #12618 from nupplaphil/no_config_purge
Don't wipe `config` or `addon` data
2023-01-04 22:36:51 -05:00
Philipp b38141211c
Don't wipe config or addon data 2023-01-05 02:40:38 +01:00
Hypolite Petovan 92301c6464
Merge pull request #12605 from nupplaphil/feat/addons_load
Move table `addons` into `node.config.php`
2023-01-04 17:13:52 -05:00
Philipp 4b17d6f3bf
Update src/Core/Addon.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-04 23:12:41 +01:00
Michael 9a1a406c03 Preview of attached links work again 2023-01-04 21:52:02 +00:00
Philipp 01403d15c4
sort addon array 2023-01-04 21:55:51 +01:00
Philipp 13b234d279
Use addons config entries instead of the addon table 2023-01-04 21:55:51 +01:00
Philipp cd11088cc4
Move 'addon' table into config 2023-01-04 21:55:51 +01:00
Hypolite Petovan 647ab1d04a Drop UpdateContact worker task if contact is blocked 2023-01-04 14:41:09 -05:00
Hypolite Petovan 1f3c07c06f Drop UpdateGServer worker task if domain is blocked 2023-01-04 14:41:09 -05:00
Hypolite Petovan a907d6c87b Add UriInterface-enabled isUriBlocked method in Util\Network 2023-01-04 14:41:08 -05:00
Hypolite Petovan a574146f04 Add UriInterface-enabled cleanUri method in Model\GServer
- Tests!
2023-01-04 14:41:08 -05:00
Hypolite Petovan 6c033c9bd1
Merge pull request #12606 from nupplaphil/bug/file_put
Fix config read/write locking
2023-01-04 14:40:31 -05:00
Philipp dce86be58e
Just commit config transactions if something changed 2023-01-04 19:55:22 +01:00
Hypolite Petovan 489e04e666
Merge pull request #12614 from haheute/photo-view-direction
improve previous / next function in photo gallery
2023-01-04 11:45:12 -05:00
Hannes Heute 24b5710e17 remove parentheses 2023-01-04 16:58:45 +01:00
Hannes Heute 46461be818 improve previous / next function in photo gallery 2023-01-04 14:25:33 +01:00
Michael 09f46b20f1 Functionality is split 2023-01-04 10:59:28 +00:00
Philipp a12172cf69
Merge pull request #12611 from haheute/photo-view-typo
small typo
2023-01-04 09:47:29 +01:00
Hannes Heute bf28f4f751 small typo 2023-01-04 09:18:24 +01:00
Philipp aabe39220d
Make flock writing easier 2023-01-04 08:16:40 +01:00
Philipp c057954896
Make BaseURL check/save transactional and make the whole process easier 2023-01-04 08:14:00 +01:00
Michael d1a951f0ac Post processing centralized 2023-01-04 06:52:40 +00:00
Michael 0d56f156f7 Code cleanup for mod/item.php 2023-01-04 05:44:52 +00:00
Philipp 17105cf7d1
Fix config read/write locking 2023-01-04 00:25:18 +01:00
Philipp 2292263780
Add more special chars at tests 2023-01-04 00:25:17 +01:00
Philipp 317c525cbe
Fix keyValue() call at daemon.php 2023-01-04 00:25:16 +01:00
Philipp 4c2fc3ea38
Reduce config->set() load for worker executions 2023-01-04 00:25:15 +01:00
Hypolite Petovan 0ab5fed64c
Merge pull request #12604 from nupplaphil/bug/marco_r
Some Bugfixings (thx to Marco R.)
2023-01-03 15:14:15 -05:00
Philipp 176af67e88
Fix empty fetchResult curResult at Link::fetchMimeType (thx to Marco R.) 2023-01-03 21:06:16 +01:00
Philipp 3110831131
Fix empty fetchResult at ExternalStorage (thx to Marco R.) 2023-01-03 21:05:58 +01:00
Hypolite Petovan 19603fd6a5
Merge pull request #12593 from nupplaphil/feat/node.config.php
Replace `config` with `node.config.php`
2023-01-03 11:43:55 -05:00
Philipp beff759c82
Update src/Core/Config/Model/ConfigTransaction.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-03 17:39:32 +01:00
Philipp a46cd2fb36
Remove get() from config transaction interface 2023-01-03 17:26:48 +01:00
Philipp b439df892a
Apply suggestions 2023-01-03 17:24:05 +01:00
Philipp 072464119a
Make PHP-CS happy 2023-01-03 15:40:57 +01:00
Philipp dd88d193b9
Escape single quotes and backslashes 2023-01-03 15:36:36 +01:00
Philipp 65d79d4c93
Introduce ISetConfigValuesTransactional for transactional config behaviour 2023-01-03 14:22:07 +01:00
Philipp 4d4b4a8858
Revert BaseURL 2023-01-03 14:22:07 +01:00
Philipp 376e0a9397
Fix Admin\Site 2023-01-03 14:22:07 +01:00
Philipp ae1533e312
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-03 14:22:06 +01:00
Philipp 5ff1d431aa
add another test 2023-01-03 14:22:06 +01:00
Philipp 4585335db9
Check if table exists 2023-01-03 14:22:05 +01:00
Philipp 88b3effc18
Use toConfigValue in case of serialized, legacy data 2023-01-03 14:22:05 +01:00
Philipp 10f3de0aa2
Remove deprecated Mode::DBCONFIGAVAILABLE 2023-01-03 14:22:04 +01:00
Philipp 1e574d5383
Refactor IManageConfigValues interface 2023-01-03 14:22:04 +01:00
Philipp 326566638f
adapt tests 2023-01-03 14:22:03 +01:00
Philipp d272e8c3c7
Remove unnecessary classes 2023-01-03 14:22:03 +01:00
Philipp b871e1d264
Introduce lightweight Config model 2023-01-03 14:22:02 +01:00
Philipp 0f91d1cbde
Introduce ConfigFileManager for config files 2023-01-03 14:22:02 +01:00
Philipp fea4b202c1
Introduce ConfigFileTransformer for Config files 2023-01-03 14:22:02 +01:00
Michael Vogel 6318406951
Merge pull request #12585 from MrPetovan/task/4090-mod-oexchange
Remove obsolete OExchange module and reference
2023-01-02 13:15:32 +01:00
Hypolite Petovan 9c256ad76f Remove obsolete OExchange module and reference
- Protocol looks unsupported for a decade now
2023-01-01 19:20:42 -05:00
Hypolite Petovan 8bbf9e93c6 Remove dependency to the second parameter of XML::fromArray 2023-01-01 19:20:42 -05:00
Hypolite Petovan 931ccde90d
Merge pull request #12597 from annando/activity-distribution
Don't distribute unsigned remote activities
2023-01-01 19:19:25 -05:00
Michael Vogel 6b914ccc0f
Merge pull request #12586 from MrPetovan/task/entitize-delivery-queue
Add Entity-Factory-Repository for deliver-queue
2023-01-02 00:56:13 +01:00
Michael Vogel 3f30980591
Merge pull request #12589 from MrPetovan/bug/warnings
Address a few warnings in Search\Acl
2023-01-02 00:53:26 +01:00
Hypolite Petovan a786bd3777 Remove unused static methods related to delivery-queue 2023-01-01 18:50:21 -05:00
Hypolite Petovan a744b8b56f Replace direct database calls and anonymous arrays by repository calls and entity objects 2023-01-01 18:50:21 -05:00
Hypolite Petovan 49654c0d99 Create entity-related classes for delivery-queue table 2023-01-01 18:50:19 -05:00
Hypolite Petovan f9676c9ed2 Convert Directory Search results into contact-looking records
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1368216631
2023-01-01 18:47:45 -05:00
Hypolite Petovan 6e06a7f14c Remove dependency to DI in Search\Acl module 2023-01-01 18:47:44 -05:00
Michael 78c3c56ca5 Don't distribute unsigned remote activities 2023-01-01 23:37:17 +00:00
Philipp 4faf08c064
Merge pull request #12562 from MrPetovan/bug/notices
Ward againt contact_id = 0 in UpdateContact worker
2023-01-02 00:34:21 +01:00
Michael Vogel 462625368f
Merge pull request #12596 from nupplaphil/bug/errors
Checks if the Photo order argument is a valid column
2023-01-01 22:54:55 +01:00
Philipp f8f3689a0d
Fix https://github.com/friendica/friendica/issues/12486#issuecomment-1368540088 2023-01-01 22:34:01 +01:00
Hypolite Petovan fde223327f
Merge pull request #12594 from annando/diaspora-communication
Fix communication to Diaspora when not in bulk mode
2023-01-01 15:13:45 -05:00
Michael 24065d307b Fix communication to Diaspora when not in bulk mode 2023-01-01 19:52:08 +00:00
Hypolite Petovan 50ef24cb14
Merge pull request #12592 from annando/server-status
Set the server status directly after transmission
2023-01-01 12:42:18 -05:00
Michael f1bcf1ef66 Set the server status directly after transmission 2023-01-01 17:34:05 +00:00
Hypolite Petovan 8c60e853ca
Merge pull request #12587 from annando/inbox-gsid
The inbox-status can now be archived for a whole server
2023-01-01 10:49:32 -05:00
Michael 12fac6e089 Close the database 2023-01-01 15:37:47 +00:00
Michael 360614d2cf Merge remote-tracking branch 'upstream/develop' into inbox-gsid 2023-01-01 15:25:28 +00:00
Michael Vogel 6aa1dcfad3
Merge pull request #12591 from MrPetovan/task/2023-licence
Happy New Year 2023!
2023-01-01 16:19:04 +01:00
Michael df5305f384 Increase another forgotten year 2023-01-01 15:15:16 +00:00
Michael fe897c7ef4 Increase the year 2023-01-01 15:14:45 +00:00
Michael 7307646cf8 Use server id on direct delivery 2023-01-01 15:13:44 +00:00
Hypolite Petovan 1874a32728 Happy New Year 2023! 2023-01-01 09:36:24 -05:00
Michael 6bc9754b24 Add the server id for all Diaspora contacts 2023-01-01 10:52:22 +00:00
Michael 06403f1546 License updated 2023-01-01 07:52:28 +00:00
Michael 12d37835b4 Set "archive" status 2023-01-01 00:18:01 +00:00
Michael e21db0fe6d The inbox-status can now be archived for a whole server 2022-12-31 23:42:00 +00:00
Hypolite Petovan 7942881f7e
Merge pull request #12584 from annando/avoid-undefined
Avoid undefined variable "$rendered"
2022-12-31 11:55:45 -05:00
Michael e0a5e32f8e Avoid undefined variable "$rendered" 2022-12-31 16:47:33 +00:00
Hypolite Petovan 319857edaa
Merge pull request #12583 from annando/delivery-queue
Bulk delivery added for all protocols
2022-12-31 11:36:54 -05:00
Michael 8e397b5849 Changes after review 2022-12-31 16:20:18 +00:00
Michael f022a49f9e New "Defunct" check 2022-12-31 16:01:40 +00:00
Michael dc528a020b Remove blank 2022-12-31 12:47:48 +00:00
Michael 259b99e6e9 Bulk delivery added for all protocols 2022-12-31 12:19:34 +00:00
Philipp 2844ea779d
Merge pull request #12579 from MrPetovan/bug/fatal-errors
Add previous exception to unexpected worker exception logging
2022-12-31 10:08:30 +01:00
Philipp fefe9cd5c9
Merge pull request #12578 from MrPetovan/bug/warnings
Add new case to DateTimeFormat::fix
2022-12-31 10:08:13 +01:00
Hypolite Petovan b0898ada29 Add previous exception to unexpected worker exception logging 2022-12-30 22:25:19 -05:00
Hypolite Petovan b6f3f298fe Add new case to DateTimeFormat::fix
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1368011436
2022-12-30 21:40:37 -05:00
Philipp 9825f12b16
Merge pull request #12576 from MrPetovan/bug/warnings
Address a few warnings in HTTPSignature
2022-12-31 00:07:09 +01:00
Hypolite Petovan 19b5362f93 Return early when inbox-status row couldn't be inserted in HTTPSignature->setInboxStatus
- Address https://github.com/friendica/friendica/issues/12488?notification_referrer_id=NT_kwDOAA4e57E1MTM1MzE3MjU2OjkyNTQxNQ#issuecomment-1366991471
2022-12-30 17:23:23 -05:00
Hypolite Petovan 6e31b8d6a5 Avoid return type exeption in HTTPSignature->post
- Prefer passing the owner record array instead of just the uid
- +4/-7 calls to User::getOwnerDataById
2022-12-30 17:23:22 -05:00
Hypolite Petovan 3fcc45a720
Merge pull request #12577 from annando/move-delivery
Move delivery functionality into a new place
2022-12-30 17:09:54 -05:00
Michael ce6845f44f Code standards 2022-12-30 21:44:12 +00:00
Michael 4eceb2d26f Merge remote-tracking branch 'upstream/develop' into move-delivery 2022-12-30 21:40:09 +00:00
Michael e4c5d9f62d Fix code standards 2022-12-30 21:37:09 +00:00
Hypolite Petovan bacf901d0e
Merge pull request #12574 from nupplaphil/feat/keyvalue_storage
Introduce key-value storage
2022-12-30 16:36:03 -05:00
Michael dd4aeba5a1 Updated messages.po 2022-12-30 21:31:00 +00:00
Michael 9115ec5f0d Adjust class references to the new location 2022-12-30 21:20:28 +00:00
Michael 6d087ee455 Move delivery functionality to a new class 2022-12-30 21:19:55 +00:00
Philipp 00eaa99eb3
Make updated_at not nullable, it should get set at the creation as well 2022-12-30 17:15:15 +01:00
Michael Vogel e78e68789e
Merge pull request #12569 from MrPetovan/bug/12559-attachment-images
Remove attachment tags before checking for end of body images
2022-12-30 09:42:20 +01:00
Hypolite Petovan e563de4de7 Ward againt contact_id = 0 in UpdateContact worker
- Add parameter validation in Worker\UpdateContact::add
- Address https://github.com/friendica/friendica/issues/12487#issuecomment-1366833644
2022-12-30 02:10:29 -05:00
Hypolite Petovan 12df6297d7 Remove attachment tags before checking for end of body images 2022-12-30 02:10:11 -05:00
Hypolite Petovan 5af956b92f
Merge pull request #12570 from haheute/issue-11986-dm-link
Add link to heading in direct messages list
2022-12-30 01:52:13 -05:00
Philipp f96aec18cc
Fixup maintenance mode 2022-12-29 23:38:14 +01:00
Philipp 0d6a4c8951
fix SQL 2022-12-29 23:27:36 +01:00
Philipp 9936081c7e
Fix DBA lock test 2022-12-29 22:56:27 +01:00
Philipp f95d5c7f89
Remove accidentally created table 2022-12-29 22:47:20 +01:00
Philipp a330a3c22d
Make PHP-CS happy again 2022-12-29 22:38:01 +01:00
Philipp 86f80af432
Rename Interface 2022-12-29 22:37:12 +01:00
Philipp 8894b482dc
Find last "update_" config entry occurrence 2022-12-29 22:36:45 +01:00
Philipp 7c4c409060
Change key-value table
- Make "k" as primary key
- Added "updated_at"
2022-12-29 22:36:08 +01:00
Philipp f944a2a620
rollback unwanted change 2022-12-29 22:13:39 +01:00
Philipp 925c30280c
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-29 22:12:02 +01:00
Philipp 965caf98a5
Replace database "update_" config entries with key-value entries 2022-12-29 21:53:58 +01:00
Philipp 1ed67fba3d
Replace addon "last" config entries with key-value entries 2022-12-29 21:53:57 +01:00
Philipp b227d65dfc
Replace worker_daemon_mode config entry with key-value entry 2022-12-29 21:53:57 +01:00
Philipp 6b3265742a
Replace cron/worker "last" config entries with key-value entries 2022-12-29 21:53:57 +01:00
Philipp 10f8631cd9
Replace PostUpdate key-value config entries with key-value pair entries 2022-12-29 21:53:56 +01:00
Philipp 47764387b3
Introduce Key-Value Pair storage provider 2022-12-29 21:53:56 +01:00
Philipp 9a10bb4295
Add key-value table 2022-12-29 21:38:47 +01:00
Hypolite Petovan c264278c5d
Merge pull request #12575 from nupplaphil/bug/messages.po
Fix messages.po and adapt README
2022-12-29 15:37:51 -05:00
Philipp c517ab386a
Fix messages.po and adapt README 2022-12-29 21:30:01 +01:00
Hypolite Petovan 44818ba556
Merge pull request #12572 from mexon/mat/network-failure-error
Return network match failure in error message instead of logging
2022-12-29 15:11:36 -05:00
Hypolite Petovan 03e03c126d
Merge pull request #12573 from mexon/mat/local-host
Allow HTTP requests to hosts in local hosts file
2022-12-29 14:40:10 -05:00
Matthew Exon c0a874b8d4 Update translation file with new error message 2022-12-29 20:07:18 +01:00
Hypolite Petovan b04feeeac5
Merge pull request #12571 from mexon/mat/local-contact
Allow adding local contacts via console
2022-12-29 13:48:04 -05:00
Matthew Exon 9c33074bdc Allow HTTP requests to hosts in local hosts file 2022-12-29 19:44:49 +01:00
Matthew Exon 119be35a79 Return network match failure in error message instead of logging 2022-12-29 19:42:22 +01:00
Matthew Exon 1dbbafa1af Allow adding local contacts via console 2022-12-29 19:39:27 +01:00
haheute e29c934ae4
Merge branch 'friendica:develop' into issue-11986-dm-link 2022-12-29 18:32:17 +01:00
Hannes Heute 6793e04365 add link to direct message heading 2022-12-29 18:28:01 +01:00
Tobias Diekershoff 272951d39b
Merge pull request #12564 from nnsrymni/develop
JA translation update
2022-12-29 18:24:20 +01:00
Hypolite Petovan 81423df723
Merge pull request #12567 from haheute/issue-12522-typo
Issue 12522 typo
2022-12-29 09:24:35 -05:00
haheute b8f1fecd51
Merge branch 'friendica:develop' into issue-12522-typo 2022-12-29 14:54:59 +01:00
Hannes Heute 501b98ec09 fixed the typo 2022-12-29 14:45:51 +01:00
Philipp 938f3d80c8
Merge pull request #12543 from MrPetovan/task/12489-screen-reader-part-7
Turn show comments element into a full-fledged button
2022-12-29 07:59:49 +01:00
Philipp edfec967de
Merge pull request #12561 from MrPetovan/bug/12550-logger-introspection
Add Core\Logger to the introspection skip class list
2022-12-29 07:58:27 +01:00
nnsrymni 7122d72871 JA translation update 2022-12-29 09:15:05 +09:00
Hypolite Petovan 8b1947bd78 Add Core\Logger to the introspection skip class list
- Make class list explicit to avoid confusion between similar class names
- Update skipped class string match to a safer "starts with" condition
2022-12-28 17:54:37 -05:00
Hypolite Petovan 9dbcbe0482 Remove extraneous Introspection->isTraceClassOrSkippedFunction second parameter 2022-12-28 17:51:07 -05:00
Hypolite Petovan dbc4e52fc4 Turn show comments element into a full-fledged button 2022-12-28 17:46:55 -05:00
Hypolite Petovan e0241c36ef Replace base wall_thread template by vier version 2022-12-28 17:46:55 -05:00
Hypolite Petovan 59b5d080d5
Merge pull request #12558 from MarekBenjamin/fix-disorted-portraits
Fixed width and height not updated when image rotation is done by EXIF based orient method
2022-12-28 17:30:47 -05:00
Hypolite Petovan 26db8a71b0
Merge pull request #12560 from HankG/mastodon-api-tag-names-with-case
Make tag 'Names' Field have case-sensitive version
2022-12-28 17:30:23 -05:00
MarekBenjamin 2d1d06c6d2
Update src/Object/Image.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-28 23:19:53 +01:00
MarekBenjamin ed05d6376d
Update src/Object/Image.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-28 23:19:48 +01:00
Hank Grabowski 4f0968a93c Make tag 'Names' Field have case-sensitive version 2022-12-28 17:01:06 -05:00
Marek Bachmann 19b8b389fd Fixed width and height not updated when image rotation is done by EXIF based orient method 2022-12-28 21:43:34 +01:00
Hypolite Petovan 689b6b015b
Merge pull request #12557 from annando/reduce-update-contacts
Reduce the amount of "UpdateContact" worker calls
2022-12-28 13:12:30 -05:00
Hypolite Petovan 21056ae587
Merge pull request #12548 from MarekBenjamin/doubled_code_for_scaling-dimensions
Replace duplicated code by Images::getScalingDimensions call in Object\Image->scaleDown
2022-12-28 11:48:21 -05:00
Michael 088a3b6bc4 Merge remote-tracking branch 'upstream/develop' into reduce-update-contacts 2022-12-28 16:06:08 +00:00
Michael 954b95b039 Updated logging 2022-12-28 16:04:31 +00:00
Marek Bachmann eb87a2afbe Merge remote-tracking branch 'origin/doubled_code_for_scaling-dimensions' into doubled_code_for_scaling-dimensions
# Conflicts:
#	src/Object/Image.php
2022-12-28 16:43:47 +01:00
Marek Bachmann 7b34fdc715 removed one redundant check for height and width beeing set 2022-12-28 16:42:38 +01:00
MarekBenjamin 2c509ac2b2
Update src/Object/Image.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-28 16:32:33 +01:00
Michael 54d308fb8a Fix indention 2022-12-28 15:16:07 +00:00
Michael e0e2e45b91 Reduce the amount of "UpdateContact" worker calls 2022-12-28 14:56:12 +00:00
Tobias Diekershoff 5c3cb63952
Merge pull request #12549 from MrPetovan/task/12490-fakelink-button
Turn fake link spans into full-fledged buttons
2022-12-28 07:39:56 +01:00
Tobias Diekershoff 96ae9a2ba8
Merge pull request #12553 from MrPetovan/bug/12552-getRelativeDate-60-minutes
Switch rounding to flooring in Temporal::getRelativeDate
2022-12-28 07:33:36 +01:00
Hypolite Petovan 76edf4d285 Update main translation file after updating strings 2022-12-28 00:46:16 -05:00
Hypolite Petovan a1dc6e2417 Switch rounding to flooring in Temporal::getRelativeDate
- Add tests for regression
2022-12-28 00:32:26 -05:00
Hypolite Petovan 53c0fffbec Add ClockInterface dependency to Temporal::getRelativeDate
- Remove unused $format parameter
2022-12-28 00:31:20 -05:00
Hypolite Petovan a1070f4818 Turn fake link spans into full-fledged buttons 2022-12-27 21:47:35 -05:00
Philipp 60551e6277
Merge pull request #12547 from MrPetovan/bug/12545-plink-zindex
[frio] Restore access to plink icon in thread view
2022-12-28 03:33:52 +01:00
Marek Bachmann 88a7dd1afb Replaced the doubled code in for getScalingDimension with Images::getScalingDimensions($width, $height,$max) 2022-12-28 03:30:56 +01:00
Hypolite Petovan 48e960cc84 [frio] Restore access to plink icon in thread view 2022-12-27 21:12:48 -05:00
Hypolite Petovan fbb068e415 [frio] Normalize display of plink/network icons between thread/search 2022-12-27 21:12:23 -05:00
Michael Vogel 59268c600c
Merge pull request #12544 from nupplaphil/bug/redirect
Fix redirects
2022-12-27 21:04:02 +01:00
Philipp 7b42657d1e
Fix redirects 2022-12-27 20:08:33 +01:00
Michael Vogel 4bb0fdc9a9
Merge pull request #12541 from MrPetovan/task/10974-screen-reader-part-3
Remove counter-productive role="heading" and aria-level attributes
2022-12-27 19:35:39 +01:00
Hypolite Petovan c19dd39fe3 Remove counter-productive role="heading" and aria-level attributes 2022-12-27 13:24:19 -05:00
Hypolite Petovan 89705afa9d
Merge pull request #12540 from annando/forum-thread
Improved handling of forum mentions
2022-12-27 12:13:36 -05:00
Michael b7e461d2f3 Improved handling of forum mentions 2022-12-27 17:01:40 +00:00
Philipp e0fa557f18
Merge pull request #12539 from annando/forum-thread
Distribute forum comments only via the forum
2022-12-27 17:51:22 +01:00
Michael ca0e3e3db7 Distribute forum comments only via the forum 2022-12-27 16:14:04 +00:00
Hypolite Petovan df7415a84e
Merge pull request #12538 from MarekBenjamin/patch-1
Update sample-nginx-certbot.config
2022-12-27 10:08:36 -05:00
MarekBenjamin 45fce5c15e
Update sample-nginx-certbot.config
in accordance to 1dfe0fc603
2022-12-27 15:00:25 +01:00
Hypolite Petovan 5c332af844
Merge pull request #12527 from nupplaphil/feat/request_id
Introduce Request::getRequestId()
2022-12-26 16:07:35 -05:00
Philipp 1dfe0fc603
adapt examples 2022-12-26 21:18:05 +01:00
Philipp 4f1bb0d274
Use X-REQUEST-ID for Error pages 2022-12-26 21:18:05 +01:00
Philipp 5584e7a4e5
Use X-REQUEST-ID for Logging 2022-12-26 21:18:04 +01:00
Philipp 10864e50c7
Adapt Logger\Introspection
- Create an interface
- Add it as constructor parameter
2022-12-26 21:18:04 +01:00
Philipp bfc1c157f1
Adapt UserSession
- Move from App methods to UserSession methods
- Deprecate corresponding App methods
2022-12-26 21:18:04 +01:00
Hypolite Petovan fa579c2346
Merge pull request #12534 from annando/activity-types
Cleanup work with the activity types
2022-12-26 10:26:45 -05:00
Michael 7c4b320f30 Cleanup work with the activity types 2022-12-26 15:08:46 +00:00
Michael Vogel cd1cc9ea43
Merge pull request #12533 from MrPetovan/bug/warnings
Address several warning messages
2022-12-26 15:40:58 +01:00
Hypolite Petovan 1be9d6b2cb Fix wrong variable reference in view wall_thread template
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1364715116
2022-12-26 09:26:57 -05:00
Hypolite Petovan 74229fe230 Ward against empty $target_item array (relocation) in Worker\Delivery->deliverDFRN
- Address third part of https://github.com/friendica/friendica/issues/12488#issuecomment-1364487793
2022-12-26 09:22:44 -05:00
Hypolite Petovan 482eeb7109 Fix wrong square bracket position in Worker\Delivery->deliverDFRN
- Address second part of https://github.com/friendica/friendica/issues/12488#issuecomment-1364487793
2022-12-26 09:11:37 -05:00
Hypolite Petovan e8420dcb71 Query expected photo.type field in Protocol\DFRN::relocate
- Address first part of https://github.com/friendica/friendica/issues/12488#issuecomment-1364487793
2022-12-26 09:10:55 -05:00
Tobias Diekershoff 1babd93c15
Merge pull request #12532 from annando/warning
Fixes "E_WARNING: Undefined variable $subject"
2022-12-26 14:27:19 +01:00
Michael e718d39ef0 Fixes "E_WARNING: Undefined variable $subject" 2022-12-26 12:14:45 +00:00
Tobias Diekershoff c1d74db7c9
Merge pull request #12531 from annando/read
Activity "Read" is now stored
2022-12-26 10:15:20 +01:00
Michael e05cbf46e1 Activity "Read" is now stored 2022-12-26 08:41:40 +00:00
Hypolite Petovan d8fe7e22b0
Merge pull request #12528 from annando/issue-12524
Issue 12524: Fix first day of week
2022-12-25 19:03:26 -05:00
Michael 46fdf696ee Issue 12524: Fix first day of week 2022-12-25 22:45:34 +00:00
Hypolite Petovan 08bfd37cac
Merge pull request #12518 from annando/reporter
Reports: The reporting contact id is added
2022-12-25 07:34:21 -05:00
Michael 80247bd1ca Fix tests 2022-12-25 10:57:27 +00:00
Michael c0c70427f3 Tests 2022-12-25 10:52:47 +00:00
Michael 5298cd73b3 We now store the violation as well 2022-12-25 10:44:06 +00:00
Michael fd53cf824f Tests 2022-12-25 07:40:19 +00:00
Michael cef4349421 Changed parameter order 2022-12-25 07:30:39 +00:00
Michael dc73cbe30c Simplified code 2022-12-24 23:33:21 +00:00
Michael 59a848c8ec Tests 2022-12-24 23:26:54 +00:00
Hypolite Petovan c376605dd2
Merge pull request #12519 from tobiasd/20221224-img
issue 12515
2022-12-24 10:28:26 -05:00
Michael 8a7d08ae28 Category added 2022-12-24 13:57:43 +00:00
Tobias Diekershoff 509715068a use correct field for ALT test 2022-12-24 14:57:03 +01:00
Tobias Diekershoff 8dcfafcfb0 issue 12515 2022-12-24 14:52:26 +01:00
Michael bf4d321aa3 Wrong variable 2022-12-24 08:09:23 +00:00
Michael 4c945850f4 Reports: The reporting contact id is added 2022-12-24 08:03:37 +00:00
Hypolite Petovan e9c6611965
Merge pull request #12516 from annando/api-report
AP: We can now store received reports
2022-12-23 22:00:45 -05:00
Michael 8cb85368ff Added comment 2022-12-23 22:48:57 +00:00
Michael 72e1d5d417 Fix storing reports 2022-12-23 22:43:32 +00:00
Michael ca12d1549b AP: We can now store received reports 2022-12-23 22:11:50 +00:00
Philipp 8fd0d4cdc0
Merge pull request #12513 from MrPetovan/bug/12507-rel-meeee
Add call to HTML::checkRelMeLink in Worker\CheckRelMeProfileLink
2022-12-23 21:12:06 +01:00
Hypolite Petovan e4ac3c7922
Merge pull request #12510 from MarekBenjamin/email-notification_like-in-subject
Change email subject to "(...)like in conversation(...)" for likes in…
2022-12-23 07:57:28 -05:00
MarekBenjamin 3061cee083
Update src/Navigation/Notifications/Repository/Notify.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-23 11:14:38 +01:00
Hypolite Petovan b2f2fbc4d4 Flatten conditions and add call to HTML::checkRelMeLink in Worker\CheckRelMeProfileLink 2022-12-23 02:44:49 -05:00
Hypolite Petovan 91c4ab2359 Add new xpathQuote and checkRelMeLink methods to Content\Text\HTML class
- Add tests for both methods
2022-12-23 02:41:22 -05:00
Philipp e5e4d142ce
Merge pull request #12512 from annando/available
A server is only reachable when the network can be detected
2022-12-23 08:28:34 +01:00
Michael 998b05095b A server is only reachable when the network can be detected 2022-12-23 06:48:53 +00:00
Hypolite Petovan b898dd1c00
Merge pull request #12511 from annando/only-active
Only check the homepage for active users with a homepage
2022-12-23 01:29:20 -05:00
Michael 1e888ad6a4 Always check whe verified 2022-12-23 06:26:58 +00:00
Michael 179d776d0a Only check the homepage for active users with a homepage 2022-12-23 06:22:12 +00:00
Marek Bachmann 8393975cbc Merge remote-tracking branch 'origin/email-notification_like-in-subject' into email-notification_like-in-subject 2022-12-23 02:38:15 +01:00
Marek Bachmann b876a9efcd Distinguish between comment likes and post likes. 2022-12-23 02:38:00 +01:00
MarekBenjamin d52c988ebc
Update src/Navigation/Notifications/Repository/Notify.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-23 01:22:21 +01:00
Marek Bachmann ef4f508f9b messages.po and and corrected typo in comment 2022-12-23 01:06:21 +01:00
Marek Bachmann 82eec270fa Change email subject to "(...)like in conversation(...)" for likes instead of "(...)new comment(...)" 2022-12-23 00:56:26 +01:00
Hypolite Petovan 520cb824ec
Merge pull request #12508 from annando/more-acrivities
AP: Support for "move" and "accept" from gup.pe
2022-12-22 17:18:18 -05:00
Michael 99284222c1 Remove the activity 2022-12-22 22:08:42 +00:00
Michael 9fe70af85a AP: Support for "move" and "accept" from gup.pe 2022-12-22 21:58:51 +00:00
Hypolite Petovan 02bca72de3
Merge pull request #12502 from annando/no-gs-import
The GNU-Social import is removed
2022-12-21 17:52:17 -05:00
Michael d75cd8a00a The GNU-Social import is removed 2022-12-21 22:21:22 +00:00
Hypolite Petovan 07162e557d
Merge pull request #12501 from MarekBenjamin/improve-registraiton-text-input
Changed registration text input to text area since BBcode is allowed …
2022-12-21 14:15:53 -05:00
Marek Bachmann 90d99bc3e8 Changed registration text input to text area since BBcode is allowed there (was single line input) 2022-12-21 20:05:35 +01:00
Hypolite Petovan 31e8574006
Merge pull request #12494 from annando/blurhash-fix
Don't calculate the blurhash on images without a size
2022-12-20 20:19:32 -05:00
Hypolite Petovan fec2fb81c9
Merge pull request #12493 from annando/new-stats
Three systems added to the federation statistics
2022-12-20 20:19:08 -05:00
Michael e6f0e3c23e Don't calculate the blurhash on images without a size 2022-12-20 22:32:24 +00:00
Michael 69a9f9033d Three systems added to the federation statistics 2022-12-20 22:29:53 +00:00
Hypolite Petovan 8e25660616
Merge pull request #12409 from annando/diaspora-reshare
Use reshare with Diaspora like with ActivityPub
2022-12-20 16:11:21 -05:00
Michael de1c0f4c13 Don't display Diaspora reshares 2022-12-20 19:25:57 +00:00
Michael Vogel 316d50cf7a
Merge pull request #12491 from MarekBenjamin/patch-1
Update CHANGELOG
2022-12-20 13:54:38 +01:00
MarekBenjamin d95fe1c41f
Update CHANGELOG
Typo
2022-12-20 12:47:05 +01:00
Michael a0faca9eaf Updated database version 2022-12-20 07:00:10 +00:00
Michael 4db4d1843d Merge remote-tracking branch 'upstream/develop' into diaspora-reshare 2022-12-20 06:58:36 +00:00
Philipp 8b3a9fc58a
Merge pull request #12485 from annando/errors-warnings
Measures against several warnings and errors in the log
2022-12-20 07:48:59 +01:00
Michael bdc865afae Measures against several warnings and errors in the log 2022-12-20 06:22:11 +00:00
Tobias Diekershoff 1ed5fb3499 renewed the expiration date for the security.txt file 2022-12-20 06:53:14 +01:00
Tobias Diekershoff c84f18ef66 bump VERSION to 2023.03-dev 2022-12-20 06:52:15 +01:00
Tobias Diekershoff 6e6c9314af prepare the CHANGELOG for 2023.03 2022-12-20 06:50:37 +01:00
Michael 8397ccf37c Merge remote-tracking branch 'upstream/2022.12-rc' into diaspora-reshare 2022-12-17 12:27:35 +00:00
Michael 5041e92937 Merge remote-tracking branch 'upstream/2022.12-rc' into diaspora-reshare 2022-12-14 09:19:41 +00:00
Michael f013c92487 Only search for empty quoted reshares (Diaspora type) 2022-12-13 23:26:58 +00:00
Michael ca8a89ed1c Use reshare with Diaspora like with ActivityPub 2022-12-13 23:19:19 +00:00
1473 changed files with 162350 additions and 121124 deletions

View File

@ -1,7 +1,7 @@
codecov:
branch: develop
ci:
- drone.friendi.ca
- ci.friendi.ca
coverage:
precision: 2

View File

@ -6,9 +6,27 @@ root = true
[*]
charset = utf-8
end_of_line = lf
trim_trailing_whitespaces = true
indent_style = tab
trim_trailing_whitespace = true
insert_final_newline = true
quote_type = single
max_line_length = off
[*.js]
quote_type = double
quote_type = double
ij_javascript_use_double_quotes = true
[*.yml]
indent_style = space
indent_size = 2
[*.xml]
indent_style = space
indent_size = 2
[*.json]
indent_style = space
indent_size = 2
[composer.json]
indent_style = tab

View File

@ -13,7 +13,7 @@ assignees: ''
### Describe the feature you'd like
<!-- A clear and concise description of waht you want to happen. -->
<!-- A clear and concise description of what you want to happen. -->
### Describe alternatives you've considered

View File

@ -1,9 +1,9 @@
[main]
host = https://www.transifex.com
host = https://api.transifex.com
[friendica.messagespo]
[o:Friendica:p:friendica:r:messagespo]
file_filter = view/lang/<lang>/messages.po
source_file = view/lang/C/messages.po
source_lang = en
type = PO
type = PO

View File

@ -71,20 +71,19 @@ pipeline:
else
phpunit --configuration tests/phpunit.xml;
fi
codecov:
image: plugins/codecov
image: friendicaci/codecov
when:
matrix:
PHP_MAJOR_VERSION: 7.4
PHP_VERSION: 7.4.18
PHP_VERSION: 7.4.33
repo:
- friendica/friendica
settings:
token:
from_secret: codecov-token
files:
- clover.xml
commands:
- codecov -R '.' -Z -f 'clover.xml'
secrets:
- source: codecov-token
target: codecov_token
services:
mariadb:

211
CHANGELOG
View File

@ -1,3 +1,140 @@
Version 2023.05 (2023-05-23)
Friendica Core
Updates to the translations HU, PL
Updates to the themes (frio, vier) [MrPetovan, xundeenergie]
Updates to the documentation [MrPetovan]
Improved the probing of remote accounts [Annando, ne20002]
Improved the OWA implementation [annando, abanink]
Improved the database handling [nupplaphil]
Improved the ATOM feed handling, added OPML [annando]
Improved the audience handling of forum posting [annando]
General code cleanup [annando, MrPetovan, nupplaphil, Raroun]
Fixed HTML escaping for notification messages [MrPetovan, nupplaphil]
Fixed the feed body import [annando]
Fixed meaning of the limit parameter in the Mastodon API [annando]
Fixed a bug in the tag cloud [MrPetovan]
Fixed the magic links in photo menu [MrPetovan]
Added new hook for addons (support_probe) [annando]
Added support for special characters in category links [MrPetovan]
Added possibility to collapse postings [annando]
Added the emojipicker to the core [annando]
Added a fancybox to view images in network stream [annando]
Friendica Addons
Updates to the translations DE, HU
bluesky
Added the bluesky connector [annando]
mailstream
General code cleanup [mexon]
tumblr
Added OAuth2 support [ænnando]
Added un/follow, un/block functionality [annando]
Added probe [annando]
Added the possibility for users to follow tags [annando]
emojipicker, fancybox
The functionality of this addon has been moved to the
core for the frio and vier themes. [annando]
Closed Issues
12439, 12760, 12788, 12824, 12979, 13016, 13026, 13027, 13036,
13052, 13073, 13082, 13089, 13102, 13104, 13108
Version 2023.04-1 (2023-04-27)
Friendica Core
Updates to the translations AR, CA, CS, DE, ES, FR, GD, HU, IT, JA, NL, PL, RU
Fixed a bug that broke the private messages web interface [MrPetovan]
Friendica Addons
tumblr
Added follow, unfollow, cross posting [annando]
Added the possibility to import the remote timeline [annando]
**Breaking** Switch to OAuth2 [annando]
Node admins have to change the redirect URL in the settings to the
OAuth2 specific one. social.example.com/tumblr/redirect
mailstream
Various modernization [mexon]
Include post media [mexon]
Closed Issues
13026
Version 2023.04 (2023-04-23)
Friendica Core
Updates to the translations AR, BG, CA, CS, DA, DE, EO, ES, ET, FR, GD, HU, IS, IT, JA, NL, PL, RU, SV
Updates to the themes (frio, vier) [damianwajer, haheute, MrPetovan, xundeenergie]
Updates to the documentation [haheute, HankG, MarekBenjamin, MrPetovan]
General code cleanup [annando, MarekBenjamin, MrPetovan, nupplaphil]
Fixed display of blocked contacts [annando]
Fixed usage of environment variables [nupplaphil]
Fixed paging on the Mastodon compatible API endpoints for timelines and statuses [HankG]
Fixed updating of attached links via the API [HankG]
Fixed federation issues with Diaspora*, gup.pe, Hubzilla and Peertube servers [annando]
Fixed a bug with PubSubHubBub subscription [annando]
Fixed a XSS vulnerability in Justified-Gallery JavaScript dependency (frio theme) [MrPetovan]
Improved the translate ability of activities (singular/plural forms) [nupplaphil]
Improved activity update handling [xundeenergie]
Improved BBCode + Markdown parsing [annando]
Improved known Fediverse statistics [annando]
Improved automatic table optimization [HankG]
Improved the performance of local JsonLD requests [MrPetovan]
Improved the performance of local requests [annando]
Improved the performance of the delivery of postings [annando]
Improved the performance of homepage rel-me checks [annando]
Improved supported characters for passwords [MrPetovan]
Improved the ARIA support [MrPetovan]
Improved PHP 8.2 compatibility [MrPetovan]
Added emoticon reaction handling [annando]
Added drag and drop image upload in frio themes [xundeenergie]
Added scope change for comments to the API [annando]
Added posting visibility to the API [HankG]
Added delivery information to the Mastodon compatible API [HankG]
Added notification summary option to the Mastodon compatible API [HankG]
Added option to display activities as emoticons [annando]
Added trending API updates [HankG]
Added blocked/ignored filters to the Mastodon compatible API [HankG]
Added ActivityPub C2S postings to the API [annando]
Added dislike information for postings to the Mastodon compatible API [HankG, mkljczk]
Added the possibility to deletion blocked servers [annando]
Removed the GNUsocial import [annando]
Friendica Addons
Updates to the translations AR, CS, DE, ES, HU, IS, IT, NL, PL, RU, SV
securemail
Updated the phpseclib dependency [MrPetovan]
twitter
Improve remote-self handling [annando]
impressum
Avoide obfuscation on un-set email addresses [MrPestovan]
notifyall
Fixed a bug selecting the email addresses [nupplaphil]
tumblr
Fixed a bug addressing the tumblr blog via UUID [annando]
Added support for NPF [annando]
Improved the tumblr blog URI detection [annando]
Improved the handling of multible images [annando]
marked as UNSUPPORTED addons
blockem, tictactoe, twitter
Closed Issues
7037, 10974, 11513, 11535, 11825, 11986, 12489, 12490, 12507, 12515,
12522, 12537, 12545, 12550, 12552, 12559, 12582, 12601, 12602, 12603,
12607, 12608, 12616, 12617, 12620, 12624, 12625, 12629, 12654, 12658,
12661, 12665, 12672, 12677, 12682, 12705, 12713, 12721, 12753, 12764,
12779, 12792, 12793, 12803, 12809, 12828, 12835, 12842, 12846, 12847,
12858, 12859, 12871, 12888, 12924, 12944, 12970, 12974, 12983, 12993,
12995, 13002, 19996
Version 2023.01 (2023-01-15)
Friendica Core
Improved the global server updating if domains are blocked [MrPetovan]
Improved the forum distribution for comments [annando]
Improved the handling of forum mentions [annando]
Fixed the forum post distribution [annando]
Fixed a security bug in the 404 page [nupplaphil]
Closed Issues
12539, 12540, 12655, 12615, 12663
Version 2022.12 (2022-12-20)
Friendica Core
Updates to the translations DE, FR, HU, PL, RU
@ -19,7 +156,7 @@ Version 2022.12 (2022-12-20)
Added a moderation section to the admin panel [annando]
Added an option to make the calendar public [matthiasmoritz]
Fixed a bug in the federation with Diaspora* [annando]
Fixec a problem in the federation with GoTo Social and Owncast [annando]
Fixed a problem in the federation with GoTo Social and Owncast [annando]
Deprecated old themes (duepuntozero, quattro, smoothy)
NOTE: The Apache2 rewrite rule in the .htaccess-dist has been changed.
@ -707,13 +844,13 @@ Version 2020.07 (2020-07-12)
blockbot:
The list of accepted user agents was enhanced [annando]
Diaspora*:
Enhanced conntector settings [MrPetovan]
Enhanced connector settings [MrPetovan]
PHP Mailer SMTP:
Updated phpmailer version [dependabot]
showmore_dyn:
New addon to collapse long post depending on their actual height [wiwie]
twitter:
Enhaceed the handling of mobile twitter URLs [annando]
Enhanced the handling of mobile twitter URLs [annando]
Enhanced the handling of quoted tweets [MrPetovan]
added HTML error code handling [MrPetovan]
various:
@ -951,7 +1088,7 @@ Version 2019.09 (2019-09-29)
Version 2019.06 (2019-06-23)
Friendica Core:
Update to the tranlation (CS, DE, EN-GB, EN-US, ET, FR, IT, PL, PT-BR, SV) [translation teams]
Update to the translation (CS, DE, EN-GB, EN-US, ET, FR, IT, PL, PT-BR, SV) [translation teams]
Update to the documentation [nupplaphil, realkinetix, MrPetovan]
Update to the themes (frio, vier) [BinkaDroid, MrPetovan, tobiasd]
Enhancements to the API [annando, MrPetovan]
@ -971,7 +1108,7 @@ Version 2019.06 (2019-06-23)
Fixed an issue with the File to Folder feature [MrPetovan]
Fixed an issue with the legacy storage engine [fabrixxm]
Fixed an issue with the theme and addon path items [MrPetovan]
Fixed an issue occuring when the BasePath was not set [tobiasd]
Fixed an issue occurring when the BasePath was not set [tobiasd]
Fixed an issue with additionally opened Sessions [MrPetovan]
Fixed an issue with legacy loglevel mapping [nupplaphil]
Fixed contact suggestions [annando]
@ -997,7 +1134,7 @@ Version 2019.06 (2019-06-23)
Remove support for defunct F-Droid Friendica app [MrPetovan]
Friendica Addons:
Update to the tranlation (ET, SV, ZH_CN) [translation teams]
Update to the translation (ET, SV, ZH_CN) [translation teams]
botdetection:
Added a new addon for preventing access by bots [nupplaphil, annando]
buffer:
@ -1035,7 +1172,7 @@ Version 2019.03 (2019-03-22)
Update to the themes (duepuntozero, frio, smoothy, quattro, vier) [lxiter, MrPetovan, nupplaphil, rabuzarus, tobiasd]
Enhancements to the API [jasonscheng]
Enhancements to the Vagrant development VM [JeroenED]
Enhancements to the storage of gender, sexual preferences and maritial status [JeroenED]
Enhancements to the storage of gender, sexual preferences and marital status [JeroenED]
Enhancements to the wording of notifications [MrPetovan]
Enhancements to the display of contacts in the profile [MrPetovan]
Enhancements to the handling of local links [lxiter]
@ -1064,7 +1201,7 @@ Version 2019.03 (2019-03-22)
Fixed an issue with sending out notification mails to the admin [nupplaphil]
Fixed an the issue, that the API was ignoring the globalsilence setting [nupplaphil]
Fixed issues with the autolinker of URLs in postings [MrPetovan]
Fixed an issue resulting in multible emails after successful updates of the database [nupplaphil]
Fixed an issue resulting in multiple emails after successful updates of the database [nupplaphil]
Fixed a timeout issue during detection process of the remote profile [annando]
Fixed an issue with postings from blocked servers [annando, MrPetovan]
Fixed an issue with the paging of stored folders [MrPetovan]
@ -1096,7 +1233,7 @@ Version 2019.03 (2019-03-22)
forumdirectory:
Fixed a theming issue with frio [rabuzarus]
js_upload:
Fixed a missing extionsion index [nupplaphil]
Fixed a missing extension index [nupplaphil]
mailstream:
Fixed a curl issue [MrPetovan]
piwik:
@ -1316,7 +1453,7 @@ Version 2018.09 (2018-09-23)
added addons:
mastodoncustomemojis [MrPetovan]
deprecated addons:
notimeline, retriver, remote_permissions, widgets
notimeline, retriever, remote_permissions, widgets
Directory:
Enhancements of the health summary [andyhee]
@ -1342,7 +1479,7 @@ Version 2018.05 (2018-06-01)
Enhancements to the relay system [annando]
Enhancements to the handling of URL that contain unicode characters [annando]
Enhancements to the Vagrant VM configuration [fabrixxm, tobiasd]
Enhancementa to the Babel module [MrPetovan]
Enhancements to the Babel module [MrPetovan]
Enhancements to the display of the [code] elements [MrPetovan]
Enhancements to the federation (OStatus, diaspora) [annando]
Enhancements to the PHP7.2 compatibility [Alkarex, MrPetovan, Quix0r]
@ -1371,7 +1508,7 @@ Version 2018.05 (2018-06-01)
Fixed a bug that made edited mentions and hashtags plaintext [annando]
Fixed a bug that caused the /display page to receive constandly new updates [annando]
Fixed wrong version of a dependency preventing the usage of PHP 5.6 [MrPetovan]
Fixed a bug in OpenID authentification [Quix0r]
Fixed a bug in OpenID authentication [Quix0r]
Fixed a bug in the item deletion [annando]
Fixed a bug that prevented public comments from being distributed [annando]
Fixed a bug that caused empty profile pictures for public contacts [annando]
@ -1470,7 +1607,7 @@ Version 3.6 (2018-03-23)
Enhancements to the probing of pump.io profiles [annando]
Enhancements to the handling of BBCode tags [MrPetovan]
Enhancements to the OEmbed handling [MrPetovan]
Fixed a bug that triggered the display of activities on the cummunity page [annando]
Fixed a bug that triggered the display of activities on the community page [annando]
Fixed a bug with personal notes [annando]
Fixed a display issue of long postings when using the showmore option [annando]
Fixed a bug that caused Twidere to crash on reload [annando]
@ -1478,7 +1615,7 @@ Version 3.6 (2018-03-23)
Fixed a bug in URL completion for feed fragments [annando]
Fixed a bug in the notification system about new registrations [annando]
Fixed the display of dislikes [annando]
Fixed the display of orphans childs in threads [MrPetovan]
Fixed the display of orphan children in threads [MrPetovan]
Fixed some SQL problems [annando]
Fixed the CLI config script [tobiasd]
Fixed the forum selection on the network display [annando]
@ -1532,7 +1669,7 @@ Version 3.6 (2018-03-23)
all bridges don't relay postings anymore that are posted to a public forum [annando]
DAV addon marked unsupported [tobiasd]
communityhome addon marked unsupported [MrPetovan]
yourls addon makrked unsupported [MrPetovan]
yourls addon marked unsupported [MrPetovan]
Current Weather: fixing a problem with the weathermap link [zeroadam]
NSFW added config examples, reworked the description, now ignores the CW from Mastodon [andyhee, annando, rebeka-catalina]
Twitter support 280 chars limit [annando]
@ -1727,7 +1864,7 @@ Version 3.5.1 (2017-03-12)
Improvements to the documentation [Hypolite, tobiasd, rabuzarus, beardyunixer, eelcomaljaars]
Improvements to the BBCode / Markdown conversation [Hypolite]
Improvements to the OStatus protocol implementation [annando]
Improvements to the installation wizzard [tobiasd]
Improvements to the installation wizard [tobiasd]
Improvements to the Diaspora connectivity [annando, Hypolite]
Work on PHP7 compatibility [ddorian1]
Code cleanup [Hypolite, Quix0r]
@ -1789,11 +1926,11 @@ Version 3.5 (2016-09-13)
Improvements on the themes (quattro, vier, frost) [rabuzarus, fabrixxm, stieben, annando, Quix0r, tobiasd]
Improvements to the ACL dialog [fabrixxm, rabuzarus]
Improvements to the database structure and optimization of queries [annando]
Improvements to the UI (contacts, hotkeys, remember me, ARIA, code hightlighting) [rabuzarus, annando, tobiasd]
Improvements to the UI (contacts, hotkeys, remember me, ARIA, code highlighting) [rabuzarus, annando, tobiasd]
Improvements to the background process (poller, worker) [annando]
Improvements to the admin panel [tobiasd, annando, fabrixxm]
Improvements to the performance [annando]
Improvements to the installation wizzard (language selection, RINO version, check required PHP modules, default theme is now vier) [tobiasd]
Improvements to the installation wizard (language selection, RINO version, check required PHP modules, default theme is now vier) [tobiasd]
Improvements to the relocation of nodes and accounts [annando]
Improvements to the DDoS detection [annando]
Improvements to the calendar/events module [annando, rabuzarus]
@ -1818,7 +1955,7 @@ Version 3.5 (2016-09-13)
GNU Social Connector [annando]
LDAP [Olivier Mehani]
smileybutton [rabuzarus]
retriver [mexon]
retriever [mexon]
mailstream [mexon]
forumdirectory [tobiasd]
NEW notifyall (port from Hubzilla) [rabuzarus, tobiasd]
@ -1873,7 +2010,7 @@ Version 3.4.3 (2015-12-22)
'Reload active themes' in theme admin page (fabrixxm)
Install routine checks for ImageMagick and GIF support (fabrixxm)
Install routine checks for availability of "mcrypt_create_iv()" function, needed for RINO2 (fabrixxm)
Only suported themes are shown in admin page (annando)
Only supported themes are shown in admin page (annando)
Optimized SQL queries (annando)
System perform an optimize pass on tables in cron, with maximum table size and minimum fragmentation level settings (annando)
New access keys in profile and contact pages (rabuzarus, annando)
@ -1888,9 +2025,9 @@ Version 3.4.3 (2015-12-22)
New hook 'template_vars' (fabrixxm)
$baseurl variable is passed to all templates by default (fabrixxm)
OStatus delivery code is moved in new function (annando)
Doxygen config file and initial documetation of code (rabuzarus)
Doxygen config file and initial documentation of code (rabuzarus)
Full rewrite of util/php2po.php (fabrixxm)
Bugfixs:
Bugfixes:
Remote self works again (annando)
Fix feeds mistakenly recognized as OStatus (issue #1914) (annando)
Report invalid feeds to user (issue #1913) (annando)
@ -1905,8 +2042,8 @@ Version 3.4.3 (2015-12-22)
Fix rapid repeated requests to GNUSocial instance (issue #2038) (annando)
Fix install routine css when mod_rewrite doesn't works (issue #2071) (fabrixxm)
Fix code to be compliant with minimum required PHP version (issue #2066) (fabrixxm, rabuzarus)
Fix feedback after succesfull registration (issue #2060) (annando)
Fix mention completition popup with TinyMCE (issue #1920) (fabrixxm)
Fix feedback after successful registration (issue #2060) (annando)
Fix mention completion popup with TinyMCE (issue #1920) (fabrixxm)
Fix photo cache and proxy when installed in subfolder (ddorian1)
Fix bbcode conversion of the about text for the profile (issue #1607) (annando)
@ -1916,7 +2053,7 @@ Version 3.4.2 (2015-09-29)
Updates to the documentation (tobiasd, silke, annando)
Updates to the translations (tobiasd & translation teams)
Updates to themes frost-mobile, vier, duepuntozero, quattro (annando, tobiasd)
Enancements of the communications via OStatus and Diaspora protocols (annando)
Enhancements of the communications via OStatus and Diaspora protocols (annando)
Option to automatically follow OStatus contacts was moved from addon to the core (annando)
Add tool to import OStatus contacts from an old account (annando)
SALMON slaps with OStatus were reworked (annando)
@ -1933,7 +2070,7 @@ Version 3.4.2 (2015-09-29)
The global directory is queried in the background to update local DB and improve similar searches in the future. (annando)
By communication over the Diaspora protocol, red#matrix sources are now correctly identified, hubzilla is detected (annando)
Adopt limitation of usage of "-" in username to avoid conflicts with GNU Social and Diaspora (annando)
The [url] tag now also suppots ftp, mailto, gopher links (annando)
The [url] tag now also supports ftp, mailto, gopher links (annando)
An "inspect queue" module was added to the admin panel (tobiasd)
Fix some missing SQL data escapes (fabrixxm)
Improved the accessibility of the web UI for better screen reader compatibility (annando)
@ -1961,7 +2098,7 @@ Version 3.4.1 (2015-07-06)
Implement server-to-server encryption (RINO) using php-encryption library as "RINO 2", deprecate "RINO 1" (issue #1655) (fabrixxm)
Fix connection with Diaspora "freelove" account (issue #1572) (annando)
Various SQL speedups (annando)
Port of Javascript DatePicker input from RedMatrix (rabuzarus)
Port of JavaScript DatePicker input from RedMatrix (rabuzarus)
Port of RedMatrix archive widget (rabuzarus)
Load profile owner settings for theme on profile page (rabuzarus)
Move HTML code from php into templates (rabuzarus)
@ -1974,7 +2111,7 @@ Version 3.4.1 (2015-07-06)
use correct contact when automatically add @-replies
add attachment links as enclosures
send salmon notifications to every mentioned person
better thread completition
better thread completion
support for bookmarks
support for events and questions
link to items using GUID
@ -1985,7 +2122,7 @@ Version 3.4.1 (2015-07-06)
Add fake fields to API response for better Twitter API compatibility (annando)
Fix search in local directory (issue #1657) (annando)
Improve OEmbed (issue #1640) (annando)
Fix double html encodig in site administration page for sitename and register text (issue #1628) (annando)
Fix double html encoding in site administration page for sitename and register text (issue #1628) (annando)
Fix remote subscription from GNU Social (annando)
Fix "{0}" in notifications (issue #1642) (annando)
Fix desktop notification (fabrixxm)
@ -1994,7 +2131,7 @@ Version 3.4.1 (2015-07-06)
Fix emoticons alt text (tobias)
Improve threaded display in Vier theme (annando)
Use field templates in photo edit form (fabrixxm)
Alllow deletion of any user but yourself (issue #1625) (fabrixxm)
Allow deletion of any user but yourself (issue #1625) (fabrixxm)
Install wizard load htconfig template from template/ folder, remove localized htconfig templates (fabrixxm)
Add contact detail to non-js contact drop confirm dialog (issue #1629) (fabrixxm)
Return geo coord in API (annando)
@ -2013,7 +2150,7 @@ Version 3.4 (2015-04-05)
Optionally, "like" and "dislike" activities don't update thread timestamp (annando)
Updated markdown libraries (annando)
Updated jQuery (StefOfficiel)
Cache zrl verification requests to prevent DSoS (issue #1453) (annando)
Cache zrl verification requests to prevent DDoS (issue #1453) (annando)
"Verify SSL" options affects also VERIFYHOST (annando)
Better handling of hashtags (annando)
Updated translations (translation teams, tobias)
@ -2051,7 +2188,7 @@ Version 3.3.3 (2015-02-24)
Share-it button support (annando)
More reliable reshare from Diaspora (annando)
Load more images via proxy (annando)
util/typo.php uses "php -l" insead of "eval()" to validate code (fabrixxm)
util/typo.php uses "php -l" instead of "eval()" to validate code (fabrixxm)
Use $_SERVER array in cli script instead of $argv/$argc (issue #1218) (annando)
Updated vagrant setup script (silke)
API: support to star/unstar items (fabrixxm)
@ -2072,7 +2209,7 @@ Version 3.3.3 (2015-02-24)
Version 3.3.2 (2014-12-26)
Set default value for all not-null fields (fixes SQL warinigs) (annando)
Set default value for all not-null fields (fixes SQL warnings) (annando)
Fix item filters in network page (issue #1222) (fabrixxm)
Remove reference to an ex Friendica hub from documentation (beardyunixer, tobiasd)
API throttling (annando)
@ -2118,7 +2255,7 @@ Version 3.3 (2014-10-06)
Interaction
ignoring of threads
for selected contects one can now get notifications when they post something, useful e.g. for forums
for selected contacts one can now get notifications when they post something, useful e.g. for forums
After a new friendica contact is added, the user is directed to the contact page of the new contact. (Instead of the remote profile)
many improvement on all connectors, new app.net connector
the algorithm for shortening postings when posting to limited platforms was improved
@ -2130,7 +2267,7 @@ Version 3.3 (2014-10-06)
updated the following libraries: smarty 3.1.19, fullcalendar 1.6.4, jquery 1.11, jgrowl 1.3.0
added modernizer 2.8.3, better browser support
updates to the DB structure for better performance
preperations to use PDO in a later release
preparations to use PDO in a later release
new notification system
web interface translations updated, addon translations now also possible separately from the main UI and done for CS, IT, RO, DE
vagrant support added for developers
@ -2168,7 +2305,7 @@ Version 3.2
small fixed
edit profile photo link
better caching of pictures
threadening for outgoing emails
threading for outgoing emails
mail import
oembed thumbnails
SN subscriptions & more SN like behaviour if snautofollow addon is used
@ -2188,7 +2325,7 @@ Version 3.2
improving the install.php script
addons now can be members only
item object now contains the "edited" information left for the theme designers to show this info in a pretty way
improvments to the user-import from exported account files
improvements to the user-import from exported account files
It's now possible to authenticate an ejabberd server against friendica.
bugtracker moved to github
improvements to MySQL queries

View File

@ -2,4 +2,4 @@
If you want to contribute to the project, you dont need to have coding experience. There are a number of tasks listed in the issue tracker with the label “[Junior Jobs](https://github.com/friendica/friendica/issues?q=is%3Aopen+is%3Aissue+label%3A%22Junior+Jobs%22)” we think are good for new contributors. But you are by no means limited to these if you find a solution to a problem (even a new one) please make a pull request at [github](https://github.com/friendica/friendica) or let us know in the [development forum](https://forum.friendi.ca/profile/developers).
Contribution to Friendica is also not limited to coding. Any contribution to the [documentation](https://github.com/friendica/friendica/tree/develop/doc), the [translation](https://www.transifex.com/Friendica/friendica/dashboard/) or advertisement materials is welcome or reporting a problem. You dont need to deal with Git(Hub) or Transifex if you dont like to. Just [get in touch](https://forum.friendi.ca/profile/helpers) with us and we will get the materials to the appropriate places.
Contribution to Friendica is also not limited to coding. Any contribution to the [documentation](https://github.com/friendica/friendica/tree/develop/doc), the [translation](https://app.transifex.com/Friendica/friendica/dashboard/) or advertisement materials is welcome or reporting a problem. You dont need to deal with Git(Hub) or Transifex if you dont like to. Just [get in touch](https://forum.friendi.ca/profile/helpers) with us and we will get the materials to the appropriate places.

View File

@ -74,8 +74,11 @@ CrystalStiletto
Cyboulette
Cyryl Sochacki
czarnystokrotek
daingewuvzeevisiddfddd
Damian Wajer
Damien Goutte-Gattat
Daniel Dupriest
Daniel Siepmann
Daria Początek
David
David Martín Miranda
@ -101,6 +104,7 @@ erik
Erkan Yilmaz
Eugene Veresk
Extarys
F1per 3y
Fabian Dost
Fabio Comuni
Farida Khalaf
@ -126,6 +130,7 @@ GunChleoc
guzzisti
Haakon Meland Eriksen
Hank Grabowski
Hannes Heute
Hans Meine
Hauke
Hauke Altmann
@ -138,7 +143,7 @@ Ilmari
ImgBotApp
irhen
Jakob
Jakobus Schürz (admin)
Jakob Schürz
Jens Tautenhahn
jensp
Jeroen De Meerleer
@ -153,6 +158,7 @@ John Mortensen
Jonatan Nyberg
Jonny Tischbein
Josef Moravek
Josh Soref
juanman
julia.domagalska
Julio Cova
@ -185,6 +191,7 @@ Marcin Klessa
Marcin Mikołajczak
Marcus Müller
Marek Bachmann
MarekBenjamin
Marie Olive
Mariusz Pisz
marmor
@ -209,6 +216,7 @@ mytbk
nathilia-peirce
Nicola Spanti
Nicolas Derive
nnsrymni
nobody
nupplaPhil
Olaf Conradi
@ -227,6 +235,7 @@ Pavel Morozov
PerigGouanvic
peter
Peter Liebetrau
Petr Kučera
peturisfeld
Phigger Phigger
Philipp
@ -244,7 +253,7 @@ Rafael Kalachev
Rain Hawk
Rainulf Pineda
Ralf Thees
Ralph
ralph van der honing
Ratten
rcmaniac
RealKinetix
@ -257,6 +266,7 @@ Rik 4
RJ Madsen
Roger Meyer
Roland Häder
Ruud Schilders
rwa
Ryan Voots
S.Krumbholz
@ -338,6 +348,7 @@ Wil Tur
Wouter Broers
Xiaofei Xu
XMPPはいいぞ
xundeenergie
Yasen Pramatarov
Yasmine A
ylms

View File

@ -17,18 +17,18 @@ Have a look at the [installation documentation](doc/Install.md) for further info
### Friendica Screenshots
| ![Frio theme in mobile browser](images/screenshots/friendica-frio-mobile-profle-1.png?raw=true "Frio theme in mobile browser") ![Frio theme in mobile browser](images/screenshots/friendica-frio-mobile-profle-2.png?raw=true "Frio theme in mobile browser")
| ![Frio theme in mobile browser](images/screenshots/friendica-frio-mobile-profile-1.png?raw=true "Frio theme in mobile browser") ![Frio theme in mobile browser](images/screenshots/friendica-frio-mobile-profile-2.png?raw=true "Frio theme in mobile browser")
|:--:|
|*Frio theme, mobile browser. Timeline and composer view.*|
|![Frio theme in desktop browser](images/screenshots/friendica-frio-green-profle-1.png?raw=true "Frio theme in desktop browser")
|![Frio theme in desktop browser](images/screenshots/friendica-frio-green-profile-1.png?raw=true "Frio theme in desktop browser")
|*Frio theme, desktop browser. Timeline view, contact info popped up, control menu open.*|
|![Frio theme in desktop browser](images/screenshots/friendica-frio-green-profle-2.png?raw=true "Frio theme in desktop browser")
|![Frio theme in desktop browser](images/screenshots/friendica-frio-green-profile-2.png?raw=true "Frio theme in desktop browser")
|*Frio theme, desktop browser. Menu open for controlling individual posts.*|
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profle-3.png?raw=true "Frio theme in desktop browser")
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profile-3.png?raw=true "Frio theme in desktop browser")
|*Frio theme, desktop browser. Profile view, notification menu open.*|
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profle-2.png?raw=true "Frio theme in desktop browser")
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profile-2.png?raw=true "Frio theme in desktop browser")
|*Number of new posts, in total and by group.*|
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profle-1.png?raw=true "Frio theme in desktop browser")
|![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profile-1.png?raw=true "Frio theme in desktop browser")
|*Calender with popup of event.*|
|![Frio theme default colour in standard browser on tablet](images/screenshots/friendica-frio-default-profile-1.png?raw=true "Frio theme default colour in standard browser on tablet")
|*Notifications menu and private messages counter, standard browser on tablet.*|

View File

@ -1 +1 @@
2022.12
2023.05

View File

@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -82,6 +82,10 @@ $dice = $dice->addRule(LoggerInterface::class,['constructParams' => ['auth_ejabb
\Friendica\DI::init($dice);
\Friendica\Core\Logger\Handler\ErrorHandler::register($dice->create(\Psr\Log\LoggerInterface::class));
// Check the database structure and possibly fixes it
\Friendica\Core\Update::check(\Friendica\DI::basePath(), true);
$appMode = $dice->create(Mode::class);
if ($appMode->isNormal()) {

View File

@ -3,7 +3,7 @@
dir=$(cd "${0%[/\\]*}" > /dev/null; pwd)
if [[ -d /proc/cygdrive && $(which php) == $(readlink -n /proc/cygdrive)/* ]]; then
# We are in Cgywin using Windows php, so the path must be translated
# We are in Cygwin using Windows php, so the path must be translated
dir=$(cygpath -m "$dir");
fi

View File

@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*

View File

@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -33,6 +33,7 @@ if (php_sapi_name() !== 'cli') {
use Dice\Dice;
use Friendica\App\Mode;
use Friendica\Core\Logger;
use Friendica\Core\Update;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
use Friendica\DI;
@ -63,7 +64,6 @@ $dice = $dice->addRule(LoggerInterface::class,['constructParams' => ['daemon']])
DI::init($dice);
\Friendica\Core\Logger\Handler\ErrorHandler::register($dice->create(\Psr\Log\LoggerInterface::class));
$a = DI::app();
if (DI::mode()->isInstall()) {
die("Friendica isn't properly installed yet.\n");
@ -71,13 +71,13 @@ if (DI::mode()->isInstall()) {
DI::mode()->setExecutor(Mode::DAEMON);
DI::config()->load();
DI::config()->reload();
if (empty(DI::config()->get('system', 'pidfile'))) {
die(<<<TXT
Please set system.pidfile in config/local.config.php. For example:
'system' => [
'system' => [
'pidfile' => '/path/to/daemon.pid',
],
TXT
@ -115,7 +115,7 @@ if (is_readable($pidfile)) {
}
if (empty($pid) && in_array($mode, ['stop', 'status'])) {
DI::config()->set('system', 'worker_daemon_mode', false);
DI::keyValue()->set('worker_daemon_mode', false);
die("Pidfile wasn't found. Is the daemon running?\n");
}
@ -126,7 +126,7 @@ if ($mode == 'status') {
unlink($pidfile);
DI::config()->set('system', 'worker_daemon_mode', false);
DI::keyValue()->set('worker_daemon_mode', false);
die("Daemon process $pid isn't running.\n");
}
@ -137,7 +137,7 @@ if ($mode == 'stop') {
Logger::notice('Worker daemon process was killed', ['pid' => $pid]);
DI::config()->set('system', 'worker_daemon_mode', false);
DI::keyValue()->set('worker_daemon_mode', false);
die("Worker daemon process $pid was killed.\n");
}
@ -181,7 +181,7 @@ if (!$foreground) {
DBA::connect();
}
DI::config()->set('system', 'worker_daemon_mode', true);
DI::keyValue()->set('worker_daemon_mode', true);
// Just to be sure that this script really runs endlessly
set_time_limit(0);
@ -193,6 +193,9 @@ $last_cron = 0;
// Now running as a daemon.
while (true) {
// Check the database structure and possibly fixes it
Update::check(DI::basePath(), true);
if (!$do_cron && ($last_cron + $wait_interval) < time()) {
Logger::info('Forcing cron worker call.', ['pid' => $pid]);
$do_cron = true;
@ -244,5 +247,6 @@ while (true) {
}
function shutdown() {
posix_kill(posix_getpid(), SIGTERM);
posix_kill(posix_getpid(), SIGHUP);
}

View File

@ -46,7 +46,7 @@ function show_syntax() {
echo -e "\t\"testfile\" is the name of a test file, for example lib/template.php" >&2
echo -e "\nDatabase environment variables:\n" >&2
echo -e "\t\"MYSQL_HOST\" Mysql Hostname (Default: localhost)" >&2
echo -e "\t\"MYSQL_USDRNAME\" Mysql Username (Default: friendica)" >&2
echo -e "\t\"MYSQL_USERNAME\" Mysql Username (Default: friendica)" >&2
echo -e "\t\"MYSQL_DATABASE\" Mysql Database (Default: test)" >&2
echo -e "\nOther environment variables:\n" >&2
echo -e "\t\"TEST_SELECTION\" test a specific group of tests, can be one of: $TESTS" >&2
@ -65,7 +65,7 @@ else
exit 3
fi
echo "Installing depdendencies"
echo "Installing dependencies"
${PHP} "$COMPOSER" install
PHPUNIT="${BASEDIR}/vendor/bin/phpunit"

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*

View File

@ -1,7 +1,7 @@
#!/usr/bin/php
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*

View File

@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -58,20 +58,17 @@ $dice = $dice->addRule(LoggerInterface::class,['constructParams' => ['worker']])
DI::init($dice);
\Friendica\Core\Logger\Handler\ErrorHandler::register($dice->create(\Psr\Log\LoggerInterface::class));
$a = DI::app();
DI::mode()->setExecutor(Mode::WORKER);
// Check the database structure and possibly fixes it
Update::check($a->getBasePath(), true, DI::mode());
Update::check(DI::basePath(), true);
// Quit when in maintenance
if (!DI::mode()->has(App\Mode::MAINTENANCEDISABLED)) {
return;
}
DI::baseUrl()->saveByURL(DI::config()->get('system', 'url'));
$spawn = array_key_exists('s', $options) || array_key_exists('spawn', $options);
if ($spawn) {

View File

@ -24,15 +24,19 @@
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-openssl": "*",
"ext-posix": "*",
"ext-simplexml": "*",
"ext-xml": "*",
"asika/simple-console": "^1.0",
"bacon/bacon-qr-code": "^2.0.0",
"divineomega/password_exposed": "^2.8",
"enyo/dropzone": "^5.9",
"ezyang/htmlpurifier": "^4.7",
"friendica/json-ld": "^1.0",
"geekwright/po": "^2.0",
"guzzlehttp/guzzle": "^6.5",
"guzzlehttp/oauth-subscriber": "^0.6",
"kornrunner/blurhash": "^1.2",
"league/html-to-markdown": "^4.8",
"level-2/dice": "^4",
"lightopenid/lightopenid": "dev-master",
@ -48,6 +52,7 @@
"phpseclib/phpseclib": "^3.0",
"pragmarx/google2fa": "^5.0",
"pragmarx/recovery": "^0.2",
"psr/clock": "^1.0",
"psr/container": "^1.0",
"psr/log": "^1.1",
"seld/cli-prompt": "^1.0",
@ -70,9 +75,7 @@
"npm-asset/moment": "^2.24",
"npm-asset/perfect-scrollbar": "0.6.16",
"npm-asset/textcomplete": "^0.18.2",
"npm-asset/typeahead.js": "^0.11.1",
"kornrunner/blurhash": "^1.2",
"psr/clock": "^1.0"
"npm-asset/typeahead.js": "^0.11.1"
},
"repositories": [
{
@ -132,7 +135,13 @@
"test": "phpunit",
"lint": "find . -name \\*.php -not -path './vendor/*' -not -path './view/asset/*' -print0 | xargs -0 -n1 php -l",
"cs:install": "@composer install --working-dir=bin/dev/php-cs-fixer",
"cs:check": ["@cs:install", "bin/dev/php-cs-fixer/vendor/bin/php-cs-fixer fix --dry-run --diff"],
"cs:fix": ["@cs:install", "bin/dev/php-cs-fixer/vendor/bin/php-cs-fixer fix"]
"cs:check": [
"@cs:install",
"bin/dev/php-cs-fixer/vendor/bin/php-cs-fixer fix --dry-run --diff"
],
"cs:fix": [
"@cs:install",
"bin/dev/php-cs-fixer/vendor/bin/php-cs-fixer fix"
]
}
}

468
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -40,5 +40,6 @@ return [
'system' => [
'default_timezone' => 'UTC',
'language' => 'en',
'url' => 'https://friendica.local',
],
];

View File

@ -1,6 +1,6 @@
-- ------------------------------------------
-- Friendica 2022.12 (Giant Rhubarb)
-- DB_UPDATE_VERSION 1502
-- Friendica 2023.05 (Giant Rhubarb)
-- DB_UPDATE_VERSION 1518
-- ------------------------------------------
@ -34,6 +34,7 @@ CREATE TABLE IF NOT EXISTS `gserver` (
`last_poco_query` datetime DEFAULT '0001-01-01 00:00:00' COMMENT '',
`last_contact` datetime DEFAULT '0001-01-01 00:00:00' COMMENT 'Last successful connection request',
`last_failure` datetime DEFAULT '0001-01-01 00:00:00' COMMENT 'Last failed connection request',
`blocked` boolean COMMENT 'Server is blocked',
`failed` boolean COMMENT 'Connection failed',
`next_contact` datetime DEFAULT '0001-01-01 00:00:00' COMMENT 'Next connection request',
PRIMARY KEY(`id`),
@ -70,7 +71,7 @@ CREATE TABLE IF NOT EXISTS `user` (
`verified` boolean NOT NULL DEFAULT '0' COMMENT 'user is verified through email',
`blocked` boolean NOT NULL DEFAULT '0' COMMENT '1 for user is blocked',
`blockwall` boolean NOT NULL DEFAULT '0' COMMENT 'Prohibit contacts to post to the profile page of the user',
`hidewall` boolean NOT NULL DEFAULT '0' COMMENT 'Hide profile details from unkown viewers',
`hidewall` boolean NOT NULL DEFAULT '0' COMMENT 'Hide profile details from unknown viewers',
`blocktags` boolean NOT NULL DEFAULT '0' COMMENT 'Prohibit contacts to tag the post of this user',
`unkmail` boolean NOT NULL DEFAULT '0' COMMENT 'Permit unknown people to send private mails to this user',
`cntunkmail` int unsigned NOT NULL DEFAULT 10 COMMENT '',
@ -339,22 +340,6 @@ CREATE TABLE IF NOT EXISTS `account-user` (
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Remote and local accounts';
--
-- TABLE addon
--
CREATE TABLE IF NOT EXISTS `addon` (
`id` int unsigned NOT NULL auto_increment COMMENT '',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT 'addon base (file)name',
`version` varchar(50) NOT NULL DEFAULT '' COMMENT 'currently unused',
`installed` boolean NOT NULL DEFAULT '0' COMMENT 'currently always 1',
`hidden` boolean NOT NULL DEFAULT '0' COMMENT 'currently unused',
`timestamp` int unsigned NOT NULL DEFAULT 0 COMMENT 'file timestamp to check for reloads',
`plugin_admin` boolean NOT NULL DEFAULT '0' COMMENT '1 = has admin config, 0 = has no admin config',
PRIMARY KEY(`id`),
INDEX `installed_name` (`installed`,`name`),
UNIQUE INDEX `name` (`name`)
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='registered addons';
--
-- TABLE apcontact
--
@ -499,8 +484,8 @@ CREATE TABLE IF NOT EXISTS `cache` (
--
CREATE TABLE IF NOT EXISTS `config` (
`id` int unsigned NOT NULL auto_increment COMMENT '',
`cat` varbinary(50) NOT NULL DEFAULT '' COMMENT '',
`k` varbinary(50) NOT NULL DEFAULT '' COMMENT '',
`cat` varbinary(50) NOT NULL DEFAULT '' COMMENT 'The category of the entry',
`k` varbinary(50) NOT NULL DEFAULT '' COMMENT 'The key of the entry',
`v` mediumtext COMMENT '',
PRIMARY KEY(`id`),
UNIQUE INDEX `cat_k` (`cat`,`k`)
@ -579,6 +564,27 @@ CREATE TABLE IF NOT EXISTS `delayed-post` (
FOREIGN KEY (`wid`) REFERENCES `workerqueue` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Posts that are about to be distributed at a later time';
--
-- TABLE delivery-queue
--
CREATE TABLE IF NOT EXISTS `delivery-queue` (
`gsid` int unsigned NOT NULL COMMENT 'Target server',
`uri-id` int unsigned NOT NULL COMMENT 'Delivered post',
`created` datetime COMMENT '',
`command` varbinary(32) COMMENT '',
`cid` int unsigned COMMENT 'Target contact',
`uid` mediumint unsigned COMMENT 'Delivering user',
`failed` tinyint DEFAULT 0 COMMENT 'Number of times the delivery has failed',
PRIMARY KEY(`uri-id`,`gsid`),
INDEX `gsid_created` (`gsid`,`created`),
INDEX `uid` (`uid`),
INDEX `cid` (`cid`),
FOREIGN KEY (`gsid`) REFERENCES `gserver` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`cid`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Delivery data for posts for the batch processing';
--
-- TABLE diaspora-contact
--
@ -602,7 +608,7 @@ CREATE TABLE IF NOT EXISTS `diaspora-contact` (
`gsid` int unsigned COMMENT 'Global Server ID',
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
`updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
`interacting_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts this contact interactes with',
`interacting_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts this contact interacts with',
`interacted_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts that interacted with this contact',
`post_count` int unsigned DEFAULT 0 COMMENT 'Number of posts and comments',
PRIMARY KEY(`uri-id`),
@ -803,6 +809,7 @@ CREATE TABLE IF NOT EXISTS `inbox-entry-receiver` (
CREATE TABLE IF NOT EXISTS `inbox-status` (
`url` varbinary(383) NOT NULL COMMENT 'URL of the inbox',
`uri-id` int unsigned COMMENT 'Item-uri id of inbox url',
`gsid` int unsigned COMMENT 'ID of the related server',
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'Creation date of this entry',
`success` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'Date of the last successful delivery',
`failure` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'Date of the last failed delivery',
@ -811,7 +818,9 @@ CREATE TABLE IF NOT EXISTS `inbox-status` (
`shared` boolean NOT NULL DEFAULT '0' COMMENT 'Is it a shared inbox?',
PRIMARY KEY(`url`),
INDEX `uri-id` (`uri-id`),
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
INDEX `gsid` (`gsid`),
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`gsid`) REFERENCES `gserver` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Status of ActivityPub inboxes';
--
@ -839,6 +848,16 @@ CREATE TABLE IF NOT EXISTS `intro` (
FOREIGN KEY (`suggest-cid`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
--
-- TABLE key-value
--
CREATE TABLE IF NOT EXISTS `key-value` (
`k` varbinary(50) NOT NULL COMMENT '',
`v` mediumtext COMMENT '',
`updated_at` int unsigned NOT NULL COMMENT 'timestamp of the last update',
PRIMARY KEY(`k`)
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='A key value storage';
--
-- TABLE locks
--
@ -861,7 +880,7 @@ CREATE TABLE IF NOT EXISTS `mail` (
`guid` varbinary(255) NOT NULL DEFAULT '' COMMENT 'A unique identifier for this private message',
`from-name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name of the sender',
`from-photo` varbinary(383) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
`from-url` varbinary(383) NOT NULL DEFAULT '' COMMENT 'profile linke of the sender',
`from-url` varbinary(383) NOT NULL DEFAULT '' COMMENT 'profile link of the sender',
`contact-id` varbinary(255) COMMENT 'contact.id',
`author-id` int unsigned COMMENT 'Link to the contact table with uid=0 of the author of the mail',
`convid` int unsigned COMMENT 'conv.id',
@ -1439,7 +1458,7 @@ CREATE TABLE IF NOT EXISTS `post-user` (
`event-id` int unsigned COMMENT 'Used to link to the event.id',
`unseen` boolean NOT NULL DEFAULT '1' COMMENT 'post has not been seen',
`hidden` boolean NOT NULL DEFAULT '0' COMMENT 'Marker to hide the post from the user',
`notification-type` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '',
`notification-type` smallint unsigned NOT NULL DEFAULT 0 COMMENT '',
`wall` boolean NOT NULL DEFAULT '0' COMMENT 'This item was posted to the wall of uid',
`origin` boolean NOT NULL DEFAULT '0' COMMENT 'item originated at this site',
`psid` int unsigned COMMENT 'ID of the permission set of this post',
@ -1551,7 +1570,7 @@ CREATE TABLE IF NOT EXISTS `post-user-notification` (
--
CREATE TABLE IF NOT EXISTS `process` (
`pid` int unsigned NOT NULL COMMENT 'The ID of the process',
`hostname` varchar(32) NOT NULL COMMENT 'The name of the host the process is ran on',
`hostname` varchar(255) NOT NULL COMMENT 'The name of the host the process is ran on',
`command` varbinary(32) NOT NULL DEFAULT '' COMMENT '',
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
PRIMARY KEY(`pid`,`hostname`),
@ -1674,15 +1693,20 @@ CREATE TABLE IF NOT EXISTS `register` (
CREATE TABLE IF NOT EXISTS `report` (
`id` int unsigned NOT NULL auto_increment COMMENT 'sequential ID',
`uid` mediumint unsigned COMMENT 'Reporting user',
`reporter-id` int unsigned COMMENT 'Reporting contact',
`cid` int unsigned NOT NULL COMMENT 'Reported contact',
`comment` text COMMENT 'Report',
`category` varchar(20) COMMENT 'Category of the report (spam, violation, other)',
`rules` text COMMENT 'Violated rules',
`forward` boolean COMMENT 'Forward the report to the remote server',
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
`status` tinyint unsigned COMMENT 'Status of the report',
PRIMARY KEY(`id`),
INDEX `uid` (`uid`),
INDEX `cid` (`cid`),
INDEX `reporter-id` (`reporter-id`),
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`reporter-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`cid`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
@ -2825,7 +2849,9 @@ CREATE VIEW `account-view` AS SELECT
`apcontact`.`statuses_count` AS `ap-statuses_count`,
`gserver`.`site_name` AS `site_name`,
`gserver`.`platform` AS `platform`,
`gserver`.`version` AS `version`
`gserver`.`version` AS `version`,
`gserver`.`blocked` AS `server-blocked`,
`gserver`.`failed` AS `server-failed`
FROM `contact`
LEFT JOIN `item-uri` ON `item-uri`.`id` = `contact`.`uri-id`
LEFT JOIN `apcontact` ON `apcontact`.`uri-id` = `contact`.`uri-id`
@ -2929,7 +2955,9 @@ CREATE VIEW `account-user-view` AS SELECT
`apcontact`.`statuses_count` AS `ap-statuses_count`,
`gserver`.`site_name` AS `site_name`,
`gserver`.`platform` AS `platform`,
`gserver`.`version` AS `version`
`gserver`.`version` AS `version`,
`gserver`.`blocked` AS `server-blocked`,
`gserver`.`failed` AS `server-failed`
FROM `contact` AS `ucontact`
INNER JOIN `contact` ON `contact`.`uri-id` = `ucontact`.`uri-id` AND `contact`.`uid` = 0
LEFT JOIN `item-uri` ON `item-uri`.`id` = `ucontact`.`uri-id`

View File

@ -908,6 +908,13 @@ Identical to [the Twitter Media Object](https://developer.twitter.com/en/docs/tw
<td>Resource ID (32 hex chars)</td>
</tr>
<tr>
<td><code>media-id</code></td>
<td>String (Integer) </td>
<td>ID used for attaching images to a Mastodon Post Status</td>
</tr>
<tr>
<td><code>created</code></td>
<td>String (Date)</td>
@ -1001,6 +1008,14 @@ Mutually exclusive with <code>data</code> <code>datasize</code>.
</td>
</tr>
<tr>
<td><code>scales</code></td>
<td>Array of Photo Scales</td>
<td>
List of the various resized versions of the Photo
</td>
</tr>
<tr>
<td><code>datasize</code></td>
<td>Integer</td>
@ -1040,6 +1055,58 @@ Mutually exclusive with <code>link</code>.
</tbody>
</table>
## Photo Scale
<table class="table table-condensed table-striped table-bordered">
<thead>
<tr>
<th>Attribute</th>
<th>Type</th>
<th align="center">Nullable</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>id</code></td>
<td>String (Integer)</td>
<td>Row ID of this photo scale</td>
</tr>
<tr>
<td><code>scale</code></td>
<td>Integer</td>
<td>Scale number</td>
</tr>
<tr>
<td><code>link</code></td>
<td>String (URL)</td>
<td>URL to this scale's image</td>
</tr>
<tr>
<td><code>height</code></td>
<td>Integer</td>
<td>Image height in pixels</td>
</tr>
<tr>
<td><code>width</code></td>
<td>Integer</td>
<td>Image width in pixels</td>
</tr>
<tr>
<td><code>size</code></td>
<td>Integer</td>
<td>Image size in bytes</td>
</tr>
</tbody>
</table>
## Photo List Item
<table class="table table-condensed table-striped table-bordered">
@ -1103,6 +1170,40 @@ Mutually exclusive with <code>link</code>.
</tbody>
</table>
## Photo Album
<table class="table table-condensed table-striped table-bordered">
<thead>
<tr>
<th>Attribute</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>name</code></td>
<td>String</td>
<td>The name of the photo album</td>
</tr>
<tr>
<td><code>created</code></td>
<td>String (Date)</td>
<td>The creation date of the album. Format <code>YYYY-MM-DD HH:MM:SS</code></td>
</tr>
<tr>
<td><code>count</code></td>
<td>Integer</td>
<td>The number of images in the album</td>
</tr>
</tbody>
</table>
## Private message
<table class="table table-condensed table-striped table-bordered">

View File

@ -135,7 +135,7 @@ Alias of [`api/conversation/show`](#GET+api%2Fconversation%2Fshow).
### GET api/statusnet/config
Returns the public Friendica node configuration.
Returns the public Friendica node configuration.
### GET api/gnusocial/config
@ -163,7 +163,7 @@ Add or remove an activity from an item.
* `attendmaybe`
To remove an activity, prepend the verb with "un", eg. "unlike" or "undislike"
Attend verbs disable eachother: that means that if "attendyes" was added to an item, adding "attendno" remove previous "attendyes".
Attend verbs disable each other: that means that if "attendyes" was added to an item, adding "attendno" remove previous "attendyes".
Attend verbs should be used only with event-related items (there is no check at the moment).
#### Parameters
@ -305,7 +305,7 @@ Returns [Private Messages](help/API-Entities#Private+message) matching the provi
#### Parameters
* `searchstring`: string for which the API call should search as '%searchstring%' in field 'body' of all messages of the authenticated user (caption ignored)
* `getText` (optional): `plain`|`html` If ommited, the title is prepended to the plaintext body in the `text` attribute of the private message objects.
* `getText` (optional): `plain`|`html` If omitted, the title is prepended to the plaintext body in the `text` attribute of the private message objects.
* `getUserObjects` (optional): `true`|`false` If `false`, the `sender` and `recipient` attributes of the private message object are absent.
#### Return values
@ -604,7 +604,7 @@ Sets item table entries for this photo to deleted = 1.
On success:
* JSON return
* JSON return
```json
{
@ -633,7 +633,7 @@ Deletes all images with the specified album name, is not reversible -> ensure th
On success:
* JSON return
* JSON return
```json
{
@ -646,7 +646,7 @@ On error:
* 403 FORBIDDEN: if not authenticated
* 400 BADREQUEST: "no albumname specified", "album not available"
* 500 INTERNALSERVERERROR: "problem with deleting item occured", "unknown error - deleting from database failed"
* 500 INTERNALSERVERERROR: "problem with deleting item occurred", "unknown error - deleting from database failed"
### POST api/friendica/photoalbum/update
@ -665,8 +665,8 @@ On success:
```json
{
"result": "updated",
"message":"album 'abc' with all containing photos has been renamed to 'xyz'."
"result": "updated",
"message":"album 'abc' with all containing photos has been renamed to 'xyz'."
}
```
@ -676,8 +676,92 @@ On error:
* 400 BADREQUEST: "no albumname specified", "no new albumname specified", "album not available"
* 500 INTERNALSERVERERROR: "unknown error - updating in database failed"
### GET api/friendica/photoalbums
Get a list of photo albums for the user
#### Parameters
None
#### Return values
On success a list of photo album objects:
```json
[
{
"name": "Wall Photos",
"created": "2023-01-22 02:03:19",
"count": 4
},
{
"name": "Profile photos",
"created": "2022-11-20 14:40:06",
"count": 1
}
]
```
### GET api/friendica/photoalbum
Get a list of images in a photo album
#### Parameters
* `album` (Required): name of the album to be deleted
* `limit` (Optional): Maximum number of items to get, defaults to 50, max 500
* `offset`(Optional): Offset in results to page through total items, defaults to 0
* `latest_first` (Optional): Reverse the order so the most recent images are first, defaults to false
#### Return values
On success:
* JSON return with the list of Photo items
**Example:**
`https://<server>/api/friendica/photoalbum?album=Wall Photos&limit=10&offset=2`
```json
[
{
"created": "2023-02-14 14:31:06",
"edited": "2023-02-14 14:31:14",
"title": "",
"desc": "",
"album": "Wall Photos",
"filename": "image.png",
"type": "image/png",
"height": 835,
"width": 693,
"datasize": 119523,
"profile": 0,
"allow_cid": "",
"deny_cid": "",
"allow_gid": "",
"deny_gid": "",
"id": "899184972463eb9b2ae3dc2580502826",
"scale": 0,
"media-id": 52,
"scales": [
{
"id": 52,
"scale": 0,
"link": "https://<server>/photo/899184972463eb9b2ae3dc2580502826-0.png",
"width": 693,
"height": 835,
"size": 119523
},
...
],
"thumb": "https://<server>/photo/899184972463eb9b2ae3dc2580502826-2.png"
},
...
]
```
---
### GET api/friendica/profile/show
Returns the [Profile](help/API-Entities#Profile) data of the authenticated user.
@ -715,6 +799,129 @@ General description of profile data in API returns:
---
### POST api/friendica/statuses/:id/dislike
Marks the given status as disliked by this user
#### Path Parameter
* `id`: the status ID that is being marked
#### Return values
A Mastodon [Status Entity](https://docs.joinmastodon.org/entities/Status/)
#### Example:
`https://<server_name>/api/friendica/statuses/341/dislike`
```json
{
"id": "341",
"created_at": "2023-02-23T01:50:00.000Z",
"in_reply_to_id": null,
"in_reply_to_status": null,
"in_reply_to_account_id": null,
"sensitive": false,
"spoiler_text": "",
"visibility": "public",
"language": "en",
...
"account": {
"id": "8",
"username": "testuser2",
...
},
"media_attachments": [],
"mentions": [],
"tags": [],
"emojis": [],
"card": null,
"poll": null,
"friendica": {
"title": "",
"dislikes_count": 1,
"disliked": true
}
}
```
### GET api/friendica/statuses/:id/disliked_by
Returns the list of accounts that have disliked the status as known by the current server
#### Path Parameter
* `id`: the status ID that is being marked
#### Return values
A list of [Mastodon Account](https://docs.joinmastodon.org/entities/Account/) objects
in the body and next/previous link headers in the header
#### Example:
`https://<server_name>/api/friendica/statuses/341/disliked_by`
```json
[
{
"id": "6",
"username": "testuser1",
...
}
]
```
### POST api/friendica/statuses/:id/undislike
Removes the dislike mark (if it exists) on this status for this user
#### Path Parameter
* `id`: the status ID that is being marked
#### Return values
A Mastodon [Status Entity](https://docs.joinmastodon.org/entities/Status/)
#### Example:
`https://<server_name>/api/friendica/statuses/341/undislike`
```json
{
"id": "341",
"created_at": "2023-02-23T01:50:00.000Z",
"in_reply_to_id": null,
"in_reply_to_status": null,
"in_reply_to_account_id": null,
"sensitive": false,
"spoiler_text": "",
"visibility": "public",
"language": "en",
...
"account": {
"id": "8",
"username": "testuser2",
...
},
"media_attachments": [],
"mentions": [],
"tags": [],
"emojis": [],
"card": null,
"poll": null,
"friendica": {
"title": "",
"dislikes_count": 0,
"disliked": false
}
}
```
---
## Deprecated endpoints
- POST api/statuses/mediap

View File

@ -30,6 +30,101 @@ For supported apps please have a look at the [FAQ](help/FAQ#clients)
## Entities
These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/entities/).
With some additional extensions listed below.
### Instance (Version 2) Entities
Extensions to the [Mastodon Instance::V2 Entities](https://docs.joinmastodon.org/entities/Instance/)
* `friendica`: Friendica specific properties of the V2 Instance including:
* `version`: The Friendica version string
* `codename`: The Friendica version code name
* `db_version`: The database schema version number
Example:
```json
{
"domain": "friendicadevtest1.myportal.social",
"title": "Friendica Social Network",
"version": "2.8.0 (compatible; Friendica 2023.03-dev)",
...
"friendica": {
"version": "2023.03-dev",
"codename": "Giant Rhubarb",
"db_version": 1516
}
}
```
### Notification Entities
Extensions to the [Mastodon Notification Entities](https://docs.joinmastodon.org/entities/Notification/)
* `dismissed`: whether the object has been dismissed or not
### Status Entities
Extensions to the [Mastodon Status Entities](https://docs.joinmastodon.org/entities/Status/)
* `in_reply_to_status`: A fully populated Mastodon Status entity for the replied to status or null it is a post rather than a response
* `friendica`: Friendica specific properties of a status including:
* `title`: The Friendica title for a post, or empty if the status is a comment
* `delivery_data`: Information about the state of federating a message from the server
* `delivery_queue_count`: Total number of remote servers that the status needs to be federated to.
* `delivery_queue_done`: Total number of remote servers that have successfully been federated to so far.
* `delivery_queue_failed`: Total number of remote servers that have we failed to federate to so far.
* `dislikes_count`: The number of dislikes that a status has accumulated according to the server.
* `disliked`: Whether the API user disliked the status.
Example:
```json
{
"id": "358",
"created_at": "2023-02-23T02:45:46.000Z",
"in_reply_to_id": "356",
"in_reply_to_status": {
"id": "356",
"created_at": "2023-02-23T02:45:35.000Z",
"in_reply_to_id": null,
"in_reply_to_status": null,
"in_reply_to_account_id": null,
...
"content": "A post from testuser1",
...
"account": {
"id": "6",
"username": "testuser1",
"acct": "testuser1",
"display_name": "testuser1",
...
},
...
"friendica": {
"title": "",
"dislikes_count": 0
}
},
"in_reply_to_account_id": "6",
...
"replies_count": 0,
"reblogs_count": 0,
"favourites_count": 0,
...
"content": "A reply from testuser2",
...
"account": {
"id": "8",
"username": "testuser2",
"acct": "testuser2",
"display_name": "testuser2",
...
},
...
"friendica": {
"title": "",
"delivery_data": {
"delivery_queue_count": 10,
"delivery_queue_done": 3,
"delivery_queue_failed": 0
},
"dislikes_count": 0
}
}
```
## Implemented endpoints
@ -73,8 +168,8 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
- `:id` is a follow request ID, not a regular account id
- Returns a [Relationship](https://docs.joinmastodon.org/entities/relationship) object.
- [`GET /api/v1/followed_tags'](https://docs.joinmastodon.org/methods/followed_tags/)
- [`GET /api/v1/instance`](https://docs.joinmastodon.org/methods/instance#fetch-instance)
- [`GET /api/v1/followed_tags`](https://docs.joinmastodon.org/methods/followed_tags/)
- [`GET /api/v1/instance`](https://docs.joinmastodon.org/methods/instance/#v1)
- `GET /api/v1/instance/rules` Undocumented, returns Terms of Service
- [`GET /api/v1/instance/peers`](https://docs.joinmastodon.org/methods/instance#list-of-connected-domains)
- [`GET /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
@ -92,6 +187,10 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
- [`PUT /api/v1/media/:id`](https://docs.joinmastodon.org/methods/statuses/media/)
- [`GET /api/v1/mutes`](https://docs.joinmastodon.org/methods/accounts/mutes/)
- [`GET /api/v1/notifications`](https://docs.joinmastodon.org/methods/notifications/)
- Additional field `include_all` to return read and unread statuses, defaults to `false`
- Additional field `summary` returns a count of all of the statuses that match the type filter
- Additional field `with_muted` Pleroma extension to return notifications from muted users, defaults to `false`
- Does not support the `type` field, which is the mirror image of the supported `exclude_types` field
- [`GET /api/v1/notifications/:id`](https://docs.joinmastodon.org/methods/notifications/)
- [`POST /api/v1/notifications/clear`](https://docs.joinmastodon.org/methods/notifications/)
- [`POST /api/v1/notifications/:id/dismiss`](https://docs.joinmastodon.org/methods/notifications/)
@ -106,11 +205,22 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
- [`DELETE /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
- [`GET /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
- [`GET /api/v1/search`](https://docs.joinmastodon.org/methods/search/)
- [`PUT /api/v1/statuses`](https://docs.joinmastodon.org/methods/statuses/#edit)
- Does not support `polls` argument as Friendica does not have polls
- Additional fields `friendica` for Friendica specific parameters:
- `title`: Explicitly sets the title for a post status, ignored if used on a comment status. For post statuses the legacy behavior is to use any "spoiler text" as the title if it is provided. If both the title and spoiler text are provided for a post status then they will each be used for their respective roles. If no title is provided then the legacy behavior will persist. If you want to create a post with no title but spoiler text then explicitly set the title but set it to an empty string `""`.
- [`POST /api/v1/statuses`](https://docs.joinmastodon.org/methods/statuses/#create)
- Does not support `polls` argument as Friendica does not have polls
- Additionally to the static values `public`, `unlisted` and `private`, the `visibility` parameter can contain a numeric value with a group id.
- Additional field `quote_id` for the post that is being quote reshared
- Additional fields `friendica` for Friendica specific parameters:
- `title`: Explicitly sets the title for a post status, ignored if used on a comment status. For post statuses the legacy behavior is to use any "spoiler text" as the title if it is provided. If both the title and spoiler text are provided for a post status then they will each be used for their respective roles. If no title is provided then the legacy behavior will persist. If you want to create a post with no title but spoiler text then explicitly set the title but set it to an empty string `""`.
- [`GET /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/#get)
- [`DELETE /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/#delete)
- [`GET /api/v1/statuses/:id/context`](https://docs.joinmastodon.org/methods/statuses/#context)
- Additional support for paging using `min_id`, `max_id`, `since_id` parameters
- Additional support for previous/next Link Headers to support paging
- Additional flag `show_all` to allow including posts from blocked and ignored/muted users, defaults to `false`
- [`GET /api/v1/statuses/:id/reblogged_by`](https://docs.joinmastodon.org/methods/statuses/#reblogged_by)
- [`GET /api/v1/statuses/:id/favourited_by`](https://docs.joinmastodon.org/methods/statuses/#favourited_by)
- [`POST /api/v1/statuses/:id/favourite`](https://docs.joinmastodon.org/methods/statuses/#favourite)
@ -132,19 +242,30 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
- [`GET /api/v1/tags/:id/unfollow`](https://docs.joinmastodon.org/methods/tags/#unfollow)
- [`GET /api/v1/timelines/direct`](https://docs.joinmastodon.org/methods/timelines/)
- [`GET /api/v1/timelines/home`](https://docs.joinmastodon.org/methods/timelines/)
- Additional field `with_muted` Pleroma extension to return notifications from muted users, defaults to `false`
- Additional field `exclude_replies` to only return post statuses not replies/comments, defaults to `false`
- [`GET /api/v1/timelines/list/:id`](https://docs.joinmastodon.org/methods/timelines/)
- Additional field `with_muted` Pleroma extension to return notifications from muted users, defaults to `false`
- Additional field `exclude_replies` to only return post statuses not replies/comments, defaults to `false`
- [`GET /api/v1/timelines/public`](https://docs.joinmastodon.org/methods/timelines/)
- Additional field `with_muted` Pleroma extension to return notifications from muted users, defaults to `false`
- Additional field `exclude_replies` to only return post statuses not replies/comments, defaults to `false`
- [`GET /api/v1/timelines/tag/:hashtag`](https://docs.joinmastodon.org/methods/timelines/)
- Additional field `with_muted` Pleroma extension to return notifications from muted users, defaults to `false`
- Additional field `exclude_replies` to only return post statuses not replies/comments, defaults to `false`
- Does not support the `any[]`, `all[]`, or `none[]` query parameters
- [`GET /api/v1/trends`](https://docs.joinmastodon.org/methods/instance/trends/)
- [`GET /api/v1/trends/links`](https://github.com/mastodon/mastodon/pull/16917)
- [`GET /api/v1/trends/statuses`](https://docs.joinmastodon.org/methods/trends/#statuses)
- [`GET /api/v1/trends/tags`](https://docs.joinmastodon.org/methods/trends/#tags)
- Additional field `friendica_local` to return local trending tags instead of global tags, defaults to `false`
- [`GET /api/v2/instance`](https://docs.joinmastodon.org/methods/instance/#v2)
- [`GET /api/v2/search`](https://docs.joinmastodon.org/methods/search/)
## Currently unimplemented endpoints
These emdpoints are planned to be implemented somewhere in the future.
These endpoints are planned to be implemented somewhere in the future.
- [`POST /api/v1/accounts/:id/remove_from_followers`](https://github.com/mastodon/mastodon/pull/16864)
- [`GET /api/v1/accounts/familiar_followers`](https://github.com/mastodon/mastodon/pull/17700)

View File

@ -10,7 +10,7 @@ Not all Friendica sites allow open registration.
If registration is allowed, you will see a "Register" link immediately below the login prompt on the site's home page.
Following this link will take you to the site registration page.
The strength of our network is that lots of different sites are all completely compatible with each other.
If the site you're visting doesn't allow registration, or you think you might prefer another one, there is a [list of public servers here](https://dir.friendica.social/servers) and hopefully you will find one that meets your needs.
If the site you're visiting doesn't allow registration, or you think you might prefer another one, there is a [list of public servers here](https://dir.friendica.social/servers) and hopefully you will find one that meets your needs.
If you'd like to have your own server, you can do that too.
Visit [the Friendica website](http://friendi.ca/) to download the code with setup instructions.

View File

@ -100,7 +100,7 @@ See doxygen documentation of `IWritableStorage` interface for details about each
## Register a storage backend class
Each backend must be registered in the system when the plugin is installed, to be aviable.
Each backend must be registered in the system when the plugin is installed, to be available.
`DI::facStorage()->register(string $class)` is used to register the backend class.
@ -140,18 +140,18 @@ abstract class StorageTest
There are two intended types of exceptions for storages
### `ReferenceStorageExecption`
### `ReferenceStorageException`
This storage exception should be used in case the caller tries to use an invalid references.
This could happen in case the caller tries to delete or update an unknown reference.
The implementation of the storage backend must not ignore invalid references.
Avoid throwing the common `StorageExecption` instead of the `ReferenceStorageException` at this particular situation!
Avoid throwing the common `StorageException` instead of the `ReferenceStorageException` at this particular situation!
### `StorageException`
This is the common exception in case unexpected errors happen using the storage backend.
If there's a predecessor to this exception (e.g. you caught an exception and are throwing this execption), you should add the predecessor for transparency reasons.
If there's a predecessor to this exception (e.g. you caught an exception and are throwing this exception), you should add the predecessor for transparency reasons.
Example:
@ -320,7 +320,7 @@ The file is `addon/samplestorage/samplestorage.php`
<?php
/**
* Name: Sample Storage Addon
* Description: A sample addon which implements an unusefull storage backend
* Description: A sample addon which implements a very limited storage backend
* Version: 1.0.0
* Author: Alice <https://alice.social/~alice>
*/

View File

@ -44,7 +44,7 @@ Uninstalling an addon automatically unregisters any hook it registered, but if y
The install and uninstall functions will be called (i.e. re-installed) if the addon changes after installation.
Therefore your uninstall should not destroy data and install should consider that data may already exist.
Future extensions may provide for "setup" amd "remove".
Future extensions may provide for "setup" and "remove".
## PHP addon hooks
@ -60,25 +60,14 @@ This *should* be 'addon/*addon_name*/*addon_name*.php' in most cases and can be
`$function` is a string and is the name of the function which will be executed when the hook is called.
### Arguments
Your hook callback functions will be called with at least one and possibly two arguments
Your hook callback functions will be called with at most one argument
function <addon>_<hookname>(App $a, &$b) {
function <addon>_<hookname>(&$b) {
}
If you wish to make changes to the calling data, you must declare them as reference variables (with `&`) during function declaration.
#### $a
$a is the Friendica `App` class.
It contains a wealth of information about the current state of Friendica:
* which module has been called,
* configuration information,
* the page contents at the point the hook was invoked,
* profile and user information, etc.
It is recommeded you call this `$a` to match its usage elsewhere.
#### $b
$b can be called anything you like.
This is information specific to the hook currently being processed, and generally contains information that is being immediately processed or acted on that you can use, display, or alter.
@ -88,7 +77,7 @@ Remember to declare it with `&` if you wish to alter it.
Your addon can provide user-specific settings via the `addon_settings` PHP hook, but it can also provide node-wide settings in the administration page of your addon.
Simply declare a `<addon>_addon_admin(App $a)` function to display the form and a `<addon>_addon_admin_post(App $a)` function to process the data from the form.
Simply declare a `<addon>_addon_admin()` function to display the form and a `<addon>_addon_admin_post()` function to process the data from the form.0
## Global stylesheets
@ -102,7 +91,7 @@ function <addon>_install()
}
function <addon>_head(App $a)
function <addon>_head()
{
\Friendica\DI::page()->registerStylesheet(__DIR__ . '/relative/path/to/addon/stylesheet.css');
}
@ -124,7 +113,7 @@ function <addon>_install()
...
}
function <addon>_footer(App $a)
function <addon>_footer()
{
\Friendica\DI::page()->registerFooterScript(__DIR__ . '/relative/path/to/addon/script.js');
}
@ -135,7 +124,7 @@ function <addon>_footer(App $a)
### JavaScript hooks
The main Friendica script provides hooks via events dispatched on the `document` property.
In your Javascript file included as described above, add your event listener like this:
In your JavaScript file included as described above, add your event listener like this:
```js
document.addEventListener(name, callback);
@ -144,7 +133,7 @@ document.addEventListener(name, callback);
- *name* is the name of the hook and corresponds to a known Friendica JavaScript hook.
- *callback* is a JavaScript anonymous function to execute.
More info about Javascript event listeners: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener
More info about JavaScript event listeners: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener
#### Current JavaScript hooks
@ -167,9 +156,9 @@ DI::args()->get(1); // = 'arg1'
DI::args()->get(2); // = 'arg2'
```
To display a module page, you need to declare the function `<addon>_content(App $a)`, which defines and returns the page body content.
They may also contain `<addon>_post(App $a)` which is called before the `<addon>_content` function and typically handles the results of POST forms.
You may also have `<addon>_init(App $a)` which is called before `<addon>_content` and should include common logic to your module.
To display a module page, you need to declare the function `<addon>_content()`, which defines and returns the page body content.
They may also contain `<addon>_post()` which is called before the `<addon>_content` function and typically handles the results of POST forms.
You may also have `<addon>_init()` which is called before `<addon>_content` and should include common logic to your module.
## Templates
@ -209,7 +198,7 @@ Called when a user attempts to login.
### logged_in
Called after a user has successfully logged in.
`$b` contains the `$a->user` array.
`$b` contains the `App->user` array.
### display_item
Called when formatting a post for display.
@ -275,7 +264,7 @@ $data = [
##### With multiple submit buttons
```php
$data = [
'addon' => 'catavar',
'addon' => 'catavatar',
'title' => DI::l10n()->t('Cat Avatar Settings'),
'html' => $html,
'submit' => [
@ -360,7 +349,7 @@ Called prior to output of profile edit page.
### profile_advanced
Called when the HTML is generated for the Advanced profile, corresponding to the Profile tab within a person's profile page.
`$b` is the HTML string representation of the generated profile.
The profile array details are in `$a->profile`.
The profile array details are in `App->profile`.
### directory_item
Called from the Directory page when formatting an item for display.
@ -413,7 +402,7 @@ Called prior to output of personal XRD file.
### home_content
Called prior to output home page content, shown to unlogged users.
`$b` is the HTML sring of section region.
`$b` is the HTML string of section region.
### contact_edit
Called when editing contact details on an individual from the Contacts page.
@ -436,7 +425,7 @@ Called after HTML content functions have completed.
### footer
Called after HTML content functions have completed.
Deferred Javascript files should be registered using this hook.
Deferred JavaScript files should be registered using this hook.
`$b` is (string) HTML of footer div/element.
### avatar_lookup
@ -649,6 +638,14 @@ Hook data:
- **uid** (input): the user id to revoke the block for.
- **result** (output): a boolean value indicating wether the operation was successful or not.
### support_probe
Called to assert whether a connector addon provides probing capabilities.
Hook data:
- **protocol** (input): shorthand for the protocol. List of values is available in `src/Core/Protocol.php`.
- **result** (output): should be true if the connector provides follow capabilities, left alone otherwise.
### storage_instance
Called when a custom storage is used (e.g. webdav_storage)
@ -918,6 +915,7 @@ Here is a complete list of all hook callbacks with file locations (as of 24-Sep-
Hook::callAll('revoke_follow', $hook_data);
Hook::callAll('block', $hook_data);
Hook::callAll('unblock', $hook_data);
Hook::callAll('support_probe', $hook_data);
### src/Core/Logger/Factory.php

View File

@ -653,7 +653,7 @@ On Mastodon this field is used for the content warning.
<tr>
<td>Custom inline styles<br>
<br>
[style=text-shadow: 0 0 4px #CC0000;]You can change all the CSS properties of this block.[/style]</td>
<td>You can change all <span style="text-shadow: 0 0 4px #cc0000;;">the CSS properties of this inline text.</span></td>
You can change all the [style=text-shadow: 0 0 4px #CC0000;]CSS properties[/style] of this inline text.</td>
<td>You can change all the <span style="text-shadow: 0 0 4px #cc0000;;">CSS properties</span> of this inline text.</td>
</tr>
</table>

View File

@ -39,7 +39,7 @@ You can use several servers to create an account:
### 1. Basics
At first you have to get the current version. You can either pull it from [Github](https://github.com) like so:
At first you have to get the current version. You can either pull it from [GitHub](https://github.com) like so:
$> cd /var/www/virtual/YOURSPACE/html/addon; git pull

View File

@ -20,7 +20,7 @@ Composer requires PHP CLI and the following examples assume it's available syste
#### From Archive
If you just unpacked a Friendica release archive, you don't have to use Commposer at all, all the required libraries are already bundled in the archive.
If you just unpacked a Friendica release archive, you don't have to use Composer at all, all the required libraries are already bundled in the archive.
#### Installing with Git

View File

@ -250,7 +250,7 @@ key = value
<tr>
<td><pre>
[config]
register_policty = REGISTER_CLOSED
register_policy = REGISTER_CLOSED
</pre></td>
<td><pre>
'config' => [

View File

@ -47,7 +47,7 @@ function doSomething(\Friendica\Contact\Introductions\Collection\Introductions $
}
/** @var $intros \Friendica\Contact\Introductions\Collection\Introductions */
$intros = \Friendica\DI::intro()->selecForUser(Session::getLocalUser());
$intros = \Friendica\DI::intro()->selectForUser(Session::getLocalUser());
doSomething($intros);
```

View File

@ -95,7 +95,7 @@ Please remove all the `require_once` mentions of the former file, as they will p
## Miscellaneous tips
When you are done with moving the class, please run `php bin/console.php typo` from the Friendica base directory to check for obvious mistakes.
Howevever, this tool isn't bullet-proof, and a staging install of Friendica is recommended to test your class move without impairing your production server if you host one.
However, this tool isn't bullet-proof, and a staging install of Friendica is recommended to test your class move without impairing your production server if you host one.
Most of Friendica processes are run in the background, so make sure to turn on your debug log to check for errors that wouldn't show up while simply browsing Friendica.

View File

@ -92,7 +92,7 @@ For documentation we use the standard of *one sentence per line* for the `md` fi
#### Check with [PHP Code Sniffer](https://github.com/squizlabs/PHP_CodeSniffer)
This tool checks your files against a variety of coding standards, including PSR-2, and ouputs a report of all the standard violations.
This tool checks your files against a variety of coding standards, including PSR-2, and outputs a report of all the standard violations.
You can simply install it through PEAR: `pear install PHP_CodeSniffer`
Once it is installed and available in your PATH, here's the command to run before committing your work:
@ -109,7 +109,7 @@ Here's the command to automatically fix the files you created/modified:
$> phpcbf --standard=ruleset.xml <file or directory>
If the command-line tools `diff` and `patch` are unavailabe for you, `phpcbf` can use slightly slower PHP equivalents by using the `--no-patch` argument.
If the command-line tools `diff` and `patch` are unavailable for you, `phpcbf` can use slightly slower PHP equivalents by using the `--no-patch` argument.
### Code documentation

View File

@ -36,7 +36,11 @@ Have a look into your <tt>config/local.config.php</tt> and fix your email addres
Yes.
You just have to list more then one email address in the
<tt>config/local.config.php</tt> file.
The listed emails need to be separated by a comma.
The listed emails need to be separated by a comma like this:
```php
'admin_email' => 'mail1@example.com,mail2@example.com',
```
<a name="dbupdate">
### The Database structure seems not to be updated. What can I do?
@ -48,4 +52,4 @@ You can manually execute the structure update from the CLI in the base directory
bin/console dbstructure update
if there occur any errors, please contact the [support forum](https://forum.friendi.ca/profile/helpers).
if there occur any errors, please contact the [support forum](https://forum.friendi.ca/profile/helpers).

View File

@ -42,7 +42,7 @@ Friendica Documentation and Resources
* [Get started](help/Developers-Intro)
* Set up development environment
* [Help on Github](help/Github)
* [Help on GitHub](help/GitHub)
* [Help on Vagrant](help/Vagrant)
* [Bugs and Issues](help/Bugs-and-Issues)
* Code structure
@ -69,7 +69,7 @@ Friendica Documentation and Resources
* Ways to get Support
* Friendica Support Forum: [@helpers@forum.friendi.ca](https://forum.friendi.ca/~helpers)
* [Mailing List Archive](http://mailman.friendi.ca/mailman/listinfo/support-friendi.ca) you can subscribe to the list by sending an email to ``support-request(at)friendi.ca?subject=subscribe``
* Community chat rooms (the IRC, Matrix and XMPP rooms are bridget) these public chats are logged [from IRC](https://gnusociarg.nsupdate.info/2021/%23friendica/) and [Matrix](https://view.matrix.org/alias/%23friendi.ca:matrix.org/)
* Community chat rooms (the IRC, Matrix and XMPP rooms are bridged) these public chats are logged [from IRC](https://gnusociarg.nsupdate.info/2021/%23friendica/) and [Matrix](https://view.matrix.org/alias/%23friendi.ca:matrix.org/)
* XMPP/Jabber MUC: support(at)forum.friendi.ca
* IRC: #friendica at [libera.chat](https://web.libera.chat/?channels=#friendica)
* Matrix: [#friendi.ca](https://matrix.to/#/#friendi.ca:matrix.org) or [#friendica-en](https://matrix.to/#/#friendica-en:matrix.org) at matrix.org

View File

@ -81,6 +81,6 @@ Please refer to external documentation for a more detailed explanation how to se
### Database
There are scripts like [tuning-primer.sh](http://www.day32.com/MySQL/) and [mysqltuner.pl](http://mysqltuner.pl) that analyze your database server and give hints on values that could be changed.
There are scripts like [tuning-primer.sh](https://github.com/BMDan/tuning-primer.sh) and [mysqltuner.pl](https://github.com/major/MySQLTuner-perl/blob/master/mysqltuner.pl) that analyze your database server and give hints on values that could be changed.
Please enable the slow query log. This helps to find performance problems.

View File

@ -51,10 +51,13 @@ For alternative server configurations (such as Nginx server and MariaDB database
### Alternative Installation Methods
This guide will walk you through the manual installation process of Friendica.
If this is nothing for you, you might be interested in
If this is nothing for you, you might be interested in the following:
* the [Friendica Docker image](https://github.com/friendica/docker) or
* how to [install Friendica with YunoHost](https://github.com/YunoHost-Apps/friendica_ynh).
* the [Friendica Docker image](https://github.com/friendica/docker)
* how to [install Friendica with YunoHost](https://github.com/YunoHost-Apps/friendica_ynh)
* [Tutorial: Creating a Friendica Server with Ubuntu 22.04](https://nequalsonelifestyle.com/2022/07/30/creating-friendica-server-ubuntu/)
* [Setting Up Friendica Daemon as a Systemd Service Tutorial](https://nequalsonelifestyle.com/2022/08/04/setting-up-friendica-daemon-systemd-service/)
* [Setting up Friendica on Unraid](https://www.jenovarain.com/2023/03/setting-up-friendica-on-unraid/) (NAS)
### Get Friendica
@ -228,7 +231,7 @@ Copy `.htaccess-dist` to `.htaccess` (be careful under Windows) to have working
Example:
cp .htacces-dist .htaccess
cp .htaccess-dist .htaccess
*Note*: Do **not** rename the `.htaccess-dist` file as it is tracked by GIT and renaming will cause a dirty working directory.
@ -350,7 +353,7 @@ Often this will need to be resolved with your hosting provider or (if self-hoste
First check your file permissions.
Your website and all contents must generally be world-readable.
Ensure that mod-rewite is installed and working, and that your `.htaccess` file
Ensure that mod-rewrite is installed and working, and that your `.htaccess` file
is being used. To verify the latter, create a file `test.out` containing the
word "test" in the top directory of Friendica, make it world readable and point
your web browser to
@ -463,9 +466,11 @@ After that, restart mysql and try again.
### Your worker never or rarely runs
Friendica is coded to always play nice. It checks whether the host machine is idle enough and if it _seems_ to be overloaded, it intermittently refuses to process the worker queue.
Friendica is coded to always play nice.
It checks whether the host machine is idle enough and if it _seems_ to be overloaded, it intermittently refuses to process the worker queue.
Such checks originate from the days of single-user single-core machines and involves thresholds that you should adjust based on the number of exclusive CPU cores you have. See this issue for more information:
Such checks originate from the days of single-user single-core machines and involves thresholds that you should adjust based on the number of exclusive CPU cores you have.
See this issue for more information:
* https://github.com/friendica/friendica/issues/10131
@ -482,28 +487,40 @@ You tried to upload an image up to 100kB and it failed.
You may not have the ownership or file mode set correctly if you are using the file system storage backend.
Change the backend to database. If this solves it, that is what needs to be fixed.
Change the backend to database.
If this solves it, that is what needs to be fixed.
Verify in your PHP ini:
* `file_uploads`: should be `1`
* `upload_tmp_dir`: should be writable (falls back to system default temp) and not blocked by `open_basedir`
### Error uploading large files
You may find `413 Request Entity Too Large` or `500 Internal Error` in the network inspector of the browser if the file is too large, for example if it is a video.
First try to upload a very small file, up to 100kB. If that succeeds, you will need to increase limits at multiple places, including on any web proxy that you are using.
First try to upload a very small file, up to 100kB.
If that succeeds, you will need to increase limits at multiple places, including on any web proxy that you are using.
Which one applies to you depends on your installation.
In your PHP ini:
* `upload_max_filesize`: defaults to 2MB
* `post_max_size`: defaults to 8MB, must be greater than `upload_max_filesize`
* `memory_limit`: defaults to 128MB, must be greater than `post_max_size`
* `max_input_time`: time limit of an upload, defaults to -1, meaning it uses `max_execution_time` instead
* `max_execution_time`: defaults to 30 seconds, should be enough if you also set `max_input_time`
You should verify whether you changed them in the _right file_ by checking the web interface at the end of the overview on the `Admin` panel.
For Apache2:
In your Apache2 config:
* `LimitRequestBody`: defaults to unlimited
* `FcgidMaxRequestLen`: defaults to 128kB
* `SSLRenegBufferSize`: defaults to 128kB, only if your site uses TLS and perhaps only when using `SSLVerifyClient` or `SSLVerifyDepth`
* Remove `LoadModule reqtimeout_module modules / mod_reqtimeout.so` or adjust `RequestReadTimeout`: defaults to 20 seconds and >= 500 byte/second
For nginx:
In your nginx config:
* `client_max_body_size`: defaults to 1MB
@ -511,7 +528,28 @@ If you are using the database backend for storage, increase this in your SQL con
* `max_allowed_packet`: defaults to 32MB
If you use the ModSecurity WAF:
In your ModSecurity WAF config:
* `SecRequestBodyLimit`: defaults to 12MB
* `SecRequestBodyNoFilesLimit`: defaults to 128kB, should not apply to Friendica
In the end, you will need to restart all services that you have changed configuration for.
If you don't know which ones these are, just reboot.
### Diaspora support is not activated
You get this error when you try to add a Diaspora contact.
You can enable it from the web interface in `Admin -> Site -> Policies -> Enable diaspora* support`.
You may also set it manually in the config file or in the database within the `diaspora_enabled` key of the `system` category.
### Upgrade failed due to DB migration timeout
Altering of a table may fail if it contains a large number of rows.
First verify the existing timeout (50s by default):
`show global variables like "innodb_lock_wait_timeout";`
Then increase it:
`set global innodb_lock_wait_timeout=600;`

View File

@ -50,12 +50,12 @@ This will take you through a similar process.
Connect to users of alternate networks
---
### Across the Federation and Fedivese
You can also use your Identity Address or other people's Identity Addresses to become friends across the so-called Federation/Fedivese of open source social media.
### Across the Federation and Fediverse
You can also use your Identity Address or other people's Identity Addresses to become friends across the so-called Federation/Fediverse of open source social media.
Currently, Friendica supports connections with people on diaspora*, Red, Hubzilla, GNU Social, StatusNet, Mastodon, Pleroma, socialhome, and ganggo platforms.
If you know (for instance) "alice" on gnusocial.net (a GNU Social site) you could put alice@gnusocial.net into your Contact page and become friends across networks.
Likwise you can put in the URL to Alice's gnusocial.net page, if you wish.
Likewise you can put in the URL to Alice's gnusocial.net page, if you wish.
Note: Some versions of GNU Social software may require the full URL to your profile and may not work with the identity address.
People on these networks can also initiate contact with you, if they know your contact details.
@ -74,7 +74,7 @@ Create an email contact with for example Alice on Gmail, enter her email in foll
In order to avoid abuse or spam, you must have an email from Alice with the correct email address in your email inbox.
Subscribing to mailing lists is done in the same way, but without the use of the "mailto:" prefix.
To subscribe to a mailing list, enter the email in following example format "mailling-list@list-server.net".
To subscribe to a mailing list, enter the email in following example format "mailing-list@list-server.net".
### Syndication feeds
You can "follow" almost anybody or any website that produces a syndication feed (RSS/Atom,etc.).

View File

@ -19,7 +19,7 @@ Friendica contacts
---
Friendica will recreate your account on the new server, with your contacts and groups.
A message is sent to Friendica contacts, to inform them about your move:
If your contacts are runnning on an updated server, your details on their side will be automatically updated.
If your contacts are running on an updated server, your details on their side will be automatically updated.
GNU Social contacts
---

View File

@ -4,7 +4,7 @@ If you're not already logged in, do so in the frame below.
Once you've logged in (or if you are already logged in), you'll now be looking at your profile page.
This is a bit like a Facebook wall.
It's where all your status messgages are kept, and where your friends come to post on your wall.
It's where all your status messages are kept, and where your friends come to post on your wall.
To write your status, simply click on the Pencil & Paper icon in the top right (in the Frio theme), or click in the box that says "share" (other themes).
When you do this, the posting dialog box will appear or the share box will expand.

View File

@ -104,12 +104,12 @@ Default is false.
#### File storage backend
Set the backend used by Friendica to store uploaded file data.
Two storage backends are avaiable with Friendica:
Two storage backends are available with Friendica:
- **Database** : Data is stored in a dedicated table in database (`storage`)
- **Filesystem** : Data is stored as file on the filesystem.
More storage backends can be avaiable from third-party addons.
More storage backends can be available from third-party addons.
If you use those, please refer to the documentation of those addons for further information.
Default value is 'Database (legacy)': it's the legacy way used to store data directly in database.

View File

@ -52,5 +52,5 @@ The same rules apply as with names that spaces within tags are represented by th
It is therefore not possible to create a tag whose target contains an underscore.
Topical tags are also not linked if they are purely numeric, e.g. #1.
If you wish to use a numerica hashtag, please add some descriptive text such as #2012-elections.
If you wish to use a numeric hashtag, please add some descriptive text such as #2012-elections.

View File

@ -13,7 +13,7 @@ If 2FA is already enabled and you want to add another device, you must re-config
### 1. Download an authenticator app
Any authenticator app should work with Friendica.
Notheless, we recommend:
Nonetheless, we recommend:
- For iOS, [Matt Rubin's MIT-licensed Authenticator app](https://mattrubin.me/authenticator).
- For Android, [andOTP](https://github.com/andOTP/andOTP).
@ -68,7 +68,7 @@ Instead, if you enabled two-factor authentication, you have to generate app-spec
You can generate as many app-specific passwords as you want, they will be shown once to you just after you generated it.
Just copy and paste it in your third-party app in the Friendica account password input field at this point.
We recommend generating a single app-specific password for each separate third-party app you are using, using a meaningul description of the target app (like "Frienqa on my Fairphone 2").
We recommend generating a single app-specific password for each separate third-party app you are using, using a meaningful description of the target app (like "Frienqa on my Fairphone 2").
You can also revoke any and all app-specific password you generated this way.
This may log you out of the third-party application(s) you used the revoked app-specific password to log in with.

View File

@ -31,7 +31,7 @@ The mysql database is called "friendica", the mysql user and password both are "
Your local working directory is set up as a shared directory with the VM (/vagrant).
7. Check the changes in your browser in the VM.
Find the Friendica log file `/vagrant/logfile.out` on the VM or in the `logfile.out` in you local Friendica directory.
8. Commit and push your changes directly back to Github.
8. Commit and push your changes directly back to GitHub.
If you want to stop vagrant after finishing your work, run the following command

View File

@ -10,7 +10,6 @@ Database Tables
| [2fa_trusted_browser](help/database/db_2fa_trusted_browser) | Two-factor authentication trusted browsers |
| [account-suggestion](help/database/db_account-suggestion) | Account suggestion |
| [account-user](help/database/db_account-user) | Remote and local accounts |
| [addon](help/database/db_addon) | registered addons |
| [apcontact](help/database/db_apcontact) | ActivityPub compatible contacts - used in the ActivityPub implementation |
| [application](help/database/db_application) | OAuth application |
| [application-marker](help/database/db_application-marker) | Timeline marker |
@ -23,6 +22,7 @@ Database Tables
| [contact-relation](help/database/db_contact-relation) | Contact relations |
| [conv](help/database/db_conv) | private messages |
| [delayed-post](help/database/db_delayed-post) | Posts that are about to be distributed at a later time |
| [delivery-queue](help/database/db_delivery-queue) | Delivery data for posts for the batch processing |
| [diaspora-contact](help/database/db_diaspora-contact) | Diaspora compatible contacts - used in the Diaspora implementation |
| [diaspora-interaction](help/database/db_diaspora-interaction) | Signed Diaspora Interaction |
| [endpoint](help/database/db_endpoint) | ActivityPub endpoints - used in the ActivityPub implementation |
@ -40,6 +40,7 @@ Database Tables
| [inbox-status](help/database/db_inbox-status) | Status of ActivityPub inboxes |
| [intro](help/database/db_intro) | |
| [item-uri](help/database/db_item-uri) | URI and GUID for items |
| [key-value](help/database/db_key-value) | A key value storage |
| [locks](help/database/db_locks) | |
| [mail](help/database/db_mail) | private messages |
| [mailacct](help/database/db_mailacct) | Mail account data for fetching mails |

View File

@ -1,29 +0,0 @@
Table addon
===========
registered addons
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ------------ | --------------------------------------------- | ------------ | ---- | --- | ------- | -------------- |
| id | | int unsigned | NO | PRI | NULL | auto_increment |
| name | addon base (file)name | varchar(50) | NO | | | |
| version | currently unused | varchar(50) | NO | | | |
| installed | currently always 1 | boolean | NO | | 0 | |
| hidden | currently unused | boolean | NO | | 0 | |
| timestamp | file timestamp to check for reloads | int unsigned | NO | | 0 | |
| plugin_admin | 1 = has admin config, 0 = has no admin config | boolean | NO | | 0 | |
Indexes
------------
| Name | Fields |
| -------------- | --------------- |
| PRIMARY | id |
| installed_name | installed, name |
| name | UNIQUE, name |
Return to [database documentation](help/database)

View File

@ -6,12 +6,12 @@ main configuration storage
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ----- | ----------- | ------------- | ---- | --- | ------- | -------------- |
| id | | int unsigned | NO | PRI | NULL | auto_increment |
| cat | | varbinary(50) | NO | | | |
| k | | varbinary(50) | NO | | | |
| v | | mediumtext | YES | | NULL | |
| Field | Description | Type | Null | Key | Default | Extra |
| ----- | ------------------------- | ------------- | ---- | --- | ------- | -------------- |
| id | | int unsigned | NO | PRI | NULL | auto_increment |
| cat | The category of the entry | varbinary(50) | NO | | | |
| k | The key of the entry | varbinary(50) | NO | | | |
| v | | mediumtext | YES | | NULL | |
Indexes
------------

View File

@ -0,0 +1,39 @@
Table delivery-queue
===========
Delivery data for posts for the batch processing
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ------- | --------------------------------------- | ------------------ | ---- | --- | ------- | ----- |
| gsid | Target server | int unsigned | NO | PRI | NULL | |
| uri-id | Delivered post | int unsigned | NO | PRI | NULL | |
| created | | datetime | YES | | NULL | |
| command | | varbinary(32) | YES | | NULL | |
| cid | Target contact | int unsigned | YES | | NULL | |
| uid | Delivering user | mediumint unsigned | YES | | NULL | |
| failed | Number of times the delivery has failed | tinyint | YES | | 0 | |
Indexes
------------
| Name | Fields |
| ------------ | ------------- |
| PRIMARY | uri-id, gsid |
| gsid_created | gsid, created |
| uid | uid |
| cid | cid |
Foreign Keys
------------
| Field | Target Table | Target Field |
|-------|--------------|--------------|
| gsid | [gserver](help/database/db_gserver) | id |
| uri-id | [item-uri](help/database/db_item-uri) | id |
| cid | [contact](help/database/db_contact) | id |
| uid | [user](help/database/db_user) | uid |
Return to [database documentation](help/database)

View File

@ -27,7 +27,7 @@ Fields
| gsid | Global Server ID | int unsigned | YES | | NULL | |
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
| interacting_count | Number of contacts this contact interactes with | int unsigned | YES | | 0 | |
| interacting_count | Number of contacts this contact interacts with | int unsigned | YES | | 0 | |
| interacted_count | Number of contacts that interacted with this contact | int unsigned | YES | | 0 | |
| post_count | Number of posts and comments | int unsigned | YES | | 0 | |

View File

@ -34,6 +34,7 @@ Fields
| last_poco_query | | datetime | YES | | 0001-01-01 00:00:00 | |
| last_contact | Last successful connection request | datetime | YES | | 0001-01-01 00:00:00 | |
| last_failure | Last failed connection request | datetime | YES | | 0001-01-01 00:00:00 | |
| blocked | Server is blocked | boolean | YES | | NULL | |
| failed | Connection failed | boolean | YES | | NULL | |
| next_contact | Next connection request | datetime | YES | | 0001-01-01 00:00:00 | |

View File

@ -10,6 +10,7 @@ Fields
| -------- | ------------------------------------ | -------------- | ---- | --- | ------------------- | ----- |
| url | URL of the inbox | varbinary(383) | NO | PRI | NULL | |
| uri-id | Item-uri id of inbox url | int unsigned | YES | | NULL | |
| gsid | ID of the related server | int unsigned | YES | | NULL | |
| created | Creation date of this entry | datetime | NO | | 0001-01-01 00:00:00 | |
| success | Date of the last successful delivery | datetime | NO | | 0001-01-01 00:00:00 | |
| failure | Date of the last failed delivery | datetime | NO | | 0001-01-01 00:00:00 | |
@ -24,6 +25,7 @@ Indexes
| ------- | ------ |
| PRIMARY | url |
| uri-id | uri-id |
| gsid | gsid |
Foreign Keys
------------
@ -31,5 +33,6 @@ Foreign Keys
| Field | Target Table | Target Field |
|-------|--------------|--------------|
| uri-id | [item-uri](help/database/db_item-uri) | id |
| gsid | [gserver](help/database/db_gserver) | id |
Return to [database documentation](help/database)

View File

@ -0,0 +1,23 @@
Table key-value
===========
A key value storage
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ---------- | ---------------------------- | ------------- | ---- | --- | ------- | ----- |
| k | | varbinary(50) | NO | PRI | NULL | |
| v | | mediumtext | YES | | NULL | |
| updated_at | timestamp of the last update | int unsigned | NO | | NULL | |
Indexes
------------
| Name | Fields |
| ------- | ------ |
| PRIMARY | k |
Return to [database documentation](help/database)

View File

@ -13,7 +13,7 @@ Fields
| guid | A unique identifier for this private message | varbinary(255) | NO | | | |
| from-name | name of the sender | varchar(255) | NO | | | |
| from-photo | contact photo link of the sender | varbinary(383) | NO | | | |
| from-url | profile linke of the sender | varbinary(383) | NO | | | |
| from-url | profile link of the sender | varbinary(383) | NO | | | |
| contact-id | contact.id | varbinary(255) | YES | | NULL | |
| author-id | Link to the contact table with uid=0 of the author of the mail | int unsigned | YES | | NULL | |
| convid | conv.id | int unsigned | YES | | NULL | |

View File

@ -34,7 +34,7 @@ Fields
| event-id | Used to link to the event.id | int unsigned | YES | | NULL | |
| unseen | post has not been seen | boolean | NO | | 1 | |
| hidden | Marker to hide the post from the user | boolean | NO | | 0 | |
| notification-type | | tinyint unsigned | NO | | 0 | |
| notification-type | | smallint unsigned | NO | | 0 | |
| wall | This item was posted to the wall of uid | boolean | NO | | 0 | |
| origin | item originated at this site | boolean | NO | | 0 | |
| psid | ID of the permission set of this post | int unsigned | YES | | NULL | |

View File

@ -9,7 +9,7 @@ Fields
| Field | Description | Type | Null | Key | Default | Extra |
| -------- | ------------------------------------------ | ------------- | ---- | --- | ------------------- | ----- |
| pid | The ID of the process | int unsigned | NO | PRI | NULL | |
| hostname | The name of the host the process is ran on | varchar(32) | NO | PRI | NULL | |
| hostname | The name of the host the process is ran on | varchar(255) | NO | PRI | NULL | |
| command | | varbinary(32) | NO | | | |
| created | | datetime | NO | | 0001-01-01 00:00:00 | |

View File

@ -6,24 +6,28 @@ Table report
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ------- | --------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
| uid | Reporting user | mediumint unsigned | YES | | NULL | |
| cid | Reported contact | int unsigned | NO | | NULL | |
| comment | Report | text | YES | | NULL | |
| forward | Forward the report to the remote server | boolean | YES | | NULL | |
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
| status | Status of the report | tinyint unsigned | YES | | NULL | |
| Field | Description | Type | Null | Key | Default | Extra |
| ----------- | ----------------------------------------------- | ------------------ | ---- | --- | ------------------- | -------------- |
| id | sequential ID | int unsigned | NO | PRI | NULL | auto_increment |
| uid | Reporting user | mediumint unsigned | YES | | NULL | |
| reporter-id | Reporting contact | int unsigned | YES | | NULL | |
| cid | Reported contact | int unsigned | NO | | NULL | |
| comment | Report | text | YES | | NULL | |
| category | Category of the report (spam, violation, other) | varchar(20) | YES | | NULL | |
| rules | Violated rules | text | YES | | NULL | |
| forward | Forward the report to the remote server | boolean | YES | | NULL | |
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
| status | Status of the report | tinyint unsigned | YES | | NULL | |
Indexes
------------
| Name | Fields |
| ------- | ------ |
| PRIMARY | id |
| uid | uid |
| cid | cid |
| Name | Fields |
| ----------- | ----------- |
| PRIMARY | id |
| uid | uid |
| cid | cid |
| reporter-id | reporter-id |
Foreign Keys
------------
@ -31,6 +35,7 @@ Foreign Keys
| Field | Target Table | Target Field |
|-------|--------------|--------------|
| uid | [user](help/database/db_user) | uid |
| reporter-id | [contact](help/database/db_contact) | id |
| cid | [contact](help/database/db_contact) | id |
Return to [database documentation](help/database)

View File

@ -32,7 +32,7 @@ Fields
| verified | user is verified through email | boolean | NO | | 0 | |
| blocked | 1 for user is blocked | boolean | NO | | 0 | |
| blockwall | Prohibit contacts to post to the profile page of the user | boolean | NO | | 0 | |
| hidewall | Hide profile details from unkown viewers | boolean | NO | | 0 | |
| hidewall | Hide profile details from unknown viewers | boolean | NO | | 0 | |
| blocktags | Prohibit contacts to tag the post of this user | boolean | NO | | 0 | |
| unkmail | Permit unknown people to send private mails to this user | boolean | NO | | 0 | |
| cntunkmail | | int unsigned | NO | | 10 | |

View File

@ -38,17 +38,14 @@ $function ist ein String und der Name der Funktion, die ausgeführt wird, wenn d
Argumente
---
Deine Hook-Callback-Funktion wird mit mindestens einem und bis zu zwei Argumenten aufgerufen
Deine Hook-Callback-Funktion wird mit höchstens einem Argumenten aufgerufen
function myhook_function(App $a, &$b) {
function myhook_function(&$b) {
}
Wenn du Änderungen an den aufgerufenen Daten vornehmen willst, musst du diese als Referenzvariable (mit "&") während der Funktionsdeklaration deklarieren.
$a ist die Friendica "App"-Klasse, die eine Menge an Informationen über den aktuellen Friendica-Status beinhaltet, u.a. welche Module genutzt werden, Konfigurationsinformationen, Inhalte der Seite zum Zeitpunkt des Hook-Aufrufs.
Es ist empfohlen, diese Funktion "$a" zu nennen, um seine Nutzung an den Gebrauch an anderer Stelle anzugleichen.
$b kann frei benannt werden.
Diese Information ist speziell auf den Hook bezogen, der aktuell bearbeitet wird, und beinhaltet normalerweise Daten, die du sofort nutzen, anzeigen oder bearbeiten kannst.
Achte darauf, diese mit "&" zu deklarieren, wenn du sie bearbeiten willst.
@ -70,9 +67,9 @@ DI::args()->get(1); // = 'arg1'
DI::args()->get(2); // = 'arg2'
```
Deine Modulfunktionen umfassen oft die Funktion addon_name_content(App $a), welche den Seiteninhalt definiert und zurückgibt.
Sie können auch addon_name_post(App $a) umfassen, welches vor der content-Funktion aufgerufen wird und normalerweise die Resultate der POST-Formulare handhabt.
Du kannst ebenso addon_name_init(App $a) nutzen, was oft frühzeitig aufgerufen wird und das Modul initialisert.
Deine Modulfunktionen umfassen oft die Funktion `addon_name_content()`, welche den Seiteninhalt definiert und zurückgibt.
Sie können auch `addon_name_post()` umfassen, welches vor der content-Funktion aufgerufen wird und normalerweise die Resultate der POST-Formulare handhabt.
Du kannst ebenso `addon_name_init()` nutzen, was oft frühzeitig aufgerufen wird und das Modul initialisert.
Derzeitige Hooks
@ -86,7 +83,7 @@ Derzeitige Hooks
'user_record' => die erfolgreiche Authentifizierung muss auch einen gültigen Nutzereintrag aus der Datenbank zurückgeben
**'logged_in'** - wird aufgerufen, sobald ein Nutzer sich erfolgreich angemeldet hat.
$b beinhaltet den $a->Nutzer-Array
$b beinhaltet den `App->user`
**'display_item'** - wird aufgerufen, wenn ein Beitrag für die Anzeige formatiert wird.
@ -122,7 +119,7 @@ Derzeitige Hooks
**'profile_advanced'** - wird aufgerufen, wenn die HTML-Ausgabe für das "Advanced profile" generiert wird; stimmt mit dem "Profil"-Tab auf der Profilseite der Nutzer überein.
$b ist die HTML-Ausgabe (String) des erstellten Profils
(Die Details des Profil-Arrays sind in $a->profile)
(Die Details des Profil-Arrays sind in `App->profile`)
**'directory_item'** - wird von der Verzeichnisseite aufgerufen, wenn ein Item für die Anzeige formatiert wird.
$b ist ein Array
@ -400,6 +397,7 @@ Eine komplette Liste aller Hook-Callbacks mit den zugehörigen Dateien (am 01-Ap
Hook::callAll('revoke_follow', $hook_data);
Hook::callAll('block', $hook_data);
Hook::callAll('unblock', $hook_data);
Hook::callAll('support_probe', $hook_data);
### src/Core/Logger/Factory.php

View File

@ -612,8 +612,8 @@ Dieses Feld wird von Mastodon f&uuml;r die Inhaltswarnung (content warning) verw
<tr>
<td>Benutzerdefinierte Inline-Styles<br>
<br>
[style=text-shadow: 0 0 4px #CC0000;]Du kannst alle CSS-Eigenschaften eines Blocks &auml;ndern-[/style]</td>
<td>Du kannst alle <span style="text-shadow: 0 0 4px #cc0000;;">CSS-Eigenschaften dieses Inline-Textes &auml;ndern-</span></td>
Du kannst alle [style=text-shadow: 0 0 4px #CC0000;]CSS-Eigenschaften[/style] dieses Inline-Textes &auml;ndern-</td>
<td>Du kannst alle <span style="text-shadow: 0 0 4px #cc0000;;">CSS-Eigenschaften</span> dieses Inline-Textes &auml;ndern-</td>
</tr>
</table>

View File

@ -27,7 +27,7 @@ Der Quellcode von Friendica Red ist [hier](https://github.com/friendica/red) zu
Addons findest Du auf [dieser Seite](https://github.com/friendica/friendica-addons).
Wenn Du neue Themen suchst, findest Du sie auf [Friendica-Themes.com](http://friendica-themes.com/).
Wenn Du neue Themen suchst, findest Du sie auf [github.com/bkil/friendica-themes](https://github.com/bkil/friendica-themes).
<a name="adminaccount1"></a>
### Ich habe meine E-Mail Adresse geändern und jetzt ist das Admin Panel verschwunden?
@ -39,7 +39,11 @@ Bitte aktualisiere deine E-Mail Adresse in der <tt>config/local.config.php</tt>
Ja.
Du kannst in der <tt>config/local.config.php</tt> Datei mehrere E-Mail Adressen auflisten.
Die aufgelisteten Adressen werden mit Kommata von einander getrennt.
Die aufgelisteten Adressen werden wie folgt durch Kommas voneinander getrennt:
```php
'admin_email' => 'mail1@example.com,mail2@example.com',
```
<a name="dbupdate">
### Die Datenbank Struktur schein nicht aktuell zu sein. Was kann ich tun?
@ -52,4 +56,4 @@ Starte dazu bitte vom Grundverzeichnis deiner Friendica Instanz folgendes Komman
bin/console dbstructure update
sollten bei der Ausführung Fehler auftreten, kontaktiere bitte das [Support Forum](https://forum.friendi.ca/profile/helpers).
sollten bei der Ausführung Fehler auftreten, kontaktiere bitte das [Support Forum](https://forum.friendi.ca/profile/helpers).

View File

@ -95,6 +95,6 @@ Nutze externe Dokumente, um eine detailiertere Erklärung für die Einrichtung e
### Database
Es gibt Skripte wie [tuning-primer.sh](http://www.day32.com/MySQL/) und [mysqltuner.pl](http://mysqltuner.pl), die den Datenbankserver analysieren und Hinweise darauf geben, welche Werte verändert werden könnten.
Es gibt Skripte wie [tuning-primer.sh](https://github.com/BMDan/tuning-primer.sh) und [mysqltuner.pl](https://github.com/major/MySQLTuner-perl/blob/master/mysqltuner.pl), die den Datenbankserver analysieren und Hinweise darauf geben, welche Werte verändert werden könnten.
Aktivere hierfür die "Slow query" Log-Datei, um Performanceprobleme zu erkennen.

View File

@ -9,7 +9,7 @@ Depending on the theme you are using, there might be an additional link from the
## Event Overview
The overview page shows the calendar of the current month, plus a few days days at the beginning and the end.
The overview page shows the calendar of the current month, plus a few days at the beginning and the end.
Listed are all events for this month, created by you, or shared with you by your contacts,
This includes birthday reminders for contacts who share their birthday with you.

View File

@ -37,7 +37,7 @@ Form Templates
To guarantee a consistent look and feel for input forms, i.e. in the settings sections, there are templates for the basic form fields.
They are initialized with an array of data, depending on the tyle of the field.
All of these take an array holding the values, e.g. for a one line text input field, which is required and should be used to type email addesses use something along the lines of:
All of these take an array holding the values, e.g. for a one line text input field, which is required and should be used to type email addresses use something along the lines of:
'$adminmail' => array('adminmail', DI::l10n()->t('Site administrator email address'), $adminmail, DI::l10n()->t('Your account email address must match this in order to use the web admin panel.'), 'required', '', 'email'),
@ -70,7 +70,7 @@ Field parameter:
### field_custom.tpl
A customizeable template to include a custom element in the form with the usual surroundings,
A customizable template to include a custom element in the form with the usual surroundings,
Field parameter:
0. Name of the field,
@ -88,7 +88,7 @@ Field parameter:
2. Current value of the variable,
3. Help text for the input box,
4. Should be set to the translation of "Required" to mark this field as required,
5. if set to "autofocus" modern browser will put the cursur into this box once the page is loaded,
5. if set to "autofocus" modern browser will put the cursor into this box once the page is loaded,
6. if set, it will be used for the input type, default is `text` (possible types: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#%3Cinput%3E_types).
### field_intcheckbox.tpl

View File

@ -12,7 +12,7 @@ So, how to work on the UI of friendica.
You can either directly edit an existing theme.
But you might loose your changes when the theme is updated by the friendica team.
If you are almost happy with an existing theme, the easiest way to cover your needs is to create a new theme, inheritating most of the properties of the parent theme and change just minor stuff.
If you are almost happy with an existing theme, the easiest way to cover your needs is to create a new theme, inheriting most of the properties of the parent theme and change just minor stuff.
The below for a more detailed description of theme heritage.
Some themes also allow users to select *variants* of the theme.
@ -33,7 +33,7 @@ In most cases, you can found these in
/view/theme/**your-theme-name**/style.css
sometimes, there is also a file called style.php in the theme directory.
This is only needed if the theme allowes the user to change certain things of the theme dynamically.
This is only needed if the theme allows the user to change certain things of the theme dynamically.
Say the font size or set a background image.
### Templates
@ -50,7 +50,7 @@ if you want to override any template within your theme create your version of th
any template that exists there will be used instead of the default one.
### Javascript
### JavaScript
The same rule applies to the JavaScript files found in

View File

@ -51,7 +51,7 @@ In */etc/fail2ban/jail.local* create a section for Friendica:
bantime = 900
filter = friendica
port = http,https
logpath = /var/log/friend.log
logpath = /var/log/friendica.log
logencoding = utf-8
And create a filter definition in */etc/fail2ban/filter.d/friendica.conf*:

View File

@ -7,9 +7,9 @@ Friendica translations
The Friendica translation process is based on `gettext` PO files.
Basic worflow:
Basic workflow:
1. `xgettext` is used to collect translation strings across the project in the authoritative PO file located in `view/lang/C/messages.po`.
2. This file makes translations strings available at [the Transifex Friendica page](https://www.transifex.com/Friendica/friendica/dashboard/).
2. This file makes translations strings available at [the Transifex Friendica page](https://app.transifex.com/Friendica/friendica/dashboard/).
3. The translation itself is done at Transifex by volunteers.
4. The resulting PO files by languages are manually updated in `view/lang/<language>/messages.po`.
5. PO files are converted to PHP arrays in `view/lang/<language>/strings.php` that are ultimately used by Friendica to display the translations.
@ -17,13 +17,23 @@ Basic worflow:
## Translate Friendica in your favorite language
Thank you for your interest in improving Friendica's translation!
Please register a free Transifex account and ask over at [the Transifex Friendica page](https://www.transifex.com/Friendica/friendica/dashboard/) to join the translation team for your favorite language.
Please register a free Transifex account and ask over at [the Transifex Friendica page](https://app.transifex.com/Friendica/friendica/dashboard/) to join the translation team for your favorite language.
As a rule of thumb, we add support for a language in Friendica when at least 50% of the strings have been translated to avoid a scattered experience.
For addons, we add support for a language when if we already support the language in Friendica.
## Add new translation strings
### Supported gettext version
We currently support the gettext version 0.19.8.1 and actively check new translation strings with this version.
If you don't use this version, it's possible that our checks fail (f.e. because of tiny differences at linebreaks).
In case you do have a Docker environment, you can easily update the translations with the following command:
```shell
docker run --rm -v $PWD:/data -w /data friendicaci/transifex bin/run_xgettext.sh
```
### Core
Once you have added new translation strings in your code changes, please run `bin/run_xgettext.sh` from the base Friendica directory and commit the updated `view/lang/C/messages.po` to your branch.
@ -56,11 +66,11 @@ To use it, first create a configuration file with your credentials.
On Linux this file should be placed into your home directory `~/.transifexrc`.
The content of the file should be something like the following:
[https://www.transifex.com]
[https://app.transifex.com]
username = user
token =
password = p@ssw0rd
hostname = https://www.transifex.com
hostname = https://app.transifex.com
Since Friendica version 3.5.1 we ship configuration files for the Transifex client in the core repository and the addon repository in `.tx/config`.
To update the PO files after you have translated strings of e.g. Esperanto on the Transifex website you can use `tx` to download the updated PO file in the right location.

View File

@ -10,4 +10,3 @@
<directory>.</directory>
</files>
</docblox>

BIN
images/bluesky.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 32 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

@ -1,4 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="192" height="192" viewBox="0 0 1920 1920">
<rect fill="#1872a2" width="1920" height="1920"/>
<path fill="#febf19" d="M390 595q0-84 61-145 60-60 144-60h730q85 0 145 60 60 61 60 145v730q0 84-60 145-60 60-145 60H595q-84 0-144-60-60-61-61-145zm935-160h-183v274H778v231l363-2 1 273H778v274h547q67 0 114-47 46-46 45-113V595q0-67-45-113-46-46-114-47z"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="192" height="192" viewBox="0 0 1920 1920"><rect width="1920" height="1920" fill="#1872a2"/><path fill="#febf19" d="M390 595q0-84 61-145 60-60 144-60h730q85 0 145 60 60 61 60 145v730q0 84-60 145-60 60-145 60H595q-84 0-144-60-60-61-61-145zm935-160h-183v274H778v231l363-2 1 273H778v274h547q67 0 114-47 46-46 45-113V595q0-67-45-113-46-46-114-47z"/></svg>

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 397 B

View File

@ -1,4 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="192" height="192" viewBox="0 0 1920 1920">
<rect fill="#1872a2" x="60" y="60" width="1800" height="1800" rx="333"/>
<path fill="#febf19" d="M40 371q0-136 98-234 98-97 234-97h1178q136 0 233 97 97 98 97 234v1178q0 136-97 234-97 97-233 97H372q-137 0-234-97-97-98-98-234Zm1510-258h-296v442H666v373l587-4 1 441H666v442h884q107 0 182-75 75-74 74-183V371q0-108-74-182-74-75-182-76z"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="192" height="192" viewBox="0 0 1920 1920"><rect width="1800" height="1800" x="60" y="60" fill="#1872a2" rx="333"/><path fill="#febf19" d="M40 371q0-136 98-234 98-97 234-97h1178q136 0 233 97 97 98 97 234v1178q0 136-97 234-97 97-233 97H372q-137 0-234-97-97-98-98-234Zm1510-258h-296v442H666v373l587-4 1 441H666v442h884q107 0 182-75 75-74 74-183V371q0-108-74-182-74-75-182-76z"/></svg>

Before

Width:  |  Height:  |  Size: 434 B

After

Width:  |  Height:  |  Size: 428 B

View File

Before

Width:  |  Height:  |  Size: 137 KiB

After

Width:  |  Height:  |  Size: 137 KiB

View File

Before

Width:  |  Height:  |  Size: 408 KiB

After

Width:  |  Height:  |  Size: 408 KiB

View File

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

View File

Before

Width:  |  Height:  |  Size: 128 KiB

After

Width:  |  Height:  |  Size: 128 KiB

View File

Before

Width:  |  Height:  |  Size: 498 KiB

After

Width:  |  Height:  |  Size: 498 KiB

View File

Before

Width:  |  Height:  |  Size: 300 B

After

Width:  |  Height:  |  Size: 300 B

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -45,6 +45,9 @@ $a->runFrontend(
$dice->create(\Friendica\Core\PConfig\Capability\IManagePersonalConfigValues::class),
$dice->create(\Friendica\Security\Authentication::class),
$dice->create(\Friendica\App\Page::class),
$dice->create(\Friendica\Content\Nav::class),
$dice->create(Friendica\Module\Special\HTTPException::class),
new \Friendica\Util\HTTPInputData($_SERVER),
$start_time
$start_time,
$_SERVER
);

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -19,7 +19,7 @@
*
* This is the POST destination for most all locally posted
* text stuff. This function handles status, wall-to-wall status,
* local comments, and remote coments that are posted on this site
* local comments, and remote comments that are posted on this site
* (as opposed to being delivered in a feed).
* Also processed here are posts and comments coming through the
* statusnet/twitter API.
@ -29,7 +29,7 @@
*/
use Friendica\App;
use Friendica\Content\PageInfo;
use Friendica\Content\Conversation;
use Friendica\Content\Text\BBCode;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
@ -38,47 +38,28 @@ use Friendica\Core\System;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Attach;
use Friendica\Model\Contact;
use Friendica\Model\Conversation;
use Friendica\Model\FileTag;
use Friendica\Model\Item;
use Friendica\Model\ItemURI;
use Friendica\Model\Notification;
use Friendica\Model\Photo;
use Friendica\Model\Post;
use Friendica\Model\Tag;
use Friendica\Model\User;
use Friendica\Network\HTTPException;
use Friendica\Object\EMail\ItemCCEMail;
use Friendica\Protocol\Activity;
use Friendica\Security\Security;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\ParseUrl;
function item_post(App $a) {
if (!DI::userSession()->isAuthenticated()) {
$uid = DI::userSession()->getLocalUserId();
if (!$uid) {
throw new HTTPException\ForbiddenException();
}
$uid = DI::userSession()->getLocalUserId();
if (!empty($_REQUEST['dropitems'])) {
$arr_drop = explode(',', $_REQUEST['dropitems']);
foreach ($arr_drop as $item) {
Item::deleteForUser(['id' => $item], $uid);
}
$json = ['success' => 1];
System::jsonExit($json);
item_drop($uid, $_REQUEST['dropitems']);
}
Hook::callAll('post_local_start', $_REQUEST);
Logger::debug('postvars', ['_REQUEST' => $_REQUEST]);
$return_path = $_REQUEST['return'] ?? '';
$preview = intval($_REQUEST['preview'] ?? 0);
$preview = intval($_REQUEST['preview'] ?? 0);
/*
* Check for doubly-submitted posts, and reject duplicates
@ -86,48 +67,107 @@ function item_post(App $a) {
* after it's been previewed
*/
if (!$preview && !empty($_REQUEST['post_id_random'])) {
if (!empty($_SESSION['post-random']) && $_SESSION['post-random'] == $_REQUEST['post_id_random']) {
if (DI::session()->get('post-random') == $_REQUEST['post_id_random']) {
Logger::warning('duplicate post');
item_post_return(DI::baseUrl(), $return_path);
} else {
$_SESSION['post-random'] = $_REQUEST['post_id_random'];
DI::session()->set('post-random', $_REQUEST['post_id_random']);
}
}
// Is this a reply to something?
$parent_item_id = intval($_REQUEST['parent'] ?? 0);
$thr_parent_uri = trim($_REQUEST['parent_uri'] ?? '');
if (empty($_REQUEST['post_id'])) {
item_insert($uid, $_REQUEST, $preview, $return_path);
} else {
item_edit($uid, $_REQUEST, $preview, $return_path);
}
}
$parent_item = null;
$toplevel_item = null;
$toplevel_item_id = 0;
$toplevel_user_id = null;
function item_drop(int $uid, string $dropitems)
{
$arr_drop = explode(',', $dropitems);
foreach ($arr_drop as $item) {
Item::deleteForUser(['id' => $item], $uid);
}
$objecttype = null;
$profile_uid = DI::userSession()->getLocalUserId();
$posttype = ($_REQUEST['post_type'] ?? '') ?: Item::PT_ARTICLE;
System::jsonExit(['success' => 1]);
}
if ($parent_item_id || $thr_parent_uri) {
if ($parent_item_id) {
$parent_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $parent_item_id]);
} elseif ($thr_parent_uri) {
$parent_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['uri' => $thr_parent_uri, 'uid' => $profile_uid]);
function item_edit(int $uid, array $request, bool $preview, string $return_path)
{
$post = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $request['post_id'], 'uid' => $uid]);
if (!DBA::isResult($post)) {
if ($return_path) {
DI::sysmsg()->addNotice(DI::l10n()->t('Unable to locate original post.'));
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\NotFoundException(DI::l10n()->t('Unable to locate original post.'));
}
// if this isn't the top-level parent of the conversation, find it
if (DBA::isResult($parent_item)) {
// The URI and the contact is taken from the direct parent which needn't to be the top parent
$thr_parent_uri = $parent_item['uri'];
$toplevel_item = $parent_item;
$post['edit'] = $post;
$post['file'] = Post\Category::getTextByURIId($post['uri-id'], $post['uid']);
Post\Media::deleteByURIId($post['uri-id'], [Post\Media::AUDIO, Post\Media::VIDEO, Post\Media::IMAGE, Post\Media::HTML]);
$post = item_process($post, $request, $preview, $return_path);
$fields = [
'title' => $post['title'],
'body' => $post['body'],
'attach' => $post['attach'],
'file' => $post['file'],
'location' => $post['location'],
'coord' => $post['coord'],
'edited' => DateTimeFormat::utcNow(),
'changed' => DateTimeFormat::utcNow()
];
$fields['body'] = Item::setHashtags($fields['body']);
$quote_uri_id = Item::getQuoteUriId($fields['body'], $post['uid']);
if (!empty($quote_uri_id)) {
$fields['quote-uri-id'] = $quote_uri_id;
$fields['body'] = BBCode::removeSharedData($post['body']);
}
Item::update($fields, ['id' => $post['id']]);
Item::updateDisplayCache($post['uri-id']);
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\OKException(DI::l10n()->t('Post updated.'));
}
function item_insert(int $uid, array $request, bool $preview, string $return_path)
{
$post = ['uid' => $uid];
$post = DI::contentItem()->initializePost($post);
$post['edit'] = null;
$post['post-type'] = $request['post_type'] ?? '';
$post['wall'] = $request['wall'] ?? true;
$post['pubmail'] = $request['pubmail_enable'] ?? false;
$post['created'] = $request['created_at'] ?? DateTimeFormat::utcNow();
$post['edited'] = $post['changed'] = $post['commented'] = $post['created'];
$post['app'] = '';
$post['inform'] = '';
$post['postopts'] = '';
$post['file'] = '';
if (!empty($request['parent'])) {
$parent_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $request['parent']]);
if ($parent_item) {
// if this isn't the top-level parent of the conversation, find it
if ($parent_item['gravity'] != Item::GRAVITY_PARENT) {
$toplevel_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $toplevel_item['parent']]);
$toplevel_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $parent_item['parent']]);
} else {
$toplevel_item = $parent_item;
}
}
if (!DBA::isResult($toplevel_item)) {
DI::sysmsg()->addNotice(DI::l10n()->t('Unable to locate original post.'));
if (empty($toplevel_item)) {
if ($return_path) {
DI::sysmsg()->addNotice(DI::l10n()->t('Unable to locate original post.'));
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\NotFoundException(DI::l10n()->t('Unable to locate original post.'));
@ -136,561 +176,39 @@ function item_post(App $a) {
// When commenting on a public post then store the post for the current user
// This enables interaction like starring and saving into folders
if ($toplevel_item['uid'] == 0) {
$stored = Item::storeForUserByUriId($toplevel_item['uri-id'], DI::userSession()->getLocalUserId(), ['post-reason' => Item::PR_ACTIVITY]);
Logger::info('Public item stored for user', ['uri-id' => $toplevel_item['uri-id'], 'uid' => $uid, 'stored' => $stored]);
if ($stored) {
$toplevel_item = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $stored]);
}
$stored = Item::storeForUserByUriId($toplevel_item['uri-id'], $post['uid'], ['post-reason' => Item::PR_ACTIVITY]);
Logger::info('Public item stored for user', ['uri-id' => $toplevel_item['uri-id'], 'uid' => $post['uid'], 'stored' => $stored]);
}
$toplevel_item_id = $toplevel_item['id'];
$toplevel_user_id = $toplevel_item['uid'];
$objecttype = Activity\ObjectType::COMMENT;
}
if ($toplevel_item_id) {
Logger::info('mod_item: item_post', ['parent' => $toplevel_item_id]);
}
$post_id = intval($_REQUEST['post_id'] ?? 0);
$app = strip_tags($_REQUEST['source'] ?? '');
$extid = strip_tags($_REQUEST['extid'] ?? '');
$object = $_REQUEST['object'] ?? '';
// Don't use "defaults" here. It would turn 0 to 1
if (!isset($_REQUEST['wall'])) {
$wall = 1;
$post['parent'] = $toplevel_item['id'];
$post['gravity'] = Item::GRAVITY_COMMENT;
$post['thr-parent'] = $parent_item['uri'];
$post['wall'] = $toplevel_item['wall'];
} else {
$wall = $_REQUEST['wall'];
$parent_item = [];
$post['parent'] = 0;
$post['gravity'] = Item::GRAVITY_PARENT;
$post['thr-parent'] = $post['uri'];
}
// Ensure that the user id in a thread always stay the same
if (!is_null($toplevel_user_id) && in_array($toplevel_user_id, [DI::userSession()->getLocalUserId(), 0])) {
$profile_uid = $toplevel_user_id;
}
$post = DI::contentItem()->getACL($post, $parent_item, $request);
// Allow commenting if it is an answer to a public post
$allow_comment = DI::userSession()->getLocalUserId() && $toplevel_item_id && in_array($toplevel_item['private'], [Item::PUBLIC, Item::UNLISTED]) && in_array($toplevel_item['network'], Protocol::FEDERATED);
$post['pubmail'] = $post['pubmail'] && !$post['private'];
// Now check that valid personal details have been provided
if (!Security::canWriteToUserWall($profile_uid) && !$allow_comment) {
Logger::warning('Permission denied.', ['local' => DI::userSession()->getLocalUserId(), 'toplevel_item_id' => $toplevel_item_id, 'network' => $toplevel_item['network']]);
DI::sysmsg()->addNotice(DI::l10n()->t('Permission denied.'));
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
// Init post instance
$orig_post = null;
// is this an edited post?
if ($post_id > 0) {
$orig_post = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $post_id]);
}
$user = User::getById($profile_uid, ['allow_cid', 'allow_gid', 'deny_cid', 'deny_gid']);
if (!DBA::isResult($user) && !$toplevel_item_id) {
return 0;
}
$categories = '';
$postopts = '';
$emailcc = '';
$body = $_REQUEST['body'] ?? '';
$has_attachment = $_REQUEST['has_attachment'] ?? 0;
// If we have a speparate attachment, we need to add it to the body.
if (!empty($has_attachment)) {
$attachment_type = $_REQUEST['attachment_type'] ?? '';
$attachment_title = $_REQUEST['attachment_title'] ?? '';
$attachment_text = $_REQUEST['attachment_text'] ?? '';
$attachment_url = hex2bin($_REQUEST['attachment_url'] ?? '');
$attachment_img_src = hex2bin($_REQUEST['attachment_img_src'] ?? '');
$attachment_img_width = $_REQUEST['attachment_img_width'] ?? 0;
$attachment_img_height = $_REQUEST['attachment_img_height'] ?? 0;
// Fetch the basic attachment data
$attachment = ParseUrl::getSiteinfoCached($attachment_url);
unset($attachment['keywords']);
// Overwrite the basic data with possible changes from the frontend
$attachment['type'] = $attachment_type;
$attachment['title'] = $attachment_title;
$attachment['text'] = $attachment_text;
$attachment['url'] = $attachment_url;
if (!empty($attachment_img_src)) {
$attachment['images'] = [
0 => [
'src' => $attachment_img_src,
'width' => $attachment_img_width,
'height' => $attachment_img_height
]
];
} else {
unset($attachment['images']);
}
$att_bbcode = "\n" . PageInfo::getFooterFromData($attachment);
$body .= $att_bbcode;
} elseif (preg_match("/\[attachment\](.*?)\[\/attachment\]/ism", $body, $matches)) {
$body = preg_replace("/\[attachment].*?\[\/attachment\]/ism", PageInfo::getFooterFromUrl($matches[1]), $body);
}
// Convert links with empty descriptions to links without an explicit description
$body = preg_replace('#\[url=([^\]]*?)\]\[/url\]#ism', '[url]$1[/url]', $body);
if (!empty($orig_post)) {
$str_group_allow = $orig_post['allow_gid'];
$str_contact_allow = $orig_post['allow_cid'];
$str_group_deny = $orig_post['deny_gid'];
$str_contact_deny = $orig_post['deny_cid'];
$location = $orig_post['location'];
$coord = $orig_post['coord'];
$verb = $orig_post['verb'];
$objecttype = $orig_post['object-type'];
$app = $orig_post['app'];
$categories = Post\Category::getTextByURIId($orig_post['uri-id'], $orig_post['uid']);
$title = trim($_REQUEST['title'] ?? '');
$body = trim($body);
$private = $orig_post['private'];
$pubmail_enabled = $orig_post['pubmail'];
$network = $orig_post['network'];
$guid = $orig_post['guid'];
$extid = $orig_post['extid'];
} else {
$aclFormatter = DI::aclFormatter();
$str_contact_allow = isset($_REQUEST['contact_allow']) ? $aclFormatter->toString($_REQUEST['contact_allow']) : $user['allow_cid'] ?? '';
$str_group_allow = isset($_REQUEST['group_allow']) ? $aclFormatter->toString($_REQUEST['group_allow']) : $user['allow_gid'] ?? '';
$str_contact_deny = isset($_REQUEST['contact_deny']) ? $aclFormatter->toString($_REQUEST['contact_deny']) : $user['deny_cid'] ?? '';
$str_group_deny = isset($_REQUEST['group_deny']) ? $aclFormatter->toString($_REQUEST['group_deny']) : $user['deny_gid'] ?? '';
$visibility = $_REQUEST['visibility'] ?? '';
if ($visibility === 'public') {
// The ACL selector introduced in version 2019.12 sends ACL input data even when the Public visibility is selected
$str_contact_allow = $str_group_allow = $str_contact_deny = $str_group_deny = '';
} else if ($visibility === 'custom') {
// Since we know from the visibility parameter the item should be private, we have to prevent the empty ACL
// case that would make it public. So we always append the author's contact id to the allowed contacts.
// See https://github.com/friendica/friendica/issues/9672
$str_contact_allow .= $aclFormatter->toString(Contact::getPublicIdByUserId($uid));
}
$title = trim($_REQUEST['title'] ?? '');
$location = trim($_REQUEST['location'] ?? '');
$coord = trim($_REQUEST['coord'] ?? '');
$verb = trim($_REQUEST['verb'] ?? '');
$emailcc = trim($_REQUEST['emailcc'] ?? '');
$body = trim($body);
$network = trim(($_REQUEST['network'] ?? '') ?: Protocol::DFRN);
$guid = System::createUUID();
$postopts = $_REQUEST['postopts'] ?? '';
if (strlen($str_group_allow) || strlen($str_contact_allow) || strlen($str_group_deny) || strlen($str_contact_deny)) {
$private = Item::PRIVATE;
} elseif (DI::pConfig()->get($profile_uid, 'system', 'unlisted')) {
$private = Item::UNLISTED;
} else {
$private = Item::PUBLIC;
}
// If this is a comment, set the permissions from the parent.
if ($toplevel_item) {
// for non native networks use the network of the original post as network of the item
if (($toplevel_item['network'] != Protocol::DIASPORA)
&& ($toplevel_item['network'] != Protocol::OSTATUS)
&& ($network == '')) {
$network = $toplevel_item['network'];
}
$str_contact_allow = $toplevel_item['allow_cid'] ?? '';
$str_group_allow = $toplevel_item['allow_gid'] ?? '';
$str_contact_deny = $toplevel_item['deny_cid'] ?? '';
$str_group_deny = $toplevel_item['deny_gid'] ?? '';
$private = $toplevel_item['private'];
$wall = $toplevel_item['wall'];
}
$pubmail_enabled = ($_REQUEST['pubmail_enable'] ?? false) && !$private;
if (!strlen($body)) {
if ($preview) {
System::jsonExit(['preview' => '']);
}
DI::sysmsg()->addNotice(DI::l10n()->t('Empty post discarded.'));
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\BadRequestException(DI::l10n()->t('Empty post discarded.'));
}
}
if (!empty($categories)) {
// get the "fileas" tags for this post
$filedas = FileTag::fileToArray($categories);
}
$list_array = explode(',', trim($_REQUEST['category'] ?? ''));
$categories = FileTag::arrayToFile($list_array, 'category');
if (!empty($filedas) && is_array($filedas)) {
// append the fileas stuff to the new categories list
$categories .= FileTag::arrayToFile($filedas);
}
// get contact info for poster
$author = null;
$self = false;
$contact_id = 0;
if (DI::userSession()->getLocalUserId() && ((DI::userSession()->getLocalUserId() == $profile_uid) || $allow_comment)) {
$self = true;
$author = DBA::selectFirst('contact', [], ['uid' => DI::userSession()->getLocalUserId(), 'self' => true]);
} elseif (!empty(DI::userSession()->getRemoteContactID($profile_uid))) {
$author = DBA::selectFirst('contact', [], ['id' => DI::userSession()->getRemoteContactID($profile_uid)]);
}
if (DBA::isResult($author)) {
$contact_id = $author['id'];
}
// get contact info for owner
if ($profile_uid == DI::userSession()->getLocalUserId() || $allow_comment) {
$contact_record = $author ?: [];
} else {
$contact_record = DBA::selectFirst('contact', [], ['uid' => $profile_uid, 'self' => true]) ?: [];
}
// Personal notes must never be altered to a forum post.
if ($posttype != Item::PT_PERSONAL_NOTE) {
// Look for any tags and linkify them
$item = [
'uid' => DI::userSession()->getLocalUserId() ? DI::userSession()->getLocalUserId() : $profile_uid,
'gravity' => $toplevel_item_id ? Item::GRAVITY_COMMENT : Item::GRAVITY_PARENT,
'network' => $network,
'body' => $body,
'postopts' => $postopts,
'private' => $private,
'allow_cid' => $str_contact_allow,
'allow_gid' => $str_group_allow,
'deny_cid' => $str_contact_deny,
'deny_gid' => $str_group_deny,
];
$item = DI::contentItem()->expandTags($item);
$body = $item['body'];
$inform = $item['inform'];
$postopts = $item['postopts'];
$private = $item['private'];
$str_contact_allow = $item['allow_cid'];
$str_group_allow = $item['allow_gid'];
$str_contact_deny = $item['deny_cid'];
$str_group_deny = $item['deny_gid'];
} else {
$inform = '';
}
/*
* When a photo was uploaded into the message using the (profile wall) ajax
* uploader, The permissions are initially set to disallow anybody but the
* owner from seeing it. This is because the permissions may not yet have been
* set for the post. If it's private, the photo permissions should be set
* appropriately. But we didn't know the final permissions on the post until
* now. So now we'll look for links of uploaded messages that are in the
* post and set them to the same permissions as the post itself.
*/
$match = null;
if (!$preview && Photo::setPermissionFromBody($body, $uid, $contact_id, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny)) {
$objecttype = Activity\ObjectType::IMAGE;
}
/*
* Next link in any attachment references we find in the post.
*/
$match = [];
/// @todo these lines should be moved to Model/Attach (Once it exists)
if (!$preview && preg_match_all("/\[attachment\](.*?)\[\/attachment\]/", $body, $match)) {
$attaches = $match[1];
if (count($attaches)) {
foreach ($attaches as $attach) {
// Ensure to only modify attachments that you own
$srch = '<' . intval($contact_id) . '>';
$condition = [
'allow_cid' => $srch,
'allow_gid' => '',
'deny_cid' => '',
'deny_gid' => '',
'id' => $attach,
];
if (!Attach::exists($condition)) {
continue;
}
$fields = ['allow_cid' => $str_contact_allow, 'allow_gid' => $str_group_allow,
'deny_cid' => $str_contact_deny, 'deny_gid' => $str_group_deny];
$condition = ['id' => $attach];
Attach::update($fields, $condition);
}
}
}
// embedded bookmark or attachment in post? set bookmark flag
$data = BBCode::getAttachmentData($body);
$match = [];
if ((preg_match_all("/\[bookmark\=([^\]]*)\](.*?)\[\/bookmark\]/ism", $body, $match, PREG_SET_ORDER) || isset($data['type']))
&& ($posttype != Item::PT_PERSONAL_NOTE)) {
$posttype = Item::PT_PAGE;
$objecttype = Activity\ObjectType::BOOKMARK;
}
$body = DI::bbCodeVideo()->transform($body);
$body = BBCode::scaleExternalImages($body);
// Setting the object type if not defined before
if (!$objecttype) {
$objecttype = Activity\ObjectType::NOTE; // Default value
$objectdata = BBCode::getAttachedData($body);
if ($objectdata['type'] == 'link') {
$objecttype = Activity\ObjectType::BOOKMARK;
} elseif ($objectdata['type'] == 'video') {
$objecttype = Activity\ObjectType::VIDEO;
} elseif ($objectdata['type'] == 'photo') {
$objecttype = Activity\ObjectType::IMAGE;
}
}
$attachments = '';
$match = [];
if (preg_match_all('/(\[attachment\]([0-9]+)\[\/attachment\])/',$body,$match)) {
foreach ($match[2] as $mtch) {
$fields = ['id', 'filename', 'filesize', 'filetype'];
$attachment = Attach::selectFirst($fields, ['id' => $mtch]);
if ($attachment !== false) {
if (strlen($attachments)) {
$attachments .= ',';
}
$attachments .= Post\Media::getAttachElement(DI::baseUrl() . '/attach/' . $attachment['id'],
$attachment['filesize'], $attachment['filetype'], $attachment['filename'] ?? '');
}
$body = str_replace($match[1],'',$body);
}
}
if (!strlen($verb)) {
$verb = Activity::POST;
}
if ($network == '') {
$network = Protocol::DFRN;
}
$gravity = ($toplevel_item_id ? Item::GRAVITY_COMMENT : Item::GRAVITY_PARENT);
// even if the post arrived via API we are considering that it
// originated on this site by default for determining relayability.
// Don't use "defaults" here. It would turn 0 to 1
if (!isset($_REQUEST['origin'])) {
$origin = 1;
} else {
$origin = $_REQUEST['origin'];
}
$uri = Item::newURI($guid);
// Fallback so that we alway have a parent uri
if (!$thr_parent_uri || !$toplevel_item_id) {
$thr_parent_uri = $uri;
}
$datarray = [
'uid' => $profile_uid,
'wall' => $wall,
'gravity' => $gravity,
'network' => $network,
'contact-id' => $contact_id,
'owner-name' => $contact_record['name'] ?? '',
'owner-link' => $contact_record['url'] ?? '',
'owner-avatar' => $contact_record['thumb'] ?? '',
'author-name' => $author['name'],
'author-link' => $author['url'],
'author-avatar' => $author['thumb'],
'created' => empty($_REQUEST['created_at']) ? DateTimeFormat::utcNow() : $_REQUEST['created_at'],
'received' => DateTimeFormat::utcNow(),
'extid' => $extid,
'guid' => $guid,
'uri' => $uri,
'title' => $title,
'body' => $body,
'app' => $app,
'location' => $location,
'coord' => $coord,
'file' => $categories,
'inform' => $inform,
'verb' => $verb,
'post-type' => $posttype,
'object-type' => $objecttype,
'allow_cid' => $str_contact_allow,
'allow_gid' => $str_group_allow,
'deny_cid' => $str_contact_deny,
'deny_gid' => $str_group_deny,
'private' => $private,
'pubmail' => $pubmail_enabled,
'attach' => $attachments,
'thr-parent' => $thr_parent_uri,
'postopts' => $postopts,
'origin' => $origin,
'object' => $object,
'attachments' => $_REQUEST['attachments'] ?? [],
/*
* These fields are for the convenience of addons...
* 'self' if true indicates the owner is posting on their own wall
* If parent is 0 it is a top-level post.
*/
'parent' => $toplevel_item_id,
'self' => $self,
// This triggers posts via API and the mirror functions
'api_source' => false,
// This field is for storing the raw conversation data
'protocol' => Conversation::PARCEL_DIRECT,
'direction' => Conversation::PUSH,
];
// These cannot be part of above initialization ...
$datarray['edited'] = $datarray['created'];
$datarray['commented'] = $datarray['created'];
$datarray['changed'] = $datarray['created'];
$datarray['owner-id'] = Contact::getIdForURL($datarray['owner-link']);
$datarray['author-id'] = Contact::getIdForURL($datarray['author-link']);
$datarray['edit'] = $orig_post;
// Check for hashtags in the body and repair or add hashtag links
if ($preview || $orig_post) {
$datarray['body'] = Item::setHashtags($datarray['body']);
}
// preview mode - prepare the body for display and send it via json
if ($preview) {
// We set the datarray ID to -1 because in preview mode the dataray
// doesn't have an ID.
$datarray['id'] = -1;
$datarray['uri-id'] = -1;
$datarray['author-network'] = Protocol::DFRN;
$datarray['author-updated'] = '';
$datarray['author-gsid'] = 0;
$datarray['author-uri-id'] = ItemURI::getIdByURI($datarray['author-link']);
$datarray['owner-updated'] = '';
$datarray['has-media'] = false;
$datarray['quote-uri-id'] = Item::getQuoteUriId($datarray['body'], $datarray['uid']);
$datarray['body'] = BBCode::removeSharedData($datarray['body']);
$o = DI::conversation()->create([array_merge($contact_record, $datarray)], 'search', false, true);
System::jsonExit(['preview' => $o]);
}
Hook::callAll('post_local',$datarray);
if (!empty($_REQUEST['scheduled_at'])) {
$scheduled_at = DateTimeFormat::convert($_REQUEST['scheduled_at'], 'UTC', $a->getTimeZone());
if ($scheduled_at > DateTimeFormat::utcNow()) {
unset($datarray['created']);
unset($datarray['edited']);
unset($datarray['commented']);
unset($datarray['received']);
unset($datarray['changed']);
unset($datarray['edit']);
unset($datarray['self']);
unset($datarray['api_source']);
Post\Delayed::add($datarray['uri'], $datarray, Worker::PRIORITY_HIGH, Post\Delayed::PREPARED_NO_HOOK, $scheduled_at);
item_post_return(DI::baseUrl(), $return_path);
}
}
if (!empty($datarray['cancel'])) {
Logger::info('mod_item: post cancelled by addon.');
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
$json = ['cancel' => 1];
if (!empty($_REQUEST['jsreload'])) {
$json['reload'] = DI::baseUrl() . '/' . $_REQUEST['jsreload'];
}
System::jsonExit($json);
}
$datarray['uri-id'] = ItemURI::getIdByURI($datarray['uri']);
$quote_uri_id = Item::getQuoteUriId($datarray['body'], $datarray['uid']);
if (!empty($quote_uri_id)) {
$datarray['quote-uri-id'] = $quote_uri_id;
$datarray['body'] = BBCode::removeSharedData($datarray['body']);
}
if ($orig_post) {
$fields = [
'title' => $datarray['title'],
'body' => $datarray['body'],
'attach' => $datarray['attach'],
'file' => $datarray['file'],
'edited' => DateTimeFormat::utcNow(),
'changed' => DateTimeFormat::utcNow()
];
Item::update($fields, ['id' => $post_id]);
Item::updateDisplayCache($datarray['uri-id']);
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\OKException(DI::l10n()->t('Post updated.'));
}
unset($datarray['edit']);
unset($datarray['self']);
unset($datarray['api_source']);
$post_id = Item::insert($datarray);
$post = item_process($post, $request, $preview, $return_path);
$post_id = Item::insert($post);
if (!$post_id) {
DI::sysmsg()->addNotice(DI::l10n()->t('Item wasn\'t stored.'));
if ($return_path) {
DI::sysmsg()->addNotice(DI::l10n()->t('Item wasn\'t stored.'));
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\InternalServerErrorException(DI::l10n()->t('Item wasn\'t stored.'));
}
$datarray = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $post_id]);
if (!DBA::isResult($datarray)) {
$post = Post::selectFirst(Item::ITEM_FIELDLIST, ['id' => $post_id]);
if (!$post) {
Logger::error('Item couldn\'t be fetched.', ['post_id' => $post_id]);
if ($return_path) {
DI::baseUrl()->redirect($return_path);
@ -699,52 +217,9 @@ function item_post(App $a) {
throw new HTTPException\InternalServerErrorException(DI::l10n()->t('Item couldn\'t be fetched.'));
}
Tag::storeFromBody($datarray['uri-id'], $datarray['body']);
$recipients = explode(',', $request['emailcc'] ?? '');
if (!\Friendica\Content\Feature::isEnabled($uid, 'explicit_mentions') && ($datarray['gravity'] == Item::GRAVITY_COMMENT)) {
Tag::createImplicitMentions($datarray['uri-id'], $datarray['thr-parent-id']);
}
// These notifications are sent if someone else is commenting other your wall
if ($contact_record != $author) {
if ($toplevel_item_id) {
DI::notify()->createFromArray([
'type' => Notification\Type::COMMENT,
'otype' => Notification\ObjectType::ITEM,
'verb' => Activity::POST,
'uid' => $profile_uid,
'cid' => $datarray['author-id'],
'item' => $datarray,
'link' => DI::baseUrl() . '/display/' . urlencode($datarray['guid']),
]);
} elseif (empty($forum_contact)) {
DI::notify()->createFromArray([
'type' => Notification\Type::WALL,
'otype' => Notification\ObjectType::ITEM,
'verb' => Activity::POST,
'uid' => $profile_uid,
'cid' => $datarray['author-id'],
'item' => $datarray,
'link' => DI::baseUrl() . '/display/' . urlencode($datarray['guid']),
]);
}
}
Hook::callAll('post_local_end', $datarray);
if (strlen($emailcc) && $profile_uid == DI::userSession()->getLocalUserId()) {
$recipients = explode(',', $emailcc);
if (count($recipients)) {
foreach ($recipients as $recipient) {
$address = trim($recipient);
if (!strlen($address)) {
continue;
}
DI::emailer()->send(new ItemCCEMail(DI::app(), DI::l10n(), DI::baseUrl(),
$datarray, $address, $author['thumb'] ?? ''));
}
}
}
DI::contentItem()->postProcessPost($post, $recipients);
Logger::debug('post_complete');
@ -752,6 +227,95 @@ function item_post(App $a) {
// NOTREACHED
}
function item_process(array $post, array $request, bool $preview, string $return_path): array
{
$post['self'] = true;
$post['api_source'] = false;
$post['attach'] = '';
$post['title'] = trim($request['title'] ?? '');
$post['body'] = $request['body'] ?? '';
$post['location'] = trim($request['location'] ?? '');
$post['coord'] = trim($request['coord'] ?? '');
$post = DI::contentItem()->addCategories($post, $request['category'] ?? '');
// Add the attachment to the body.
if (!empty($request['has_attachment'])) {
$post['body'] .= DI::contentItem()->storeAttachmentFromRequest($request);
}
$post = DI::contentItem()->finalizePost($post);
if (!strlen($post['body'])) {
if ($preview) {
System::jsonExit(['preview' => '']);
}
if ($return_path) {
DI::sysmsg()->addNotice(DI::l10n()->t('Empty post discarded.'));
DI::baseUrl()->redirect($return_path);
}
throw new HTTPException\BadRequestException(DI::l10n()->t('Empty post discarded.'));
}
// preview mode - prepare the body for display and send it via json
if ($preview) {
// We have to preset some fields, so that the conversation can be displayed
$post['id'] = -1;
$post['uri-id'] = -1;
$post['author-network'] = Protocol::DFRN;
$post['author-updated'] = '';
$post['author-gsid'] = 0;
$post['author-uri-id'] = ItemURI::getIdByURI($post['author-link']);
$post['owner-updated'] = '';
$post['has-media'] = false;
$post['quote-uri-id'] = Item::getQuoteUriId($post['body'], $post['uid']);
$post['body'] = BBCode::removeSharedData(Item::setHashtags($post['body']));
$post['writable'] = true;
$o = DI::conversation()->create([$post], Conversation::MODE_SEARCH, false, true);
System::jsonExit(['preview' => $o]);
}
Hook::callAll('post_local',$post);
unset($post['edit']);
unset($post['self']);
unset($post['api_source']);
if (!empty($request['scheduled_at'])) {
$scheduled_at = DateTimeFormat::convert($request['scheduled_at'], 'UTC', DI::app()->getTimeZone());
if ($scheduled_at > DateTimeFormat::utcNow()) {
unset($post['created']);
unset($post['edited']);
unset($post['commented']);
unset($post['received']);
unset($post['changed']);
Post\Delayed::add($post['uri'], $post, Worker::PRIORITY_HIGH, Post\Delayed::PREPARED_NO_HOOK, $scheduled_at);
item_post_return(DI::baseUrl(), $return_path);
}
}
if (!empty($post['cancel'])) {
Logger::info('mod_item: post cancelled by addon.');
if ($return_path) {
DI::baseUrl()->redirect($return_path);
}
$json = ['cancel' => 1];
if (!empty($request['jsreload'])) {
$json['reload'] = DI::baseUrl() . '/' . $request['jsreload'];
}
System::jsonExit($json);
}
return $post;
}
function item_post_return($baseurl, $return_path)
{
if ($return_path) {
@ -804,6 +368,38 @@ function item_content(App $a)
Contact\User::setBlocked($item['author-id'], DI::userSession()->getLocalUserId(), true);
if (DI::mode()->isAjax()) {
// ajax return: [<item id>, 0 (no perm) | <owner id>]
System::jsonExit([intval($args->get(2)), DI::userSession()->getLocalUserId()]);
} else {
item_redirect_after_action($item, $args->get(3));
}
break;
case 'ignore':
$item = Post::selectFirstForUser(DI::userSession()->getLocalUserId(), ['guid', 'author-id', 'parent', 'gravity'], ['id' => $args->get(2)]);
if (empty($item['author-id'])) {
throw new HTTPException\NotFoundException('Item not found');
}
Contact\User::setIgnored($item['author-id'], DI::userSession()->getLocalUserId(), true);
if (DI::mode()->isAjax()) {
// ajax return: [<item id>, 0 (no perm) | <owner id>]
System::jsonExit([intval($args->get(2)), DI::userSession()->getLocalUserId()]);
} else {
item_redirect_after_action($item, $args->get(3));
}
break;
case 'collapse':
$item = Post::selectFirstForUser(DI::userSession()->getLocalUserId(), ['guid', 'author-id', 'parent', 'gravity'], ['id' => $args->get(2)]);
if (empty($item['author-id'])) {
throw new HTTPException\NotFoundException('Item not found');
}
Contact\User::setCollapsed($item['author-id'], DI::userSession()->getLocalUserId(), true);
if (DI::mode()->isAjax()) {
// ajax return: [<item id>, 0 (no perm) | <owner id>]
System::jsonExit([intval($args->get(2)), DI::userSession()->getLocalUserId()]);

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -54,12 +54,10 @@ function message_init(App $a)
'$tabs' => $tabs,
'$new' => $new,
]);
$base = DI::baseUrl();
$head_tpl = Renderer::getMarkupTemplate('message-head.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($head_tpl, [
'$baseurl' => DI::baseUrl()->get(true),
'$base' => $base
'$base' => (string)DI::baseUrl()
]);
}
@ -70,12 +68,13 @@ function message_post(App $a)
return;
}
$sender_id = DI::userSession()->getLocalUserId();
$replyto = !empty($_REQUEST['replyto']) ? trim($_REQUEST['replyto']) : '';
$subject = !empty($_REQUEST['subject']) ? trim($_REQUEST['subject']) : '';
$body = !empty($_REQUEST['body']) ? Strings::escapeHtml(trim($_REQUEST['body'])) : '';
$recipient = !empty($_REQUEST['recipient']) ? intval($_REQUEST['recipient']) : 0;
$ret = Mail::send($recipient, $body, $subject, $replyto);
$ret = Mail::send($sender_id, $recipient, $body, $subject, $replyto);
$norecip = false;
switch ($ret) {
@ -178,7 +177,6 @@ function message_content(App $a)
$tpl = Renderer::getMarkupTemplate('msg-header.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
'$baseurl' => DI::baseUrl()->get(true),
'$nickname' => $a->getLoggedInUserNickname(),
'$linkurl' => DI::l10n()->t('Please enter a link URL:')
]);
@ -284,7 +282,6 @@ function message_content(App $a)
$tpl = Renderer::getMarkupTemplate('msg-header.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
'$baseurl' => DI::baseUrl()->get(true),
'$nickname' => $a->getLoggedInUserNickname(),
'$linkurl' => DI::l10n()->t('Please enter a link URL:')
]);
@ -438,7 +435,7 @@ function render_messages(array $msg, string $t): string
$to_name_e = $rr['name'];
if (is_null($rr['url'])) {
// contact-id is pointing to a non existing contact
// contact-id is pointing to a nonexistent contact
continue;
}

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -20,6 +20,7 @@
*/
use Friendica\App;
use Friendica\Content\Conversation;
use Friendica\Content\Nav;
use Friendica\Content\Pager;
use Friendica\Database\DBA;
@ -84,7 +85,7 @@ function notes_content(App $a, bool $update = false)
$count = count($notes);
$o .= DI::conversation()->create($notes, 'notes', $update);
$o .= DI::conversation()->create($notes, Conversation::MODE_NOTES, $update);
}
$o .= $pager->renderMinimal($count);

View File

@ -1,128 +0,0 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
use Friendica\App;
use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\System;
use Friendica\DI;
use Friendica\Module\Response;
use Friendica\Module\Security\Login;
use Friendica\Util\XML;
function oexchange_init(App $a)
{
if ((DI::args()->getArgc() <= 1) || (DI::args()->getArgv()[1] != 'xrd')) {
return;
}
$baseURL = DI::baseUrl()->get();
$xml = null;
XML::fromArray([
'XRD' => [
'@attributes' => [
'xmlns' => 'http://docs.oasis-open.org/ns/xri/xrd-1.0',
],
'Subject' => $baseURL,
'1:Property' => [
'@attributes' => [
'type' => 'http://www.oexchange.org/spec/0.8/prop/vendor',
],
'Friendica'
],
'2:Property' => [
'@attributes' => [
'type' => 'http://www.oexchange.org/spec/0.8/prop/title',
],
'Friendica Social Network'
],
'3:Property' => [
'@attributes' => [
'type' => 'http://www.oexchange.org/spec/0.8/prop/name',
],
'Friendica'
],
'4:Property' => [
'@attributes' => [
'type' => 'http://www.oexchange.org/spec/0.8/prop/prompt',
],
'Send to Friendica'
],
'1:link' => [
'@attributes' => [
'rel' => 'icon',
'type' => 'image/png',
'href' => $baseURL . '/images/friendica-16.png'
]
],
'2:link' => [
'@attributes' => [
'rel' => 'icon32',
'type' => 'image/png',
'href' => $baseURL . '/images/friendica-32.png'
]
],
'3:link' => [
'@attributes' => [
'rel' => 'http://www.oexchange.org/spec/0.8/rel/offer',
'type' => 'text/html',
'href' => $baseURL . '/oexchange'
]
],
],
], $xml);
System::httpExit($xml->saveXML(), Response::TYPE_XML, 'application/xrd+xml');
}
function oexchange_content(App $a)
{
if (!DI::userSession()->getLocalUserId()) {
$o = Login::form();
return $o;
}
if ((DI::args()->getArgc() > 1) && DI::args()->getArgv()[1] === 'done') {
return;
}
$url = !empty($_REQUEST['url']) ? trim($_REQUEST['url']) : '';
$title = !empty($_REQUEST['title']) ? trim($_REQUEST['title']) : '';
$description = !empty($_REQUEST['description']) ? trim($_REQUEST['description']) : '';
$tags = !empty($_REQUEST['tags']) ? trim($_REQUEST['tags']) : '';
$s = BBCode::embedURL($url, true, $title, $description, $tags);
if (!strlen($s)) {
return;
}
$post = [];
$post['return'] = '/oexchange/done';
$post['body'] = HTML::toBBCode($s);
$_REQUEST = $post;
require_once 'mod/item.php';
item_post($a);
}

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -31,6 +31,7 @@ use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Database\DBA;
use Friendica\Database\DBStructure;
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Item;
@ -61,7 +62,7 @@ function photos_init(App $a)
Nav::setSelected('home');
if (DI::args()->getArgc() > 1) {
$owner = User::getOwnerDataByNick(DI::args()->getArgv()[1]);
$owner = Profile::load(DI::app(), DI::args()->getArgv()[1], false);
if (!isset($owner['account_removed']) || $owner['account_removed']) {
throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.'));
}
@ -110,12 +111,6 @@ function photos_init(App $a)
]);
}
if (empty(DI::page()['aside'])) {
DI::page()['aside'] = '';
}
DI::page()['aside'] .= Widget\VCard::getHTML($owner);
if (!empty($photo_albums_widget)) {
DI::page()['aside'] .= $photo_albums_widget;
}
@ -380,9 +375,7 @@ function photos_post(App $a)
$arr['visible'] = 0;
$arr['origin'] = 1;
$arr['body'] = '[url=' . DI::baseUrl() . '/photos/' . $user['nickname'] . '/image/' . $photo['resource-id'] . ']'
. '[img]' . DI::baseUrl() . '/photo/' . $photo['resource-id'] . '-' . $photo['scale'] . '.'. $ext . '[/img]'
. '[/url]';
$arr['body'] = Images::getBBCodeByResource($photo['resource-id'], $user['nickname'], $photo['scale'], $ext);
$item_id = Item::insert($arr);
}
@ -719,7 +712,7 @@ function photos_content(App $a)
// When PHP is configured with upload_max_filesize less than maximagesize provide this lower limit.
$maximagesize_bytes = (is_numeric($mis_bytes) && ($mis_bytes < $umf_bytes) ? $mis_bytes : $umf_bytes);
// @todo We may be want to use appropriate binary prefixed dynamicly
// @todo We may be want to use appropriate binary prefixed dynamically
$usage_message = DI::l10n()->t('The maximum accepted image size is %s', Strings::formatBytes($maximagesize_bytes));
$tpl = Renderer::getMarkupTemplate('photos_upload.tpl');
@ -923,7 +916,7 @@ function photos_content(App $a)
if ($order_field === 'created') {
$params = ['order' => [$order_field]];
} elseif (!empty($order_field)) {
} elseif (!empty($order_field) && DBStructure::existsColumn('photo', [$order_field])) {
$params = ['order' => [$order_field => true]];
} else {
$params = [];
@ -936,11 +929,17 @@ function photos_content(App $a)
$nxt = null;
foreach ($prvnxt as $z => $entry) {
if ($entry['resource-id'] == $ph[0]['resource-id']) {
$prv = $z - 1;
$nxt = $z + 1;
$prv = $order_field === 'created' ? $z - 1 : $z + 1;
$nxt = $order_field === 'created' ? $z + 1 : $z - 1;
if ($prv < 0) {
$prv = count($prvnxt) - 1;
}
if ($nxt < 0) {
$nxt = count($prvnxt) - 1;
}
if ($prv >= count($prvnxt)) {
$prv = 0;
}
if ($nxt >= count($prvnxt)) {
$nxt = 0;
}
@ -1138,7 +1137,7 @@ function photos_content(App $a)
'$preview' => DI::l10n()->t('Preview'),
'$loading' => DI::l10n()->t('Loading...'),
'$qcomment' => $qcomment,
'$rand_num' => Crypto::randomDigits(12)
'$rand_num' => Crypto::randomDigits(12),
]);
}
}
@ -1193,7 +1192,7 @@ function photos_content(App $a)
'$submit' => DI::l10n()->t('Submit'),
'$preview' => DI::l10n()->t('Preview'),
'$qcomment' => $qcomment,
'$rand_num' => Crypto::randomDigits(12)
'$rand_num' => Crypto::randomDigits(12),
]);
}
@ -1267,7 +1266,7 @@ function photos_content(App $a)
'$submit' => DI::l10n()->t('Submit'),
'$preview' => DI::l10n()->t('Preview'),
'$qcomment' => $qcomment,
'$rand_num' => Crypto::randomDigits(12)
'$rand_num' => Crypto::randomDigits(12),
]);
}
}

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
@ -30,7 +30,7 @@ use Friendica\Model\Contact;
function update_contact_content(App $a)
{
if (!empty(DI::args()->get(1)) && (!empty($_GET['force']) || !DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'system', 'no_auto_update'))) {
if (!empty(DI::args()->get(1)) && !empty($_GET['force'])) {
$contact = Contact::getById(DI::args()->get(1), ['id', 'deleted']);
if (DBA::isResult($contact) && empty($contact['deleted'])) {
DI::page()['aside'] = '';

View File

@ -1,6 +1,6 @@
<?php
/**
* @copyright Copyright (C) 2010-2022, the Friendica project
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*

View File

@ -4,12 +4,12 @@ Friendica mods files
## `bookmarklet-share2friendica`
Browser bookmarklet to share any page with your Friendica account.
Please see `bookmarklet-share2friendica/README.md` for detailed instruction.
Please see `bookmarklet-share2friendica/README.md` for detailed instruction.
## `fpostit`
Node-agnostic Friendica bookmarklet by Devlon Duthie.
Unmaintained and unsupported.
Unmaintained and unsupported.
## `home.css` and `home.html`
@ -30,7 +30,11 @@ Please check software documentation to know how modify these examples to make th
## `sample-systemd.timer` and `sample-systemd.service`
Sample systemd unit files to start worker.php periodically.
Please place them in the correct location for your system, typically this is `/etc/systemd/system/friendicaworker.timer` and `/etc/systemd/system/friendicaworker.service`.
Please report problems and improvements to `!helpers@forum.friendi.ca` and `@utzer@social.yl.ms` or open an issue in [the Github Friendica page](https://github.com/friendica/friendica/issues).
Please report problems and improvements to `!helpers@forum.friendi.ca` and `@utzer@social.yl.ms` or open an issue in [the GitHub Friendica page](https://github.com/friendica/friendica/issues).
This is for usage of systemd instead of cron to start the worker periodically, the solution is a work-in-progress and can surely be improved.
## `phpstorm-code-style.xml`
PHP Storm Code Style settings, used for this codebase

View File

@ -1,12 +1,12 @@
# Bookmarklet-share2friendica
Javascript bookmarklet to share websites with your friendica account
JavaScript bookmarklet to share websites with your friendica account
## Getting Started
### Installing
Open the file bookmarklet-share2friendica.js and change 'YourFriendicaDoomain.tld" with your friendica domain
Open the file bookmarklet-share2friendica.js and change 'YourFriendicaDomain.tld" with your friendica domain
If you friendica is at https://myfriend.myfami.ly/ , the original ...
```javascript
@ -20,7 +20,7 @@ javascript:(function(){f='https://myfriend.myfami.ly/bookmarklet/?url='+encodeUR
*Please copy the whole script, not only the part mentioned here!*
Then create a new bookmark, give it a name like "share2Friendica" and paste the script in the address field. Save it. Now you can click on that bookmarklet every time you want to share a website, you are currently reading. A new small window will open where title is prefilled and the website you want to share is put as attachement in the body of the new post.
Then create a new bookmark, give it a name like "share2Friendica" and paste the script in the address field. Save it. Now you can click on that bookmarklet every time you want to share a website, you are currently reading. A new small window will open where title is prefilled and the website you want to share is put as attachment in the body of the new post.
## Additional notes if it doesn't work

Some files were not shown because too many files have changed in this diff Show More