IPS Community Suite

IPS IPS Community Suite 4.7.19 Nulled

No permission to download
Key Changes
Version 4.4.7 is a maintenance update to fix critical issues reported since 4.4.7.

Additional Information
Core

  • Upgraded CodeMirror to 5.49.0.
  • Upgraded CKEditor to 4.13.
  • Increased the amount of text that can be stored within an announcement.
  • Fixed merging members creating duplicate follow records.
  • Fixed an issue where accounts banned as a result of the spam service may be deleted automatically if email validation is enabled, allowing the user to register again.
  • Fixed an issue embedding Twitch clips in some cases.
  • Fixed a performance issue with Elasticsearch and posting in large topics.
  • Fixed an issue where content items would stop showing in streams when deleting the last comment on that content item and using Elasticsearch.
  • Fixed a CSRF error paginating through clubs after changing your view preference.
  • Fixed floated images inside spoilers breaking out of the spoiler box.
  • Fixed an issue with club breadcrumbs on mobile devices when the "Overview" tab is not the default tab for the club.
  • Fixed an issue confirming guests have not reviewed an item when they have used the "post before registering" feature.
  • Fixed an issue where the submit button on the account validation screen could be clicked multiple times, resulting in more than one confirmation email being sent.
  • Fixed possible issue downloading the member list export on larger sites.
  • Fixed a styling issue viewing the list of members who were not initially included in a member export.
  • Fixed an issue where club nodes weren't shown in the node selector while creating custom streams in the ACP.
  • Fixed a possible error in the menu manager where editing a deleted menu item would throw an exception.
  • Fixed an issue where email addresses weren't saved for accounts created via non-default login methods when allowed domains were defined.
  • Fixed a bug where certain email notifications triggered by guests may show incorrect verbiage in the email content.
  • Fixed two issues where replying to Status Posts or hiding/unhiding them could fail when Elastic Search is being used.
  • Fixed an issue saving custom chart views in the AdminCP when a lot of nodes were stored.
  • Fixed an issue updating date ranges for custom chart views in the AdminCP in some cases.
  • Fixed a styling issue for widgets not set to show on all devices in some cases.
  • Fixed an issue where cancelling editing a post with a spoiler results in the spoiler no longer working.
  • Fixed an issue where spotify links wouldn't embed.
  • Fixed some missing friendly URLs.
  • Fixed a niche error where a wrong message can be displayed if there is a network failure whilst browsing status updates.
  • Fixed an issue where multiple New User Awaiting Validation notifications can be sent when using User then Admin Validation.
Forums

  • Fixed an issue where multipage topics that have been read can be marked as unread when visiting a page other than the last.
  • Fixed a styling issue in QA forums when no rows are shown.
  • Fixed an issue where an incorrect meta description tag may persist when navigating through the forums.
Gallery

  • Fixed an issue which made it impossible to move images into albums set to allow submissions from the public, specific members, specific groups, and club members.
  • Fixed promote button not showing on non-lightbox Gallery image view fallback page.
Commerce

  • Fixed potential double charges if using Stripe.
  • Fixed customer name showing as random characters in Stripe when a guest purchases something and opts to save their card on file.
  • Fixed Hosting Error ACP Notifications causing an error when viewing the notifications page.
  • Fixed an issue when a guest makes a donation.
  • Fixed the missing overlay title while creating & editing an invoice note.
  • Fixed possible timeout error when generating invoices manually in the AdminCP.
  • Fixed an issue where purchases which wouldn't require a billing address couldn't be marked as paid.
  • Fixed an issue where club joining fees may be shown without tax.
Pages

  • Fixed an issue previewing feed blocks in the AdminCP when restricting the feed by author.
  • Fixed an issue where "Records" would be shown in database notification emails if categories were not being used for the database.
Calendar

  • Fixed manual iCalendar uploads requiring a venue to be specified if venues are enabled.
  • Fixed an error importing ics files in the AdminCP if a venue is specified.
Converters

  • Added support for vBulletin 5.5.3+ conversions.
  • Added support for XenForo 2.1.x conversions.
  • Fixed issues with running conversions on MySQL 8.0.17 or newer.
  • Fixed an issue converting from MyBB where PMs would not reflect the correct conversation starter.
  • Fixed an issue where members may not be correctly assigned to groups that were added during the conversion.
  • Fixed a bad log reference when converting from Gallery if the image is invalid.
  • Fixed an issue where an error may be triggered when installing a new application and attempting to start a new conversion.
  • Fixed an issue converting WordPress post thumbnails to Pages record image.
Third-Party / Developer / Designer Mode

  • Centralized the breadcrumb generation method for club nodes to reduce code duplication and ensure breadcrumb consistency.
  • Changed `\IPS\Http\Url::ips()` to be declared as `final`, so hooks cannot override it.
  • Fixed an issue using custom table helpers without quicksearch where the result and page counts may inadvertently get reset.
  • Fixed an issue where cached unapproved/hidden review counts when merging content items were not adjusted properly. **You may wish to rebuild these counts in an upgrade routine within third party applications that support reviews and merging of content items.**
  • Fixed an issue where the hidden status when creating a new review may not be set properly during creation when calling `\IPS\Content\Review::create()`.
  • Minor code clarification where curly braces were omitted (while unnecessary, some found the code confusing to read).
Key Changes
Version 4.4.7 is a maintenance update to fix critical issues reported since 4.4.6.
Additional Information
Security
  • Fixed external video URLs being embeddable which could allow htaccess prompts for Firefox users, which could be manipulated for social engineering.
  • Fixed SSRF vulnerability if image proxy is enabled.
  • Fixed GET data overwriting POST data when submitting a form.
Core
  • The gateway files for downloading attachments now issue a Content-Security-Policy header.
  • Clarified verbiage on button when resuming a UTF8 conversion.
  • Added a message for when REST API test fails due to a path conflict.
  • Added the ability to fetch members via the REST API with activity_before/activity_after parameters.
  • Added `device_key` cookie information to the cookie page.
  • Adjusted Community in the Cloud auto-upgrader interface for future upgrades as the existing progress bar was inaccurate.
  • Adjusted the Friendly URL list to allow legacy customised URLs to be reverted.
  • Updated 'username' verbiage in some areas to refer to 'display name' instead.
  • Users will now be redirected directly to reviews they submit rather than back to the item.
  • Fixed individual comments sometimes showing in “Items Only” streams when using Elasticsearch.
  • Fixed an issue where content may not be presented in Elasticsearch searches after it is updated.
  • Fixed an issue where anonymous state can be lost for sessions when using Redis for session handling.
  • Fixed errors viewing and rebuilding the leaderboard, using post before registering and viewing social promotion when MySQL 8.0.17 is used.
  • Fixed a duplicate column error that may be logged when upgrading.
  • Fixed an error that can occur when tracking email statistics if the email is sent from a task.
  • Fixed an issue where uploading a new version of a theme may not immediately reflect changes when using disk caching.
  • Fixed an issue where editing some login handlers (Facebook, Microsoft, etc.) can break in some situations when editing their details.
  • Fixed unstyled content showing in Firefox on pages containing embeds if lazy-loading is enabled.
  • Fixed an issue were re-promoting content may not correctly show the selection state of existing image attachments.
  • Fixed a rare niche issue where it's possible for a digest task to get stuck in a loop.
  • Fixed an issue with unapproved comment notifications in situations when merging content and retaining a link.
  • Fixed an issue where it's possible to cause an uncaught exception by manipulating the URL for a content item that doesn't support reactions.
  • Fixed an issue where MySQL search index records were incorrectly deleted.
  • Fixed a missing language string on the 'Support Account' AdminCP notification when Commerce isn't present.
  • Fixed an issue with the LDAP login handler where error messages during set up may not be descriptive.
  • Fixed an issue where the empty BreadcrumbList ld+json tag would be added to the output.
  • Fixed an issue where it was possible to bypass profanity filters when using quick title edit.
  • Fixed an issue where admin control panel failed mail notifications could show a template error.
  • Removed options for content widget feeds to return hidden content added in 4.4.5 which has been unreliable
Forums
  • Fixed “Reply to this topic” button not working for guests
  • Fixed an issue where the ACP - "Popular Now" forum settings couldn't be saved.
Blogs
  • Fixed an issue where the upgrade could fail because of missing database columns.
Pages
  • Fixed an error when pasting a page link into an editor, it displayed as an embed of the entire site.
  • Fixed permissions not synchronizing properly when changing a database from using categories to not using categories.
  • Fixed Editor fields pre-populating content from other records when the "Editable when viewing a record" setting is used.
  • Fixed an issue where externally embedded blocks do not work if "Allow community to be embedded in an iframe" is not set to "Anywhere".
Calendar
  • Fixed all day event dates showing incorrectly in email notifications in some timezones.
Downloads
  • Fixed an issue with top downloaders/submitters statistics page losing filters when changing pages.
  • Fixed an issue with downloads storage handler custom URL when upgrading from 3.x.
Gallery
  • Fixed an issue with top uploads statistics page losing filters when changing pages.
Converters
  • Improved converted row caching when running multiple conversions back-to-back.
  • Conversions will now explicitly strip HTML tags in member titles.
  • Attempt to correct corruption of serialized profile field data during conversion from vB.
  • Fixed a potential issue that can occur converting vB Blog.
  • Fixed certain data not being converted (affects SMF, vB5, Vanilla, phpBB, UBBThreads, Expression Engine).
  • Fixed an issue where the 'manage conversions' page may not load if you have legacy conversions.
  • Fixed an issue when converting content from vB5 which contains [IMG2] or [USER] BBCode.
  • Fixed an issue when converters attempt to convert administrators if the last update time is available.
  • Fixed a number of issues converting vB CMS attachments.
Commerce
  • Added permalinks to the Information, Shipping, and Reviews tabs when viewing a package in the store.
  • Added a new 'neutral' display for ticket history statistics (i.e. if a statistic matches the 30 days prior).
  • Fixed an issue where members could add themselves as an alternative contact.
  • Changed the package seo name column length to 255 characters.
  • Fixed renewal invoices being generated with the wrong billing address for transferred purchases.
  • Fixed an error fetching license key info through the Commerce license key API.
  • Fixed an issue where the tax name in invoice emails could be missing.
  • Fixed an issue where deleting a support department can result in an error in some circumstances, if that department had custom fields mapped to it.

Third-Party / Developer / Designer Mode
  • Applications can no longer be set as the default application if they have no front modules.
  • Fixed an error creating a new conversion software library using the AdminCP tools.
  • Fixed an issue where content items that have not defined a `$containerNodeClass` property could throw an error during searches.
Key Changes
Version 4.4.6 is a maintenance update to fix issues reported since 4.4.5.
Additional Information
Security
  • Fixed an issue where a malicious user may be able to identify the full path to a file uploaded to a custom field.
