Compare commits

...

693 commits

Author SHA1 Message Date
Hypolite Petovan 2b8126b780
Merge pull request #13805 from toddy15/develop
Enable HTML attributes in all form fields.
2024-01-06 11:13:54 -05:00
Dr. Tobias Quathamer 26f4532d47 Enable HTML attributes in all form fields.
Closes #13804
2024-01-06 16:28:48 +01:00
Hypolite Petovan 16b12e1545
Merge pull request #13800 from annando/channel-languages
User defined channels can now have got individual language definitions
2024-01-03 18:48:51 -05:00
Michael 4e1263c1f8 Fixed indentation 2024-01-03 19:22:53 +00:00
Michael 93dd1b5973 Updated messages.po / database.sql 2024-01-03 19:20:56 +00:00
Michael 31b88da9d5 Merge remote-tracking branch 'upstream/develop' into channel-languages 2024-01-03 19:17:58 +00:00
Michael da3d390187 User defined channels can now have got individual language definitions 2024-01-03 19:17:14 +00:00
Hypolite Petovan 67a9f6269e
Merge pull request #13799 from foss-/patch-12
Update README.md: fixing links for mobile screenshots
2024-01-03 10:13:05 -05:00
foss- bc67be2b91
Update README.md: fixing links for mobile screenshots 2024-01-03 16:08:18 +01:00
Hypolite Petovan 4132e7a468
Merge pull request #13798 from annando/unkmail2
The "unkmail" functionality is removed
2024-01-03 10:02:31 -05:00
Hypolite Petovan 25fecc1945
Merge pull request #13785 from foss-/patch-11
Update README.md
2024-01-03 09:59:01 -05:00
Hypolite Petovan a077418af0 Fix formatting and wording in README 2024-01-03 09:58:20 -05:00
Hypolite Petovan 2e81803a52 Fix absolute image paths in README 2024-01-03 09:56:11 -05:00
Hypolite Petovan fe39ead790 Update README screenshot 2024-01-03 09:55:51 -05:00
Michael Vogel d385296e0d
Merge pull request #13797 from tobiasd/20240103-lang
DE, FR, RO translation updates
2024-01-03 11:44:49 +01:00
Michael 7ecf143e4c The "unkmail" functionality is removed 2024-01-03 10:23:11 +00:00
Tobias Diekershoff ffad9c523b DE, FR, RO translation updates 2024-01-03 10:39:42 +01:00
Hypolite Petovan 21b16ef822
Merge pull request #13795 from annando/copyright
Friendica copyright changed from 2023 to 2034
2024-01-02 21:28:02 -05:00
Hypolite Petovan 80103bef38
Merge pull request #13794 from annando/simplified-group-display
There is now a single way to display group postings
2024-01-02 21:27:31 -05:00
Hypolite Petovan 6c023f832b
Merge pull request #13796 from annando/discoverable
Don't set a profile to "discoverable" for restricted hosts
2024-01-02 21:25:17 -05:00
Michael 73df36ca72 Don't set a profile to "discoverable" for restricted hosts 2024-01-03 00:55:21 +00:00
Michael 523247f0fe Updated messages.po 2024-01-02 20:59:23 +00:00
Michael 89e7420237 Friendica copyright changed from 2023 to 2034 2024-01-02 20:57:26 +00:00
Michael 16d0d17169 There is now a single way to display group postings 2024-01-02 20:45:02 +00:00
Michael Vogel 9592292dba
Improved server detection / new servers added to federation statistics (#13793)
* Improved server detection / new servers added to federation statistics

* Fix wrong color code
2024-01-02 20:12:37 +01:00
Michael Vogel bf80001c80
Fixed detection for empty server data in apcontact (#13791) 2024-01-02 14:56:08 +01:00
hoergen 4e7f0f9f04
added jit and preload explanation in comment
added information to identify which parameter causes which result
2024-01-01 18:01:22 +01:00
foss- 85eb09806f
Update README.md
- updated main screenshot (changed post action icons, text no longer shown)
- fixed path for mobile screenshots
- removed vier screenshot (it as not seen any development for ages, is not the default and thus not representative or needed for a first impression)
- tweaked humane tech mention text
2023-12-31 14:51:14 +01:00
Michael Vogel 8fc96477e7
Use the post-counts table to display content (#13781)
* Use the post-counts table to display content

* Use verb instead of vid

* Use verb

* Update counter on delete
2023-12-31 12:50:07 +01:00
Michael Vogel 0c68a53e1e
Remove 'blocklist' pconfig functionality (#13780)
* Cache blocklist

* Remove 'blocklist' pconfig functionality

* The blocklist variable isn't used anymore
2023-12-30 00:51:41 +01:00
Michael Vogel ad1389b20a
Transmitting events to Diaspora does work again (#13777) 2023-12-30 00:43:14 +01:00
Michael Vogel 1564c297bb
Cache blocklist (#13779) 2023-12-30 00:27:57 +01:00
Hypolite Petovan 5b516b1dbb
Merge pull request #13778 from annando/post-counts
New table "post-counts" to precalculate the counts
2023-12-28 13:13:44 -05:00
Michael e88cd16644 Code standards 2023-12-28 17:50:11 +00:00
Michael 40a1263066 New table "post-counts" to precalculate the counts 2023-12-28 17:42:39 +00:00
Hypolite Petovan 2588ac1a16
Merge pull request #13774 from annando/no-blubb
Unneeded logging removed
2023-12-28 12:06:09 -05:00
Hypolite Petovan 8d4a16a71c
Merge pull request #13773 from annando/user-self
"User::" is changed to "self::"
2023-12-28 12:05:31 -05:00
Michael ba760bb340 Unneeded logging removed 2023-12-28 10:25:22 +00:00
Michael 86a27b51ad "User::" is changed to "self::" 2023-12-28 10:23:01 +00:00
Hypolite Petovan ac1ebac112
Merge pull request #13771 from Raroun/fix_for_issue_#13710_frio]_Long_handles_prevent_a_clean_display_of_common_contacts
Fix for issue #13710 - [frio] long handles prevent a clean display of common contacts
2023-12-26 19:17:15 -05:00
Hypolite Petovan f4fddb2921
Merge pull request #13770 from annando/restrict-for-ignored
Restrict the access for servers that the user ignored
2023-12-26 19:11:34 -05:00
Raroun b26a5ce0fa
Update style.css
Added missing space
2023-12-26 19:41:37 +01:00
Raroun 6c1df6471a
Update style.css
Added missing spaces
2023-12-26 19:40:44 +01:00
Raroun 53c7da87a6
removed unnecessary empty line 2023-12-26 16:53:34 +01:00
Raroun a609e545b6
Update remote_friends_common.tpl
Addes collapsable remote friends in common for frio and vier
2023-12-26 16:43:23 +01:00
Raroun 4e3302ea0d
Update style.css
Addes remote friends in common wrapper
2023-12-26 16:42:07 +01:00
Raroun 4faa43766d
Added collapsable support for remote friends in common in vier theme 2023-12-26 16:39:08 +01:00
Raroun bfc11495f3
Update style.css
Adjusted the BGcolor as suggested by Annando
2023-12-26 14:13:02 +01:00
Raroun 46d34c53e6
Update style.css - removed unnecessary empty line 2023-12-26 10:04:24 +01:00
Raroun 2bb5785dfa
Update style.css
addes missing empty lines
2023-12-26 09:53:12 +01:00
Raroun cc5711b2df
Update remote_friends_common.tpl
moved rfic-desc to top, tested on vier, frio and both mobile views
2023-12-26 09:48:57 +01:00
Raroun 243bcba726
Update style.css to display remote friends in common in a css grid 2023-12-26 09:46:33 +01:00
Michael cb816bde66 Restrict the access for servers that the user ignored 2023-12-26 08:32:17 +00:00
Hypolite Petovan 04cdd3e8ec
Fix Smarty reference to version constant after it was moved to App class (#13769) 2023-12-25 19:26:19 +01:00
Michael Vogel f23ecaff6a
Posts per author/server on the community pages (#13764)
* Posts per author/server on the community pages

* Updated database.sql
2023-12-25 12:39:15 +01:00
Tobias Diekershoff d2feade9cf new CHANGELOG for 2024.03 2023-12-24 16:15:01 +01:00
Tobias Diekershoff 9b62ba6dfe bump version 2024.03-dev 2023-12-24 15:57:10 +01:00
Tobias Diekershoff d4a5a8051a bump version 2023.12 2023-12-24 15:52:17 +01:00
Tobias Diekershoff b6e52849ca
CHANGELOG for 2023.12 (#13746)
* CHANGELOG for 2023.12

* move items to correct release

* removed note

* addedn changes in the addons

* updates to the CHANGELOG

* update closed issue listing

* updated CHANGELOG

* updated CHANGELOG
2023-12-24 15:42:16 +01:00
Tobias Diekershoff 6a9cea4e78
Merge pull request #13759 from tobiasd/2023.12-credits
updated the credits
2023-12-24 12:09:46 +01:00
Tobias Diekershoff 1d5eda8d25 updated the credits 2023-12-24 12:06:06 +01:00
Hypolite Petovan 1f9536694c
Merge pull request #13754 from xundeenergie/quote-button
Change reshare to quote icon for quote-button
2023-12-23 11:39:05 -05:00
Michael Vogel 6bad4754e2
Merge pull request #13758 from Raroun/frio_More_space_between_photo_permissions_and_send_button
[frio] More space between photo permissions and send button
2023-12-23 06:48:33 +01:00
Raroun 9d4a515571
Update style.css
Added 15 pixels of space between picture permissions and send button
2023-12-23 05:39:51 +01:00
Hypolite Petovan 82ab0c8504
Merge pull request #13757 from annando/warning
Fix warning
2023-12-22 20:30:36 -05:00
Michael 5b169c908b Fix warning 2023-12-22 23:51:30 +00:00
Hypolite Petovan 2d73a4bc58
Merge pull request #13756 from annando/limited-servers
Fix for profile limitation / configurable list of limited servers
2023-12-22 12:25:57 -05:00
Michael e38a699324 Fix for profile limitation / configurable list of limited servers 2023-12-22 17:16:10 +00:00
Jakobus Schürz 0426dacfad Change reshare to quote icon for quote-button
It is confusing that in desktop-view the quote-button has a forward-icon
and in smartphone-view the forward-icon opens a menu with reshare and
quote-option.

I always clicked wrong in desktop in case of this confusing solution.

So i changed the icon for the quote-share option to quotation-marks in
desktop- and smartphone-view.
The forward-icon for the menu is unchanged.
2023-12-22 08:39:42 +01:00
Hypolite Petovan a0f6f2e73e
Merge pull request #13752 from annando/capabilities
Store Pixelfed's capabilities
2023-12-21 11:20:36 -05:00
Hypolite Petovan bb2eda5c28
Merge pull request #13753 from Raroun/fix_for_Issue_#13748_frio]_Increase_spacing_between_icon_and_text_in_More_menu
[frio] fix for Issue #13748
2023-12-21 07:46:41 -05:00
Michael d1a28b4c20 Merge remote-tracking branch 'upstream/2023.09-rc' into capabilities 2023-12-21 10:41:58 +00:00
Michael b4a380e9de Handle "commentsEnabled" 2023-12-21 10:26:34 +00:00
Raroun d7c757d63e
Update wall_thread.tpl
Addes a bit more space between the icons and the text in the more menu on dektop and mobile
2023-12-21 08:06:59 +01:00
Michael 1b13c76d2e Simplyfied code 2023-12-21 05:01:24 +00:00
Hypolite Petovan 1cc76937d7
Merge pull request #13751 from annando/fix-capitalisation
Fix class name capitalisation
2023-12-20 19:48:06 -05:00
Michael da65f0bea7 Store Pixelfed's capabilities 2023-12-21 00:33:42 +00:00
Michael a86cd93fb8 Fix class name capitalisation 2023-12-20 19:55:34 +00:00
Michael Vogel e15e17732d
Merge pull request #13749 from MrPetovan/bug/fatal-errors
Also catch TypeError exceptions in Repository\PostMedia
2023-12-20 19:09:08 +01:00
Hypolite Petovan 9024fc1226 Also catch TypeError exceptions in Repository\PostMedia
- Address "Uncaught Exception TypeError: "Friendica\Content\Post\Entity\PostMedia::__construct(): Argument #2 ($url) must be of type Psr\Http\Message\UriInterface, null given"
2023-12-20 09:50:49 -05:00
Hypolite Petovan 8fbcdd371e
Merge pull request #13742 from annando/edit-tags
Fix lost local tags upon update
2023-12-20 08:38:08 -05:00
Michael fbcfa46beb Fix lost local tags upon update 2023-12-19 15:28:20 +00:00
Michael Vogel 6f1fcc9357
Merge pull request #13739 from MrPetovan/task/composer
Update Composer dependencies ahead of release
2023-12-19 07:57:41 +01:00
Hypolite Petovan 1f1cad322c Update Composer dependencies ahead of release
- Updating ezyang/htmlpurifier (v4.16.0 => v4.17.0)
- Updating mobiledetect/mobiledetectlib (2.8.41 => 3.74.3)
- Updating patrickschur/language-detection (v5.1.0 => v5.3.0)
- Updating phpseclib/phpseclib (3.0.19 => 3.0.34)
- Updating psr/container (1.1.1 => 2.0.2)
- Updating smarty/smarty (v4.3.1 => v4.3.4)
- Updating bower-asset/base64 (1.2.0 => 1.3.0)
- Updating mockery/mockery (1.5.1 => 1.6.7)
- Updating sebastian/global-state (5.0.5 => 5.0.6)
- Updating sebastian/diff (4.0.4 => 4.0.5)
- Updating theseer/tokenizer (1.2.1 => 1.2.2)
- Updating nikic/php-parser (v4.15.4 => v4.18.0)
- Updating phpunit/php-code-coverage (9.2.26 => 9.2.29)
- Updating phpunit/phpunit (9.6.7 => 9.6.15)
- Updating dasprid/enum (1.0.4 => 1.0.5)
- Updating guzzlehttp/promises (1.5.2 => 1.5.3)
- Updating symfony/polyfill-php72 (v1.27.0 => v1.28.0)
- Updating symfony/polyfill-intl-normalizer (v1.27.0 => v1.28.0)
- Updating symfony/polyfill-intl-idn (v1.27.0 => v1.28.0)
- Updating paragonie/sodium_compat (v1.19.0 => v1.20.0)
- Updating psr/http-client (1.0.2 => 1.0.3)
- Updating composer/ca-bundle (1.3.5 => 1.4.0)
2023-12-18 21:02:06 -05:00
Hypolite Petovan 769b73e8a3 Bump minimum version to run Friendica to PHP 7.4
- Update version filter of mobiledetect/mobiledetectlib and psr/container to PHP 7.4 versions
- Remove PHP 7.3 PHPUnit instance
- Remove PHP 7.2 specific PDO exception in tests
2023-12-18 21:02:02 -05:00
Hypolite Petovan 3cfe7d61fc
Merge pull request #13734 from Raroun/Fix-for-Issue-#13403
Fix for issue #13403 [Frio] Optical assignment of a contact to a circle not/hardly distinguishable
2023-12-17 21:17:50 -05:00
Hypolite Petovan 47b0302811
Merge pull request #13732 from annando/issue-13731
Issue 13731: Fix error concerning invalid user
2023-12-17 21:16:28 -05:00
Hypolite Petovan 02dded6caa
Merge pull request #13730 from Raroun/Fix_for_Issue_#13720
Fix for issue #13720 - [frio] Compose-box initially way too small by default
2023-12-17 21:14:04 -05:00
Hypolite Petovan 02a76cfcfd
Merge pull request #13729 from annando/frio-channel
Frio: Improved user defined channel page
2023-12-17 21:12:37 -05:00
Hypolite Petovan cbe6e1dbb3
Merge pull request #13728 from annando/issue-13560
Issue 13560: new indexes to improve circle loading time
2023-12-17 21:03:14 -05:00
Raroun c1b649af94
Update style.css
Reduced the icon size from 20 pixels to 15 pixels
i like that the button is on the same heigth as the username, but 20 pixels is just too much there.
2023-12-17 11:34:16 +01:00
Raroun 571339f530
Update entry.tpl
added missing "contact-circle-link" css class
2023-12-17 11:03:41 +01:00
Michael 7c7ebd9b86 Issue 13731: Fix error concerning invalid user 2023-12-17 09:56:00 +00:00
Raroun 7eb5a0775c
Update entry.tpl
Addes missing "contact-circle-actions" css class
2023-12-17 10:33:21 +01:00
Raroun d9c9ab6cee
Update jot.tpl
Increased rows from 2 to 8 which still fits mobile screens
2023-12-17 08:03:19 +01:00
Raroun 7c56cb3132
Update comment_item.tpl
Increased rows from 3 to 8 which still fits mobile screens
2023-12-17 08:02:33 +01:00
Michael 8de58aa39d open channel settings when empty 2023-12-17 06:41:19 +00:00
Michael 0a0d2c98e8 Channel definition now stays open after edit 2023-12-17 06:16:26 +00:00
Michael 62386e4c9e Frio: Improved user defined channel page 2023-12-16 21:43:01 +00:00
Michael b88c557c6b Issue 13560: new indexes to improve circle loading time 2023-12-16 18:28:33 +00:00
Hypolite Petovan 0ec7991a20
Merge pull request #13727 from annando/threads-logo
Use the Instagram logo for the Threads server
2023-12-16 09:18:34 -05:00
Michael 7e6cdaf025 Use the Instagram logo for the Threads server 2023-12-16 12:56:44 +00:00
Michael Vogel ed2f4fdcc2
Merge pull request #13726 from tobiasd/20231216-lng
translation updates
2023-12-16 12:01:46 +01:00
Tobias Diekershoff d47335ccad translation updates 2023-12-16 08:20:16 +01:00
Hypolite Petovan d275760596
Merge pull request #13724 from Raroun/Fix-for-Issue-#13637---Photo-caption-prevents-photo-selection-in-the-file-browser
Fix for Issue  #13637 - Photo caption prevents photo selection in the file browser
2023-12-15 11:46:18 -05:00
Hypolite Petovan 08eaedede1
Merge pull request #13723 from annando/threads2
Allow longer avatar URLs / the system outbox is now handled
2023-12-15 11:29:10 -05:00
Michael 303c9fb23f Added server detection for "threads" 2023-12-15 11:19:11 +00:00
Raroun fb362f91ac
Update style.css 2023-12-15 11:39:57 +01:00
Michael 0a4f0d616a Allow longer avatar URLs / the system outbox is now handled 2023-12-15 10:39:41 +00:00
Hypolite Petovan 33102a76da
Merge pull request #13721 from annando/issue-13719
Threads: Profiles can now be fetched
2023-12-14 21:35:21 -05:00
Michael 250ad8843d FThreads: Profiles can now be fetched 2023-12-14 22:59:55 +00:00
Hypolite Petovan c2e4c0e1fa
Merge pull request #13717 from annando/contacts-posts
Fix uddate issues and improve speed when displaying contact posts
2023-12-14 11:48:31 -05:00
Michael 1cd729531d Sorting changed to "created" 2023-12-14 06:18:17 +00:00
Michael eae1affb21 Index added 2023-12-14 05:36:31 +00:00
Michael f81192b4c3 Fix uddate issues and improve speed when displaying contact posts 2023-12-14 04:58:43 +00:00
Hypolite Petovan 747a15f0e0
Merge pull request #13712 from annando/tag-language
Only use posts with wanted languages for subscribed tags
2023-12-11 17:55:54 -05:00
Michael 14266a1ca4 Only use posts with wanted languages for subscribed tags 2023-12-11 22:07:01 +00:00
Hypolite Petovan 541208a6bd
Merge pull request #13711 from annando/update-item
Frio: perform item update after activity
2023-12-11 08:26:47 -05:00
Michael 113d72f59f Frio: perform item update after activity 2023-12-11 04:26:24 +00:00
Michael Vogel b561f6ffd3
Merge pull request #13708 from MrPetovan/bug/deprecated
Fix a couple deprecation notices
2023-12-10 20:17:53 +01:00
Michael Vogel 2643ca11e6
Merge pull request #13709 from friendica/MrPetovan-patch-1
Add support for string in $nodeinfo['protocols']
2023-12-10 19:59:38 +01:00
Hypolite Petovan 35e3e912df Add support for string in $nodeinfo['protocols']
- Address https://github.com/friendica/friendica/issues/13157#issuecomment-1848404671
2023-12-09 21:36:57 -05:00
Hypolite Petovan 0b95f39c22 Allow count to be a float in L10n->tt()
- Address part of https://github.com/friendica/friendica/issues/13699#issuecomment-1848363608
2023-12-09 07:42:15 -05:00
Hypolite Petovan 67f57a7f90 Avoid passing null value to number_format() in Module\Admin\Federation
- Address part of https://github.com/friendica/friendica/issues/13699#issuecomment-1848363608
2023-12-09 07:32:24 -05:00
Michael Vogel dc9658f532
Merge pull request #13704 from MrPetovan/bug/13693-infinite-indentation-level
[frio] Limit thread indentation level to 7 (at thread level 9)
2023-12-09 07:11:35 +01:00
Michael Vogel b1e6a53692
Merge pull request #13706 from MrPetovan/bug/fatal-errors
Don't assume $_SESSION is set in Session\Type\AbstractSession
2023-12-09 07:10:39 +01:00
Hypolite Petovan 9743d2f40c [frio] Limit thread indentation level to 7 (at thread level 9) 2023-12-08 20:55:19 -05:00
Hypolite Petovan 7d69d1b402 Don't assume $_SESSION is set in Session\Type\AbstractSession
- Address https://github.com/friendica/friendica/issues/13699#issuecomment-1845584812
2023-12-08 20:54:07 -05:00
Michael Vogel 708d3892a7
Merge pull request #13703 from MrPetovan/bug/deprecated
Add ReturnTypeWillChange attribute to methods in Session\Handler\Cache
2023-12-07 14:02:09 +01:00
Hypolite Petovan b16e8fdb58 Add ReturnTypeWillChange attribute to methods in Session\Handler\Cache
- Addess deprecated messages reported in https://github.com/friendica/friendica/issues/13699#issue-2028442214
2023-12-07 07:23:17 -05:00
Hypolite Petovan dc7cdc3252
Merge pull request #13702 from annando/null-in-polls
Fix for exception when there are "null" replies
2023-12-07 07:11:46 -05:00
Hypolite Petovan e22e58f5b8
Merge pull request #13701 from annando/diaspora-events
Fix transmission of events to Diaspora
2023-12-07 07:08:46 -05:00
Michael a120debac6 Fix for exception when there are "null" replies 2023-12-07 09:59:39 +00:00
Michael 1301730ed8 Remove comment 2023-12-07 06:52:03 +00:00
Michael 4f37f68bd7 Fix transmission of events to Diaspora 2023-12-07 06:45:23 +00:00
Hypolite Petovan 0d6974a6d2
Merge pull request #13700 from annando/cron-interval
The value of "cron interval" wasn't displayed correctly
2023-12-06 17:14:44 -05:00
Michael 5a844cd31e The value of "cron interval" wasn't displayed correctly 2023-12-06 21:19:38 +00:00
Hypolite Petovan e0686ac1d9
Merge pull request #13696 from annando/invalid-uri
Fix exception, when a provided URI is invalid
2023-12-06 12:46:12 -05:00
Michael 914d4506e2 Exception handling added 2023-12-05 22:33:45 +00:00
Michael 0df88fd5a0 Merge remote-tracking branch 'upstream/2023.09-rc' into invalid-uri 2023-12-05 22:30:04 +00:00
Hypolite Petovan 085fb95ce3
Merge pull request #13697 from annando/check-daemon
Check if the daemon pid file can be written
2023-12-05 16:57:42 -05:00
Michael Vogel f430e06f80
Update bin/daemon.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-12-05 22:45:16 +01:00
Michael 8827d4c142 Check if the daemon pid file can be written 2023-12-05 21:18:44 +00:00
Michael 9b73189e1d Renamed function name 2023-12-05 19:55:27 +00:00
Michael 0aa49510b2 Changed uri 2023-12-05 07:44:01 +00:00
Michael 691e0dd44a Added another test case 2023-12-05 07:36:13 +00:00
Michael 8e91db7fb1 Fix test again 2023-12-05 06:02:38 +00:00
Michael 2e0c550ee7 Fixed test 2023-12-05 05:57:38 +00:00
Michael be2e715eb1 Added test 2023-12-05 05:51:39 +00:00
Michael 7b1b3fe8cf Fix exception, when a provided URI is invalid 2023-12-05 05:24:33 +00:00
Hypolite Petovan 49819b64db
Merge pull request #13695 from annando/improved-site-descriptions
Some site configuration descriptions are improved
2023-12-04 17:27:10 -05:00
Michael 5e27b5790c Some site configuration descriptions are improved 2023-12-04 22:19:57 +00:00
Tobias Diekershoff be64528b4f
Merge pull request #13694 from annando/configs
Default values are now at their correct places
2023-12-04 08:17:47 +01:00
Michael 8db7343dda Default values are now at their correct places 2023-12-04 06:33:17 +00:00
Hypolite Petovan ce06f7d783
Merge pull request #13690 from annando/channel-settings
The channel settings are now available on the site settings
2023-12-03 19:11:35 -05:00
Michael cb91800088 "worker_fetch_limit" is moved as well 2023-12-03 22:49:35 +00:00
Michael 8386768708 Merge remote-tracking branch 'upstream/2023.09-rc' into channel-settings 2023-12-03 14:41:58 +00:00
Michael Vogel 3b96690d0c
Merge pull request #13689 from MrPetovan/bug/warnings
Fix a few warning messages
2023-12-03 15:37:40 +01:00
Michael c4c3976c8c Updated messages.po 2023-12-03 14:31:09 +00:00
Michael 5cd85d9bb7 "items per page" is now in the site settings as well 2023-12-03 14:30:40 +00:00
Hypolite Petovan f2e90e91e0
Merge pull request #13691 from annando/always-enable-no-sharer
The option "community_no_sharer" is now always enabled
2023-12-03 09:14:43 -05:00
Hypolite Petovan 5971334ec7 Check for $profile emptiness before calling getReceiverForActor() in ActivityPub->getReceivers
- Address https://github.com/friendica/friendica/issues/13157#issuecomment-1837127082
2023-12-03 09:13:34 -05:00
Hypolite Petovan 6c7dee4bcd Check media_attributes keys before using them in Mastodon\Statuses
- Address https://github.com/friendica/friendica/issues/13157#issuecomment-1832575517
2023-12-03 09:13:34 -05:00
Michael a3bfaf6336 Updated messages.po 2023-12-03 13:55:11 +00:00
Michael e99c916df1 Some more settings moved to the admin frontend 2023-12-03 13:43:48 +00:00
Michael c09d794ed8 Merge remote-tracking branch 'upstream/2023.09-rc' into channel-settings 2023-12-03 11:22:26 +00:00
Michael Vogel 05ffc8b0d7
Merge pull request #13692 from nupplaphil/phpunit
Add "memory_limit" parameter to phpunit
2023-12-03 12:21:17 +01:00
Michael 7bf7744efb The "cron_interval" is now reachable via the admin site settings 2023-12-03 11:20:37 +00:00
Michael e87c79780a "min_poll_interval" moved as well 2023-12-03 11:08:21 +00:00
Philipp Holzer cfff24518e
Add "memory_limit" parameter to phpunit 2023-12-03 11:45:55 +01:00
Michael 6e523beec3 The option "community_no_sharer" is now always enabled 2023-12-03 10:26:58 +00:00
Michael f93192bc28 The channel settings are now available on the site settings 2023-12-03 09:45:13 +00:00
Hypolite Petovan e0fb149466
Merge pull request #13687 from annando/followers
Distribute incoming posts according to the parent followers collection
2023-12-02 03:42:55 -05:00
Michael 46bd4d71d0 Don't insert non public comments on not existing thread parents 2023-12-02 06:19:30 +00:00
Michael 32651f7811 Legacy code removed 2023-12-01 20:20:00 +00:00
Michael c666cebe60 Distribute incoming posts according to the parent followers collection 2023-12-01 09:55:48 +00:00
Hypolite Petovan f3e47bd899
Merge pull request #13684 from annando/post-distribution
Improved distribution of non public messages
2023-11-30 13:36:08 -05:00
Michael 09d72ffb16 Parameter is now optional 2023-11-30 17:58:28 +00:00
Michael 120b60c5ee Function is changed to "private" 2023-11-30 17:26:29 +00:00
Michael f5337904e4 Improved distribution of non public messages 2023-11-30 05:51:38 +00:00
Hypolite Petovan 9fb493bf18
Merge pull request #13677 from annando/site-settings
Several settings can now be reached via the site settings
2023-11-28 12:01:58 -05:00
Michael c6221872e2 Changes after review 2023-11-28 16:11:02 +00:00
Michael 752172ab54 Merge remote-tracking branch 'upstream/2023.09-rc' into site-settings 2023-11-28 16:08:22 +00:00
Hypolite Petovan d52d6a9e41
Merge pull request #13680 from annando/relation-queries
Improve performance on the contact relation queries
2023-11-28 10:55:28 -05:00
Hypolite Petovan 61035d5007
Merge pull request #13681 from annando/no-events-on-raw
Don't display additional content when the output mode is "raw"
2023-11-28 10:46:30 -05:00
Michael 405db86750 Don't display additional content when the output mode is "raw" 2023-11-28 15:21:20 +00:00
Michael b8b1b7bb84 Revert interlace stuff 2023-11-28 14:57:11 +00:00
Michael c56b915dee Hopefully fix "Interlace handling should be turned on when using png_read_image" 2023-11-28 13:50:09 +00:00
Michael 43fa4b457d Updated messages.po 2023-11-28 12:55:20 +00:00
Michael 1ca7118027 Improve performance on the contact relation queries 2023-11-28 10:00:11 +00:00
Michael 364a5e99db messages.po is updated again 2023-11-28 07:00:34 +00:00
Michael a4c36afcc2 Updated nessages.po 2023-11-28 01:17:13 +00:00
Michael 62f3598c25 Merge remote-tracking branch 'upstream/2023.09-rc' into site-settings 2023-11-28 01:12:40 +00:00
Michael Vogel bb97539a28
Merge pull request #13676 from MrPetovan/bug/13673-markers-json-output
Change return value to stdClass of Module\Api\Mastodon\Markers->fetchTimelines
2023-11-28 02:10:49 +01:00
Michael 46b1b66dbf Several settings can now be reached via the site settings 2023-11-28 00:57:51 +00:00
Hypolite Petovan cbe4b60a90 Change return value to stdClass of Module\Api\Mastodon\Markers->fetchTimelines
- This ensures the JSON serialization of timeline markers is an object even when no markers are set
2023-11-27 16:10:15 -05:00
Hypolite Petovan de807e6378
Merge pull request #13674 from annando/server-discovery
Improved control about the contact/server updates
2023-11-27 15:20:07 -05:00
Michael 67f727e3b3 Merge remote-tracking branch 'upstream/2023.09-rc' into server-discovery 2023-11-27 19:28:13 +00:00
Michael Vogel 8ff54c2eba
Merge pull request #13672 from MrPetovan/bug/deprecated
Address several deprecation notices
2023-11-27 20:22:47 +01:00
Michael 74990093fd Updated messages.po 2023-11-27 19:07:24 +00:00
Michael 077c9ff0c9 Improved control about the contact/server updates 2023-11-27 19:00:12 +00:00
Hypolite Petovan 3b3d0231bc Replace last occurrences of in_array used as a Smarty modifier
- Address https://github.com/friendica/friendica/issues/13158#issuecomment-1826266366
2023-11-27 12:07:18 -05:00
Hypolite Petovan fb19176201 Remove DI dependency in Object\Api\Mastodon\Instance
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1826792949
2023-11-26 09:48:46 -05:00
Hypolite Petovan 838c73cbba Skip empty name tags in ActivityPub\Processor::acceptIncomingMessage
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1826792949
2023-11-26 09:35:15 -05:00
Hypolite Petovan 332ab6641c Pass actual string character to ctype_space in Content\Smilies::performForEachWordMatch
- Address part of https://github.com/friendica/friendica/issues/12011#issuecomment-1826792949
2023-11-26 09:27:59 -05:00
Hypolite Petovan 3c35dbcb5f
Merge pull request #13671 from annando/issue-12504
Issue 12504: Additional logging for mail notifications
2023-11-25 18:20:15 -05:00
Michael f514c2caf0 Test remark removed 2023-11-25 23:19:27 +00:00
Michael 281dd91e6a Issue 12504: Additional logging for mail notifications 2023-11-25 22:53:56 +00:00
Hypolite Petovan 045085c92c
Merge pull request #13669 from gudzpoz/non-pic-emoji-regression
Fix substituting smilies and smilies containing whitespaces
2023-11-25 17:12:42 -05:00
Hypolite Petovan 56cfc57641
Merge pull request #13670 from annando/exceptions
Fix exceptions in the channel check
2023-11-25 16:59:21 -05:00
Michael 3f971f6dec Fix exceptions in the channel check 2023-11-25 16:17:26 +00:00
gudzpoz 37188c76b8 Fix substituting smilies and smilies containing whitespaces 2023-11-25 23:29:39 +08:00
Hypolite Petovan c649230982
Merge pull request #13668 from annando/issue-8542
Issue 8542: User option to display the event list/birthday notification
2023-11-25 10:26:34 -05:00
Hypolite Petovan 5c6ac25945
Merge pull request #13667 from annando/issue-12743
Issue 12743: Allow editing of media in posts
2023-11-25 10:19:42 -05:00
Michael 4a5014eab5 Function is renamed 2023-11-25 15:14:06 +00:00
Michael 4d7c5f5672 Fix tests 2023-11-25 15:03:42 +00:00
Michael b3d7dfb9a5 Issue 8542: User option to display the event list/birthday notification 2023-11-25 14:57:24 +00:00
Michael ca366e5437 Issue 12743: Allow editing of media in posts 2023-11-25 12:22:25 +00:00
Hypolite Petovan 5c3227ac4c
Merge pull request #13663 from annando/issue-13607
Issue 13607: Use privacy setting for "remote self"
2023-11-24 21:19:52 -05:00
Hypolite Petovan a569068fb0
Merge pull request #13666 from HankG/mastodon-api-account-search-fixes
Mastodon api account search fixes
2023-11-24 21:18:51 -05:00
Michael 27c8990aea Merge remote-tracking branch 'upstream/2023.09-rc' into issue-13607 2023-11-24 23:18:55 +00:00
Hank Grabowski f3f0859e0b Fix if not allowed blocked servers then server-blocked condition is false not true 2023-11-24 17:19:04 -05:00
Hank Grabowski 379c84b7ab Fix call order of Mastodon Top level search on accounts 2023-11-24 17:06:41 -05:00
Hypolite Petovan ce5aa016e1
Merge pull request #13664 from annando/issue-12530
Issue 12530: Align the instance endpoint to the latest changes
2023-11-24 09:56:52 -05:00
Michael 199ac64202 Issue 12530: Align the instance endpoint to the latest changes 2023-11-24 13:25:39 +00:00
Michael 4277b0c3aa Issue 13607: Use privacy setting for "remote self" 2023-11-24 08:35:49 +00:00
Hypolite Petovan 02afde3eec
Merge pull request #13661 from annando/warning
Fix warning: Undefined array key "mime"
2023-11-22 22:00:56 -05:00
Michael 0279b3dee9 Fix warning: Undefined array key "mime" 2023-11-22 19:16:09 +00:00
Hypolite Petovan 6fa7b45294
Merge pull request #13660 from annando/issue-13627-a
Issue 13627: DMs now work bidirectional again
2023-11-22 09:36:27 -05:00
Michael c07ce083d1 Additional check for direct messages 2023-11-22 14:20:51 +00:00
Michael 08d06064ce Issue 13627: DMs now work bidirectional again 2023-11-22 11:07:18 +00:00
Hypolite Petovan 2b8a71231e
Merge pull request #13659 from annando/network-channel
Channels can now be based on the "network" feed as well
2023-11-21 20:16:00 -05:00
Michael ffbab95c20 Channels can now be based on the "network" feed as well 2023-11-21 23:13:26 +00:00
Hypolite Petovan 5479618f1c
Merge pull request #13658 from annando/issue-13627
Issue 13627: Direct messages work now again
2023-11-21 10:46:48 -05:00
Hypolite Petovan ced14a73d7
Merge pull request #13657 from annando/activity-counter
Display the total emoji activity
2023-11-21 10:45:28 -05:00
Michael 3f6760dc0d Issue 13627: Direct messages work now again 2023-11-21 09:21:37 +00:00
Michael e0d992f452 Display the total emoji activity 2023-11-20 21:45:02 +00:00
Hypolite Petovan 676ce83dab
Merge pull request #13655 from keithhacks/escape-notification-contact-names
(Security) HTML-escape notification contact names
2023-11-19 23:02:15 -05:00
Hypolite Petovan fc00bf13bf
Merge pull request #13654 from annando/gserver-non-native
Simplify gserver entry creation for non native networks
2023-11-19 18:45:55 -05:00
keithhacks 777d0d45c6
HTML-escape notification contact names 2023-11-19 23:23:29 +00:00
Michael ba3dacdbde Simplify gserver entry creation for non native networks 2023-11-19 19:11:45 +00:00
Hypolite Petovan 80796a87c7
Merge pull request #13652 from Raroun/Leftovers_from_Pull_Request_#13633
Leftovers from pull request #13633
2023-11-19 12:23:26 -05:00
Raroun 571f95546a
Update view/templates/shared_content.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-19 13:45:32 +01:00
Raroun bcb75d65a3
Update search_item.tpl
Fix indentation
2023-11-19 09:58:32 +01:00
Raroun 118d736aa9
Update search_item.tpl
Added new behavior here also
2023-11-19 09:52:40 +01:00
Raroun 98f99c536e
Update shared_content.tpl
Added new behavior here too
2023-11-19 09:50:30 +01:00
Hypolite Petovan dcd47c391c
Merge pull request #13651 from annando/picture-upload
Fix the preview mode setting
2023-11-18 11:26:29 -05:00
Michael c8a3fea091 "browser_update" is integer, not boolean 2023-11-18 11:24:29 +00:00
Michael 6adf76c689 Fix the preview mode setting 2023-11-17 23:30:28 +00:00
Hypolite Petovan 9901d82fea
Merge pull request #13648 from annando/picture-upload
Allow to upload pictures up to the allowed system upload size
2023-11-17 18:06:36 -05:00
Michael 170998da1a Allow to upload pictures up to the allowed system upload size 2023-11-17 12:19:01 +00:00
Hypolite Petovan 5cf71baf55
Merge pull request #13646 from annando/page-drop
New user option to hide the page drop checkbox
2023-11-16 07:42:43 -08:00
Michael 64e56fd97c Updated messages.po 2023-11-16 15:36:54 +00:00
Michael Vogel 2db2f280d5
Merge pull request #13647 from MrPetovan/bug/10369-rss-group-ns
Add expected xmlns attribute to group feed entries
2023-11-16 15:48:59 +01:00
Michael Vogel cad4b2f7b8
Update src/Module/Settings/Display.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-16 15:48:25 +01:00
Hypolite Petovan 518c463761 Add expected xmlns attribute to group feed entries 2023-11-16 06:58:15 -05:00
Hypolite Petovan 21227453e5
Merge pull request #13635 from gudzpoz/emojis-please
Improve emoji federation (ActivityPub) and Mastodon API compliance
2023-11-16 03:26:34 -08:00
gudzpoz d493946ba4 Allow using punctuation chars as smiley delimiters 2023-11-16 13:31:31 +08:00
Michael 581b96c32f New user option to hide the page drop checkbox 2023-11-15 21:55:54 +00:00
Hypolite Petovan 27f3f62082
Merge pull request #13643 from annando/pre-storage-match
Database table definition is renamed
2023-11-15 11:17:43 -08:00
Michael 500feedc43 Removed old database table description 2023-11-15 18:02:44 +00:00
Hypolite Petovan fc0703005d
Merge pull request #13642 from annando/pre-storage-match
Check for user defined channel matches before storing them
2023-11-15 09:57:40 -08:00
Michael 57020d406f Renamed file 2023-11-15 17:57:40 +00:00
Michael 1dfb0ce81c "test" is renamed to "check", documentation for platform added 2023-11-15 17:55:45 +00:00
gudzpoz d45e9d6af2 Require whitespace around smilies and normalize federating text 2023-11-16 00:25:11 +08:00
Michael 43f9be367f Check for user defined channel matches before storing them 2023-11-15 16:19:05 +00:00
Hypolite Petovan e2891a660a
Merge pull request #13641 from annando/issue-13640
Issue 13640: Transmit "about" to Diaspora servers
2023-11-15 07:07:44 -08:00
Michael 7345e3af69 Issue 13640: Transmit "about" to Diaspora servers 2023-11-15 12:18:18 +00:00
gudzpoz 2cb0027f56 Pass emojis in remote mastodon posts in mastodon api 2023-11-14 10:52:34 +08:00
Hypolite Petovan 64cdb6ee80
Merge pull request #13633 from Raroun/FR#13624_Frio_Combine_Link_to_Source_with_Platform_icon_in_post_view
[frio]: Combine Link to Source with Platform icon in post view
2023-11-13 10:08:24 -08:00
Raroun 98f26cb9d6
Update view/theme/frio/templates/wall_thread.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-13 19:04:13 +01:00
Raroun 72817daa3b
Update wall_thread.tpl - fix indentation 2023-11-13 18:47:34 +01:00
Raroun dbc9efd62b
Update wall_thread.tpl
Update for code review
2023-11-13 18:29:26 +01:00
gudzpoz e088bb722b Fix editor layout when smilies overflow or on mobile 2023-11-12 23:02:21 +08:00
gudzpoz 917b801eb6 Extract emojis into mastodon api only for local posts 2023-11-12 22:17:37 +08:00
Raroun 0dbb864d7d
Update wall_thread.tpl
Changes for code review
2023-11-12 14:43:48 +01:00
gudzpoz 9bf7529dda Improve emoji federation and mastodon api compliance 2023-11-12 20:59:49 +08:00
Raroun 3d97170ad0
Update wall_thread.tpl to match feature request 2023-11-12 11:03:33 +01:00
Hypolite Petovan dc69116572
Merge pull request #13629 from annando/transmitted-languages
The transmitted language is now stored
2023-11-10 07:29:10 -08:00
Michael 58a8ce0420 Store "null" when no language couldn't be detected 2023-11-10 08:30:37 +00:00
Michael dbda317c6d The transmitted language is now stored 2023-11-09 21:31:34 +00:00
Hypolite Petovan 2f1ec8e144
Merge pull request #13628 from annando/icons
Don't show dislike if unwanted / views use the correct icon now / colours adjusted
2023-11-09 12:13:07 -08:00
Michael 00395118f9 Don't show dislike if unwanted / views use the correct icon now / colours adjusted 2023-11-09 18:22:25 +00:00
Hypolite Petovan c261bf8759
Merge pull request #13623 from annando/relay-processing
Improved relay post processing
2023-11-09 06:07:32 -08:00
Michael 5afa4fa838 Improved relay post processing 2023-11-09 06:43:03 +00:00
Hypolite Petovan a1b5ec94fb
Merge pull request #13618 from annando/display
Frio: Improved display of disabled activities
2023-11-07 14:09:13 -08:00
Michael f5f18518da Frio: Improved display of disabled activities 2023-11-07 21:25:00 +00:00
Hypolite Petovan 9d93eaf810
Merge pull request #13614 from HankG/oauth-redirect-fix
Fix OAuth Redirect Url Scrubbing
2023-11-06 10:12:55 -08:00
Hank Grabowski 4ae78e7ed6 Remove extraneous 'exploded' variable that was used during debugging 2023-11-06 13:12:21 -05:00
Hank Grabowski 35a726a961 Use strtok to find QP's in Uri for OAuth redirect processing 2023-11-06 11:25:13 -05:00
Hypolite Petovan 89e105afbe
Merge pull request #13613 from annando/permissions
Ensure to always have stored the receivers
2023-11-06 04:13:18 -08:00
Hypolite Petovan 9692f0614d
Merge pull request #13612 from annando/rearrange-buttons
Frio: The action buttons are rearranged
2023-11-06 04:11:12 -08:00
Michael b58cabdc41 Ensure to always have stored the receivers 2023-11-06 09:57:23 +00:00
Michael Vogel 0ba3fe3b2a
Merge pull request #13609 from MrPetovan/bug/13603-profile-public-cid
Use public contact ID in Model\Profile::getVCardHtml instead of potentially self-contact ID
2023-11-06 09:01:06 +01:00
Michael 246acb8646 The action buttons are rearranged 2023-11-06 07:23:11 +00:00
Hypolite Petovan da9baf2be8 Use public contact ID in Model\Profile::getVCardHtml instead of potentially self-contact ID
- This prevented contact conversation link from working
2023-11-05 19:34:36 -05:00
Hypolite Petovan 35de254bd2 [frio] Fix indentation and wrong button tag usage in vcard templates 2023-11-05 19:34:35 -05:00
Hypolite Petovan 58e5f0d9c5
Merge pull request #13611 from annando/languages
Use the post language for the language detection / config for quality
2023-11-05 16:23:57 -08:00
Michael 5b2b73da92 Moved empty post detection 2023-11-05 23:05:33 +00:00
Michael f5091110c2 Use the "abandon days" for the user language detection 2023-11-05 21:04:29 +00:00
Michael 9e47cde90c Sort the user languages 2023-11-05 20:38:49 +00:00
Michael ec16e7c0e6 Configuration for the number of languages 2023-11-05 20:18:01 +00:00
Michael 5ae0331993 Use the post language for the language detection / config for quality 2023-11-05 19:18:10 +00:00
Michael Vogel 0f33c53d5c
Merge pull request #13610 from MrPetovan/bug/13334-calendar-public-event
Fix computation of the private flag for shared event items
2023-11-05 15:30:52 +01:00
Hypolite Petovan e75a87a581 Fix computation of the private flag for shared event items 2023-11-05 09:11:08 -05:00
Hypolite Petovan 44b53fd00b
Merge pull request #13604 from Raroun/More_menu_on_mobile_view_with_the_same_features_as_the_desktop_view
Frio: Making the more menu on mobile the same as on desktop
2023-11-05 05:53:15 -08:00
Raroun 99bab9881d
fix indentation in wall_thread.tpl 2023-11-05 14:15:22 +01:00
Raroun aa8b02caf8
Merge branch 'friendica:2023.09-rc' into More_menu_on_mobile_view_with_the_same_features_as_the_desktop_view 2023-11-05 08:50:02 +01:00
Hypolite Petovan 19c5667d9f
Merge pull request #13605 from annando/button-counter
Frio: The activity buttons now have got counters
2023-11-04 15:36:22 -07:00
Michael c88267f858 Improve the display of counters 2023-11-04 22:30:40 +00:00
Michael 6de1676337 Simplify code 2023-11-04 21:37:47 +00:00
Raroun d6c54badb8
Update view/theme/frio/templates/wall_thread.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-04 16:38:52 +01:00
Michael 21cb18fb4b Fixed spelling 2023-11-04 14:12:09 +00:00
Michael 1972762500 Quote share counter added 2023-11-04 14:08:12 +00:00
Michael 1dd48e4a8b Frio: The activity buttons now have got counters 2023-11-04 12:57:54 +00:00
Raroun 04cb1b130a Maing the more menu on mobile the same as on desktop 2023-11-04 13:35:35 +01:00
Hypolite Petovan c5306dcec8
Merge pull request #13600 from annando/user-language
Accept relay posts based on the selected user languages
2023-11-03 19:27:52 -07:00
Michael 7c0b5be70f Accept relay posts based on the selected user languages 2023-11-03 22:54:29 +00:00
Hypolite Petovan 8b02c28547
Merge pull request #13599 from Raroun/Fix_for_Pull_Request_#13596_missing_a_hidden-xs_attribute
Fix for pull request #13596 missing a hidden xs attribute
2023-11-03 11:09:31 -07:00
Hypolite Petovan c222775bdb
Merge pull request #13597 from annando/ISO-639-1
Use ISO-639-1 for the language detection
2023-11-03 11:07:01 -07:00
Michael 5a79111fab Merge branch 'ISO-639-1' of https://github.com/annando/friendica into ISO-639-1 2023-11-03 14:45:02 +00:00
Michael d77bebe843 Spelling 2023-11-03 14:44:53 +00:00
Michael Vogel 1208163ba0
Update src/Core/L10n.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-03 15:43:22 +01:00
Raroun acf8049327
Update view/theme/frio/templates/wall_thread.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-03 13:05:23 +01:00
Raroun 202e86199e
Update view/theme/frio/templates/wall_thread.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-03 13:04:49 +01:00
Raroun 746ffe1cef
Update view/theme/frio/templates/wall_thread.tpl
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-03 13:03:31 +01:00
Raroun cca29aab4a removed "more"-String 2023-11-03 12:45:00 +01:00
Raroun 8d3389aebd readded missing </span> 2023-11-03 11:08:26 +01:00
Raroun 38ff790bef Regrouped wall-items and readded hidden-xs attribute for mobile view 2023-11-03 11:02:35 +01:00
Michael eaff54c4e3 Moves supported languages to the general part 2023-11-03 06:54:15 +00:00
Michael 7ae59a53ed Updated messages.po 2023-11-03 05:36:02 +00:00
Michael a7ab14b3b3 Use "toISO6391" instead of "substr" 2023-11-03 05:32:57 +00:00
Michael 90e05fd835 Updated messages.po 2023-11-02 22:59:55 +00:00
Michael 4e6719c586 Merge remote-tracking branch 'upstream/2023.09-rc' into ISO-639-1 2023-11-02 22:58:08 +00:00
Michael 3f2b0b9422 Use ISO-639-1 for the language detection 2023-11-02 22:49:25 +00:00
Hypolite Petovan c98fcaeebb
Merge pull request #13596 from Raroun/Issue_#13577_Remove_button_descriptions
Fix Issue #13577 remove button descriptions
2023-11-02 07:19:31 -07:00
Raroun c05b7fe60f updatet wall_thread.tpl Remove button descriton text and foreced left align DIV 2023-11-02 14:02:03 +01:00
Raroun 7562ff0e64 Remove button descriton text and foreced left align DIV 2023-11-02 13:55:08 +01:00
Raroun b660e312b7 Remove button descriton text and foreced left align DIV 2023-11-02 13:42:55 +01:00
Hypolite Petovan 74b4eddcf7
Merge pull request #13582 from Raroun/Leftovers-from-PR-#13339
Leftovers from pr #13339
2023-11-01 07:10:15 -07:00
Raroun cb99227569 refreshed messages.po 2023-11-01 14:57:23 +01:00
Raroun 29cd461132
Merge branch 'friendica:2023.09-rc' into Leftovers-from-PR-#13339 2023-11-01 14:56:07 +01:00
Hypolite Petovan 2abae3d273
Merge pull request #13593 from tobiasd/20231101-lng
EN GB, EN US, RU translation updates
2023-11-01 06:46:57 -07:00
Tobias Diekershoff e584d3188c EN GB, EN US, RU translation updates 2023-11-01 08:36:37 +01:00
Raroun 1ede164450
Merge branch 'friendica:2023.09-rc' into Leftovers-from-PR-#13339 2023-11-01 08:21:50 +01:00
Raroun cb7643a74e
Update settings.config.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-01 07:30:44 +01:00
Raroun 67a6bc3ea9
Update Site.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-11-01 07:30:34 +01:00
Hypolite Petovan 094b219581
Merge pull request #13586 from annando/defer-limit
Individual defer limits per worker task
2023-10-31 20:46:35 -07:00
Tobias Diekershoff 58b119250a
Merge pull request #13589 from annando/community-presets
Block tags, not hide wall for community accounts
2023-10-31 19:18:57 +01:00
Tobias Diekershoff 994e9cf346
Merge pull request #13591 from annando/message-distribution
Improve distribution of non public messages
2023-10-31 15:42:33 +01:00
Michael 404e937872 Improve distribution of non public messages 2023-10-31 13:08:24 +00:00
Michael 20b095c7c5 Block tags, not hide wall for community accounts 2023-10-31 07:53:06 +00:00
Tobias Diekershoff 104ce7c64f
Merge pull request #13588 from annando/issue-13511
Issue 13511: Ensure static community user settings
2023-10-29 21:37:16 +01:00
Michael 7371070cde Issue 13511: Ensure stattic community user settings 2023-10-29 19:43:44 +00:00
Michael b0978d0e37 Merge remote-tracking branch 'upstream/2023.09-rc' into defer-limit 2023-10-29 16:44:18 +00:00
Tobias Diekershoff 77ccd7201b
Merge pull request #13587 from annando/followers
Issue 13566: Convert "followers" path when copying receivers
2023-10-29 17:39:00 +01:00
Michael 308401b9e5 Convert "followers" path when copying receivers 2023-10-29 16:17:16 +00:00
Michael 9faad72ec0 Individual defer limits per worker task 2023-10-29 12:51:26 +00:00
Michael Vogel 31c1928789
Merge pull request #13585 from tobiasd/20231029-lng
DE, RO, RU translation updates
2023-10-29 12:53:57 +01:00
Tobias Diekershoff a7c985a590
Merge pull request #13584 from annando/copy-permissions
Post permissions are now copied from the thread parent
2023-10-29 11:47:02 +01:00
Tobias Diekershoff dd3a61c725 RO translation update 2023-10-29 10:25:24 +01:00
Tobias Diekershoff d7d3dc679c DE, RU translation updates 2023-10-29 10:19:34 +01:00
Michael 8e05c282b1 Post permissions are now copied from the thread parent 2023-10-29 08:49:24 +00:00
Raroun 40eb9578e7 readded messages.po 2023-10-27 11:59:28 +02:00
Raroun 30d2d93494 added missing apostrophe 2023-10-27 11:54:11 +02:00
Raroun b4121cb6fd Update messages.po 2023-10-27 11:39:14 +02:00
Raroun 4d4f352ed9 Update settings.config.php 2023-10-27 11:35:02 +02:00
Raroun 4eea232581 Removed Full name from Notify.php 2023-10-27 11:26:54 +02:00
Raroun 5b8f307d4c Removed Full name from Register.php 2023-10-27 11:23:07 +02:00
Raroun 4e5041af13 Updated source string in Site.php 2023-10-27 11:18:09 +02:00
Raroun c664907dbf Updated User.php 2023-10-27 11:12:59 +02:00
Raroun bb69b916a8 Updated docs 2023-10-27 11:03:52 +02:00
Tobias Diekershoff 999c56a284
Merge pull request #13580 from annando/fetch-async
Follow requests are always processable
2023-10-26 14:08:59 +02:00
Michael 7e22b7090e Follow requests are always processable 2023-10-26 06:46:23 +00:00
Tobias Diekershoff f5837b77d6
Merge pull request #13579 from annando/fetch-async
Improved asynchronous message procession
2023-10-26 08:38:29 +02:00
Michael c7739ef9c4 Improved processing of leftover queued posts 2023-10-26 05:01:54 +00:00
Michael 35cf140cb2 Fix processing of featured collections 2023-10-26 04:49:41 +00:00
Michael 8ce516ae9f Duration added to logging 2023-10-26 03:41:35 +00:00
Michael a1947d2bb1 Improved asynchronous message procession 2023-10-25 20:16:36 +00:00
Tobias Diekershoff 2468a3736d
Merge pull request #13576 from foss-/patch-10
Update README.md: fix directory link
2023-10-25 13:49:55 +02:00
foss- d454aafe7e
Update README.md: fix directory link
- fix `Join Friendica` link
2023-10-25 09:12:34 +02:00
Tobias Diekershoff 9648d88fb1
Merge pull request #13575 from MrPetovan/bug/13573-twofactor
Fix redirections in two-factor authentication settings index page
2023-10-25 06:48:11 +02:00
Hypolite Petovan 7ebf4d51ca Fix redirections in two-factor authentication settings index page
- FoundException are used to redirect users
2023-10-24 20:26:34 -04:00
Hypolite Petovan 4a90394c38 Remove DI and superglobals dependency from two-factor settings modules 2023-10-24 19:44:53 -04:00
Hypolite Petovan 309844e6d8
Merge pull request #13569 from foss-/patch-9
Update README.md - re-order mobile screenshots
2023-10-23 08:51:24 -04:00
foss- d063bc3ed3
Update README.md
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-10-23 11:45:24 +02:00
foss- e0304d2999
missing " 2023-10-23 01:12:08 +02:00
foss- 7feeffb245
Update README.md - re-order mobile screenshots
- decrease size
- show both mobile screenshots in single row
2023-10-23 01:06:01 +02:00
Tobias Diekershoff f4dd54a808
Merge pull request #13568 from MrPetovan/task/update-readme-screenshots
Replace screenshots in README
2023-10-22 18:11:53 +02:00
Hypolite Petovan 3e8f977ef0 Fix mistake in theme name 2023-10-22 09:56:33 -04:00
Hypolite Petovan 4c9417ff70 Normalize screenshot file name date 2023-10-22 09:29:26 -04:00
Hypolite Petovan c6348a2e4a Replace screenshots in README
- Thanks to @foss- for providing the screenshots
2023-10-21 16:42:47 -04:00
Hypolite Petovan c88b1c0197
Merge pull request #13562 from annando/callstack2
Another unneeded callstack call is removed
2023-10-18 17:57:47 -04:00
Michael 004e87c986 Another unneeded callstack call is removed 2023-10-18 20:21:02 +00:00
Hypolite Petovan f56054ecc1
Merge pull request #13561 from annando/log-callstack
Individual callstacks are removed from the logger
2023-10-18 16:02:08 -04:00
Michael e4a37f344e Individual callstacks are removed from the logger 2023-10-18 19:55:15 +00:00
Hypolite Petovan d05fbe6e45
Merge pull request #13558 from foss-/patch-8
Update README.md: rewrote intro text
2023-10-18 11:51:27 -04:00
foss- 03839fc0fe
Update README.md
moved "Being part of..." further down
2023-10-18 17:50:19 +02:00
foss- a20cdbd5c7
Update README.md
typos and minor tweaks

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-10-18 17:37:50 +02:00
Hypolite Petovan 3dd34619ec
Merge pull request #13557 from annando/api-timeline
Improve the performance of API timeline calls
2023-10-18 10:33:58 -04:00
Hypolite Petovan df791c7e54
Merge pull request #13555 from foss-/patch-9
Update README.md: humane tech has a new home on codeberg
2023-10-18 10:31:03 -04:00
foss- 1cd4f705fd
Update README.md: rewrote intro text
removed twitter,  mentioning other fediverse platforms sorted by popularity, reduced number of paragraphs and simplified text overall.
2023-10-18 10:54:01 +02:00
Michael 1c67be8db0 Improve the performance of API timeline calls 2023-10-18 08:11:36 +00:00
foss- eee0a32d03
Update README.md: humane tech has a new home on codeberg
reflect new home of humane tech by updating links to codeberg
2023-10-18 09:18:16 +02:00
Hypolite Petovan 2cd18fd4bf
Merge pull request #13551 from tobiasd/20231017-lng
DE, FR, HU, RU translation updates
2023-10-17 13:57:26 -04:00
Tobias Diekershoff 45c63baa5c DE, FR, HU, RU translation updates 2023-10-17 19:46:31 +02:00
Wladimir Palant b85a2709e8 Allow CORS requests to nodeinfo endpoints 2023-10-16 20:10:36 -04:00
Hypolite Petovan bc4b036c76
Merge pull request #13533 from nupplaphil/feat/phpunit_upgrade
CI upgrade & Installer Check enabling
2023-10-15 17:39:58 -04:00
Hypolite Petovan d03506df51
Merge pull request #13547 from annando/exclude
Exclude classes from logging
2023-10-15 16:57:12 -04:00
Michael 4de03b0c11 Exclude classes from logging 2023-10-15 19:45:32 +00:00
Philipp Holzer 32c60bf2d0
Update messages.po 2023-10-15 21:29:53 +02:00
Philipp Holzer 32ac54d830
Fix SmiliesTest
Reduce noise because of wrong '<?php' test-data
2023-10-15 21:29:53 +02:00
Philipp Holzer 4bcf5e07c0
Adjust InstallerTest 2023-10-15 15:49:02 +02:00
Philipp Holzer 3ca277e2b2
Add intlChar Installer-Check 2023-10-15 15:49:00 +02:00
Philipp Holzer f3f148a0db
Upgrade PHP version in PHP-CI 2023-10-15 15:48:59 +02:00
Hypolite Petovan c711208237
Merge pull request #13543 from annando/issue-13535
Issue 13535: Handle Firefish chat messages
2023-10-15 09:12:10 -04:00
Michael 3a7fc22f51 Updated messages.po 2023-10-15 08:28:03 +00:00
Michael 54b9a0320b Merge remote-tracking branch 'upstream/2023.09-rc' into issue-13535 2023-10-15 08:13:32 +00:00
Michael Vogel a5fb1e53a9
Merge pull request #13544 from MrPetovan/bug/13542-frio-circle-search
[frio] Add search in contact address to filter circle member list
2023-10-15 08:03:50 +02:00
Hypolite Petovan a1fb0f848c [frio] Add search in contact address to filter circle member list 2023-10-15 00:48:44 -04:00
Michael 3f9783f288 Issue 13535: Handle Firefish chat messages 2023-10-15 03:34:37 +00:00
Michael Vogel e99fcfddb5
Merge pull request #13541 from MrPetovan/bug/13534-image-blurred
Drop using the proxy large size for image preview
2023-10-14 23:40:18 +02:00
Hypolite Petovan f19cd54195 Drop using the proxy large size for image preview
- It was causing blurry upscaling with portrait images that have a 640px size preview.
2023-10-14 16:05:01 -04:00
Hypolite Petovan 938b2bae23 Align proxy sizes to photo preview sizes
- PIXEL_SMALL goes from 300 to 320
- PIXEL_MEDIUM goes from 600 to 640
- Use Proxy pixel constants where we used hard-coded pixel values
2023-10-14 16:05:01 -04:00
Hypolite Petovan 4a67771bfa
Merge pull request #13539 from annando/channel-improvements
Channels: Larger fields, better error handling
2023-10-14 15:57:49 -04:00
Michael b1cf8ee4df Updated messages.po 2023-10-14 19:09:45 +00:00
Michael fce82deabc Merge remote-tracking branch 'upstream/2023.09-rc' into channel-improvements 2023-10-14 19:06:35 +00:00
Michael Vogel e0d4646c18
Merge pull request #13314 from MrPetovan/bug/13311-removeme-delegate
Add safeguards to user self-removal feature
2023-10-14 20:53:09 +02:00
Michael be394b573d Channels: Larger fields, better error handling 2023-10-14 18:39:35 +00:00
Hypolite Petovan 7ca25b7297 Updated main translation file after adding strings 2023-10-14 14:25:20 -04:00
Hypolite Petovan b29a68d467 Add exception when authentication returns different user id than logged in in Settings\RemoveMe 2023-10-14 14:15:42 -04:00
Hypolite Petovan 1f7b6a63bb Throw exception when user has delegates in User::remove 2023-10-14 14:15:41 -04:00
Hypolite Petovan 3a42849759 Add current user's hovercard to removeme page
- Extract Hovercard generation to Content\Widget
2023-10-14 14:15:41 -04:00
Hypolite Petovan e6855d3125 Refactor Delegation modules
- Remove dependency on DI
- Group translation labels in template variables
- Reformat tempate code
2023-10-14 14:15:40 -04:00
Michael Vogel c98a0a99a6
Merge pull request #13530 from MrPetovan/bug/json-error-factory-error
Move jsonError out of Factory\Api\Mastodon\Error
2023-10-14 19:35:49 +02:00
Hypolite Petovan a0da13cf6b
Merge pull request #13384 from annando/smilies
Posts without text or only with emojis are now always accepted in the language check
2023-10-14 12:46:49 -04:00
Michael Vogel 8bf4408e64
Merge pull request #13536 from tobiasd/20231014-ru
updated RU translations
2023-10-14 09:43:39 +02:00
Tobias Diekershoff bf5e2facb4 updated RU translations 2023-10-14 09:19:30 +02:00
Michael e558a83783 Improved Emoji detection 2023-10-13 21:55:15 +00:00
Michael d1eb1ec0f4 Use "IntlChar" for the emoji detection 2023-10-12 21:23:08 +00:00
Michael 19529e2aa1 Merge remote-tracking branch 'upstream/2023.09-rc' into smilies 2023-10-12 20:49:20 +00:00
Hypolite Petovan 71ec402adc
Merge pull request #13531 from annando/language-detection
The language detection is now done in blocks
2023-10-12 07:38:08 -04:00
Michael aeba70f2a6 Language description updated 2023-10-12 05:19:57 +00:00
Michael Vogel 47c15d330f
Update src/Core/Installer.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-10-11 22:58:14 +02:00
Michael 407f46c043 Exit when the class doen't exists 2023-10-11 20:41:40 +00:00
Michael 35991bc0e1 messager.po 2023-10-11 20:36:25 +00:00
Michael d658908abe Deactivate the check 2023-10-11 20:28:10 +00:00
Michael 12337be827 Updated messages.po 2023-10-11 20:21:55 +00:00
Michael 38c599d681 Merge remote-tracking branch 'upstream/2023.09-rc' into language-detection 2023-10-11 20:20:02 +00:00
Hypolite Petovan 2eb7de84df
Merge pull request #13527 from xundeenergie/flip-replyto-link
[frio] Flip replyto link
2023-10-11 16:03:17 -04:00
Michael 42919a2be3 Deactivated check 2023-10-11 19:43:42 +00:00
Michael 6459614f34 Updated messages.po - again 2023-10-11 19:30:02 +00:00
Michael 89adffe72e Merge remote-tracking branch 'upstream/2023.09-rc' into language-detection 2023-10-11 19:27:10 +00:00
Michael 9e11b0e317 Updated german install documentation 2023-10-11 19:25:58 +00:00
Michael e6f8f8520c Updated'messages.po 2023-10-11 19:22:18 +00:00
Michael a6bbbd738f Added check for IntlChar module 2023-10-11 19:20:51 +00:00
Jakobus Schürz 62012286a0 run gettext 2023-10-11 21:05:55 +02:00
Michael f4591b2cc7 The language detection is now done in blocks 2023-10-11 18:38:14 +00:00
xundeenergie c7f1c30f89
Update src/Object/Post.php
Rename from 'parent unknown' to 'Unkknown parent"

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-10-11 20:33:49 +02:00
Jakobus Schürz 1031bc1801 change last occurances isreplyto to inreplyto 2023-10-11 17:07:37 +02:00
Jakobus Schürz b864d87344 translations 2023-10-11 17:03:27 +02:00
Jakobus Schürz 9526daa5b7 change isreplyto to inreplyto 2023-10-11 17:02:24 +02:00
Hypolite Petovan 5d428ac8af Add newly required constructor parameter to BaseApi-related tests 2023-10-11 10:17:32 -04:00
xundeenergie 035c9dbfa7
Update src/Object/Post.php
Sugfestion accepted

Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-10-11 15:55:02 +02:00
Hypolite Petovan 1b9ec3a214 Rename BaseApi->logErrorAndJsonExit to logAndJsonError to better match the functionality
- Also it's shorter and we're paying by the character
2023-10-11 09:44:03 -04:00
Hypolite Petovan eb583330df Remove obsolete Factory\Api\Mastodon\Error->logError method and related dependencies 2023-10-11 09:44:03 -04:00
Hypolite Petovan 0a91484fa0 Move jsonError out of Factory\Api\Mastodon\Error->InternalError 2023-10-11 09:44:03 -04:00
Hypolite Petovan 696c56b6be Move jsonError out of Factory\Api\Mastodon\Error->Forbidden 2023-10-11 09:44:03 -04:00
Hypolite Petovan 6a2ca1a6b6 Move jsonError out of Factory\Api\Mastodon\Error->Unauthorized 2023-10-11 09:44:03 -04:00
Hypolite Petovan 7486ebdc10 Move jsonError out of Factory\Api\Mastodon\Error->UnprocessableEntity 2023-10-11 09:44:03 -04:00
Hypolite Petovan 7f846f153d Move jsonError out of Factory\Api\Mastodon\Error->RecordNotFound 2023-10-11 09:44:02 -04:00
Hypolite Petovan 9e71610711 Make BaseApi->checkAllowedScope into an object method
- It isn't called from static contexts anymore
2023-10-11 09:43:57 -04:00
Hypolite Petovan f70a64891c Add Factory\Api\Mastodon\Error dependency to BaseApi
- Copy Factory\Api\Mastodon\Error->logError functionality to BaseApi
2023-10-11 09:43:54 -04:00
Jakobus Schürz de28a375c8 Merge branch '2023.09-rc' into flip-replyto-link 2023-10-11 14:23:13 +02:00
Jakobus Schürz 4ce3b27e65 translation 2023-10-11 14:19:04 +02:00
Hypolite Petovan 48be5a534d
Merge pull request #13529 from xundeenergie/send-with-ctrlenter
[frio] fix commenting on 1st comment level
2023-10-11 07:42:50 -04:00
Jakobus Schürz dd851c8eeb fix commenting on 1st comment level 2023-10-11 08:38:05 +02:00
Tobias Diekershoff ee6061d3dd
Merge pull request #13528 from xundeenergie/send-with-ctrlenter
send on ctrl+enter - resolves #13039
2023-10-11 06:52:12 +02:00
Jakobus Schürz 67a6899ed7 send on ctrl+enter
in
* comments
* prv_messages
* composer
* jot
2023-10-11 04:09:44 +02:00
Jakobus Schürz 9898e5483a translations 2023-10-11 02:11:16 +02:00
Jakobus Schürz 08b45a32a5 Merge branch '2023.09-rc' into flip-replyto-link 2023-10-11 02:07:47 +02:00
Hypolite Petovan 1723aa0697
Merge pull request #13525 from annando/api-pictures
Fix images in the API
2023-10-10 09:16:31 -04:00
Jakobus Schürz 19e3e49fdc translations 2023-10-09 20:28:01 +02:00
Jakobus Schürz 1d49fdbd8d Merge branch '2023.09-rc' into flip-replyto-link 2023-10-09 20:24:14 +02:00
Hypolite Petovan 2673c667b5 Add a couple of missing fields in Content\Item->localize
- Address "Undefined array key "author-alias"" in Content\Item->localize:323
2023-10-09 20:21:01 +02:00
Hypolite Petovan b4afb5fa5b Add callstack to log messages to better troubleshoot warning messages 2023-10-09 20:21:01 +02:00
Hypolite Petovan 6736187be6 Normalize template variables in Widget\VCard
- Display new links in vier
- Address https://github.com/friendica/friendica/issues/13157#issuecomment-1751750581
2023-10-09 20:21:01 +02:00
Jakobus Schürz 4b2e920957 show "parent unknown" when parent not federated
in some cases (visibility is private of parent comment), there is no
parent federated to my instance, and then the comment "hangs around"
with no information, why there is no parent.

For normal users this can be confusing, why all exept "this" comment
have parents.

So i added a simple text instead of link to parent with a "title" field
with a small explanation, why parent is not viewable.

translations done
2023-10-09 20:10:02 +02:00
Jakobus Schürz 45efa4ec87 set font-size of reply-to and shared-by to class time 2023-10-09 09:23:10 +02:00
Michael Vogel 947ad55185
Merge pull request #13518 from MrPetovan/bug/warnings
Normalize template variables in Widget\VCard
2023-10-09 05:29:06 +02:00
Jakobus Schürz c5506577d0 make reply-to link depending on screen-width
* on small/smartphone-screens show "reply to" link above the posting and
  an eventual "shared by" link in a second line.
* on middle/tablet-screens show "reply-to" and "shared-by" link in one
  line above the posting, divided by a dot.
* on large screens show reply-to-link next to the time/date-link when
  posting was posted.

the first to positions are better for users with thick fingers on
smartphones. (like me)

Change "in reply to" to "is reply to". Sounds better.

translations done
2023-10-09 01:56:18 +02:00
Jakobus Schürz 622cdeaad6 make reply-to link depending on screen-width
* on small/smartphone-screens show "reply to" link above the posting and
  an eventual "shared by" link in a second line.
* on middle/tablet-screens show "reply-to" and "shared-by" link in one
  line above the posting, divided by a dot.
* on large screens show reply-to-link next to the time/date-link when
  posting was posted.

the first to positions are better for users with thick fingers on
smartphones. (like me)

Change "in reply to" to "is reply to". Sounds better.
2023-10-09 01:47:47 +02:00
Michael cd9fc0ddec Fix images in the API 2023-10-08 19:49:18 +00:00
Tobias Diekershoff bffbde4639
Merge pull request #13522 from MrPetovan/task/expose-image-description
Add caption display for described images in Fancybox gallery
2023-10-08 18:38:59 +02:00
Hypolite Petovan 36eced28b8 Add caption display for described images in Fancybox gallery 2023-10-08 10:29:09 -04:00
Hypolite Petovan 2eab25e7c1 Add caption to described images without a preview 2023-10-08 10:28:17 -04:00
Hypolite Petovan 298973a7e3 Add a couple of missing fields in Content\Item->localize
- Address "Undefined array key "author-alias"" in Content\Item->localize:323
2023-10-08 08:55:48 -04:00
Hypolite Petovan 1506068f7c Add callstack to log messages to better troubleshoot warning messages 2023-10-08 08:37:41 -04:00
Hypolite Petovan c31c264b0b Normalize template variables in Widget\VCard
- Display new links in vier
- Address https://github.com/friendica/friendica/issues/13157#issuecomment-1751750581
2023-10-08 08:37:40 -04:00
Tobias Diekershoff 2c297da755
Merge pull request #13519 from annando/language
Check more fields for the language
2023-10-08 11:38:48 +02:00
Michael f37dd2cbc6 Messages.po again 2023-10-08 07:42:39 +00:00
Michael 51ad2f522a Messages.po updated 2023-10-08 07:26:24 +00:00
Michael 0c82974986 Check more fields for the language 2023-10-08 06:44:37 +00:00
Michael Vogel 8968c63fcc
Merge pull request #13517 from MrPetovan/bug/13506-inline-image-width-allocation
Set allocated max width for inline images we have dimensions of
2023-10-08 08:35:57 +02:00
Hypolite Petovan e22df99abd Set allocated max width for inline images we have dimensions of 2023-10-07 17:13:36 -04:00
Hypolite Petovan 6ec6c6e317
Merge pull request #13508 from xundeenergie/move-mentionbutton-to-navbar
[frio] move mention-button to navbar
2023-10-07 13:28:43 -04:00
Jakobus Schürz c4870a16d4 Merge branch '2023.09-rc' into move-mentionbutton-to-navbar 2023-10-07 19:01:07 +02:00
Jakobus Schürz 302eed95f7 add margin top to separate buttons, move button to navbar 2023-10-07 18:50:06 +02:00
Hypolite Petovan 560e297274
Merge pull request #13516 from MrPetovan/2023.09-rc
Revert "Merge pull request #13512 from MrPetovan/bug/13506-allocated-width"
2023-10-07 12:48:13 -04:00
Hypolite Petovan 35e15a13fb Revert "Merge pull request #13512 from MrPetovan/bug/13506-allocated-width"
This reverts commit d1e6a16cde, reversing
changes made to 6c9d3d42d3.
2023-10-07 12:46:20 -04:00
Tobias Diekershoff d1e6a16cde
Merge pull request #13512 from MrPetovan/bug/13506-allocated-width
Fix wrong template variable name when using content/image/single_with_height_allocation.tpl
2023-10-07 14:26:43 +02:00
Hypolite Petovan b8ead0539f Limit width of height allocated image to parent width 2023-10-07 06:09:52 -04:00
Hypolite Petovan 182a3a4663 Fix wrong template variable name when using content/image/single_with_height_allocation.tpl 2023-10-07 06:07:07 -04:00
Michael Vogel 6c9d3d42d3
Merge pull request #13514 from MrPetovan/bug/channel-classes
User Repository\UserDefinedChannel->selectByUid instead of Factory\UserDefinedChannel->getForUser
2023-10-07 12:03:02 +02:00
Hypolite Petovan 710f9eecb2 User Repository\UserDefinedChannel->selectByUid instead of Factory\UserDefinedChannel->getForUser
- Rename Repository\Channel to Repository\UserDefinedChannel
- Add new Collection\UserDefinedChannels class
- Move Factory\Timeline->createFromTableRow to Factory\UserDefinedChannel
2023-10-07 05:48:23 -04:00
Jakobus Schürz df48ae8e00 translations 2023-10-07 11:28:29 +02:00
Hypolite Petovan 8ac6d0ef04
Merge pull request #13507 from xundeenergie/finalize-mention-buttons
Finalize mention buttons
2023-10-07 05:23:19 -04:00
Hypolite Petovan ee0f8cd3c9
Merge pull request #13510 from annando/fix-thread-parent
Fix for the display of the thread parent
2023-10-07 05:22:40 -04:00
Jakobus Schürz e63092c708 translations 2023-10-07 11:07:41 +02:00
Jakobus Schürz 2636b19171 add blanks, suggested from codereview 2023-10-07 11:06:51 +02:00
Michael 30587f09b5 Fix for the display of the thread parent 2023-10-07 08:51:47 +00:00
Michael Vogel dd504f522f
Merge pull request #13509 from MrPetovan/bug/in-reply-to
Fix typo in "in reply to" base translation string
2023-10-07 09:34:18 +02:00
Hypolite Petovan af3151d4db Fix typo in "in reply to" base translation string 2023-10-07 02:31:56 -04:00
Hypolite Petovan ec9345efa6
Merge pull request #13448 from annando/user-defined-channels
Channels can now be created by users
2023-10-07 02:09:19 -04:00
Hypolite Petovan 5bc466de55
Merge pull request #13499 from xundeenergie/reference-links
add link to parent of comment
2023-10-06 23:40:13 -04:00
Jakobus Schürz 695fc58187 move mention-button to navbar
translations
2023-10-07 01:33:45 +02:00
Jakobus Schürz c6af5266cd add mention-/showgroup button also to profile/vcard.tpl
update translations
2023-10-07 01:28:23 +02:00
Jakobus Schürz 02b26f5969 put group-logic for "widget" to php-file 2023-10-07 01:23:29 +02:00
Jakobus Schürz 4ab03594cb Merge commit 'b3097da6f' into reference-links 2023-10-07 00:40:02 +02:00
Jakobus Schürz fc3dad8cea fix missing blank; translations 2023-10-07 00:10:15 +02:00
Jakobus Schürz 099141e0e5 translations update 2023-10-07 00:09:58 +02:00
Jakobus Schürz f1f92ccc29 use scrollToItem instead of own function
rename isanswerto and "Is answer to" to isreplyto and "is reply to"
2023-10-07 00:09:38 +02:00
Jakobus Schürz 3c7725183e change logic in if clause in case of codereview 2023-10-07 00:09:38 +02:00
Jakobus Schürz f42861c58d better display of parent-link 2023-10-07 00:09:38 +02:00
Jakobus Schürz 5747518ada update translations 2023-10-07 00:09:36 +02:00
Jakobus Schürz 4796bafafe add link to parent of comment 2023-10-07 00:09:06 +02:00
Michael b5df3cb104 Unneeded constructors removed 2023-10-06 21:08:33 +00:00
Tobias Diekershoff b3097da6f9 update translations
DE, FR and HU translations
2023-10-06 16:13:53 +02:00
Philipp Holzer 31c8256bc6 Update messages.po 2023-10-06 16:13:52 +02:00
Michael 97fbf70fa6 Fix: The calculation of unseen circles can now be deactivated again 2023-10-06 16:13:19 +02:00
Michael 3f6480c127 Clean channel confusion 2023-10-06 11:38:29 +00:00
Michael 134cbacf31 Updates messages.po 2023-10-06 10:02:27 +00:00
Michael 36a83d13f8 Merge remote-tracking branch 'upstream/2023.09-rc' into user-defined-channels 2023-10-06 10:00:09 +00:00
Jakobus Schürz 428884c621 translations update 2023-10-06 10:28:09 +02:00
Michael 22e0bb58d9 Channel class confusion solved 2023-10-06 08:20:17 +00:00
Michael Vogel 7e0923d53f
Merge pull request #13504 from tobiasd/20231006-lng
update DE, FR, HU translations
2023-10-06 10:08:43 +02:00
Tobias Diekershoff 3e7c1f0bd7 update translations
DE, FR and HU translations
2023-10-06 07:50:12 +02:00
Philipp 5b6e29b70a
Merge pull request #13502 from nupplaphil/fix/messages.po
Update messages.po
2023-10-05 22:27:35 +02:00
Philipp Holzer 9003bcf981
Update messages.po 2023-10-05 22:03:31 +02:00
Michael ed24d06e0c Now there are user defined channels 2023-10-05 19:10:20 +00:00
Michael bc3bdf3cb0 Merge remote-tracking branch 'upstream/2023.09-rc' into user-defined-channels 2023-10-05 18:19:38 +00:00
Tobias Diekershoff b60bbca8e4
Merge pull request #13500 from annando/unseen-circles
Fix: The calculation of unseen circles can now be deactivated again
2023-10-05 19:42:55 +02:00
Michael 174fa49b23 Fix: The calculation of unseen circles can now be deactivated again 2023-10-05 17:06:21 +00:00
Jakobus Schürz a82127092b use scrollToItem instead of own function
rename isanswerto and "Is answer to" to isreplyto and "is reply to"
2023-10-05 17:19:16 +02:00
Jakobus Schürz 63df9ffe2f change logic in if clause in case of codereview 2023-10-05 17:02:33 +02:00
Jakobus Schürz eda9ea962d better display of parent-link 2023-10-05 15:36:01 +02:00
Michael fbded95f65 Merge remote-tracking branch 'upstream/2023.09-rc' into user-defined-channels 2023-10-05 13:15:45 +00:00
Jakobus Schürz 36f8162793 update translations 2023-10-05 12:46:24 +02:00
Jakobus Schürz 268d441c48 add link to parent of comment 2023-10-05 12:39:31 +02:00
Michael aae5f006f9 Remove unneeded functions 2023-10-05 09:25:23 +00:00
Michael 6a86eeda10 Timeline classes are split into multiple classes 2023-10-05 05:36:12 +00:00
Michael 5d6e02bef3 Some more changes after review 2023-10-05 03:17:55 +00:00
Michael 73e9190ce7 Changes after review 2023-10-05 03:16:44 +00:00
Tobias Diekershoff eb50618fe8 set version for 2023.09-rc 2023-10-04 20:40:08 +02:00
Hypolite Petovan ec61cdac83
Merge pull request #13495 from xundeenergie/load-contact-photos-lazy
Load contact photos lazy
2023-10-04 09:47:47 -04:00
Jakobus Schürz 6adbdfc107 add loading="lazy" also to vier templates 2023-10-04 12:01:20 +02:00
Jakobus Schürz 3596b5e165 add loagin="lazy" to avatar-images too
resolves #13486

The loading of avatar-images still blocked the loading of notifications.

mostyl in frio!
now it's a big time improvement on loading friendica
2023-10-04 11:56:46 +02:00
Michael b8208974a4 Merge remote-tracking branch 'upstream/develop' into user-defined-channels 2023-10-04 09:40:32 +00:00
Tobias Diekershoff 0a13d7625f
Merge pull request #13488 from MrPetovan/bug/frio-search-result-padding
[frio] Remove superfluous padding from search results in mobile view
2023-10-04 08:17:12 +02:00
Tobias Diekershoff 2911895cdb
Merge pull request #13476 from MrPetovan/bug/13467-image-reliable-dimensions
Redux horizontal masonry, height allocation feature with ensured dimensions
2023-10-04 08:16:09 +02:00
Michael Vogel e81d775791
Merge pull request #13493 from MrPetovan/bug/13353-instancev2-source_url
Add support for source_url in Mastodon\InstanceV2
2023-10-04 07:59:11 +02:00
Tobias Diekershoff e45dbc9f6d
Merge pull request #13492 from MrPetovan/bug/13359-mastodon-short-urls
Restore support for Mastodon profile short-form URLs
2023-10-04 07:47:21 +02:00
Hypolite Petovan 705b2d4c41 Add support for source_url in Mastodon\InstanceV2 2023-10-03 20:55:15 -04:00
Hypolite Petovan 1df5003643 Restore support for Mastodon profile short-form URLs
- Running these URLs through WebFinger first allows to retrieve the canonical ActivityPub profile URL
2023-10-03 20:46:17 -04:00
Hypolite Petovan 753702da0e [frio] Remove superfluous padding from search results in mobile view 2023-10-03 20:10:38 -04:00
Hypolite Petovan 163a85c78f Add new horizontal masonry and image height allocation
- Move image templates to content/image sub-folder
2023-10-03 19:58:52 -04:00
Hypolite Petovan e01040a2e8 Remove $_SERVER superglobal dependency from Profile::addVisitorCookieForHTTPSigner 2023-10-03 19:58:52 -04:00
Hypolite Petovan 6d009a3e0f Add chunk method to BaseCollection
- Add test for BaseCollection->chunk
2023-10-03 19:58:52 -04:00
Hypolite Petovan 3333d4af88 Change parameter to PostMedias in Item::makeImageGrid
- Add dimension rescaling when updating the preview URL
2023-10-03 19:58:51 -04:00
Hypolite Petovan 5004471770 Move size to pixels conversion in its own method in Util\Proxy 2023-10-03 19:58:51 -04:00
Hypolite Petovan 4462ad6bf0 Replace split attachment code with PostMedia objects 2023-10-03 19:58:51 -04:00
Hypolite Petovan 1052f6fde0 Add DDD classes for post media entities 2023-10-03 19:58:50 -04:00
Hypolite Petovan 86cba639fc Add implementation of the Content-Type header value from the MIME type RFC
- Add tests for the new classes
2023-10-03 19:58:50 -04:00
Hypolite Petovan 8640afc82e
Merge pull request #13484 from xundeenergie/better-navigation
[frio] Better navigation
2023-10-03 17:13:42 -04:00
Hypolite Petovan 4376eedb96
Merge pull request #13491 from annando/language2
More languages / use profile text as fallback
2023-10-03 09:03:32 -04:00
Jakobus Schürz b42373d834 improve button-icon for groups in hovercard 2023-10-03 09:00:11 +02:00
Jakobus Schürz f95f846ef8 Merge remote-tracking branch 'upstream' into better-navigation 2023-10-03 08:56:36 +02:00
Jakobus Schürz 9cbad559a1 add self for unfollowed contact 2023-10-03 06:03:32 +02:00
Michael 557ef9acc9 Improved documentation 2023-10-03 04:01:54 +00:00
Faris 3a90e0f7f2 add lazy loading for images 2023-10-03 06:01:19 +02:00
Raroun 93a3c6ee59 added missing quotation mark 2023-10-03 06:01:19 +02:00
Raroun 51905cee45 added new tab for wall-titles too 2023-10-03 06:01:19 +02:00
Raroun 409f27c058 Frio: open links to source in a new browser tab 2023-10-03 06:01:19 +02:00
Tobias Diekershoff eea07a8e6d Updated the translations 2023-10-03 06:01:19 +02:00
Hypolite Petovan cb7b92282c Allow macOS users to use Ctrl + Cmd + Space to bring up the emoji picker in Friendica text fields
- Remove Backspace guard against changing page
- Clarify keyboard shortcut to pause automatic updates
2023-10-03 06:01:18 +02:00
Hypolite Petovan cf5beafec0 Move self key to $profile tamplate variable in hovercard.tpl template
- Simplify network and mention menu items by checking for group in Model\Contact::photoMenu
2023-10-02 21:34:49 -04:00
Michael 008c8dbf36 More languages / use profile text as fallback 2023-10-02 20:37:16 +00:00
Hypolite Petovan 3c20ffc22b
Merge pull request #13490 from FarisKarim/fix_13486
add lazy loading for images
2023-10-02 12:55:26 -04:00
Faris cfe159235a add lazy loading for images 2023-10-02 12:23:02 -04:00
Hypolite Petovan 5704a433f0
Merge pull request #13480 from Raroun/fix_13457
Frio: open links to source in a new browser tab
2023-10-02 08:42:43 -04:00
Hypolite Petovan 0c83cbffe3
Merge pull request #13489 from tobiasd/20231002-lng
Updated the translations
2023-10-02 08:33:33 -04:00
Jakobus Schürz 05f2cf9202 fix code because of review 2023-10-02 12:00:23 +02:00
Raroun cc61f7b160
added missing quotation mark 2023-10-02 11:01:22 +02:00
Raroun 6197ae3fe0
added new tab for wall-titles too 2023-10-02 10:39:49 +02:00
Tobias Diekershoff 298cf77a57 Updated the translations 2023-10-02 08:22:48 +02:00
Michael Vogel 22e960d8f8
Merge pull request #13485 from MrPetovan/bug/macos-keyboard-shortcuts
Allow macOS users to use Ctrl + Cmd + Space to bring up the emoji picker in Friendica text fields
2023-10-02 05:29:58 +02:00
Jakobus Schürz 8378edc95f regenerate xgettext 2023-10-02 00:00:54 +02:00
Jakobus Schürz 58a8169189 remove specific translation 2023-10-01 23:59:09 +02:00
Hypolite Petovan 1b72a1e72d Allow macOS users to use Ctrl + Cmd + Space to bring up the emoji picker in Friendica text fields
- Remove Backspace guard against changing page
- Clarify keyboard shortcut to pause automatic updates
2023-10-01 17:18:07 -04:00
Jakobus Schürz 6422892efc regenerate translations 2023-10-01 23:08:11 +02:00
Jakobus Schürz 2ee28e2db2 fix Typo 2023-10-01 23:07:51 +02:00
Jakobus Schürz f8a1b7ea56 Merge branch 'showgroup-button' into better-navigation 2023-10-01 22:59:27 +02:00
Jakobus Schürz 0183d33261 Merge branch 'add-mention-button' into better-navigation 2023-10-01 22:55:20 +02:00
Jakobus Schürz (admin) 1abd9d2ee2 add translation de for showgroup button 2023-10-01 22:45:55 +02:00
Jakobus Schürz (admin) bb654d6e34 add translations for de for mention-buttons 2023-10-01 22:38:55 +02:00
Jakobus Schürz (admin) 4b161b0d65 set variables for correct mentioning 2023-10-01 22:37:34 +02:00
Jakobus Schürz (admin) a06e6c7f47 remove mention-button from own profile 2023-10-01 22:36:53 +02:00
Jakobus Schürz (admin) 17d7432f0e set ! and @ on mentioning in hover-card 2023-10-01 14:59:37 +02:00
Jakobus Schürz (admin) 405161998e changes to fit to showgroup-button branch 2023-10-01 14:33:08 +02:00
Jakobus Schürz (admin) 78e9ee651f show "view group" in hovercard
but only on group-contacts.
rename all *forum to *group in code
2023-10-01 14:25:23 +02:00
Jakobus Schürz (admin) 9dfe39b83d set label in hovercard for mentionings 2023-10-01 14:03:03 +02:00
Jakobus Schürz (admin) ed9d20b291 Change label of mention-button
* "Mention" on users profile
* "Post to group" on group/forums profile
2023-10-01 12:53:06 +02:00
Jakobus Schürz (admin) 9f2d2d4ac1 add mention-buttons 2023-10-01 12:38:57 +02:00
Jakobus Schürz (admin) e6a4467557 add "Show Forum" Button to Profile 2023-10-01 12:34:56 +02:00
Michael 34521c228b Merge remote-tracking branch 'upstream/develop' into user-defined-channels 2023-10-01 08:23:05 +00:00
Hypolite Petovan 6503016676
Merge pull request #13483 from annando/languages
Additional languages / new hook for additional language detection
2023-10-01 02:50:55 -04:00
Michael 0840086a0a Renamed hook 2023-10-01 04:10:24 +00:00
Michael afb6913a2f Timelines are now an object instead of an array 2023-09-30 18:51:35 +00:00
Michael e7d65f2d12 Merge remote-tracking branch 'upstream/develop' into user-defined-channels 2023-09-30 18:44:12 +00:00
Michael e84a7e8c2a Additional languages / new hook for additional language detection 2023-09-30 15:51:53 +00:00
Hypolite Petovan ad414f33c9
Merge pull request #13482 from foss-/patch-6
Update jot-header.tpl
2023-09-30 11:33:20 -04:00
foss- bb64d08eaf
Update jot-header.tpl
replace `contains` by `includes` in the "view/theme/frio/templates/jot-header.tpl" file on line 227 to fix this error message (only doing the leg-work here, hope this helps)
2023-09-30 17:26:27 +02:00
Hypolite Petovan 6057146a41
Merge pull request #13479 from haheute/robots-txt-google-extended
Add Google-Extended to default robots.txt
2023-09-29 10:50:36 -04:00
Raroun e9f2b828d8 Frio: open links to source in a new browser tab 2023-09-29 16:39:50 +02:00
Hannes Heute 9d86ef767a Add Google-Extended to default robots.txt 2023-09-29 16:27:31 +02:00
Hypolite Petovan 9a4f2a4492
Merge pull request #13477 from haheute/event-css
add styling to event reminder
2023-09-29 09:40:29 -04:00
Hannes Heute a3fa8ec29a add styling to event reminder 2023-09-29 14:55:29 +02:00
Hypolite Petovan 70aacc8a5e
Merge pull request #13473 from annando/timelimit
There is now a time limit when fetching AP endpoints
2023-09-29 03:30:39 -04:00
Michael b54005c540 Changed parameter name 2023-09-29 04:50:36 +00:00
Michael badf0dd57f There is now a time limit when fetching AP endpoints 2023-09-28 08:04:52 +00:00
Michael Vogel a2a1d852e9
Merge pull request #13456 from MrPetovan/bug/cors-headers-rawcontent
Remove DI dependency for httpExit, httpError, jsonExit, jsonError and xmlExit
2023-09-27 06:01:16 +02:00
Michael 5e1c292927 Configuration for the maximum number of post engagement entries 2023-09-26 16:00:06 +00:00
Michael ae33a6bce1 Removed unused function 2023-09-26 05:08:42 +00:00
Michael 82684cd6cd Changes after review 2023-09-26 05:05:51 +00:00
Michael 84b38beb9a Improved link removal 2023-09-25 22:05:53 +00:00
Michael b2758f2cdd Merge remote-tracking branch 'upstream/develop' into user-defined-channels 2023-09-25 19:39:53 +00:00
Hypolite Petovan e014729206
Merge pull request #13469 from MrPetovan/bug/13467-image-reliable-dimensions
Revert pull request #13463
2023-09-25 11:59:04 -04:00
Michael 6ba26e65b8 Improved channel documentation 2023-09-25 11:19:06 +00:00
Hypolite Petovan ea4c597ac4 [frio] Change "Ignore thread" icon to slashed bell
- The slashed eye is better used for ignoring content, not notifications
2023-09-24 16:25:08 -04:00
Hypolite Petovan 56fb9be0f7 Revert "Merge pull request #13463 from MrPetovan/task/imagegrid-improvement"
This reverts commit dd7bea4bd1, reversing
changes made to ce16cd12ec.
2023-09-24 16:24:28 -04:00
Hypolite Petovan 642baa1f2a Rename ApipResponse->exit* methods to better show their meaning 2023-09-24 07:08:16 -04:00
Hypolite Petovan 960171c4e0 Remove dependency on super-globals in Module\Api\ApiResponse
- Updated DI dependencies to reflect the new parameters
- Updated tests to reflect the new parameters
2023-09-24 07:08:16 -04:00
Hypolite Petovan d165a96220 Move System::xmlExit to DFRN\Notify->xmlExit
- This will ensure headers set in BaseModule->run will be carried in xmlExit scenarios
- Deprecate xmlExit() method in Core\System
2023-09-24 07:08:15 -04:00
Hypolite Petovan 46180d7d5b Move System::jsonError to BaseModule->jsonError
- This will ensure headers set in BaseModule->run will be carried in jsonError scenarios
- Make BaseApi->checkThrottleLimit an object method to use BaseModule->jsonError
- Deprecate jsonError() method in Core\System
2023-09-24 07:08:15 -04:00
Hypolite Petovan 81279dad9e Move System::jsonExit to BaseModule->jsonExit
- This will ensure headers set in BaseModule->run will be carried in jsonExit scenarios
- Deprecate jsonExit() method in Core\System
2023-09-24 07:08:15 -04:00
Hypolite Petovan e424b7bacb Move System::httpError to BaseModule->httpError
- This will ensure headers set in BaseModule->run will be carried in httpError scenarios
- Deprecate httpError() method in Core\System
2023-09-24 07:08:15 -04:00
Hypolite Petovan da1416c07f Move System::httpExit to BaseModule->httpExit
- This will ensure headers set in BaseModule->run will be carried in httpExit scenarios
- Deprecate httpExit() method in Core\System
2023-09-24 07:08:15 -04:00
Hypolite Petovan 94e3dde2e3 Move dependency-less Page->exit to Core\System::echoResponse
- The method doesn't actually exit
- Fix a bug with header handling in System::echoResponse with numerical key header strings
  - Adding a full-string header with ICanCreateResponses->setHeader was resulting in a wrong header named after the numerical key
2023-09-24 07:08:14 -04:00
Tobias Diekershoff dd7bea4bd1
Merge pull request #13463 from MrPetovan/task/imagegrid-improvement
Rework image grid to horizontal masonry, allocate space for images to load
2023-09-24 12:59:10 +02:00
Tobias Diekershoff ce16cd12ec
Merge pull request #13465 from annando/quote-myself
Avoid quoting the own post
2023-09-24 12:51:59 +02:00
Hypolite Petovan d081f8e80c Add height allocation support for vier 2023-09-24 06:48:59 -04:00
Hypolite Petovan 06818a96c3 Add height allocation support for single images smaller than the available width 2023-09-24 06:47:18 -04:00
Michael 1dbc9bd472 Avoid quoting the own post 2023-09-24 10:18:50 +00:00
Hypolite Petovan c4657c4661 Add support for allocated height for inline images 2023-09-23 22:43:31 -04:00
Hypolite Petovan 86141eb363 Add height allocation to single post attached images
- Force single images to expand to the total width of the post
2023-09-23 22:20:17 -04:00
Hypolite Petovan fad760f46a Add icon placeholder for images in image grid 2023-09-23 22:20:16 -04:00
Hypolite Petovan 3cc469c0b7 Rework image grid into a horizontal masonry
- The new server-based horizontal masonry enables tightly packed image grids even with images of varying aspect ratios
- Additionally, the space an image takes is now allocated before it's loaded, reducing content shifting
2023-09-23 22:20:16 -04:00
Hypolite Petovan fc5e60e97b [frio] Change "Ignore thread" icon to slashed bell
- The slashed eye is better used for ignoring content, not notifications
2023-09-23 22:20:16 -04:00
Michael Vogel 3e314d2fc6
Merge pull request #13464 from MrPetovan/bug/13462-event-image-attendance
Restore attendance icons in event posts
2023-09-24 02:53:31 +02:00
Michael 9f23bee6e4 User defined channels can now base on circles/channels 2023-09-24 00:45:07 +00:00
Hypolite Petovan c822baa9c6 Restore attendance icons in event posts
- Co-authored by @mexon
2023-09-23 17:51:03 -04:00
Michael 2164787499 Channel documentation added 2023-09-23 14:46:15 +00:00
Michael 7c6d872964 Only add images 2023-09-22 20:12:10 +00:00
Michael aa429be4d9 Remove links from search text 2023-09-22 19:09:23 +00:00
Michael a8a9f93e09 Special search keywords added 2023-09-22 10:28:00 +00:00
Michael c66e841c38 Add author to the search content / fix sidebar link to channels 2023-09-22 05:16:46 +00:00
Michael 508d84b2b7 Use full text search 2023-09-21 23:27:05 +00:00
Michael fac76a33df Improved timeline menu 2023-09-21 20:43:14 +00:00
Michael 073da9735d Channels are now added to the settings menu 2023-09-21 06:49:07 +00:00
Michael c9f74cc55f Code standards 2023-09-20 21:42:37 +00:00
Michael 42e22ed91b Channel frontend added 2023-09-20 21:39:05 +00:00
Michael 1ec8b62b58 Merge remote-tracking branch 'upstream/develop' into user-defined-channels 2023-09-20 14:14:35 +00:00
Michael 63921ccfca Changed class names 2023-09-19 14:23:02 +00:00
Michael 5056c95d60 Show network elements in the channel widget 2023-09-19 10:20:15 +00:00
Michael 00eb6b01ff Fix selected timelines 2023-09-19 09:23:27 +00:00
Michael a2f119e18e Fix code standards 2023-09-19 09:09:20 +00:00
Michael d68572ea44 Channels can now be created by users 2023-09-19 09:05:28 +00:00
Hypolite Petovan 64b5f93a6a Add FIXME
- Current implementation is failing tests with emojis including the zero-width-joiner character, encoded on 3 bytes only.
2023-08-29 22:17:48 -04:00
Hypolite Petovan 059a111282 Add unit tests for Smilies::isEmojiPost
- Current implementation is failing tests with emojis including the zero-width-joiner character, encoded on 3 bytes only.
2023-08-29 22:16:09 -04:00
Michael Vogel 6ed440718d
Update src/Content/Smilies.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-08-29 04:59:27 +02:00
Michael 7ee07535f5 Move "html_entity_decode" 2023-08-28 20:53:31 +00:00
Michael 9066a6133c New function to replace blank characters 2023-08-28 20:24:20 +00:00
Michael 4dbb7dd3da Posts without text or only with emojis are now always accepted in the language check 2023-08-28 15:37:20 +00:00
1416 changed files with 94749 additions and 63212 deletions

View file

@ -1,7 +1,7 @@
name: my-friendica name: my-friendica
type: php type: php
docroot: "" docroot: ""
php_version: "7.3" php_version: "7.4"
webserver_type: apache-fpm webserver_type: apache-fpm
router_http_port: "80" router_http_port: "80"
router_https_port: "443" router_https_port: "443"
@ -17,7 +17,7 @@ use_dns_when_possible: true
composer_version: "1" composer_version: "1"
web_environment: [] web_environment: []
nodejs_version: "16" nodejs_version: "16"
webimage_extra_packages: [php7.3-gmp] webimage_extra_packages: [php7.4-gmp]
# Key features of ddev's config.yaml: # Key features of ddev's config.yaml:

View file

@ -1,15 +1,13 @@
matrix: matrix:
include: include:
- PHP_MAJOR_VERSION: 7.3
PHP_VERSION: 7.3.33
- PHP_MAJOR_VERSION: 7.4 - PHP_MAJOR_VERSION: 7.4
PHP_VERSION: 7.4.33 PHP_VERSION: 7.4.33
- PHP_MAJOR_VERSION: 8.0 - PHP_MAJOR_VERSION: 8.0
PHP_VERSION: 8.0.29 PHP_VERSION: 8.0.30
- PHP_MAJOR_VERSION: 8.1 - PHP_MAJOR_VERSION: 8.1
PHP_VERSION: 8.1.21 PHP_VERSION: 8.1.23
- PHP_MAJOR_VERSION: 8.2 - PHP_MAJOR_VERSION: 8.2
PHP_VERSION: 8.2.8 PHP_VERSION: 8.2.11
# This forces PHP Unit executions at the "opensocial" labeled location (because of much more power...) # This forces PHP Unit executions at the "opensocial" labeled location (because of much more power...)
labels: labels:
@ -69,9 +67,9 @@ steps:
- if [ "${PHP_MAJOR_VERSION}" = "7.4" -a "${CI_REPO}" = "friendica/friendica" ]; then - if [ "${PHP_MAJOR_VERSION}" = "7.4" -a "${CI_REPO}" = "friendica/friendica" ]; then
phpenmod xdebug; phpenmod xdebug;
export XDEBUG_MODE=coverage; export XDEBUG_MODE=coverage;
phpunit --configuration tests/phpunit.xml --coverage-clover clover.xml; phpunit --configuration tests/phpunit.xml -d memory_limit=-1 --coverage-clover clover.xml;
else else
phpunit --configuration tests/phpunit.xml; phpunit --configuration tests/phpunit.xml -d memory_limit=-1;
fi fi
codecov: codecov:
image: friendicaci/codecov image: friendicaci/codecov

121
CHANGELOG
View file

@ -1,10 +1,129 @@
Version 2023.09 (unreleased) Version 2024.03 (unreleased)
Friendica Core Friendica Core
Friendica Addons Friendica Addons
Closed Issues Closed Issues
Version 2023.12 (2023-12-24)
Friendica Core
Raised minimal PHP version to 7.4
Updates to the translations AR, BG, CA, CS, DE, EN GB, EN US, EO, ES, ET, FI, FR, GD, HU, IS, IT, JA, NL, PL, RO, RU, SV
Updates to the themes (frio, vier) [AlfredSK, annando, anubis2814, haheute, foss-, MrPetovan, Raroun, xundeenergie]
Updates to the documentation [AndyHee, BirdboyBolu, foss-, MrPetovan]
Fixed a bug in notification links [annando, keithhacks]
Fixed a bug in content negotiation [GidiKroon]
Fixed the link in invitations [Raroun]
Fixed 0Auth connection with Buffer and redirection problems [annando, HankG]
Fixed a visibility bug with Calendar entries [MrPetovan]
Fixed a JsonLD parsing issue [annando]
Fixed confusion about nickname and username [MrPetovan, Raroun]
Fixed a problem with viewing remote contact profiles [MrPetovan]
Fixed a bug with previewing linked postings [annando]
Fixed a problem parsing Mastodon WebFingers [MrPetovan]
Fixed a bug that could lead to deleting your own account unintended [MrPetovan]
Fixed redirection in 2FA settings page [MrPetovan]
Fixed a problem with distributing some comments [annando]
Fixed a bug that caused public groups not being able to hide members [annando]
Fixed RSS/Atom feed of group accounts [MrPetovan]
Fixed a bug that prevented bi-directional delivery of DMs [annando]
Fixed a bug in privacy settings for remote-self [annando]
Fixed a bug that prevented the selection of photos with captions [Raroun]
Fixed a bug in Magic Auth [git-marijus]
Fixed a bug convertig local tags to external on receiving updates to the post [annando]
Improved Bluesky connector core [annando]
Improved SSL handling of reverse http proxies [MrPetovan]
Improved performance [annando]
Improved language detection [annando]
Improved display of contact relationships [annando]
Improved display of notifications [annando, MrPetovan]
Improved Mastodon compatible API [annando, gudzpoz, HankG, MrPetovan, Quix0r]
Improved federation with Diaspora, Firefish, GoToSocial, Lemmy, Pixelfed, Threads [annando]
Improved display of quoted posts [annando]
Improved BBCode conversion [annando]
Improved addon hook loading [annando, nupplaphil]
Improved handling of relay servers [annando]
Improved blocked users feature [MrPetovan]
Improved robots.txt to include ChatGPT and Google Extended [annando, haheute]
Improved handling of resizing images [annando]
Improved the image grid at the end of postings [MrPetovan]
Improved raw content output [annando]
Improved handling of smileys [gudzpoz]
Improved the admin panel [annando]
Improved handling of the background worker [annando]
Improved the processing of relayed posts [annando]
Improved compatibility with Mastodon Clients [annando]
Improved nodeinfo [MrPetovan]
Improved the federation statistics in the admin panel [annando]
General code cleanup [AlfredSK, annando, jlamothe, mexon, MrPetovan, nupplaphil, Quix0r, toddy15]
Renamed "group" to "circle"
Renamed "forum" to "group"
Added possibility to hide the server block list [MrPetovan, Quix0r]
Added creation of moderation reports [AlfredSK, annando, MrPetovan]
Added user controlled ignore server functionality [MrPetovan]
Added support for Unix domain sockets to Redis [MrPetovan]
Added user controlled channels for the network stream [annando]
Added support of MacOS emoji picker in text fields [MrPetovan]
Added lazy loading for images [FarisKarim, xundeenergie]
Added image caption display in Fancybox gallery [MrPetovan]
Added shortcut (ctrl+enter) to send postings using Frio theme [xundeenergie]
Added support for CORS requests to nodeinfo [palant]
Added setting for servers that should only receive limited profile information [annando]
Friendica Addons
Updates to the translation AR, CS, DE, ES, ET, FR, HU, IT, JA, NL, PL, RU, SV, ZH CN
Advancedcontentfilter
General code cleanup [MrPetovan]
Audon
Added audon addon [loma-one]
Blockem
Deprecated the addon [AndyHee]
Bluesky
Added bidirectional communication to the Bluesky connector [annando]
Added support for pinned postings [annando]
Added support for transmitted language [annando]
Improved thread handling [annando]
Improved handling of hashtags [annando]
Improved image uploading [annando]
CLD
Added addon for detection of the language of postings using CLD2 library [annando]
invidious
Added addon [loma-one]
langfilter
Use two letter codes for detected languages [annando]
Mailstream
Improved error handling [mexon]
Monolog
General code cleanup [nupplaphil]
NSFW
General code cleanup [MrPetovan]
pageheader
Improved styling of message box [loma-one]
s3_storage
Bumped library version [MrPetovan]
Showmore Dyn
Improved styling on mobile devices [csolisr]
Smileybutton
Improved conversation from float to int [MrPetovan]
Tumblr
Improved the import of feeds [annando]
Twitter
Improved image uploading [annando]
Removed the import of postings from Twitter [annando]
Closed Issues
8542, 10369, 12530, 12743, 12815, 13020, 13039, 13114, 13129,
13173, 13174, 13180, 13182, 13184, 13195, 13201, 13209, 13216,
13217, 13221, 13228, 13240, 13288, 13232, 13240, 13265, 13277,
13286, 13287, 13289, 13304, 13311, 13312, 13316, 13318, 13332,
13333, 13334, 13343, 13352, 13353, 13355, 13359, 13363, 13365,
13367, 13369, 13370, 13378, 13389, 13398, 13403, 13439, 13440,
13455, 13457, 13462, 13467, 13471, 13478, 13486, 13506, 13511,
13515, 13520, 13524, 13534, 13535, 13542, 13554, 13556, 13560,
13566, 13573, 13577, 13588, 13603, 13607, 13615, 13617, 13621,
13624, 13625, 13627, 13637, 13639, 13649, 13662, 13665, 13673,
13693, 13699, 13719, 13720, 13731, 13748
Version 2023.05 (2023-05-23) Version 2023.05 (2023-05-23)
Friendica Core Friendica Core
Updates to the translations HU, PL Updates to the translations HU, PL

View file

@ -31,6 +31,7 @@ Angristan
Anthronaut Anthronaut
Anton Anton
Antron Samurai Antron Samurai
Anubis2814
Arian - Cazare Muncitori Arian - Cazare Muncitori
Asher Pen Asher Pen
atjn atjn
@ -51,6 +52,7 @@ BinkaDroid
Bjoessi Bjoessi
bkil bkil
bob lebonche bob lebonche
Boluwatife Victor
Boris Daniel Martinez Millàn Boris Daniel Martinez Millàn
bufalo1973 bufalo1973
ButterflyOfFire ButterflyOfFire
@ -69,8 +71,8 @@ Christian Wiwie
Cohan Robinson Cohan Robinson
Colby Sollars Colby Sollars
Copiis Copiis
Copiis Praeesse
CrystalStiletto CrystalStiletto
csolisr
Cyboulette Cyboulette
Cyryl Sochacki Cyryl Sochacki
czarnystokrotek czarnystokrotek
@ -98,6 +100,7 @@ Eelco Maljaars
effex7 effex7
Elena Elena
emilia.krawczyk emilia.krawczyk
Entropy Engineer
Eric Côté Eric Côté
Erich Erich
erik erik
@ -108,10 +111,12 @@ F1per 3y
Fabian Dost Fabian Dost
Fabio Comuni Fabio Comuni
Farida Khalaf Farida Khalaf
Faris
felixgilles felixgilles
Filip Bugaj Filip Bugaj
Filip H.F. "FiXato" Slagter Filip H.F. "FiXato" Slagter
Finn Dean Finn Dean
Florent C.
FlxAlbroscheit FlxAlbroscheit
foss- foss-
Francesco Apruzzese Francesco Apruzzese
@ -121,10 +126,12 @@ Gerhard Seeber
gerhard6380 gerhard6380
Gert Cauwenberg Gert Cauwenberg
Gidi Kroon Gidi Kroon
git-marijus
GLComo GLComo
greeneyedred greeneyedred
Gregory Smith Gregory Smith
Grischa Brockhaus Grischa Brockhaus
groen
gudzpoz gudzpoz
GunChleoc GunChleoc
guzzisti guzzisti
@ -134,6 +141,7 @@ Hannes Heute
Hans Meine Hans Meine
Hauke Hauke
Hauke Altmann Hauke Altmann
Henrik Härkönen
Herbert Thielen Herbert Thielen
hlad hlad
hoergen hoergen
@ -156,6 +164,7 @@ Johannes Schwab
John Brazil John Brazil
John Mortensen John Mortensen
Jonatan Nyberg Jonatan Nyberg
Jonathan Lamothe
Jonny Tischbein Jonny Tischbein
Josef Moravek Josef Moravek
Josh Soref Josh Soref
@ -168,11 +177,13 @@ Karolina
Kastal András Kastal András
Keenan Pepper Keenan Pepper
Keith Fernie Keith Fernie
keithhacks
Klaus Weidenbach Klaus Weidenbach
Koyu Berteon Koyu Berteon
kPherox kPherox
Kris Kris
Kristoffer Grundström Kristoffer Grundström
ktlinux
KulikAlex KulikAlex
Lea1995polish Lea1995polish
Leberwurscht Leberwurscht
@ -254,6 +265,7 @@ Rain Hawk
Rainulf Pineda Rainulf Pineda
Ralf Thees Ralf Thees
ralph van der honing ralph van der honing
Raroun
Ratten Ratten
rcmaniac rcmaniac
RealKinetix RealKinetix
@ -269,6 +281,7 @@ Roland Häder
Ruud Schilders Ruud Schilders
rwa rwa
Ryan Voots Ryan Voots
S. Brusch
S.Krumbholz S.Krumbholz
Sakałoŭ Alaksiej Sakałoŭ Alaksiej
Sam Sam
@ -314,6 +327,7 @@ TiMESPLiNTER
Tino Tino
Tobias Diekershoff Tobias Diekershoff
Tobias Hößl Tobias Hößl
Tobias Quathamer
Tom Tom
Tom Aurlund Tom Aurlund
Tom Hu Tom Hu
@ -324,6 +338,7 @@ Torbjörn Andersson
TORminator TORminator
trebor trebor
tschlotfeldt tschlotfeldt
tslmuun
Tubuntu Tubuntu
Tupambae.org Tupambae.org
U-SOUND\mike U-SOUND\mike
@ -345,6 +360,7 @@ Waldemar Stoczkowski
Walter Bulbazor Walter Bulbazor
Wanting Chen Wanting Chen
Wil Tur Wil Tur
Wladimir Palant
Wouter Broers Wouter Broers
Xiaofei Xu Xiaofei Xu
XMPPはいいぞ XMPPはいいぞ

View file

@ -1,46 +1,30 @@
Friendica Social Communications Server Friendica - your open and free social network
====================================== =============================================
Welcome to the free social web. Welcome to the free social web. Friendica is a platform for decentralised social communication linking to other independent social and corporate services.
Friendica is a decentralised communications platform that integrates social communication. Our platform links to independent social projects and corporate services. Friendica connects you to a federated communications network of thousands of servers called the Fediverse.
Through various protocols you can interact with anyone on [Friendica]( https://friendi.ca), [Mastodon](https://joinmastodon.org), [Lemmy](https://join-lemmy.org/), [Diaspora](https://diasporafoundation.org), [Misskey](https://join.misskey.page), [Peertube](https://joinpeertube.org/), [Pixelfed](https://pixelfed.org/), [Pleroma](https://pleroma.social) and many more.
Receiving content from Tumblr, WordPress and RSS is also possible.
Friendica allows to import and mirror your content via add-ons such as ITTT and Buffer.
You can control the privacy scope of your content.
Our mission is to free friends, family and colleagues from data-harvesting corporations; we aim for social communication to be free and open, while flowing between any provider as easily as email does. Being part of the Fediverse allows you to be free from data-harvesting corporations.
Enjoy open social communication, independent of any specific provider.
Friendica connects you effortlessly to a federated communications network of several thousand servers, with more than half a million user registrations. You can directly connect to anyone on [Friendica]( https://friendi.ca), [Mastodon](https://joinmastodon.org/), [Diaspora](https://diasporafoundation.org/), [GnuSocial](https://gnu.io/social/), [Pleroma](https://pleroma.social/), or [Hubzilla](https://hubzilla.org/), regardless where each user profile is hosted. [Join Friendica](https://dir.friendica.social/servers) today or set up [your own Friendica instance](doc/Install.md).
With Friendica, you can also fully interact with anyone on Twitter and receive any content from Tumblr, Wordpress or RSS. Friendica allows you to integrate most things on the web via a range of addons such as ITTT, Buffer; you will be able to easily control your own data as you decide. ### Friendica on desktop
Join today and [get your Friendica profile!](https://dir.friendica.social/servers 'Join Friendica today!') ![Frio theme in desktop browser](images/screenshots/friendica-2023-12-frio-desktop.png?raw=true "Frio theme in desktop browser")
Have a look at the [installation documentation](doc/Install.md) for further information about installing and using Friendica. ### Friendica on mobile
### Friendica Screenshots <p float="left">
<img src="images/screenshots/friendica-2023-10-frio-mobile-timeline-dark-blue.png" width="370" alt="frio on mobile, dark color scheme">
| ![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") | <img src="images/screenshots/friendica-2023-10-frio-mobile-options-light-blue.png" width="370" alt="frio on mobile, light color scheme">
|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| </p>
| *Frio theme, mobile browser. Timeline and composer view.* |
| ![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-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-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-profile-2.png?raw=true "Frio theme in desktop browser") |
| *Number of new posts, in total and by circle.* |
| ![Frio theme in desktop browser](images/screenshots/friendica-frio-red-profile-1.png?raw=true "Frio theme in desktop browser") |
| *Calendar 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.* |
| ![Frio theme in desktop browser](images/screenshots/friendica-frio-brown-profile-2.png?raw=true "Frio theme in desktop browser") |
| *Number of visible contacts, standard browser.* |
| ![Frio theme in desktop browser](images/screenshots/friendica-frio-brown-profile-1.png?raw=true "Frio theme in desktop browser") |
| *Network posts chronologically ordered, standard browser.* |
| ![Vier theme in desktop browser](images/screenshots/friendica-vier-profile.png?raw=true "Vier theme in desktop browser") |
| *Vier theme, desktop browser. Public timeline view.* |
| ![Vier theme in desktop browser](images/screenshots/friendica-vier-community.png?raw=true "Vier theme in desktop browser") |
| *Vier theme, desktop browser. Community post displayed.* |
## Endorsements ## Endorsements
- [![Awesome Humane Tech](images/humane-tech-badge.svg)](https://github.com/humanetech-community/awesome-humane-tech) On August 12th 2020, Friendica was added to [the curated Awesome Humane Tech directory](https://github.com/humanetech-community/awesome-humane-tech) in [the "Fediverse" category](https://github.com/humanetech-community/awesome-humane-tech#fediverse). - Friendica is listed on [![Awesome Humane Tech](images/humane-tech-badge.svg)](https://codeberg.org/teaserbot-labs/delightful-humane-design) in the [Fediverse category](https://codeberg.org/teaserbot-labs/delightful-humane-design#fediverse).

View file

@ -1 +1 @@
2023.09-dev 2024.03-dev

View file

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

View file

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

View file

@ -1,7 +1,7 @@
#!/usr/bin/env php #!/usr/bin/env php
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -163,9 +163,14 @@ if (!$foreground) {
exit(1); exit(1);
} elseif ($pid) { } elseif ($pid) {
// The parent process continues here // The parent process continues here
if (!file_put_contents($pidfile, $pid)) {
echo "Pid file wasn't written.\n";
Logger::warning('Could not store pid file');
posix_kill($pid, SIGTERM);
exit(1);
}
echo 'Child process started with pid ' . $pid . ".\n"; echo 'Child process started with pid ' . $pid . ".\n";
Logger::notice('Child process started', ['pid' => $pid]); Logger::notice('Child process started', ['pid' => $pid]);
file_put_contents($pidfile, $pid);
exit(0); exit(0);
} }

View file

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

View file

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

View file

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

View file

@ -13,7 +13,7 @@
"issues": "https://github.com/friendica/friendica/issues" "issues": "https://github.com/friendica/friendica/issues"
}, },
"require": { "require": {
"php": ">=7.3", "php": ">=7.4",
"ext-ctype": "*", "ext-ctype": "*",
"ext-curl": "*", "ext-curl": "*",
"ext-dom": "*", "ext-dom": "*",
@ -44,7 +44,7 @@
"mattwright/urlresolver": "^2.0", "mattwright/urlresolver": "^2.0",
"michelf/php-markdown": "^1.7", "michelf/php-markdown": "^1.7",
"minishlink/web-push": "^6.0", "minishlink/web-push": "^6.0",
"mobiledetect/mobiledetectlib": "^2.8", "mobiledetect/mobiledetectlib": "^3.74",
"nikic/fast-route": "^1.3", "nikic/fast-route": "^1.3",
"paragonie/hidden-string": "^1.0", "paragonie/hidden-string": "^1.0",
"patrickschur/language-detection": "^5.0.0", "patrickschur/language-detection": "^5.0.0",
@ -53,7 +53,7 @@
"pragmarx/google2fa": "^5.0", "pragmarx/google2fa": "^5.0",
"pragmarx/recovery": "^0.2", "pragmarx/recovery": "^0.2",
"psr/clock": "^1.0", "psr/clock": "^1.0",
"psr/container": "^1.0", "psr/container": "^2.0",
"psr/log": "^1.1", "psr/log": "^1.1",
"seld/cli-prompt": "^1.0", "seld/cli-prompt": "^1.0",
"smarty/smarty": "^4", "smarty/smarty": "^4",
@ -102,7 +102,7 @@
}, },
"config": { "config": {
"platform": { "platform": {
"php": "7.3" "php": "7.4"
}, },
"autoloader-suffix": "Friendica", "autoloader-suffix": "Friendica",
"optimize-autoloader": true, "optimize-autoloader": true,

320
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "c208d7f5176358ea157f109c1c7d68dd", "content-hash": "082b16e2c88895f1a03d5b0ffe678ba7",
"packages": [ "packages": [
{ {
"name": "asika/simple-console", "name": "asika/simple-console",
@ -123,16 +123,16 @@
}, },
{ {
"name": "bower-asset/base64", "name": "bower-asset/base64",
"version": "1.2.0", "version": "1.3.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/davidchambers/Base64.js.git", "url": "https://github.com/davidchambers/Base64.js.git",
"reference": "0048721faa641f1519c4c081725f42da2ada5e9a" "reference": "22192690552ba07bf035f95a5d2d1a0e2f0ced46"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/davidchambers/Base64.js/zipball/0048721faa641f1519c4c081725f42da2ada5e9a", "url": "https://api.github.com/repos/davidchambers/Base64.js/zipball/22192690552ba07bf035f95a5d2d1a0e2f0ced46",
"reference": "0048721faa641f1519c4c081725f42da2ada5e9a", "reference": "22192690552ba07bf035f95a5d2d1a0e2f0ced46",
"shasum": "" "shasum": ""
}, },
"type": "bower-asset-library", "type": "bower-asset-library",
@ -150,7 +150,7 @@
"WTFPL" "WTFPL"
], ],
"description": "Base64 encoding and decoding", "description": "Base64 encoding and decoding",
"time": "2023-02-22T16:04:49+00:00" "time": "2023-09-18T21:37:26+00:00"
}, },
{ {
"name": "bower-asset/dompurify", "name": "bower-asset/dompurify",
@ -299,16 +299,16 @@
}, },
{ {
"name": "composer/ca-bundle", "name": "composer/ca-bundle",
"version": "1.3.5", "version": "1.4.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/composer/ca-bundle.git", "url": "https://github.com/composer/ca-bundle.git",
"reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd" "reference": "b66d11b7479109ab547f9405b97205640b17d385"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/74780ccf8c19d6acb8d65c5f39cd72110e132bbd", "url": "https://api.github.com/repos/composer/ca-bundle/zipball/b66d11b7479109ab547f9405b97205640b17d385",
"reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd", "reference": "b66d11b7479109ab547f9405b97205640b17d385",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -320,7 +320,7 @@
"phpstan/phpstan": "^0.12.55", "phpstan/phpstan": "^0.12.55",
"psr/log": "^1.0", "psr/log": "^1.0",
"symfony/phpunit-bridge": "^4.2 || ^5", "symfony/phpunit-bridge": "^4.2 || ^5",
"symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0"
}, },
"type": "library", "type": "library",
"extra": { "extra": {
@ -366,20 +366,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-01-11T08:27:00+00:00" "time": "2023-12-18T12:05:55+00:00"
}, },
{ {
"name": "dasprid/enum", "name": "dasprid/enum",
"version": "1.0.4", "version": "1.0.5",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/DASPRiD/Enum.git", "url": "https://github.com/DASPRiD/Enum.git",
"reference": "8e6b6ea76eabbf19ea2bf5b67b98e1860474012f" "reference": "6faf451159fb8ba4126b925ed2d78acfce0dc016"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/DASPRiD/Enum/zipball/8e6b6ea76eabbf19ea2bf5b67b98e1860474012f", "url": "https://api.github.com/repos/DASPRiD/Enum/zipball/6faf451159fb8ba4126b925ed2d78acfce0dc016",
"reference": "8e6b6ea76eabbf19ea2bf5b67b98e1860474012f", "reference": "6faf451159fb8ba4126b925ed2d78acfce0dc016",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -412,7 +412,7 @@
"enum", "enum",
"map" "map"
], ],
"time": "2023-03-01T18:44:03+00:00" "time": "2023-08-25T16:18:39+00:00"
}, },
{ {
"name": "divineomega/do-file-cache", "name": "divineomega/do-file-cache",
@ -591,20 +591,20 @@
}, },
{ {
"name": "ezyang/htmlpurifier", "name": "ezyang/htmlpurifier",
"version": "v4.16.0", "version": "v4.17.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/ezyang/htmlpurifier.git", "url": "https://github.com/ezyang/htmlpurifier.git",
"reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8" "reference": "bbc513d79acf6691fa9cf10f192c90dd2957f18c"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/523407fb06eb9e5f3d59889b3978d5bfe94299c8", "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/bbc513d79acf6691fa9cf10f192c90dd2957f18c",
"reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8", "reference": "bbc513d79acf6691fa9cf10f192c90dd2957f18c",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": "~5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0" "php": "~5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0"
}, },
"require-dev": { "require-dev": {
"cerdic/css-tidy": "^1.7 || ^2.0", "cerdic/css-tidy": "^1.7 || ^2.0",
@ -644,7 +644,7 @@
"keywords": [ "keywords": [
"html" "html"
], ],
"time": "2022-09-18T07:06:19+00:00" "time": "2023-11-17T15:01:25+00:00"
}, },
{ {
"name": "fgrosse/phpasn1", "name": "fgrosse/phpasn1",
@ -1037,16 +1037,16 @@
}, },
{ {
"name": "guzzlehttp/promises", "name": "guzzlehttp/promises",
"version": "1.5.2", "version": "1.5.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/guzzle/promises.git", "url": "https://github.com/guzzle/promises.git",
"reference": "b94b2807d85443f9719887892882d0329d1e2598" "reference": "67ab6e18aaa14d753cc148911d273f6e6cb6721e"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", "url": "https://api.github.com/repos/guzzle/promises/zipball/67ab6e18aaa14d753cc148911d273f6e6cb6721e",
"reference": "b94b2807d85443f9719887892882d0329d1e2598", "reference": "67ab6e18aaa14d753cc148911d273f6e6cb6721e",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1056,11 +1056,6 @@
"symfony/phpunit-bridge": "^4.4 || ^5.1" "symfony/phpunit-bridge": "^4.4 || ^5.1"
}, },
"type": "library", "type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.5-dev"
}
},
"autoload": { "autoload": {
"files": [ "files": [
"src/functions_include.php" "src/functions_include.php"
@ -1113,7 +1108,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2022-08-28T14:55:35+00:00" "time": "2023-05-21T12:31:43+00:00"
}, },
{ {
"name": "guzzlehttp/psr7", "name": "guzzlehttp/psr7",
@ -1322,24 +1317,6 @@
"html", "html",
"markdown" "markdown"
], ],
"funding": [
{
"url": "https://www.colinodell.com/sponsor",
"type": "custom"
},
{
"url": "https://www.paypal.me/colinpodell/10.00",
"type": "custom"
},
{
"url": "https://github.com/colinodell",
"type": "github"
},
{
"url": "https://www.patreon.com/colinodell",
"type": "patreon"
}
],
"time": "2020-07-01T00:34:03+00:00" "time": "2020-07-01T00:34:03+00:00"
}, },
{ {
@ -1624,31 +1601,33 @@
}, },
{ {
"name": "mobiledetect/mobiledetectlib", "name": "mobiledetect/mobiledetectlib",
"version": "2.8.41", "version": "3.74.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/serbanghita/Mobile-Detect.git", "url": "https://github.com/serbanghita/Mobile-Detect.git",
"reference": "fc9cccd4d3706d5a7537b562b59cc18f9e4c0cb1" "reference": "39582ab62f86b40e4edb698159f895929a29c346"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/serbanghita/Mobile-Detect/zipball/fc9cccd4d3706d5a7537b562b59cc18f9e4c0cb1", "url": "https://api.github.com/repos/serbanghita/Mobile-Detect/zipball/39582ab62f86b40e4edb698159f895929a29c346",
"reference": "fc9cccd4d3706d5a7537b562b59cc18f9e4c0cb1", "reference": "39582ab62f86b40e4edb698159f895929a29c346",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=5.0.0" "php": ">=7.4"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "~4.8.35||~5.7" "friendsofphp/php-cs-fixer": "^3.14",
"phpunit/phpunit": "^9.6",
"squizlabs/php_codesniffer": "^3.7"
}, },
"type": "library", "type": "library",
"autoload": { "autoload": {
"psr-0": { "psr-4": {
"Detection": "namespaced/" "Detection\\": "src/"
}, },
"classmap": [ "classmap": [
"Mobile_Detect.php" "src/MobileDetect.php"
] ]
}, },
"notification-url": "https://packagist.org/downloads/", "notification-url": "https://packagist.org/downloads/",
@ -1659,7 +1638,7 @@
{ {
"name": "Serban Ghita", "name": "Serban Ghita",
"email": "serbanghita@gmail.com", "email": "serbanghita@gmail.com",
"homepage": "http://mobiledetect.net", "homepage": "https://mobiledetect.net",
"role": "Developer" "role": "Developer"
} }
], ],
@ -1672,7 +1651,13 @@
"mobile detector", "mobile detector",
"php mobile detect" "php mobile detect"
], ],
"time": "2022-11-08T18:31:26+00:00" "funding": [
{
"url": "https://github.com/serbanghita",
"type": "github"
}
],
"time": "2023-10-27T16:28:04+00:00"
}, },
{ {
"name": "nikic/fast-route", "name": "nikic/fast-route",
@ -2915,16 +2900,16 @@
}, },
{ {
"name": "paragonie/sodium_compat", "name": "paragonie/sodium_compat",
"version": "v1.19.0", "version": "v1.20.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/paragonie/sodium_compat.git", "url": "https://github.com/paragonie/sodium_compat.git",
"reference": "cb15e403ecbe6a6cc515f855c310eb6b1872a933" "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/cb15e403ecbe6a6cc515f855c310eb6b1872a933", "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/e592a3e06d1fa0d43988c7c7d9948ca836f644b6",
"reference": "cb15e403ecbe6a6cc515f855c310eb6b1872a933", "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2993,26 +2978,26 @@
"secret-key cryptography", "secret-key cryptography",
"side-channel resistant" "side-channel resistant"
], ],
"time": "2022-09-26T03:40:35+00:00" "time": "2023-04-30T00:54:53+00:00"
}, },
{ {
"name": "patrickschur/language-detection", "name": "patrickschur/language-detection",
"version": "v5.1.0", "version": "v5.3.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/patrickschur/language-detection.git", "url": "https://github.com/patrickschur/language-detection.git",
"reference": "728f1434dcf126ce3ed7118567c014d80d7fdd9c" "reference": "b8da335336c09fa6814fe0ca0d6d506c357cd7b9"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/patrickschur/language-detection/zipball/728f1434dcf126ce3ed7118567c014d80d7fdd9c", "url": "https://api.github.com/repos/patrickschur/language-detection/zipball/b8da335336c09fa6814fe0ca0d6d506c357cd7b9",
"reference": "728f1434dcf126ce3ed7118567c014d80d7fdd9c", "reference": "b8da335336c09fa6814fe0ca0d6d506c357cd7b9",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"ext-json": "*", "ext-json": "*",
"ext-mbstring": "*", "ext-mbstring": "*",
"php": "^7.3 || ^8.0" "php": "^7.4 || ^8.0"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "^9.5.0" "phpunit/phpunit": "^9.5.0"
@ -3040,7 +3025,7 @@
"detection", "detection",
"language" "language"
], ],
"time": "2021-03-05T22:18:57+00:00" "time": "2023-08-18T22:46:39+00:00"
}, },
{ {
"name": "pear/console_table", "name": "pear/console_table",
@ -3099,16 +3084,16 @@
}, },
{ {
"name": "phpseclib/phpseclib", "name": "phpseclib/phpseclib",
"version": "3.0.19", "version": "3.0.34",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/phpseclib/phpseclib.git", "url": "https://github.com/phpseclib/phpseclib.git",
"reference": "cc181005cf548bfd8a4896383bb825d859259f95" "reference": "56c79f16a6ae17e42089c06a2144467acc35348a"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/cc181005cf548bfd8a4896383bb825d859259f95", "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/56c79f16a6ae17e42089c06a2144467acc35348a",
"reference": "cc181005cf548bfd8a4896383bb825d859259f95", "reference": "56c79f16a6ae17e42089c06a2144467acc35348a",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3201,7 +3186,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-03-05T17:13:09+00:00" "time": "2023-11-27T11:13:31+00:00"
}, },
{ {
"name": "pragmarx/google2fa", "name": "pragmarx/google2fa",
@ -3478,22 +3463,27 @@
}, },
{ {
"name": "psr/container", "name": "psr/container",
"version": "1.1.1", "version": "2.0.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/php-fig/container.git", "url": "https://github.com/php-fig/container.git",
"reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963",
"reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=7.2.0" "php": ">=7.4.0"
}, },
"type": "library", "type": "library",
"extra": {
"branch-alias": {
"dev-master": "2.0.x-dev"
}
},
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"Psr\\Container\\": "src/" "Psr\\Container\\": "src/"
@ -3518,20 +3508,20 @@
"container-interop", "container-interop",
"psr" "psr"
], ],
"time": "2021-03-05T17:36:06+00:00" "time": "2021-11-05T16:47:00+00:00"
}, },
{ {
"name": "psr/http-client", "name": "psr/http-client",
"version": "1.0.2", "version": "1.0.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/php-fig/http-client.git", "url": "https://github.com/php-fig/http-client.git",
"reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90",
"reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3567,7 +3557,7 @@
"psr", "psr",
"psr-18" "psr-18"
], ],
"time": "2023-04-10T20:12:12+00:00" "time": "2023-09-23T14:17:50+00:00"
}, },
{ {
"name": "psr/http-factory", "name": "psr/http-factory",
@ -3811,16 +3801,16 @@
}, },
{ {
"name": "smarty/smarty", "name": "smarty/smarty",
"version": "v4.3.1", "version": "v4.3.4",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/smarty-php/smarty.git", "url": "https://github.com/smarty-php/smarty.git",
"reference": "e28cb0915b4e3749bf57d4ebae2984e25395cfe5" "reference": "3931d8f54b8f7a4ffab538582d34d4397ba8daa5"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/smarty-php/smarty/zipball/e28cb0915b4e3749bf57d4ebae2984e25395cfe5", "url": "https://api.github.com/repos/smarty-php/smarty/zipball/3931d8f54b8f7a4ffab538582d34d4397ba8daa5",
"reference": "e28cb0915b4e3749bf57d4ebae2984e25395cfe5", "reference": "3931d8f54b8f7a4ffab538582d34d4397ba8daa5",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3868,7 +3858,7 @@
"keywords": [ "keywords": [
"templating" "templating"
], ],
"time": "2023-03-28T19:47:03+00:00" "time": "2023-09-14T10:59:08+00:00"
}, },
{ {
"name": "spomky-labs/base64url", "name": "spomky-labs/base64url",
@ -3933,16 +3923,16 @@
}, },
{ {
"name": "symfony/polyfill-intl-idn", "name": "symfony/polyfill-intl-idn",
"version": "v1.27.0", "version": "v1.28.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/polyfill-intl-idn.git", "url": "https://github.com/symfony/polyfill-intl-idn.git",
"reference": "639084e360537a19f9ee352433b84ce831f3d2da" "reference": "ecaafce9f77234a6a449d29e49267ba10499116d"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/ecaafce9f77234a6a449d29e49267ba10499116d",
"reference": "639084e360537a19f9ee352433b84ce831f3d2da", "reference": "ecaafce9f77234a6a449d29e49267ba10499116d",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3956,7 +3946,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "1.27-dev" "dev-main": "1.28-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/polyfill", "name": "symfony/polyfill",
@ -4013,20 +4003,20 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2022-11-03T14:55:06+00:00" "time": "2023-01-26T09:30:37+00:00"
}, },
{ {
"name": "symfony/polyfill-intl-normalizer", "name": "symfony/polyfill-intl-normalizer",
"version": "v1.27.0", "version": "v1.28.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
"reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -4038,7 +4028,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "1.27-dev" "dev-main": "1.28-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/polyfill", "name": "symfony/polyfill",
@ -4094,7 +4084,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2022-11-03T14:55:06+00:00" "time": "2023-01-26T09:26:14+00:00"
}, },
{ {
"name": "symfony/polyfill-php56", "name": "symfony/polyfill-php56",
@ -4163,16 +4153,16 @@
}, },
{ {
"name": "symfony/polyfill-php72", "name": "symfony/polyfill-php72",
"version": "v1.27.0", "version": "v1.28.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/polyfill-php72.git", "url": "https://github.com/symfony/polyfill-php72.git",
"reference": "869329b1e9894268a8a61dabb69153029b7a8c97" "reference": "70f4aebd92afca2f865444d30a4d2151c13c3179"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/70f4aebd92afca2f865444d30a4d2151c13c3179",
"reference": "869329b1e9894268a8a61dabb69153029b7a8c97", "reference": "70f4aebd92afca2f865444d30a4d2151c13c3179",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -4181,7 +4171,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "1.27-dev" "dev-main": "1.28-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/polyfill", "name": "symfony/polyfill",
@ -4232,7 +4222,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2022-11-03T14:55:06+00:00" "time": "2023-01-26T09:26:14+00:00"
}, },
{ {
"name": "ua-parser/uap-php", "name": "ua-parser/uap-php",
@ -4903,38 +4893,38 @@
}, },
{ {
"name": "mockery/mockery", "name": "mockery/mockery",
"version": "1.5.1", "version": "1.6.7",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/mockery/mockery.git", "url": "https://github.com/mockery/mockery.git",
"reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" "reference": "0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", "url": "https://api.github.com/repos/mockery/mockery/zipball/0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06",
"reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", "reference": "0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"hamcrest/hamcrest-php": "^2.0.1", "hamcrest/hamcrest-php": "^2.0.1",
"lib-pcre": ">=7.0", "lib-pcre": ">=7.0",
"php": "^7.3 || ^8.0" "php": ">=7.3"
}, },
"conflict": { "conflict": {
"phpunit/phpunit": "<8.0" "phpunit/phpunit": "<8.0"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "^8.5 || ^9.3" "phpunit/phpunit": "^8.5 || ^9.6.10",
"symplify/easy-coding-standard": "^12.0.8"
}, },
"type": "library", "type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.4.x-dev"
}
},
"autoload": { "autoload": {
"psr-0": { "files": [
"Mockery": "library/" "library/helpers.php",
"library/Mockery.php"
],
"psr-4": {
"Mockery\\": "library/Mockery"
} }
}, },
"notification-url": "https://packagist.org/downloads/", "notification-url": "https://packagist.org/downloads/",
@ -4945,12 +4935,20 @@
{ {
"name": "Pádraic Brady", "name": "Pádraic Brady",
"email": "padraic.brady@gmail.com", "email": "padraic.brady@gmail.com",
"homepage": "http://blog.astrumfutura.com" "homepage": "https://github.com/padraic",
"role": "Author"
}, },
{ {
"name": "Dave Marshall", "name": "Dave Marshall",
"email": "dave.marshall@atstsolutions.co.uk", "email": "dave.marshall@atstsolutions.co.uk",
"homepage": "http://davedevelopment.co.uk" "homepage": "https://davedevelopment.co.uk",
"role": "Developer"
},
{
"name": "Nathanael Esayeas",
"email": "nathanael.esayeas@protonmail.com",
"homepage": "https://github.com/ghostwriter",
"role": "Lead Developer"
} }
], ],
"description": "Mockery is a simple yet flexible PHP mock object framework", "description": "Mockery is a simple yet flexible PHP mock object framework",
@ -4967,7 +4965,7 @@
"test double", "test double",
"testing" "testing"
], ],
"time": "2022-09-07T15:32:08+00:00" "time": "2023-12-10T02:24:34+00:00"
}, },
{ {
"name": "myclabs/deep-copy", "name": "myclabs/deep-copy",
@ -5026,16 +5024,16 @@
}, },
{ {
"name": "nikic/php-parser", "name": "nikic/php-parser",
"version": "v4.15.4", "version": "v4.18.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/nikic/PHP-Parser.git", "url": "https://github.com/nikic/PHP-Parser.git",
"reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" "reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1bcbb2179f97633e98bbbc87044ee2611c7d7999",
"reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5074,7 +5072,7 @@
"parser", "parser",
"php" "php"
], ],
"time": "2023-03-05T19:49:14+00:00" "time": "2023-12-10T21:03:43+00:00"
}, },
{ {
"name": "phar-io/manifest", "name": "phar-io/manifest",
@ -5181,16 +5179,16 @@
}, },
{ {
"name": "phpunit/php-code-coverage", "name": "phpunit/php-code-coverage",
"version": "9.2.26", "version": "9.2.29",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
"reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6a3a87ac2bbe33b25042753df8195ba4aa534c76",
"reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5250,7 +5248,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2023-03-06T12:58:08+00:00" "time": "2023-09-19T04:57:46+00:00"
}, },
{ {
"name": "phpunit/php-file-iterator", "name": "phpunit/php-file-iterator",
@ -5479,16 +5477,16 @@
}, },
{ {
"name": "phpunit/phpunit", "name": "phpunit/phpunit",
"version": "9.6.7", "version": "9.6.15",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git", "url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "c993f0d3b0489ffc42ee2fe0bd645af1538a63b2" "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c993f0d3b0489ffc42ee2fe0bd645af1538a63b2", "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/05017b80304e0eb3f31d90194a563fd53a6021f1",
"reference": "c993f0d3b0489ffc42ee2fe0bd645af1538a63b2", "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5503,7 +5501,7 @@
"phar-io/manifest": "^2.0.3", "phar-io/manifest": "^2.0.3",
"phar-io/version": "^3.0.2", "phar-io/version": "^3.0.2",
"php": ">=7.3", "php": ">=7.3",
"phpunit/php-code-coverage": "^9.2.13", "phpunit/php-code-coverage": "^9.2.28",
"phpunit/php-file-iterator": "^3.0.5", "phpunit/php-file-iterator": "^3.0.5",
"phpunit/php-invoker": "^3.1.1", "phpunit/php-invoker": "^3.1.1",
"phpunit/php-text-template": "^2.0.3", "phpunit/php-text-template": "^2.0.3",
@ -5573,7 +5571,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-04-14T08:58:40+00:00" "time": "2023-12-01T16:55:19+00:00"
}, },
{ {
"name": "sebastian/cli-parser", "name": "sebastian/cli-parser",
@ -5855,16 +5853,16 @@
}, },
{ {
"name": "sebastian/diff", "name": "sebastian/diff",
"version": "4.0.4", "version": "4.0.5",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/diff.git", "url": "https://github.com/sebastianbergmann/diff.git",
"reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
"reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5913,7 +5911,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2020-10-26T13:10:38+00:00" "time": "2023-05-07T05:35:17+00:00"
}, },
{ {
"name": "sebastian/environment", "name": "sebastian/environment",
@ -6049,16 +6047,16 @@
}, },
{ {
"name": "sebastian/global-state", "name": "sebastian/global-state",
"version": "5.0.5", "version": "5.0.6",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git", "url": "https://github.com/sebastianbergmann/global-state.git",
"reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" "reference": "bde739e7565280bda77be70044ac1047bc007e34"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bde739e7565280bda77be70044ac1047bc007e34",
"reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", "reference": "bde739e7565280bda77be70044ac1047bc007e34",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6105,7 +6103,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2022-02-14T08:28:10+00:00" "time": "2023-08-02T09:26:13+00:00"
}, },
{ {
"name": "sebastian/lines-of-code", "name": "sebastian/lines-of-code",
@ -6477,16 +6475,16 @@
}, },
{ {
"name": "theseer/tokenizer", "name": "theseer/tokenizer",
"version": "1.2.1", "version": "1.2.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/theseer/tokenizer.git", "url": "https://github.com/theseer/tokenizer.git",
"reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
"reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6519,7 +6517,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2021-07-28T10:34:58+00:00" "time": "2023-11-20T00:12:19+00:00"
} }
], ],
"aliases": [], "aliases": [],
@ -6530,7 +6528,7 @@
"prefer-stable": false, "prefer-stable": false,
"prefer-lowest": false, "prefer-lowest": false,
"platform": { "platform": {
"php": ">=7.3", "php": ">=7.4",
"ext-ctype": "*", "ext-ctype": "*",
"ext-curl": "*", "ext-curl": "*",
"ext-dom": "*", "ext-dom": "*",
@ -6547,7 +6545,7 @@
}, },
"platform-dev": [], "platform-dev": [],
"platform-overrides": { "platform-overrides": {
"php": "7.3" "php": "7.4"
}, },
"plugin-api-version": "1.1.0" "plugin-api-version": "1.1.0"
} }

