- Fix Helper::createEntity() could cause "Call to undefined method ...\XF\Entity\...::where()" errors when verifying content is unique
- Only add phrase_dynamic template method in XF2.1
- Add various strongly typed helpers to automatically type hint returns based on using ::class argument instead of magic strings.
Code:$obj = Helper::repository(\XF\Repository\User::class);
- For static analysis and IDE, $obj will have the type \XF\Repository\User
While XF2.3 intends to implement this, adding this functionality to this add-on allows migrating before hand and simplifies migrating as the Helper bit just needs to be swapped with \XF- Add js/sv/lib/ajaxPagination.js
Code:<xf:js src="sv/vendor/domurl/url.js" addon="SV/StandardLib" min="1" /> <xf:js src="sv/lib/ajaxPagination.js" addon="SV/Threadmarks" min="1" /> ... <div class="block" data-xf-init="sv-ajax-pagination" data-content-wrapper=".block-body--wrapper"> ... <div class="block-body--wrapper"> ... <xf:pagenav ... /> <xf:hiddenval name="final_url" value="{$finalUrl}" /> </div> </div>
<xfagenav> and <xf:hiddenval name="final_url" /> must be inside the div which is tagged with data-content-wrapper's css selector
Note; The 1.18.x branch will be the last branch to support XenForo 2.1.x
- Deprecate getContentPermissions function, as the 2nd string argument was not actually used, with a replacement function getPerContentPermissions added.
- Add \SV\StandardLib\Helper::isAddOnActive() helper function. Similar to \XF::isAddonActive(), except it understands version strings
- Shim template funciton is_addon_active code to understand version strings
- Add support for addon.json 'require'/'require-soft' to support addon version strings instead of the addon version_id.
Uses version_compare under the hood after some very basic standardization.
php version strings support dotted versions, '1.2.3' and also each part may also support special character strings:
any string not found in this list < dev < alpha = a < beta = b < RC | Release Candidate = rc < # < patch level | pl = p.
- Add "patch_route_build_callback" code event, used to manipulate the router state during construction.
- Add input filter option "empty-str-to-null". Example usage for developers:
PHP:$foo = $this->filter('bar', '?uint,empty-str-to-null');
- Fix caching global permissions was broken (Impacts Can Warn Staff & User Essentials, but depends heavily on content if this bug was triggered)
- Fix join index hint support.
- Fix XF2.2.11 and before error: Undefined array key "indexHints".
- Fix XF2.212+ index hints not applying as expected in some cases.
- Add controller plugin 'SV\StandardLib\ControllerPlugin\Delete' a plugin helper for implementing soft/hard/undeleting of content
- Update bundled moment.js library
- php 8.2 compatibility update
- If using the Svg Template addon, update to SVG Template 2.4.5 or rendering SVGs to PNGs will stop working