Core
  • Added support for MySQL 8.
  • Improved security headers on error pages.
  • Changed the "Who follows this" page to instruct bots not to index the page for SEO purposes.
  • Moved the Club Members Box to the sidebar when the club information are shown in the sidebar.
  • Fixed an error visiting the full notifications screen when the user has no notifications.
  • Fixed an issue where old messenger links may not redirect correctly.
  • Fixed an issue where new comment notifications can show an incorrect read status.
  • Fixed club sorting preference being lost when navigating to another page of clubs.
  • Fixed an issue where the "Bypass word and link filters" setting was not honored for links.
  • Fixed attachments not being properly claimed when added to a Staff Directory member entry.
  • Fixed an issue where reordering social profiles may not show the reordered list after saving without reloading the page.
  • Fixed a potential error when an invalid sort parameter is passed in to certain pages.
  • Fixed an issue where certain tables of data may show an incorrect number of pages when filtering the table.
  • Fixed the Leaderboard popular content inconsistency when using ElasticSearch.
  • Fixed an issue where Pages blocks wouldn't show in the configuration form when using the block manager.
  • Fixed an issue where creating a club feature could result in a DB exception.
  • Fixed broken ACP tables on Internet Explorer 11.
  • Fixed an issue where Status Posts couldn't be deleted.
  • Fixed an issue where 0B may be displayed in place of the real Redis maximum memory amount on the support overview page.
  • Fixed an issue where using REDIS as session storage would return the wrong members for the online list.
  • Fixed an issue with lazy-loading where images with a custom aspect ratio set did not honor the ratio after loading.
REST & OAuth
  • Fixed OAuth Logins being broken because of a missing DB column.
Blogs
  • Fixed blog entries from clubs showing on the Blog applications Grid View when the "Show Club Content Areas" setting is set to "Only Within Clubs".
  • Fixed an error that can occur with some configurations when attempting to add or move a blog entry.
Pages
  • Fixed an issue where the wrong user may be notified of Pages database records being embedded in other content areas.
  • Fixed an issue where attachments in newly submitted database records would not be used when embedding records in other areas of the software.
  • Fixed an issue with Schema.org structured data tags in Pages when the site has a logo image applied to the theme.
  • Fixed an error searching databases in the AdminCP using the quicksearch input on the database listing page.
  • Fixed an issue in the Pageurl Output Extension which was catching a not existing exception.
Gallery
  • Fixed media sound continuing to play after closing the lightbox.
  • Fixed an error that can occur when attempting to view disk space statistics when there are none.
Calendar
  • Fixed an issue where all day ranged events reflect the wrong event end date in iCalendar exports.
  • Adjusted ical import process to ignore WKST values of 'MO' (which is the default) to reduce false-positive error reports.
Converters
  • Fixed some issues converting MyBB content including profile fields, avatars & attachments.
Commerce
  • Added ability for administrator to choose what to do after a dispute is won (previously would automatically re-approve the transaction).
  • Fixed an issue where the tax name in invoice emails could be missing.
  • Fixed potential uncaught exception if trying to view a product in the AdminCP that doesn't exist.
  • Fixed an issue where the description of new payment gateways wasn't saved successfully.
Third-Party / Developer / Designer Mode
  • Fixed an issue using the node form helper when not using $titleLangPrefix in the node model, and using apostrophies in a node's title.
  • Fixed an issue where the wrong member's AdminCP notification dismissals were referenced in \IPS\core\AdminNotification::notificationIdsForMember().
  • Fixed an issue where Nodes that do not implement permissions may still try to check them, resulting in an error in some situations.
Changes affecting third-party developers and designers
  • Added an ID to the mobile navigation sign in link elSigninButton_mobile.
  • All columns named member must now be escaped with backticks when querying the database in order to support MySQL 8.
Key Changes

Version 4.4.5 is a maintenance update to fix issues reported since 4.4.4.
Additional Information

Core

  • Added an Admin CP dashboard widget to show total members.
  • Added back the ability to search personal messages by recipient and sender name, and removed the 365 day limit on results.
  • Added an option for feeds of content that support future publishing (such as Pages records and Blog entries) to control whether published, unpublished or any results are shown.
  • Added new options for content widget feeds to return hidden content (in addition to the existing pending approval option), as well as both hidden content and content pending approval.
  • Added support for more explicit browser autofill on form fields.
  • Added moderator log support for opening/closing polls.
  • Upgraded CKEditor to 4.12.1.
  • Improved the page speed for guests by not loading the editor or notification sound javascript libraries until they are needed.
  • Improved the error message when attempting to access the REST API in the Admin CP in the event the local server is inadvertently IP banned.
  • Improved performance when sending Digests.
  • Improved license key checking when the license server may not be available.
  • Improved reporting of Redis memory usage in support area.
  • Improved the error message when attempting to access the REST API in the Admin CP in the event the local server is inadvertently IP banned.
  • Improved performance when using the database for common data storage.
  • Improved the accuracy of the progress bar on the 'Deleting moved original files' background process.
  • Improved efficiency when generating sitemap files if certain content is configured not to be included.
  • Improved the user interface configuring Sitemaps to clarify content that will be include and excluded from the Sitemap.
  • Improved admincp upgrading when using SFTP.
  • Implemented logging to the moderator log, when a moderator removes all followers from a followable item.
  • Changed notification read/unread status to behave as it did prior to 4.4.4.
  • Clarified the "Domains to instruct search engines to follow" setting description and improved the setting to strip http:// and https:// protocols from supplied values.
  • Fixed account failed logins not correctly locking future login attempts in some cases.
  • Fixed an issue where node deletions (such as forums and categories) were not always properly logged to the administrator logs.
  • Fixed an issue where blacklisted URLs used for embeds may not trigger post moderation when configured to do so.
  • Fixed an issue where the club tab on the members profile can result in a DB error when a page <1 was used.
  • Fixed an issue where the Automatically Prune Followers setting ignored reviews.
  • Fixed an issue where it may not be possible to permanently delete deleted content manually.
  • Fixed status updates not importing properly when an account is linked to multiple social logins.
  • Fixed some server error messages not showing.
  • Fixed certain notification and digest emails not sending properly via cron.
  • Fixed custom field custom formatting options being applied to fields in the AdminCP unexpectedly.
  • Fixed Custom Sorting on the Deleted Content page not working.
  • Improved upgrade process for Community in the Cloud.
  • Improved the error message when attempting to access the REST API in the Admin CP in the event the local server is inadvertently IP banned.
  • Fixed potential browser errors and warnings caused by notification sounds.
  • Fixed pagination not loading correctly when searching within messenger.
  • Fixed an issue where comment counts are decremented incorrectly when a Post Before Registering comment is cancelled.
  • Fixed an issue where the mobile keyboard would not be hidden after submitting the search form.
  • Fixed issues that can occur (such as the editor not loading) when browser local storage is unavailable.
  • Fixed an issue where auto-scheduled promotions may not correctly queue for upcoming slots.
  • Fixed maps generated by Mapbox potentially displaying larger than intended when lazy loading is enabled.
  • Fixed an issue where profile completion could cause a fatal error when using custom forum themes.
  • Fixed an issue where single status update links had the wrong canonical URL.
  • Fixed a possible error when mentioning someone or using a custom emoticon in a post.
  • Fixed an issue where installing plugins with a title containing more then 32 characters would fail.
  • Fixed an issue where Elastic Search may not update records correctly.
  • Fixed an issue where user profiles may be slow to load.
  • Fixed an issue where a template error could be generated by attempting to search members when the user does not have permission to view members.
  • Fixed some styling (spacing) issues with the right-hand column shown on the Clubs homepage.
  • Fixed an issue pasting certain code into editor code boxes.
  • Fixed some old URL patterns (from IP.Board 3.x) no longer redirecting to the new URL format as of 4.4.x.
  • Fixed an issue where the publish_to_groups permission was still required to promote to Facebook pages.
  • Fixed an issue where canceling an invoice with already canceled billing agreements would try to cancel the billing agreement again.
  • Fixed a niche issue that can occur when using lazyload, image proxy and external file storage.
  • Fixed an issue where one could fake member null votes on polls.
  • Fixed an issue where profile photo permissions may not apply correctly when a user belongs to more than one group.
  • Fixed a styling issue with profile completion on mobile.
  • Fixed a broken link in the report center.
  • Fixed an issue where invalid user groups can cause an error to show to users.
  • Fixed an issue where the poll form wouldn't add an empty first question.
  • Fixed an issue where sort buttons can overlap pagination.
  • Fixed an issue where personal conversations may show a 'promote' button to members with permission to promote content.
  • Fixed incorrect REST API documentation when editing items.
  • Fixed an issue where the 'support' link in the AdminCP would be viewable if the restricted administrator did not have access.
  • Fixed an issue where the spoiler header within a post can get doubled up when selecting text within the post in certain cases.
  • Fixed an issue where merging members incorrectly merged reputation.
  • Fixed an issue where the image aspect ratio setting was not set correctly when editing images.
  • Fixed an issue where search options may show for items that are not searchable.
  • Fixed AdminCP member quick-searches not searching within member names when the site can handle inline searches.
  • Adjusted instances of "recognise" in language strings to "recognize".
  • Fixed an error when full registration is enabled with no available profile fields.
  • Fixed an issue where the node controller wasn't showing the child nodes as possible target category while moving the content.
  • Fixed an issue where it was possible to be stuck in a position where a poll could not be re-opened.

Calendar

  • Removed the ability to create ranged recurring events that overlap (e.g. where the next occurence start time is before the first occurrence has finished).
  • Removed the timezone from event notification emails for all day events.
  • Fixed an issue where events that repeat for a set period will end one period before they should.
  • Fixed an issue where users are able to create events where the end time occurs before the start time.
  • Fixed an issue where ranged recurring events may show an incorrect date range for the event on the calendar "Day" view.
  • Fixed an issue where embedding a Calendar Event may fail in some circumstances.
  • Fixed an issue where ranged recurring events may not show as occurring on an end date when they span across months.
  • Fixed an issue where the calendar name would be exposed to members which don't have permissions to view the calendar via the members online location on the profile.

Pages

  • Added the ability to specify whether the record canonical tag points to the current page, or the root page (page 1).
  • Added the ability to show just your own records via the Database Filters widget.
  • Added the ability to filter by Member field types via the Database Filters widget.
  • Added record tags to the database record listing template for newly created Listing template sets.
  • Improved the display of databases in the ACP menu.
  • Fixed an issue where excluding Pages pages from the sitemap may cause the sitemap task to get stuck and stop building new sitemap files.
  • Fixed an issue where a template group could be renamed to an existing template group, causing a conflict which results in an error.
  • Fixed an error attempting to submit records to a database where a Member type field that must be unique is configured.
  • Fixed an issue where the category title is missing from the page's HTML title tag.
  • Fixed an issue where deleting a database record with a linked topic may cause an error.

Commerce

  • Added support for Strong Customer Authentication (SCA) in Stripe.
  • Fixed referral commission not being given for renewals.
  • Fixed an error that can occur when renewal invoices are generated if no billing address existed on the original invoice.
  • Fixed invoice notification emails showing a payment failed warning if one payment method failed even if another one succeeded.
  • Fixed social login buttons not working when checking out as a guest.
  • Fixed staff replies to support emails.
  • Fixed an issue where stock replies may have new lines stripped.
  • Fixed pending withdrawl AdminCP notification link to point to the pending withdrawl filter.
  • Fixed an issue where you may not be able to delete subcategories in the store.
  • Fixed a potential error when upgrading from a version older than 4.4.2.
  • Fixed an issue where switching to a "default" support stream (ex. Open, Assigned, or Tracked Requests) can result in a MySQL error.
  • Fixed an issue where deleting a customer note would not close the dialog.
  • Fixed member group being moved when upgrading or modifying an expired purchase.
  • Fixed an issue where purchase custom field labels may show as a random string or in the wrong language in the Transaction Approved email.
  • Edited the purchase email notification setting to clarify an email is sent for every item.