View file

@ -1,6 +1,6 @@
-- ------------------------------------------ -- ------------------------------------------
-- Friendica 2023.09-dev (Giant Rhubarb) -- Friendica 2024.03-dev (Yellow Archangel)
-- DB_UPDATE_VERSION 1534 -- DB_UPDATE_VERSION 1545
-- ------------------------------------------ -- ------------------------------------------
@ -73,8 +73,6 @@ CREATE TABLE IF NOT EXISTS `user` (
`blockwall` boolean NOT NULL DEFAULT '0' COMMENT 'Prohibit contacts to post to the profile page of the user', `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 unknown 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', `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 '',
`notify-flags` smallint unsigned NOT NULL DEFAULT 65535 COMMENT 'email notification options', `notify-flags` smallint unsigned NOT NULL DEFAULT 65535 COMMENT 'email notification options',
`page-flags` tinyint unsigned NOT NULL DEFAULT 0 COMMENT 'page/profile type', `page-flags` tinyint unsigned NOT NULL DEFAULT 0 COMMENT 'page/profile type',
`account-type` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '', `account-type` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '',
@ -492,6 +490,26 @@ CREATE TABLE IF NOT EXISTS `cache` (
INDEX `k_expires` (`k`,`expires`) INDEX `k_expires` (`k`,`expires`)
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Stores temporary data'; ) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Stores temporary data';
--
-- TABLE channel
--
CREATE TABLE IF NOT EXISTS `channel` (
`id` int unsigned NOT NULL auto_increment COMMENT '',
`uid` mediumint unsigned NOT NULL COMMENT 'User id',
`label` varchar(64) NOT NULL COMMENT 'Channel label',
`description` varchar(64) COMMENT 'Channel description',
`circle` int COMMENT 'Circle or channel that this channel is based on',
`access-key` varchar(1) COMMENT 'Access key',
`include-tags` varchar(1023) COMMENT 'Comma separated list of tags that will be included in the channel',
`exclude-tags` varchar(1023) COMMENT 'Comma separated list of tags that aren\'t allowed in the channel',
`full-text-search` varchar(1023) COMMENT 'Full text search pattern, see https://mariadb.com/kb/en/full-text-index-overview/#in-boolean-mode',
`media-type` smallint unsigned COMMENT 'Filtered media types',
`languages` mediumtext COMMENT 'Desired languages',
PRIMARY KEY(`id`),
INDEX `uid` (`uid`),
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='User defined Channels';
-- --
-- TABLE config -- TABLE config
-- --
@ -1217,6 +1235,23 @@ CREATE TABLE IF NOT EXISTS `post-category` (
FOREIGN KEY (`tid`) REFERENCES `tag` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT FOREIGN KEY (`tid`) REFERENCES `tag` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='post relation to categories'; ) DEFAULT COLLATE utf8mb4_general_ci COMMENT='post relation to categories';
--
-- TABLE post-counts
--
CREATE TABLE IF NOT EXISTS `post-counts` (
`uri-id` int unsigned NOT NULL COMMENT 'Id of the item-uri table entry that contains the item uri',
`vid` smallint unsigned NOT NULL COMMENT 'Id of the verb table entry that contains the activity verbs',
`reaction` varchar(1) NOT NULL COMMENT 'Emoji Reaction',
`parent-uri-id` int unsigned COMMENT 'Id of the item-uri table that contains the parent uri',
`count` int unsigned DEFAULT 0 COMMENT 'Number of activities',
PRIMARY KEY(`uri-id`,`vid`,`reaction`),
INDEX `vid` (`vid`),
INDEX `parent-uri-id` (`parent-uri-id`),
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`vid`) REFERENCES `verb` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
FOREIGN KEY (`parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Original remote activity';
-- --
-- TABLE post-collection -- TABLE post-collection
-- --
@ -1309,6 +1344,7 @@ CREATE TABLE IF NOT EXISTS `post-engagement` (
`contact-type` tinyint NOT NULL DEFAULT 0 COMMENT 'Person, organisation, news, community, relay', `contact-type` tinyint NOT NULL DEFAULT 0 COMMENT 'Person, organisation, news, community, relay',
`media-type` tinyint NOT NULL DEFAULT 0 COMMENT 'Type of media in a bit array (1 = image, 2 = video, 4 = audio', `media-type` tinyint NOT NULL DEFAULT 0 COMMENT 'Type of media in a bit array (1 = image, 2 = video, 4 = audio',
`language` varbinary(128) COMMENT 'Language information about this post', `language` varbinary(128) COMMENT 'Language information about this post',
`searchtext` mediumtext COMMENT 'Simplified text for the full text search',
`created` datetime COMMENT '', `created` datetime COMMENT '',
`restricted` boolean NOT NULL DEFAULT '0' COMMENT 'If true, this post is either unlisted or not from a federated network', `restricted` boolean NOT NULL DEFAULT '0' COMMENT 'If true, this post is either unlisted or not from a federated network',
`comments` mediumint unsigned COMMENT 'Number of comments', `comments` mediumint unsigned COMMENT 'Number of comments',
@ -1316,6 +1352,7 @@ CREATE TABLE IF NOT EXISTS `post-engagement` (
PRIMARY KEY(`uri-id`), PRIMARY KEY(`uri-id`),
INDEX `owner-id` (`owner-id`), INDEX `owner-id` (`owner-id`),
INDEX `created` (`created`), INDEX `created` (`created`),
FULLTEXT INDEX `searchtext` (`searchtext`),
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE, FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Engagement data per post'; ) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Engagement data per post';
@ -1513,7 +1550,8 @@ CREATE TABLE IF NOT EXISTS `post-user` (
INDEX `event-id` (`event-id`), INDEX `event-id` (`event-id`),
INDEX `psid` (`psid`), INDEX `psid` (`psid`),
INDEX `author-id_uid` (`author-id`,`uid`), INDEX `author-id_uid` (`author-id`,`uid`),
INDEX `author-id_received` (`author-id`,`received`), INDEX `author-id_created` (`author-id`,`created`),
INDEX `owner-id_created` (`owner-id`,`created`),
INDEX `parent-uri-id_uid` (`parent-uri-id`,`uid`), INDEX `parent-uri-id_uid` (`parent-uri-id`,`uid`),
INDEX `uid_wall_received` (`uid`,`wall`,`received`), INDEX `uid_wall_received` (`uid`,`wall`,`received`),
INDEX `uid_contactid` (`uid`,`contact-id`), INDEX `uid_contactid` (`uid`,`contact-id`),
@ -1574,11 +1612,17 @@ CREATE TABLE IF NOT EXISTS `post-thread-user` (
INDEX `post-user-id` (`post-user-id`), INDEX `post-user-id` (`post-user-id`),
INDEX `commented` (`commented`), INDEX `commented` (`commented`),
INDEX `received` (`received`), INDEX `received` (`received`),
INDEX `author-id_created` (`author-id`,`created`),
INDEX `owner-id_created` (`owner-id`,`created`),
INDEX `uid_received` (`uid`,`received`), INDEX `uid_received` (`uid`,`received`),
INDEX `uid_wall_received` (`uid`,`wall`,`received`), INDEX `uid_wall_received` (`uid`,`wall`,`received`),
INDEX `uid_commented` (`uid`,`commented`), INDEX `uid_commented` (`uid`,`commented`),
INDEX `uid_created` (`uid`,`created`),
INDEX `uid_starred` (`uid`,`starred`), INDEX `uid_starred` (`uid`,`starred`),
INDEX `uid_mention` (`uid`,`mention`), INDEX `uid_mention` (`uid`,`mention`),
INDEX `contact-id_commented` (`contact-id`,`commented`),
INDEX `contact-id_received` (`contact-id`,`received`),
INDEX `contact-id_created` (`contact-id`,`created`),
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE, FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`conversation-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE, FOREIGN KEY (`conversation-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT, FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
@ -1846,6 +1890,16 @@ CREATE TABLE IF NOT EXISTS `subscription` (
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Push Subscription for the API'; ) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Push Subscription for the API';
--
-- TABLE check-full-text-search
--
CREATE TABLE IF NOT EXISTS `check-full-text-search` (
`pid` int unsigned NOT NULL COMMENT 'The ID of the process',
`searchtext` mediumtext COMMENT 'Simplified text for the full text search',
PRIMARY KEY(`pid`),
FULLTEXT INDEX `searchtext` (`searchtext`)
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Check for a full text search match in user defined channels before storing the message in the system';
-- --
-- TABLE userd -- TABLE userd
-- --
@ -1970,6 +2024,65 @@ CREATE VIEW `circle-member-view` AS SELECT
INNER JOIN `contact` ON `group_member`.`contact-id` = `contact`.`id` INNER JOIN `contact` ON `group_member`.`contact-id` = `contact`.`id`
INNER JOIN `group` ON `group_member`.`gid` = `group`.`id`; INNER JOIN `group` ON `group_member`.`gid` = `group`.`id`;
--
-- VIEW post-counts-view
--
DROP VIEW IF EXISTS `post-counts-view`;
CREATE VIEW `post-counts-view` AS SELECT
`post-counts`.`uri-id` AS `uri-id`,
`post-counts`.`vid` AS `vid`,
`verb`.`name` AS `verb`,
`post-counts`.`reaction` AS `reaction`,
`post-counts`.`parent-uri-id` AS `parent-uri-id`,
`post-counts`.`count` AS `count`
FROM `post-counts`
INNER JOIN `verb` ON `verb`.`id` = `post-counts`.`vid`;
--
-- VIEW post-timeline-view
--
DROP VIEW IF EXISTS `post-timeline-view`;
CREATE VIEW `post-timeline-view` AS SELECT
`post-user`.`uid` AS `uid`,
`post-user`.`uri-id` AS `uri-id`,
`post-user`.`gravity` AS `gravity`,
`post-user`.`created` AS `created`,
`post-user`.`edited` AS `edited`,
`post-thread-user`.`commented` AS `commented`,
`post-user`.`received` AS `received`,
`post-thread-user`.`changed` AS `changed`,
`post-user`.`private` AS `private`,
`post-user`.`visible` AS `visible`,
`post-user`.`deleted` AS `deleted`,
`post-user`.`origin` AS `origin`,
`post-user`.`global` AS `global`,
`post-user`.`network` AS `network`,
`post-user`.`protocol` AS `protocol`,
`post-user`.`vid` AS `vid`,
`post-user`.`contact-id` AS `contact-id`,
`contact`.`blocked` AS `contact-blocked`,
`contact`.`readonly` AS `contact-readonly`,
`contact`.`pending` AS `contact-pending`,
`contact`.`rel` AS `contact-rel`,
`contact`.`uid` AS `contact-uid`,
`contact`.`self` AS `self`,
`post-user`.`author-id` AS `author-id`,
`author`.`blocked` AS `author-blocked`,
`author`.`hidden` AS `author-hidden`,
`author`.`gsid` AS `author-gsid`,
`post-user`.`owner-id` AS `owner-id`,
`owner`.`blocked` AS `owner-blocked`,
`owner`.`gsid` AS `owner-gsid`,
`post-user`.`causer-id` AS `causer-id`,
`causer`.`blocked` AS `causer-blocked`,
`causer`.`gsid` AS `causer-gsid`
FROM `post-user`
LEFT JOIN `post-thread-user` ON `post-thread-user`.`uri-id` = `post-user`.`parent-uri-id` AND `post-thread-user`.`uid` = `post-user`.`uid`
STRAIGHT_JOIN `contact` ON `contact`.`id` = `post-user`.`contact-id`
STRAIGHT_JOIN `contact` AS `author` ON `author`.`id` = `post-user`.`author-id`
STRAIGHT_JOIN `contact` AS `owner` ON `owner`.`id` = `post-user`.`owner-id`
LEFT JOIN `contact` AS `causer` ON `causer`.`id` = `post-user`.`causer-id`;
-- --
-- VIEW post-user-view -- VIEW post-user-view
-- --
@ -2070,6 +2183,7 @@ CREATE VIEW `post-user-view` AS SELECT
`author`.`blocked` AS `author-blocked`, `author`.`blocked` AS `author-blocked`,
`author`.`hidden` AS `author-hidden`, `author`.`hidden` AS `author-hidden`,
`author`.`updated` AS `author-updated`, `author`.`updated` AS `author-updated`,
`author`.`contact-type` AS `author-contact-type`,
`author`.`gsid` AS `author-gsid`, `author`.`gsid` AS `author-gsid`,
`author`.`baseurl` AS `author-baseurl`, `author`.`baseurl` AS `author-baseurl`,
`post-user`.`owner-id` AS `owner-id`, `post-user`.`owner-id` AS `owner-id`,
@ -2254,6 +2368,7 @@ CREATE VIEW `post-thread-user-view` AS SELECT
`author`.`blocked` AS `author-blocked`, `author`.`blocked` AS `author-blocked`,
`author`.`hidden` AS `author-hidden`, `author`.`hidden` AS `author-hidden`,
`author`.`updated` AS `author-updated`, `author`.`updated` AS `author-updated`,
`author`.`contact-type` AS `author-contact-type`,
`author`.`gsid` AS `author-gsid`, `author`.`gsid` AS `author-gsid`,
`post-thread-user`.`owner-id` AS `owner-id`, `post-thread-user`.`owner-id` AS `owner-id`,
`owner`.`uri-id` AS `owner-uri-id`, `owner`.`uri-id` AS `owner-uri-id`,
@ -2422,6 +2537,7 @@ CREATE VIEW `post-view` AS SELECT
`author`.`blocked` AS `author-blocked`, `author`.`blocked` AS `author-blocked`,
`author`.`hidden` AS `author-hidden`, `author`.`hidden` AS `author-hidden`,
`author`.`updated` AS `author-updated`, `author`.`updated` AS `author-updated`,
`author`.`contact-type` AS `author-contact-type`,
`author`.`gsid` AS `author-gsid`, `author`.`gsid` AS `author-gsid`,
`post`.`owner-id` AS `owner-id`, `post`.`owner-id` AS `owner-id`,
`owner`.`uri-id` AS `owner-uri-id`, `owner`.`uri-id` AS `owner-uri-id`,
@ -2567,6 +2683,7 @@ CREATE VIEW `post-thread-view` AS SELECT
`author`.`blocked` AS `author-blocked`, `author`.`blocked` AS `author-blocked`,
`author`.`hidden` AS `author-hidden`, `author`.`hidden` AS `author-hidden`,
`author`.`updated` AS `author-updated`, `author`.`updated` AS `author-updated`,
`author`.`contact-type` AS `author-contact-type`,
`author`.`gsid` AS `author-gsid`, `author`.`gsid` AS `author-gsid`,
`post-thread`.`owner-id` AS `owner-id`, `post-thread`.`owner-id` AS `owner-id`,
`owner`.`uri-id` AS `owner-uri-id`, `owner`.`uri-id` AS `owner-uri-id`,
@ -2849,8 +2966,6 @@ CREATE VIEW `owner-view` AS SELECT
`user`.`blockwall` AS `blockwall`, `user`.`blockwall` AS `blockwall`,
`user`.`hidewall` AS `hidewall`, `user`.`hidewall` AS `hidewall`,
`user`.`blocktags` AS `blocktags`, `user`.`blocktags` AS `blocktags`,
`user`.`unkmail` AS `unkmail`,
`user`.`cntunkmail` AS `cntunkmail`,
`user`.`notify-flags` AS `notify-flags`, `user`.`notify-flags` AS `notify-flags`,
`user`.`page-flags` AS `page-flags`, `user`.`page-flags` AS `page-flags`,
`user`.`account-type` AS `account-type`, `user`.`account-type` AS `account-type`,

View file

@ -23,10 +23,10 @@ If you do not have an OpenID address or do not wish to use OpenID, leave this fi
If you have an OpenID account elsewhere and wish to use it, enter the address into this field and click 'Register'. If you have an OpenID account elsewhere and wish to use it, enter the address into this field and click 'Register'.
Friendica will attempt to extract as much information as possible from your OpenID provider and return to this page with those items already filled in. Friendica will attempt to extract as much information as possible from your OpenID provider and return to this page with those items already filled in.
### Your Full Name ### Your Display Name
Please provide your full name **as you would like it to be displayed on this system**. Please provide your display name **as you would like it to be displayed on this system**.
Most people use their real name for this, but you're under no obligation to do so yourself. Some people use their real name for this, but you're under no obligation to do so yourself.
### Email Address ### Email Address

View file

@ -221,6 +221,15 @@ Please note: body contents are bbcode - not HTML
Called when receiving a post from another source. This may also be used to post local activity or system generated messages. Called when receiving a post from another source. This may also be used to post local activity or system generated messages.
`$b` is the item array of information to be stored in the database and the item body is bbcode. `$b` is the item array of information to be stored in the database and the item body is bbcode.
### detect_languages
Called after the language detection. This can be used for alternative language detection methods.
`$data` is an array:
- **text**: The text that is analyzed.
- **detected**: (input/output) Array of language codes detected in the related text. The array key is the language code, the array value the probability.
- **uri-id**: The Uri-Id of the item.
- **author-id**: The id of the author contact.
### addon_settings ### addon_settings
Called when generating the HTML for the addon settings page. Called when generating the HTML for the addon settings page.
`$data` is an array containing: `$data` is an array containing:
@ -800,6 +809,7 @@ Here is a complete list of all hook callbacks with file locations (as of 24-Sep-
### src/Model/Item.php ### src/Model/Item.php
Hook::callAll('detect_languages', $item);
Hook::callAll('post_local', $item); Hook::callAll('post_local', $item);
Hook::callAll('post_remote', $item); Hook::callAll('post_remote', $item);
Hook::callAll('post_local_end', $posted_item); Hook::callAll('post_local_end', $posted_item);

85
doc/Channels.md Normal file
View file

@ -0,0 +1,85 @@
Channels
=====
* [Home](help)
Channels are a way to discover new content or to display content that you might have missed otherwise.
There are several predefined channels, additionally you can create your own channels, based on some rules.
Channels only display posts from the last 24 hours (this value can be changed by the admin).
In the display settings in the section "Timelines" you can define which channels and other timelines you want to see in the "Channels" widget on the network page and which channels should appear in the menu bar at the top of the page.
Also in the display settings in the section "Channels" you can define all the languages that you want to see in your channels. Here you can select more than one language.
On the contact page you can define the channel frequency for every contact. The options are:
* Default frequency: Posts by this contact are displayed in the "for you" channel if you interact often with this contact or if a post reached some level of interaction.
* Display all posts of this contact: All posts from this contact will appear on the "for you" channel.
* Display only few posts: When a contact creates a lot of posts in a short period, this setting reduces the number of displayed posts in every channel.
* Never display posts: Posts from this contact will never be displayed in any channel.
Predefined Channels
---
* For you: Posts from contacts you interact with and who interact with you. In detail, it consists of:
* Posts from people you interact with on a more than average level.
* Posts from the accounts that you follow with a more than average number of interactions-
* Posts from accounts where you activated "notify on new posts" or where you have set the channel frequency accordingly.
* What's Hot: Posts with a more than average number of interactions.
* Language: Posts in your language.
* Followers: Posts from your followers that you don't follow.
* Sharers of sharers: Posts from accounts that are followed by accounts that you follow.
* Images: Posts with images.
* Audio: Posts with audio.
* Videos: Posts with videos.
User defined Channels
---
In the "Channels" settings you can create your own channels.
Each channel is defined by these values:
* Label: This value is mandatory and is used for the menu label.
* Description: A short description of the content. This can help to keep the overview, when you have got a lot of channels.
* Access Key: When you want to access this channel via an access key, you can define it here. Pay attention to not use an already used one.
* Circle: This defines the data source for this channel. By default it is set to the public timeline. There are some predefined values, like the accounts that you follow or the accounts that follow you. Also all of your circles can be selected.
* Include Tags: Comma separated list of tags. A post will be used when it contains any of the listed tags.
* Exclude Tags: Comma separated list of tags. If a post contain any of these tags, then it will not be part of nthis channel.
* Full Text Search: This can be used to include or exclude content, based on the content and some additional keywords. It uses the "boolean mode" operators from MariaDB: https://mariadb.com/kb/en/full-text-index-overview/#in-boolean-mode
* Images, Videos, Audio: When selected, you will see content with the selected media type. This can be combined. If none of these fields are checked, you will see any content, with or without attacked media.
Additional keywords for the full text search
---
Additionally to the search for content, there are additional keywords that can be used in the full text search:
* from - Use "from:nickname" or "from:nickname@domain.tld" to search for posts from a specific author.
* to - Use "from:nickname" or "from:nickname@domain.tld" to search for posts with the given contact as receiver.
* group - Use "from:nickname" or "from:nickname@domain.tld" to search for group post of the given group.
* server - Use "server:hostname" to search for posts from a specific server. In the case of group postings, the search text contains both the hostname of the group server and the author's hostname.
* source - The ActivityPub type of the post source. Use this for example to include or exclude group posts or posts from services (aka bots).
* source:person - The post is created by a regular user account.
* source:organization - The post is created by an organisation.
* source:group - The post is created by or distributed via a group.
* source:service - The posts originates from a service account. This source type is often used to mark bot accounts.
* source:application - The post is created by an application. This is most likely unused in the fediverse for post creation.
* tag - Use "tag:tagname" to search for a specific tag.
* network - Use this to include or exclude some networks from your channel.
* network:apub - ActivityPub (Used by the systems in the Fediverse)
* network:dfrn - Legacy Friendica protocol. Nowayday Friendica mostly uses ActivityPub.
* network:dspr - The Diaspora protocol is mainly used by Diaspora itself. Some other systems support the protocol as well like Hubzilla, Socialhome or Ganggo.
* network:feed - RSS/Atom feeds
* network:mail - Mails that had been imported via IMAP.
* network:stat - The OStatus protocol is mainly used by old GNU Social installations.
* network:dscs - Posts that are received by the Discourse connector.
* network:tmbl - Posts that are received by the Tumblr connector.
* network:bsky - Posts that are received by the Bluesky connector.
* platform - Use this to include or exclude some platforms from your channel, e.g. "+platform:friendica". In the case of group postings, the search text contains both the platform of the group server and the author's platform.
* visibility - You have the choice between different visibilities. You can only see unlisted or private posts that you have the access for.
* visibility:public
* visibility:unlisted
* visibility:private
Remember that you can combine these kerywords.
So for example you can create a channel with all posts that talk about the Fediverse - that aren't posted in the Fediverse with the search terms: "fediverse -network:apub -network:dfrn"

View file

@ -17,6 +17,7 @@ Friendica Documentation and Resources
* [Circles and Privacy](help/Circles-and-Privacy) * [Circles and Privacy](help/Circles-and-Privacy)
* [Tags and Mentions](help/Tags-and-Mentions) * [Tags and Mentions](help/Tags-and-Mentions)
* [Community Groups](help/Groups) * [Community Groups](help/Groups)
* [Channels](help/Channels)
* [Chats](help/Chats) * [Chats](help/Chats)
* Further information * Further information
* [Move your account](help/Move-Account) * [Move your account](help/Move-Account)

View file

@ -28,9 +28,9 @@ Due to the large variety of operating systems and PHP platforms in existence we
### Requirements ### Requirements
* Apache with mod-rewrite enabled and "Options All" so you can use a local `.htaccess` file * Apache with mod-rewrite enabled and "Options All" so you can use a local `.htaccess` file
* PHP 7.3+ (PHP8 is not fully supported yet) * PHP 7.4+
* PHP *command line* access with register_argc_argv set to true in the php.ini file * PHP *command line* access with register_argc_argv set to true in the php.ini file
* Curl, GD, GMP, PDO, mbstrings, MySQLi, hash, xml, zip and OpenSSL extensions * Curl, GD, GMP, PDO, mbstrings, MySQLi, hash, xml, zip, IntlChar and OpenSSL extensions
* The POSIX module of PHP needs to be activated (e.g. [RHEL, CentOS](http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7) have disabled it) * The POSIX module of PHP needs to be activated (e.g. [RHEL, CentOS](http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7) have disabled it)
* Some form of email server or email gateway such that PHP mail() works. * Some form of email server or email gateway such that PHP mail() works.
If you cannot set up your own email server, you can use the [phpmailer](https://github.com/friendica/friendica-addons/tree/develop/phpmailer) addon and use a remote SMTP server. If you cannot set up your own email server, you can use the [phpmailer](https://github.com/friendica/friendica-addons/tree/develop/phpmailer) addon and use a remote SMTP server.

View file

@ -77,11 +77,11 @@ Additionally to the setting in the admin panel, you can decide if registrations
To enable invitation based registration, you have to set the `invitation_only` setting to `true` in the `system` section of the [config/local.config.php](/help/Config) file. To enable invitation based registration, you have to set the `invitation_only` setting to `true` in the `system` section of the [config/local.config.php](/help/Config) file.
If you want to use this method, the registration policy has to be set to either *open* or *requires approval*. If you want to use this method, the registration policy has to be set to either *open* or *requires approval*.
#### Check Full Names #### Check Display Names
You may find a lot of spammers trying to register on your site. You may find a lot of spammers trying to register on your site.
During testing we discovered that since these registrations were automatic, the "Full Name" field was often set to just an account name with no space between first and last name. During testing we discovered that since these registrations were automatic, the "Display Name" field was often set to just an account name with no space between first and last name.
If you would like to support people with only one name as their full name, you may change this setting to true. If you would like to support people with only one name as their display name, you can leave this setting set to false.
Default is false. Default is false.
#### OpenID #### OpenID

View file

@ -17,6 +17,8 @@ Database Tables
| [arrived-activity](help/database/db_arrived-activity) | Id of arrived activities | | [arrived-activity](help/database/db_arrived-activity) | Id of arrived activities |
| [attach](help/database/db_attach) | file attachments | | [attach](help/database/db_attach) | file attachments |
| [cache](help/database/db_cache) | Stores temporary data | | [cache](help/database/db_cache) | Stores temporary data |
| [channel](help/database/db_channel) | User defined Channels |
| [check-full-text-search](help/database/db_check-full-text-search) | Check for a full text search match in user defined channels before storing the message in the system |
| [config](help/database/db_config) | main configuration storage | | [config](help/database/db_config) | main configuration storage |
| [contact](help/database/db_contact) | contact table | | [contact](help/database/db_contact) | contact table |
| [contact-relation](help/database/db_contact-relation) | Contact relations | | [contact-relation](help/database/db_contact-relation) | Contact relations |
@ -59,6 +61,7 @@ Database Tables
| [post-category](help/database/db_post-category) | post relation to categories | | [post-category](help/database/db_post-category) | post relation to categories |
| [post-collection](help/database/db_post-collection) | Collection of posts | | [post-collection](help/database/db_post-collection) | Collection of posts |
| [post-content](help/database/db_post-content) | Content for all posts | | [post-content](help/database/db_post-content) | Content for all posts |
| [post-counts](help/database/db_post-counts) | Original remote activity |
| [post-delivery](help/database/db_post-delivery) | Delivery data for posts for the batch processing | | [post-delivery](help/database/db_post-delivery) | Delivery data for posts for the batch processing |
| [post-delivery-data](help/database/db_post-delivery-data) | Delivery data for items | | [post-delivery-data](help/database/db_post-delivery-data) | Delivery data for items |
| [post-engagement](help/database/db_post-engagement) | Engagement data per post | | [post-engagement](help/database/db_post-engagement) | Engagement data per post |

View file

@ -0,0 +1,38 @@
Table channel
===========
User defined Channels
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ---------------- | ------------------------------------------------------------------------------------------------- | ------------------ | ---- | --- | ------- | -------------- |
| id | | int unsigned | NO | PRI | NULL | auto_increment |
| uid | User id | mediumint unsigned | NO | | NULL | |
| label | Channel label | varchar(64) | NO | | NULL | |
| description | Channel description | varchar(64) | YES | | NULL | |
| circle | Circle or channel that this channel is based on | int | YES | | NULL | |
| access-key | Access key | varchar(1) | YES | | NULL | |
| include-tags | Comma separated list of tags that will be included in the channel | varchar(1023) | YES | | NULL | |
| exclude-tags | Comma separated list of tags that aren't allowed in the channel | varchar(1023) | YES | | NULL | |
| full-text-search | Full text search pattern, see https://mariadb.com/kb/en/full-text-index-overview/#in-boolean-mode | varchar(1023) | YES | | NULL | |
| media-type | Filtered media types | smallint unsigned | YES | | NULL | |
| languages | Desired languages | mediumtext | YES | | NULL | |
Indexes
------------
| Name | Fields |
| ------- | ------ |
| PRIMARY | id |
| uid | uid |
Foreign Keys
------------
| Field | Target Table | Target Field |
|-------|--------------|--------------|
| uid | [user](help/database/db_user) | uid |
Return to [database documentation](help/database)

View file

@ -0,0 +1,23 @@
Table check-full-text-search
===========
Check for a full text search match in user defined channels before storing the message in the system
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ---------- | ---------------------------------------- | ------------ | ---- | --- | ------- | ----- |
| pid | The ID of the process | int unsigned | NO | PRI | NULL | |
| searchtext | Simplified text for the full text search | mediumtext | YES | | NULL | |
Indexes
------------
| Name | Fields |
| ---------- | -------------------- |
| PRIMARY | pid |
| searchtext | FULLTEXT, searchtext |
Return to [database documentation](help/database)

View file

@ -0,0 +1,35 @@
Table post-counts
===========
Original remote activity
Fields
------
| Field | Description | Type | Null | Key | Default | Extra |
| ------------- | ----------------------------------------------------------- | ----------------- | ---- | --- | ------- | ----- |
| uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | |
| vid | Id of the verb table entry that contains the activity verbs | smallint unsigned | NO | PRI | NULL | |
| reaction | Emoji Reaction | varchar(1) | NO | PRI | NULL | |
| parent-uri-id | Id of the item-uri table that contains the parent uri | int unsigned | YES | | NULL | |
| count | Number of activities | int unsigned | YES | | 0 | |
Indexes
------------
| Name | Fields |
| ------------- | --------------------- |
| PRIMARY | uri-id, vid, reaction |
| vid | vid |
| parent-uri-id | parent-uri-id |
Foreign Keys
------------
| Field | Target Table | Target Field |
|-------|--------------|--------------|
| uri-id | [item-uri](help/database/db_item-uri) | id |
| vid | [verb](help/database/db_verb) | id |
| parent-uri-id | [item-uri](help/database/db_item-uri) | id |
Return to [database documentation](help/database)

View file

@ -13,6 +13,7 @@ Fields
| contact-type | Person, organisation, news, community, relay | tinyint | NO | | 0 | | | contact-type | Person, organisation, news, community, relay | tinyint | NO | | 0 | |
| media-type | Type of media in a bit array (1 = image, 2 = video, 4 = audio | tinyint | NO | | 0 | | | media-type | Type of media in a bit array (1 = image, 2 = video, 4 = audio | tinyint | NO | | 0 | |
| language | Language information about this post | varbinary(128) | YES | | NULL | | | language | Language information about this post | varbinary(128) | YES | | NULL | |
| searchtext | Simplified text for the full text search | mediumtext | YES | | NULL | |
| created | | datetime | YES | | NULL | | | created | | datetime | YES | | NULL | |
| restricted | If true, this post is either unlisted or not from a federated network | boolean | NO | | 0 | | | restricted | If true, this post is either unlisted or not from a federated network | boolean | NO | | 0 | |
| comments | Number of comments | mediumint unsigned | YES | | NULL | | | comments | Number of comments | mediumint unsigned | YES | | NULL | |
@ -22,10 +23,11 @@ Indexes
------------ ------------
| Name | Fields | | Name | Fields |
| -------- | -------- | | ---------- | -------------------- |
| PRIMARY | uri-id | | PRIMARY | uri-id |
| owner-id | owner-id | | owner-id | owner-id |
| created | created | | created | created |
| searchtext | FULLTEXT, searchtext |
Foreign Keys Foreign Keys
------------ ------------

View file

@ -37,7 +37,7 @@ Indexes
------------ ------------
| Name | Fields | | Name | Fields |
| ----------------- | ------------------- | | -------------------- | --------------------- |
| PRIMARY | uid, uri-id | | PRIMARY | uid, uri-id |
| uri-id | uri-id | | uri-id | uri-id |
| conversation-id | conversation-id | | conversation-id | conversation-id |
@ -50,11 +50,17 @@ Indexes
| post-user-id | post-user-id | | post-user-id | post-user-id |
| commented | commented | | commented | commented |
| received | received | | received | received |
| author-id_created | author-id, created |
| owner-id_created | owner-id, created |
| uid_received | uid, received | | uid_received | uid, received |
| uid_wall_received | uid, wall, received | | uid_wall_received | uid, wall, received |
| uid_commented | uid, commented | | uid_commented | uid, commented |
| uid_created | uid, created |
| uid_starred | uid, starred | | uid_starred | uid, starred |
| uid_mention | uid, mention | | uid_mention | uid, mention |
| contact-id_commented | contact-id, commented |
| contact-id_received | contact-id, received |
| contact-id_created | contact-id, created |
Foreign Keys Foreign Keys
------------ ------------

View file

@ -58,7 +58,8 @@ Indexes
| event-id | event-id | | event-id | event-id |
| psid | psid | | psid | psid |
| author-id_uid | author-id, uid | | author-id_uid | author-id, uid |
| author-id_received | author-id, received | | author-id_created | author-id, created |
| owner-id_created | owner-id, created |
| parent-uri-id_uid | parent-uri-id, uid | | parent-uri-id_uid | parent-uri-id, uid |
| uid_wall_received | uid, wall, received | | uid_wall_received | uid, wall, received |
| uid_contactid | uid, contact-id | | uid_contactid | uid, contact-id |

View file

@ -34,8 +34,6 @@ Fields
| blockwall | Prohibit contacts to post to the profile page of the user | boolean | NO | | 0 | | | blockwall | Prohibit contacts to post to the profile page of the user | boolean | NO | | 0 | |
| hidewall | Hide profile details from unknown 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 | | | 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 | |
| notify-flags | email notification options | smallint unsigned | NO | | 65535 | | | notify-flags | email notification options | smallint unsigned | NO | | 65535 | |
| page-flags | page/profile type | tinyint unsigned | NO | | 0 | | | page-flags | page/profile type | tinyint unsigned | NO | | 0 | |
| account-type | | tinyint unsigned | NO | | 0 | | | account-type | | tinyint unsigned | NO | | 0 | |

View file

@ -103,6 +103,15 @@ Derzeitige Hooks
$b ist das Item-Array einer Information, die in der Datenbank und im Item gespeichert ist. $b ist das Item-Array einer Information, die in der Datenbank und im Item gespeichert ist.
{Bitte beachte: der Seiteninhalt ist bbcode - nicht HTML) {Bitte beachte: der Seiteninhalt ist bbcode - nicht HTML)
**'detect_languages'**
Wird nach der Sprachenerkennung aufgerufen.
Dieser Hook kann dafür verwendet werden, alternative Erkennungsfunktionen einzubinden.
`$data` ist ein Array:
'text' => Der analysierte Text.
'detected' => (Eingabe/Ausgabe) Das Array mit den erkannten Sprachen. Der Sprachcode ist der Array-Schlüssel, der Array-Wert ist der dezimale Wert für die Wahrscheinlichkeit.
'uri-id' => Die Uri-Id des Beitrags
'author-id' => Die Contact-id des Autors.
**'addon_settings'** - wird aufgerufen, wenn die HTML-Ausgabe der Addon-Einstellungsseite generiert wird. **'addon_settings'** - wird aufgerufen, wenn die HTML-Ausgabe der Addon-Einstellungsseite generiert wird.
$b ist die HTML-Ausgabe (String) der Addon-Einstellungsseite vor dem finalen "</form>"-Tag. $b ist die HTML-Ausgabe (String) der Addon-Einstellungsseite vor dem finalen "</form>"-Tag.
@ -316,6 +325,7 @@ Eine komplette Liste aller Hook-Callbacks mit den zugehörigen Dateien (am 01-Ap
### src/Model/Item.php ### src/Model/Item.php
Hook::callAll('detect_languages', $item);
Hook::callAll('post_local', $item); Hook::callAll('post_local', $item);
Hook::callAll('post_remote', $item); Hook::callAll('post_remote', $item);
Hook::callAll('post_local_end', $posted_item); Hook::callAll('post_local_end', $posted_item);

View file

@ -17,6 +17,7 @@ Friendica - Dokumentation und Ressourcen
* [Circles und Privatsphäre](help/Circles-and-Privacy) * [Circles und Privatsphäre](help/Circles-and-Privacy)
* [Tags und Erwähnungen](help/Tags-and-Mentions) * [Tags und Erwähnungen](help/Tags-and-Mentions)
* [Community-Gruppen](help/Groups) * [Community-Gruppen](help/Groups)
* [Channels](help/Channels)
* [Chats](help/Chats) * [Chats](help/Chats)
* Weiterführende Informationen * Weiterführende Informationen
* [Account umziehen](help/Move-Account) * [Account umziehen](help/Move-Account)

View file

@ -25,9 +25,9 @@ Requirements
--- ---
* Apache mit einer aktiverten mod-rewrite-Funktion und dem Eintrag "Options All", so dass du die lokale .htaccess-Datei nutzen kannst * Apache mit einer aktiverten mod-rewrite-Funktion und dem Eintrag "Options All", so dass du die lokale .htaccess-Datei nutzen kannst
* PHP 7.3+ (PHP 8 wird noch nicht komplett unterstützt) * PHP 7.4+
* PHP *Kommandozeilen*-Zugang mit register_argc_argv auf "true" gesetzt in der php.ini-Datei * PHP *Kommandozeilen*-Zugang mit register_argc_argv auf "true" gesetzt in der php.ini-Datei
* Curl, GD, GMP, PDO, MySQLi, xml, zip und OpenSSL-Erweiterung * Curl, GD, GMP, PDO, mbstrings, MySQLi, hash, xml, zip, IntlChar and OpenSSL-Erweiterung
* Das POSIX Modul muss aktiviert sein ([CentOS, RHEL](http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7) haben dies z.B. deaktiviert) * Das POSIX Modul muss aktiviert sein ([CentOS, RHEL](http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7http://www.bigsoft.co.uk/blog/index.php/2014/12/08/posix-php-commands-not-working-under-centos-7) haben dies z.B. deaktiviert)
* Einen E-Mail Server, so dass PHP `mail()` funktioniert. * Einen E-Mail Server, so dass PHP `mail()` funktioniert.
Wenn kein eigener E-Mail Server zur Verfügung steht, kann alternativ das [phpmailer](https://github.com/friendica/friendica-addons/tree/develop/phpmailer) Addon mit einem externen SMTP Account verwendet werden. Wenn kein eigener E-Mail Server zur Verfügung steht, kann alternativ das [phpmailer](https://github.com/friendica/friendica-addons/tree/develop/phpmailer) Addon mit einem externen SMTP Account verwendet werden.

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,011 KiB

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -221,6 +221,10 @@ function item_insert(int $uid, array $request, bool $preview, string $return_pat
DI::contentItem()->postProcessPost($post, $recipients); DI::contentItem()->postProcessPost($post, $recipients);
if (($post['private'] == Item::PRIVATE) && ($post['thr-parent-id'] != $post['uri-id'])) {
DI::contentItem()->copyPermissions($post['thr-parent-id'], $post['uri-id'], $post['parent-uri-id']);
}
Logger::debug('post_complete'); Logger::debug('post_complete');
item_post_return(DI::baseUrl(), $return_path); item_post_return(DI::baseUrl(), $return_path);

View file

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

View file

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

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -312,16 +312,16 @@ function photos_post(App $a)
Photo::update(['height' => $height, 'width' => $width], ['resource-id' => $resource_id, 'uid' => $page_owner_uid, 'scale' => 0], $image); Photo::update(['height' => $height, 'width' => $width], ['resource-id' => $resource_id, 'uid' => $page_owner_uid, 'scale' => 0], $image);
if ($width > 640 || $height > 640) { if ($width > \Friendica\Util\Proxy::PIXEL_MEDIUM || $height > \Friendica\Util\Proxy::PIXEL_MEDIUM) {
$image->scaleDown(640); $image->scaleDown(\Friendica\Util\Proxy::PIXEL_MEDIUM);
$width = $image->getWidth(); $width = $image->getWidth();
$height = $image->getHeight(); $height = $image->getHeight();
Photo::update(['height' => $height, 'width' => $width], ['resource-id' => $resource_id, 'uid' => $page_owner_uid, 'scale' => 1], $image); Photo::update(['height' => $height, 'width' => $width], ['resource-id' => $resource_id, 'uid' => $page_owner_uid, 'scale' => 1], $image);
} }
if ($width > 320 || $height > 320) { if ($width > \Friendica\Util\Proxy::PIXEL_SMALL || $height > \Friendica\Util\Proxy::PIXEL_SMALL) {
$image->scaleDown(320); $image->scaleDown(\Friendica\Util\Proxy::PIXEL_SMALL);
$width = $image->getWidth(); $width = $image->getWidth();
$height = $image->getHeight(); $height = $image->getHeight();

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -31,7 +31,7 @@ use Friendica\Model\Contact;
function update_contact_content(App $a) function update_contact_content(App $a)
{ {
if (!empty(DI::args()->get(1)) && !empty($_GET['force'])) { if (!empty(DI::args()->get(1)) && !empty($_GET['force'])) {
$contact = Contact::getById(DI::args()->get(1), ['id', 'deleted']); $contact = DBA::selectFirst('account-user-view', ['pid', 'deleted'], ['id' => DI::args()->get(1)]);
if (DBA::isResult($contact) && empty($contact['deleted'])) { if (DBA::isResult($contact) && empty($contact['deleted'])) {
DI::page()['aside'] = ''; DI::page()['aside'] = '';
@ -39,7 +39,7 @@ function update_contact_content(App $a)
$item = Post::selectFirst(['parent'], ['id' => $_GET['item']]); $item = Post::selectFirst(['parent'], ['id' => $_GET['item']]);
} }
$text = Contact::getPostsFromId($contact['id'], true, true, $item['parent'] ?? 0); $text = Contact::getThreadsFromId($contact['pid'], DI::userSession()->getLocalUserId(), true, $item['parent'] ?? 0, $_GET['last_received'] ?? '');
} }
} }

View file

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

View file

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

View file

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

View file

@ -1,6 +1,6 @@
Contact: mailto:info@friendi.ca Contact: mailto:info@friendi.ca
Expires: 2024-04-30T23:59:59Z Expires: 2024-10-30T23:59:59Z
Preferred-Languages: en Preferred-Languages: en

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -63,8 +63,8 @@ use Psr\Log\LoggerInterface;
class App class App
{ {
const PLATFORM = 'Friendica'; const PLATFORM = 'Friendica';
const CODENAME = 'Giant Rhubarb'; const CODENAME = 'Yellow Archangel';
const VERSION = '2023.09-dev'; const VERSION = '2024.03-dev';
// Allow themes to control internal parameters // Allow themes to control internal parameters
// by changing App values in theme.php // by changing App values in theme.php
@ -567,6 +567,7 @@ class App
{ {
$requeststring = ($_SERVER['REQUEST_METHOD'] ?? '') . ' ' . ($_SERVER['REQUEST_URI'] ?? '') . ' ' . ($_SERVER['SERVER_PROTOCOL'] ?? ''); $requeststring = ($_SERVER['REQUEST_METHOD'] ?? '') . ' ' . ($_SERVER['REQUEST_URI'] ?? '') . ' ' . ($_SERVER['SERVER_PROTOCOL'] ?? '');
$this->logger->debug('Request received', ['address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '']); $this->logger->debug('Request received', ['address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '']);
$request_start = microtime(true);
$this->profiler->set($start_time, 'start'); $this->profiler->set($start_time, 'start');
$this->profiler->set(microtime(true), 'classinit'); $this->profiler->set(microtime(true), 'classinit');
@ -715,10 +716,10 @@ class App
$response = $page->run($this, $this->baseURL, $this->args, $this->mode, $response, $this->l10n, $this->profiler, $this->config, $pconfig, $nav, $this->session->getLocalUserId()); $response = $page->run($this, $this->baseURL, $this->args, $this->mode, $response, $this->l10n, $this->profiler, $this->config, $pconfig, $nav, $this->session->getLocalUserId());
} }
$this->logger->debug('Request processed sucessfully', ['response' => $response->getStatusCode(), 'address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '']); $this->logger->debug('Request processed sucessfully', ['response' => $response->getStatusCode(), 'address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '', 'duration' => number_format(microtime(true) - $request_start, 3)]);
$page->exit($response); System::echoResponse($response);
} catch (HTTPException $e) { } catch (HTTPException $e) {
$this->logger->debug('Request processed with exception', ['response' => $e->getCode(), 'address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '']); $this->logger->debug('Request processed with exception', ['response' => $e->getCode(), 'address' => $_SERVER['REMOTE_ADDR'] ?? '', 'request' => $requeststring, 'referer' => $_SERVER['HTTP_REFERER'] ?? '', 'user-agent' => $_SERVER['HTTP_USER_AGENT'] ?? '', 'duration' => number_format(microtime(true) - $request_start, 3)]);
$httpException->rawContent($e); $httpException->rawContent($e);
} }
$page->logRuntime($this->config, 'runFrontend'); $page->logRuntime($this->config, 'runFrontend');

View file

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

View file

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

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -36,6 +36,7 @@ use Friendica\Core\System;
use Friendica\Core\Theme; use Friendica\Core\Theme;
use Friendica\Module\Response; use Friendica\Module\Response;
use Friendica\Network\HTTPException; use Friendica\Network\HTTPException;
use Friendica\Util\Images;
use Friendica\Util\Network; use Friendica\Util\Network;
use Friendica\Util\Profiler; use Friendica\Util\Profiler;
use Friendica\Util\Strings; use Friendica\Util\Strings;
@ -282,7 +283,7 @@ class Page implements ArrayAccess
'$stylesheets' => $this->stylesheets, '$stylesheets' => $this->stylesheets,
// Dropzone // Dropzone
'$max_imagesize' => round(\Friendica\Util\Strings::getBytesFromShorthand($config->get('system', 'maximagesize')) / 1000000, 1), '$max_imagesize' => round(Images::getMaxUploadBytes() / 1000000, 0),
]) . $this->page['htmlhead']; ]) . $this->page['htmlhead'];
} }
@ -401,36 +402,6 @@ class Page implements ArrayAccess
$this->footerScripts[] = trim($url, '/'); $this->footerScripts[] = trim($url, '/');
} }
/**
* Directly exit with the current response (include setting all headers)
*
* @param ResponseInterface $response
*/
public function exit(ResponseInterface $response)
{
header(sprintf("HTTP/%s %s %s",
$response->getProtocolVersion(),
$response->getStatusCode(),
$response->getReasonPhrase())
);
foreach ($response->getHeaders() as $key => $header) {
if (is_array($header)) {
$header_str = implode(',', $header);
} else {
$header_str = $header;
}
if (empty($key)) {
header($header_str);
} else {
header("$key: $header_str");
}
}
echo $response->getBody();
}
/** /**
* Executes the creation of the current page and prints it to the screen * Executes the creation of the current page and prints it to the screen
* *
@ -526,7 +497,9 @@ class Page implements ArrayAccess
} }
if ($_GET["mode"] == "raw") { if ($_GET["mode"] == "raw") {
System::httpExit(substr($target->saveHTML(), 6, -8), Response::TYPE_HTML); $response->withBody(Utils::streamFor($target->saveHTML()));
System::echoResponse($response);
System::exit();
} }
} }

View file

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

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -129,6 +129,24 @@ class BaseCollection extends \ArrayIterator
return new static(array_reverse($this->getArrayCopy()), $this->getTotalCount()); return new static(array_reverse($this->getArrayCopy()), $this->getTotalCount());
} }
/**
* Split the collection in smaller collections no bigger than the provided length
*
* @param int $length
* @return static[]
*/
public function chunk(int $length): array
{
if ($length < 1) {
throw new \RangeException('BaseCollection->chunk(): Size parameter expected to be greater than 0');
}
return array_map(function ($array) {
return new static($array);
}, array_chunk($this->getArrayCopy(), $length));
}
/** /**
* @inheritDoc * @inheritDoc
* *

View file

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

View file

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

View file

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

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -27,6 +27,7 @@ use Friendica\Capabilities\ICanCreateResponses;
use Friendica\Core\Hook; use Friendica\Core\Hook;
use Friendica\Core\L10n; use Friendica\Core\L10n;
use Friendica\Core\Logger; use Friendica\Core\Logger;
use Friendica\Core\System;
use Friendica\Model\User; use Friendica\Model\User;
use Friendica\Module\Response; use Friendica\Module\Response;
use Friendica\Module\Special\HTTPException as ModuleHTTPException; use Friendica\Module\Special\HTTPException as ModuleHTTPException;
@ -106,8 +107,7 @@ abstract class BaseModule implements ICanHandleRequests
*/ */
protected function rawContent(array $request = []) protected function rawContent(array $request = [])
{ {
// echo ''; // $this->httpExit(...);
// exit;
} }
/** /**
@ -189,6 +189,11 @@ abstract class BaseModule implements ICanHandleRequests
$this->response->setHeader('*', 'Access-Control-Allow-Headers'); $this->response->setHeader('*', 'Access-Control-Allow-Headers');
$this->response->setHeader(Router::GET, 'Access-Control-Allow-Methods'); $this->response->setHeader(Router::GET, 'Access-Control-Allow-Methods');
$this->response->setHeader('false', 'Access-Control-Allow-Credentials'); $this->response->setHeader('false', 'Access-Control-Allow-Credentials');
} elseif (substr($this->args->getQueryString(), 0, 9) == 'nodeinfo/') {
$this->response->setHeader('*', 'Access-Control-Allow-Origin');
$this->response->setHeader('*', 'Access-Control-Allow-Headers');
$this->response->setHeader(Router::GET, 'Access-Control-Allow-Methods');
$this->response->setHeader('false', 'Access-Control-Allow-Credentials');
} elseif (substr($this->args->getQueryString(), 0, 8) == 'profile/') { } elseif (substr($this->args->getQueryString(), 0, 8) == 'profile/') {
$this->response->setHeader('*', 'Access-Control-Allow-Origin'); $this->response->setHeader('*', 'Access-Control-Allow-Origin');
$this->response->setHeader('*', 'Access-Control-Allow-Headers'); $this->response->setHeader('*', 'Access-Control-Allow-Headers');
@ -234,7 +239,8 @@ abstract class BaseModule implements ICanHandleRequests
$timestamp = microtime(true); $timestamp = microtime(true);
// "rawContent" is especially meant for technical endpoints. // "rawContent" is especially meant for technical endpoints.
// This endpoint doesn't need any theme initialization or other comparable stuff. // This endpoint doesn't need any theme initialization or
// templating and is expected to exit on its own if it is set.
$this->rawContent($request); $this->rawContent($request);
try { try {
@ -456,4 +462,76 @@ abstract class BaseModule implements ICanHandleRequests
return $tabs; return $tabs;
} }
/**
* This function adds the content and a content-type HTTP header to the output.
* After finishing the process is getting killed.
*
* @param string $content
* @param string $type
* @param string|null $content_type
* @return void
* @throws HTTPException\InternalServerErrorException
*/
public function httpExit(string $content, string $type = Response::TYPE_HTML, ?string $content_type = null)
{
$this->response->setType($type, $content_type);
$this->response->addContent($content);
System::echoResponse($this->response->generate());
System::exit();
}
/**
* Send HTTP status header and exit.
*
* @param integer $httpCode HTTP status result value
* @param string $message Error message. Optional.
* @param mixed $content Response body. Optional.
* @throws \Exception
*/
public function httpError(int $httpCode, string $message = '', $content = '')
{
if ($httpCode >= 400) {
$this->logger->debug('Exit with error', ['code' => $httpCode, 'message' => $message, 'method' => $this->args->getMethod(), 'agent' => $this->server['HTTP_USER_AGENT'] ?? '']);
}
$this->response->setStatus($httpCode, $message);
$this->httpExit($content);
}
/**
* Display the response using JSON to encode the content
*
* @param mixed $content
* @param string $content_type
* @param int $options A combination of json_encode() binary flags
* @return void
* @throws HTTPException\InternalServerErrorException
* @see json_encode()
*/
public function jsonExit($content, string $content_type = 'application/json', int $options = JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)
{
$this->httpExit(json_encode($content, $options), ICanCreateResponses::TYPE_JSON, $content_type);
}
/**
* Display a non-200 HTTP code response using JSON to encode the content and exit
*
* @param int $httpCode
* @param mixed $content
* @param string $content_type
* @return void
* @throws HTTPException\InternalServerErrorException
*/
public function jsonError(int $httpCode, $content, string $content_type = 'application/json')
{
if ($httpCode >= 400) {
$this->logger->debug('Exit with error', ['code' => $httpCode, 'content_type' => $content_type, 'method' => $this->args->getMethod(), 'agent' => $this->server['HTTP_USER_AGENT'] ?? '']);
}
$this->response->setStatus($httpCode);
$this->jsonExit($content, $content_type);
}
} }

View file

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

View file

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

View file

@ -1,6 +1,6 @@
<?php <?php
/** /**
* @copyright Copyright (C) 2010-2023, the Friendica project * @copyright Copyright (C) 2010-2024, the Friendica project
* *
* @license GNU AGPL version 3 or any later version * @license GNU AGPL version 3 or any later version
* *
@ -70,7 +70,7 @@ interface ICanCreateResponses
* *
* @throws InternalServerErrorException * @throws InternalServerErrorException
*/ */
public function setType(string $type, ?string $content_type = null): void; public function setType(string $type = ICanCreateResponses::TYPE_HTML, ?string $content_type = null): void;
/** /**
* Sets the status and the reason for the response * Sets the status and the reason for the response

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

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