Alexander Ebert [Fri, 18 Sep 2020 15:02:47 +0000 (17:02 +0200)]
Missing link target causes buttons to be unresponsive in some touch browers
Tim Düsterhus [Tue, 8 Sep 2020 07:43:31 +0000 (09:43 +0200)]
Prevent Android from collapsing the keyboard on [Enter]
Somehow the linkify redactor plugin causes Android to collapse the on-screen
keyboard if a new line is entered.
This plugin was already removed for 5.2 in commit
19af26fc22bc31d699db6021dee2eda1d23b8a14,
so let's effectively disable it for 3.1 as well.
see https://community.woltlab.com/thread/285573-wsc-3-1-17-smartphone-tastatur-schlie%C3%9Ft-sich-unbeabsichtigt/?postID=
1816848#post1816848
Alexander Ebert [Wed, 2 Sep 2020 13:47:34 +0000 (15:47 +0200)]
Incorrect calculation of the last 2 digits of the year
Fixes #3547
Alexander Ebert [Fri, 28 Aug 2020 11:09:35 +0000 (13:09 +0200)]
Release 3.1.17
woltlab.com [Wed, 26 Aug 2020 13:29:47 +0000 (13:29 +0000)]
Updating minified JavaScript files
joshuaruesweg [Sat, 22 Aug 2020 14:26:44 +0000 (16:26 +0200)]
Remove fullscreen mode in template diff
The fullscreen mode does not have any advantage at this point because the diff is also displayed with a height of 700px (just like without fullscreen mode).
Alexander Ebert [Sat, 22 Aug 2020 13:35:42 +0000 (15:35 +0200)]
Improved visuals of the fullscreen template comparison
Fixes #3473
joshuaruesweg [Sat, 22 Aug 2020 12:22:21 +0000 (14:22 +0200)]
Fix trophy icon size in badges on groupedUserTrophyList
Marcel Werk [Fri, 21 Aug 2020 15:42:29 +0000 (17:42 +0200)]
Adjusted appearance of the "sign in with google" button
Alexander Ebert [Fri, 21 Aug 2020 11:43:04 +0000 (13:43 +0200)]
Reopened dialogs were hidden behind new dialogs
Alexander Ebert [Thu, 13 Aug 2020 11:31:16 +0000 (13:31 +0200)]
Merge pull request #3500 from Krymonota/patch-12
Add missing phrases to English 3rd party register language items
Marcel Werk [Wed, 12 Aug 2020 16:22:37 +0000 (18:22 +0200)]
Prevent username overflow in the message sidebar
Marcel Werk [Wed, 12 Aug 2020 15:51:25 +0000 (17:51 +0200)]
Prevent changes to the showOrder setting of system boxes during an update
Alexander Ebert [Wed, 29 Jan 2020 13:38:56 +0000 (14:38 +0100)]
Prevent changes to the visibility settings of system boxes during an update/upgrade
Niklas [Tue, 11 Aug 2020 16:16:41 +0000 (18:16 +0200)]
Add missing phrases to English 3rd party register language items
Marcel Werk [Wed, 5 Aug 2020 16:49:12 +0000 (18:49 +0200)]
Merge pull request #3466 from Sir-Will/patch-1
Fixes exception when not using primary PayPal email
Tim Düsterhus [Wed, 5 Aug 2020 14:17:16 +0000 (16:17 +0200)]
Fix PHP 5.5 compatibility
see
b044815dd9b6509fc44219684d7076cd28a80aa6
see #3480
Sir-Will [Wed, 5 Aug 2020 13:51:26 +0000 (15:51 +0200)]
Verify if business argument is set in PayPal callback
Alexander Ebert [Wed, 5 Aug 2020 10:56:18 +0000 (12:56 +0200)]
Merge pull request #3462 from SoftCreatR/patch-14
Add detection for Chromium based Edge browser
Tim Düsterhus [Wed, 5 Aug 2020 10:05:08 +0000 (12:05 +0200)]
Do not decrement wcf1_user.articles when deleting unpublished articles
see
b044815dd9b6509fc44219684d7076cd28a80aa6
see #3480
Tim Düsterhus [Wed, 5 Aug 2020 09:58:13 +0000 (11:58 +0200)]
Update wcf1_user.articles when deleting articles
Fixes #3480
Sascha Greuel [Sun, 26 Jul 2020 15:19:00 +0000 (17:19 +0200)]
Added detection for Chromium based Edge browser
joshuaruesweg [Mon, 3 Aug 2020 16:12:07 +0000 (18:12 +0200)]
Fix updating `requireObjectID` for existing pages
Sir-Will [Tue, 28 Jul 2020 17:09:30 +0000 (19:09 +0200)]
Include PayPal business email in exception
Sir-Will [Tue, 28 Jul 2020 00:57:32 +0000 (02:57 +0200)]
Fixes exception when not using primary PayPal email
PayPal allows adding multiple emails, if you are using one of the alternative emails instead of the primary email then WoltLab will throw the exception.
The `receiver_email` is always the primary email while `business` is the secondary in the IPN.
Alexander Ebert [Sat, 18 Jul 2020 13:29:14 +0000 (15:29 +0200)]
Moved the remark on the cleanup script
Alexander Ebert [Sat, 18 Jul 2020 13:28:13 +0000 (15:28 +0200)]
Merge pull request #3450 from WoltLab/cms-embedded-object-remove
Removed embedded object references when deleting articles / pages
Tim Düsterhus [Fri, 17 Jul 2020 12:12:28 +0000 (14:12 +0200)]
Add update_com.woltlab.wcf_embeddedObjectOrphans.php
Tim Düsterhus [Fri, 17 Jul 2020 09:36:44 +0000 (11:36 +0200)]
Add note about deletion of orphaned embedded objects
see #3429
Tim Düsterhus [Fri, 17 Jul 2020 09:32:27 +0000 (11:32 +0200)]
Remove embedded object references when deleting pages
see #3429
Tim Düsterhus [Fri, 17 Jul 2020 09:25:24 +0000 (11:25 +0200)]
Remove embedded object references when deleting articles
see #3429
Tim Düsterhus [Thu, 16 Jul 2020 09:25:48 +0000 (11:25 +0200)]
Fix PHP 5.5 compatibility
Tim Düsterhus [Thu, 16 Jul 2020 09:24:05 +0000 (11:24 +0200)]
Tim Düsterhus [Thu, 16 Jul 2020 08:41:09 +0000 (10:41 +0200)]
Properly update page search index when editing
see #3430
Tim Düsterhus [Thu, 16 Jul 2020 08:40:38 +0000 (10:40 +0200)]
Properly update article search index when editing
see #3430
Marcel Werk [Tue, 14 Jul 2020 17:09:26 +0000 (19:09 +0200)]
Improved detection of the links to twitch's clips
Alexander Ebert [Mon, 13 Jul 2020 10:59:02 +0000 (12:59 +0200)]
Release 3.1.16
Alexander Ebert [Thu, 9 Jul 2020 19:08:44 +0000 (21:08 +0200)]
Prevent Chromium browser form injecting base64 encoded images
Tim Düsterhus [Tue, 7 Jul 2020 13:07:09 +0000 (15:07 +0200)]
Merge pull request #3439 from WoltLab/cronjob-fix2
Fix calculation of nextExec of cronjobs
Tim Düsterhus [Tue, 7 Jul 2020 12:26:20 +0000 (14:26 +0200)]
Fix calculation of nextExec of cronjobs
To properly calculate nextExec we must not specify the TIME_NOW parameter,
because if the cronjob is run on the scheduled time the nextExec() will
return the current time.
Not passing the TIME_NOW parameter adds at least 120 seconds of delay to
prevent this issue.
This bug was introduced in commit
485f8e1888824b862823de983e019afcb9bca7ce.
When moving the update of the execution time the calls were not correctly
moved and the explicit passing of TIME_NOW was added.
Tim Düsterhus [Mon, 6 Jul 2020 15:20:12 +0000 (17:20 +0200)]
Merge pull request #3428 from WoltLab/url-is
Fix Url::is()
Tim Düsterhus [Fri, 3 Jul 2020 13:53:39 +0000 (15:53 +0200)]
Merge pull request #3432 from WoltLab/linked-blocked-img
Fix markup for linked, blocked images in UGC
Tim Düsterhus [Fri, 3 Jul 2020 13:10:38 +0000 (15:10 +0200)]
Fix markup for linked, blocked images in UGC
Fixes #3384
Tim Düsterhus [Thu, 2 Jul 2020 14:40:16 +0000 (16:40 +0200)]
Fix Url::is()
`parse_url()` cannot be used to validate an URL, because it will accept
roughly everything. In fact this is documented in the parse_url() docs:
> This function is not meant to validate the given URL, it only breaks
> it up into the above listed parts. Partial URLs are also accepted,
> parse_url() tries its best to parse them correctly.
Fixes #3391
Alexander Ebert [Wed, 1 Jul 2020 09:15:01 +0000 (11:15 +0200)]
Merge pull request #3418 from WoltLab/cronjob-fix
Fix detection of stuck cronjobs
Tim Düsterhus [Tue, 30 Jun 2020 12:16:42 +0000 (14:16 +0200)]
Get rid of useless class attribute CronjobScheduler::$cronjobEditors
Just use a simple return value here. It avoids having to carefully manage
class state.
Tim Düsterhus [Tue, 30 Jun 2020 12:15:03 +0000 (14:15 +0200)]
Fix detection of stuck cronjobs
Consider the following scenario:
A cronjob is scheduled to run `0 * * * *` (i.e. every hour). The cronjob
successfully executes it's 23:00 execution belated on 23:30. Then the
nextExec will be 00:00. afterNextExec will be 01:00.
During night time nothing happens within the community, until at 05:xx when
the first user wakes up and opens their web browser. It restores two tabs
with our community and fetches them. Now the following will happen:
1. Request 1: Notices that the cronjob is due (00:00 < 05:xx). Setting
the cronjob's state to pending and starting execution.
2. Request 2: Notices that the cronjob is overdue (01:00 < 05:xx,
state = pending). Logging an error about a stuck job and
setting the cronjob's state to ready.
3. Request 1: Finishes executing the cronjob and updates nextExec = 06:00,
afterNextExec = 07:00, also setting the cronjob's state to
ready.
Fix this issue by updating the times for the next executions together with
the update of the state in a single database query / transaction. This will
prevent other requests from seeing the cronjob with state = pending or
state = executing and an way outdated date.
A side effect of this change is that cronjobs will match the intended
schedule better.
Consider the following:
A cronjob running every minute, taking 5 seconds to execute. The execution
is triggered at 00:00:58. It will finish executing 00:01:03. Previously the
nextExec would be set to 00:02:00, now it will be 00:01:00. Thus the first
request after 00:01:03 (i.e. once the state is set back to ready) will
trigger execution, more closely matching the intended schedule.
Tim Düsterhus [Tue, 30 Jun 2020 12:07:51 +0000 (14:07 +0200)]
Improve error message for stuck cronjobs
Matthias Schmidt [Sun, 28 Jun 2020 12:35:35 +0000 (14:35 +0200)]
Hide empty tag box on tagged page
Alexander Ebert [Sat, 27 Jun 2020 10:54:23 +0000 (12:54 +0200)]
Release 3.1.15
woltlab.com [Sat, 27 Jun 2020 09:58:45 +0000 (09:58 +0000)]
Updating minified JavaScript files
Alexander Ebert [Sat, 27 Jun 2020 09:56:53 +0000 (11:56 +0200)]
Merge branch '3.0' into 3.1
Alexander Ebert [Sat, 27 Jun 2020 09:52:48 +0000 (11:52 +0200)]
Preparing the release 3.0.25
Alexander Ebert [Sat, 27 Jun 2020 09:51:15 +0000 (11:51 +0200)]
Revert "Preparing the release 3.1.15"
This reverts commit
bd4d9de5fc28d17643c109fc87ae88f2d9265817.
Alexander Ebert [Sat, 27 Jun 2020 09:50:30 +0000 (11:50 +0200)]
Preparing the release 3.1.15
Alexander Ebert [Sat, 27 Jun 2020 09:41:29 +0000 (11:41 +0200)]
Incorrect encoding of conditions
Alexander Ebert [Sat, 27 Jun 2020 09:40:49 +0000 (11:40 +0200)]
Merge branch '3.0' into 3.1
Alexander Ebert [Sat, 27 Jun 2020 09:39:05 +0000 (11:39 +0200)]
Incorrect encoding of conditions
Marcel Werk [Thu, 25 Jun 2020 09:03:06 +0000 (11:03 +0200)]
Fixed 'data too long for column username' issue
Marcel Werk [Tue, 23 Jun 2020 15:37:07 +0000 (17:37 +0200)]
Article image did not always have the right content language
Marcel Werk [Tue, 23 Jun 2020 10:03:01 +0000 (12:03 +0200)]
Fixed 'Prepared statement contains too many placeholders' error in bulk processing
Marcel Werk [Mon, 22 Jun 2020 22:02:56 +0000 (00:02 +0200)]
Message with the content "0" led to empty entries in recent activities
Marcel Werk [Mon, 15 Jun 2020 16:22:59 +0000 (18:22 +0200)]
Merge pull request #3368 from WoltLab/twitch-bbcode-fix
Fixed broken twitch bbcode
Marcel Werk [Mon, 15 Jun 2020 16:14:40 +0000 (18:14 +0200)]
Applied code suggestions
Marcel Werk [Sun, 14 Jun 2020 16:32:26 +0000 (18:32 +0200)]
Fixed broken twitch bbcode
Embedding now requires the new 'parent' parameter
joshuaruesweg [Thu, 11 Jun 2020 19:06:06 +0000 (21:06 +0200)]
Fix sitemaps added multiple times in index file
Marcel Werk [Wed, 10 Jun 2020 18:10:23 +0000 (20:10 +0200)]
Fixed bug with multiple comment widgets on a single page
Alexander Ebert [Tue, 9 Jun 2020 12:08:14 +0000 (14:08 +0200)]
Typo
Alexander Ebert [Wed, 3 Jun 2020 16:18:01 +0000 (18:18 +0200)]
Template event for reported user profiles
Tim Düsterhus [Wed, 3 Jun 2020 10:19:11 +0000 (12:19 +0200)]
Merge branch '3.0' into 3.1
Tim Düsterhus [Tue, 2 Jun 2020 17:02:42 +0000 (19:02 +0200)]
Merge pull request #3342 from Krymonota/remove-obsolete-user-signature-properties
Remove obsolete signature properties documentation
Niklas (Krymonota) [Sat, 30 May 2020 17:31:46 +0000 (19:31 +0200)]
Marcel Werk [Fri, 29 May 2020 18:49:30 +0000 (20:49 +0200)]
Improved notifications for expiring paid subscriptions
Alexander Ebert [Tue, 26 May 2020 21:59:58 +0000 (23:59 +0200)]
Merge pull request #3337 from Krymonota/patch-10
Log invalid receiver email in PayPal callback
Marcel Werk [Tue, 26 May 2020 10:32:45 +0000 (12:32 +0200)]
Fixed issue caused by an invalid default value for date user options
joshuaruesweg [Tue, 26 May 2020 09:29:07 +0000 (11:29 +0200)]
Remove font-size from trophy images
joshuaruesweg [Tue, 26 May 2020 09:10:37 +0000 (11:10 +0200)]
Add missing long class for user trophy description
joshuaruesweg [Tue, 26 May 2020 09:01:11 +0000 (11:01 +0200)]
Fix symlink issue during synchronisation of file pip
Niklas (Krymonota) [Mon, 25 May 2020 15:43:08 +0000 (17:43 +0200)]
Log invalid receiver email in PayPal callback
This adjustment should make it easier for administrators to identify the cause of this exception.
Alexander Ebert [Sun, 24 May 2020 19:38:15 +0000 (21:38 +0200)]
Incorrect import in PHP 5.5
Alexander Ebert [Sun, 24 May 2020 19:26:59 +0000 (21:26 +0200)]
Ignore tainted apps for the landing page
See #3332
Alexander Ebert [Sat, 23 May 2020 20:12:44 +0000 (22:12 +0200)]
Backport of CVE-2019-11358
Alexander Ebert [Sat, 23 May 2020 20:11:16 +0000 (22:11 +0200)]
Merge branch '3.0' into 3.1
Alexander Ebert [Sat, 23 May 2020 20:10:54 +0000 (22:10 +0200)]
Backport of CVE-2019-11358
See #3159
Marcel Werk [Sat, 23 May 2020 17:37:45 +0000 (19:37 +0200)]
Fixed wrong cli command
Tim Düsterhus [Thu, 21 May 2020 23:50:19 +0000 (01:50 +0200)]
Merge branch 'Krymonota-fix-en-interval-full-past-insentence' into 3.1
Niklas [Thu, 21 May 2020 23:37:54 +0000 (01:37 +0200)]
Remove unnecessary conditions in wcf.date.interval.full.past.inSentence
Niklas [Fri, 24 Jan 2020 16:30:31 +0000 (17:30 +0100)]
Fix day in wcf.date.interval.full.past.inSentence
e. g. "day, an hour and 49 minutes ago" -> "a day, an hour and 49 minutes ago"
Closes #3142
Tim Düsterhus [Wed, 20 May 2020 13:05:54 +0000 (15:05 +0200)]
Implement StringUtil::getRandomID() using PasswordUtil::getRandomPassword()
see
2ca6835c56fd478b8a685bcf2be72245a8231c37
Closes #3262
Niklas [Sun, 17 May 2020 15:16:39 +0000 (17:16 +0200)]
Fix column classes in menuList template (#3313)
Niklas [Sun, 17 May 2020 15:15:46 +0000 (17:15 +0200)]
Fix column classes in boxList template (#3312)
* Fix ID column name in boxList.tpl
* Add missing columnID class
Joshua Rüsweg [Sun, 17 May 2020 14:17:10 +0000 (16:17 +0200)]
Merge pull request #3306 from WoltLab/editorconfig
Add .editorconfig file
joshuaruesweg [Fri, 15 May 2020 15:05:52 +0000 (17:05 +0200)]
Add .editorconfig file
Marcel Werk [Thu, 14 May 2020 18:44:28 +0000 (20:44 +0200)]
errors while executing cronjobs were missing in the global error log
Niklas [Tue, 12 May 2020 14:38:36 +0000 (16:38 +0200)]
Fix typo in CustomOption PHPDoc (#3303)
Alexander Ebert [Sun, 10 May 2020 19:56:13 +0000 (21:56 +0200)]
Deploy the cleanup script first
woltlab.com [Sun, 10 May 2020 18:33:15 +0000 (18:33 +0000)]
Updating minified JavaScript files
Alexander Ebert [Sun, 10 May 2020 18:31:43 +0000 (20:31 +0200)]
Release 3.1.14
Alexander Ebert [Sun, 10 May 2020 18:25:21 +0000 (20:25 +0200)]
Forced redeployment of some files
Alexander Ebert [Fri, 8 May 2020 18:06:18 +0000 (20:06 +0200)]
Merge pull request #3293 from WoltLab/filereader-filename
Fix charset of the 'filename' field within the Content-disposition he…