Converters

  • Clarified the error message shown when invalid database details are supplied.
  • Fixed an issue where a conflict may prevent some data being converted if (for example) converting attachments for blog and forums in the same conversion.
  • Fixed an issue relating to converting mentions from other platforms.
  • Fixed an issue where converting from vBulletin 5 can cause duplicate topics.
  • Fixed an issue where items selected to skip were converted anyway.
  • Fixed an issue where it wasn't possible to convert only core.
  • Fixed a performance regression re-introduced in 4.4.
  • Fixed an issue preventing UBBThreads conversions working.
  • Stopped converting the "manually set time zone" preference for vBulletin conversions, as the timezone preference itself is not converted and the ability to adjust this preference is not available in our current interface.

Forums

  • Improved the performance of the Unarchive task.
  • Fixed an issue upgrading from older versions of Invision Community where topics or posts queued for deletion were present.
  • Fixed an issue where posts from ignored members were visible if the author was in a highlighted group.
  • Fixed an issue where archive settings could be saved with no more than or less than selection.
  • Fixed an issue where hiding a topic without an existing first post would stop the queue to hide all the members content.

Gallery

  • Fixed Follow and Promote buttons not showing for images on mobile devices.
  • Fixed an issue where inline renaming an image from the lightbox would either fail or rename the album.
  • Fixed instances where a member with a secondary group that doesn't allow albums to be created, but with a primary group that does but limits how many that can be created, will allow the member to create unlimited albums.

Downloads

  • Implemented logging to the moderator log, when a moderator toggles the purchasable status of a file.
  • Removed the button to copy the Log Downloads category setting which does not apply.

Blog

  • Improved the blog header display for blogs within clubs.
  • Fixed an issue where the club leader could not set a cover photo for a club blug.
  • Fixed an issue where draft entries may be included in digests.

REST & OAuth

  • Added a “Use a different account” button on OAuth login screen

Third-Party / Developer / Designer Mode

  • Cleaned up some legacy code checking for specific PHP versions.
  • Fixed some typos in the REST API documentation.
  • Fixed malformed HTML in the admin `tabs` HTML template which caused problems when hooks were created for this template.
  • The Application and Plugin directory are limited to 80 characters.
  • Set the alreadyReported flag in \IPS\Content after reporting content to ensure correct value is returned on future calls to report methods.
  • Fixed some minor issues with the lightbox comments support (currently unused by core Invision Community code).
  • Fixed an issue where email template parameters may not be captured properly to generate the email subject, resulting in an error.
  • Fixed a potential error that may be encountered while working with Calendar dates from command line (i.e. tasks being executed via cron).
  • Fixed an error that can occur with email statistics when different applications use the same email subject language string.
  • Fixed a few functions that needed to be called from the root namespace.

Changes affecting third-party developers and designers

  • Added `\IPS\Node\Model::deleteLogPermissions()` method to allow applications to specify permissions for managing deletion logs.
  • js.php javascript loader no longer creates an external dispatcher instance.
  • `\IPS\Content::logDelete()` and `\IPS\core\DeletionLog::setContentAndMember()` now accept FALSE for the member parameter, which will store the deletion log as if no specific member deleted the content.
  • Added a new `digestWhere()` method to content items, this allows you to specify an additional where clause when processing digests.
