You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Support for PHP 5.6 through PHP 7.4 – e107 v2 now adds PHP 7.4 support while maintaining support for PHP 5.6. Note that PHP 8.0 support is not yet available but will be added in a future release (after #4269).
Support for MySQL 8.0 (#4216) – Database integrity checks no longer persist their warnings on MySQL 8.0. MySQL 5.5 through MySQL 5.7 and MariaDB 10.0 through MariaDB 10.5 remain supported.
New session handler with improved performance (#4113) – Non-blocking session handler backed by the database allows multiple concurrent requests to the e107 site per user session. A site administrator can enable this session handler at Settings » Preferences » Advanced Options » Security & Protection » Session Save Method and setting the value to "Database". New installations will use the database session handler by default.
More social login providers (#3492) – The full list of supported social login providers can be found here.
Code quality improvements – Automated tests are being introduced to reduce the chance of future changes breaking intended behavior.
Many bugfixes – A ton of issues have been fixed both in the frontend and in the Admin-UI. Details about most of them can be found below.
For Administrators
Added
New session handler for the session user tracking method: Database storage. Improves performance for concurrent requests in a session.
Option to allow users to delete their own accounts (#4065)
Support for hosting providers that disable PHP readfile() (#3528)
A PHP module check (similar to the one during installation) has been added to the PHPInfo page to quickly detect any missing modules after one migrates e107 to another PHP configuration.
download plugin:
Added $host variable support to Downloads » Protection » NGINX secure_link_md5 (#4010)
Added confirmation dialog when deleting forum topic or post (#718)
Added cache for new forum posts menu
Changed
The default user tracking method for new installations has been changed to session (was cookie). The cookie user tracking method is expected to be removed in a future release.
The database handler PDO is now used by default. mysqli is available as a fallback.
The social login flow has changed substantially. (#4099)
?route=system/xup/signup was removed because ?route=system/xup/login now signs up and logs in via social login.
The return URL (query back) is no longer base64-encoded.
Some provider names have changed because the library (Hybridauth) has renamed them. These changes are accounted for in a database migration.
The page ?route=system/xup/test is no longer enabled by default.
The core integrity image (previously ./e107_admin/core_image.php, now ./e107_system/core_image.phar) has a new backwards-incompatible format. As it is now a binary file, administrators upgrading e107 over FTP should ensure that they are using binary transfer mode. (Issue reference)
Before: PHP array stored in a global variable
Now: JSON compressed into a phar
Set initial value for email hide setting as TRUE when creating new user (#4107)
Enable PHP session file garbage collection if it is not already enabled (#4113)
Actually removed e_LEGACY_MODE this time (was only partially removed in v2.2.0)
Removed obsolete ALLOW_AUTO_FIELD_DEFS constant
Clear system cache after running Git pull or sync.
Partial rewrite of ./e107_admin/fileinspector.php (#4114)
Removed Admin Nav button labels for all device and provided solution for plugins to add them back via CSS if required. Example added to admin_style.css (#4020)
Corrected internal parser conflict when code/pre tags contained curly brackets.
Not able to use <pre>, <code> syntax in TinyMCE area (#4058)
TinyMCE video tags fix and expansion of allowed attributes. (#3793)
Support for attributes onchange, onclick, etc. when script access is enabled (#3926, #4135)
Automated release builds are now available. (#4114)
Some third-party PHP dependencies are now managed by Composer. (#4099)
.editorconfig now configures IntelliJ for the e107 code style when typing new code or reformatting existing code.
Magic shortcodes
News breadcrumb added for magic shortcode: {---BREADCRUMB---}
Shortcode {FAQ_HIDE} added for manual collapse/expand management via template.
New File Inspector API through e_file_inspector (e107::getFileInspector()) (#4114)
New social login API methods in e_user_provider (e107::getUserProvider()) (#4099)
New API to detect if social login is enabled site-wide: e107::getUserProvider()->isSocialLoginEnabled() (deprecates e107::getPref('social_login_active'))
Added e107::getThumb() to get thumbnailer class.
e_shims offers resilient replacements for some internal PHP functions.
Admin-UI additions:
New "Search in Field" filter option added for field-specific search of text fields and similar. (filter=>true required)
Added $fieldPrefName to Admin-UI for saving/loading field preferences under another name. Default is the current table name. (#4089)
Enhanced admin-ui to support custom filter handlers on string searches (not just drop-drop filters as was already the case) (#4009)
Experimental support for theme HTML templates and layouts
Added base64 option to allow for embedded image src. (useful when including avatars in email signatures)
Support for high-resolution avatar rendering with the hd option.
e_parser::toAudio():
Added 'autoplay' and 'controls' support
Added options to e_form::carousel() to disable navigation and indicators. Custom navigation can now display a custom label when 'label' is included in the carousel array.
e_form::mediapicker() enhancements: Now accepts: 'resize', 'rename' and 'convert' $parms. See PHPDoc for details.
Add tbox class to e_form::datepicker() input form (#3966)
e_form: Name for css submit-trigger group added.
e_form: Custom CSS class on container when modal/iframe is active.
Changed
The e_model, e_front_model, and e_tree_model APIs have changed substantially in an effort to improve inheritance. (#2146)
Upgraded Bootstrap 3.3.7 to 3.4.1
Upgraded PHPMailer to version 6
Deprecated e107::getHybridAuth()
Updated theme specification for e107 v2.3.0 (#4141)
Moved hardcoded 'news' frontpage to its own e_frontpage addon called news_frontpage
Moved 'custom page' frontpage to its own e_frontpage addon called page_frontpage
e_db_pdo failures to connect to the database are now catchable PDOException exceptions.
user_class::getUsersInClass() now accepts extended user field names - just prefix those fields with "ue.".
users_admin_ui now has batch export enabled.
Do not populate e_user_model as a logged in user if login failed (#4236)
Admin-UI changes:
Added an automatic fallback. When the user does not have access to the default route the dispatcher will now look for the first available access route and display it as the default. Also, renamed checkRouteAccess() to hasRouteAccess() and renamed checkModeAccess() to hasModeAccess()
$adminMenu now has a 'badge' attribute. Send it an array and it will render a badge in the navigation, e.g., array('value' => $count, 'type'=>'warning').
Log Query, Page and Observer methods to e_LOG when in debug mode.
Respect boolean true/false writeParms in filter and batch dropdowns.
Additional date filter options added for 3/6/9 months
e_form::datepicker() deprecated $option['type'] and added $option['mode'] as a replacement. Provides a workaround to a conflict involving a custom 'type' in the writeParms().
Class e_ajax_class has been renamed to e_ajax.
Class e_signup_class has been renamed to e_signup.
The CONTRIBUTING.md document has been moved to the subfolder ./.github/.
Fixed
e107 in CLI mode had no ADMINPERMS. It now has all permissions in ADMINPERMS.
e107 in CLI mode had HTML debug output clearly not meant to show up in the CLI.
Inconsistent result from e107::getDb()->retrieve() when using full query with multiple fields without 'multi' enabled. (#4111)
Fix for using {THEME} (i.e. theme folder path) in footer part of theme layout.
Enhancements to the {USERSETTINGS} shortcode (#1767)
Wrong class name in e_url addon breaks admin configuration (#4075)
Admin Area » Meta Tags » Keywords to be considered as global keywords to append to all pages of the site as originally intended. Leave blank to disable.
Admin-UI fixes:
Column selector displaying improperly defined field. (#4083)
Respect boolean true/false writeParms in filter and batch dropdowns. (#4086)
Not able to use < and > in text field in admin UI (#4102)