Our resources on ScarletFox are CLEAN and SAFE. So you can use them for development and production.
Implemented notifications to the topic author when a question or topic is marked as solved. Implemented notifications to the poster when their post is marked as the solution to a topic or the best reply to a question. Implemented maximum dimensions of 800px x 800px for forum grid images to allow the software to reduce the size of extremely large images. Changed "popular posts" in the topic statistics area to make each displayed post a link to the post. Changed "posted images" in the topic statistics area to link attached images to the post they were attached to. Changed the unarchiving task to process quicker. Changed digest emails to honor the email truncation option. Changed the "Unsolved" option for topic feed widgets to restrict results to Question and Answer forums or forums with "Mark as solved" enabled. Added option to display inline moderation actions in between posts (if enabled) without the moderator name to non-moderators. Added per-group option to hide inline moderation actions shown in between posts. Added statistic block to show "Percentage of topics solved" to compare topics posted vs those marked solved within question and answer forums, or forums that allow a solution to be marked. Added statistic block to show "Average time to solved" for question and answer forums, or forums that allow a solution to be marked. Added the missing 'features' color field to forums categories. Added lazy load support to preview images in Topic Summary sidebar. Added lazy load support to forums when in grid view. Added support for the expanded topic view display within the fluid topic listing interface. Fixed an issue changing time periods when viewing new topic and post statistic charts. Fixed issues setting and unsetting best answers on topics. Fixed "solved" interface elements displaying for topics within forums where the ability to mark topic solutions has been disabled. Fixed an issue where viewing a topic when the last post is hidden does not mark the topic as read. Fixed reaction count showing incorrectly when viewing whole topic’s reactions (i.e. from expanded view). Fixed a bad id attribute in the post template. Optimized queries when all forums do not use a password. Improved performance of topic embeds. Improved performance of very large topics. Improved performance of the Forum Statistics widget on large forums. Improved performance of topic statistics. Improved performance of expanded forum view for large forums. Added the ability to show when specific group(s) have replied to a topic when viewing a list of topics Added filters to the topic list view to quickly isolate hidden topics and topics with hidden posts. Fixed an issue where the border-radius was incorrectly 0px in Q&A Forums. Improved results for "Popular Questions This Month" tab for Q&A Forums. Fixed an issue where club forums wouldn't show in Fluid View if only one root category exists. Fixed an issue where topic feeds could show cached read/unread status. Fixed an issue where Grid Card Images could show lost links. Fixed an issue where Youtube Shorts URLs would not embed. Fixed the position of the queued content badge in fluid view, which was overlapping the topic stats. Fixed an issue where topics marked manually for unarchiving would not be processed. REST / OAuth
Fixed OAuth login if guests cannot access site. Fixed creating a content item by the REST API not triggering a webhook. Fixed Zapier's API calls showing in logs without a name for the key. Fixed some duplicated error codes. Pages
Added a data-pageName parameter for the body tag with the page path (folder/name) for better CSS targeting. Changed two column page builder pages to use vertical widget layouts. Changed category fiters in databases to not require CSRF keys in order to apply filtering. Improved AdminCP logging of certain actions. .well-known can now be used as a folder name for Apple Pay verification in Commerce. Fixed an error that can occur after a database is deleted if there are pending review or comment deletions for the database. Fixed an error when creating a new block in the "Custom" block category has been deleted. Fixed orphaned files being left over when deleting fields, records and databases in the AdminCP. Fixed an error where saving templates for similar blocks with the same template name can result in an error. Fixed an issue where deleting a page may delete all pages within an unrelated subfolder. Fixed an issue when hiding a comment on a database with forum syncing using multi-moderation triggers a page not found error. Fixed an error attempting to use the advanced search for a Pages database in the AdminCP. Fixed unclear AdminCP logs when performing actions such as copying, editing or deleting a database. Fixed an issue where record authors couldn't respond to reviews. Fixed a PHP notice for certain reciprocal database link fields. Fixed orphaned review records being left behind when a database is deleted. Fixed an issue where automatically-generated topics did not trigger notifications for followers of the forum. Fixed an issue where "Publish Date" may not show correctly in record feed sort options. Fixed an issue where deleting a database which was used as reciprocal field in another database would result in error. Fixed an issue where importing RSS feeds to Pages could set the wrong author. Fixed an issue where article images would float outside of their content box if the article only contained a few lines of text. Fixed an issue with attachments not properly associating with comments on a record and not being deleted if the comment is deleted when syncing comments with the forums. Fixed an issue where copying blocks could result in lost attachments or languages strings. Fixed an issue where HTML logic of a page may be stored in the search index. Fixed and issue where inline editing an item field wouldn't update the reciprocal map. Fixed an issue with the REST API where a GET request to records with a category parameter would result in a DB error. Fixed an issue where it's possible to create two Folders with the same name, causing conflicts. Fixed an issue where the API can delete a forum even if a database posts topics to that forum. Fixed an issue where deleting a database wouldn't delete the associated rss feed import data. Fixed a niche issue where it was possible for a record name to show on the online list when the viewer does not have permission to view it. Commerce
Added a confirmation pop-up when mass approving account withdrawals. Added an option to limit Withdrawal requests to one per currency at any time. Added a missing language string for the review widgets. Renewal invoice warning emails will now show tax included, if applicable. Improved email normalization for MaxMind fraud detection. Subscriptions Grace Period setting will now allow a value of 0. Fixed Commerce generating incomplete accounts when the "Ask to provide a display name?" setting is off. Fixed an issue where you may be able to purchase more than the number of items in stock. Fixed race-condition potentially causing duplicate purchase records or transactions. Fixed interactions on invoice table when viewing a purchase in AdminCP. Fixed error trying to access a customer's support request history from the sidebar when viewing a support request. Fixed error trying to approve a transaction from a Stripe dispute page. Fixed some countries not showing in Markets statistics page. Fixed an error attempting to delete support replies in the AdminCP. Fixed error reporting when checking out with Stripe on a free trial with incorrect card details. Fixed billing name not being passed to Stripe when paying with card. Fixed an error when running PHP 7.4 and adding items with certain configurations to the cart. Fixed an issue with certain email notifications generated by Commerce resulting in errors or potentially incorrectly formatted amounts. Fixed an issue where editing a purchase's grace period would enable renewals on the purchase even if there are none specified. Fixed an issue where guest location tracking via cookie did not work correctly. Fixed an issue where replying to a support request and returning to the list of requests does not mark the request as read. Fixed an issue where customers could not reactivate subscriptions where an existing subscription was cancelled but allowed the customer to reactivate. Fixed an issue where checking out with an item without a renewal charge could in some circumstances cause an error. Fixed some missing friendly URLs on various pages of Commerce. Fixed an issue where disabled subscriptions couldn't be canceled. Fixed an issue where renewal terms were not presented on the front end in the order they are specified in the AdminCP. Fixed an issue where support tabs in the AdminCP would not wrap and could cause the page to stretch. Fixed an error when running PHP 7.4 when creating new support streams in the Admin CP. Fixed an issue where if a customer cancels a PayPal billing agreement immediately after the initial payment before the webhook for that payment is received, the payment becomes associated with a blank invoice. Fixed an issue where a user may be prompted to provide card details when purchasing a free trial, even if the product being purchased is restricted to non-card payment methods. Fixed an issue with Member Filters happening when members where filtered by subscriptions and purchases. Fixed an issue where copying a donation goal would not copy the donation goal description. Fixed an issue where copying a support department would not copy the support department submission screen text. Fixed an issue where copying a support severity would not copy the support severity description. Fixed an issue where deleting a support status would not remove the custom language strings in the database. Fixed an issue where copying or deleting a shipping rate did not copy or delete the delivery estimate text. Fixed an issue where copying or deleting a product filter did not copy or delete the public name. Fixed an issue where copying or deleting a product did not copy or delete various translatable fields, such as the client area page content and email notification subjects. Fixed an issue where canceling an ad purchase would result in an error. Fixed an issue where users may not see the correct page after checkout if email validation is in use. Fixed an IN_DEV error editing Pages templates that was thrown for applications without any Pages Templates. Fixed an error that can occur in some situations when allowing upgrading purchases between renewals pro-rata. Fixed an issue where Stripe webhook events may fail in some circumstances. Fixed an issue where API requests may cause an error if referencing transactions from deleted members. Fixed an issue where merging members could leave members as alternative contacts for themselves. Fixed an issue where the first step may be skipped during checkout even if custom fields are required. Gallery
Added ability to remove category and album cover photos. Adjusted default Gallery bandwidth retention period from unlimited to 1 year. Improved performance of certain areas of Gallery. Improved performance of the Gallery Statistics widget on large galleries. Fixed not being able to upload to Gallery if albums are required, and the member had previously created an album, but the member can no longer create new albums. Fixed not being able to toggle "Enable maps by default" on in the Gallery settings. Fixed multiquoting comments. Fixed an issue where maximum allowed file sizes for images or movies may not be applied as expected in certain configurations. Fixed a CSRF error when mass-managing Gallery category content (moving to another category or deleting). Fixed an issue toggling maps enabled for images in certain cases. Fixed albums not being hidden when a user is flagged as a spammer. Fixed an issue with the submission progress bar for some locales. Downloads
Added an option to require a change log to be submitted with new version updates. Added the ability for files to be re-activated after renewals are cancelled. Added statistics pertaining to the most downloaded files Changed the "Upload a new version" process to also verify the user can add to the category, in addition to being able to edit the file. Fixed an issue where downloading small files can fail. Fixed several issues handling watermarks and original non-watermarked screenshots. Fixed an issue where group limitations on maximum file submission size may not apply correctly when a member belongs to more than one group. Fixed an issue with submit buttons showing for club Downloads categories that a user does not have permission to submit to. Fixed an issue in the logic that determines whether a renewal invoice should be generated. Fixed an issue where downloads digest emails can contain broken thumbnails. Fixed an issue where rejected pending versions could leave screenshots and thumbnails orphaned on disk. Fixed an issue where a lot of files submitted that were queued as pending files could cause an error. Fixed the hardcoded "Change how the notification is sent" text when the notification blurb. Fixed an issue where the API can delete a forum even if a downloads category posts topics to that forum. Removed the not working search options from the custom fields edit form. Blogs
Added ability to manage entry categories for group blogs when viewing the blog on the front end. Fixed a bug where flagging a user as a spammer will disable all group blogs the user has access to submit entries to. Fixed pagination when showing blog entries in a particular category. Fixed an issue where creating a blog in the frontend would show the previous created blogs description. Fixed entry cover photos becoming orphaned when the entry is deleted. Fixed some breadcrumb links not using friendly URLs. Fixed some broken language phrases when Forums and Pages are not installed. Fixed an issue where some members couldn't report specific blog entries. Fixed an issue where the AdminCP livesearch results link to categories instead of blogs. Removed view options for guests in blogs. Removed Aggregate rating from JSON-LD structured data Calendar
Fixed an issue where the cover photo may be deleted when duplicating an event. Fixed an error when editing iCalendar feed imports in the AdminCP. Fixed a bug where recurring events in upcoming event widgets may display the wrong date. Fixed a bug where events may show on the daily view in calendar on days the event does not occur. Fixed event cover photos becoming orphaned when the event is deleted. Fixed a minor bug where ranged events crossing from one week into another may not be visually represented as doing so. Fixed a bug where iCalendar feeds that are imported into Calendar may cause previously viewed events to show as unread. Fixed events occurring on the same day not ordering properly in the Upcoming Events widget. REST / OAuth
Fixed creating a content item by the REST API not triggering a webhook. Fixed creating a topic in a category (i.e. a container which cannot have topics posted to it) not reporting an error. Converter
Added support for wpForo 1.9.x. Added support for converting Markdown formatted posts in Vanilla. Improved converters to skip invalid child applications that do not exist. Improved performance of the Vanilla converter. Fixed an issue where large filenames could cause a logging error. Fixed an issue where pre-configured CMS Category permissions may not be correct. Fixed custom fields not converting properly from WordPress. Fixed an issue where acronyms may not convert from Invision Community. Fixed a niche issue where a temporary database column may be missing. Fixed an issue converting checkbox set custom fields in some cases. Fixed an issue where legacy SMF attachments may not be converted. Fixed an issue converting some types of SMF profile photos. Fixed an issue where emoticons in content may not get converted properly. Fixed an issue where a conversion from IPS forums would fail. Fixed an issue where long topic titles in 3rd party applications could cause forum conversions to fail. Fixed some issues when converting from Vanilla and your files used to be in S3. Fixed a niche issue where really old vBulletin avatars may not be converted. Changes affecting third-party developers and designers
Added a $seperator parameter to \IPS\CustomField::displayValues which can be used to define a custom seperator when displaying multiple values . Updated method signature for \IPS\Node\Model::getLastCommentTime(). Added a $count parameter to \IPS\Content::definiteArticle/_definiteArticle(). If an integer is passed, a pluralized phrase will be used, if available. You should add pluralized strings for any __defart_* strings you've already created. The key should be in the format __defart_*_plural.