Commit graph

334 commits

Author SHA1 Message Date
Hypolite Petovan a0f6d678c4 Add HTML Purify to BBCode::convert
- Replace previous HTML cleanup using DOMDocument
- Remove obsolete HTML::sanitizeCSS method
- Use Strings::autoLinkRegEx for PageInfo::getRelevantUrlFromBody
- Update previous tests expectations
- Add new specific XSS tests
2020-12-04 07:29:48 -05:00
Hypolite Petovan dbb33399bc Prevent image descriptions from being replaced by local smilies
- AP-received emojis have their code in the image description
2020-11-15 00:12:26 -05:00
Hypolite Petovan edd439cfab Simplify code in Content\Text\BBCode::convert
- Use performWithEscapedTags instead of custom solution
2020-11-08 23:25:46 -05:00
Michael 498dda7999 Fix parser issues when a video is linked without a matching extension 2020-11-08 09:24:01 +00:00
Michael a012234d82 Publish the provider fields in the API 2020-10-26 19:40:09 +00:00
Philipp Holzer a6fc9cd32e
Remove $binary flag for HTTPRequest::get(), HTTPRequest::fetch(), HTTPRequest::fetchAll() (deprecated since PHP 5.1.3) 2020-10-18 20:56:31 +02:00
Philipp Holzer 0449077126
Revert "Fix IHTTPResult::getHeader() - Now returns a string array, like expected - Fix usages - Fix dataset"
This reverts commit 80bd0a4d
2020-10-11 23:25:40 +02:00
Philipp Holzer 80bd0a4d5a
Fix IHTTPResult::getHeader()
- Now returns a string array, like expected
- Fix usages
- Fix dataset
2020-10-10 23:11:30 +02:00
Michael Vogel 20652870b6
Update src/Content/Text/BBCode.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2020-10-06 04:55:28 +02:00
Michael Vogel 397f239abb
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2020-10-05 17:40:06 +02:00
Michael 16224a7001 Improve plaintext generation for language detection 2020-10-05 12:50:18 +00:00
Michael 38ed5c943d Avoid probing non existing profiles 2020-08-19 05:24:53 +00:00
Hypolite Petovan afb882048e Generate callstack value from inside Profiler::saveTimestamp
- Save a massive amount of time computing callstacks when profiling is disabled
2020-07-27 02:33:05 -04:00
nupplaPhil 657d08f09f Rename "fetchUrl" and "fetchUrlFull" to "fetch" and "fetchFull" 2020-07-21 03:15:53 -04:00
nupplaPhil 7029012f27 Rename "HTTPRequest::curl()" to HTTPRequest::get() 2020-07-21 03:14:01 -04:00
nupplaPhil 57587efe58 Move "getUserAgent()" to "HTTPRequest" class 2020-07-21 03:04:58 -04:00
nupplaPhil 1aa07f87a4 Make "HTTPRequest::fetchUrl" dynamic 2020-07-21 03:04:58 -04:00
nupplaPhil 5344efef71 Move post/curl/fetchUrl/fetchUrlFull to own class "Network\HTTPRequest" 2020-07-21 02:56:10 -04:00
Michael fc0312451d Changed parameter order for getByURL 2020-07-15 17:06:48 +00:00
Michael d9c6a46ffe Replaced "getDetailsByURL" with "getByURL/getByURLForUser" 2020-07-15 04:42:04 +00:00
Michael 52bb1ff0f1 Some more replaced logger 2020-06-28 17:35:56 +00:00
Michael Vogel f611c99ad7 Improve render speed by not probing for unknown contacts 2020-06-28 15:57:33 +02:00
Michael Vogel 7fd2c00171
Merge pull request #8792 from MrPetovan/task/share-block-guid
[frio] Add local post link to share block when guid attribute is present
2020-06-23 21:26:07 +02:00
Hypolite Petovan faeffff8a3 [pre] blocks now preserve spaces
- Added test case
- Added English documentation
2020-06-23 07:53:18 -04:00
Hypolite Petovan 251a3791dd Keep spaces after non-tags in Content\BBCode::convert
- Added test case
2020-06-23 07:52:38 -04:00
Hypolite Petovan d2aa68106b Make guid attribute available to convertShare callback 2020-06-21 09:45:00 -04:00
Hypolite Petovan 912ff069c0 Update getShareOpeningTag::getShareOpeningTag method signature
- Optional parameter $guid is now at the end
- Always provided parameter $posted is now mandatory
2020-06-21 09:42:37 -04:00
Hypolite Petovan cd74fb8609 Add new Content\BBCode::getShareOpeningTag 2020-06-18 08:53:30 -04:00
Hypolite Petovan f9ecbbd743 Exclude [img] tags from tag replacement
- It broke image captions by inserting an HTML link inside an HTML attribute
2020-06-16 16:34:16 -04:00
Hypolite Petovan 9b2d758c1a Add no-parsing block escaping in BBCode::setMentions 2020-06-10 10:16:07 -04:00
Hypolite Petovan eaa7740da6 Remove superfluous code
- Remove explicit default parameter value in BBCode::convertShareCallback
- Remove Probe::$baseurl reset since the twitter probe sets the `baseurl` property
- Remove baseurl guessing in Probe::detect
2020-06-10 10:15:54 -04:00
Hypolite Petovan a5f0225d60 Add mention support to shared content 2020-06-10 10:15:54 -04:00
Hypolite Petovan 89b3ae2657 Add null/empty string parameter value case in BBCode::convert
- Remove obsolete coalesce operator uses
2020-06-08 19:15:08 -04:00
Hypolite Petovan 472018191b Add tag escaping to BBCode::setTags 2020-06-08 18:40:20 -04:00
Hypolite Petovan 0bc7b89530 Replace existing block escaping by performWitEscaped* calls 2020-06-08 18:40:20 -04:00
Hypolite Petovan 348b71d0b0 Add new Strings::performWithEscapedBlocks methods
- Add new BBCode::performWithEscapedTags method
- Add tests
2020-06-08 18:40:20 -04:00
Hypolite Petovan 8eeb7807d3 Replace remaining instances with "allowlist", "denylist" and "blocklist" 2020-06-07 11:24:56 -04:00
Hypolite Petovan e0152bec7d Remove Twitter exception for shared blocks in Text\BBCode::convertShareCallback
- Twitter stopped supporting OEmbed which defaulted to an undesirable fallback
2020-06-04 11:13:31 -04:00
Hypolite Petovan f68652d61c Revert "Move share content conversion before link handling in Text\BBCode::convert"
This reverts commit 010ec99b35.
2020-06-04 11:11:44 -04:00
Hypolite Petovan 010ec99b35 Move share content conversion before link handling in Text\BBCode::convert 2020-06-03 22:02:01 -04:00
Michael efb1c630fd Fix warnings ("Divide by zero" and "key parameter is not a valid public key") 2020-05-18 02:58:08 +00:00
Michael e737eea17d Issue 8458-2: Now all unicode emojis should work 2020-05-17 21:46:54 +00:00
Michael d7f0ffdbc1 Issue 8458: Display big emojis
Fixes #8458
2020-05-17 16:55:54 +00:00
Michael b625797591 issue 8642: Make hashtags more compatible 2020-05-16 18:38:50 +00:00
Michael b192810288 Still more missing places replaced 2020-05-16 16:41:37 +00:00
Michael 0da0580a82 use "self" 2020-05-16 16:32:37 +00:00
Michael 0cf517ad76 Use constants for the BBCode modes 2020-05-16 16:28:15 +00:00
Hypolite Petovan 43b8bdea07
Merge pull request #8520 from annando/term2tag
We now store tags in "tag"
2020-04-22 22:56:07 -04:00
Michael 33eda87bc4 Fix: Image descriptions now work again 2020-04-21 04:01:13 +00:00
Michael 538e212a84 Hashtag handling with Diaspora improved 2020-04-19 16:33:06 +00:00
Michael d3722c945b Improved Mime Type detection 2020-04-01 05:42:44 +00:00
Michael 1fef1ef6e9 Issue 7771: Funkwhale support 2020-03-24 23:12:53 +00:00
Michael 72c198990e Merge remote-tracking branch 'upstream/develop' into private 2020-03-02 15:05:00 +00:00
Michael ca1b92bb34 Support unlisted public posts 2020-03-02 07:57:23 +00:00
Michael Vogel cdc39b0f72
Merge pull request #8333 from MrPetovan/bug/8280-about-conversion-export
Add about field conversion to HTML in Protocol\ActivityPub\Transmitter
2020-02-25 20:36:11 +01:00
Hypolite Petovan b100b9600e Add rel="noopener noreferrer" to all target="_blank" links
See https://mathiasbynens.github.io/rel-noopener/
2020-02-24 20:07:34 -05:00
Hypolite Petovan 0f85f5d167 Convert outgoing profile description to Markdown in Protocol\Diaspora 2020-02-24 07:59:53 -05:00
Michael Vogel 01640a7045 Merge pull request #8272 from MrPetovan/bug/8254-regex-url-img
Increase specificity of [url][img] capture regex in BBCode::getAttachedData
2020-02-10 05:32:43 +01:00
Hypolite Petovan d2ca5ccd35 Increase specificity of [url][img] capture regex in BBCode::getAttachedData
- Prevents it from over capturing when there's a [url] tag before the image
2020-02-09 22:19:21 -05:00
nupplaPhil 23c64b9a11
Add license info at Friendica classes 2020-02-09 15:45:36 +01:00
Philipp Holzer ed9392469e
Remove unneeded Config namespace usages 2020-01-19 22:50:44 +01:00
Philipp Holzer 6c36fd9e01
Move Config::get() to DI::config()->get() 2020-01-19 21:21:13 +01:00
Philipp Holzer d6efc90194
cleanup namespace usages for L10n 2020-01-19 16:31:33 +01:00
Philipp Holzer 5dfee31108
Move L10n::t() calls to DI::l10n()->t() calls 2020-01-19 16:31:16 +01:00
Michael 4e5db36177 Improved formatting 2020-01-19 09:46:31 +00:00
Michael 0a4119adaf @brief is removed completely 2020-01-19 06:05:23 +00:00
Philipp Holzer a38b0f7eaf
Move remaining namespaces and delete Core\Cache.php 2020-01-07 00:51:02 +01:00
Philipp Holzer fe078410a1
Move Cache::get() to DI::cache()->get() 2020-01-07 00:45:49 +01:00
Philipp Holzer f68929633b
Move Cache::set() to DI::cache()->set() 2020-01-07 00:41:20 +01:00
Hypolite Petovan 4461c16165 Remove superfluous comment in BBCode::scaleExternalImage 2020-01-03 09:30:35 -05:00
Hypolite Petovan 52c5b0e0f3 Remove unused BBCode::scaleExternalImage parameters
- Remove now obsolete system.no_view_full_size config key
2020-01-02 20:44:15 -05:00
Hypolite Petovan 0b3cd206c3 Remove harmful HTML decode/encode in BBCode::scaleExternalImages 2020-01-02 20:35:59 -05:00
Philipp Holzer 3f34229752
Move redundant System::baseUrl() to DI::baseUrl() calls 2019-12-30 23:00:08 +01:00
Philipp Holzer e944d7bed6
Remove deprecated App::getBaseURL() - process methods to DI::baseUrl()->get() 2019-12-29 20:17:48 +01:00
Philipp Holzer 181529f3df
Refactor dynamic App::getProfiler() to static DI::profiler() 2019-12-29 20:17:42 +01:00
Philipp Holzer 388b963714
Replace BaseObject class with DI::* calls 2019-12-29 20:17:38 +01:00
Philipp Holzer 1de3f186d7
Introduce new DI container
- Adding Friendica\DI class for getting dynamic classes
- Replacing BaseObject::getApp() with this class
2019-12-29 20:16:55 +01:00
Hypolite Petovan aa3a85c727 Escape major HTML characters in code blocks in BBCode::convert
- HTML sanitization was removing unescaped opening chevrons in code blocks
2019-12-27 21:42:56 -05:00
Hypolite Petovan 39cb3e68b9 Remove faulty escape for HTML entities in BBCode::toMarkdown
- Mangled Markdown output with chevrons
2019-12-27 21:42:56 -05:00
Michael 81d500c271 Fix optical glitch: Replace multiple newlines when replacing attachments 2019-12-20 09:45:34 +00:00
Hypolite Petovan e1583123b4 Escape potential URL-containing BBCodes before running autolinker 2019-12-13 12:40:10 -05:00
Michael cc38250538 Improved RegExp 2019-12-12 14:57:31 +00:00
Michael e70743f72d Issue 7651: Added basic support for more complicated "video" elements 2019-12-12 05:35:30 +00:00
Michael 23cdc9cec8 Fixes issue 7914: Reshares got crumbled 2019-12-07 21:05:14 +00:00
Michael 22c66e1811 Add data for shared posts from the original 2019-12-04 22:57:09 +00:00
Michael d34052b332 Make quoted announces look better / more announce improvements 2019-12-04 07:02:39 +00:00
Michael Vogel 0733ae6aae Improve the look of fetched feeds and the BBCode processing of attachments 2019-11-18 13:29:27 +01:00
Michael 28ca0d6fab AP: Remove the link description from the "rich html" and adds it to the attachment 2019-11-17 18:10:12 +00:00
Michael 85b3c880ef Fix: Mentions in the HTML part of the "contentMap" now are links 2019-11-13 06:43:36 +00:00
Hypolite Petovan 03bf1dcbd3 Move Object\Image static methods to Util\Images
- Optimize imports in modified files
2019-11-02 07:48:45 -04:00
Michael 945e256b7b Possibly handle issue 7772 2019-10-27 18:36:04 +00:00
Michael 30a6231f11 Fix indentation 2019-10-27 17:45:43 +00:00
Michael 60eb6603bf (hopefully) fix preview issue with tags on Mastodon 2019-10-27 17:41:47 +00:00
Hypolite Petovan b632114b12
Merge pull request #7774 from annando/img-title
Images: Show the description as title
2019-10-25 19:29:55 -04:00
Michael 9f86465fb9 Images: Show the description as title 2019-10-25 23:23:38 +00:00
Philipp Holzer 3897c74deb
Add docs 2019-10-25 00:10:20 +02:00
Philipp Holzer 07cea24430
Move Activity/Namespaces defines to constants 2019-10-24 21:40:12 +02:00
Hypolite Petovan 146646c4d4 Replace deprecated calls to defaults() by ?? and ?: in src/ 2019-10-16 08:38:52 -04:00
Michael 3e93c62a9c Changed quotation (" to ') 2019-10-15 07:55:20 +00:00
Hypolite Petovan d8484e65bd Move autolinker execution earlier in BBCode::convert
- Prevents already replaced HTML links (like in [audio] tag) to be doubled
- Add test for it
2019-09-25 20:39:04 -04:00
Hypolite Petovan c034fa7baa Use <details> tag for spoilers BCode 2019-09-12 22:17:55 -04:00
Michael aa6497c281 Issue 2199: Diaspora doesn't interpret size elements 2019-09-05 05:14:43 +00:00
Michael 5e60d0c94f Fix cache key problem / avoid need for fetching own pictures 2019-09-04 20:54:23 +00:00
Philipp Holzer 8688053a08
remove superfluous comment 2019-08-28 01:02:23 +02:00
Philipp Holzer df7ec0cdf7
php notice fixings
addons:
- bufferapp (missing errorcode)
- twitter (wrong field name 'nickname')
core:
- bbcode (incomplete attachementdata)
- crypto (uninitialized key)
2019-08-27 08:27:07 +02:00
Hypolite Petovan 0f9520f520 Increase specificity of default allowed protocols 2019-08-14 21:42:00 -04:00
Hypolite Petovan f88435fa4c Add support for protocol-less URLs in BBCode::convert 2019-08-14 21:40:51 -04:00
Michael 27006f577c Support for multiple picture posts 2019-08-06 05:35:21 +00:00
Michael cbee91a61b Avoid a notice 2019-08-05 16:48:58 +00:00
Michael bdc07b4213 Added support for image descriptions and multiple image posts to external services 2019-08-05 16:27:45 +00:00
Hypolite Petovan c3e3e83a52 Improve BBCode:toPlaintext
- Fix issue where matching literal square brackets were removed with their content
- Fix issue where content without line feeds between BBCode tags would end up compacted in plain text
- Update extr calls to BBCode::toPlaintext in api
2019-08-04 10:22:23 -04:00
Michael 1b7f96dac8 Partly reverted, real problem fixed 2019-08-04 04:29:52 +00:00
Michael 2a213c215e Fix contact issues with fake reshares from Twitter 2019-07-23 04:26:20 +00:00
Hypolite Petovan 9545ff614b Limit smilies replacement to BBCode::convert 2019-06-23 17:53:25 -04:00
Hypolite Petovan b9ab613777 Merge branch 'master' into develop 2019-06-23 17:40:52 -04:00
Hypolite Petovan d54e778f30 Move share conversion at the end of Text\BBCode::convert 2019-06-16 23:13:26 -04:00
Hypolite Petovan 84ccaf50fa Allow brackets in URLs
- Remove obsolete $URLSearchString variable
- Add related tests
2019-06-15 22:26:29 -04:00
Hypolite Petovan 38311a4a02 Move link conversion to the end of BBCode::convert
- Addresses https://github.com/friendica/friendica/issues/7271
- Add related tests
2019-06-15 22:24:51 -04:00
Michael bfc6bad916 Added comment 2019-06-11 21:40:44 +00:00
Michael a11b258fd6 Issue 7223: Don't strip links 2019-06-11 20:34:21 +00:00
Michael 16b9d9f199 Fix pixture posts to connectors / fix delivery counter for connector posts 2019-06-11 19:35:03 +00:00
Michael 7d0ebe8bbe Fix the detection of image posts 2019-06-10 16:06:54 +00:00
Michael bcf0be5db1 Issue #6799 - remove linefeeds inside of a table structure 2019-06-02 04:18:38 +00:00
Hypolite Petovan 5f9fb1f14f Simplify BBCode::toPlaintext
- Keep white spaces after tags
2019-05-27 12:02:12 -04:00
Hypolite Petovan ee4585ec71
Add inline spans to code block extraction in BBCode::convert
- Fixes autolinker replacing URLs inside of code spans
2019-03-14 09:03:31 -04:00
Hypolite Petovan 4cafe11d4d Swap attachment conversion and autolinking in BBCode::convert
- Fixes a rare display bug where an attachment description ends with a text URL
2019-03-13 23:13:10 -04:00
Hypolite Petovan 184b51ec56 Move autolink regex in Util\Strings 2019-03-09 23:25:53 -05:00
Hypolite Petovan 85609cd5e4 Fix autolinker regular expression to match test data 2019-03-09 10:20:57 -05:00
Hypolite Petovan 379f4d18c3 Update autolinker regular expression in Text\BBCode
- Thanks to https://daringfireball.net/2010/07/improved_regex_for_matching_urls
2019-03-08 23:58:20 -05:00
Hypolite Petovan 9cdae18101 Improve reshare format for Diaspora destinations
- Add link to original post in post time
- Update optional bottom link label
2019-02-27 21:01:47 -05:00
Hypolite Petovan 97eb2ba053 Fix possibly undefined after index in Text\BBCode 2019-02-25 07:12:01 -05:00
Philipp Holzer 0a7861da65
Dependency of callstack moved one layer up 2019-02-16 23:17:10 +01:00
Philipp Holzer 5e6e1a8025
Introducing Profiler 2019-02-16 23:11:30 +01:00
Michael de566cd888 Links of mentioned contacts hadn't looked great on Mastodon 2019-01-30 21:57:26 +00:00
Hypolite Petovan 30e97b4cc1 Ignore code blocks when extracting tags 2019-01-29 20:39:05 -05:00
Peter Liebetrau d8bd1921ee BBcode, Tags - fix BBCode created tags in [code] blocks, fix usage of multiple ## created tags 2019-01-29 21:17:11 +01:00
Peter Liebetrau 41663c7592 BBCode - fixed syntax error 2019-01-25 17:33:25 +01:00
Peter Liebetrau 54bec2bc8e BBCode - optimized preg searchstring 2019-01-25 17:25:42 +01:00
Peter Liebetrau 71e58a0f42 BBCode - optimized preg escaping of searchstring 2019-01-25 16:56:28 +01:00
peter 6ba08e510d BBCode - removed convert for relative URLs 2019-01-25 15:32:31 +01:00
peter a505dbbe5c BBCode - fixed code styling 2019-01-25 01:25:06 +01:00
peter ae806a593d BBCode - added preg_replacers for local [url] without target="_blank" 2019-01-25 01:15:43 +01:00
Hypolite Petovan 4a95ca280d Remove unused code
- Remove commented code
- Remove unused/immediately overwritten variables
- Remove extraneous parameters
- Remove unreachable code
- Remove duplicate array keys
2019-01-21 10:48:40 -05:00
Hypolite Petovan 070aa016e0 Update more PHPDoc, including in include/ 2019-01-21 10:39:28 -05:00
Hypolite Petovan 3282ce5389 Fix PHPDoc comments project-wide 2019-01-21 10:35:51 -05:00
Hypolite Petovan 55e54bb950 Replace deprecated Addon::callHooks with Hook::callAll
- Update documentation
2019-01-21 09:50:56 -05:00
Hypolite Petovan b7b7b1b664 Add support for Hubzilla forum mentions (starting with !) 2019-01-08 20:56:01 -05:00
Hypolite Petovan b6e1571b1e Fix various notices 2018-12-15 04:32:47 -05:00
Hypolite Petovan 458981f75c Replace x() by isset(), !empty() or defaults()
- Remove extraneous parentheses around empty() calls
- Remove duplicate calls to intval(), count() or strlen() after empty()
- Replace ternary operators outputting binary value with empty() return value
- Rewrite defaults() without x()
2018-11-30 09:06:22 -05:00
Hypolite Petovan ee88de1ef9 Normalize BBCode Hashtag replacement 2018-11-22 09:34:17 -05:00