Key Changes
Version 4.4.4 is a maintenance update to fix issues reported since 4.4.3.
Additional Information
Core
  • Added support for [Emoji 11](https://emojipedia.org/emoji-11.0/) emojis
  • Added logging for errors communicating with Spam Defense.
  • Added an admin log when existing member notification preferences are updated.
  • Added a pre-installed Giphy key that can be used for all Invision Community installations.
  • Improved usability and display of date-based member filters.
  • Improved account validation process to prevent accounts being inadvertently validated by scrapers and bots, and to improve the user experience when following a validation link that is no longer valid.
  • Improved the opcache comments check on the REST API Reference page.
  • Improved sending bulk emails via SendGrid.
  • Improved post before register permissions when allowing guests to create content, but not members.
  • Improved performance when viewing all IP addresses used by a member.
  • Clarified the registration completed email when no local password has been set.
  • Fixed an issue where members may not be marked as complete, and thus will not show within the community, in some circumstances.
  • Fixed the Posts Per Day group setting not applying consistently to all content.
  • Fixed an issue where click tracking may not be applied to all links in emails sent.
  • Fixed emails for AdminCP notifications "A new member has completed registration" and "A member is flagged as a spammer" not sending.
  • Fixed an issue that could occur if deleting a node (i.e. forum) if there was already a move task from another node in progress.
  • Fixed the email statistics charts in the AdminCP showing incorrect data when viewing weekly charts.
  • Fixed an issue where the inbox list may be stuck showing a spinner when canceling a search in the personal messenger.
  • Fixed an issue where folder counts may show NaN after deleting a folder in the personal messenger.
  • Fixed an issue that may occur when deleting/moving login handler related images.
  • Fixed searching by tags not honoring the "Convert all tags to lowercase" setting.
  • Fixed 'post before register' content submissions not incrementing the user's post count if pre-moderation is not required.
  • Fixed an issue related to 'post before register' where 'next unread' item links may show when there isn't any new content.
  • Fixed the callback URL used for Wordpress sign in.
  • Fixed the digest task looping on a follow attached to a deleted member.
  • Fixed the `PruneMembers` background task from endlessly looping in certain circumstances.
  • Fixed disabling password changes in the AdminCP settings not removing the link to change your password on the Account Settings overview page.
  • Fixed issue where lazy-loaded images in warn reasons would prevent warn reason from automatically updating when new reason was selected due to incorrect editor 'dirty' status.
  • Fixed a niche issue where promoting an item may show an auto scheduled time from the past.
  • Fixed an issue where the button to change a members profile photo would still show on their profile when they do not have permission to upload profile photos.
  • Fixed an issue where public clubs would show the member count in several locations.
  • Fixed an edge-case issue with redirecting old non-rewrite FURLs after enabling rewrites.
  • Fixed issue checking signature image dimensions when using 'insert existing attachment' when using Amazon S3.
  • Fixed an issue where the frontend upgrade notice wouldn't disappear once dismissed.
  • Fixed an issue where cover photos might disappear shortly after displaying.
  • Fixed an issue with lazy load placeholders when added to existing content.
  • Fixed a layout issue with the mobile pagination buttons.
  • Fixed an unnecessary redirect when viewing a club.
  • Fixed a potential timeout running the cleanup task.
  • Fixed Elasticsearch being able to be set up with version 7 (which is not yet supported). Trying to do that will now show an error message.
  • Fixed an issue where moved links may show in the topic widget.
  • Fixed an issue where a member registering with an auto-detected language would revert back to the default language after registration.
  • Fixed an issue where the latest activity tooltip would state "online now" when the member was offline.
  • Fixed broken login form.
  • Fixed status pagination loading a full page instead of comments only.
  • Fixed non-latin characters in the URL showing incorrectly when moving between pages.
  • Fixed an issue where the approval queue may show content in the wrong order.
  • Fixed an issue where the guest signup block title and text was reversed in vertical view.
  • Fixed an issue where custom friendly URLs would not use the newer `/page/2/` pagination format.
  • Fixed an issue where club pagination in user profiles was showing the wrong number of pages.
  • Fixed an issue where a Redis failure caused an uncaught exception.
  • Fixed an issue where the Clubs REST API would throw an error if commerce isn't installed.
  • Fixed an issue where online user lists may be empty following a Redis crash.
  • Fixed an issue where incomplete member registrations were not cleared correctly.
  • Fixed an issue where Post Before Register Followups were sent out immediately rather than delayed.
  • Fixed an exception that prevents storage handler changes from being saved properly.
  • Fixed an issue where the 'Failed Emails' AdminCP notification may not be removed properly.
  • Fixed an issue where the "Anonymous login" checkbox was incorrectly checked.
  • Fixed an issue where PBR content would be left in the database for uninstalled applications.
  • Fixed a rare issue where a template disk cache could corrupt and affect templates loading.
  • Fixed an issue where members created via the ACP weren't marked as completed.
  • Fixed an issue with Flickr video embeds showing as photos.
  • Fixed an issue with notifications not showing as unread.
  • Fixed an issue where the exact profile field search option had no affect.
  • Fixed an issue where the default country was not correctly set in address form inputs.
  • Fixed an issue where the guest teaser would not show on the comment form in some circumstances.
  • Disabled Grammarly from checking editor fields to prevent Grammarly from breaking HTML and causing broken posts.
  • Disabled preloading of notification sound to speed up initial page load.
  • Disabled concurrent comment merging in status replies.
  • Removed post content from Post Before Register reminder emails to prevent spam.
  • Removed ability to sort club menu tabs if only one tab is present.
Forums
  • Fixed a niche issue where the 'Delete Legacy Posts/Topics' background task may not work when ran via CRON.
  • Fixed an error when moving topics in fluid view.
  • Fixed a database error that could occur when archiving old posts.
Commerce
  • Fixed tax class being lost with renewal terms when editing a purchase.
  • Fixed tax class being lost when renewal invoices were generated for location-specific tax rates.
  • Fixed an issue where tickets from non-registered users may link to an empty ticket listing.
  • Fixed an issue where AdminCP notifications for pending withdrawals link to the wrong page.
  • Fixed Stripe webhooks unnecessarily reporting an error.
  • Fixed category filters not displaying on mobile.
  • Fixed an issue where creating a support request with a guest member and email address via REST API wouldn't store the email address.
  • Fixed an issue which would result in an empty product list on the registration form.
  • Fixed an issue searching last names in admin live search.
  • Fixed an issue where manually creating an invoice and adding renewals doesn’t prevent an auto-renewal invoice being added later.
  • Fixed an issue where the member subscriptions block was not editable.
Pages
  • Fixed times displaying as timestamps for some Pages blocks.
  • Fixed records not sorting correctly by 'highest rated'.
  • Fixed the `updaterecords` task not running correctly if a database exists that is not assigned to a page.
  • Fixed an issue where 'follows' may not get removed when a category or database is deleted.
  • Fixed an issue where the create menu could get out of sync when the page name or the default page were changed.
  • Fixed an issue where adding records via the create menu may not show categories for default pages.
  • Fixed an issue that can occur when moving a record in a database that is not assigned to a page.
  • Fixed an issue where Our Picks can throw an error if a database is unassigned from a page.
  • Fixed an issue where, in certain circumstances, notifications could be sent for records that weren't viewable.
  • Removed record image dimensions from JSON-LD markup for database records to improve performance in some cases.
Downloads
  • Fixed an SQL error that could occur when upgrading from older versions.
  • Fixed an issue where the purchase count for Files associated to purchases was shown in the widgets and downloads index page blocks.
  • Fixed an issue in the 'Download Reviews' widget, where links to reviews on page >1 were broken.
Gallery
  • Fixed an issue where past reputation for image comments and reviews no longer displayed.
  • Fixed browser scrollbar disappearing while editing Gallery image details in some cases.
  • Fixed image carousel widgets not displaying correctly in certain circumstances.
  • Fixed an issue where uploading on small screens caused the status to overflow outside of its box.
  • Fixed an issue where images may show as unread incorrectly in streams.
Calendar
  • Fixed an issue where recurring events may show on the wrong day in Calendar.
  • Fixed an issue where all day events specified an incorrect start and end time in search engine markup.
Converters
  • Fixed an issue where reaction images may get converted into the wrong container.
  • Fixed an inaccurate progress bar on a background task that runs after completing a conversion.
Changes affecting third-party developers and designers
  • Added a `$statementReverse` parameter to use `NOT IN` in the where clause when `\IPS\Db::select()` is passed to `\IPS\Db::delete()`.
  • Added a further check when trying to choose which storage configuration should be used for new storage extensions.
  • Added a new Language String Option `removeLazyLoad` which will remove the lazy load links while parsing the language string.
  • Fixed an incorrect class reference when passing `\IPS\Db::select()` to the `$where` parameter of `\IPS\Db::delete()`.
  • Fixed a search error that could occur with 3rd party applications.
  • Fixed an issue with the rest API where output was json encoded before language replacements.
  • Changed the default parameter in the `IPS\Content\Review::url` method.'
  • Removed unused code in the \IPS\core\modules\admin\promotion\advertisements::getHtml method.
  • Removed UI for immediately sending Bulk Mail, all Bulk Mail will now be sent via background queue.
Key Changes
Version 4.4.3 is a small maintenance update to fix issues reported since 4.4.2.
Additional Information
Security
  • Fixed an XSS concern deleting members in the AdminCP.
  • Fixed an XSS concern managing Downloads versions from the changelog view.
  • Fixed a minor XXE possibility in blog RSS imports.
Core
  • Upgraded CKEditor to 4.11.4.
  • Updated LinkedIn login handler to use the LinkedIn v2 API.
  • Improved performance when merging two comments with duplicated member reactions for large sites.
  • Improved performance when working with edit history logs.
  • Improved security of how passwords are handled in the code to decrease the likelihood of a password being included in an error log.
  • Improved the display of the upgrader confirmation page.
  • Improved performance of the latest activity stream shown on user profiles.
  • Improved anonymous log in tracking to resolve an issue with "Since my last visit" activity streams
  • Improved the UX configuring moderator permissions for clubs, including the ability to disable club-level moderators.
  • Improved database error reporting in certain error situations.
  • Improved performance of a 4.1.8 upgrader step.
  • Changed AdminCP notifications for "A new member has completed registration" and "A member is flagged as a spammer" to show all applicable members grouped into a single notification, rather than a separate notification for each member. This change gives a significant performance improvement for sites which have lots of new registrations.
  • Fixed multiple formatting concerns with custom profile fields.
  • Fixed an issue where restoring soft-deleted content would throw an exception under specific circumstances ( e.g. when there was no record in the soft deletion log ).
  • Fixed an issue where the member group restriction to require one piece of approved content before users can bypass content moderation was not correctly applied to posts made before registering.
  • Fixed an issue where deleting a member's content and then deleting the member may result in the content not being removed.
  • Fixed SVG images breaking when served through the built in image proxy.
  • Fixed an issue with profile completion if you choose not to upload a profile photo.
  • Fixed third party processor information not showing when users are forced to reaccept an updated privacy policy.
  • Fixed the "Remove followers from uncommented content" setting not working.
  • Fixed an issue where clicking to delete a member twice might result in all status updates being removed from the search index.
  • Fixed an issue where copying content from one area with an attached image and pasting into another area may result in a broken image.
  • Fixed an issue where allowing a user to moderate comments, but not items, would result in an error when using the multi-moderation menu.
  • Fixed inability to edit profile fields by members if the field was not displayed on the profile.
  • Fixed invalid HTML in the quick search form.
  • Fixed an issue where a comment or post made before registering which requires moderator approval after the registration is completed may not update the container flag to indicate that comments within the container require approval.
  • Fixed an error where the member view in the AdminCP may become broken if the member history for the user includes an old subscription group change and Commerce is not installed.
  • Fixed an issue where broken letter photos may be displayed in emails.
  • Fixed an issue with clean up tasks where they may try to delete a member that doesn't exist.
  • Fixed an error that can occur if you double click the "unfollow" button quickly.
  • Fixed autosaved content in the editor not clearing out when it was deleted within the editor.
  • Fixed an issue where MFA while the login would send 3 'new device' emails to the member instead of only one.
  • Fixed an issue where attachment links inserted into content may have a hard coded URL.
  • Fixed an upgrade issue where custom file storage configurations in 3.x may not be preserved correctly when upgrading to 4.x.
  • Fixed an uncaught exception when visiting a specifically malformed follow link.
  • Fixed attachment bbcode tags not converting correctly when upgrading from version 2.0 or older.
  • Fixed the About Me default custom field not showing on new installs.
  • Fixed email statistic charts so they report more accurately.
  • Fixed issues with performing advanced member searches in the AdminCP when multi-select custom profile fields are present.
  • Fixed a minor inconsistency with group name formatting.
  • Fixed an issue rebuilding certain meta data in Elasticsearch.
  • Fixed an issue where items and comments queued for deletion or submitted by a guest prior to registration are returned via the REST API.
  • Fixed an error when searching a specific search string.
  • Fixed a possible error that can occur during login when using the post before register feature.
  • Fixed the Notification Settings form in the Admin CP so that it can save properly.
  • Fixed an issue where Login Handlers were shown out of order.
  • Fixed an issue where the canonical link HTML tag may include unnecessary query string parameters (i.e. filters).
  • Fixed an issue where AdminCP settings search results were not always highlighted when clicked on.
  • Fixed an issue where the pagination for comment and review areas wouldn't link directly to the comments area when Javascript is disabled.
  • Fixed an issue where content item and comment widgets would show content from not specified categories.
  • Fixed an issue where editor auto saved content may not be removed.
  • Fixed an issue where some content may not show a report link.
  • Removed the hide signatures toggles from guests when they are able to see signatures.
  • Prevented search engine spiders from following the cookie notice dismissal link.
  • Removed poll votes from showing in the All Activity stream.
  • Removed ability to copy theme settings.
  • Removed the unread indicator in several widgets because it can't be used there because of the widget cache.
  • Removed the ability to toggle cover photos in clubs list when no image was uploaded.
  • Fixed an issue where the support tool could incorrectly report undiagnosed problems.
  • Fixed missing images when lazy loading is enabled in several areas.
  • Fixed an HTML validation issue with mini-pagination next to multi-page content item titles.
  • Fixed an uncaught exception which is thrown by the Admin Notification System.
  • Fixed member validation display issue in ACP notifications page while mobile.
  • Fixed attachments being added to an editor which has attachments disabled.
  • Fixed an issue where a display name sync error may be displayed on the AdminCP member profile.
  • Fixed two language strings where countries have changed their names: Macedonia is now North Macedonia and Swaziland is now Eswatini.
  • Fixed some broken messenger related links.
Core - Clubs
  • Fixed "Clubs" tab showing when splitting content even if clubs are disabled.
  • Fixed display issue with club tabs on mobile devices
  • Removed ability to reorder club tabs on mobile devices
Forums
  • Fixed a duplicated error code in the topics REST API endpoints.
  • Fixed images used in forum rules not displaying when image lazy loading is enabled.
  • Fixed a potential upgrade error when reformatting forum rules during the 4.0.0 upgrade routine.
Commerce
  • Added an additional subtotal language phrase to the cart summary for localization flexibility.
  • Improved legacy parser to potentially allow conversions of tables in content.
  • Changed renewal terms to not allow $0 renewals.
  • Fixed an error occurring submitting new tickets when read/write database separation is enabled.
  • Fixed an issue where up/downgrading a purchase could result in an error or the expiry date changing incorrectly.
  • Fixed an issue where a cancelled subscription may still generate a renewal invoice (and subsequently charge the user).
  • Fixed tax class being lost with renewal terms in some cases.
  • Fixed an issue where images may not show in printable invoices if lazyload is enabled.
  • Fixed support stream date-based filters producing incorrect results.
  • Fixed stock action text not defaulting in the form when creating a new ticket from the AdminCP if you do not use a signature.
  • Fixed an issue where the password field on the store checkout form might disappear if using Chrome's password autofill feature.
  • Fixed an issue where invoices may not have a billing address set when one is available.
  • Fixed an issue where a template error may be thrown for non-recurring subscriptions.
  • Fixed a missing language string if you had servers configured prior to upgrading to 4.4.
  • Fixed adding a custom package to an invoice.
  • Fixed an exception being logged when rebuilding the search index if any custom packages have been created.
  • Fixed the PayPal Billing Agreements radio element not showing selected if BAs are enabled.
  • Fixed an issue where files uploaded to a custom field may not be downloadable.
  • Removed a stray HTML end tag.
  • Restored Braintree gateway option. Included a disclaimer about qualification process.
Pages
  • Fixed an issue where cloning a custom field would result in a database error.
  • Fixed an issue on the media page where the "File Overview" Tab was not set as activated and also not clickable when one or more files from the file list were selected.
  • Added last modified date to database category and record sitemaps.
Gallery
  • Changed the reputation type flag for album comments and reviews to resolve bugs where the reputation may be mistakingly treated as if it belongs to an image comment or review.
  • Fixed an issue submitting images to an album if the category requires moderator approval.
  • Fixed an error that can occur when downloading the original image in Gallery if the original image is missing on disk by forcing the largest available size to download instead.
  • Fixed image lazy loading not working correctly in category rules, descriptions and custom error messages.
  • Fixed the submission dialog box potentially showing an incorrect dialog title.
  • Fixed an issue where uploaded videos could not be played in the lightbox.
  • Fixed editor showing twice for each image during submission.
Downloads
  • Added a group setting that will allow users to bypass download restrictions when downloading a file that's been purchased.
  • Added the ability to shut off version numbers per-category.
  • Improved the header styling on the homepage.
  • Improved performance, especially of the index page.
  • Reduced top spacing (margin) of the sidebar when viewing the index page.
  • Fixed an issue where custom fields may show out of order.
Blog
  • Fixed an issue where the previous and next link under the blog entry could link to hidden or soft deleted entries.
  • Fixed some minor UI issues with the "Blogs" widget.
Calendar
  • Added an option to prevent edits and RSVPs for events that have passed.
REST & OAuth
  • Fixed the search REST API endpoint.
Converters
  • Improved vBulletin archive redirects.
  • Improved vBulletin blog conversions to retain the date the blog or blog entry was followed.
  • Fixed an issue where converted members won't be marked as completed.
  • Fixed an issue when trying to convert from a platform with converters for apps that are not installed.
  • Fixed an issue where PM replies may be duplicated when converting from vBulletin.
  • Fixed an issue with converting comments from Vanilla.
Upgrader
  • Fixed an edge case issue where some legacy customers may be unable to use the AdminCP upgrader.
Changes affecting third-party developers and designers
Backwards-incompatible changes that may affect third party applications / plugins:
  • Methods that handle passwords in login handlers (authenticateUsernamePassword(), authenticatePasswordForMember(), changePassword()) now receive an object which can be cast to a string, rather than a normal string, for the password. This reduces the likelihood of a password being included in an error log.
  • The onPassChange MemberSync callback now receives an object which can be cast to a string, rather than a normal string, for the password. This reduces the likelihood of a password being included in an error log.
Enhancements / fixes for developers:
  • Added a new constant \IPS\DEV_LOG_HEADERS which allows you to log all headers being sent during responses.
  • Better abstracted code that dynamically builds class paths for areas that are no longer using iterators.
  • Improved some extension skeleton files to not cause a ParseError once the extension is created.
  • Fixed color fields not initializing for new rows added in a manageable matrix.
Fixes that only affect developer mode or third party apps/plugins:
  • Fixed some functions not being called from the root namespace and throwing warnings when in developer mode.
  • Fixed an undefined index loading form to add a new hosting server in Commerce.
Code-level fixes that may have been causing bugs in third party apps/plugins:
  • Added code comments to all of the default constant values in init.php explaining what they all do.
  • Ensured all default wizard instances are cast as a string before being sent to the output handler.
  • Fixed an issue when pluralization and sprintf functionality is used together and the placeholder is used in the pluralized string.
  • Fixed an issue with post before register where it was assumed content items would have a container.
  • Fixed an exception when post before registering is checked against a content item that supports reviews but not comments.
  • Fixed some ambiguous column concerns with the \IPS\Content\Item::_comments() method.
  • Fixed an issue editing titles via Ajax when the item class does not use containers.
  • Fixed an issue where the release date may not show correctly for third party plugins or themes.
  • Fixed some functions not being called from the root namespace and throwing an IN_DEV warning.
  • Fixed the widget configuration form being called twice which may result in some form elements duplicating.
  • Improved some extension skeleton files to not cause a ParseError once the extension is created.
Key Changes
Version 4.4.2 is a small maintenance update to fix issues reported since 4.4.1.
Additional Information
Core
  • Adjusted the AdminCP live search to look for search strings within the name and email address (instead of only at the beginning) for sites with less than 1,000,000 members.
  • Improved error reporting for unexpected exceptions in some cases when manually running tasks.
  • Upgraded CKEditor to 4.11.3.
  • Added some AdminCP live search keywords for the Icons & Logos page.
  • Adjusted search results processing to automatically clear out invalid results when detected.
  • Adjusted comment and item widgets to restrict by the last year to prevent slow performance.
  • Fixed an issue where the leaderboard may not correctly rebuild.
  • Fixed an issue where searched terms may not be highlighted on the search results page when using Elasticsearch.
  • Fixed being unable to reach the last page of search results with Elasticsearch.
  • Fixed an issue where users could encounter an error by logging in with a new social account after already associating with a social account.
  • Fixed mobile PWA manifest file not being accessible to guests when guests are required to login to use the site.
  • Fixed an issue where javascript would not load due to a bug in the 3rd party Howler library.
  • Fixed an issue where the prune members background task may stall if it encounters a staff account.
  • Fixed an issue where email link tracking may not apply to all bulk mails sent.
  • Fixed an edge case issue where it was possible for the lazy load rebuild to affect embedded videos.
  • Fixed an upgrade issue that can occur if you have more than one of the same email address specified for upgrade notifications.
  • Fixed an issue where imported members accounts were not marked as completed.
  • Fixed an issue where changing the warning type on the warning form would not toggle the 'remove points never' checkbox to the correct value
  • Fixed an issue where profile fields display HTML code when applying custom formatting.
  • Fixed an issue where the upgrader could link to an incorrect theme when reporting theme conflicts.
  • Fixed an issue with the upgrade now link on the front-end notification banner.
  • Fixed an issue where the display name filter wouldn't store the "either" option.
  • Fixed images with uppercase extensions not launching the lightbox correctly.
  • Fixed an issue where page styling is lost temporarily when clicking "Check Again" on the support tool in the AdminCP.
  • Fixed an issue with comment widgets where editing them may not show the correctly selected date range.
Core REST API
  • Fixed an error adding a member to a club through the REST API.
Forums
  • Excluded archived topics from email digests.
  • Fixed an issue where post counts for forums may be incorrect if archiving is used.
  • Fixed an issue where merging two topics may show the topic at the wrong position in the forum listing.
  • Prevented a possible infinite redirect problem when merging two topics simultaneously with each other.
  • Applied group name formatting to member names in topics when viewed on a phone.
  • Removed redirect forums from fluid view.
Gallery
  • Fixed an error upgrading Gallery when there are orphaned albums.
Blog
  • Fixed guests being able to post comments without permission to do so.
  • Fixed blog entry ratings not displaying.
  • Fixed a minor display issue with blog ratings and tags when viewing blog entries.
Commerce
  • Improved the display and functionality of non-recurring subscription packages.
  • Improved security of public endpoints that receive webhooks and other notifications from gateways.
  • Fixed an issue where guests who cannot view the site cannot register if a subscription is required to be purchased during registration.
  • Fixed not being able to check out through Braintree purchasing a subscription while using a credit card.
  • Fixed upgrading of expired purchases resulting in account credit being issued.
  • Fixed an issue where creating a subscription without renewal options would result in a error.
  • Fixed an issue where deleting a subscription wouldn't delete the cover image.
  • Fixed an issue where the recount background task would fail.
Pages
  • Fixed an issue where the record revision list would show the same diff for each revision
  • Fixed an HTML validation error with record comments.
Downloads
  • Fixed being unable to submit multiple files at once.
Converter
  • Fixed an issue where Javascript/HTML may be stripped from code boxes in vB5.
  • Fixed an issue where some data may not be converted when converting from SMF, Vanilla, ExpressionEngine.
  • Fixed an issue where some converters may not be available for use (bbPress, Coppermine).
  • Fixed an issue with SMF conversions where forums may not allow new posts following the conversion.
Pages
  • Fixed guests being able to submit articles without permission to do so.
Changes affecting third-party developers and designers
  • Fixed an ErrorException occurring when a user receives their first PM during the instantNotifications AJAX polling.
  • Adjusted the `Content\Item::_comments()` queries to not cause a MySQL Error when 3rd party code hooks into Comment::joins to add additional joins.
  • Fixed an issue where `\IPS\Lang::replace` would change non-string values into an empty string
Key Changes
Version 4.4.1 is a small maintenance update to fix issues reported since 4.4.0.

This release also contains a critical security update for Commerce.
Additional Information
Core
  • Improved auto-upgrader for Community In The Cloud clients when an unexpected failure is detected.
  • Added AdminCP search keywords to aid in finding certain new features in 4.4.x.
  • Made several adjustments to HTTP/2 push/preloading to improve overall performance of most requests and resolve minor bugs.
  • Changed database connector so that a database connection is only established once it is actually needed.
  • Improved performance of 4.4.0 upgrades for sites with lots of members.
  • Improved performance of content item and comment sidebar blocks restricted to specific containers.
  • Improved Post Before Registering to allow the user to remove their submission and email address.
  • Changed the error message for a failed login the same regardless of the reason for extra security.
  • Fixed an issue where guest "post before register" submissions may show up in widgets before the guest registers.
  • Fixed an SQL error during the 4.4.0 upgrade in some environments.
  • Fixed several areas in the suite where images were not "lazy-loaded" as expected.
  • Fixed link styling in announcement banners making the text difficult to read in some browsers.
  • Fixed an issue where private conversations may incorrectly get flagged for automatic moderation.
  • Fixed miscellaneous HTML markup errors.
  • Fixed an issue where users could encounter an error by logging in with a new social account after already associating with a social account.
  • Fixed some issues with the "Emails failing to send" AdminCP notification.
  • Fixed frontend upgrade notice linking to the frontend instead of ACP.
  • Fixed Application icon getting lost when the datastore is flushed.
  • Fixed 'Error is logged' AdminCP Notification displaying incorrectly.
  • Fixed an issue where the newsletter signup block was showing an error to guests.
  • Fixed incorrect colors showing in the visual theme editor when creating a new easy mode theme.
  • Fixed an issue visiting certain URLs when a community is installed into specifically named subdirectories.
  • Fixed the email statistics setting not showing the correctly saved value.
  • Fixed an issue with button spacing on mobile.
  • Fixed an issue where streams may go missing if a guest member object is deleted.
  • Fixed a styling issue on certain forms such as the AdminCP notification preferences form when using locales with a comma as the decimal separator.
  • Fixed an issue where pagination may not work when 'rewrite FURLs' is not enabled.
  • Fixed posts not retaining code syntax highlighting with some code languages.
  • Fixed an issue where private conversations can be very slow to search.
  • Fixed an issue with the Emoji shortcode popup when lazy load and Twitter Emoji are used.
  • Fixed an issue with the setting for "Users can see records posted by other users" not being honored.
  • Fixed some issues related to setting a custom start url in the web manifest.
  • Fixed an issue where the prune members background task may stall if it encounters a staff account.
  • Fixed an edge case issue where it was possible for the lazy load rebuild to affect embedded videos.
Core - REST
  • Fixed disabled applications showing in the REST API area of the AdminCP.
  • Fixed the Invision to Invision OAuth 2 login handler attempting to sync letter photos.
Forums
  • Improved performance of the post feed widget.
Commerce
  • Removed Braintree option for new payment gateways.
  • Removed the package moderation ability for moderators on the frontend.
  • Removed a recommendation to switch to Braintree during upgrade.
  • Restored ability to set up PayPal Billing Agreements.
  • Fixed upgrading of expired purchases resulting in account credit being issued.
  • Fixed inconsistent styling being applied to the Latest Products sidebar block.
  • Made the grid vs list view theme setting translatable.
  • Fixed an error viewing hosting accounts.
  • Fixed PayPal checkouts through Braintree failing when tax is applied to the purchase.
  • Fixed a missing language string when managing hosting accounts.
  • Fixed an issue with configuring Braintree, if you have had any issues please open and re-save the Braintree settings.
  • Fixed an issue where paid support request custom fields would show for none paid support departments.
  • Fixed an issue where viewing a product may not work under certain circumstances.
  • Fixed a duplicated HTML element ID (which prevents the page from passing as "valid HTML").
  • Fixed an issue where the Facebook Pixel for purchase events was missing currency and value.
Pages
  • Fixed an issue where reciprocal "back links" may be incorrectly deleted from records.
  • Fixed an issue where importing a database would fail.
  • Fixed a potential upgrade issue if orphaned data was present.
Gallery
  • Fixed an issue where notifications for new images can send indefinitely.
  • Fixed an error attempting to move all albums from a category to another category in the AdminCP.
Downloads
  • Fixed an issue where notifications for new files can send indefinitely.
  • Fixed issues with Downloads files linked to Commerce packages that are deleted.
Blog
  • Fixed a styling issue with the blog header on mobile.
  • Clarified that guests will bypass the post before register feature when guests have the "Can comment on blog entries" Group Setting is enabled.
Converter
  • Fixed issues converting tags for database records in some cases.
Changes affecting third-party developers and designers
  • Made Commerce Gateways extensible by removing hardcoded namespace paths to Gateway classes.
  • Changed the FileStorage skeleton file so that a new instance does not cause a PHP error by default.
  • The Widget skeleton file was updated to follow the new 4.4.0 logic for widget display options.
  • Fixed an issue cloning custom fields if non-standard column names are used.
  • Trying to set an invalid value for a setting will result in an InvalidArgumentException.
  • Automatic moderation will now only be applied to content types that implement \IPS\Content\Hideable as this is required for automatic moderation to function correctly.
  • Fixed an ErrorException occurring during content promotion when Facebook is set up but no Facebook Pages have been linked for promoting.
  • Fixed an ErrorException that can occur if you attempt to upgrade/downgrade a package without renewal options in Commerce while IN_DEV.
  • The frontend template controlStrip now supports specifying the target attribute for links.
  • Fixed an ErrorException occurring when a user receives their first PM during the instantNotifications AJAX polling.
Key Changes
Major New Features / Enhancements

  • Post Before Registering
  • Animated GIFs
  • AdminCP Notification Center
  • New Email Features:
    • Email Statistics
    • Email Advertisements
    • Unfollow Without Logging In
  • SEO Improvements:
    • Improved pagination with page number now in path (rather than query string) and unique page titles for paginated pages.
    • Improved use of canonical tags.
    • Improved handling of empty containers and profiles to reduce soft 404s.
    • Improved JSON-LD markup, adding @id tags and fixing URLs for comments.
    • Removed page output hidden by JavaScript.
  • Performance Improvements:
    • Added Lazy Loading for images, which will speed up page rendering.
    • Added HTTP/2 support with prefetch/preload.
    • Added support for Brotli compression.
    • Improved default profile photos to use inline SVGs rather than generated images, which will speed up page rendering.
    • Improved browser caching of pages served by the guest page cache, which will reduce the number of requests reaching the server.
    • Improved handing of session data for guests to reduce database reads for guests.
    • Optimized images to reduce file size for faster page rendering.
    • Other minor performance improvements to reduce database queries and fix unnecessary code execution.
  • Commerce Store Filters allow customers to filter products by price, review, stock, or custom admin-defined filters.
Core

  • Added setting to display user group formatting in more areas (see 6 New Micro Features).
  • Added less intrusive browser notification prompt in Notifications menu (see 6 New Micro Features).
  • Added ability to show sidebar blocks to only certain types of devices (see 6 New Micro Features).
  • Added ability for club owners to reorder the navigation tabs (see 6 New Micro Features).
  • Added ability for announcements to be linked to an URL or be a title only (see 6 New Micro Features), improved consistency in how announcements are shown in different areas.
  • Improved UI for entering time intervals in AdminCP settings (see 6 New Micro Features).
  • Added a new Icons & Logos section in the AdminCP which allows providing logos for use when sharing links from the community, adding the community as a home screen app on a mobile device (along with additional settings for a PWA manifest to control certain aspects the community’s behaviour when used in this way), and in Safari’s favourites menus and pinned tabs on macOS.
  • Added a new UI for attachments, showing a box with some information about the file, rather than a plain line (see Turbo charging loading speeds).
Commerce

  • Braintree Gateway including support for PayPal (with recurring payments), Venmo, and cards. Deprecates some PayPal features.
  • Added ability to target bulk mails to members who have spent certain amounts.
  • Added sidebar widgets for best sellers, latest products, product reviews and a featured product.
New Server Requirements: PHP 7.1.0 or higher required (7.3.x now supported). MySQL 5.5.3 or higher requires (5.6.2 recommended).

Removed Features

  • Removed EmojiOne-style emojis due to licensing issues.
  • Removed Gravatar support due to privacy concerns and performance issues.
  • Removed password hashes when downloading a member list from the AdminCP. This is for security, to reduce the ease of obtaining sensitive data if the AdminCP is ever compromised.
  • Removed the name of the content (e.g. topic) from the “Next Unread” link which could consume significant server resources on large communities.
Additional Information
IMPORTANT UPGRADE NOTICE
Please note that not all third party applications and themes are yet compatible with Invision Community 4.4. If you utilize third party resources, including custom themes, please ensure they have been declared compatible by their respective authors or your site may be non-functional after upgrade.




Minor Changes

Security
We continuously audit the product for potential security issues. While none of these security changes are significant we are committed to making improvements wherever potential issues are found. We’d like to thank everyone who responsibly reported issues to us for this release.

  • Added a setting to prevent Invision Community being used in an iframe to prevent clickjacking.
  • Improved entropy of CSRF keys.
  • Improved SSRF protection.
  • Fixed potential leaking of sensitive keys via HTTP referrers.
  • Fixed an issue where the redirect script could be tricked into outputting HTML from an unverified source.
  • Fixed several minor XSS vulnerabilities.
  • Fixed some missing CSRF checks.
  • Fixed users being able to change the social account used for promoting.
  • Fixed club owners being able to manipulate the meta tags for a page which could force users to be redirected to another website when visiting certain club areas.
  • Fixed non-sensitive information on pending transactions made by guests in Commerce potentially viewable by other guests.
  • Fixed users being able to post remote images when disallowed from doing so.
Core - UI

  • Added “Create” menu on mobile.
  • Fixed ordering of custom emoji categories.
  • Fixed the “pulse” animation when reacting to content not being correctly centered.
  • Fixed the “popular” indicator overlapping reactions on mobile devices.
  • Fixed clicking on the label for a field not causing focus to jump the field it is for in several locations.
  • Fixed select boxes always dropping down, extending past the bottom of the screen in some situations (they will now drop “up” if near the bottom of the screen).
  • Fixed node (e.g. forums, products, etc.) selection fields consuming significant server resources on communities which have lots of them by limiting the number that is shown when the select box is initially opened to 100.
  • Fixed “stack” form fields (fields where multiple values can be entered) not showing the “Add another” Button" once an item was removed from the stack after the max elements were reached.
  • Fixed “stack” form fields (fields where multiple values can be entered) not saving the correct values if one item is deleted and then another one added.
  • Fixed carousels not being scrollable on very small devices (e.g. iPhone SE).
  • Fixed carousels not behaving correctly with right-to-left languages.
  • Fixed more than one sort options sometimes showing as selected in some content lists.
  • Fixed styling of bullet points in some lists when using Microsoft Edge.
  • Fixed various W3C validation errors (including removing CSS rules with vendor prefixes which are no longer needed in most browsers).
  • Removed total reputation count in “mini” reputation view (used by Gallery comments and status updates), which isn’t necessary as each reaction type shows its own total.
Core - Posting / Editor / Embeds

  • Added tag suggestions from previously used tags as you type.
  • Fixed @mentions not working in some circumstances.
  • Fixed results lists showing in wrong place in some autocomplete fields.
  • Fixed Flickr embeds.
  • Fixed embeds for extremely long content causing crashes on mobile devices.
  • Fixed pasting certain URLs into the editor escaping characters.
  • Fixed certain content being pasted into an editor only actually pasting a single URL from the pasted content.
  • Fixed UI when editing highlighted posts.
  • Fixed a user not being able to post a review if they had previously posted a review which had been deleted.
  • Fixed author of content that is set to be published in the future not being able to view and edit it if they do not usually have permission to view future items.
  • Fixed content that is set to be published in the future being able to be commented or reviewed.
  • Fixed sTex/LaTeX editor code syntax highlighting.
  • Fixed an issue where previewing content with attachments may cause the content to be listed multiple times on the “My Attachments” page.
  • Fixed double-clicking on an image to adjust its size could fail when multiple WYSIWYG editors are on the page.
  • Upgraded CKEditor to 4.11.2.
Core - Clubs

  • Added option when splitting topics/other content to have the newly created topic/etc be in a club.
  • Fixed paid clubs being able to be created without having a valid price.
  • Fixed the number of members shown for a club not always being accurate.
  • Fixed layout of the club member list when there is no sidebar (now shows 24 per page which divides evenly between the number shown per row both with and without the sidebar).
  • Fixed club leaders not being able to crop the club icon.
  • Fixed members being able to vote on polls in open clubs even if they aren’t members of the club.
  • Fixed an issue where editing a club on PHP 7.2.
  • Fixed HTML open-graph tags not being set in clubs.
Core - Search & Activity Streams

  • Added support for showing images from pages records and poll votes in the activity stream.
  • Improved performance if using MySQL.
  • Improved Elasticsearch integration:
    • Added support for wildcard searches.
    • Added support for custom analyzers.
    • Improved performance for certain Elasticsearch queries.
    • Removed the ability to filter by number of views when searching using Elasticsearch, which had significant performance issues.- Fixed deleted comments showing in activity streams.
  • Fixed error in streams with certain content combinations.
  • Fixed quick search dropdown being dismissed when selecting an option inside it.
  • Fixed browser’s autocomplete box overlapping the quick search dropdown.
  • Fixed behaviour of back button after visiting an unread item in a stream.
  • Fixed search form not being reset when using the browser’s back button.
  • Fixed new products icon floating over the title in streams.
  • Fixed searching by “Select box” profile fields with multiple options.
  • Fixed date filters being lost when changing the sort order in search.
  • Fixed changing the date filters not working correctly if the search was originally initiated by the advanced search form.
  • Fixed date filters showing the dates in the wrong timezone.
  • Fixed “search by terms or tags” and “search by terms and tags” not showing on the search form initially.
  • Fixed content not being highlighted correctly in search results.
  • Fixed issues searches when using “&”, “_” or “%” in the search term.
Core - Profiles & User Settings

  • Added ability for users to re-crop their profile photos.
  • Added custom field formatting options for profiles.
  • Added ability for users to delete multiple attachments at a time from the “My Attachments” page.
  • Added AdminCP settings for showing signatures to guests and mobile users.
  • Added ability to disable profile photo imports from URL.
  • Added ability to use $member variable (to access details about the member) in custom profile field formatting templates (“Custom topic formatting” and “Custom profile formatting”).
  • Fixed duplicate entries in the “Reputation” section of member profiles.
  • Fixed an issue where “Complete Your Profile” steps may not be dismissed properly and could re-appear later.
  • Fixed links to ignored users and editing profiles showing even when these features were disabled.
  • Fixed users being able to import profile photos from linked social network accounts even if they don’t have permission to use a profile photo.
  • Fixed a generic error when attempting to import a profile photo from an invalid domain.
Core - Notifications

  • Added a new user notification to be notified when their content is embedded in other content.
  • Added ability for administrators to set the default value for several notification settings: “Show popup window when members receive a new personal message?”, “Only send one email notification for followed content per member visit?”, and “Play a sound when notifications are received?”
  • Added a small message when editing notification settings to clarify that changing the default method for following content will not affect content you are already following.
  • Fixed notifications triggered by guests not showing an author name.
  • Fixed notifications for users logged in anonymously.
  • Fixed links to some notifications pages/settings using an old format which caused an unnecessary redirect to the correct URL.
Core - Messenger

  • Added ability for moderators to delete messenger conversations.
  • Fixed pagination of messenger search results.
Core - Leaderboard

  • Fixed some items missing from the Leaderboard’s “Popular items” list.
  • Fixed Leaderboard positions potentially switching if the positions are tied.
  • Fixed AdminCP leaderboard settings form not showing/hiding fields correctly when turned on/off.
  • Fixed “Top Members” page in the Leaderboard consuming significant server resources on large communities.
Core - Members & Accounts

  • Fixed the formatting setting not showing the color box when editing a group in the AdminCP.
  • Fixed errors showing twice on registration form if it was submitted with errors.
  • Fixed potential errors merging some member accounts.
  • Fixed an issue which may allow users to bypass validation if they are held for admin approval by Spam Defense.
  • Fixed login handlers sometimes not syncing email addresses or display names.
  • Fixed login handlers syncing profile data even when disabled.
  • Fixed “Complete Your Profile” not sending the user back to the same page they were previously viewing.
  • Fixed some filters in member list downloads not working correctly.
  • Fixed certain non-latin characters in member list downloads.
Core - Status Updates

  • Fixed attachments failing to save when editing a status update.
  • Fixed attachments on status updates not being removed when a member is deleted.
  • Fixed status updates and status update edits still showing as autosaved content after submission.
  • Fixed number of replies to status updates sometimes showing incorrectly.
Core - Moderation

  • Added a link to the IP address tools for moderators who can see IP addresses in the online users list.
  • Improved UI of the message which tells a user if their post will need to be approved by a moderator, and added the message in some areas it was missing from.
  • Improved UX for flagging members as spammers: flagging a member as spammer from the AdminCP is now done without reloading the page, hiding/deleting content will be processed faster and notifications will not be sent in the meantime, and flagging a member as a spammer from the front-end will redirect back to the page previously being viewed.
  • Fixed an issue where if a moderator deletes content, and then restores it, it is still permanently deleted after the time period it would have been as if it had not been restored.
  • Fixed word filters not holding content for approval in all areas.
  • Fixed automatic moderation rules needing more reports than set.
  • Fixed automatic moderation not counting reports on status updates.
  • Fixed an issue where banning a member and removing their profile photo would leave a broken image in their profile.
  • Fixed deleting reviews or comments sometimes showing two confirmation dialogs.
  • Fixed content items that require a comment not rendering correctly in the report center.
  • Fixed potential error merging content when both items have reviews.
  • Fixed moderators being able to merge content they cannot view if the URL is known.
  • Fixed bad description on the merge form (said “a topic” rather than “the topic”).
  • Fixed a recommend comment still showing in the content it previously belonged to if it is split into new content.
  • Fixed some inconsistencies in behaviour when hiding/unhiding content which itself has hidden comments/reviews inside.
Core - Sidebar

  • Added a sidebar widget to show users with the most contributions.
  • Fixed minimum comments/reviews filters in sidebar blocks.
  • Fixed announcements being shown at the bottom of the on some pages, rather than at the top.
  • Fixed the status update widget caching not taking into consideration if that member has status updates enabled, which may cause a text field when the current member has status updates disabled and vice-versa.
  • Fixes missing margin between two blocks if there is a block between them which is hidden because it has no content.
  • Fixed styling inconsistencies when editing some sidebar blocks versus when they are actually displayed.
  • Fixed the recently browsing widget erroneously showing a guest when using Redis sessions.
  • Fixed error rebuilding content (after changing certain settings) of some sidebar blocks.
Core - Social / Sharing

  • Added support for cover photos when promoting to social media.
  • Fixed uploading a new promotional image when editing internally promoted content.
  • Fixed unsorted of time options when scheduling social promotions.
  • Fixed AdminCP > System > Social Media Promotion > Permissions not showing all groups in the list of groups with promote permissions.
  • Fixed an issue where it was not always possible to remove existing Facebook social promotion settings.
  • Removed StumbleUpon share service which no longer exists.
Core - Files & Uploads

  • Added ability for administrators to choose to move files when changing between file storage configurations.
  • Improved error messages if an error occurs when uploading a file.
  • Fixed uploading not possible in some areas on iPads.
  • Fixed not being able to submit a form if the user tried to submit it while a file upload was in progress.
  • Fixed an issue where an attachments may stop working while files are in the process of being moved after changing file storage configuration settings.
  • Fixed not being able to delete file storage configurations in the AdminCP.
  • Fixed sorting not being retained when deleting multiple attachments from the Files section of the AdminCP.
  • Fixed deleting an attachment not deleting the file from disk.
Core - Emails

  • Fixed bulk mail replacement tags.
  • Fixed HTML entities appearing in plaintext email content.
  • Fixed reverting email templates disappearing (until a page refresh) as if they have been deleted.
  • Fixed a broken language string in Sendgrid settings.
Core - AdminCP Member Profile

  • Added “Go to Public Profile” button.
  • Fixed an error when viewing the profile if the member had scheduled content for future publishing.
  • Fixed the profile consuming significant server resources on large communities by changing the content statistics section to count all content, regardless of whether containers (i.e. forums), increment the user’s post count.
  • Fixed content statistics not displaying correctly for some locales.
  • Fixed accounts which are linked to Twitter not showing the correct Twitter username.
  • Fixed a broken link to the notifications page.
Core - AdminCP Charts & Statistics

  • Fixed charts consuming significant server resources on large communities by applying a default date range of the last 6 months.
  • Fixed an error viewing the AdminCP keywords usage chart if the same keyword had been set more than once.
  • Fixed errors in AdminCP statistics pages if there is no data.
  • Fixed weekly charts showing the last week of the year twice when the year rolls over.
Core - Advanced Settings

  • Added new setting option to only serve non-https images from local server.
  • Added basic Redis usage information to the support area of the AdminCP for self-hosted communities.
  • Fixed some inconsistencies when running tasks using cron.
Core - Misc

  • Added administrator log entries for various actions which were not logging.
  • Improved site mark as read process to avoid an unnecessary redirect.
  • Fixed privacy policy not being accessible to banned members.
  • Fixed searching of administrator/moderator logs with non-latin characters.
  • Fixed moderator log showing an unparsed language string for some automatic moderation actions.
  • Fixed error if a background task is working on something (such as sending notifications for a topic) which is deleted while the task is still running.
  • Fixed error reporting when setting up Google Maps API.
  • Fixed some background task not not showing their progress accurately on the AdminCP dashboard.
  • Fixed guests not being able to hide announcements.
  • Fixed potential error in calculating width and height of animated gifs when using ImageMagick.
  • Fixed potential error generating the sitemap if orphaned content exists.
  • Fixed the number of reviews on items not being recounted correctly (when upgrading from certain versions or after converting) if the item has reviews but no comments.
  • Fixed some browsers not correctly caching remote images served by the local server.
  • Fixed the code editor on the External Database login handler configuration screen not loading correctly.
  • Fixed AdminCP Dashboard not loading when lots of background tasks are running by adding a limit of 100 to the number shown.
  • Fixed “Configure Services” button in Community Enhancements truncating unnecessarily.
  • Fixed reputation data for comments or reviews not being deleted from the database when the item they belong to is deleted.
  • Fixed files not being removed from server when uninstalling an application.
  • Upgraded JShrink to 1.3.1 (for PHP 7.3 compatibility).
Forums

  • Added setting to RSS feed imports to auto-follow the author to created topics.
  • Improved the UI of the “Poll” sidebar block, fixed the “View topic” link disappearing after viewing results, and fixed an error if the topic the poll belongs to is deleted.
  • Changed behaviour of rating questions and answers that a user has already rated - now clicking the same arrow will undo the original rating, and clicking the other will change the rating to that one (previously clicking the same arrow did nothing and clicking the other undid the original rating).
  • Fixed topics still being shown in search results to users who can longer see them if the per-forum setting to only show topics to the person who created them is turned on for an existing forum.
  • Fixed guests not being able to change the selected forums when using fluid view.
  • Fixed fluid view showing the wrong forums checked.
  • Fixed error viewing the topic preview hovercard if the topic has been moved or merged.
  • Fixed breadcrumb navigation in forums/topics in clubs if there is only one forum outside of clubs.
  • Fixed some inconsistencies with automatic locking and unlocking of topics.
  • Fixed question and answer ratings not being merged properly when topics were merged.
  • Fixed error when approving very old topics.
  • Fixed topics not being accessible if a category with a “minimum posts to view” setting set is changed into a forum without removing the value from that setting.
  • Fixed topics from clubs not being included in the sitemap.
  • Fixed marking a topic as read consuming significant server resources on large communities.
Commerce - Store

  • Improved store display by hiding empty product categories.
  • Changed the links to buy/redeem gift cards to be in the menu.
  • Fixed possible error when searching products.
  • Fixed products incorrectly showing as being in stock if they use different stock levels based on custom fields and all variations are out of stock.
  • Fixed the “Continue Shopping” dialog showing multiple times when adding several products from the category list view.
  • Fixed copying a product not copying all settings.
  • Fixed broken UI when hovering over a product image in the store on communities which use a right-to-left language.
  • Fixed product embed images not matching the styling of other embeds.
  • Fixed an issue where copying a product could fail.
  • Fixed meta description on product pages.
Commerce - Checkout

  • Added AJAX validation to email field when checking out as a guest.
  • Added ability to disable a payment method by setting the countries it is available to to no value.
  • Fixed partial gift card codes being accepted.
  • Fixed grouped products showing incorrect renewal amount on the checkout form when ordering multiple quantities.
  • Fixed the prompt to log in not being shown for guests checking out.
  • Fixed purchase not being processed properly with third party payment gateways if Commerce app is only accessible to certain groups.
Commerce - Payment Gateways

  • Fixed possible error when saving a credit card using Stripe if customer already has a card on file.
  • Fixed error when a guest pays using a Stripe method which requires redirect (3Secure, Bancontact, etc.)
Commerce - Subscriptions

  • Added ability to apply subscription package changes to existing purchases.
  • Changed Subscriptions to require renewal terms.
  • Fixed disabled Subscription Packages still being purchasable and viewable in the sidebar block.
  • Fixed duplicate entries in the AdminCP subscriber list if a member has inactive subscriptions.
Commerce - Client Area

  • Added custom product fields to printed invoices.
  • Fixed broken UI when viewing payment details on a $0 invoice.
  • Fixed invoice status badges not being colored appropriately on the front end when using languages other than English.
Commerce - General Payments / Invoices

  • Added an option to filter invoices by payment status in the AdminCP
  • Improved notification emails for upcoming purchase renewals and transaction refunds to include more information.
  • Improved display of customer purchases in admin control panel by separating active/expired purchases.
  • Fixed missing tax on purchase reactivation.
  • Fixed duplicate items sometimes being added when generating an invoice in the AdminCP.
  • Fixed a possible error when marking an invoice as paid if awarding commission to other users (for example, from Downloads purchases or referrals) in some circumstances.
  • Fixed potential errors adjusting Account Credit settings in the AdminCP.
  • Fixed button to mark an invoice paid showing to admins on invoices created by guests even before the guest has filled in any account details (which show an error if clicked).
  • Fixed editing a coupon form showing the start / end dates in the wrong timezone.
Commerce - Customer Management

  • Fixed a potential error in the AdminCP member profile if a purchase has been deleted.
  • Fixed an error in the Referrals tab of the customer page in the AdminCP.
  • Fixed an error occurred when cloning customer fields.
  • Fixed wrong AdminCP restrictions being checked for viewing customer statistics.
Commerce - Support

  • Added option for retaining the default reply wrapper when using a stock action as a staff member replying to a support request.
  • Added ability to filter support requests older or newer than a specific date in AdminCP.
  • Fixed incoming emails being routed incorrectly if the same sender had recently sent an email to a different department.
  • Fixed incoming plaintext emails sometimes being parsed blank.
  • Fixed the feature which holds a staff member’s reply if the customer replies while the staff member is writing their reply, which wasn’t working if the staff member submits their reply by replying to the email notification.
  • Fixed trying to require an associated subscription in support department settings not working.
  • Fixed handling of custom support request fields for pay-per-incident support requests.
  • Fixed long ticket names breaking UI in ticket history sidebar.
  • Fixed uninstalling Commerce not disable the task to check for incoming POP3 emails.
  • Fixed missing language string on the stock action form.
  • Fixed wrong language string being used in the description for the default reply content setting.
  • Removed IP Addresses used for Support Requests from the ModCP.
Commerce - Misc

  • Fixed license key API handling of invisible characters.
Pages

  • Changed the severity level of the error when somebody without proper permissions tries to load the sidebar manager from 3 to 2.
  • Fixed pages that have been renamed not redirecting to the new URL.
  • Fixed databases showing in the “Create” menu to users without permission.
  • Fixed records in databases with “wiki-style” editing enabled not actually being able to be edited by all users.
  • Fixed an issue where the form may not be displayed when trying to move a database record.
  • Fixed missing language string in the dialog that shows when choosing “Custom” from the “Sort by” menu when viewing database records.
  • Fixed the wrong template being used for reviews.
  • Fixed the currently chosen database being disabled on the database select menu when editing a page in WYSIWYG mode.
  • Fixed searching for database categories in the AdminCP showing categories from all databases.
  • Fixed missing canonical tags.
Gallery

  • Added a group setting to control whether users can download the original image or not, and whether it should be watermarked or not.
  • Added the image to certain notification emails (new content, user mentioned, etc.).
  • Added a setting to control whether showing a map defaults to on or off for images with GPS coordinates embedded.
  • Added certain indicators (such as image pending approval) to the images shown on the Gallery index.
  • Added “Lens Model” in EXIF data if present.
  • Changed albums displayed on user profiles to sort by latest update (newest to oldest).
  • Fixed an error when adding Gallery images with tags.
  • Fixed an error if a guest tries to follow an image during the upload process.
  • Fixed behaviour of the browser’s back button after viewing images in a lightbox and closing the lightbox.
  • Fixed navigation between images not working correctly in the lightbox in some circumstances.
  • Fixed images being marked as read before they have been seen when in the Lightbox.
  • Fixed gallery albums and the uploaded images being shown separately in activity streams and on the “Overview” page in a club.
  • Fixed deleting a club not deleting the albums inside it.
  • Fixed members being able to move images into a category that normally cannot receive direct image submissions during the process of deleting an album.
  • Fixed users being able to submit directly to a category if it requires albums to be used but the user does not have permission to create albums.
  • Fixed a section for the category description showing even if the category has no description.
  • Fixed image uploading on Internet Explorer 11.
  • Fixed images not being accessible if the album is moved while they are being uploaded.
  • Fixed “ModifyDate” EXIF tag being displayed as “Date Taken”.
  • Fixed the wrong “last modified” date being used for albums in the sitemap.
  • Fixed the files on disk being moved when rebuilding image thumbnails (it was placing all of the newly created images in the current monthly folder, rather than in the original folder).
  • Removed ability to upload images in album descriptions, as this presented a source of confusion for some users.
Downloads

  • Added ability to show custom fields in a new tab, below the description, or in the sidebar.
  • Fixed “Buy” button still showing on paid files which have had purchases disabled.
  • Fixed an issue where files could get incorrectly removed when changing a version number, or updating screenshots.
  • Fixed the average review rating counting reviews that are not visible.
  • Fixed support topics not being created after enabling the setting and editing a file.
  • Fixed screenshots with parenthesis in the filename not being shown while uploading a new file version.
  • Fixed a template error on certain PHP versions during submission if importing screenshots from a URL is enabled.
  • Fixed the tooltip shown when hovering over the number of purchases for a file (when Commerce integration is enabled) showing “downloads” rather than “purchases”.
Blog

  • Fixed clicking on a reaction for a blog entry sometimes opening an image lightbox.
  • Fixed long blog names breaking UI.
  • Fixed multiple icons (e.g. “pinned”, “hidden”, etc.) showing over multiple lines rather than next to the title when viewing a blog entry.
  • Fixed cover photos not expanding if clicking on the same line as the title.
Calendar

  • Fixed dates and times showing in the wrong timezone in cached areas/pages.
  • Fixed time summary formatting for some locales when creating events.
  • Fixed error on activity streams if the event associated with an RSVP has been deleted.
  • Fixed potential error when deleting iCalendar import feeds.
  • Fixed cover photos not expanding if clicking on the same line as the title.
REST & OAuth

  • New Endpoints:
    • Core: Added support for managing clubs.
    • Core: Added support for managing user warnings and fetching warn reasons.
    • Forums: Added support for creating and updating polls in topics and blog entries.
    • Calendar: Added support for managing Calendar venues.
    • Calendar: Added support for filtering Calendar events by date range
    • Calendar: Added support for sorting events by event start or end date.
  • Added a parameter when deleting a node via the REST API to determine what to do with child nodes (previously that would just become orphaned).
  • Changed OAuth Server behaviour to reject authorization or token requests for users who are banned or suspended.
  • Fixed OAuth refresh tokens being lost if an access token request omits it.
  • Fixed some endpoints not being available to requests authenticated with an OAuth access token granted by Client Credentials.
  • Fixed requests that attempt to unhide content items that are already visible not updating other details.
  • Fixed deleting reviews on Pages records using the REST API.
  • Fixed display names which have a “” in them being returned as null.
  • Fixed the documentation for the Commerce purchases endpoint missing a possible exception which can be thrown.
Installer / Upgrader

  • Improved performance of UTF-8 converter in some instances when upgrading from 3.x.
  • Changed the default MySQL collation to UTF8MB4 for new installations.
  • Changed the upgrade message about hiding the AdminCP link when upgrading from older versions to recommend using two factor authentication instead of providing instructions about how to re-enable it.
  • Fixed potential errors or inconsistencies after applying a patch if using disk caching for templates.
  • Fixed an error when trying to upgrade if templates or CSS files exist in the database without an associated theme.
  • Fixed bad conversion of Sparkpost settings when upgrading from 4.3.x.
  • Fixed bad conversion of refund data in Commerce when upgrading from certain versions.
  • Fixed an error when rebuilding legacy content (after a 3.x upgrade) when using PHP 7.2.
  • Fixed an error in the messenger after upgrading from certain versions.
  • Fixed soft-deleted content from older versions not being upgraded correctly.
  • Fixed members potentially have an incorrect validating status after upgrading from 3.x.
  • Fixed Gallery albums losing their sort orders may after upgrading from certain versions.
  • Fixed UTF-8 Converter (part of upgrading from 3.x) potentially losing connection while compiling table information.
  • Removed ability to access the AdminCP while an upgrade is in process to improve stability.
Converters

  • Improved conversion user experience and simplified approach to running a conversion.
  • Improved redirects for vBulletin 3/4 including attachments.php and printthread.php.
  • Improved performance of certain background tasks launched following a conversion.
  • Improved BBCode conversion when converting from MyBB.
  • Improved converting member titles from vBulletin.
  • Improved support for converting posts with links from vBulletin 5.
  • Improved Invision Community redirects to support multiple merged communities, now uses /ic-merge-{core_app_id}/*.
  • Improved support for [img:alignment] bbcode when converting from UBB.Threads.
  • Fixed an issue where incomplete accounts could be created during a conversion.
  • Fixed an issue where images uploaded to vBulletin5 “photo” posts do not convert.
  • Fixed an issue where legacy XenForo versions may not be detected correctly in some edge cases.
  • Fixed an issue where certain usernames may not convert properly from vBulletin, MyBB and XenForo.
  • Fixed an issue where converted MyBB posts with inline attachments may display the wrong attachment.
  • Fixed an issue where in certain circumstances Gallery albums/images may be converted to a category that was removed.
  • Fixed an issue where private messages may not be converted from vB3/4 in certain circumstances.
  • Fixed an issue where vBulletin archive links may not be redirected.
  • Fixed an issue where hidden posts from vBulletin (3.x/4.x) may not convert correctly.
  • Fixed an issue where topic reply counts were not converted.
  • Fixed an issue where vBulletin Blog Attachments may not convert correctly from vBulletin 3.x.
  • Fixed an issue where member history group information may not display correctly after conversion.
Changes affecting third-party developers and designers
Please note from “Core - Misc” section above: uninstalling an application will now delete those files from disk. Be careful when uninstalling your applications locally.

Backwards-incompatible changes that may affect third party applications / plugins:

  • Changed how share services, file storage engines, package types, payment gateways, license key generation methods, server types, converters, and widget types are loaded: instead of using a DirectoryIterator to look at what files are on disk, all of these are now defined in a method. To add a new one, you can (and will need to) extend the appropriate method, rather than having users upload a file to a particular location.
  • Changed \IPS\Node\Model::modPermission() to require a value for the $class argument.
  • Changed how invalid language string keys are handled (that is, if calling \IPS\Lang::addToStack()with a language string key that doesn’t exist). Now rather than returning the key as it was passed, it will return the value HTML escaped in an effort to prevent accidentally introducing XSS vulnerabilities.
  • Changed how table sorting works: If the column is specified in the content items $databaseColumnMap, the table name will be prefixed to avoid ambiguous column issues.
  • Moved \IPS\Content\Comment::checkProfanityFilters() to the \IPS\Content class, and changed it to work on both items and comments.
  • Removed deprecated constant \IPS\HTMLENTITIES.
  • Removed deprecated get__stripTagsTitle magic method for node models.
  • Removed deprecated \IPS\Lang::wordbreak method.
Enhancements / fixes for designers:

  • Added a data-pageID param to <body> tag (alongside data-pageApp, data-pageController, etc.) to allow for targeted CSS styling per-node/item.
  • Changed theme setting keys to only allow alphanumeric values to remove confusion of why they may not be parsed in themes.
Enhancements / fixes for developers:

  • Added \IPS\Request::referrer() method to more reliably and securely get the referrer for a request without duplicating code.
  • Added support for multi-table database deletes in \IPS\Db::delete().
  • Changed how applications extensions are loaded: a data/extensions.json file (generated in the developer center when an extension is added/removed) now stores the available extensions instead of using a DirectoryIterator to look at what files are on disk. This change is backwards compatible for end users if there is no extensions.json file, but will need to be used properly once it has been generated.
  • Changed maximum plugin name length to 128 characters (previously 32 characters).
  • Fixed the ability to make cross-domain AJAX by removing the X-Requested-With header in AJAX requests.
  • Fixed a missing try/catch when loading login handlers which meant 3rd party login handlers could completely break the login form and lock out the AdminCP to disable them.
Enhancements / fixes for translators:

  • Changed the version numbers on the support page to use a different language string (new string: acp_version_number_raw) than the AdminCPdashboard (acp_version_number).
  • Fixed days of the week always having an uppercase first letter (language strings _date_this_week_cand _date_this_week now receive the day number so you can display each however you like rather than receiving the name from the server).
  • Fixed non-translatable options for the “Javascript include location” theme setting.
Fixes that only affect developer mode or third party apps/plugins:

  • Changed \IPS\forums\SavedAction::runOn() to separate the permission check and the actual logic into separate methods for easier hooking.
  • Changed the database query log to skip over the core PHP class IteratorIterator when showing the function that ran a query.
  • Fixed resources sometimes duplicating when building applications for distribution.
  • Fixed multiple SEO titles not working in custom URLs.
  • Fixed errors in developer when member objects were compared.
  • Fixed an error saving payment settings when in developer mode.
  • Fixed an error saving Analytics code with developer mode enabled.
  • Fixed an error deleting Gallery categories from clubs when in developer mode.
  • Fixed error when a guest adds a product with tax to the cart when in developer mode.
  • Fixed an error viewing the referrals page in the Commerce client area when in developer mode and using PHP 7.2 or higher.
  • Fixed an error when parsing incoming emails for Commerce support requests when in developer mode.
  • Fixed broken Hosting Settings page in Commerce on PHP 7.2 when in developer mode.
  • Fixed an error that would occur sending emails when in developer mode if the email template parameters had changed but the updated templates had not been imported into the database yet.
Code-level fixes that may have been caused bugs in third party apps/plugins:

  • Fixed moderator control panel approval queue not working for any apps where the database table for nodes contains a column with the same name as is used for the “hidden” column in their database table for items.
  • Fixed \IPS\Math\Number constructor accepting a blank string (this will now throw an exception).
  • Fixed encoding of \IPS\Output::i()->jsVars for values containing quotes.
  • Fixed the core.global.core.datetime JS controller not returning the correct value for the day of the week.
  • Fixed \IPS\Content\Item::addMeta() not throwing the correct exception when passed an invalid value for $type.
  • Fixed \IPS\Content\Item::markRead() not honouring the $member argument.
  • Like
Reactions: electimon
Key Changes
Welcome to Invision Community 4.4.0!

This release brings numerous improvements and several new features. Please check out our blog to read about everything new.
Additional Information
BETA RELEASE
This is a BETA release. Please only upgrade if you are comfortable with testing beta software. Always ensure you take a back-up of your database and files before running the upgrade.
IMPORTANT UPGRADE NOTICE
Please note that not all third party applications and themes are yet compatible with Invision Community 4.4. If you utilize third party resources, including custom themes, please ensure they have been declared compatible by their respective authors or your site may be non-functional after upgrade.
731Threads
2,285Messages
63,719Members
phdcseLatest member
Back